From 5da5230ab29743b63bf238a379891c98ac9d5038 Mon Sep 17 00:00:00 2001 From: Laszlo Agocs Date: Wed, 30 Nov 2011 15:48:54 +0200 Subject: Remove event type parameter from handleTouchEvent. Requiring platform and generic plug-ins to pass TouchBegin, TouchUpdate, or TouchEnd is unnecessary. The type can be easily deduced from the touch point states. In fact handleTouchEvent already collected the combined point states, it was just not utilized until now. Change-Id: Icf3c787fefdebc51609a763bc4286c18a0b6aac2 Reviewed-by: Lars Knoll --- src/gui/kernel/qwindowsysteminterface_qpa.cpp | 18 ++++++++++++------ src/gui/kernel/qwindowsysteminterface_qpa.h | 4 ++-- .../generic/touchscreen/qtoucheventsenderqpa.cpp | 5 ++--- src/plugins/generic/touchscreen/qtoucheventsenderqpa.h | 2 +- src/plugins/generic/touchscreen/qtouchscreen.cpp | 2 +- src/plugins/generic/touchscreen/qtouchscreen.h | 2 +- src/plugins/platforms/cocoa/qnsview.mm | 8 ++++---- src/plugins/platforms/windows/qwindowsmousehandler.cpp | 5 ++--- src/plugins/platforms/xcb/qxcbconnection_maemo.cpp | 2 +- src/testlib/qtesttouch.h | 2 +- 10 files changed, 27 insertions(+), 23 deletions(-) diff --git a/src/gui/kernel/qwindowsysteminterface_qpa.cpp b/src/gui/kernel/qwindowsysteminterface_qpa.cpp index 016446780b..874ceb426a 100644 --- a/src/gui/kernel/qwindowsysteminterface_qpa.cpp +++ b/src/gui/kernel/qwindowsysteminterface_qpa.cpp @@ -219,16 +219,15 @@ void QWindowSystemInterface::registerTouchDevice(QTouchDevice *device) QTouchDevicePrivate::registerDevice(device); } -void QWindowSystemInterface::handleTouchEvent(QWindow *w, QEvent::Type type, QTouchDevice *device, - const QList &points, Qt::KeyboardModifiers mods) +void QWindowSystemInterface::handleTouchEvent(QWindow *w, QTouchDevice *device, + const QList &points, Qt::KeyboardModifiers mods) { unsigned long time = QWindowSystemInterfacePrivate::eventTime.elapsed(); - handleTouchEvent(w, time, type, device, points, mods); + handleTouchEvent(w, time, device, points, mods); } -void QWindowSystemInterface::handleTouchEvent(QWindow *tlw, ulong timestamp, QEvent::Type type, - QTouchDevice *device, - const QList &points, Qt::KeyboardModifiers mods) +void QWindowSystemInterface::handleTouchEvent(QWindow *tlw, ulong timestamp, QTouchDevice *device, + const QList &points, Qt::KeyboardModifiers mods) { if (!points.size()) // Touch events must have at least one point return; @@ -268,6 +267,13 @@ void QWindowSystemInterface::handleTouchEvent(QWindow *tlw, ulong timestamp, QEv ++point; } + // Determine the event type based on the combined point states. + QEvent::Type type = QEvent::TouchUpdate; + if (states == Qt::TouchPointPressed) + type = QEvent::TouchBegin; + else if (states == Qt::TouchPointReleased) + type = QEvent::TouchEnd; + QWindowSystemInterfacePrivate::TouchEvent *e = new QWindowSystemInterfacePrivate::TouchEvent(tlw, timestamp, type, device, touchPoints, mods); QWindowSystemInterfacePrivate::queueWindowSystemEvent(e); diff --git a/src/gui/kernel/qwindowsysteminterface_qpa.h b/src/gui/kernel/qwindowsysteminterface_qpa.h index 423281955c..bcd4de944c 100644 --- a/src/gui/kernel/qwindowsysteminterface_qpa.h +++ b/src/gui/kernel/qwindowsysteminterface_qpa.h @@ -99,9 +99,9 @@ public: }; static void registerTouchDevice(QTouchDevice *device); - static void handleTouchEvent(QWindow *w, QEvent::Type type, QTouchDevice *device, + static void handleTouchEvent(QWindow *w, QTouchDevice *device, const QList &points, Qt::KeyboardModifiers mods = Qt::NoModifier); - static void handleTouchEvent(QWindow *w, ulong timestamp, QEvent::Type type, QTouchDevice *device, + static void handleTouchEvent(QWindow *w, ulong timestamp, QTouchDevice *device, const QList &points, Qt::KeyboardModifiers mods = Qt::NoModifier); static void handleGeometryChange(QWindow *w, const QRect &newRect); diff --git a/src/plugins/generic/touchscreen/qtoucheventsenderqpa.cpp b/src/plugins/generic/touchscreen/qtoucheventsenderqpa.cpp index 08db058e10..f8dc84373d 100644 --- a/src/plugins/generic/touchscreen/qtoucheventsenderqpa.cpp +++ b/src/plugins/generic/touchscreen/qtoucheventsenderqpa.cpp @@ -66,8 +66,7 @@ void QTouchEventSenderQPA::touch_configure(int x_min, int x_max, int y_min, int hw_range_y_max = y_max; } -void QTouchEventSenderQPA::touch_point(QEvent::Type state, - const QList &points) +void QTouchEventSenderQPA::touch_point(const QList &points) { QRect winRect; if (m_forceToActiveWindow) { @@ -107,7 +106,7 @@ void QTouchEventSenderQPA::touch_point(QEvent::Type state, #endif } - QWindowSystemInterface::handleTouchEvent(0, state, m_device, touchPoints); + QWindowSystemInterface::handleTouchEvent(0, m_device, touchPoints); } QT_END_NAMESPACE diff --git a/src/plugins/generic/touchscreen/qtoucheventsenderqpa.h b/src/plugins/generic/touchscreen/qtoucheventsenderqpa.h index b6e1613b24..f0e923b3a0 100644 --- a/src/plugins/generic/touchscreen/qtoucheventsenderqpa.h +++ b/src/plugins/generic/touchscreen/qtoucheventsenderqpa.h @@ -55,7 +55,7 @@ class QTouchEventSenderQPA : public QTouchScreenObserver public: QTouchEventSenderQPA(const QString &spec = QString()); void touch_configure(int x_min, int x_max, int y_min, int y_max); - void touch_point(QEvent::Type state, const QList &points); + void touch_point(const QList &points); private: bool m_forceToActiveWindow; diff --git a/src/plugins/generic/touchscreen/qtouchscreen.cpp b/src/plugins/generic/touchscreen/qtouchscreen.cpp index fd2de62d6b..fd73bffd4f 100644 --- a/src/plugins/generic/touchscreen/qtouchscreen.cpp +++ b/src/plugins/generic/touchscreen/qtouchscreen.cpp @@ -291,7 +291,7 @@ void QTouchScreenData::processInputEvent(input_event *data) if (!skip && !(m_state == m_prevState && m_state == QEvent::TouchEnd)) for (int i = 0; i < m_observers.count(); ++i) - m_observers.at(i)->touch_point(m_state, m_touchPoints); + m_observers.at(i)->touch_point(m_touchPoints); m_prevState = m_state; if (m_state == QEvent::TouchBegin) diff --git a/src/plugins/generic/touchscreen/qtouchscreen.h b/src/plugins/generic/touchscreen/qtouchscreen.h index 3c35b0012f..6127cdba32 100644 --- a/src/plugins/generic/touchscreen/qtouchscreen.h +++ b/src/plugins/generic/touchscreen/qtouchscreen.h @@ -59,7 +59,7 @@ class QTouchScreenObserver { public: virtual void touch_configure(int x_min, int x_max, int y_min, int y_max) = 0; - virtual void touch_point(QEvent::Type state, const QList &points) = 0; + virtual void touch_point(const QList &points) = 0; }; class QTouchScreenHandler : public QObject diff --git a/src/plugins/platforms/cocoa/qnsview.mm b/src/plugins/platforms/cocoa/qnsview.mm index 4ae268dda5..a0a5a2e5cf 100644 --- a/src/plugins/platforms/cocoa/qnsview.mm +++ b/src/plugins/platforms/cocoa/qnsview.mm @@ -295,28 +295,28 @@ static QTouchDevice *touchDevice = 0; { const NSTimeInterval timestamp = [event timestamp]; const QList points = QCocoaTouch::getCurrentTouchPointList(event, /*acceptSingleTouch= ### true or false?*/false); - QWindowSystemInterface::handleTouchEvent(m_window, timestamp * 1000, QEvent::TouchBegin, touchDevice, points); + QWindowSystemInterface::handleTouchEvent(m_window, timestamp * 1000, touchDevice, points); } - (void)touchesMovedWithEvent:(NSEvent *)event { const NSTimeInterval timestamp = [event timestamp]; const QList points = QCocoaTouch::getCurrentTouchPointList(event, /*acceptSingleTouch= ### true or false?*/false); - QWindowSystemInterface::handleTouchEvent(m_window, timestamp * 1000, QEvent::TouchUpdate, touchDevice, points); + QWindowSystemInterface::handleTouchEvent(m_window, timestamp * 1000, touchDevice, points); } - (void)touchesEndedWithEvent:(NSEvent *)event { const NSTimeInterval timestamp = [event timestamp]; const QList points = QCocoaTouch::getCurrentTouchPointList(event, /*acceptSingleTouch= ### true or false?*/false); - QWindowSystemInterface::handleTouchEvent(m_window, timestamp * 1000, QEvent::TouchEnd, touchDevice, points); + QWindowSystemInterface::handleTouchEvent(m_window, timestamp * 1000, touchDevice, points); } - (void)touchesCancelledWithEvent:(NSEvent *)event { const NSTimeInterval timestamp = [event timestamp]; const QList points = QCocoaTouch::getCurrentTouchPointList(event, /*acceptSingleTouch= ### true or false?*/false); - QWindowSystemInterface::handleTouchEvent(m_window, timestamp * 1000, QEvent::TouchEnd, touchDevice, points); + QWindowSystemInterface::handleTouchEvent(m_window, timestamp * 1000, touchDevice, points); } #ifndef QT_NO_WHEELEVENT diff --git a/src/plugins/platforms/windows/qwindowsmousehandler.cpp b/src/plugins/platforms/windows/qwindowsmousehandler.cpp index a2b6aa8d68..608230e6e0 100644 --- a/src/plugins/platforms/windows/qwindowsmousehandler.cpp +++ b/src/plugins/platforms/windows/qwindowsmousehandler.cpp @@ -280,14 +280,13 @@ bool QWindowsMouseHandler::translateTouchEvent(QWindow *window, HWND, if (!m_touchDevice) { m_touchDevice = new QTouchDevice; + // TODO: Device used to be hardcoded to screen in previous code. m_touchDevice->setType(QTouchDevice::TouchScreen); m_touchDevice->setCapabilities(QTouchDevice::Position | QTouchDevice::Area | QTouchDevice::NormalizedPosition); QWindowSystemInterface::registerTouchDevice(m_touchDevice); } - // TODO: Device used to be hardcoded to screen in previous code. - // What is the correct event type? Which parts of translateRawTouchEvent() are required? - QWindowSystemInterface::handleTouchEvent(window, QEvent::TouchBegin, + QWindowSystemInterface::handleTouchEvent(window, m_touchDevice, touchPoints); return true; diff --git a/src/plugins/platforms/xcb/qxcbconnection_maemo.cpp b/src/plugins/platforms/xcb/qxcbconnection_maemo.cpp index 719fc85ae2..23421e59d2 100644 --- a/src/plugins/platforms/xcb/qxcbconnection_maemo.cpp +++ b/src/plugins/platforms/xcb/qxcbconnection_maemo.cpp @@ -288,7 +288,7 @@ void QXcbConnection::handleGenericEvent(xcb_ge_event_t *event) QWindowSystemInterface::registerTouchDevice(dev); m_xinputData->qtTouchDevice = dev; } - QWindowSystemInterface::handleTouchEvent(platformWindow->window(), xideviceevent->time, (QEvent::Type)0 /*None*/, dev, touchPoints); + QWindowSystemInterface::handleTouchEvent(platformWindow->window(), xideviceevent->time, dev, touchPoints); } if (xideviceevent->evtype == XI_ButtonRelease) { diff --git a/src/testlib/qtesttouch.h b/src/testlib/qtesttouch.h index 6a9909b617..4ebbd37c27 100644 --- a/src/testlib/qtesttouch.h +++ b/src/testlib/qtesttouch.h @@ -136,7 +136,7 @@ namespace QTest if (!points.isEmpty()) { if (targetWindow) { - QWindowSystemInterface::handleTouchEvent(targetWindow,QEvent::None, device, touchPointList(points.values())); + QWindowSystemInterface::handleTouchEvent(targetWindow, device, touchPointList(points.values())); QTest::qWait(10); } #ifdef QT_WIDGETS_LIB -- cgit v1.2.3 From 4471e45f74a74827464774480306c1fbd70a5d7e Mon Sep 17 00:00:00 2001 From: Laszlo Agocs Date: Wed, 30 Nov 2011 18:51:00 +0200 Subject: Remove QWidget dependency from QTouchEvent. QWidget *widget() is replaced with QObject *target(). Change-Id: Ib2c860480764410cf1527662e89f352ff688b32a Reviewed-by: Lars Knoll --- src/gui/kernel/qevent.cpp | 22 ++++++++++++---------- src/gui/kernel/qevent.h | 6 +++--- src/widgets/graphicsview/qgraphicsscene.cpp | 12 ++++++------ src/widgets/graphicsview/qgraphicsview.cpp | 2 +- src/widgets/kernel/qapplication.cpp | 5 +++-- 5 files changed, 25 insertions(+), 22 deletions(-) diff --git a/src/gui/kernel/qevent.cpp b/src/gui/kernel/qevent.cpp index 035f1b2666..7ff7fc0f5d 100644 --- a/src/gui/kernel/qevent.cpp +++ b/src/gui/kernel/qevent.cpp @@ -3467,7 +3467,8 @@ QTouchEvent::QTouchEvent(QEvent::Type eventType, Qt::TouchPointStates touchPointStates, const QList &touchPoints) : QInputEvent(eventType, modifiers), - _widget(0), + _window(0), + _target(0), _device(device), _touchPointStates(touchPointStates), _touchPoints(touchPoints) @@ -3479,11 +3480,6 @@ QTouchEvent::QTouchEvent(QEvent::Type eventType, QTouchEvent::~QTouchEvent() { } -/*! \fn QWidget *QTouchEvent::widget() const - - Returns the widget on which the event occurred. -*/ - /*! \fn QWindow *QTouchEvent::window() const Returns the window on which the event occurred. Useful for doing @@ -3492,6 +3488,12 @@ QTouchEvent::~QTouchEvent() touch event. */ +/*! \fn QObject *QTouchEvent::target() const + + Returns the target object within the window on which the event occurred. + This is typically a QWidget or a QQuickItem. May be 0 when no specific target is available. +*/ + /*! \fn QTouchEvent::DeviceType QTouchEvent::deviceType() const Returns the touch device Type, which is of type \l {QTouchEvent::DeviceType} {DeviceType}. @@ -3521,18 +3523,18 @@ QTouchEvent::~QTouchEvent() Returns the touch device from which this touch event originates. */ -/*! \fn void QTouchEvent::setWidget(QWidget *widget) +/*! \fn void QTouchEvent::setWindow(QWindow *window) \internal - Sets the widget for this event. + Sets the window for this event. */ -/*! \fn void QTouchEvent::setWindow(QWindow *window) +/*! \fn void QTouchEvent::setTarget(QObject *target) \internal - Sets the window for this event. + Sets the target within the window (typically a widget) for this event. */ /*! \fn void QTouchEvent::setTouchPointStates(Qt::TouchPointStates touchPointStates) diff --git a/src/gui/kernel/qevent.h b/src/gui/kernel/qevent.h index 6a0442509c..7237b16df7 100644 --- a/src/gui/kernel/qevent.h +++ b/src/gui/kernel/qevent.h @@ -776,23 +776,23 @@ public: const QList &touchPoints = QList()); ~QTouchEvent(); - inline QWidget *widget() const { return _widget; } inline QWindow *window() const { return _window; } + inline QObject *target() const { return _target; } QT_DEPRECATED inline QTouchEvent::DeviceType deviceType() const { return static_cast(int(_device->type())); } inline Qt::TouchPointStates touchPointStates() const { return _touchPointStates; } inline const QList &touchPoints() const { return _touchPoints; } inline QTouchDevice *device() const { return _device; } // internal - inline void setWidget(QWidget *awidget) { _widget = awidget; } inline void setWindow(QWindow *awindow) { _window = awindow; } + inline void setTarget(QObject *atarget) { _target = atarget; } inline void setTouchPointStates(Qt::TouchPointStates aTouchPointStates) { _touchPointStates = aTouchPointStates; } inline void setTouchPoints(const QList &atouchPoints) { _touchPoints = atouchPoints; } inline void setDevice(QTouchDevice *device) { _device = device; } protected: - QWidget *_widget; QWindow *_window; + QObject *_target; QTouchDevice *_device; Qt::TouchPointStates _touchPointStates; QList _touchPoints; diff --git a/src/widgets/graphicsview/qgraphicsscene.cpp b/src/widgets/graphicsview/qgraphicsscene.cpp index 791f25aa27..f5057490c7 100644 --- a/src/widgets/graphicsview/qgraphicsscene.cpp +++ b/src/widgets/graphicsview/qgraphicsscene.cpp @@ -5777,8 +5777,8 @@ void QGraphicsScenePrivate::updateTouchPointsForItem(QGraphicsItem *item, QTouch for (int i = 0; i < touchPoints.count(); ++i) { QTouchEvent::TouchPoint &touchPoint = touchPoints[i]; touchPoint.setRect(item->mapFromScene(touchPoint.sceneRect()).boundingRect()); - touchPoint.setStartPos(item->d_ptr->genericMapFromScene(touchPoint.startScenePos(), touchEvent->widget())); - touchPoint.setLastPos(item->d_ptr->genericMapFromScene(touchPoint.lastScenePos(), touchEvent->widget())); + touchPoint.setStartPos(item->d_ptr->genericMapFromScene(touchPoint.startScenePos(), static_cast(touchEvent->target()))); + touchPoint.setLastPos(item->d_ptr->genericMapFromScene(touchPoint.lastScenePos(), static_cast(touchEvent->target()))); } touchEvent->setTouchPoints(touchPoints); } @@ -5819,7 +5819,7 @@ void QGraphicsScenePrivate::touchEventHandler(QTouchEvent *sceneTouchEvent) // determine which item this touch point will go to cachedItemsUnderMouse = itemsAtPosition(touchPoint.screenPos().toPoint(), touchPoint.scenePos(), - sceneTouchEvent->widget()); + static_cast(sceneTouchEvent->target())); item = cachedItemsUnderMouse.isEmpty() ? 0 : cachedItemsUnderMouse.first(); } @@ -5888,13 +5888,13 @@ void QGraphicsScenePrivate::touchEventHandler(QTouchEvent *sceneTouchEvent) } QTouchEvent touchEvent(eventType); - touchEvent.setWidget(sceneTouchEvent->widget()); + touchEvent.setWindow(sceneTouchEvent->window()); + touchEvent.setTarget(sceneTouchEvent->target()); touchEvent.setDevice(sceneTouchEvent->device()); touchEvent.setModifiers(sceneTouchEvent->modifiers()); touchEvent.setTouchPointStates(it.value().first); touchEvent.setTouchPoints(it.value().second); touchEvent.setTimestamp(sceneTouchEvent->timestamp()); - touchEvent.setWindow(sceneTouchEvent->window()); switch (touchEvent.type()) { case QEvent::TouchBegin: @@ -5935,7 +5935,7 @@ bool QGraphicsScenePrivate::sendTouchBeginEvent(QGraphicsItem *origin, QTouchEve const QTouchEvent::TouchPoint &firstTouchPoint = touchEvent->touchPoints().first(); cachedItemsUnderMouse = itemsAtPosition(firstTouchPoint.screenPos().toPoint(), firstTouchPoint.scenePos(), - touchEvent->widget()); + static_cast(touchEvent->target())); } Q_ASSERT(cachedItemsUnderMouse.first() == origin); diff --git a/src/widgets/graphicsview/qgraphicsview.cpp b/src/widgets/graphicsview/qgraphicsview.cpp index 2ebd4ecc63..8efd4eee4a 100644 --- a/src/widgets/graphicsview/qgraphicsview.cpp +++ b/src/widgets/graphicsview/qgraphicsview.cpp @@ -2836,7 +2836,7 @@ bool QGraphicsView::viewportEvent(QEvent *event) if (d->scene && d->sceneInteractionAllowed) { // Convert and deliver the touch event to the scene. QTouchEvent *touchEvent = static_cast(event); - touchEvent->setWidget(viewport()); + touchEvent->setTarget(viewport()); QGraphicsViewPrivate::translateTouchEvent(d, touchEvent); (void) QApplication::sendEvent(d->scene, touchEvent); } diff --git a/src/widgets/kernel/qapplication.cpp b/src/widgets/kernel/qapplication.cpp index afd5fb70e1..e6e8a8eab4 100644 --- a/src/widgets/kernel/qapplication.cpp +++ b/src/widgets/kernel/qapplication.cpp @@ -3896,7 +3896,7 @@ bool QApplication::notify(QObject *receiver, QEvent *e) while (widget) { // first, try to deliver the touch event bool acceptTouchEvents = widget->testAttribute(Qt::WA_AcceptTouchEvents); - touchEvent->setWidget(widget); + touchEvent->setTarget(widget); touchEvent->setAccepted(acceptTouchEvents); QWeakPointer p = widget; res = acceptTouchEvents && d->notify_helper(widget, touchEvent); @@ -3920,7 +3920,7 @@ bool QApplication::notify(QObject *receiver, QEvent *e) } QPoint offset = widget->pos(); widget = widget->parentWidget(); - touchEvent->setWidget(widget); + touchEvent->setTarget(widget); for (int i = 0; i < touchEvent->_touchPoints.size(); ++i) { QTouchEvent::TouchPoint &pt = touchEvent->_touchPoints[i]; QRectF rect = pt.rect(); @@ -5355,6 +5355,7 @@ void QApplicationPrivate::translateRawTouchEvent(QWidget *window, updateTouchPointsForWidget(widget, &touchEvent); touchEvent.setTimestamp(timestamp); touchEvent.setWindow(window->windowHandle()); + touchEvent.setTarget(window); switch (touchEvent.type()) { case QEvent::TouchBegin: -- cgit v1.2.3 From d215bdfc523739187931b0921e174e5fc217d0e4 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Fri, 9 Dec 2011 01:18:07 +0100 Subject: Make headers safe with QT_NO_CAST_FROM_BYTEARRAY. Change-Id: I0f9dfee505ebc48d9c586c010ad75877a7387836 Reviewed-by: Marius Storm-Olsen --- src/gui/image/qimage.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/gui/image/qimage.h b/src/gui/image/qimage.h index a18d81068e..a8491c8109 100644 --- a/src/gui/image/qimage.h +++ b/src/gui/image/qimage.h @@ -363,9 +363,9 @@ inline QString QImage::text(const QImageTextKeyLang&kl) const { if (!d) return QString(); - QString k = QString::fromAscii(kl.key); + QString k = QString::fromAscii(kl.key.constData()); if (!kl.lang.isEmpty()) - k += QLatin1Char('/') + QString::fromAscii(kl.lang); + k += QLatin1Char('/') + QString::fromAscii(kl.lang.constData()); return text(k); } -- cgit v1.2.3 From fb8dc15ba6d24452d819ab40b1dd4227e36a9c2c Mon Sep 17 00:00:00 2001 From: Thomas Zander Date: Fri, 9 Dec 2011 14:01:32 +0100 Subject: Fix typo in APIDocs The name of an enum was slightly misspelled in the API docs, so lets make sure its now copy-paste friendly. Change-Id: I5da5230ab29743b63bf238a379891c98ac9d5039 Reviewed-by: Robin Burchell Reviewed-by: Thomas Zander Reviewed-by: Olivier Goffart --- src/gui/painting/qpainter.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gui/painting/qpainter.cpp b/src/gui/painting/qpainter.cpp index 416fe5adbf..38f4ebd260 100644 --- a/src/gui/painting/qpainter.cpp +++ b/src/gui/painting/qpainter.cpp @@ -2201,7 +2201,7 @@ void QPainter::setBrushOrigin(const QPointF &p) source defines the translucency of the pixel. When the paint device is a QImage, the image format must be set to - \l {QImage::Format}{Format_ARGB32Premultiplied} or + \l {QImage::Format}{Format_ARGB32_Premultiplied} or \l {QImage::Format}{Format_ARGB32} for the composition modes to have any effect. For performance the premultiplied version is the preferred format. -- cgit v1.2.3 From a6ae75f92a8628c727a9c5a9961fa91c583c008e Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Fri, 9 Dec 2011 10:58:14 +0100 Subject: Don't overload the meaning of QObjectData::wasDeleted The union in QObjectPrivate of declarativeData and currentChildBeingDeleted shouldn't use wasDeleted to determining the meaning of the unioned pointer. Instead, add QObjectData::isDeletingChildren, set that in QObjectPrivate::deleteChildren(), and only use the currentChildBeingDeleted member when the parent's isDeletingChildren is set. This solves aborts seen in autotests when widgets are deleting window children. The abort comes from QWeakPointer on the parent in the child's close event handler (the abort checks that wasDeleted is not set). Change-Id: I1a58449159d4a5312aad8ba12e559d05d6c43d93 Reviewed-by: Aaron Kennedy Reviewed-by: Olivier Goffart --- src/corelib/kernel/qobject.cpp | 13 +++++++------ src/corelib/kernel/qobject.h | 1 + 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/src/corelib/kernel/qobject.cpp b/src/corelib/kernel/qobject.cpp index e4ef826ffd..f6e72e3e94 100644 --- a/src/corelib/kernel/qobject.cpp +++ b/src/corelib/kernel/qobject.cpp @@ -165,6 +165,7 @@ QObjectPrivate::QObjectPrivate(int version) pendTimer = false; // no timers yet blockSig = false; // not blocking signals wasDeleted = false; // double-delete catcher + isDeletingChildren = false; // set by deleteChildren() sendChildEvents = true; // if we should send ChildInsert and ChildRemove events to parent receiveChildEvents = true; postedEvents = 0; @@ -1774,8 +1775,8 @@ void QObject::setParent(QObject *parent) void QObjectPrivate::deleteChildren() { - const bool reallyWasDeleted = wasDeleted; - wasDeleted = true; + Q_ASSERT_X(!isDeletingChildren, "QObjectPrivate::deleteChildren()", "isDeletingChildren already set, did this function recurse?"); + isDeletingChildren = true; // delete children objects // don't use qDeleteAll as the destructor of the child might // delete siblings @@ -1786,7 +1787,7 @@ void QObjectPrivate::deleteChildren() } children.clear(); currentChildBeingDeleted = 0; - wasDeleted = reallyWasDeleted; + isDeletingChildren = false; } void QObjectPrivate::setParent_helper(QObject *o) @@ -1796,13 +1797,13 @@ void QObjectPrivate::setParent_helper(QObject *o) return; if (parent) { QObjectPrivate *parentD = parent->d_func(); - if (parentD->wasDeleted && wasDeleted + if (parentD->isDeletingChildren && wasDeleted && parentD->currentChildBeingDeleted == q) { // don't do anything since QObjectPrivate::deleteChildren() already // cleared our entry in parentD->children. } else { const int index = parentD->children.indexOf(q); - if (parentD->wasDeleted) { + if (parentD->isDeletingChildren) { parentD->children[index] = 0; } else { parentD->children.removeAt(index); @@ -1829,7 +1830,7 @@ void QObjectPrivate::setParent_helper(QObject *o) } } } - if (!wasDeleted && declarativeData) + if (!isDeletingChildren && declarativeData) QAbstractDeclarativeData::parentChanged(declarativeData, q, o); } diff --git a/src/corelib/kernel/qobject.h b/src/corelib/kernel/qobject.h index 307518d81e..cc2ccb9e5b 100644 --- a/src/corelib/kernel/qobject.h +++ b/src/corelib/kernel/qobject.h @@ -99,6 +99,7 @@ public: uint pendTimer : 1; uint blockSig : 1; uint wasDeleted : 1; + uint isDeletingChildren : 1; uint ownObjectName : 1; uint sendChildEvents : 1; uint receiveChildEvents : 1; -- cgit v1.2.3 From 6f0f9f69288925ef423c542ef5eb7302a5431867 Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Tue, 22 Nov 2011 14:45:35 +0100 Subject: Remove QMetaObject guards and deprecate QPointer. QWeakPointer is superior and preferred. Remove QMetaObject::addGuard(), QMetaObject::changeGuard(), QMetaObject::removeGuard(), and QObjectPrivate::clearGuards(). Implement QPointer using QWeakPointer instead. This changes the behavior of QPointer in 2 ways: - During destruction of a QWidget. Previously, the destructor of QWidget would reset all QPointers so that they would return zero when destroying children. Update tst_QPointer to account for this change. - When constructing a QSharedPointer to take ownership of an object after a QPointer is already tracking the object. Previously, the shared pointer construction would not be affected by the QPointer, but now that QPointer is implemented using QWeakPoiner, constructing the QSharedPointer will cause an abort(). Fix tst_QSharedPointer by removing the use of QPointer in the objectCast() test. These behavior changes are documented in the QPointer class documentation and in the changes file. Change-Id: I92d0276219c076ece7bcb60f6e1b9120ce4f5747 Reviewed-by: Lars Knoll Reviewed-by: Olivier Goffart --- dist/changes-5.0.0 | 18 ++++ src/corelib/kernel/qobject.cpp | 114 --------------------- src/corelib/kernel/qobject.h | 3 +- src/corelib/kernel/qobject_p.h | 1 - src/corelib/kernel/qobjectdefs.h | 5 - src/corelib/kernel/qpointer.cpp | 20 +++- src/corelib/kernel/qpointer.h | 37 ++++--- src/widgets/kernel/qaction.cpp | 9 +- src/widgets/kernel/qwidget.cpp | 4 - .../auto/corelib/kernel/qpointer/tst_qpointer.cpp | 4 +- .../tools/qsharedpointer/tst_qsharedpointer.cpp | 2 - 11 files changed, 63 insertions(+), 154 deletions(-) diff --git a/dist/changes-5.0.0 b/dist/changes-5.0.0 index cec264337f..7d9153d46b 100644 --- a/dist/changes-5.0.0 +++ b/dist/changes-5.0.0 @@ -267,3 +267,21 @@ Qt for Windows CE * Important Behavior Changes * **************************************************************************** +- QPointer + + * QPointer itself is now deprecated, and the implementation of QPointer + has been changed to use QWeakPointer. The old guard mechanism has been + removed. This causes two slight changes in behavior when using + QPointer: + + * When using QPointer on a QWidget (or a subclass of QWidget), previously + the QPointer would be cleared by the QWidget destructor. Now, the QPointer + is cleared by the QObject destructor (since this is when QWeakPointers are + cleared). Any QPointers tracking a widget will NOT be cleared before the + QWidget destructor destroys the children for the widget being tracked. + + * When constructing a QSharedPointer to take ownership of an object after a + QPointer is already tracking the object. Previously, the shared pointer + construction would not be affected by the QPointer, but now that QPointer + is implemented using QWeakPoiner, constructing the QSharedPointer will + cause an abort(). diff --git a/src/corelib/kernel/qobject.cpp b/src/corelib/kernel/qobject.cpp index f6e72e3e94..da06fc6433 100644 --- a/src/corelib/kernel/qobject.cpp +++ b/src/corelib/kernel/qobject.cpp @@ -177,7 +177,6 @@ QObjectPrivate::QObjectPrivate(int version) deleteWatch = 0; #endif metaObject = 0; - hasGuards = false; isWindow = false; } @@ -409,113 +408,6 @@ void QObjectPrivate::cleanConnectionLists() } } -typedef QMultiHash GuardHash; -Q_GLOBAL_STATIC(GuardHash, guardHash) -Q_GLOBAL_STATIC(QMutex, guardHashLock) - -/*!\internal - */ -void QMetaObject::addGuard(QObject **ptr) -{ - if (!*ptr) - return; - GuardHash *hash = guardHash(); - if (!hash) { - *ptr = 0; - return; - } - QMutexLocker locker(guardHashLock()); - QObjectPrivate::get(*ptr)->hasGuards = true; - hash->insert(*ptr, ptr); -} - -/*!\internal - */ -void QMetaObject::removeGuard(QObject **ptr) -{ - if (!*ptr) - return; - GuardHash *hash = guardHash(); - /* check that the hash is empty - otherwise we might detach - the shared_null hash, which will alloc, which is not nice */ - if (!hash || hash->isEmpty()) - return; - QMutexLocker locker(guardHashLock()); - if (!*ptr) //check again, under the lock - return; - GuardHash::iterator it = hash->find(*ptr); - const GuardHash::iterator end = hash->end(); - bool more = false; //if the QObject has more pointer attached to it. - for (; it.key() == *ptr && it != end; ++it) { - if (it.value() == ptr) { - it = hash->erase(it); - if (!more) more = (it != end && it.key() == *ptr); - break; - } - more = true; - } - if (!more) - QObjectPrivate::get(*ptr)->hasGuards = false; -} - -/*!\internal - */ -void QMetaObject::changeGuard(QObject **ptr, QObject *o) -{ - GuardHash *hash = guardHash(); - if (!hash) { - *ptr = 0; - return; - } - QMutexLocker locker(guardHashLock()); - if (o) { - hash->insert(o, ptr); - QObjectPrivate::get(o)->hasGuards = true; - } - if (*ptr) { - bool more = false; //if the QObject has more pointer attached to it. - GuardHash::iterator it = hash->find(*ptr); - const GuardHash::iterator end = hash->end(); - for (; it.key() == *ptr && it != end; ++it) { - if (it.value() == ptr) { - it = hash->erase(it); - if (!more) more = (it != end && it.key() == *ptr); - break; - } - more = true; - } - if (!more) - QObjectPrivate::get(*ptr)->hasGuards = false; - } - *ptr = o; -} - -/*! \internal - */ -void QObjectPrivate::clearGuards(QObject *object) -{ - GuardHash *hash = 0; - QMutex *mutex = 0; - QT_TRY { - hash = guardHash(); - mutex = guardHashLock(); - } QT_CATCH(const std::bad_alloc &) { - // do nothing in case of OOM - code below is safe - } - - /* check that the hash is empty - otherwise we might detach - the shared_null hash, which will alloc, which is not nice */ - if (hash && !hash->isEmpty()) { - QMutexLocker locker(mutex); - GuardHash::iterator it = hash->find(object); - const GuardHash::iterator end = hash->end(); - while (it.key() == object && it != end) { - *it.value() = 0; - it = hash->erase(it); - } - } -} - /*! \internal */ QMetaCallEvent::QMetaCallEvent(ushort method_offset, ushort method_relative, QObjectPrivate::StaticMetaCallFunction callFunction, @@ -840,12 +732,6 @@ QObject::~QObject() d->wasDeleted = true; d->blockSig = 0; // unblock signals so we always emit destroyed() - if (d->hasGuards && !d->isWidget) { - // set all QPointers for this object to zero - note that - // ~QWidget() does this for us, so we don't have to do it twice - QObjectPrivate::clearGuards(this); - } - QtSharedPointer::ExternalRefCountData *sharedRefcount = d->sharedRefcount.load(); if (sharedRefcount) { if (sharedRefcount->strongref.load() > 0) { diff --git a/src/corelib/kernel/qobject.h b/src/corelib/kernel/qobject.h index cc2ccb9e5b..a0d8076b73 100644 --- a/src/corelib/kernel/qobject.h +++ b/src/corelib/kernel/qobject.h @@ -105,9 +105,8 @@ public: uint receiveChildEvents : 1; uint inEventHandler : 1; //only used if QT_JAMBI_BUILD uint inThreadChangeEvent : 1; - uint hasGuards : 1; //true iff there is one or more QPointer attached to this object uint isWindow : 1; //for QWindow - uint unused : 21; + uint unused : 22; int postedEvents; QMetaObject *metaObject; // assert dynamic }; diff --git a/src/corelib/kernel/qobject_p.h b/src/corelib/kernel/qobject_p.h index 5519a69c34..a9cac3917a 100644 --- a/src/corelib/kernel/qobject_p.h +++ b/src/corelib/kernel/qobject_p.h @@ -183,7 +183,6 @@ public: static int *setDeleteWatch(QObjectPrivate *d, int *newWatch); static void resetDeleteWatch(QObjectPrivate *d, int *oldWatch, int deleteWatch); #endif - static void clearGuards(QObject *); static QObjectPrivate *get(QObject *o) { return o->d_func(); diff --git a/src/corelib/kernel/qobjectdefs.h b/src/corelib/kernel/qobjectdefs.h index bfb6808ad5..faadb6f48c 100644 --- a/src/corelib/kernel/qobjectdefs.h +++ b/src/corelib/kernel/qobjectdefs.h @@ -341,11 +341,6 @@ struct Q_CORE_EXPORT QMetaObject static void activate(QObject *sender, int signal_index, void **argv); static void activate(QObject *sender, const QMetaObject *, int local_signal_index, void **argv); - // internal guarded pointers - static void addGuard(QObject **ptr); - static void removeGuard(QObject **ptr); - static void changeGuard(QObject **ptr, QObject *o); - static bool invokeMethod(QObject *obj, const char *member, Qt::ConnectionType, QGenericReturnArgument ret, diff --git a/src/corelib/kernel/qpointer.cpp b/src/corelib/kernel/qpointer.cpp index c7fcf4f1e8..51c8b2ad74 100644 --- a/src/corelib/kernel/qpointer.cpp +++ b/src/corelib/kernel/qpointer.cpp @@ -44,7 +44,7 @@ \brief The QPointer class is a template class that provides guarded pointers to QObject. \ingroup objectmodel - + \obsolete Use QWeakPointer instead. A guarded pointer, QPointer, behaves like a normal C++ pointer \c{T *}, except that it is automatically set to 0 when the @@ -57,6 +57,24 @@ destroyed while you still hold a reference to it. You can safely test the pointer for validity. + Note that Qt 5 introduces two slight changes in behavior when using QPointer. + + \list + + \i When using QPointer on a QWidget (or a subclass of QWidget), previously + the QPointer would be cleared by the QWidget destructor. Now, the QPointer + is cleared by the QObject destructor (since this is when QWeakPointers are + cleared). Any QPointers tracking a widget will \b NOT be cleared before the + QWidget destructor destroys the children for the widget being tracked. + + \i When constructing a QSharedPointer to take ownership of an object after a + QPointer is already tracking the object. Previously, the shared pointer + construction would not be affected by the QPointer, but now that QPointer + is implemented using QWeakPoiner, constructing the QSharedPointer will + cause an \c abort(). + + \endlist + Qt also provides QSharedPointer, an implementation of a reference-counted shared pointer object, which can be used to maintain a collection of references to an individual pointer. diff --git a/src/corelib/kernel/qpointer.h b/src/corelib/kernel/qpointer.h index e9f302e317..a1d1f2037f 100644 --- a/src/corelib/kernel/qpointer.h +++ b/src/corelib/kernel/qpointer.h @@ -42,7 +42,7 @@ #ifndef QPOINTER_H #define QPOINTER_H -#include +#include QT_BEGIN_HEADER @@ -50,34 +50,35 @@ QT_BEGIN_NAMESPACE QT_MODULE(Core) +#if QT_DEPRECATED_SINCE(5,0) + template -class QPointer +class QT_DEPRECATED QPointer { - QObject *o; + QWeakPointer wp; + public: - inline QPointer() : o(0) {} - inline QPointer(T *p) : o(p) - { QMetaObject::addGuard(&o); } - inline QPointer(const QPointer &p) : o(p.o) - { QMetaObject::addGuard(&o); } - inline ~QPointer() - { QMetaObject::removeGuard(&o); } + inline QPointer() : wp() { } + inline QPointer(T *p) : wp(p) { } + inline QPointer(const QPointer &p) : wp(p.wp) { } + inline ~QPointer() { } + inline QPointer &operator=(const QPointer &p) - { if (this != &p) QMetaObject::changeGuard(&o, p.o); return *this; } + { wp = p.wp; return *this; } inline QPointer &operator=(T* p) - { if (o != p) QMetaObject::changeGuard(&o, p); return *this; } + { wp = p; return *this; } inline bool isNull() const - { return !o; } + { return wp.isNull(); } inline T* operator->() const - { return static_cast(const_cast(o)); } + { return wp.data(); } inline T& operator*() const - { return *static_cast(const_cast(o)); } + { return *wp.data(); } inline operator T*() const - { return static_cast(const_cast(o)); } + { return wp.data(); } inline T* data() const - { return static_cast(const_cast(o)); } + { return wp.data(); } }; @@ -161,6 +162,8 @@ inline bool operator!= (int i, const QPointer &p) { Q_ASSERT(i == 0); return !i && !p.isNull(); } #endif +#endif // QT_DEPRECATED_SINCE(5,0) + QT_END_NAMESPACE QT_END_HEADER diff --git a/src/widgets/kernel/qaction.cpp b/src/widgets/kernel/qaction.cpp index 22162895f7..15954abf8c 100644 --- a/src/widgets/kernel/qaction.cpp +++ b/src/widgets/kernel/qaction.cpp @@ -1185,22 +1185,19 @@ void QAction::activate(ActionEvent event) { Q_D(QAction); if(event == Trigger) { - QObject *guard = this; - QMetaObject::addGuard(&guard); + QWeakPointer guard = this; if(d->checkable) { // the checked action of an exclusive group cannot be unchecked if (d->checked && (d->group && d->group->isExclusive() && d->group->checkedAction() == this)) { - if (guard) + if (!guard.isNull()) emit triggered(true); - QMetaObject::removeGuard(&guard); return; } setChecked(!d->checked); } - if (guard) + if (!guard.isNull()) emit triggered(d->checked); - QMetaObject::removeGuard(&guard); } else if(event == Hover) { emit hovered(); } diff --git a/src/widgets/kernel/qwidget.cpp b/src/widgets/kernel/qwidget.cpp index 7ec37bb929..d20e979cfb 100644 --- a/src/widgets/kernel/qwidget.cpp +++ b/src/widgets/kernel/qwidget.cpp @@ -1469,10 +1469,6 @@ QWidget::~QWidget() delete d->needsFlush; d->needsFlush = 0; - // set all QPointers for this object to zero - if (d->hasGuards) - QObjectPrivate::clearGuards(this); - if (d->declarativeData) { QAbstractDeclarativeData::destroyed(d->declarativeData, this); d->declarativeData = 0; // don't activate again in ~QObject diff --git a/tests/auto/corelib/kernel/qpointer/tst_qpointer.cpp b/tests/auto/corelib/kernel/qpointer/tst_qpointer.cpp index fed98ec86a..c3888022e6 100644 --- a/tests/auto/corelib/kernel/qpointer/tst_qpointer.cpp +++ b/tests/auto/corelib/kernel/qpointer/tst_qpointer.cpp @@ -241,8 +241,8 @@ public: ChildWidget::~ChildWidget() { - QCOMPARE(static_cast(guardedPointer), static_cast(0)); - QCOMPARE(qobject_cast(guardedPointer), static_cast(0)); + QCOMPARE(static_cast(guardedPointer), parentWidget()); + QCOMPARE(qobject_cast(guardedPointer), parentWidget()); } class DerivedChild; diff --git a/tests/auto/corelib/tools/qsharedpointer/tst_qsharedpointer.cpp b/tests/auto/corelib/tools/qsharedpointer/tst_qsharedpointer.cpp index 7eb1bd2dee..649842f946 100644 --- a/tests/auto/corelib/tools/qsharedpointer/tst_qsharedpointer.cpp +++ b/tests/auto/corelib/tools/qsharedpointer/tst_qsharedpointer.cpp @@ -767,7 +767,6 @@ void tst_QSharedPointer::objectCast() { OtherObject *data = new OtherObject; - QPointer qptr = data; QSharedPointer ptr = QSharedPointer(data); QWeakPointer weakptr = ptr; @@ -788,7 +787,6 @@ void tst_QSharedPointer::objectCast() // drop the reference: ptr.clear(); QVERIFY(ptr.isNull()); - QVERIFY(qptr.isNull()); QVERIFY(weakptr.toStrongRef().isNull()); // verify that the object casts fail without crash -- cgit v1.2.3 From 4c1f5edda6f6b5318a2564cba15551f8108ad264 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Sat, 10 Dec 2011 19:18:48 +0100 Subject: Clean up includes in QStringListModel. Change-Id: Idb7167d1206925179fa812b6e3643ed9172f8479 Reviewed-by: Olivier Goffart --- src/widgets/itemviews/qstringlistmodel.cpp | 2 ++ src/widgets/itemviews/qstringlistmodel.h | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/widgets/itemviews/qstringlistmodel.cpp b/src/widgets/itemviews/qstringlistmodel.cpp index 9faaca0dd4..95c0456765 100644 --- a/src/widgets/itemviews/qstringlistmodel.cpp +++ b/src/widgets/itemviews/qstringlistmodel.cpp @@ -45,6 +45,8 @@ #include "qstringlistmodel.h" +#include + #ifndef QT_NO_STRINGLISTMODEL QT_BEGIN_NAMESPACE diff --git a/src/widgets/itemviews/qstringlistmodel.h b/src/widgets/itemviews/qstringlistmodel.h index 5efed8753e..c2b8042134 100644 --- a/src/widgets/itemviews/qstringlistmodel.h +++ b/src/widgets/itemviews/qstringlistmodel.h @@ -42,8 +42,8 @@ #ifndef QSTRINGLISTMODEL_H #define QSTRINGLISTMODEL_H +#include #include -#include QT_BEGIN_HEADER -- cgit v1.2.3 From c5ee721795178ce38c61daf0f8bec0e762bdc3d7 Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Mon, 12 Dec 2011 11:46:45 +1000 Subject: Filter unprintable chars out of all test output. Previously, unprintable characters were filtered out of test output while the output strings were being formatted by either qt_snprintf() or qt_asprintf(). Any strings not formatted by one of those functions weren't filtered at all, and any strings passed more than once would be filtered more than once. This commit separates the filtering of output strings from their formatting, leaving the filtering until just before the strings are written to the output stream. For now, the filtering is done by a protected method of QAbstractTestLogger, but this could easily be changed to a virtual method in future to allow different filtering for loggers with different output character sets. Change-Id: Ia4bb49cd10d37c84af75d2cf58325d27f0e16d99 Reviewed-by: Rohan McGovern --- src/testlib/qabstracttestlogger.cpp | 20 +++++++++++++++++--- src/testlib/qabstracttestlogger_p.h | 1 + src/testlib/qtestcase.cpp | 12 ------------ 3 files changed, 18 insertions(+), 15 deletions(-) diff --git a/src/testlib/qabstracttestlogger.cpp b/src/testlib/qabstracttestlogger.cpp index f7d8842c4c..9ac1de9909 100644 --- a/src/testlib/qabstracttestlogger.cpp +++ b/src/testlib/qabstracttestlogger.cpp @@ -80,12 +80,28 @@ QAbstractTestLogger::~QAbstractTestLogger() stream = 0; } +void QAbstractTestLogger::filterUnprintable(char *str) const +{ + char *idx = str; + while (*idx) { + if (((*idx < 0x20 && *idx != '\n' && *idx != '\t') || *idx > 0x7e)) + *idx = '?'; + ++idx; + } +} + void QAbstractTestLogger::outputString(const char *msg) { QTEST_ASSERT(stream); - ::fputs(msg, stream); + char *filtered = new char[strlen(msg) + 1]; + strcpy(filtered, msg); + filterUnprintable(filtered); + + ::fputs(filtered, stream); ::fflush(stream); + + delete [] filtered; } void QAbstractTestLogger::startLogging() @@ -135,8 +151,6 @@ int qt_asprintf(QTestCharBuffer *str, const char *format, ...) break; // out of memory - take what we have } - filter_unprintable(str->data()); - return res; } diff --git a/src/testlib/qabstracttestlogger_p.h b/src/testlib/qabstracttestlogger_p.h index 3e11863012..a217b66df1 100644 --- a/src/testlib/qabstracttestlogger_p.h +++ b/src/testlib/qabstracttestlogger_p.h @@ -99,6 +99,7 @@ public: void outputString(const char *msg); protected: + void filterUnprintable(char *str) const; FILE *stream; }; diff --git a/src/testlib/qtestcase.cpp b/src/testlib/qtestcase.cpp index b37dbc0203..438b85d91b 100644 --- a/src/testlib/qtestcase.cpp +++ b/src/testlib/qtestcase.cpp @@ -980,16 +980,6 @@ namespace QTest static bool noCrashHandler = false; #endif -void filter_unprintable(char *str) -{ - char *idx = str; - while (*idx) { - if (((*idx < 0x20 && *idx != '\n' && *idx != '\t') || *idx > 0x7e)) - *idx = '?'; - ++idx; - } -} - /*! \internal */ int qt_snprintf(char *str, int size, const char *format, ...) @@ -1002,8 +992,6 @@ int qt_snprintf(char *str, int size, const char *format, ...) va_end(ap); str[size - 1] = '\0'; - filter_unprintable(str); - return res; } -- cgit v1.2.3 From e179afdbb6fa7bcdc5736dcf1e7d8847dd3c976c Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Mon, 12 Dec 2011 15:22:02 +1000 Subject: Improve definition of QTEST_NO_SPECIALIZATIONS Remove the part of the definition that applies to gcc versions <= 2.x as these versions are not supported by Qt5. Change-Id: Icee6b51ffe78fa30fd7193ef96b6ce0484b8fcae Reviewed-by: Rohan McGovern --- src/testlib/qtest_global.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/testlib/qtest_global.h b/src/testlib/qtest_global.h index 730329a19c..6a40f47f30 100644 --- a/src/testlib/qtest_global.h +++ b/src/testlib/qtest_global.h @@ -60,7 +60,7 @@ QT_MODULE(Test) # endif #endif -#if defined (Q_CC_SUN) || defined (Q_CC_XLC) || (defined (Q_CC_GNU) && (__GNUC__ - 0 < 3)) +#if defined (Q_CC_SUN) || defined (Q_CC_XLC) # define QTEST_NO_SPECIALIZATIONS #endif -- cgit v1.2.3 From 949aaf9a2ae2d7d012550a2da26fbaa2ef40f288 Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Mon, 12 Dec 2011 12:23:02 +1000 Subject: Stop using QTest::qt_snprintf() in testlib. After the previous commit, QTest::qt_snprintf() is equivalent to qsnprintf(), so just use that instead. Change-Id: I89ad6e3749ba5efb1926b0b618a904e8baca9f52 Reviewed-by: Rohan McGovern --- src/testlib/qplaintestlogger.cpp | 56 ++++++++++++++++------------------------ src/testlib/qtest.h | 14 +++++----- src/testlib/qtestcase.cpp | 12 ++++----- src/testlib/qtestlog.cpp | 2 +- src/testlib/qtestresult.cpp | 10 +++---- src/testlib/qxmltestlogger.cpp | 2 +- src/testlib/qxunittestlogger.cpp | 14 +++++----- 7 files changed, 49 insertions(+), 61 deletions(-) diff --git a/src/testlib/qplaintestlogger.cpp b/src/testlib/qplaintestlogger.cpp index 45fc882492..5fb51c9840 100644 --- a/src/testlib/qplaintestlogger.cpp +++ b/src/testlib/qplaintestlogger.cpp @@ -257,7 +257,7 @@ void QPlainTestLogger::printBenchmarkResult(const QBenchmarkResult &result) const char *bmtag = QTest::benchmarkResult2String(); char buf1[1024]; - QTest::qt_snprintf( + qsnprintf( buf1, sizeof(buf1), "%s: %s::%s", bmtag, QTestResult::currentTestObjectName(), @@ -267,16 +267,15 @@ void QPlainTestLogger::printBenchmarkResult(const QBenchmarkResult &result) bufTag[0] = 0; QByteArray tag = result.context.tag.toAscii(); if (tag.isEmpty() == false) { - QTest::qt_snprintf(bufTag, sizeof(bufTag), ":\"%s\"", tag.data()); + qsnprintf(bufTag, sizeof(bufTag), ":\"%s\"", tag.data()); } char fillFormat[8]; int fillLength = 5; - QTest::qt_snprintf( - fillFormat, sizeof(fillFormat), ":\n%%%ds", fillLength); + qsnprintf(fillFormat, sizeof(fillFormat), ":\n%%%ds", fillLength); char fill[1024]; - QTest::qt_snprintf(fill, sizeof(fill), fillFormat, ""); + qsnprintf(fill, sizeof(fill), fillFormat, ""); const char * unitText = QTest::benchmarkMetricUnit(result.metric); @@ -285,34 +284,24 @@ void QPlainTestLogger::printBenchmarkResult(const QBenchmarkResult &result) QTest::formatResult(resultBuffer, 100, valuePerIteration, QTest::countSignificantDigits(result.value)); char buf2[1024]; - QTest::qt_snprintf( - buf2, sizeof(buf2), "%s %s", - resultBuffer, - unitText); + qsnprintf(buf2, sizeof(buf2), "%s %s", resultBuffer, unitText); char buf2_[1024]; QByteArray iterationText = " per iteration"; Q_ASSERT(result.iterations > 0); - QTest::qt_snprintf( - buf2_, - sizeof(buf2_), "%s", - iterationText.data()); + qsnprintf(buf2_, sizeof(buf2_), "%s", iterationText.data()); char buf3[1024]; Q_ASSERT(result.iterations > 0); QTest::formatResult(resultBuffer, 100, result.value, QTest::countSignificantDigits(result.value)); - QTest::qt_snprintf( - buf3, sizeof(buf3), " (total: %s, iterations: %d)", - resultBuffer, - result.iterations); + qsnprintf(buf3, sizeof(buf3), " (total: %s, iterations: %d)", resultBuffer, result.iterations); char buf[1024]; if (result.setByMacro) { - QTest::qt_snprintf( - buf, sizeof(buf), "%s%s%s%s%s%s\n", buf1, bufTag, fill, buf2, buf2_, buf3); + qsnprintf(buf, sizeof(buf), "%s%s%s%s%s%s\n", buf1, bufTag, fill, buf2, buf2_, buf3); } else { - QTest::qt_snprintf(buf, sizeof(buf), "%s%s%s%s\n", buf1, bufTag, fill, buf2); + qsnprintf(buf, sizeof(buf), "%s%s%s%s\n", buf1, bufTag, fill, buf2); } memcpy(buf, bmtag, strlen(bmtag)); @@ -340,13 +329,12 @@ void QPlainTestLogger::startLogging() char buf[1024]; if (QTestLog::verboseLevel() < 0) { - QTest::qt_snprintf(buf, sizeof(buf), "Testing %s\n", - QTestResult::currentTestObjectName()); + qsnprintf(buf, sizeof(buf), "Testing %s\n", QTestResult::currentTestObjectName()); } else { - QTest::qt_snprintf(buf, sizeof(buf), - "********* Start testing of %s *********\n" - "Config: Using QTest library " QTEST_VERSION_STR - ", Qt %s\n", QTestResult::currentTestObjectName(), qVersion()); + qsnprintf(buf, sizeof(buf), + "********* Start testing of %s *********\n" + "Config: Using QTest library " QTEST_VERSION_STR + ", Qt %s\n", QTestResult::currentTestObjectName(), qVersion()); } outputMessage(buf); } @@ -355,15 +343,15 @@ void QPlainTestLogger::stopLogging() { char buf[1024]; if (QTestLog::verboseLevel() < 0) { - QTest::qt_snprintf(buf, sizeof(buf), "Totals: %d passed, %d failed, %d skipped\n", - QTestResult::passCount(), QTestResult::failCount(), - QTestResult::skipCount()); + qsnprintf(buf, sizeof(buf), "Totals: %d passed, %d failed, %d skipped\n", + QTestResult::passCount(), QTestResult::failCount(), + QTestResult::skipCount()); } else { - QTest::qt_snprintf(buf, sizeof(buf), - "Totals: %d passed, %d failed, %d skipped\n" - "********* Finished testing of %s *********\n", - QTestResult::passCount(), QTestResult::failCount(), - QTestResult::skipCount(), QTestResult::currentTestObjectName()); + qsnprintf(buf, sizeof(buf), + "Totals: %d passed, %d failed, %d skipped\n" + "********* Finished testing of %s *********\n", + QTestResult::passCount(), QTestResult::failCount(), + QTestResult::skipCount(), QTestResult::currentTestObjectName()); } outputMessage(buf); diff --git a/src/testlib/qtest.h b/src/testlib/qtest.h index 950b5d537b..6bce44686d 100644 --- a/src/testlib/qtest.h +++ b/src/testlib/qtest.h @@ -195,18 +195,18 @@ inline bool qCompare(QStringList const &t1, QStringList const &t2, msg[0] = '\0'; bool isOk = true; if (t1.count() != t2.count()) { - qt_snprintf(msg, 1024, "Compared QStringLists have different sizes.\n" - " Actual (%s) size : '%d'\n" - " Expected (%s) size: '%d'", actual, t1.count(), expected, t2.count()); + qsnprintf(msg, 1024, "Compared QStringLists have different sizes.\n" + " Actual (%s) size : '%d'\n" + " Expected (%s) size: '%d'", actual, t1.count(), expected, t2.count()); isOk = false; } const int min = qMin(t1.count(), t2.count()); for (int i = 0; isOk && i < min; ++i) { if (t1.at(i) != t2.at(i)) { - qt_snprintf(msg, 1024, "Compared QStringLists differ at index %d.\n" - " Actual (%s) : '%s'\n" - " Expected (%s) : '%s'", i, actual, t1.at(i).toLatin1().constData(), - expected, t2.at(i).toLatin1().constData()); + qsnprintf(msg, 1024, "Compared QStringLists differ at index %d.\n" + " Actual (%s) : '%s'\n" + " Expected (%s) : '%s'", i, actual, t1.at(i).toLatin1().constData(), + expected, t2.at(i).toLatin1().constData()); isOk = false; } } diff --git a/src/testlib/qtestcase.cpp b/src/testlib/qtestcase.cpp index 438b85d91b..a626d3d28d 100644 --- a/src/testlib/qtestcase.cpp +++ b/src/testlib/qtestcase.cpp @@ -1106,7 +1106,7 @@ static void qPrintDataTags(FILE *stream) slot[strlen(slot) - 2] = '\0'; QByteArray member; member.resize(qstrlen(slot) + qstrlen("_data()") + 1); - QTest::qt_snprintf(member.data(), member.size(), "%s_data()", slot); + qsnprintf(member.data(), member.size(), "%s_data()", slot); invokeMethod(QTest::currentTestObject, member.constData()); for (int j = 0; j < table.dataCount(); ++j) localTags << QLatin1String(table.testData(j)->dataTag()); @@ -1436,8 +1436,8 @@ Q_TESTLIB_EXPORT void qtest_qParseArgs(int argc, char *argv[], bool qml) if (colon != -1) { data = qstrdup(argv[i]+colon+1); } - QTest::qt_snprintf(buf, qMin(512, off + 1), "%s", argv[i]); // copy text before the ':' into buf - QTest::qt_snprintf(buf + off, qMin(512 - off, 3), "()"); // append "()" + qsnprintf(buf, qMin(512, off + 1), "%s", argv[i]); // copy text before the ':' into buf + qsnprintf(buf + off, qMin(512 - off, 3), "()"); // append "()" int idx = QTest::currentTestObject->metaObject()->indexOfMethod(buf); if (idx < 0 || !isValidSlot(QTest::currentTestObject->metaObject()->method(idx))) { fprintf(stderr, "Unknown testfunction: '%s'\n", buf); @@ -1589,7 +1589,7 @@ static bool qInvokeTestMethod(const char *slotName, const char *data=0) if (curGlobalDataIndex == 0) { QTestResult::setCurrentTestLocation(QTestResult::DataFunc); - QTest::qt_snprintf(member, 512, "%s_data()", slot); + qsnprintf(member, 512, "%s_data()", slot); invokeMethod(QTest::currentTestObject, member); } @@ -2374,7 +2374,7 @@ Q_TESTLIB_EXPORT bool QTest::qCompare(double const &t1, double const &t2 template <> Q_TESTLIB_EXPORT char *QTest::toString(const TYPE &t) \ { \ char *msg = new char[128]; \ - qt_snprintf(msg, 128, #FORMAT, t); \ + qsnprintf(msg, 128, #FORMAT, t); \ return msg; \ } @@ -2411,7 +2411,7 @@ char *QTest::toString(const char *str) char *QTest::toString(const void *p) { char *msg = new char[128]; - qt_snprintf(msg, 128, "%p", p); + qsnprintf(msg, 128, "%p", p); return msg; } diff --git a/src/testlib/qtestlog.cpp b/src/testlib/qtestlog.cpp index 0951b9b309..f85113d45d 100644 --- a/src/testlib/qtestlog.cpp +++ b/src/testlib/qtestlog.cpp @@ -291,7 +291,7 @@ void QTestLog::printUnhandledIgnoreMessages() char msg[1024]; QTest::IgnoreResultList *list = QTest::ignoreResultList; while (list) { - QTest::qt_snprintf(msg, 1024, "Did not receive message: \"%s\"", list->msg); + qsnprintf(msg, 1024, "Did not receive message: \"%s\"", list->msg); QTest::TestLoggers::addMessage(QAbstractTestLogger::Info, msg); list = list->next; diff --git a/src/testlib/qtestresult.cpp b/src/testlib/qtestresult.cpp index 35a3f042ad..44a5de97d1 100644 --- a/src/testlib/qtestresult.cpp +++ b/src/testlib/qtestresult.cpp @@ -239,11 +239,11 @@ bool QTestResult::verify(bool statement, const char *statementStr, char msg[1024]; if (QTestLog::verboseLevel() >= 2) { - QTest::qt_snprintf(msg, 1024, "QVERIFY(%s)", statementStr); + qsnprintf(msg, 1024, "QVERIFY(%s)", statementStr); QTestLog::info(msg, file, line); } - QTest::qt_snprintf(msg, 1024, "'%s' returned FALSE. (%s)", statementStr, description); + qsnprintf(msg, 1024, "'%s' returned FALSE. (%s)", statementStr, description); return checkStatement(statement, msg, file, line); } @@ -267,9 +267,9 @@ bool QTestResult::compare(bool success, const char *msg, char *val1, char *val2, return compare(success, msg, file, line); char buf[1024]; - QTest::qt_snprintf(buf, 1024, "%s\n Actual (%s): %s\n Expected (%s): %s", msg, - actual, val1 ? val1 : "", - expected, val2 ? val2 : ""); + qsnprintf(buf, 1024, "%s\n Actual (%s): %s\n Expected (%s): %s", msg, + actual, val1 ? val1 : "", + expected, val2 ? val2 : ""); delete [] val1; delete [] val2; return compare(success, buf, file, line); diff --git a/src/testlib/qxmltestlogger.cpp b/src/testlib/qxmltestlogger.cpp index fd18d1de30..b74f7d6d0e 100644 --- a/src/testlib/qxmltestlogger.cpp +++ b/src/testlib/qxmltestlogger.cpp @@ -251,7 +251,7 @@ void QXmlTestLogger::addBenchmarkResult(const QBenchmarkResult &result) QTest::benchmarkResultFormatString(), quotedMetric.constData(), quotedTag.constData(), - QByteArray::number(result.value).constData(), //no 64-bit qt_snprintf support + QByteArray::number(result.value).constData(), //no 64-bit qsnprintf support result.iterations); outputString(buf.constData()); } diff --git a/src/testlib/qxunittestlogger.cpp b/src/testlib/qxunittestlogger.cpp index 97a02eaff2..e13dca4b29 100644 --- a/src/testlib/qxunittestlogger.cpp +++ b/src/testlib/qxunittestlogger.cpp @@ -86,13 +86,13 @@ void QXunitTestLogger::stopLogging() currentLogElement = new QTestElement(QTest::LET_TestSuite); currentLogElement->addAttribute(QTest::AI_Name, QTestResult::currentTestObjectName()); - QTest::qt_snprintf(buf, sizeof(buf), "%i", testCounter); + qsnprintf(buf, sizeof(buf), "%i", testCounter); currentLogElement->addAttribute(QTest::AI_Tests, buf); - QTest::qt_snprintf(buf, sizeof(buf), "%i", failureCounter); + qsnprintf(buf, sizeof(buf), "%i", failureCounter); currentLogElement->addAttribute(QTest::AI_Failures, buf); - QTest::qt_snprintf(buf, sizeof(buf), "%i", errorCounter); + qsnprintf(buf, sizeof(buf), "%i", errorCounter); currentLogElement->addAttribute(QTest::AI_Errors, buf); QTestElement *property; @@ -173,7 +173,7 @@ void QXunitTestLogger::addIncident(IncidentTypes type, const char *description, failureElement->addAttribute(QTest::AI_File, file); else failureElement->addAttribute(QTest::AI_File, ""); - QTest::qt_snprintf(buf, sizeof(buf), "%i", line); + qsnprintf(buf, sizeof(buf), "%i", line); failureElement->addAttribute(QTest::AI_Line, buf); failureElement->addAttribute(QTest::AI_Description, description); addTag(failureElement); @@ -212,7 +212,7 @@ void QXunitTestLogger::addIncident(IncidentTypes type, const char *description, else currentLogElement->addAttribute(QTest::AI_File, ""); - QTest::qt_snprintf(buf, sizeof(buf), "%i", line); + qsnprintf(buf, sizeof(buf), "%i", line); currentLogElement->addAttribute(QTest::AI_Line, buf); /* @@ -235,7 +235,7 @@ void QXunitTestLogger::addBenchmarkResult(const QBenchmarkResult &result) benchmarkElement->addAttribute(QTest::AI_Value, QByteArray::number(result.value).constData()); char buf[100]; - QTest::qt_snprintf(buf, sizeof(buf), "%i", result.iterations); + qsnprintf(buf, sizeof(buf), "%i", result.iterations); benchmarkElement->addAttribute(QTest::AI_Iterations, buf); currentLogElement->addLogElement(benchmarkElement); } @@ -303,7 +303,7 @@ void QXunitTestLogger::addMessage(MessageTypes type, const char *message, const errorElement->addAttribute(QTest::AI_File, ""); char buf[100]; - QTest::qt_snprintf(buf, sizeof(buf), "%i", line); + qsnprintf(buf, sizeof(buf), "%i", line); errorElement->addAttribute(QTest::AI_Line, buf); currentLogElement->addLogElement(errorElement); -- cgit v1.2.3 From c07b840739d28366004242971d1f4ab7ae1546f3 Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Mon, 12 Dec 2011 15:55:42 +1000 Subject: Remove -keyevent-verbose option for autotests. This option does nothing -- the only function that checks if the option has been set is never called. This appears to have been the case ever since testlib was imported into the Qt repository in October 2005. Change-Id: I837aa957e2d8bd47c3d1c551f1b94d4374daa25e Reviewed-by: Rohan McGovern --- src/testlib/qtestcase.cpp | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/src/testlib/qtestcase.cpp b/src/testlib/qtestcase.cpp index a626d3d28d..608b2ca2ea 100644 --- a/src/testlib/qtestcase.cpp +++ b/src/testlib/qtestcase.cpp @@ -975,7 +975,6 @@ namespace QTest static int keyDelay = -1; static int mouseDelay = -1; static int eventDelay = -1; - static int keyVerbose = -1; #if defined(Q_OS_UNIX) static bool noCrashHandler = false; #endif @@ -1008,14 +1007,6 @@ static void invokeMethod(QObject *obj, const char *methodName) } } -bool Q_TESTLIB_EXPORT defaultKeyVerbose() -{ - if (keyVerbose == -1) { - keyVerbose = qgetenv("QTEST_KEYEVENT_VERBOSE").isEmpty() ? 0 : 1; - } - return keyVerbose == 1; -} - int defaultEventDelay() { if (eventDelay == -1) { @@ -1197,7 +1188,6 @@ Q_TESTLIB_EXPORT void qtest_qParseArgs(int argc, char *argv[], bool qml) " -eventdelay ms : Set default delay for mouse and keyboard simulation to ms milliseconds\n" " -keydelay ms : Set default delay for keyboard simulation to ms milliseconds\n" " -mousedelay ms : Set default delay for mouse simulation to ms milliseconds\n" - " -keyevent-verbose : Turn on verbose messages for keyboard simulation\n" " -maxwarnings n : Sets the maximum amount of messages to output.\n" " 0 means unlimited, default: 2000\n" #if defined(Q_OS_UNIX) @@ -1331,8 +1321,6 @@ Q_TESTLIB_EXPORT void qtest_qParseArgs(int argc, char *argv[], bool qml) } else if (strcmp(argv[i], "-nocrashhandler") == 0) { QTest::noCrashHandler = true; #endif - } else if (strcmp(argv[i], "-keyevent-verbose") == 0) { - QTest::keyVerbose = 1; #ifdef QTESTLIB_USE_VALGRIND } else if (strcmp(argv[i], "-callgrind") == 0) { if (QBenchmarkValgrindUtils::haveValgrind()) -- cgit v1.2.3 From 77f41a68b30b93e95808b86fc9d36838e690c8cc Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Fri, 9 Dec 2011 14:36:33 +0100 Subject: Silence -Woverloaded-virtual warnings in QFileDialog The QPaintDevice::init() virtual, reimplemented in QWidget, is hidden by these declarations, and clang (and gcc with -Woverloaded-virtual) warns about this. There is no need to overload the init() name, use more descriptive names instead. dialogs/qsidebar_p.h:124:10: warning: 'QSidebar::init' hides overloaded virtual function [-Woverloaded-virtual] void init(QFileSystemModel *model, const QList &newUrls); ^ dialogs/qfiledialog_p.h:303:10: warning: 'QFileDialogLineEdit::init' hides overloaded virtual function [-Woverloaded-virtual] void init(QFileDialogPrivate *d_pointer) {d_ptr = d_pointer; } ^ dialogs/qfiledialog_p.h:314:10: warning: 'QFileDialogComboBox::init' hides overloaded virtual function [-Woverloaded-virtual] void init(QFileDialogPrivate *d_pointer); ^ dialogs/qfiledialog_p.h:330:10: warning: 'QFileDialogListView::init' hides overloaded virtual function [-Woverloaded-virtual] void init(QFileDialogPrivate *d_pointer); ^ dialogs/qfiledialog_p.h:342:10: warning: 'QFileDialogTreeView::init' hides overloaded virtual function [-Woverloaded-virtual] void init(QFileDialogPrivate *d_pointer); ^ kernel/qwidget.h:682:10: note: hidden overloaded virtual function 'QWidget::init' declared here void init(QPainter *painter) const; ^ Change-Id: I7a317a551b92fde966e61958dcaf25dea94d69b4 Reviewed-by: Robin Burchell Reviewed-by: Olivier Goffart --- src/widgets/dialogs/qfiledialog.cpp | 17 ++++++++--------- src/widgets/dialogs/qfiledialog_p.h | 8 ++++---- src/widgets/dialogs/qsidebar.cpp | 2 +- src/widgets/dialogs/qsidebar_p.h | 2 +- .../widgets/dialogs/qfiledialog2/tst_qfiledialog2.cpp | 2 +- tests/auto/widgets/dialogs/qsidebar/tst_qsidebar.cpp | 8 ++++---- 6 files changed, 19 insertions(+), 20 deletions(-) diff --git a/src/widgets/dialogs/qfiledialog.cpp b/src/widgets/dialogs/qfiledialog.cpp index 0f107c6b0a..19f474e503 100644 --- a/src/widgets/dialogs/qfiledialog.cpp +++ b/src/widgets/dialogs/qfiledialog.cpp @@ -2290,22 +2290,21 @@ void QFileDialogPrivate::createWidgets() QList initialBookmarks; initialBookmarks << QUrl::fromLocalFile(QLatin1String("")) << QUrl::fromLocalFile(QDir::homePath()); - qFileDialogUi->sidebar->init(model, initialBookmarks); + qFileDialogUi->sidebar->setModelAndUrls(model, initialBookmarks); QFileDialog::connect(qFileDialogUi->sidebar, SIGNAL(goToUrl(QUrl)), q, SLOT(_q_goToUrl(QUrl))); QObject::connect(qFileDialogUi->buttonBox, SIGNAL(accepted()), q, SLOT(accept())); QObject::connect(qFileDialogUi->buttonBox, SIGNAL(rejected()), q, SLOT(reject())); - - qFileDialogUi->lookInCombo->init(this); + qFileDialogUi->lookInCombo->setFileDialogPrivate(this); QObject::connect(qFileDialogUi->lookInCombo, SIGNAL(activated(QString)), q, SLOT(_q_goToDirectory(QString))); qFileDialogUi->lookInCombo->setInsertPolicy(QComboBox::NoInsert); qFileDialogUi->lookInCombo->setDuplicatesEnabled(false); // filename - qFileDialogUi->fileNameEdit->init(this); + qFileDialogUi->fileNameEdit->setFileDialogPrivate(this); #ifndef QT_NO_SHORTCUT qFileDialogUi->fileNameLabel->setBuddy(qFileDialogUi->fileNameEdit); #endif @@ -2329,7 +2328,7 @@ void QFileDialogPrivate::createWidgets() QObject::connect(qFileDialogUi->fileTypeCombo, SIGNAL(activated(QString)), q, SIGNAL(filterSelected(QString))); - qFileDialogUi->listView->init(this); + qFileDialogUi->listView->setFileDialogPrivate(this); qFileDialogUi->listView->setModel(model); QObject::connect(qFileDialogUi->listView, SIGNAL(activated(QModelIndex)), q, SLOT(_q_enterDirectory(QModelIndex))); @@ -2341,7 +2340,7 @@ void QFileDialogPrivate::createWidgets() QObject::connect(shortcut, SIGNAL(activated()), q, SLOT(_q_deleteCurrent())); #endif - qFileDialogUi->treeView->init(this); + qFileDialogUi->treeView->setFileDialogPrivate(this); qFileDialogUi->treeView->setModel(model); QHeaderView *treeHeader = qFileDialogUi->treeView->header(); QFontMetrics fm(q->font()); @@ -3181,7 +3180,7 @@ QString QFileDialogPrivate::getEnvironmentVariable(const QString &string) return string; } -void QFileDialogComboBox::init(QFileDialogPrivate *d_pointer) { +void QFileDialogComboBox::setFileDialogPrivate(QFileDialogPrivate *d_pointer) { d_ptr = d_pointer; urlModel = new QUrlModel(this); urlModel->showFullPath = true; @@ -3257,7 +3256,7 @@ QFileDialogListView::QFileDialogListView(QWidget *parent) : QListView(parent) { } -void QFileDialogListView::init(QFileDialogPrivate *d_pointer) +void QFileDialogListView::setFileDialogPrivate(QFileDialogPrivate *d_pointer) { d_ptr = d_pointer; setSelectionBehavior(QAbstractItemView::SelectRows); @@ -3294,7 +3293,7 @@ QFileDialogTreeView::QFileDialogTreeView(QWidget *parent) : QTreeView(parent) { } -void QFileDialogTreeView::init(QFileDialogPrivate *d_pointer) +void QFileDialogTreeView::setFileDialogPrivate(QFileDialogPrivate *d_pointer) { d_ptr = d_pointer; setSelectionBehavior(QAbstractItemView::SelectRows); diff --git a/src/widgets/dialogs/qfiledialog_p.h b/src/widgets/dialogs/qfiledialog_p.h index 383734950c..1780fff72c 100644 --- a/src/widgets/dialogs/qfiledialog_p.h +++ b/src/widgets/dialogs/qfiledialog_p.h @@ -300,7 +300,7 @@ class QFileDialogLineEdit : public QLineEdit { public: QFileDialogLineEdit(QWidget *parent = 0) : QLineEdit(parent), hideOnEsc(false), d_ptr(0){} - void init(QFileDialogPrivate *d_pointer) {d_ptr = d_pointer; } + void setFileDialogPrivate(QFileDialogPrivate *d_pointer) {d_ptr = d_pointer; } void keyPressEvent(QKeyEvent *e); bool hideOnEsc; private: @@ -311,7 +311,7 @@ class QFileDialogComboBox : public QComboBox { public: QFileDialogComboBox(QWidget *parent = 0) : QComboBox(parent), urlModel(0) {} - void init(QFileDialogPrivate *d_pointer); + void setFileDialogPrivate(QFileDialogPrivate *d_pointer); void showPopup(); void setHistory(const QStringList &paths); QStringList history() const { return m_history; } @@ -327,7 +327,7 @@ class QFileDialogListView : public QListView { public: QFileDialogListView(QWidget *parent = 0); - void init(QFileDialogPrivate *d_pointer); + void setFileDialogPrivate(QFileDialogPrivate *d_pointer); QSize sizeHint() const; protected: void keyPressEvent(QKeyEvent *e); @@ -339,7 +339,7 @@ class QFileDialogTreeView : public QTreeView { public: QFileDialogTreeView(QWidget *parent); - void init(QFileDialogPrivate *d_pointer); + void setFileDialogPrivate(QFileDialogPrivate *d_pointer); QSize sizeHint() const; protected: diff --git a/src/widgets/dialogs/qsidebar.cpp b/src/widgets/dialogs/qsidebar.cpp index 8efbb8dfcd..1fd9bf236d 100644 --- a/src/widgets/dialogs/qsidebar.cpp +++ b/src/widgets/dialogs/qsidebar.cpp @@ -371,7 +371,7 @@ QSidebar::QSidebar(QWidget *parent) : QListView(parent) { } -void QSidebar::init(QFileSystemModel *model, const QList &newUrls) +void QSidebar::setModelAndUrls(QFileSystemModel *model, const QList &newUrls) { // ### TODO make icon size dynamic setIconSize(QSize(24,24)); diff --git a/src/widgets/dialogs/qsidebar_p.h b/src/widgets/dialogs/qsidebar_p.h index 6ad2716780..ec3f4c096d 100644 --- a/src/widgets/dialogs/qsidebar_p.h +++ b/src/widgets/dialogs/qsidebar_p.h @@ -121,7 +121,7 @@ Q_SIGNALS: public: QSidebar(QWidget *parent = 0); - void init(QFileSystemModel *model, const QList &newUrls); + void setModelAndUrls(QFileSystemModel *model, const QList &newUrls); ~QSidebar(); QSize sizeHint() const; diff --git a/tests/auto/widgets/dialogs/qfiledialog2/tst_qfiledialog2.cpp b/tests/auto/widgets/dialogs/qfiledialog2/tst_qfiledialog2.cpp index bac6b82d37..9ed91af26e 100644 --- a/tests/auto/widgets/dialogs/qfiledialog2/tst_qfiledialog2.cpp +++ b/tests/auto/widgets/dialogs/qfiledialog2/tst_qfiledialog2.cpp @@ -931,7 +931,7 @@ void tst_QFileDialog2::task251341_sideBarRemoveEntries() QCOMPARE(qvariant_cast(value), false); MyQSideBar mySideBar; - mySideBar.init(model, urls); + mySideBar.setModelAndUrls(model, urls); mySideBar.show(); mySideBar.selectUrl(QUrl::fromLocalFile(testSubDir.absolutePath())); QTest::qWait(1000); diff --git a/tests/auto/widgets/dialogs/qsidebar/tst_qsidebar.cpp b/tests/auto/widgets/dialogs/qsidebar/tst_qsidebar.cpp index bb4c671d43..842f0e6022 100644 --- a/tests/auto/widgets/dialogs/qsidebar/tst_qsidebar.cpp +++ b/tests/auto/widgets/dialogs/qsidebar/tst_qsidebar.cpp @@ -84,7 +84,7 @@ void tst_QSidebar::setUrls() QList urls; QFileSystemModel fsmodel; QSidebar qsidebar; - qsidebar.init(&fsmodel, urls); + qsidebar.setModelAndUrls(&fsmodel, urls); QAbstractItemModel *model = qsidebar.model(); urls << QUrl::fromLocalFile(QDir::rootPath()) @@ -105,7 +105,7 @@ void tst_QSidebar::selectUrls() << QUrl::fromLocalFile(QDir::temp().absolutePath()); QFileSystemModel fsmodel; QSidebar qsidebar; - qsidebar.init(&fsmodel, urls); + qsidebar.setModelAndUrls(&fsmodel, urls); QSignalSpy spy(&qsidebar, SIGNAL(goToUrl(const QUrl &))); qsidebar.selectUrl(urls.at(0)); @@ -117,7 +117,7 @@ void tst_QSidebar::addUrls() QList emptyUrls; QFileSystemModel fsmodel; QSidebar qsidebar; - qsidebar.init(&fsmodel, emptyUrls); + qsidebar.setModelAndUrls(&fsmodel, emptyUrls); QAbstractItemModel *model = qsidebar.model(); QDir testDir = QDir::home(); @@ -214,7 +214,7 @@ void tst_QSidebar::goToUrl() << QUrl::fromLocalFile(QDir::temp().absolutePath()); QFileSystemModel fsmodel; QSidebar qsidebar; - qsidebar.init(&fsmodel, urls); + qsidebar.setModelAndUrls(&fsmodel, urls); qsidebar.show(); QSignalSpy spy(&qsidebar, SIGNAL(goToUrl(const QUrl &))); -- cgit v1.2.3 From b9ebb65c77ea779d4abbf92e93b8bef5a41c84bc Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Fri, 9 Dec 2011 16:16:46 +0100 Subject: Revert "Remove unused overload of QTest::qExec." The overload is used in Qt Creator (see src/libs/extensionsystem/pluginmanager.cpp). The use case here is an application whose internal QObjects can be tested by passing a command line parameter. For this use case, it is inconvenient to have to allocate memory and create a char argv[]- array. This reverts commit ad80d42f8eefd72d9297c272139acc70e24bfa13. Change-Id: I2a2f91e2840100fd62743f6d03b33005d67b18f8 Reviewed-by: Daniel Teske Reviewed-by: Jason McDonald --- dist/changes-5.0.0 | 3 - src/testlib/qtestcase.cpp | 28 +++++++ src/testlib/qtestcase.h | 1 + tests/auto/testlib/selftests/.gitignore | 1 + .../selftests/qexecstringlist/qexecstringlist.pro | 8 ++ .../qexecstringlist/tst_qexecstringlist.cpp | 96 ++++++++++++++++++++++ tests/auto/testlib/selftests/selftests.pro | 2 +- tests/auto/testlib/selftests/selftests.qrc | 1 + tests/auto/testlib/selftests/tst_selftests.cpp | 4 + 9 files changed, 140 insertions(+), 4 deletions(-) create mode 100644 tests/auto/testlib/selftests/qexecstringlist/qexecstringlist.pro create mode 100644 tests/auto/testlib/selftests/qexecstringlist/tst_qexecstringlist.cpp diff --git a/dist/changes-5.0.0 b/dist/changes-5.0.0 index 7d9153d46b..daf68eee32 100644 --- a/dist/changes-5.0.0 +++ b/dist/changes-5.0.0 @@ -59,9 +59,6 @@ information about a particular change. like SkipSingle -- skipping a non-data-driven test function or skipping only the current data row of a data-driven test function. Every skipped data row is now reported in the test log. - * The QTest::qExec(QObject*, const QStringList&) overload has been removed - from the API. This function was not used in any of Qt's autotests and did - not provide significant benefits over QTest::qExec(QObject*, int, char**). - The QSsl::TlsV1 enum value was renamed to QSsl::TlsV1_0 . diff --git a/src/testlib/qtestcase.cpp b/src/testlib/qtestcase.cpp index 608b2ca2ea..2ddb363888 100644 --- a/src/testlib/qtestcase.cpp +++ b/src/testlib/qtestcase.cpp @@ -1903,6 +1903,10 @@ FatalSignalHandler::~FatalSignalHandler() test that was executed with qExec() can't run another test via qExec() and threads are not allowed to call qExec() simultaneously. + If you have programatically created the arguments, as opposed to getting them + from the arguments in \c main(), it is likely of interest to use + QTest::qExec(QObject *, const QStringList &) since it is Unicode safe. + \sa QTEST_MAIN() */ @@ -2012,6 +2016,30 @@ int QTest::qExec(QObject *testObject, int argc, char **argv) return qMin(QTestResult::failCount(), 127); } +/*! + \overload + \since 4.4 + + Behaves identically to qExec(QObject *, int, char**) but takes a + QStringList of \a arguments instead of a \c char** list. + */ +int QTest::qExec(QObject *testObject, const QStringList &arguments) +{ + const int argc = arguments.count(); + QVarLengthArray argv(argc); + + QVector args; + args.reserve(argc); + + for (int i = 0; i < argc; ++i) + { + args.append(arguments.at(i).toLocal8Bit().constData()); + argv[i] = args.last().data(); + } + + return qExec(testObject, argc, argv.data()); +} + /*! \internal */ void QTest::qFail(const char *statementStr, const char *file, int line) diff --git a/src/testlib/qtestcase.h b/src/testlib/qtestcase.h index 091e9a8d96..dffbedab8e 100644 --- a/src/testlib/qtestcase.h +++ b/src/testlib/qtestcase.h @@ -180,6 +180,7 @@ namespace QTest Q_TESTLIB_EXPORT char *toString(const void *); Q_TESTLIB_EXPORT int qExec(QObject *testObject, int argc = 0, char **argv = 0); + Q_TESTLIB_EXPORT int qExec(QObject *testObject, const QStringList &arguments); Q_TESTLIB_EXPORT bool qVerify(bool statement, const char *statementStr, const char *description, const char *file, int line); diff --git a/tests/auto/testlib/selftests/.gitignore b/tests/auto/testlib/selftests/.gitignore index 98a3f49081..56ba17abd7 100644 --- a/tests/auto/testlib/selftests/.gitignore +++ b/tests/auto/testlib/selftests/.gitignore @@ -13,6 +13,7 @@ fetchbogus/tst_fetchbogus globaldata/tst_globaldata maxwarnings/tst_maxwarnings multiexec/tst_multiexec +qexecstringlist/tst_qexecstringlist singleskip/tst_singleskip skip/tst_skip skipglobal/tst_skipglobal diff --git a/tests/auto/testlib/selftests/qexecstringlist/qexecstringlist.pro b/tests/auto/testlib/selftests/qexecstringlist/qexecstringlist.pro new file mode 100644 index 0000000000..de8a7da37e --- /dev/null +++ b/tests/auto/testlib/selftests/qexecstringlist/qexecstringlist.pro @@ -0,0 +1,8 @@ +SOURCES += tst_qexecstringlist.cpp +QT = core testlib + +mac:CONFIG -= app_bundle +CONFIG -= debug_and_release_target + + +TARGET = qexecstringlist diff --git a/tests/auto/testlib/selftests/qexecstringlist/tst_qexecstringlist.cpp b/tests/auto/testlib/selftests/qexecstringlist/tst_qexecstringlist.cpp new file mode 100644 index 0000000000..aacfab76f1 --- /dev/null +++ b/tests/auto/testlib/selftests/qexecstringlist/tst_qexecstringlist.cpp @@ -0,0 +1,96 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + + +#include +#include + +class tst_QExecStringList: public QObject +{ + Q_OBJECT + +private slots: + void testA() const; + void testB() const; + void testB_data() const; + void testC() const; +}; + +void tst_QExecStringList::testA() const +{ +} + +void tst_QExecStringList::testB() const +{ + QFETCH(bool, dummy); + Q_UNUSED(dummy); +} + +void tst_QExecStringList::testB_data() const +{ + QTest::addColumn("dummy"); + + QTest::newRow("Data1") << false; + QTest::newRow("Data2") << false; + QTest::newRow("Data3") << false; +} + +void tst_QExecStringList::testC() const +{ +} + +int main(int argc,char *argv[]) +{ + QCoreApplication app(argc, argv); + + tst_QExecStringList test; + + QTest::qExec(&test, app.arguments()); + QTest::qExec(&test, QStringList("appName")); + QTest::qExec(&test, QStringList("appName") << "testA"); + QTest::qExec(&test, QStringList("appName") << "testB"); + QTest::qExec(&test, QStringList("appName") << "testB:Data2"); + QTest::qExec(&test, QStringList("appName") << "testC"); + + return 0; +} + +#include "tst_qexecstringlist.moc" diff --git a/tests/auto/testlib/selftests/selftests.pro b/tests/auto/testlib/selftests/selftests.pro index b4c4255dfc..68239754aa 100644 --- a/tests/auto/testlib/selftests/selftests.pro +++ b/tests/auto/testlib/selftests/selftests.pro @@ -3,7 +3,7 @@ TEMPLATE = subdirs SUBDIRS = subtest test warnings maxwarnings cmptest globaldata skip \ strcmp expectfail sleep fetchbogus crashes multiexec failinit failinitdata \ skipinit skipinitdata datetime singleskip assert differentexec \ - exceptionthrow datatable commandlinedata \ + exceptionthrow qexecstringlist datatable commandlinedata\ benchlibwalltime benchlibcallgrind benchlibeventcounter benchlibtickcounter \ benchliboptions xunit badxml longstring float printdatatags \ printdatatagswithglobaltags findtestdata diff --git a/tests/auto/testlib/selftests/selftests.qrc b/tests/auto/testlib/selftests/selftests.qrc index 5090fa7378..fb303af2b5 100644 --- a/tests/auto/testlib/selftests/selftests.qrc +++ b/tests/auto/testlib/selftests/selftests.qrc @@ -95,6 +95,7 @@ expected_multiexec.xunitxml expected_printdatatags.txt expected_printdatatagswithglobaltags.txt + expected_qexecstringlist.txt expected_singleskip.lightxml expected_singleskip.txt expected_singleskip.xml diff --git a/tests/auto/testlib/selftests/tst_selftests.cpp b/tests/auto/testlib/selftests/tst_selftests.cpp index f7a485b857..f3b47389e6 100644 --- a/tests/auto/testlib/selftests/tst_selftests.cpp +++ b/tests/auto/testlib/selftests/tst_selftests.cpp @@ -327,6 +327,7 @@ void tst_Selftests::runSubTest_data() << "multiexec" << "printdatatags" << "printdatatagswithglobaltags" + << "qexecstringlist" << "singleskip" << "skip" << "skipinit" @@ -391,6 +392,9 @@ void tst_Selftests::runSubTest_data() if (subtest == "multiexec") { continue; } + if (subtest == "qexecstringlist") { + continue; + } if (subtest == "benchliboptions") { continue; } -- cgit v1.2.3 From 67be01ae5048138e894fa8d3eb0abe93c5699048 Mon Sep 17 00:00:00 2001 From: Honglei Zhang Date: Thu, 8 Dec 2011 15:38:25 +0200 Subject: Check driver validity before using it Even though it is stated in the documentation that the SQL driver must remain valid during the life time of QSqlQuery, there are users who don't follow the rule. It's common that the destructor of QSqlQuery is called after the driver is already deleted. This fix checks the validity of the SQLite driver before QSqliteResult uses it in destructor. Task-number: QTBUG-16967 Change-Id: If0f52113f12e14102da1671cd6e12bdaa267114f Reviewed-by: Yunqiao Yin --- src/sql/drivers/sqlite/qsql_sqlite.cpp | 4 +++- src/sql/kernel/qsqlresult.cpp | 7 ++++--- tests/auto/sql/kernel/qsqlquery/tst_qsqlquery.cpp | 9 +++++++-- 3 files changed, 14 insertions(+), 6 deletions(-) diff --git a/src/sql/drivers/sqlite/qsql_sqlite.cpp b/src/sql/drivers/sqlite/qsql_sqlite.cpp index 38e4a63d57..d4acedc69b 100644 --- a/src/sql/drivers/sqlite/qsql_sqlite.cpp +++ b/src/sql/drivers/sqlite/qsql_sqlite.cpp @@ -292,7 +292,9 @@ QSQLiteResult::QSQLiteResult(const QSQLiteDriver* db) QSQLiteResult::~QSQLiteResult() { - qobject_cast(driver())->d->results.removeOne(this); + const QSqlDriver *sqlDriver = driver(); + if (sqlDriver) + qobject_cast(sqlDriver)->d->results.removeOne(this); d->cleanup(); delete d; } diff --git a/src/sql/kernel/qsqlresult.cpp b/src/sql/kernel/qsqlresult.cpp index 71a81c0a8d..9065a6ad09 100644 --- a/src/sql/kernel/qsqlresult.cpp +++ b/src/sql/kernel/qsqlresult.cpp @@ -48,6 +48,7 @@ #include "qsqlresult.h" #include "qvector.h" #include "qsqldriver.h" +#include "qpointer.h" #include QT_BEGIN_NAMESPACE @@ -64,7 +65,7 @@ class QSqlResultPrivate { public: QSqlResultPrivate(QSqlResult* d) - : q(d), sqldriver(0), idx(QSql::BeforeFirstRow), active(false), + : q(d), idx(QSql::BeforeFirstRow), active(false), isSel(false), forwardOnly(false), precisionPolicy(QSql::LowPrecisionDouble), bindCount(0), binds(QSqlResult::PositionalBinding) {} @@ -98,7 +99,7 @@ public: public: QSqlResult* q; - const QSqlDriver* sqldriver; + QPointer sqldriver; int idx; QString sql; bool active; @@ -250,7 +251,7 @@ QString QSqlResultPrivate::namedToPositionalBinding() QSqlResult::QSqlResult(const QSqlDriver *db) { d = new QSqlResultPrivate(this); - d->sqldriver = db; + d->sqldriver = const_cast(db); if(db) { setNumericalPrecisionPolicy(db->numericalPrecisionPolicy()); } diff --git a/tests/auto/sql/kernel/qsqlquery/tst_qsqlquery.cpp b/tests/auto/sql/kernel/qsqlquery/tst_qsqlquery.cpp index c970020a01..2d96dbae76 100644 --- a/tests/auto/sql/kernel/qsqlquery/tst_qsqlquery.cpp +++ b/tests/auto/sql/kernel/qsqlquery/tst_qsqlquery.cpp @@ -3135,6 +3135,7 @@ void tst_QSqlQuery::QTBUG_21884() */ void tst_QSqlQuery::QTBUG_16967() { + QSqlQuery q2; QFETCH(QString, dbName); { QSqlDatabase db = QSqlDatabase::database(dbName); @@ -3146,6 +3147,7 @@ void tst_QSqlQuery::QTBUG_16967() QSqlDatabase db = QSqlDatabase::database(dbName); CHECK_DATABASE(db); QSqlQuery q(db); + q2 = q; q.prepare("CREATE TABLE t1 (id INTEGER PRIMARY KEY, str TEXT);"); db.close(); QCOMPARE(db.lastError().type(), QSqlError::NoError); @@ -3154,8 +3156,9 @@ void tst_QSqlQuery::QTBUG_16967() QSqlDatabase db = QSqlDatabase::database(dbName); CHECK_DATABASE(db); QSqlQuery q(db); - q.prepare("CREATE TABLE t1 (id INTEGER PRIMARY KEY, str TEXT);"); - q.exec(); + q2 = q; + q2.prepare("CREATE TABLE t1 (id INTEGER PRIMARY KEY, str TEXT);"); + q2.exec(); db.close(); QCOMPARE(db.lastError().type(), QSqlError::NoError); } @@ -3163,6 +3166,7 @@ void tst_QSqlQuery::QTBUG_16967() QSqlDatabase db = QSqlDatabase::database(dbName); CHECK_DATABASE(db); QSqlQuery q(db); + q2 = q; q.exec("INSERT INTO t1 (id, str) VALUES(1, \"test1\");"); db.close(); QCOMPARE(db.lastError().type(), QSqlError::NoError); @@ -3171,6 +3175,7 @@ void tst_QSqlQuery::QTBUG_16967() QSqlDatabase db = QSqlDatabase::database(dbName); CHECK_DATABASE(db); QSqlQuery q(db); + q2 = q; q.exec("SELECT * FROM t1;"); db.close(); QCOMPARE(db.lastError().type(), QSqlError::NoError); -- cgit v1.2.3 From 6f1c4fb342dd94b21df8f5c2bbdfa4b9f5a09c4e Mon Sep 17 00:00:00 2001 From: Laszlo Agocs Date: Wed, 30 Nov 2011 19:19:27 +0200 Subject: Store the primary status in the touch point flags. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit For some reason the primary bit has previously been encoded in the touch point state, even though it has nothing to do with the regular states like Pressed, Released, etc. The value is now stored in the recently introduced flags member of the touch points. This also reduces the need for error-prone internal masking of the state value. The structure used by QWindowSystemInterface::handleTouchEvent also becomes cleaner because the primary status can now be set in the flags member and the isPrimary bool can be dropped. Change-Id: I1da2cb99154afd97e1e3a5943ab115cae3a8232f Reviewed-by: Samuel Rødal --- src/corelib/global/qnamespace.h | 5 +---- src/gui/kernel/qevent.cpp | 7 ++----- src/gui/kernel/qevent.h | 3 ++- src/gui/kernel/qguiapplication.cpp | 4 +--- src/gui/kernel/qwindowsysteminterface_qpa.cpp | 6 +----- src/gui/kernel/qwindowsysteminterface_qpa.h | 3 +-- src/plugins/generic/touchscreen/qtoucheventsenderqpa.cpp | 2 +- src/plugins/generic/touchscreen/qtouchscreen.cpp | 13 +++++++------ src/plugins/platforms/cocoa/qmultitouch_mac.mm | 3 ++- src/plugins/platforms/windows/qwindowsmousehandler.cpp | 5 +++-- src/plugins/platforms/xcb/qxcbconnection_maemo.cpp | 3 ++- src/testlib/qtesttouch.h | 2 +- src/widgets/kernel/qapplication.cpp | 4 +--- 13 files changed, 25 insertions(+), 35 deletions(-) diff --git a/src/corelib/global/qnamespace.h b/src/corelib/global/qnamespace.h index b6e2384ea0..357c31930c 100644 --- a/src/corelib/global/qnamespace.h +++ b/src/corelib/global/qnamespace.h @@ -1495,10 +1495,7 @@ public: TouchPointPressed = 0x01, TouchPointMoved = 0x02, TouchPointStationary = 0x04, - TouchPointReleased = 0x08, - TouchPointStateMask = 0x0f, - - TouchPointPrimary = 0x10 + TouchPointReleased = 0x08 }; Q_DECLARE_FLAGS(TouchPointStates, TouchPointState) diff --git a/src/gui/kernel/qevent.cpp b/src/gui/kernel/qevent.cpp index 7ff7fc0f5d..f69445109c 100644 --- a/src/gui/kernel/qevent.cpp +++ b/src/gui/kernel/qevent.cpp @@ -3441,9 +3441,6 @@ QWindowStateChangeEvent::~QWindowStateChangeEvent() \value TouchPointMoved The touch point moved. \value TouchPointStationary The touch point did not move. \value TouchPointReleased The touch point was released. - - \omitvalue TouchPointStateMask - \omitvalue TouchPointPrimary */ /*! \enum QTouchEvent::DeviceType @@ -3623,7 +3620,7 @@ int QTouchEvent::TouchPoint::id() const */ Qt::TouchPointState QTouchEvent::TouchPoint::state() const { - return Qt::TouchPointState(int(d->state) & Qt::TouchPointStateMask); + return Qt::TouchPointState(int(d->state)); } /*! @@ -3632,7 +3629,7 @@ Qt::TouchPointState QTouchEvent::TouchPoint::state() const */ bool QTouchEvent::TouchPoint::isPrimary() const { - return (d->state & Qt::TouchPointPrimary) != 0; + return (d->flags & Primary) != 0; } /*! diff --git a/src/gui/kernel/qevent.h b/src/gui/kernel/qevent.h index 7237b16df7..4296078cfd 100644 --- a/src/gui/kernel/qevent.h +++ b/src/gui/kernel/qevent.h @@ -694,7 +694,8 @@ public: { public: enum InfoFlag { - Pen = 0x0001 + Primary = 0x0001, + Pen = 0x0002 }; Q_DECLARE_FLAGS(InfoFlags, InfoFlag) diff --git a/src/gui/kernel/qguiapplication.cpp b/src/gui/kernel/qguiapplication.cpp index 6d5e210e82..28ce2e599b 100644 --- a/src/gui/kernel/qguiapplication.cpp +++ b/src/gui/kernel/qguiapplication.cpp @@ -914,8 +914,6 @@ void QGuiApplicationPrivate::processTouchEvent(QWindowSystemInterfacePrivate::To StatesAndTouchPoints &maskAndPoints = windowsNeedingEvents[w.data()]; maskAndPoints.first |= touchPoint.state(); - if (touchPoint.isPrimary()) - maskAndPoints.first |= Qt::TouchPointPrimary; maskAndPoints.second.append(touchPoint); } @@ -928,7 +926,7 @@ void QGuiApplicationPrivate::processTouchEvent(QWindowSystemInterfacePrivate::To QWindow *w = it.key(); QEvent::Type eventType; - switch (it.value().first & Qt::TouchPointStateMask) { + switch (it.value().first) { case Qt::TouchPointPressed: eventType = QEvent::TouchBegin; break; diff --git a/src/gui/kernel/qwindowsysteminterface_qpa.cpp b/src/gui/kernel/qwindowsysteminterface_qpa.cpp index 874ceb426a..e6ebadc05a 100644 --- a/src/gui/kernel/qwindowsysteminterface_qpa.cpp +++ b/src/gui/kernel/qwindowsysteminterface_qpa.cpp @@ -245,11 +245,7 @@ void QWindowSystemInterface::handleTouchEvent(QWindow *tlw, ulong timestamp, QTo p.setId(point->id); p.setPressure(point->pressure); states |= point->state; - Qt::TouchPointStates state = point->state; - if (point->isPrimary) { - state |= Qt::TouchPointPrimary; - } - p.setState(state); + p.setState(point->state); const QPointF screenPos = point->area.center(); p.setScreenPos(screenPos); diff --git a/src/gui/kernel/qwindowsysteminterface_qpa.h b/src/gui/kernel/qwindowsysteminterface_qpa.h index bcd4de944c..a17c096982 100644 --- a/src/gui/kernel/qwindowsysteminterface_qpa.h +++ b/src/gui/kernel/qwindowsysteminterface_qpa.h @@ -86,9 +86,8 @@ public: static void handleWheelEvent(QWindow *w, ulong timestamp, const QPointF & local, const QPointF & global, int d, Qt::Orientation o, Qt::KeyboardModifiers mods = Qt::NoModifier); struct TouchPoint { - TouchPoint() : id(0), isPrimary(false), pressure(0), state(Qt::TouchPointStationary), flags(0) { } + TouchPoint() : id(0), pressure(0), state(Qt::TouchPointStationary), flags(0) { } int id; // for application use - bool isPrimary; // for application use QPointF normalPosition; // touch device coordinates, (0 to 1, 0 to 1) QRectF area; // the touched area, centered at position in screen coordinates qreal pressure; // 0 to 1 diff --git a/src/plugins/generic/touchscreen/qtoucheventsenderqpa.cpp b/src/plugins/generic/touchscreen/qtoucheventsenderqpa.cpp index f8dc84373d..a62f9360c7 100644 --- a/src/plugins/generic/touchscreen/qtoucheventsenderqpa.cpp +++ b/src/plugins/generic/touchscreen/qtoucheventsenderqpa.cpp @@ -102,7 +102,7 @@ void QTouchEventSenderQPA::touch_point(const QList m_contacts, m_lastContacts; Contact m_currentData; @@ -219,7 +219,8 @@ void QTouchScreenData::processInputEvent(input_event *data) m_currentData.y = data->value; } else if (data->code == ABS_MT_TRACKING_ID) { m_currentData.trackingId = data->value; - m_currentData.primary = m_contacts.isEmpty(); + if (m_contacts.isEmpty()) + m_currentData.flags |= QTouchEvent::TouchPoint::Primary; } else if (data->code == ABS_MT_TOUCH_MAJOR) { m_currentData.maj = data->value; if (data->value == 0) @@ -238,7 +239,7 @@ void QTouchScreenData::processInputEvent(input_event *data) it != ite; ++it) { QWindowSystemInterface::TouchPoint tp; tp.id = it->trackingId; - tp.isPrimary = it->primary; + tp.flags = it->flags; tp.pressure = it->state == Qt::TouchPointReleased ? 0 : 1; if (m_lastContacts.contains(it->trackingId)) { @@ -323,7 +324,7 @@ void QTouchScreenData::dump() qDebug() << "touch event" << eventType; foreach (const QWindowSystemInterface::TouchPoint &tp, m_touchPoints) { const char *pointState; - switch (tp.state & Qt::TouchPointStateMask) { + switch (tp.state) { case Qt::TouchPointPressed: pointState = "pressed"; break; @@ -341,7 +342,7 @@ void QTouchScreenData::dump() break; } qDebug() << " " << tp.id << tp.area << pointState << tp.normalPosition - << tp.pressure << tp.isPrimary << tp.area.center(); + << tp.pressure << tp.flags << tp.area.center(); } } diff --git a/src/plugins/platforms/cocoa/qmultitouch_mac.mm b/src/plugins/platforms/cocoa/qmultitouch_mac.mm index 855bfc2a06..f680f022ae 100644 --- a/src/plugins/platforms/cocoa/qmultitouch_mac.mm +++ b/src/plugins/platforms/cocoa/qmultitouch_mac.mm @@ -73,7 +73,8 @@ QCocoaTouch::~QCocoaTouch() void QCocoaTouch::updateTouchData(NSTouch *nstouch, NSTouchPhase phase) { _touchPoint.state = toTouchPointState(phase); - _touchPoint.isPrimary = (_touchCount == 1); + if (_touchCount == 1) + _touchPoint.flags |= QTouchEvent::TouchPoint::Primary; // From the normalized position on the trackpad, calculate // where on screen the touchpoint should be according to the diff --git a/src/plugins/platforms/windows/qwindowsmousehandler.cpp b/src/plugins/platforms/windows/qwindowsmousehandler.cpp index 608230e6e0..79422be005 100644 --- a/src/plugins/platforms/windows/qwindowsmousehandler.cpp +++ b/src/plugins/platforms/windows/qwindowsmousehandler.cpp @@ -240,7 +240,8 @@ bool QWindowsMouseHandler::translateTouchEvent(QWindow *window, HWND, const TOUCHINPUT &winTouchInput = winTouchInputs[i]; QTouchPoint touchPoint; touchPoint.pressure = 1.0; - touchPoint.isPrimary = (winTouchInput.dwFlags & TOUCHEVENTF_PRIMARY) != 0; + if ((winTouchInput.dwFlags & TOUCHEVENTF_PRIMARY) != 0) + touchPoint.flags |= QTouchEvent::TouchPoint::Primary; touchPoint.id = m_touchInputIDToTouchPointID.value(winTouchInput.dwID, -1); if (touchPoint.id == -1) { touchPoint.id = m_touchInputIDToTouchPointID.size(); @@ -275,7 +276,7 @@ bool QWindowsMouseHandler::translateTouchEvent(QWindow *window, HWND, QWindowsContext::user32dll.closeTouchInputHandle((HANDLE) msg.lParam); // all touch points released, forget the ids we've seen, they may not be reused - if ((allStates & Qt::TouchPointStateMask) == Qt::TouchPointReleased) + if (allStates == Qt::TouchPointReleased) m_touchInputIDToTouchPointID.clear(); if (!m_touchDevice) { diff --git a/src/plugins/platforms/xcb/qxcbconnection_maemo.cpp b/src/plugins/platforms/xcb/qxcbconnection_maemo.cpp index 23421e59d2..39195b9aab 100644 --- a/src/plugins/platforms/xcb/qxcbconnection_maemo.cpp +++ b/src/plugins/platforms/xcb/qxcbconnection_maemo.cpp @@ -222,7 +222,8 @@ void QXcbConnection::handleGenericEvent(xcb_ge_event_t *event) for (int i = 0; i < m_xinputData->xiMaxContacts; ++i) { QWindowSystemInterface::TouchPoint tp; tp.id = i; - tp.isPrimary = (i == 0); + if (i == 0) + tp.flags |= QTouchEvent::TouchPoint::Primary; tp.state = Qt::TouchPointReleased; touchPoints << tp; } diff --git a/src/testlib/qtesttouch.h b/src/testlib/qtesttouch.h index 4ebbd37c27..57085adb8b 100644 --- a/src/testlib/qtesttouch.h +++ b/src/testlib/qtesttouch.h @@ -202,7 +202,7 @@ namespace QTest { QWindowSystemInterface::TouchPoint p; p.id = pt.id(); - p.isPrimary = pt.isPrimary(); + p.flags = pt.flags(); p.normalPosition = pt.screenRect().topLeft(); p.area = pt.screenRect(); p.pressure = pt.pressure(); diff --git a/src/widgets/kernel/qapplication.cpp b/src/widgets/kernel/qapplication.cpp index e6e8a8eab4..c94c48e28b 100644 --- a/src/widgets/kernel/qapplication.cpp +++ b/src/widgets/kernel/qapplication.cpp @@ -5316,8 +5316,6 @@ void QApplicationPrivate::translateRawTouchEvent(QWidget *window, StatesAndTouchPoints &maskAndPoints = widgetsNeedingEvents[widget.data()]; maskAndPoints.first |= touchPoint.state(); - if (touchPoint.isPrimary()) - maskAndPoints.first |= Qt::TouchPointPrimary; maskAndPoints.second.append(touchPoint); } @@ -5332,7 +5330,7 @@ void QApplicationPrivate::translateRawTouchEvent(QWidget *window, continue; QEvent::Type eventType; - switch (it.value().first & Qt::TouchPointStateMask) { + switch (it.value().first) { case Qt::TouchPointPressed: eventType = QEvent::TouchBegin; break; -- cgit v1.2.3 From 55b432b24cbdaa98e1d7aec46fdc2aa67f2bbf7f Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Mon, 12 Dec 2011 09:03:08 +0100 Subject: Update .gitignore for tests/auto/corelib/io/qresourceengine MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The test generates the runtime_resource.rcc data file at build time. Add this to .gitignore. Change-Id: Ief4057072b28499049147b86f166523b71afe269 Reviewed-by: João Abecasis --- tests/auto/corelib/io/qresourceengine/.gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/auto/corelib/io/qresourceengine/.gitignore b/tests/auto/corelib/io/qresourceengine/.gitignore index eb48d60239..c93206ff3b 100644 --- a/tests/auto/corelib/io/qresourceengine/.gitignore +++ b/tests/auto/corelib/io/qresourceengine/.gitignore @@ -1 +1,2 @@ tst_qresourceengine +runtime_resource.rcc -- cgit v1.2.3 From 734033e71d76e02f63a46c7d8f68b7cf404667fe Mon Sep 17 00:00:00 2001 From: Andrew den Exter Date: Wed, 24 Aug 2011 11:26:29 +1000 Subject: Make it easier to select words at the start of a line. QTextControl's word selection will only include a word if the cursor position is past the mid point of the word. This can make it difficult to select words near the edges of the screen on touch devices. For the TextEdit word selection mode select a word ignore the relative position within a word. Task-number: QT-5206 Task-number: QTBUG-20719 Change-Id: I77e71e01d8021d66ada785cf894ba876faccefdf Reviewed-by: Joona Petrell --- src/widgets/widgets/qwidgettextcontrol.cpp | 34 +++++++++++++++++++----------- 1 file changed, 22 insertions(+), 12 deletions(-) diff --git a/src/widgets/widgets/qwidgettextcontrol.cpp b/src/widgets/widgets/qwidgettextcontrol.cpp index a55e001fc4..c63dcf0318 100644 --- a/src/widgets/widgets/qwidgettextcontrol.cpp +++ b/src/widgets/widgets/qwidgettextcontrol.cpp @@ -691,20 +691,30 @@ void QWidgetTextControlPrivate::extendWordwiseSelection(int suggestedNewPosition if (!wordSelectionEnabled && (mouseXPosition < wordStartX || mouseXPosition > wordEndX)) return; - // keep the already selected word even when moving to the left - // (#39164) - if (suggestedNewPosition < selectedWordOnDoubleClick.position()) - cursor.setPosition(selectedWordOnDoubleClick.selectionEnd()); - else - cursor.setPosition(selectedWordOnDoubleClick.selectionStart()); + if (wordSelectionEnabled) { + if (suggestedNewPosition < selectedWordOnDoubleClick.position()) { + cursor.setPosition(selectedWordOnDoubleClick.selectionEnd()); + setCursorPosition(wordStartPos, QTextCursor::KeepAnchor); + } else { + cursor.setPosition(selectedWordOnDoubleClick.selectionStart()); + setCursorPosition(wordEndPos, QTextCursor::KeepAnchor); + } + } else { + // keep the already selected word even when moving to the left + // (#39164) + if (suggestedNewPosition < selectedWordOnDoubleClick.position()) + cursor.setPosition(selectedWordOnDoubleClick.selectionEnd()); + else + cursor.setPosition(selectedWordOnDoubleClick.selectionStart()); - const qreal differenceToStart = mouseXPosition - wordStartX; - const qreal differenceToEnd = wordEndX - mouseXPosition; + const qreal differenceToStart = mouseXPosition - wordStartX; + const qreal differenceToEnd = wordEndX - mouseXPosition; - if (differenceToStart < differenceToEnd) - setCursorPosition(wordStartPos, QTextCursor::KeepAnchor); - else - setCursorPosition(wordEndPos, QTextCursor::KeepAnchor); + if (differenceToStart < differenceToEnd) + setCursorPosition(wordStartPos, QTextCursor::KeepAnchor); + else + setCursorPosition(wordEndPos, QTextCursor::KeepAnchor); + } if (interactionFlags & Qt::TextSelectableByMouse) { #ifndef QT_NO_CLIPBOARD -- cgit v1.2.3 From 28165d54467179c7c16c38cea2a5f6e43367f385 Mon Sep 17 00:00:00 2001 From: Andrew den Exter Date: Thu, 4 Aug 2011 10:58:26 +1000 Subject: Move cursorDelegate with the mouse selection of read only text input. Task-number: QTBUG-20719 Task-number: QTBUG-19109 Reviewed-by: Martin Jones Change-Id: I2cec51eb5b01dc5750614edf5b39d6a3da661fc6 Reviewed-by: Joona Petrell --- src/widgets/widgets/qwidgettextcontrol.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/widgets/widgets/qwidgettextcontrol.cpp b/src/widgets/widgets/qwidgettextcontrol.cpp index c63dcf0318..2a6831eb93 100644 --- a/src/widgets/widgets/qwidgettextcontrol.cpp +++ b/src/widgets/widgets/qwidgettextcontrol.cpp @@ -1696,8 +1696,10 @@ void QWidgetTextControlPrivate::mouseMoveEvent(QEvent *e, Qt::MouseButton button #endif //QT_NO_IM } else { //emit q->visibilityRequest(QRectF(mousePos, QSizeF(1, 1))); - if (cursor.position() != oldCursorPos) + if (cursor.position() != oldCursorPos) { emit q->cursorPositionChanged(); + emit q->microFocusChanged(); + } } selectionChanged(true); repaintOldAndNewSelection(oldSelection); @@ -1744,8 +1746,10 @@ void QWidgetTextControlPrivate::mouseReleaseEvent(QEvent *e, Qt::MouseButton but repaintOldAndNewSelection(oldSelection); - if (cursor.position() != oldCursorPos) + if (cursor.position() != oldCursorPos) { emit q->cursorPositionChanged(); + emit q->microFocusChanged(); + } if (interactionFlags & Qt::LinksAccessibleByMouse) { if (!(button & Qt::LeftButton)) -- cgit v1.2.3 From 6e0e834e0398192a6da11d1e1bca6b74769fb75d Mon Sep 17 00:00:00 2001 From: Andrew den Exter Date: Mon, 5 Sep 2011 17:42:08 +1000 Subject: Fix TextInput test failures. emitCursorPositionChanged won't emit cursorPositionChanged if the cursor position hasn't changed but that doesn't mean the micro focus hasn't changed, so emit updateMicroFocus changed when cursorPositionChanged isn't. Task-number: QTBUG-21017 Task-number: QTBUG-21011 Task-number: QTBUG-20719 Change-Id: I86344621151dbeba0eebc67fbc786a8da76b7021 Reviewed-by: Joona Petrell --- src/widgets/widgets/qwidgetlinecontrol.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/widgets/widgets/qwidgetlinecontrol.cpp b/src/widgets/widgets/qwidgetlinecontrol.cpp index 027512b6ae..4143fb746a 100644 --- a/src/widgets/widgets/qwidgetlinecontrol.cpp +++ b/src/widgets/widgets/qwidgetlinecontrol.cpp @@ -694,6 +694,8 @@ bool QWidgetLineControl::finishChange(int validateFromState, bool update, bool e m_selDirty = false; emit selectionChanged(); } + if (m_cursor == m_lastCursorPos) + updateMicroFocus(); emitCursorPositionChanged(); return true; } -- cgit v1.2.3 From d6fb4463b815a0fa21b6f087dc17ca3a45ee56e7 Mon Sep 17 00:00:00 2001 From: Andrew den Exter Date: Mon, 25 Jul 2011 13:25:15 +1000 Subject: Delay masking the last character in Password echo mode. If QT_GUI_PASSWORD_ECHO_DELAY is defined in qplatformdefs.h with an integer value in milliseconds, QLineEdit and TextInput will display the last character entered unmasked for that delay period and then mask the character as normal. If QT_GUI_PASSWORD_ECHO_DELAY is not defined then the behaviour is unchanged. Task-number: QTBUG-17003 Task-number: QTBUG-20719 Reviewed-by: Martin Jones (cherry picked from commit f9e7aee2019d321edd655bfde7de43f20a106971) Change-Id: If69b384636e3775ad7898b8ffc441011c21abe98 Reviewed-by: Joona Petrell --- src/widgets/widgets/qwidgetlinecontrol.cpp | 54 ++++++++++++++++++++++++++++-- src/widgets/widgets/qwidgetlinecontrol_p.h | 23 ++++++++++++- 2 files changed, 74 insertions(+), 3 deletions(-) diff --git a/src/widgets/widgets/qwidgetlinecontrol.cpp b/src/widgets/widgets/qwidgetlinecontrol.cpp index 4143fb746a..f4a302c3b6 100644 --- a/src/widgets/widgets/qwidgetlinecontrol.cpp +++ b/src/widgets/widgets/qwidgetlinecontrol.cpp @@ -56,6 +56,22 @@ QT_BEGIN_NAMESPACE +#ifdef QT_GUI_PASSWORD_ECHO_DELAY +static const int qt_passwordEchoDelay = QT_GUI_PASSWORD_ECHO_DELAY; +#endif + +/*! + \macro QT_GUI_PASSWORD_ECHO_DELAY + + \internal + + Defines the amount of time in milliseconds the last entered character + should be displayed unmasked in the Password echo mode. + + If not defined in qplatformdefs.h there will be no delay in masking + password characters. +*/ + /*! \internal @@ -93,9 +109,25 @@ void QWidgetLineControl::updateDisplayText(bool forceUpdate) else str = m_text; - if (m_echoMode == QLineEdit::Password || (m_echoMode == QLineEdit::PasswordEchoOnEdit - && !m_passwordEchoEditing)) + if (m_echoMode == QLineEdit::Password) { str.fill(m_passwordCharacter); +#ifdef QT_GUI_PASSWORD_ECHO_DELAY + if (m_passwordEchoTimer != 0 && m_cursor > 0 && m_cursor <= m_text.length()) { + int cursor = m_cursor - 1; + QChar uc = m_text.at(cursor); + str[cursor] = uc; + if (cursor > 0 && uc.unicode() >= 0xdc00 && uc.unicode() < 0xe000) { + // second half of a surrogate, check if we have the first half as well, + // if yes restore both at once + uc = m_text.at(cursor - 1); + if (uc.unicode() >= 0xd800 && uc.unicode() < 0xdc00) + str[cursor - 1] = uc; + } + } +#endif + } else if (m_echoMode == QLineEdit::PasswordEchoOnEdit && !m_passwordEchoEditing) { + str.fill(m_passwordCharacter); + } // replace certain non-printable characters with spaces (to avoid // drawing boxes when using fonts that don't have glyphs for such @@ -354,6 +386,7 @@ void QWidgetLineControl::init(const QString &txt) */ void QWidgetLineControl::updatePasswordEchoEditing(bool editing) { + cancelPasswordEchoTimer(); m_passwordEchoEditing = editing; updateDisplayText(); } @@ -707,6 +740,7 @@ bool QWidgetLineControl::finishChange(int validateFromState, bool update, bool e */ void QWidgetLineControl::internalSetText(const QString &txt, int pos, bool edited) { + cancelPasswordEchoTimer(); internalDeselect(); emit resetInputContext(); QString oldText = m_text; @@ -759,6 +793,13 @@ void QWidgetLineControl::addCommand(const Command &cmd) */ void QWidgetLineControl::internalInsert(const QString &s) { +#ifdef QT_GUI_PASSWORD_ECHO_DELAY + if (m_echoMode == QLineEdit::Password) { + if (m_passwordEchoTimer != 0) + killTimer(m_passwordEchoTimer); + m_passwordEchoTimer = startTimer(qt_passwordEchoDelay); + } +#endif if (hasSelectedText()) addCommand(Command(SetSelection, m_cursor, 0, m_selstart, m_selend)); if (m_maskData) { @@ -796,6 +837,7 @@ void QWidgetLineControl::internalInsert(const QString &s) void QWidgetLineControl::internalDelete(bool wasBackspace) { if (m_cursor < (int) m_text.length()) { + cancelPasswordEchoTimer(); if (hasSelectedText()) addCommand(Command(SetSelection, m_cursor, 0, m_selstart, m_selend)); addCommand(Command((CommandType)((m_maskData ? 2 : 0) + (wasBackspace ? Remove : Delete)), @@ -822,6 +864,7 @@ void QWidgetLineControl::internalDelete(bool wasBackspace) void QWidgetLineControl::removeSelectedText() { if (m_selstart < m_selend && m_selend <= (int) m_text.length()) { + cancelPasswordEchoTimer(); separate(); int i ; addCommand(Command(SetSelection, m_cursor, 0, m_selstart, m_selend)); @@ -1220,6 +1263,7 @@ void QWidgetLineControl::internalUndo(int until) { if (!isUndoAvailable()) return; + cancelPasswordEchoTimer(); internalDeselect(); while (m_undoState && m_undoState > until) { Command& cmd = m_history[--m_undoState]; @@ -1424,6 +1468,12 @@ void QWidgetLineControl::timerEvent(QTimerEvent *event) } else if (event->timerId() == m_tripleClickTimer) { killTimer(m_tripleClickTimer); m_tripleClickTimer = 0; +#ifdef QT_GUI_PASSWORD_ECHO_DELAY + } else if (event->timerId() == m_passwordEchoTimer) { + killTimer(m_passwordEchoTimer); + m_passwordEchoTimer = 0; + updateDisplayText(); +#endif } } diff --git a/src/widgets/widgets/qwidgetlinecontrol_p.h b/src/widgets/widgets/qwidgetlinecontrol_p.h index e0c304279e..2e5276e586 100644 --- a/src/widgets/widgets/qwidgetlinecontrol_p.h +++ b/src/widgets/widgets/qwidgetlinecontrol_p.h @@ -68,6 +68,8 @@ #include "qplatformdefs.h" +#include "qplatformdefs.h" + QT_BEGIN_HEADER #ifdef DrawText @@ -252,6 +254,7 @@ public: uint echoMode() const { return m_echoMode; } void setEchoMode(uint mode) { + cancelPasswordEchoTimer(); m_echoMode = mode; m_passwordEchoEditing = false; updateDisplayText(); @@ -301,7 +304,13 @@ public: QString preeditAreaText() const { return m_textLayout.preeditAreaText(); } void updatePasswordEchoEditing(bool editing); - bool passwordEchoEditing() const { return m_passwordEchoEditing; } + bool passwordEchoEditing() const { +#ifdef QT_GUI_PASSWORD_ECHO_DELAY + if (m_passwordEchoTimer != 0) + return true; +#endif + return m_passwordEchoEditing ; + } QChar passwordCharacter() const { return m_passwordCharacter; } void setPasswordCharacter(const QChar &character) { m_passwordCharacter = character; updateDisplayText(); } @@ -474,6 +483,18 @@ private: bool m_passwordEchoEditing; QChar m_passwordCharacter; +#ifdef QT_GUI_PASSWORD_ECHO_DELAY + int m_passwordEchoTimer; +#endif + void cancelPasswordEchoTimer() + { +#ifdef QT_GUI_PASSWORD_ECHO_DELAY + if (m_passwordEchoTimer != 0) { + killTimer(m_passwordEchoTimer); + m_passwordEchoTimer = 0; + } +#endif + } int redoTextLayout() const; #if defined(Q_WS_MAC) -- cgit v1.2.3 From b830c9cededf995fab1b0919a81658ceaec8d422 Mon Sep 17 00:00:00 2001 From: Shane Kearns Date: Fri, 9 Dec 2011 11:49:50 +0000 Subject: Fix null pointer dereference in NTLM authentication If NTLM authentication is required for the URL with an empty path, then QNetworkAuthenticationCache::findClosestMatch(url.path()) returns 0. e.g. "http://10.1.2.3". Return a default constructed credential in this case. Change-Id: I84ad3b308ee3f74fbbac9ad0f11dbdc66047b50b Reviewed-by: Robin Burchell Reviewed-by: Martin Petersson --- src/network/access/qnetworkaccessauthenticationmanager.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/network/access/qnetworkaccessauthenticationmanager.cpp b/src/network/access/qnetworkaccessauthenticationmanager.cpp index 1b15cf9cdf..b618ccc945 100644 --- a/src/network/access/qnetworkaccessauthenticationmanager.cpp +++ b/src/network/access/qnetworkaccessauthenticationmanager.cpp @@ -283,9 +283,12 @@ QNetworkAccessAuthenticationManager::fetchCachedCredentials(const QUrl &url, QNetworkAuthenticationCache *auth = static_cast(authenticationCache.requestEntryNow(cacheKey)); - QNetworkAuthenticationCredential cred = *auth->findClosestMatch(url.path()); + QNetworkAuthenticationCredential *cred = auth->findClosestMatch(url.path()); + QNetworkAuthenticationCredential ret; + if (cred) + ret = *cred; authenticationCache.releaseEntry(cacheKey); - return cred; + return ret; } void QNetworkAccessAuthenticationManager::clearCache() -- cgit v1.2.3 From f74ff46c7a333d771b07d8ff38df10d9fd13bbcf Mon Sep 17 00:00:00 2001 From: Shane Kearns Date: Fri, 9 Dec 2011 12:06:04 +0000 Subject: Fix NTLM authentication with email address When using "user@dns-domain" for NTLM authentication, the whole string should be sent as the username, and the domain should be set to an empty string. The domain sent by the server is still reflected if the username does not contain an '@' character. Manually tested using MS IIS on a domain-joined PC. Task-number: QTBUG-19894 Task-number: ou1cimx1#949951 Change-Id: Ie1f81172e71cb7cce7b8c909062be990c24aea47 Reviewed-by: Martin Petersson --- src/network/kernel/qauthenticator.cpp | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/src/network/kernel/qauthenticator.cpp b/src/network/kernel/qauthenticator.cpp index 8e64968346..b0d8b07105 100644 --- a/src/network/kernel/qauthenticator.cpp +++ b/src/network/kernel/qauthenticator.cpp @@ -220,12 +220,6 @@ void QAuthenticator::setUser(const QString &user) d->userDomain = user.left(separatorPosn); d->extractedUser = user.mid(separatorPosn + 1); d->user = user; - } else if((separatorPosn = user.indexOf(QLatin1String("@"))) != -1) { - //domain name is present - d->realm.clear(); - d->userDomain = user.mid(separatorPosn + 1); - d->extractedUser = user.left(separatorPosn); - d->user = user; } else { d->extractedUser = user; d->user = user; @@ -1381,8 +1375,9 @@ static QByteArray qNtlmPhase3(QAuthenticatorPrivate *ctx, const QByteArray& phas int offset = QNtlmPhase3BlockBase::Size; Q_ASSERT(QNtlmPhase3BlockBase::Size == sizeof(QNtlmPhase3BlockBase)); - - if(ctx->userDomain.isEmpty()) { + + // for kerberos style user@domain logins, NTLM domain string should be left empty + if (ctx->userDomain.isEmpty() && !ctx->extractedUser.contains(QLatin1Char('@'))) { offset = qEncodeNtlmString(pb.domain, offset, ch.targetNameStr, unicode); pb.domainStr = ch.targetNameStr; } else { -- cgit v1.2.3 From c560836263b06d2ab958e531c51e08f96fbbaef2 Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Mon, 12 Dec 2011 14:48:21 +0100 Subject: Silence -Woverloaded-virtual warnings in QBlitterPaintEngine QPaintEngineEx declares several virtual clip() overloads, but clip() with no argument does not reimplement any of these. Rename it to clipData() (to make the name of the return value more closely). ../../include/QtGui/5.0.0/QtGui/private/../../../../../src/gui/painting/qpaintengine_blitter_p.h:104:29: warning: 'QBlitterPaintEngine::clip' hides overloaded virtual function [-Woverloaded-virtual] inline const QClipData *clip(){return raster()->d_func()->clip();} ^ ../../include/QtGui/5.0.0/QtGui/private/../../../../../src/gui/painting/qpaintengineex_p.h:157:18: note: hidden overloaded virtual function 'QPaintEngineEx::clip' declared here virtual void clip(const QPainterPath &path, Qt::ClipOperation op); ^ Change-Id: Ifd7c494e2c999d743216cfb4c27a9c3ccf66f2a9 Reviewed-by: Gunnar Sletta --- src/gui/painting/qpaintengine_blitter.cpp | 8 ++++---- src/gui/painting/qpaintengine_blitter_p.h | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/gui/painting/qpaintengine_blitter.cpp b/src/gui/painting/qpaintengine_blitter.cpp index 1ed6dea161..4f9861da44 100644 --- a/src/gui/painting/qpaintengine_blitter.cpp +++ b/src/gui/painting/qpaintengine_blitter.cpp @@ -222,7 +222,7 @@ public: if (hasXForm) { targetRect = q->state()->matrix.mapRect(rect); } - const QClipData *clipData = q->clip(); + const QClipData *clipData = q->clipData();; if (clipData) { if (clipData->hasRectClip) { unlock(); @@ -269,7 +269,7 @@ public: void updateClip() { Q_Q(QBlitterPaintEngine); - const QClipData *clip = q->clip(); + const QClipData *clip = q->clipData(); bool complex = clip && !(clip->hasRectClip || clip->hasRegionClip); capabillities->updateState(STATE_CLIP_COMPLEX, complex); } @@ -388,7 +388,7 @@ void QBlitterPaintEngine::fillRect(const QRectF &rect, const QBrush &brush) blitWidth = transformedRect.right() -x; if (y + blitHeight > transformedRect.bottom()) blitHeight = transformedRect.bottom() - y; - const QClipData *clipData = clip(); + const QClipData *clipData = this->clipData(); if (clipData->hasRectClip) { QRect targetRect = QRect(x,y,blitWidth,blitHeight).intersected(clipData->clipRect); if (targetRect.isValid()) { @@ -573,7 +573,7 @@ void QBlitterPaintEngine::drawPixmap(const QRectF &r, const QPixmap &pm, const Q if (d->hasXForm) { targetRect = state()->matrix.mapRect(r); } - const QClipData *clipData = clip(); + const QClipData *clipData = this->clipData(); if (clipData) { if (clipData->hasRectClip) { d->clipAndDrawPixmap(clipData->clipRect,targetRect,pm,sr); diff --git a/src/gui/painting/qpaintengine_blitter_p.h b/src/gui/painting/qpaintengine_blitter_p.h index 1acc647fbe..13a059705c 100644 --- a/src/gui/painting/qpaintengine_blitter_p.h +++ b/src/gui/painting/qpaintengine_blitter_p.h @@ -101,7 +101,7 @@ public: inline QPainterState *state() { return raster()->state(); } inline const QPainterState *state() const { const QPainterState *state = raster()->state(); return state;} - inline const QClipData *clip(){return raster()->d_func()->clip();} + inline const QClipData *clipData(){return raster()->d_func()->clip();} private: QRasterPaintEngine *raster() const; -- cgit v1.2.3 From 7ac4bf8a4005e7a45dff5582f838b489abb79271 Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Mon, 12 Dec 2011 15:00:30 +0100 Subject: Silence -Woverloaded-virtual warnings in QRasterPaintEngine The QRasterPaintEngine::updateState() is not a reimplementation of QPaintEngineEx::updateState(const QPaintEngineState &state). Rename the updateState() function to updateRasterState(), and ensureState() to ensureRasterState(). These names were chosen to match the class name QRasterPaintEngineState on which these functions operate. ../../include/QtGui/5.0.0/QtGui/private/../../../../../src/gui/painting/qpaintengine_raster_p.h:271:10: warning: 'QRasterPaintEngine::updateState' hides overloaded virtual function [-Woverloaded-virtual] void updateState(); ^ ../../include/QtGui/5.0.0/QtGui/private/../../../../../src/gui/painting/qpaintengineex_p.h:202:18: note: hidden overloaded virtual function 'QPaintEngineEx::updateState' declared here virtual void updateState(const QPaintEngineState &state); ^ Change-Id: Ie9ff0230019b383d53757029c6b2194dfc6a2664 Reviewed-by: Gunnar Sletta --- src/gui/painting/qpaintengine_raster.cpp | 20 ++++++++++---------- src/gui/painting/qpaintengine_raster_p.h | 6 +++--- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/src/gui/painting/qpaintengine_raster.cpp b/src/gui/painting/qpaintengine_raster.cpp index d5449a7eb5..89a8f8a032 100644 --- a/src/gui/painting/qpaintengine_raster.cpp +++ b/src/gui/painting/qpaintengine_raster.cpp @@ -733,7 +733,7 @@ void QRasterPaintEngine::updatePen(const QPen &pen) s->stroker = 0; } - ensureState(); // needed because of tx_noshear... + ensureRasterState(); // needed because of tx_noshear... s->flags.fast_pen = pen_style > Qt::NoPen && s->penData.blend && ((pen.isCosmetic() && penWidth <= 1) @@ -801,7 +801,7 @@ void QRasterPaintEngine::updateOutlineMapper() d->outlineMapper->setMatrix(state()->matrix); } -void QRasterPaintEngine::updateState() +void QRasterPaintEngine::updateRasterState() { QRasterPaintEngineState *s = state(); @@ -1434,7 +1434,7 @@ void QRasterPaintEngine::drawRects(const QRect *rects, int rectCount) qDebug(" - QRasterPaintEngine::drawRect(), rectCount=%d", rectCount); #endif Q_D(QRasterPaintEngine); - ensureState(); + ensureRasterState(); QRasterPaintEngineState *s = state(); // Fill @@ -1489,7 +1489,7 @@ void QRasterPaintEngine::drawRects(const QRectF *rects, int rectCount) #endif #ifdef QT_FAST_SPANS Q_D(QRasterPaintEngine); - ensureState(); + ensureRasterState(); QRasterPaintEngineState *s = state(); @@ -1645,7 +1645,7 @@ void QRasterPaintEngine::fill(const QVectorPath &path, const QBrush &brush) fillRect_normalized(toNormalizedFillRect(QRectF(tl, br)), &s->brushData, d); return; } - ensureState(); + ensureRasterState(); if (s->flags.tx_noshear) { d->initializeRasterizer(&s->brushData); // ### Is normalizing really necessary here? @@ -1702,7 +1702,7 @@ void QRasterPaintEngine::fillRect(const QRectF &r, QSpanData *data) return; } } - ensureState(); + ensureRasterState(); if (s->flags.tx_noshear) { d->initializeRasterizer(data); QRectF nr = r.normalized(); @@ -2330,7 +2330,7 @@ void QRasterPaintEngine::drawImage(const QRectF &r, const QImage &img, const QRe } #ifdef QT_FAST_SPANS - ensureState(); + ensureRasterState(); if (s->flags.tx_noshear || s->matrix.type() == QTransform::TxScale) { d->initializeRasterizer(&d->image_filler_xform); d->rasterizer->setAntialiased(s->flags.antialiased); @@ -2425,7 +2425,7 @@ void QRasterPaintEngine::drawTiledPixmap(const QRectF &r, const QPixmap &pixmap, d->image_filler_xform.setupMatrix(copy, s->flags.bilinear); #ifdef QT_FAST_SPANS - ensureState(); + ensureRasterState(); if (s->flags.tx_noshear || s->matrix.type() == QTransform::TxScale) { d->initializeRasterizer(&d->image_filler_xform); d->rasterizer->setAntialiased(s->flags.antialiased); @@ -2884,7 +2884,7 @@ QRasterPaintEnginePrivate::getPenFunc(const QRectF &rect, void QRasterPaintEngine::drawStaticTextItem(QStaticTextItem *textItem) { ensurePen(); - ensureState(); + ensureRasterState(); QFontEngine *fontEngine = textItem->fontEngine(); if (shouldDrawCachedGlyphs(fontEngine->fontDef.pixelSize, state()->matrix)) { @@ -2911,7 +2911,7 @@ void QRasterPaintEngine::drawTextItem(const QPointF &p, const QTextItem &textIte #endif ensurePen(); - ensureState(); + ensureRasterState(); if (!supportsTransformations(ti.fontEngine)) { diff --git a/src/gui/painting/qpaintengine_raster_p.h b/src/gui/painting/qpaintengine_raster_p.h index d9cc428337..a87f1d4c35 100644 --- a/src/gui/painting/qpaintengine_raster_p.h +++ b/src/gui/painting/qpaintengine_raster_p.h @@ -268,10 +268,10 @@ private: void updateOutlineMapper(); inline void ensureOutlineMapper(); - void updateState(); - inline void ensureState() { + void updateRasterState(); + inline void ensureRasterState() { if (state()->dirty) - updateState(); + updateRasterState(); } }; -- cgit v1.2.3 From 5b7a1ca85bdba569acbd5b647f66f2d507f513ae Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Mon, 12 Dec 2011 14:38:45 +0100 Subject: Windows: Fix clipboard test. Return the QMimeData set on the Ole object if we own it. Change-Id: I08de0968e04a7356fed1255feb495f7b85e7a6f8 Reviewed-by: Friedemann Kleint --- src/plugins/platforms/windows/qwindowsclipboard.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/plugins/platforms/windows/qwindowsclipboard.cpp b/src/plugins/platforms/windows/qwindowsclipboard.cpp index bc70307015..80520213c3 100644 --- a/src/plugins/platforms/windows/qwindowsclipboard.cpp +++ b/src/plugins/platforms/windows/qwindowsclipboard.cpp @@ -311,6 +311,8 @@ QMimeData *QWindowsClipboard::mimeData(QClipboard::Mode mode) qDebug() << __FUNCTION__ << mode; if (mode != QClipboard::Clipboard) return 0; + if (ownsClipboard()) + return m_data->mimeData(); return &m_retrievalData; } @@ -329,7 +331,8 @@ void QWindowsClipboard::setMimeData(QMimeData *mimeData, QClipboard::Mode mode) const HRESULT src = OleSetClipboard(m_data); if (src != S_OK) { - qErrnoWarning("OleSetClipboard: Failed to set data on clipboard: %s", + qErrnoWarning("OleSetClipboard: Failed to set mime data (%s) on clipboard: %s", + qPrintable(mimeData->formats().join(QStringLiteral(", "))), QWindowsContext::comErrorString(src).constData()); releaseIData(); return; -- cgit v1.2.3 From c9d6def002fde1a77ef3390aa7cb8a8f0338862a Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Mon, 12 Dec 2011 15:06:23 +0100 Subject: Windows-DnD: Fix cursors. Re-add pixmaps that were removed from QGuiApplication. Change-Id: I9936da115e494cf816116159419d40840176afd5 Reviewed-by: Friedemann Kleint --- src/plugins/platforms/windows/qwindowsdrag.cpp | 188 +++++++++++++++++++++++-- src/plugins/platforms/windows/qwindowsdrag.h | 7 + 2 files changed, 187 insertions(+), 8 deletions(-) diff --git a/src/plugins/platforms/windows/qwindowsdrag.cpp b/src/plugins/platforms/windows/qwindowsdrag.cpp index 56f3a6d906..35b2618850 100644 --- a/src/plugins/platforms/windows/qwindowsdrag.cpp +++ b/src/plugins/platforms/windows/qwindowsdrag.cpp @@ -61,6 +61,146 @@ QT_BEGIN_NAMESPACE +// These pixmaps approximate the images in the Windows User Interface Guidelines. +// XPM + +static const char * const moveDragCursorXpmC[] = { +"11 20 3 1", +". c None", +"a c #FFFFFF", +"X c #000000", // X11 cursor is traditionally black +"aa.........", +"aXa........", +"aXXa.......", +"aXXXa......", +"aXXXXa.....", +"aXXXXXa....", +"aXXXXXXa...", +"aXXXXXXXa..", +"aXXXXXXXXa.", +"aXXXXXXXXXa", +"aXXXXXXaaaa", +"aXXXaXXa...", +"aXXaaXXa...", +"aXa..aXXa..", +"aa...aXXa..", +"a.....aXXa.", +"......aXXa.", +".......aXXa", +".......aXXa", +"........aa."}; + + +/* XPM */ +static const char * const copyDragCursorXpmC[] = { +"24 30 3 1", +". c None", +"a c #000000", +"X c #FFFFFF", +"XX......................", +"XaX.....................", +"XaaX....................", +"XaaaX...................", +"XaaaaX..................", +"XaaaaaX.................", +"XaaaaaaX................", +"XaaaaaaaX...............", +"XaaaaaaaaX..............", +"XaaaaaaaaaX.............", +"XaaaaaaXXXX.............", +"XaaaXaaX................", +"XaaXXaaX................", +"XaX..XaaX...............", +"XX...XaaX...............", +"X.....XaaX..............", +"......XaaX..............", +".......XaaX.............", +".......XaaX.............", +"........XX...aaaaaaaaaaa", +".............aXXXXXXXXXa", +".............aXXXXXXXXXa", +".............aXXXXaXXXXa", +".............aXXXXaXXXXa", +".............aXXaaaaaXXa", +".............aXXXXaXXXXa", +".............aXXXXaXXXXa", +".............aXXXXXXXXXa", +".............aXXXXXXXXXa", +".............aaaaaaaaaaa"}; + +/* XPM */ +static const char * const linkDragCursorXpmC[] = { +"24 30 3 1", +". c None", +"a c #000000", +"X c #FFFFFF", +"XX......................", +"XaX.....................", +"XaaX....................", +"XaaaX...................", +"XaaaaX..................", +"XaaaaaX.................", +"XaaaaaaX................", +"XaaaaaaaX...............", +"XaaaaaaaaX..............", +"XaaaaaaaaaX.............", +"XaaaaaaXXXX.............", +"XaaaXaaX................", +"XaaXXaaX................", +"XaX..XaaX...............", +"XX...XaaX...............", +"X.....XaaX..............", +"......XaaX..............", +".......XaaX.............", +".......XaaX.............", +"........XX...aaaaaaaaaaa", +".............aXXXXXXXXXa", +".............aXXXaaaaXXa", +".............aXXXXaaaXXa", +".............aXXXaaaaXXa", +".............aXXaaaXaXXa", +".............aXXaaXXXXXa", +".............aXXaXXXXXXa", +".............aXXXaXXXXXa", +".............aXXXXXXXXXa", +".............aaaaaaaaaaa"}; + +static const char * const ignoreDragCursorXpmC[] = { +"24 30 3 1", +". c None", +"a c #000000", +"X c #FFFFFF", +"aa......................", +"aXa.....................", +"aXXa....................", +"aXXXa...................", +"aXXXXa..................", +"aXXXXXa.................", +"aXXXXXXa................", +"aXXXXXXXa...............", +"aXXXXXXXXa..............", +"aXXXXXXXXXa.............", +"aXXXXXXaaaa.............", +"aXXXaXXa................", +"aXXaaXXa................", +"aXa..aXXa...............", +"aa...aXXa...............", +"a.....aXXa..............", +"......aXXa.....XXXX.....", +".......aXXa..XXaaaaXX...", +".......aXXa.XaaaaaaaaX..", +"........aa.XaaaXXXXaaaX.", +"...........XaaaaX..XaaX.", +"..........XaaXaaaX..XaaX", +"..........XaaXXaaaX.XaaX", +"..........XaaX.XaaaXXaaX", +"..........XaaX..XaaaXaaX", +"...........XaaX..XaaaaX.", +"...........XaaaXXXXaaaX.", +"............XaaaaaaaaX..", +".............XXaaaaXX...", +"...............XXXX....."}; + /*! \class QWindowsDropMimeData \brief Special mime data class for data retrieval from Drag operations. @@ -139,7 +279,7 @@ static inline Qt::KeyboardModifiers toQtKeyboardModifiers(DWORD keyState) class QWindowsOleDropSource : public IDropSource { public: - QWindowsOleDropSource(); + explicit QWindowsOleDropSource(QWindowsDrag *drag); virtual ~QWindowsOleDropSource(); void createCursors(); @@ -158,6 +298,7 @@ private: inline void clearCursors(); + QWindowsDrag *m_drag; Qt::MouseButtons m_currentButtons; Qt::DropAction m_currentAction; ActionCursorMap m_cursors; @@ -165,8 +306,8 @@ private: ULONG m_refs; }; -QWindowsOleDropSource::QWindowsOleDropSource() : - m_currentButtons(Qt::NoButton), m_currentAction(Qt::IgnoreAction), +QWindowsOleDropSource::QWindowsOleDropSource(QWindowsDrag *drag) : + m_drag(drag), m_currentButtons(Qt::NoButton), m_currentAction(Qt::IgnoreAction), m_refs(1) { if (QWindowsContext::verboseOLE) @@ -196,7 +337,14 @@ void QWindowsOleDropSource::createCursors() actions << Qt::IgnoreAction; const QPoint hotSpot = manager->object->hotSpot(); for (int cnum = 0; cnum < actions.size(); ++cnum) { - const QPixmap cpm = manager->dragCursor(actions.at(cnum)); + const Qt::DropAction action = actions.at(cnum); + QPixmap cpm = manager->dragCursor(action); + if (cpm.isNull()) + cpm = m_drag->defaultCursor(action); + if (cpm.isNull()) { + qWarning("%s: Unable to obtain drag cursor for %d.", __FUNCTION__, action); + continue; + } int w = cpm.width(); int h = cpm.height(); @@ -210,13 +358,13 @@ void QWindowsOleDropSource::createCursors() h = y2 - y1 + 1; } - const QRect srcRect = pixmap.rect(); - const QPoint pmDest = QPoint(qMax(0, -hotSpot.x()), qMax(0, -hotSpot.y())); const QPoint newHotSpot = hotSpot; QPixmap newCursor(w, h); if (hasPixmap) { newCursor.fill(QColor(0, 0, 0, 0)); QPainter p(&newCursor); + const QRect srcRect = pixmap.rect(); + const QPoint pmDest = QPoint(qMax(0, -hotSpot.x()), qMax(0, -hotSpot.y())); p.drawPixmap(pmDest, pixmap, srcRect); p.drawPixmap(qMax(0,newHotSpot.x()),qMax(0,newHotSpot.y()),cpm); } else { @@ -227,7 +375,7 @@ void QWindowsOleDropSource::createCursors() const int hotY = hasPixmap ? qMax(0,newHotSpot.y()) : 0; if (const HCURSOR sysCursor = QWindowsCursor::createPixmapCursor(newCursor, hotX, hotY)) - m_cursors.insert(actions.at(cnum), sysCursor); + m_cursors.insert(action, sysCursor); } if (QWindowsContext::verboseOLE) qDebug("%s %d cursors", __FUNCTION__, m_cursors.size()); @@ -638,6 +786,30 @@ QWindowsDrag::~QWindowsDrag() { } +QPixmap QWindowsDrag::defaultCursor(Qt::DropAction action) const +{ + switch (action) { + case Qt::CopyAction: + if (m_copyDragCursor.isNull()) + m_copyDragCursor = QPixmap(copyDragCursorXpmC); + return m_copyDragCursor; + case Qt::TargetMoveAction: + case Qt::MoveAction: + if (m_moveDragCursor.isNull()) + m_moveDragCursor = QPixmap(moveDragCursorXpmC); + return m_moveDragCursor; + case Qt::LinkAction: + if (m_linkDragCursor.isNull()) + m_linkDragCursor = QPixmap(linkDragCursorXpmC); + return m_linkDragCursor; + default: + break; + } + if (m_ignoreDragCursor.isNull()) + m_ignoreDragCursor = QPixmap(ignoreDragCursorXpmC); + return m_ignoreDragCursor; +} + void QWindowsDrag::startDrag() { // TODO: Accessibility handling? @@ -646,7 +818,7 @@ void QWindowsDrag::startDrag() m_dragBeingCancelled = false; DWORD resultEffect; - QWindowsOleDropSource *windowDropSource = new QWindowsOleDropSource(); + QWindowsOleDropSource *windowDropSource = new QWindowsOleDropSource(this); windowDropSource->createCursors(); QWindowsOleDataObject *dropDataObject = new QWindowsOleDataObject(dropData); const Qt::DropActions possibleActions = dragManager->possible_actions; diff --git a/src/plugins/platforms/windows/qwindowsdrag.h b/src/plugins/platforms/windows/qwindowsdrag.h index 621b769d28..7281eeabfc 100644 --- a/src/plugins/platforms/windows/qwindowsdrag.h +++ b/src/plugins/platforms/windows/qwindowsdrag.h @@ -105,10 +105,17 @@ public: bool dragBeingCancelled() const { return m_dragBeingCancelled; } + QPixmap defaultCursor(Qt::DropAction action) const; + private: QWindowsDropMimeData m_dropData; IDataObject *m_dropDataObject; bool m_dragBeingCancelled; + + mutable QPixmap m_copyDragCursor; + mutable QPixmap m_moveDragCursor; + mutable QPixmap m_linkDragCursor; + mutable QPixmap m_ignoreDragCursor; }; QT_END_NAMESPACE -- cgit v1.2.3 From e7a6906da6a462ec1d830e3847eef6c9890f6843 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o=20Abecasis?= Date: Mon, 12 Dec 2011 13:37:51 +0100 Subject: Remove template class QRingBuffer MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit .. as it is declared and defined in .cpp file but never used. Change-Id: I7b72daf62712b4ec25717afbe2b7f0792ffa2a85 Reviewed-by: Samuel Rødal --- src/gui/opengl/qtriangulator.cpp | 72 ---------------------------------------- 1 file changed, 72 deletions(-) diff --git a/src/gui/opengl/qtriangulator.cpp b/src/gui/opengl/qtriangulator.cpp index 67c2a6494e..ae7eb21e72 100644 --- a/src/gui/opengl/qtriangulator.cpp +++ b/src/gui/opengl/qtriangulator.cpp @@ -720,78 +720,6 @@ inline void QInt64Set::clear() m_count = 0; } -//============================================================================// -// QRingBuffer // -//============================================================================// - -// T must be POD. -template -class QRingBuffer -{ -public: - inline QRingBuffer() : m_array(0), m_head(0), m_size(0), m_capacity(0) { } - inline ~QRingBuffer() {if (m_array) delete[] m_array;} - bool reallocate(int capacity); - inline const T &head() const {Q_ASSERT(m_size > 0); return m_array[m_head];} - inline const T &dequeue(); - inline void enqueue(const T &x); - inline bool isEmpty() const {return m_size == 0;} -private: - T *m_array; - int m_head; - int m_size; - int m_capacity; -}; - -template -bool QRingBuffer::reallocate(int capacity) -{ - T *oldArray = m_array; - m_array = new T[capacity]; - if (m_array) { - if (oldArray) { - if (m_head + m_size > m_capacity) { - memcpy(m_array, oldArray + m_head, (m_capacity - m_head) * sizeof(T)); - memcpy(m_array + (m_capacity - m_head), oldArray, (m_head + m_size - m_capacity) * sizeof(T)); - } else { - memcpy(m_array, oldArray + m_head, m_size * sizeof(T)); - } - delete[] oldArray; - } - m_capacity = capacity; - m_head = 0; - return true; - } else { - m_array = oldArray; - return false; - } -} - -template -inline const T &QRingBuffer::dequeue() -{ - Q_ASSERT(m_size > 0); - Q_ASSERT(m_array); - Q_ASSERT(m_capacity >= m_size); - int index = m_head; - if (++m_head >= m_capacity) - m_head -= m_capacity; - --m_size; - return m_array[index]; -} - -template -inline void QRingBuffer::enqueue(const T &x) -{ - if (m_size == m_capacity) - reallocate(qMax(2 * m_capacity, 64)); - int index = m_head + m_size; - if (index >= m_capacity) - index -= m_capacity; - m_array[index] = x; - ++m_size; -} - //============================================================================// // QTriangulator // //============================================================================// -- cgit v1.2.3 From 3ac957690c09992269e02d0ec7527cb406a0db23 Mon Sep 17 00:00:00 2001 From: Richard Moore Date: Sun, 11 Dec 2011 20:17:12 +0000 Subject: Remove unused member variables from private class. These aren't used, and so they shouldn't be there. Change-Id: Id4a08d90836c45c140d811b8eca07756e14c56e5 Reviewed-by: Shane Kearns --- src/network/ssl/qsslsocket_openssl_p.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/network/ssl/qsslsocket_openssl_p.h b/src/network/ssl/qsslsocket_openssl_p.h index ef00b0998d..371049c177 100644 --- a/src/network/ssl/qsslsocket_openssl_p.h +++ b/src/network/ssl/qsslsocket_openssl_p.h @@ -105,8 +105,6 @@ public: BIO *readBio; BIO *writeBio; SSL_SESSION *session; - X509_STORE *certificateStore; - X509_STORE_CTX *certificateStoreCtx; QList > errorList; // Platform specific functions -- cgit v1.2.3 From 6802e3165ea0d7c7bb5b4249ef1bb82f85febf86 Mon Sep 17 00:00:00 2001 From: Robin Burchell Date: Fri, 9 Dec 2011 17:21:12 +0100 Subject: Add QVarLengthArray::length(). MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This also adds a unit test for length()/count()/size(), since there wasn't one testing it explicitly. Change-Id: Ifb7f113aa97beef5f76e5fb246eb38495344b0ad Reviewed-by: João Abecasis Reviewed-by: Marco Schmidt Reviewed-by: Olivier Goffart Reviewed-by: Bradley T. Hughes --- src/corelib/tools/qvarlengtharray.h | 1 + src/corelib/tools/qvarlengtharray.qdoc | 7 +++ .../tools/qvarlengtharray/tst_qvarlengtharray.cpp | 62 ++++++++++++++++++++++ 3 files changed, 70 insertions(+) diff --git a/src/corelib/tools/qvarlengtharray.h b/src/corelib/tools/qvarlengtharray.h index 6da6cf524d..fd8c26c128 100644 --- a/src/corelib/tools/qvarlengtharray.h +++ b/src/corelib/tools/qvarlengtharray.h @@ -95,6 +95,7 @@ public: } inline int size() const { return s; } inline int count() const { return s; } + inline int length() const { return s; } inline bool isEmpty() const { return (s == 0); } inline void resize(int size); inline void clear() { resize(0); } diff --git a/src/corelib/tools/qvarlengtharray.qdoc b/src/corelib/tools/qvarlengtharray.qdoc index b1d7a1a5b1..a932e9fbcb 100644 --- a/src/corelib/tools/qvarlengtharray.qdoc +++ b/src/corelib/tools/qvarlengtharray.qdoc @@ -118,6 +118,13 @@ \sa isEmpty(), resize() */ +/*! \fn int QVarLengthArray::length() const + + Same as size(). + + \sa isEmpty(), resize() +*/ + /*! \fn bool QVarLengthArray::isEmpty() const Returns true if the array has size 0; otherwise returns false. diff --git a/tests/auto/corelib/tools/qvarlengtharray/tst_qvarlengtharray.cpp b/tests/auto/corelib/tools/qvarlengtharray/tst_qvarlengtharray.cpp index 0bdc49a15a..54bab55360 100644 --- a/tests/auto/corelib/tools/qvarlengtharray/tst_qvarlengtharray.cpp +++ b/tests/auto/corelib/tools/qvarlengtharray/tst_qvarlengtharray.cpp @@ -55,6 +55,7 @@ private slots: void appendCausingRealloc(); void resize(); void realloc(); + void count(); }; int fooCtor = 0; @@ -593,5 +594,66 @@ void tst_QVarLengthArray::realloc() QVERIFY(reallocTestProceed); } +void tst_QVarLengthArray::count() +{ + // tests size(), count() and length(), since they're the same thing + { + const QVarLengthArray list; + QCOMPARE(list.length(), 0); + QCOMPARE(list.count(), 0); + QCOMPARE(list.size(), 0); + } + + { + QVarLengthArray list; + list.append(0); + QCOMPARE(list.length(), 1); + QCOMPARE(list.count(), 1); + QCOMPARE(list.size(), 1); + } + + { + QVarLengthArray list; + list.append(0); + list.append(1); + QCOMPARE(list.length(), 2); + QCOMPARE(list.count(), 2); + QCOMPARE(list.size(), 2); + } + + { + QVarLengthArray list; + list.append(0); + list.append(0); + list.append(0); + QCOMPARE(list.length(), 3); + QCOMPARE(list.count(), 3); + QCOMPARE(list.size(), 3); + } + + // test removals too + { + QVarLengthArray list; + list.append(0); + list.append(0); + list.append(0); + QCOMPARE(list.length(), 3); + QCOMPARE(list.count(), 3); + QCOMPARE(list.size(), 3); + list.removeLast(); + QCOMPARE(list.length(), 2); + QCOMPARE(list.count(), 2); + QCOMPARE(list.size(), 2); + list.removeLast(); + QCOMPARE(list.length(), 1); + QCOMPARE(list.count(), 1); + QCOMPARE(list.size(), 1); + list.removeLast(); + QCOMPARE(list.length(), 0); + QCOMPARE(list.count(), 0); + QCOMPARE(list.size(), 0); + } +} + QTEST_APPLESS_MAIN(tst_QVarLengthArray) #include "tst_qvarlengtharray.moc" -- cgit v1.2.3 From 82b73ab03a7f2f519ad8efd176a8f3be7a9b9f5b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Morten=20Johan=20S=C3=B8rvig?= Date: Mon, 12 Dec 2011 09:52:40 +0100 Subject: Cocoa: Add autorelease pools. A couple of cases where we call Cococa APIs without having an autorelease pool in place surfaced after removing the global autorelease pool in 1a218a7. (This happens when when Qt API is called before app.exec() has started the Cocoa event loop.) Add local autorelease pools to prevent memory leaks. Change-Id: I0c4be3ff102aaff4539235857f95ab29fdbc9d70 Reviewed-by: Richard Moe Gustavsen --- src/platformsupport/fontdatabases/mac/qcoretextfontdatabase.mm | 4 ++-- src/plugins/platforms/cocoa/qcocoabackingstore.mm | 2 ++ src/plugins/platforms/cocoa/qcocoaintegration.mm | 2 ++ src/plugins/platforms/cocoa/qcocoawindow.mm | 5 +++++ 4 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase.mm b/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase.mm index 6c3e403c51..9dbc60f6c7 100644 --- a/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase.mm +++ b/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase.mm @@ -159,6 +159,8 @@ static QString familyNameFromPostScriptName(QHash &psNameToFam void QCoreTextFontDatabase::populateFontDatabase() { + NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; + QCFType collection = CTFontCollectionCreateFromAvailableFonts(0); if (! collection) return; @@ -243,8 +245,6 @@ void QCoreTextFontDatabase::populateFontDatabase() NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; NSArray *languages = [defaults stringArrayForKey: @"AppleLanguages"]; - NSAutoreleasePool *pool = [NSAutoreleasePool new]; - NSDictionary *fallbackDict = [NSDictionary dictionaryWithContentsOfFile: @"/System/Library/Frameworks/ApplicationServices.framework/Frameworks/CoreText.framework/Resources/DefaultFontFallbacks.plist"]; for (NSString *style in [fallbackDict allKeys]) { diff --git a/src/plugins/platforms/cocoa/qcocoabackingstore.mm b/src/plugins/platforms/cocoa/qcocoabackingstore.mm index 0cde19644e..d278392409 100644 --- a/src/plugins/platforms/cocoa/qcocoabackingstore.mm +++ b/src/plugins/platforms/cocoa/qcocoabackingstore.mm @@ -40,6 +40,7 @@ ****************************************************************************/ #include "qcocoabackingstore.h" +#include "qcocoaautoreleasepool.h" #include #include @@ -80,6 +81,7 @@ void QCocoaBackingStore::flush(QWindow *widget, const QRegion ®ion, const QPo { Q_UNUSED(widget); Q_UNUSED(offset); + QCocoaAutoReleasePool pool; QRect geo = region.boundingRect(); diff --git a/src/plugins/platforms/cocoa/qcocoaintegration.mm b/src/plugins/platforms/cocoa/qcocoaintegration.mm index 6d7770fecc..03348bb434 100644 --- a/src/plugins/platforms/cocoa/qcocoaintegration.mm +++ b/src/plugins/platforms/cocoa/qcocoaintegration.mm @@ -90,6 +90,8 @@ QCocoaIntegration::QCocoaIntegration() : mFontDb(new QCoreTextFontDatabase()) , mEventDispatcher(new QCocoaEventDispatcher()) { + QCocoaAutoReleasePool pool; + qApp->setAttribute(Qt::AA_DontUseNativeMenuBar, false); NSApplication *cocoaApplication = [NSApplication sharedApplication]; diff --git a/src/plugins/platforms/cocoa/qcocoawindow.mm b/src/plugins/platforms/cocoa/qcocoawindow.mm index de38db5fab..86db8a5f67 100644 --- a/src/plugins/platforms/cocoa/qcocoawindow.mm +++ b/src/plugins/platforms/cocoa/qcocoawindow.mm @@ -129,6 +129,7 @@ void QCocoaWindow::setGeometry(const QRect &rect) void QCocoaWindow::setVisible(bool visible) { + QCocoaAutoReleasePool pool; if (visible) { // The parent window might have moved while this window was hidden, // update the window geometry if there is a parent. @@ -146,6 +147,8 @@ void QCocoaWindow::setVisible(bool visible) void QCocoaWindow::setWindowTitle(const QString &title) { + QCocoaAutoReleasePool pool; + CFStringRef windowTitle = QCFString::toCFStringRef(title); [m_nsWindow setTitle: const_cast(reinterpret_cast(windowTitle))]; CFRelease(windowTitle); @@ -164,6 +167,8 @@ void QCocoaWindow::lower() void QCocoaWindow::propagateSizeHints() { + QCocoaAutoReleasePool pool; + [m_nsWindow setMinSize : qt_mac_toNSSize(window()->minimumSize())]; [m_nsWindow setMaxSize : qt_mac_toNSSize(window()->maximumSize())]; -- cgit v1.2.3 From 0319f13f1a9bdd5570977952f7b206a910bbb7a4 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Mon, 12 Dec 2011 13:56:56 +0100 Subject: Remove symbian cases from library and plugin loading code. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I381873449b1520152cd2a7aede9c7253e110ef7a Reviewed-by: Robin Burchell Reviewed-by: João Abecasis --- src/corelib/plugin/qlibrary.cpp | 73 +++++------------------------------- src/corelib/plugin/qpluginloader.cpp | 60 ----------------------------- 2 files changed, 9 insertions(+), 124 deletions(-) diff --git a/src/corelib/plugin/qlibrary.cpp b/src/corelib/plugin/qlibrary.cpp index 6a40b5b818..02b08e326d 100644 --- a/src/corelib/plugin/qlibrary.cpp +++ b/src/corelib/plugin/qlibrary.cpp @@ -96,7 +96,7 @@ Q_GLOBAL_STATIC(QMutex, qt_library_mutex) Unix), unless the file name has an absolute path. If the file cannot be found, QLibrary tries the name with different platform-specific file suffixes, like ".so" on Unix, ".dylib" on - the Mac, or ".dll" on Windows and Symbian. This makes it possible + the Mac, or ".dll" on Windows. This makes it possible to specify shared libraries that are only identified by their basename (i.e. without their suffix), so the same code will work on different operating systems. @@ -118,11 +118,6 @@ Q_GLOBAL_STATIC(QMutex, qt_library_mutex) linking", which is done by the link step in the build process when linking an executable against a library. - Note: In Symbian resolving symbols using their names is supported - only if the library is built as STDDLL. Otherwise ordinals must - be used. Also, in Symbian the path of the library is ignored and - system default library location is always used. - The following code snippet loads a library, resolves the symbol "mysymbol", and calls the function if everything succeeded. If something goes wrong, e.g. the library file does not exist or the @@ -287,7 +282,7 @@ static bool qt_parse_pattern(const char *s, uint *version, bool *debug) } #endif // QT_NO_PLUGIN_CHECK -#if defined(Q_OS_UNIX) && !defined(Q_OS_MAC) && !defined(Q_OS_SYMBIAN) && !defined(QT_NO_PLUGIN_CHECK) +#if defined(Q_OS_UNIX) && !defined(Q_OS_MAC) && !defined(QT_NO_PLUGIN_CHECK) static long qt_find_pattern(const char *s, ulong s_len, const char *pattern, ulong p_len) @@ -398,7 +393,7 @@ static bool qt_unix_query(const QString &library, uint *version, bool *debug, QL return ret; } -#endif // Q_OS_UNIX && !Q_OS_MAC && !defined(Q_OS_SYMBIAN) && !defined(QT_NO_PLUGIN_CHECK) +#endif // Q_OS_UNIX && !Q_OS_MAC && !defined(QT_NO_PLUGIN_CHECK) static void installCoverageTool(QLibraryPrivate *libPrivate) { @@ -567,14 +562,6 @@ bool QLibraryPrivate::loadPlugin() return false; if (load()) { instance = (QtPluginInstanceFunction)resolve("qt_plugin_instance"); -#if defined(Q_OS_SYMBIAN) - if (!instance) { - // If resolving with function name failed (i.e. not STDDLL), - // try resolving using known ordinal, which for - // qt_plugin_instance function is always "2". - instance = (QtPluginInstanceFunction)resolve("2"); - } -#endif return instance; } if (qt_debug_component()) @@ -594,7 +581,6 @@ bool QLibraryPrivate::loadPlugin() \row \i AIX \i \c .a \row \i HP-UX \i \c .sl, \c .so (HP-UXi) \row \i Mac OS X \i \c .dylib, \c .bundle, \c .so - \row \i Symbian \i \c .dll \endtable Trailing versioning numbers on Unix are ignored. @@ -603,10 +589,6 @@ bool QLibrary::isLibrary(const QString &fileName) { #if defined(Q_OS_WIN32) || defined(Q_OS_WINCE) return fileName.endsWith(QLatin1String(".dll"), Qt::CaseInsensitive); -#elif defined(Q_OS_SYMBIAN) - // Plugin stubs are also considered libraries in Symbian. - return (fileName.endsWith(QLatin1String(".dll")) || - fileName.endsWith(QLatin1String(".qtplugin"))); #else QString completeSuffix = QFileInfo(fileName).completeSuffix(); if (completeSuffix.isEmpty()) @@ -728,7 +710,7 @@ bool QLibraryPrivate::isPlugin() } #endif -#if defined(Q_OS_UNIX) && !defined(Q_OS_MAC) && !defined(Q_OS_SYMBIAN) +#if defined(Q_OS_UNIX) && !defined(Q_OS_MAC) if (!pHnd) { // use unix shortcut to avoid loading the library success = qt_unix_query(fileName, &qt_version, &debug, this); @@ -749,11 +731,7 @@ bool QLibraryPrivate::isPlugin() hTempModule = ::LoadLibraryEx((wchar_t*)QDir::toNativeSeparators(fileName).utf16(), 0, dwFlags); SetErrorMode(oldmode); #else -# if defined(Q_OS_SYMBIAN) - //Guard against accidentally trying to load non-plugin libraries by making sure the stub exists - if (fileinfo.exists()) -# endif - temporary_load = load_sys(); + temporary_load = load_sys(); #endif } #ifdef Q_OS_WIN @@ -766,16 +744,7 @@ bool QLibraryPrivate::isPlugin() : (QtPluginQueryVerificationDataFunction) resolve("qt_plugin_query_verification_data"); #else QtPluginQueryVerificationDataFunction qtPluginQueryVerificationDataFunction = NULL; -# if defined(Q_OS_SYMBIAN) - if (temporary_load) { - qtPluginQueryVerificationDataFunction = (QtPluginQueryVerificationDataFunction) resolve("qt_plugin_query_verification_data"); - // If resolving with function name failed (i.e. not STDDLL), try resolving using known ordinal - if (!qtPluginQueryVerificationDataFunction) - qtPluginQueryVerificationDataFunction = (QtPluginQueryVerificationDataFunction) resolve("1"); - } -# else qtPluginQueryVerificationDataFunction = (QtPluginQueryVerificationDataFunction) resolve("qt_plugin_query_verification_data"); -# endif #endif bool exceptionThrown = false; bool ret = qt_get_verificationdata(qtPluginQueryVerificationDataFunction, @@ -927,8 +896,6 @@ QLibrary::QLibrary(QObject *parent) QLibrary will automatically look for the file with the appropriate suffix in accordance with the platform, e.g. ".so" on Unix, ".dylib" on Mac OS X, and ".dll" on Windows. (See \l{fileName}.) - - Note: In Symbian the path portion of the \a fileName is ignored. */ QLibrary::QLibrary(const QString& fileName, QObject *parent) :QObject(parent), d(0), did_load(false) @@ -940,14 +907,12 @@ QLibrary::QLibrary(const QString& fileName, QObject *parent) /*! Constructs a library object with the given \a parent that will load the library specified by \a fileName and major version number \a verNum. - Currently, the version number is ignored on Windows and Symbian. + Currently, the version number is ignored on Windows. We recommend omitting the file's suffix in \a fileName, since QLibrary will automatically look for the file with the appropriate suffix in accordance with the platform, e.g. ".so" on Unix, ".dylib" on Mac OS X, and ".dll" on Windows. (See \l{fileName}.) - - Note: In Symbian the path portion of the \a fileName is ignored. */ QLibrary::QLibrary(const QString& fileName, int verNum, QObject *parent) :QObject(parent), d(0), did_load(false) @@ -958,14 +923,12 @@ QLibrary::QLibrary(const QString& fileName, int verNum, QObject *parent) /*! Constructs a library object with the given \a parent that will load the library specified by \a fileName and full version number \a version. - Currently, the version number is ignored on Windows and Symbian. + Currently, the version number is ignored on Windows. We recommend omitting the file's suffix in \a fileName, since QLibrary will automatically look for the file with the appropriate suffix in accordance with the platform, e.g. ".so" on Unix, ".dylib" on Mac OS X, and ".dll" on Windows. (See \l{fileName}.) - - Note: In Symbian the path portion of the \a fileName is ignored. */ QLibrary::QLibrary(const QString& fileName, const QString &version, QObject *parent) :QObject(parent), d(0), did_load(false) @@ -1007,8 +970,6 @@ QLibrary::~QLibrary() platforms, fileName() will return "libGL.so". If the file name was originally passed as "/usr/lib/libGL", fileName() will return "/usr/lib/libGL.so". - - Note: In Symbian the path portion of the \a fileName is ignored. */ void QLibrary::setFileName(const QString &fileName) @@ -1036,9 +997,7 @@ QString QLibrary::fileName() const Sets the fileName property and major version number to \a fileName and \a versionNumber respectively. - The \a versionNumber is ignored on Windows and Symbian. - - Note: In Symbian the path portion of the \a fileName is ignored. + The \a versionNumber is ignored on Windows. \sa setFileName() */ @@ -1060,9 +1019,7 @@ void QLibrary::setFileNameAndVersion(const QString &fileName, int verNum) Sets the fileName property and full version number to \a fileName and \a version respectively. - The \a version parameter is ignored on Windows and Symbian. - - Note: In Symbian the path portion of the \a fileName is ignored. + The \a version parameter is ignored on Windows. \sa setFileName() */ @@ -1098,9 +1055,6 @@ void QLibrary::setFileNameAndVersion(const QString &fileName, const QString &ver with \c MY_EXPORT defined as \snippet doc/src/snippets/code/src_corelib_plugin_qlibrary.cpp 4 - - Note: In Symbian resolving with symbol names works only if the loaded - library was built as STDDLL. Otherwise, the ordinals must be used. */ QFunctionPointer QLibrary::resolve(const char *symbol) { @@ -1120,9 +1074,6 @@ QFunctionPointer QLibrary::resolve(const char *symbol) The function returns 0 if the symbol could not be resolved or if the library could not be loaded. - Note: In Symbian resolving with symbol names works only if the loaded - library was built as STDDLL. Otherwise, the ordinals must be used. - \sa resolve() */ QFunctionPointer QLibrary::resolve(const QString &fileName, const char *symbol) @@ -1143,9 +1094,6 @@ QFunctionPointer QLibrary::resolve(const QString &fileName, const char *symbol) The function returns 0 if the symbol could not be resolved or if the library could not be loaded. - Note: In Symbian resolving with symbol names works only if the loaded - library was built as STDDLL. Otherwise, the ordinals must be used. - \sa resolve() */ QFunctionPointer QLibrary::resolve(const QString &fileName, int verNum, const char *symbol) @@ -1167,9 +1115,6 @@ QFunctionPointer QLibrary::resolve(const QString &fileName, int verNum, const ch The function returns 0 if the symbol could not be resolved or if the library could not be loaded. - Note: In Symbian resolving with symbol names works only if the loaded - library was built as STDDLL. Otherwise, the ordinals must be used. - \sa resolve() */ QFunctionPointer QLibrary::resolve(const QString &fileName, const QString &version, const char *symbol) diff --git a/src/corelib/plugin/qpluginloader.cpp b/src/corelib/plugin/qpluginloader.cpp index 591e36e20a..f1ec09439d 100644 --- a/src/corelib/plugin/qpluginloader.cpp +++ b/src/corelib/plugin/qpluginloader.cpp @@ -48,11 +48,6 @@ #include "qdebug.h" #include "qdir.h" -#if defined(Q_OS_SYMBIAN) -# include -# include "private/qcore_symbian_p.h" -#endif - #ifndef QT_NO_LIBRARY QT_BEGIN_NAMESPACE @@ -106,16 +101,6 @@ QT_BEGIN_NAMESPACE link to plugins statically. You can use QLibrary if you need to load dynamic libraries in a statically linked application. - \note In Symbian the plugin stub files must be used whenever a - path to plugin is needed. For the purposes of loading plugins, - the stubs can be considered to have the same name as the actual - plugin binary. In practice they have ".qtplugin" extension - instead of ".dll", but this difference is handled transparently - by QPluginLoader and QLibrary to avoid need for Symbian specific - plugin handling in most Qt applications. Plugin stubs are needed - because Symbian Platform Security denies all access to the directory - where the actual plugin binaries are located. - \sa QLibrary, {Plug & Paint Example} */ @@ -136,8 +121,6 @@ QPluginLoader::QPluginLoader(QObject *parent) Unix, - \c .dylib on Mac OS X, and \c .dll on Windows. The suffix can be verified with QLibrary::isLibrary(). - Note: In Symbian the \a fileName must point to plugin stub file. - \sa setFileName() */ QPluginLoader::QPluginLoader(const QString &fileName, QObject *parent) @@ -263,8 +246,6 @@ bool QPluginLoader::isLoaded() const By default, this property contains an empty string. - Note: In Symbian the \a fileName must point to plugin stub file. - \sa load() */ void QPluginLoader::setFileName(const QString &fileName) @@ -278,48 +259,7 @@ void QPluginLoader::setFileName(const QString &fileName) did_load = false; } -#if defined(Q_OS_SYMBIAN) - // In Symbian we actually look for plugin stub, so modify the filename - // to make canonicalFilePath find the file, if .dll is specified. - QFileInfo fi(fileName); - - if (fi.suffix() == QLatin1String("dll")) { - QString stubName = fileName; - stubName.chop(3); - stubName += QLatin1String("qtplugin"); - fi = QFileInfo(stubName); - } - - QString fn = fi.canonicalFilePath(); - // If not found directly, check also all the available drives - if (!fn.length()) { - QString stubPath(fi.fileName().length() ? fi.absoluteFilePath() : QString()); - if (stubPath.length() > 1) { - if (stubPath.at(1).toAscii() == ':') - stubPath.remove(0,2); - QFileInfoList driveList(QDir::drives()); - RFs rfs = qt_s60GetRFs(); - foreach(const QFileInfo& drive, driveList) { - QString testFilePath(drive.absolutePath() + stubPath); - testFilePath = QDir::cleanPath(testFilePath); - // Use native Symbian code to check for file existence, because checking - // for file from under non-existent protected dir like E:/private/ using - // QFile::exists causes platform security violations on most apps. - QString nativePath = QDir::toNativeSeparators(testFilePath); - TPtrC ptr(qt_QString2TPtrC(nativePath)); - TUint attributes; - TInt err = rfs.Att(ptr, attributes); - if (err == KErrNone) { - fn = testFilePath; - break; - } - } - } - } - -#else QString fn = QFileInfo(fileName).canonicalFilePath(); -#endif d = QLibraryPrivate::findOrCreate(fn); d->loadHints = lh; -- cgit v1.2.3 From 91b48208f57b10f1b0378d1888fb96af73bc9fa3 Mon Sep 17 00:00:00 2001 From: Laszlo Agocs Date: Mon, 12 Dec 2011 17:24:33 +0200 Subject: Add touchEvent() virtual to QWindow. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Unlike keyPressEvent(), mousePressEvent(), etc. the touch events had no equivalent so one had to fall back to reimplementing event() or using an event filter. This is now corrected by introducing touchEvent(). Touch events are finally becoming a first-class citizen in Qt 5. Change-Id: Ia2044030154fd5b1b5384f08a3cb1749b798435f Reviewed-by: Samuel Rødal --- src/gui/kernel/qwindow.cpp | 9 +++ src/gui/kernel/qwindow.h | 2 + tests/auto/gui/kernel/qwindow/tst_qwindow.cpp | 82 +++++++++++++++++++++++++++ 3 files changed, 93 insertions(+) diff --git a/src/gui/kernel/qwindow.cpp b/src/gui/kernel/qwindow.cpp index 55329f56bd..d4f5e1dcf2 100644 --- a/src/gui/kernel/qwindow.cpp +++ b/src/gui/kernel/qwindow.cpp @@ -813,6 +813,12 @@ bool QWindow::event(QEvent *event) mouseDoubleClickEvent(static_cast(event)); break; + case QEvent::TouchBegin: + case QEvent::TouchUpdate: + case QEvent::TouchEnd: + touchEvent(static_cast(event)); + break; + case QEvent::Move: moveEvent(static_cast(event)); break; @@ -907,6 +913,9 @@ void QWindow::wheelEvent(QWheelEvent *) } #endif //QT_NO_WHEELEVENT +void QWindow::touchEvent(QTouchEvent *) +{ +} /*! diff --git a/src/gui/kernel/qwindow.h b/src/gui/kernel/qwindow.h index 11ff6b101d..2a50248c8f 100644 --- a/src/gui/kernel/qwindow.h +++ b/src/gui/kernel/qwindow.h @@ -72,6 +72,7 @@ class QMouseEvent; #ifndef QT_NO_WHEELEVENT class QWheelEvent; #endif +class QTouchEvent; class QPlatformSurface; class QPlatformWindow; @@ -285,6 +286,7 @@ protected: #ifndef QT_NO_WHEELEVENT virtual void wheelEvent(QWheelEvent *); #endif + virtual void touchEvent(QTouchEvent *); QWindow(QWindowPrivate &dd, QWindow *parent); diff --git a/tests/auto/gui/kernel/qwindow/tst_qwindow.cpp b/tests/auto/gui/kernel/qwindow/tst_qwindow.cpp index 4171f0f797..13b196c039 100644 --- a/tests/auto/gui/kernel/qwindow/tst_qwindow.cpp +++ b/tests/auto/gui/kernel/qwindow/tst_qwindow.cpp @@ -43,6 +43,8 @@ #include +#include + class tst_QWindow: public QObject { Q_OBJECT @@ -51,6 +53,7 @@ private slots: void mapGlobal(); void positioning(); void isActive(); + void testInputEvents(); }; @@ -221,5 +224,84 @@ void tst_QWindow::isActive() QVERIFY(child.isActive()); } +class InputTestWindow : public QWindow +{ +public: + void keyPressEvent(QKeyEvent *event) { + keyPressCode = event->key(); + } + void keyReleaseEvent(QKeyEvent *event) { + keyReleaseCode = event->key(); + } + void mousePressEvent(QMouseEvent *event) { + mousePressButton = event->button(); + } + void mouseReleaseEvent(QMouseEvent *event) { + mouseReleaseButton = event->button(); + } + void touchEvent(QTouchEvent *event) { + QList points = event->touchPoints(); + for (int i = 0; i < points.count(); ++i) { + switch (points.at(i).state()) { + case Qt::TouchPointPressed: + ++touchPressedCount; + break; + case Qt::TouchPointReleased: + ++touchReleasedCount; + break; + } + } + } + + InputTestWindow() { + keyPressCode = keyReleaseCode = 0; + mousePressButton = mouseReleaseButton = 0; + touchPressedCount = touchReleasedCount = 0; + } + + int keyPressCode, keyReleaseCode; + int mousePressButton, mouseReleaseButton; + int touchPressedCount, touchReleasedCount; +}; + +void tst_QWindow::testInputEvents() +{ + InputTestWindow window; + window.setGeometry(80, 80, 40, 40); + window.show(); + QTest::qWaitForWindowShown(&window); + + QWindowSystemInterface::handleKeyEvent(&window, QEvent::KeyPress, Qt::Key_A, Qt::NoModifier); + QWindowSystemInterface::handleKeyEvent(&window, QEvent::KeyRelease, Qt::Key_A, Qt::NoModifier); + QCoreApplication::processEvents(); + QCOMPARE(window.keyPressCode, int(Qt::Key_A)); + QCOMPARE(window.keyReleaseCode, int(Qt::Key_A)); + + QPointF local(12, 34); + QWindowSystemInterface::handleMouseEvent(&window, local, local, Qt::LeftButton); + QWindowSystemInterface::handleMouseEvent(&window, local, local, Qt::NoButton); + QCoreApplication::processEvents(); + QCOMPARE(window.mousePressButton, int(Qt::LeftButton)); + QCOMPARE(window.mouseReleaseButton, int(Qt::LeftButton)); + + QTouchDevice *device = new QTouchDevice; + device->setType(QTouchDevice::TouchScreen); + QWindowSystemInterface::registerTouchDevice(device); + QList points; + QWindowSystemInterface::TouchPoint tp1, tp2; + tp1.id = 1; + tp1.state = Qt::TouchPointPressed; + tp2.id = 2; + tp2.state = Qt::TouchPointPressed; + points << tp1 << tp2; + QWindowSystemInterface::handleTouchEvent(&window, device, points); + points[0].state = Qt::TouchPointReleased; + points[1].state = Qt::TouchPointReleased; + QWindowSystemInterface::handleTouchEvent(&window, device, points); + QCoreApplication::processEvents(); + QCOMPARE(window.touchPressedCount, 2); + QCOMPARE(window.touchReleasedCount, 2); +} + #include QTEST_MAIN(tst_QWindow); -- cgit v1.2.3 From cdacf0918e784f6dd3bd82659b23d6deaaef7766 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B8rgen=20Lind?= Date: Mon, 12 Dec 2011 12:55:23 +0100 Subject: Add a wayland-scanner rule to qmake Change-Id: I142ca2ba2a817745b818d2740d9ae8e0eaf3b797 Reviewed-by: Marius Storm-Olsen --- mkspecs/common/linux.conf | 1 + mkspecs/features/unix/default_pre.prf | 4 ++++ mkspecs/features/wayland-scanner.prf | 32 ++++++++++++++++++++++++++++++++ 3 files changed, 37 insertions(+) create mode 100644 mkspecs/features/unix/default_pre.prf create mode 100644 mkspecs/features/wayland-scanner.prf diff --git a/mkspecs/common/linux.conf b/mkspecs/common/linux.conf index d60533e923..de28ec7d1f 100644 --- a/mkspecs/common/linux.conf +++ b/mkspecs/common/linux.conf @@ -40,6 +40,7 @@ QMAKE_INCDIR_WAYLAND = QMAKE_LIBS_WAYLAND = QMAKE_LIBDIR_WAYLAND = QMAKE_DEFINES_WAYLAND = +QMAKE_WAYLAND_SCANNER = wayland-scanner QMAKE_MOC = $$[QT_INSTALL_BINS]/moc QMAKE_UIC = $$[QT_INSTALL_BINS]/uic diff --git a/mkspecs/features/unix/default_pre.prf b/mkspecs/features/unix/default_pre.prf new file mode 100644 index 0000000000..d978d14166 --- /dev/null +++ b/mkspecs/features/unix/default_pre.prf @@ -0,0 +1,4 @@ +linux*:CONFIG = wayland-scanner $$CONFIG + +load(default_pre) + diff --git a/mkspecs/features/wayland-scanner.prf b/mkspecs/features/wayland-scanner.prf new file mode 100644 index 0000000000..90e1e0f953 --- /dev/null +++ b/mkspecs/features/wayland-scanner.prf @@ -0,0 +1,32 @@ +# +# Wayland-scanner extra-compiler for handling files specified in the WAYLANDSOURCES variable +# + +isEmpty(QMAKE_WAYLAND_SCANNER):error("QMAKE_WAYLAND_SCANNER not defined for this mkspec") + +wayland-server-header.name = wayland ${QMAKE_FILE_BASE} +wayland-server-header.input = WAYLANDSOURCES +wayland-server-header.variable_out = HEADERS +wayland-server-header.output = wayland-${QMAKE_FILE_BASE}-server-protocol$${first(QMAKE_EXT_H)} +wayland-server-header.commands = $$QMAKE_WAYLAND_SCANNER server-header < ${QMAKE_FILE_IN} > ${QMAKE_FILE_OUT} + +silent:wayland-server-header.commands = @echo Wayland server header ${QMAKE_FILE_IN} && $$wayland-server-header.commands +QMAKE_EXTRA_COMPILERS += wayland-server-header + +wayland-client-header.name = wayland ${QMAKE_FILE_BASE} +wayland-client-header.input = WAYLANDSOURCES +wayland-client-header.variable_out = HEADERS +wayland-client-header.output = wayland-${QMAKE_FILE_BASE}-client-protocol$${first(QMAKE_EXT_H)} +wayland-client-header.commands = $$QMAKE_WAYLAND_SCANNER client-header < ${QMAKE_FILE_IN} > ${QMAKE_FILE_OUT} + +silent:wayland-client-header.commands = @echo Wayland client header ${QMAKE_FILE_IN} && $$wayland-client-header.commands +QMAKE_EXTRA_COMPILERS += wayland-client-header + +wayland-code.name = wayland ${QMAKE_FILE_BASE} +wayland-code.input = WAYLANDSOURCES +wayland-code.variable_out = SOURCES +wayland-code.output = wayland-${QMAKE_FILE_BASE}-protocol.c +wayland-code.commands = $$QMAKE_WAYLAND_SCANNER code < ${QMAKE_FILE_IN} > ${QMAKE_FILE_OUT} + +silent:wayland-code.commands = @echo Wayland code header ${QMAKE_FILE_IN} && $$wayland-code.commands +QMAKE_EXTRA_COMPILERS += wayland-code -- cgit v1.2.3 From 1b6b1358bf2b3597747688332afc893ece2e0cfb Mon Sep 17 00:00:00 2001 From: Rohan McGovern Date: Mon, 12 Dec 2011 10:26:22 +1000 Subject: v8: give sensible error message if v8 sources are not checked out A common error for developers attempting to build qtbase for the first time is to miss cloning the v8 submodule. Let qmake check for existence of the sources so we get a sensible error at qmake time, rather than a relatively inscrutable error at make time. Change-Id: I70b478e63c962263dac4f2ddccb377b4c9777ceb Reviewed-by: Oswald Buddenhagen --- src/v8/v8base.pri | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/v8/v8base.pri b/src/v8/v8base.pri index f0d7c00451..8a7d18cc49 100644 --- a/src/v8/v8base.pri +++ b/src/v8/v8base.pri @@ -1,6 +1,11 @@ V8DIR = $$(V8DIR) isEmpty(V8DIR) { V8DIR = $$PWD/../3rdparty/v8 + !exists($$V8DIR/src):error("$$V8DIR/src does not exist! $$escape_expand(\\n)\ + If you are building from git, please ensure you have the v8 submodule available, e.g. $$escape_expand(\\n\\n)\ + git submodule update --init src/3rdparty/v8 $$escape_expand(\\n\\n)\ + Alternatively, Qt may be configured with -no-v8 to disable v8.\ + ") } else { message(using external V8 from $$V8DIR) } -- cgit v1.2.3 From 2e02aaf24c7803b672cdf815f33f3ecd48d98822 Mon Sep 17 00:00:00 2001 From: Frederik Gladhorn Date: Mon, 12 Dec 2011 14:12:15 +0100 Subject: Make QApplication::type() set by QGuiApplication. QApplication::type used to be static and set by the QApplicationPrivate constructors. In QCoreApplication we have the new application_type that should take its place. QApplication::GuiServer is deprecated (since it doesn't have any functionallity any more with QWS being removed). This change prepares QStyle to be called from a QQuickCanvase based application that does not inherit the QWidget version of QApplication. Change-Id: Ifbe992e25f1e5821fa047b6eb915f75fa675ab97 Reviewed-by: Paul Olav Tvete --- src/corelib/kernel/qcoreapplication.cpp | 8 ++++++++ src/corelib/kernel/qcoreapplication.h | 6 ++++++ src/gui/kernel/qguiapplication.cpp | 1 + src/widgets/kernel/qapplication.cpp | 22 +++++++--------------- src/widgets/kernel/qapplication.h | 1 - 5 files changed, 22 insertions(+), 16 deletions(-) diff --git a/src/corelib/kernel/qcoreapplication.cpp b/src/corelib/kernel/qcoreapplication.cpp index 7ff82b1bca..7523963485 100644 --- a/src/corelib/kernel/qcoreapplication.cpp +++ b/src/corelib/kernel/qcoreapplication.cpp @@ -2587,6 +2587,14 @@ void QCoreApplication::setEventDispatcher(QAbstractEventDispatcher *eventDispatc \sa Q_OBJECT, QObject::tr(), QObject::trUtf8() */ +/*! + \enum QCoreApplication::Type + + \value Tty a console application + \value GuiClient a GUI application + \value GuiServer \e{Deprecated.} this value is only left for compatibility. +*/ + QT_END_NAMESPACE #include "moc_qcoreapplication.cpp" diff --git a/src/corelib/kernel/qcoreapplication.h b/src/corelib/kernel/qcoreapplication.h index 3d6aa170fd..0135d88045 100644 --- a/src/corelib/kernel/qcoreapplication.h +++ b/src/corelib/kernel/qcoreapplication.h @@ -78,6 +78,12 @@ public: enum { ApplicationFlags = QT_VERSION }; + enum Type { + Tty, + GuiClient, + GuiServer // # deprecated + }; + QCoreApplication(int &argc, char **argv, int = ApplicationFlags); ~QCoreApplication(); diff --git a/src/gui/kernel/qguiapplication.cpp b/src/gui/kernel/qguiapplication.cpp index 28ce2e599b..dc8e5edb56 100644 --- a/src/gui/kernel/qguiapplication.cpp +++ b/src/gui/kernel/qguiapplication.cpp @@ -186,6 +186,7 @@ QGuiApplicationPrivate::QGuiApplicationPrivate(int &argc, char **argv, int flags inputPanel(0) { self = this; + application_type = QCoreApplication::GuiClient; } QWindow *QGuiApplication::focusWindow() diff --git a/src/widgets/kernel/qapplication.cpp b/src/widgets/kernel/qapplication.cpp index c94c48e28b..4c4cb4061c 100644 --- a/src/widgets/kernel/qapplication.cpp +++ b/src/widgets/kernel/qapplication.cpp @@ -139,7 +139,6 @@ QT_BEGIN_NAMESPACE Q_CORE_EXPORT void qt_call_post_routines(); -QApplication::Type qt_appType=QApplication::Tty; QApplicationPrivate *QApplicationPrivate::self = 0; QInputContext *QApplicationPrivate::inputContext = 0; @@ -157,7 +156,6 @@ QApplicationPrivate::QApplicationPrivate(int &argc, char **argv, QApplication::T : QApplicationPrivateBase(argc, argv, flags) { application_type = type; - qt_appType = type; #ifndef QT_NO_SESSIONMANAGER is_session_restored = false; @@ -365,14 +363,6 @@ QApplicationPrivate::~QApplicationPrivate() \sa QCoreApplication, QAbstractEventDispatcher, QEventLoop, QSettings */ -/*! - \enum QApplication::Type - - \value Tty a console application - \value GuiClient a GUI client application - \value GuiServer a GUI server application (for Qt for Embedded Linux) -*/ - /*! \enum QApplication::ColorSpec @@ -743,11 +733,11 @@ void QApplicationPrivate::construct( { initResources(); - qt_is_gui_used = (qt_appType != QApplication::Tty); + qt_is_gui_used = (application_type != QApplication::Tty); process_cmdline(); // Must be called before initialize() - qt_init(this, qt_appType + qt_init(this, application_type #ifdef Q_WS_X11 , dpy, visual, cmap #endif @@ -873,7 +863,7 @@ void QApplicationPrivate::initialize() QWidgetPrivate::mapper = new QWidgetMapper; QWidgetPrivate::allWidgets = new QWidgetSet; - if (qt_appType != QApplication::Tty) + if (application_type != QApplication::Tty) (void) QApplication::style(); // trigger creation of application style #ifndef QT_NO_STATEMACHINE // trigger registering of QStateMachine's GUI types @@ -917,7 +907,9 @@ void QApplicationPrivate::initialize() */ QApplication::Type QApplication::type() { - return qt_appType; + if (QApplicationPrivate::instance()) + return (QCoreApplication::Type)QApplicationPrivate::instance()->application_type; + return Tty; } /***************************************************************************** @@ -1275,7 +1267,7 @@ QStyle *QApplication::style() { if (QApplicationPrivate::app_style) return QApplicationPrivate::app_style; - if (!qt_is_gui_used) { + if (qApp->type() == QApplication::Tty) { Q_ASSERT(!"No style available in non-gui applications!"); return 0; } diff --git a/src/widgets/kernel/qapplication.h b/src/widgets/kernel/qapplication.h index 1792d2f05d..4883ecefac 100644 --- a/src/widgets/kernel/qapplication.h +++ b/src/widgets/kernel/qapplication.h @@ -98,7 +98,6 @@ class Q_WIDGETS_EXPORT QApplication : public QGuiApplication Q_PROPERTY(bool autoSipEnabled READ autoSipEnabled WRITE setAutoSipEnabled) public: - enum Type { Tty, GuiClient, GuiServer }; #ifndef qdoc QApplication(int &argc, char **argv, int = ApplicationFlags); -- cgit v1.2.3 From 23ab6a726a1cac3b7b5b222878e98caa4084681c Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Mon, 12 Dec 2011 12:57:17 +0100 Subject: Add the .exe suffix to executables on Windows. Change-Id: I257bb7d62ae18ea529df6b10694fcf25eedc83f4 Reviewed-by: Clinton Stimpson Reviewed-by: Oswald Buddenhagen --- mkspecs/features/create_cmake.prf | 1 + src/corelib/Qt5CoreConfigExtras.cmake.in | 6 +++--- src/widgets/Qt5WidgetsConfigExtras.cmake.in | 2 +- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/mkspecs/features/create_cmake.prf b/mkspecs/features/create_cmake.prf index 6691e3f49c..7f2a344d37 100644 --- a/mkspecs/features/create_cmake.prf +++ b/mkspecs/features/create_cmake.prf @@ -43,6 +43,7 @@ macx { CMAKE_LIB_FILE_LOCATION_RELEASE = Qt$${CMAKE_MODULE_NAME}$${QT_LIBINFIX}$$eval(QT.$${MODULE}.MAJOR_VERSION).dll CMAKE_IMPLIB_FILE_LOCATION_DEBUG = Qt$${CMAKE_MODULE_NAME}$${QT_LIBINFIX}d$$eval(QT.$${MODULE}.MAJOR_VERSION).lib CMAKE_IMPLIB_FILE_LOCATION_RELEASE = Qt$${CMAKE_MODULE_NAME}$${QT_LIBINFIX}$$eval(QT.$${MODULE}.MAJOR_VERSION).lib + CMAKE_BIN_SUFFIX = ".exe" } else { CMAKE_LIB_FILE_LOCATION_DEBUG = libQt$${CMAKE_MODULE_NAME}$${QT_LIBINFIX}.so.$$eval(QT.$${MODULE}.VERSION) CMAKE_LIB_FILE_LOCATION_RELEASE = libQt$${CMAKE_MODULE_NAME}$${QT_LIBINFIX}.so.$$eval(QT.$${MODULE}.VERSION) diff --git a/src/corelib/Qt5CoreConfigExtras.cmake.in b/src/corelib/Qt5CoreConfigExtras.cmake.in index 154069411a..de24287c4c 100644 --- a/src/corelib/Qt5CoreConfigExtras.cmake.in +++ b/src/corelib/Qt5CoreConfigExtras.cmake.in @@ -2,9 +2,9 @@ get_filename_component(_qt5_corelib_install_prefix ${CMAKE_CURRENT_LIST_DIR}/$${CMAKE_RELATIVE_INSTALL_DIR} ABSOLUTE) # Required by default: -set(QT_QMAKE_EXECUTABLE \"${_qt5_corelib_install_prefix}/$$CMAKE_BIN_DIR/qmake\") -set(QT_MOC_EXECUTABLE \"${_qt5_corelib_install_prefix}/$$CMAKE_BIN_DIR/moc\") -set(QT_RCC_EXECUTABLE \"${_qt5_corelib_install_prefix}/$$CMAKE_BIN_DIR/rcc\") +set(QT_QMAKE_EXECUTABLE \"${_qt5_corelib_install_prefix}/$$CMAKE_BIN_DIR/qmake$$CMAKE_BIN_SUFFIX\") +set(QT_MOC_EXECUTABLE \"${_qt5_corelib_install_prefix}/$$CMAKE_BIN_DIR/moc$$CMAKE_BIN_SUFFIX\") +set(QT_RCC_EXECUTABLE \"${_qt5_corelib_install_prefix}/$$CMAKE_BIN_DIR/rcc$$CMAKE_BIN_SUFFIX\") set(Qt5Core_PLUGIN_TYPES codecs) diff --git a/src/widgets/Qt5WidgetsConfigExtras.cmake.in b/src/widgets/Qt5WidgetsConfigExtras.cmake.in index b7e4594ca1..baf34b2fbc 100644 --- a/src/widgets/Qt5WidgetsConfigExtras.cmake.in +++ b/src/widgets/Qt5WidgetsConfigExtras.cmake.in @@ -2,4 +2,4 @@ get_filename_component(_qt5_widgets_install_prefix ${CMAKE_CURRENT_LIST_DIR}/$${CMAKE_RELATIVE_INSTALL_DIR} ABSOLUTE) # Not Required by default: -set(QT_UIC_EXECUTABLE \"${_qt5_widgets_install_prefix}/$$CMAKE_BIN_DIR/uic\") +set(QT_UIC_EXECUTABLE \"${_qt5_widgets_install_prefix}/$$CMAKE_BIN_DIR/uic$$CMAKE_BIN_SUFFIX\") -- cgit v1.2.3 From a3b3cfe3b8bde172fa195d6cd12857b9b2e9afa5 Mon Sep 17 00:00:00 2001 From: Robin Burchell Date: Wed, 7 Dec 2011 20:58:04 +0100 Subject: Use QVarLengthArray in QXcbConnection. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit There's no need in using a QList here, since it's never passed around anywhere; the reference counting is just unnecessary overhead. Change-Id: I92107c69f7338acc396e2ac4a69123c6a2becaed Reviewed-by: John Brooks Reviewed-by: Bradley T. Hughes Reviewed-by: Samuel Rødal --- src/plugins/platforms/xcb/qxcbconnection.cpp | 6 +++--- src/plugins/platforms/xcb/qxcbconnection.h | 9 ++++++--- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/src/plugins/platforms/xcb/qxcbconnection.cpp b/src/plugins/platforms/xcb/qxcbconnection.cpp index 6969124b2a..0c51cc9255 100644 --- a/src/plugins/platforms/xcb/qxcbconnection.cpp +++ b/src/plugins/platforms/xcb/qxcbconnection.cpp @@ -615,7 +615,7 @@ void QXcbEventReader::addEvent(xcb_generic_event_t *event) m_events << event; } -QList *QXcbEventReader::lock() +QXcbEventArray *QXcbEventReader::lock() { m_mutex.lock(); #ifndef XCB_POLL_FOR_QUEUED_EVENT @@ -648,7 +648,7 @@ void QXcbConnection::sendConnectionEvent(QXcbAtom::Atom a, uint id) void QXcbConnection::processXcbEvents() { - QList *eventqueue = m_reader->lock(); + QXcbEventArray *eventqueue = m_reader->lock(); for(int i = 0; i < eventqueue->size(); ++i) { xcb_generic_event_t *event = eventqueue->at(i); @@ -711,7 +711,7 @@ void QXcbConnection::handleClientMessageEvent(const xcb_client_message_event_t * xcb_generic_event_t *QXcbConnection::checkEvent(int type) { - QList *eventqueue = m_reader->lock(); + QXcbEventArray *eventqueue = m_reader->lock(); for (int i = 0; i < eventqueue->size(); ++i) { xcb_generic_event_t *event = eventqueue->at(i); diff --git a/src/plugins/platforms/xcb/qxcbconnection.h b/src/plugins/platforms/xcb/qxcbconnection.h index ebe95c0013..878d41ad89 100644 --- a/src/plugins/platforms/xcb/qxcbconnection.h +++ b/src/plugins/platforms/xcb/qxcbconnection.h @@ -50,6 +50,7 @@ #include #include #include +#include #ifdef XCB_USE_XINPUT2_MAEMO struct XInput2Data; @@ -249,6 +250,8 @@ namespace QXcbAtom { }; } +typedef QVarLengthArray QXcbEventArray; + class QXcbConnection; class QXcbEventReader : public QThread { @@ -263,7 +266,7 @@ public: void run(); #endif - QList *lock(); + QXcbEventArray *lock(); void unlock(); signals: @@ -273,7 +276,7 @@ private: void addEvent(xcb_generic_event_t *event); QMutex m_mutex; - QList m_events; + QXcbEventArray m_events; QXcbConnection *m_connection; }; @@ -427,7 +430,7 @@ private: template xcb_generic_event_t *QXcbConnection::checkEvent(const T &checker) { - QList *eventqueue = m_reader->lock(); + QXcbEventArray *eventqueue = m_reader->lock(); for (int i = 0; i < eventqueue->size(); ++i) { xcb_generic_event_t *event = eventqueue->at(i); -- cgit v1.2.3 From 4465fdd1668da3c58df2a06cfe4d9d9aa7f66684 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thorbj=C3=B8rn=20Lund=20Martsum?= Date: Thu, 8 Dec 2011 07:47:40 +0100 Subject: =?UTF-8?q?Compile=20fix=20-=20qxcbconnection.cpp=20(=E2=80=98Disp?= =?UTF-8?q?lay=E2=80=99=20was=20not=20declared)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit To avoid getting qxcbconnection.cpp:89:29: error: ‘Display’ was not declared in this scope Platform linux - configured with ./configure -nokia-developer -nomake examples -nomake demos -nomake tests -no-gtkstyle -no-v8 Change-Id: Ief7315bb8aa67c6454cdeddb1c02e60ea79801b5 Reviewed-by: Samuel Rødal --- src/plugins/platforms/xcb/qxcbconnection.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/plugins/platforms/xcb/qxcbconnection.cpp b/src/plugins/platforms/xcb/qxcbconnection.cpp index 0c51cc9255..636b6da86e 100644 --- a/src/plugins/platforms/xcb/qxcbconnection.cpp +++ b/src/plugins/platforms/xcb/qxcbconnection.cpp @@ -86,10 +86,12 @@ extern "C" { QT_BEGIN_NAMESPACE +#ifdef XCB_USE_XLIB static int nullErrorHandler(Display *, XErrorEvent *) { return 0; } +#endif QXcbConnection::QXcbConnection(const char *displayName) : m_displayName(displayName ? QByteArray(displayName) : qgetenv("DISPLAY")) -- cgit v1.2.3 From 309cdc358ec646090a1e5809c3817df8af1f531f Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Sat, 10 Dec 2011 02:22:06 +0100 Subject: Move QAbstractItemModel into a separate directory. Change-Id: Ib505520dd5b52743634befbf3f148d7f8c21ec44 Reviewed-by: Thiago Macieira --- src/corelib/corelib.pro | 1 + src/corelib/itemmodels/itemmodels.pri | 8 + src/corelib/itemmodels/qabstractitemmodel.cpp | 3454 ++++++++++++++++++++ src/corelib/itemmodels/qabstractitemmodel.h | 412 +++ src/corelib/itemmodels/qabstractitemmodel_p.h | 176 + src/corelib/kernel/kernel.pri | 3 - src/corelib/kernel/qabstractitemmodel.cpp | 3454 -------------------- src/corelib/kernel/qabstractitemmodel.h | 412 --- src/corelib/kernel/qabstractitemmodel_p.h | 176 - tests/auto/corelib/corelib.pro | 1 + tests/auto/corelib/itemmodels/itemmodels.pro | 5 + .../itemmodels/qabstractitemmodel/.gitignore | 1 + .../qabstractitemmodel/qabstractitemmodel.pro | 8 + .../qabstractitemmodel/tst_qabstractitemmodel.cpp | 2015 ++++++++++++ tests/auto/corelib/kernel/kernel.pro | 2 - .../corelib/kernel/qabstractitemmodel/.gitignore | 1 - .../qabstractitemmodel/qabstractitemmodel.pro | 8 - .../qabstractitemmodel/tst_qabstractitemmodel.cpp | 2015 ------------ 18 files changed, 6081 insertions(+), 6071 deletions(-) create mode 100644 src/corelib/itemmodels/itemmodels.pri create mode 100644 src/corelib/itemmodels/qabstractitemmodel.cpp create mode 100644 src/corelib/itemmodels/qabstractitemmodel.h create mode 100644 src/corelib/itemmodels/qabstractitemmodel_p.h delete mode 100644 src/corelib/kernel/qabstractitemmodel.cpp delete mode 100644 src/corelib/kernel/qabstractitemmodel.h delete mode 100644 src/corelib/kernel/qabstractitemmodel_p.h create mode 100644 tests/auto/corelib/itemmodels/itemmodels.pro create mode 100644 tests/auto/corelib/itemmodels/qabstractitemmodel/.gitignore create mode 100644 tests/auto/corelib/itemmodels/qabstractitemmodel/qabstractitemmodel.pro create mode 100644 tests/auto/corelib/itemmodels/qabstractitemmodel/tst_qabstractitemmodel.cpp delete mode 100644 tests/auto/corelib/kernel/qabstractitemmodel/.gitignore delete mode 100644 tests/auto/corelib/kernel/qabstractitemmodel/qabstractitemmodel.pro delete mode 100644 tests/auto/corelib/kernel/qabstractitemmodel/tst_qabstractitemmodel.cpp diff --git a/src/corelib/corelib.pro b/src/corelib/corelib.pro index edb5ecb849..17c15d42b1 100644 --- a/src/corelib/corelib.pro +++ b/src/corelib/corelib.pro @@ -23,6 +23,7 @@ include(global/global.pri) include(thread/thread.pri) include(tools/tools.pri) include(io/io.pri) +include(itemmodels/itemmodels.pri) include(plugin/plugin.pri) include(kernel/kernel.pri) include(codecs/codecs.pri) diff --git a/src/corelib/itemmodels/itemmodels.pri b/src/corelib/itemmodels/itemmodels.pri new file mode 100644 index 0000000000..618c748612 --- /dev/null +++ b/src/corelib/itemmodels/itemmodels.pri @@ -0,0 +1,8 @@ +# Qt itemmodels core module + +HEADERS += \ + itemmodels/qabstractitemmodel.h \ + itemmodels/qabstractitemmodel_p.h + +SOURCES += \ + itemmodels/qabstractitemmodel.cpp diff --git a/src/corelib/itemmodels/qabstractitemmodel.cpp b/src/corelib/itemmodels/qabstractitemmodel.cpp new file mode 100644 index 0000000000..99455371ae --- /dev/null +++ b/src/corelib/itemmodels/qabstractitemmodel.cpp @@ -0,0 +1,3454 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtCore module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include "qabstractitemmodel.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +QPersistentModelIndexData *QPersistentModelIndexData::create(const QModelIndex &index) +{ + Q_ASSERT(index.isValid()); // we will _never_ insert an invalid index in the list + QPersistentModelIndexData *d = 0; + QAbstractItemModel *model = const_cast(index.model()); + QHash &indexes = model->d_func()->persistent.indexes; + const QHash::iterator it = indexes.find(index); + if (it != indexes.end()) { + d = (*it); + } else { + d = new QPersistentModelIndexData(index); + indexes.insert(index, d); + } + Q_ASSERT(d); + return d; +} + +void QPersistentModelIndexData::destroy(QPersistentModelIndexData *data) +{ + Q_ASSERT(data); + Q_ASSERT(data->ref.load() == 0); + QAbstractItemModel *model = const_cast(data->model); + // a valid persistent model index with a null model pointer can only happen if the model was destroyed + if (model) { + QAbstractItemModelPrivate *p = model->d_func(); + Q_ASSERT(p); + p->removePersistentIndexData(data); + } + delete data; +} + +/*! + \class QPersistentModelIndex + + \brief The QPersistentModelIndex class is used to locate data in a data model. + + \ingroup model-view + + A QPersistentModelIndex is a model index that can be stored by an + application, and later used to access information in a model. + Unlike the QModelIndex class, it is safe to store a + QPersistentModelIndex since the model will ensure that references + to items will continue to be valid as long as they can be accessed + by the model. + + It is good practice to check that persistent model indexes are valid + before using them. + + \sa {Model/View Programming}, QModelIndex, QAbstractItemModel +*/ + + +/*! + \fn QPersistentModelIndex::QPersistentModelIndex() + + \internal +*/ + +QPersistentModelIndex::QPersistentModelIndex() + : d(0) +{ +} + +/*! + \fn QPersistentModelIndex::QPersistentModelIndex(const QPersistentModelIndex &other) + + Creates a new QPersistentModelIndex that is a copy of the \a other persistent + model index. +*/ + +QPersistentModelIndex::QPersistentModelIndex(const QPersistentModelIndex &other) + : d(other.d) +{ + if (d) d->ref.ref(); +} + +/*! + Creates a new QPersistentModelIndex that is a copy of the model \a index. +*/ + +QPersistentModelIndex::QPersistentModelIndex(const QModelIndex &index) + : d(0) +{ + if (index.isValid()) { + d = QPersistentModelIndexData::create(index); + d->ref.ref(); + } +} + +/*! + \fn QPersistentModelIndex::~QPersistentModelIndex() + + \internal +*/ + +QPersistentModelIndex::~QPersistentModelIndex() +{ + if (d && !d->ref.deref()) { + QPersistentModelIndexData::destroy(d); + d = 0; + } +} + +/*! + Returns true if this persistent model index is equal to the \a other + persistent model index; otherwise returns false. + + All values in the persistent model index are used when comparing + with another persistent model index. +*/ + +bool QPersistentModelIndex::operator==(const QPersistentModelIndex &other) const +{ + if (d && other.d) + return d->index == other.d->index; + return d == other.d; +} + +/*! + \since 4.1 + + Returns true if this persistent model index is smaller than the \a other + persistent model index; otherwise returns false. + + All values in the persistent model index are used when comparing + with another persistent model index. +*/ + +bool QPersistentModelIndex::operator<(const QPersistentModelIndex &other) const +{ + if (d && other.d) + return d->index < other.d->index; + + return d < other.d; +} + +/*! + \fn bool QPersistentModelIndex::operator!=(const QPersistentModelIndex &other) const + \since 4.2 + + Returns true if this persistent model index is not equal to the \a + other persistent model index; otherwise returns false. +*/ + +/*! + Sets the persistent model index to refer to the same item in a model + as the \a other persistent model index. +*/ + +QPersistentModelIndex &QPersistentModelIndex::operator=(const QPersistentModelIndex &other) +{ + if (d == other.d) + return *this; + if (d && !d->ref.deref()) + QPersistentModelIndexData::destroy(d); + d = other.d; + if (d) d->ref.ref(); + return *this; +} + +/*! + Sets the persistent model index to refer to the same item in a model + as the \a other model index. +*/ + +QPersistentModelIndex &QPersistentModelIndex::operator=(const QModelIndex &other) +{ + if (d && !d->ref.deref()) + QPersistentModelIndexData::destroy(d); + if (other.isValid()) { + d = QPersistentModelIndexData::create(other); + if (d) d->ref.ref(); + } else { + d = 0; + } + return *this; +} + +/*! + \fn QPersistentModelIndex::operator const QModelIndex&() const + + Cast operator that returns a const QModelIndex&. +*/ + +QPersistentModelIndex::operator const QModelIndex&() const +{ + static const QModelIndex invalid; + if (d) + return d->index; + return invalid; +} + +/*! + \fn bool QPersistentModelIndex::operator==(const QModelIndex &other) const + + Returns true if this persistent model index refers to the same location as + the \a other model index; otherwise returns false. + + All values in the persistent model index are used when comparing with + another model index. +*/ + +bool QPersistentModelIndex::operator==(const QModelIndex &other) const +{ + if (d) + return d->index == other; + return !other.isValid(); +} + +/*! + \fn bool QPersistentModelIndex::operator!=(const QModelIndex &other) const + + Returns true if this persistent model index does not refer to the same + location as the \a other model index; otherwise returns false. +*/ + +bool QPersistentModelIndex::operator!=(const QModelIndex &other) const +{ + if (d) + return d->index != other; + return other.isValid(); +} + +/*! + \fn int QPersistentModelIndex::row() const + + Returns the row this persistent model index refers to. +*/ + +int QPersistentModelIndex::row() const +{ + if (d) + return d->index.row(); + return -1; +} + +/*! + \fn int QPersistentModelIndex::column() const + + Returns the column this persistent model index refers to. +*/ + +int QPersistentModelIndex::column() const +{ + if (d) + return d->index.column(); + return -1; +} + +/*! + \fn void *QPersistentModelIndex::internalPointer() const + + \internal + + Returns a \c{void} \c{*} pointer used by the model to associate the index with + the internal data structure. +*/ + +void *QPersistentModelIndex::internalPointer() const +{ + if (d) + return d->index.internalPointer(); + return 0; +} + +/*! + \fn void *QPersistentModelIndex::internalId() const + + \internal + + Returns a \c{qint64} used by the model to associate the index with + the internal data structure. +*/ + +qint64 QPersistentModelIndex::internalId() const +{ + if (d) + return d->index.internalId(); + return 0; +} + +/*! + Returns the parent QModelIndex for this persistent index, or an invalid + QModelIndex if it has no parent. + + \sa child() sibling() model() +*/ +QModelIndex QPersistentModelIndex::parent() const +{ + if (d) + return d->index.parent(); + return QModelIndex(); +} + +/*! + Returns the sibling at \a row and \a column or an invalid QModelIndex if + there is no sibling at this position. + + \sa parent() child() +*/ + +QModelIndex QPersistentModelIndex::sibling(int row, int column) const +{ + if (d) + return d->index.sibling(row, column); + return QModelIndex(); +} + +/*! + Returns the child of the model index that is stored in the given \a row + and \a column. + + \sa parent() sibling() +*/ + +QModelIndex QPersistentModelIndex::child(int row, int column) const +{ + if (d) + return d->index.child(row, column); + return QModelIndex(); +} + +/*! + Returns the data for the given \a role for the item referred to by the + index. + + \sa Qt::ItemDataRole, QAbstractItemModel::setData() +*/ +QVariant QPersistentModelIndex::data(int role) const +{ + if (d) + return d->index.data(role); + return QVariant(); +} + +/*! + \since 4.2 + + Returns the flags for the item referred to by the index. +*/ +Qt::ItemFlags QPersistentModelIndex::flags() const +{ + if (d) + return d->index.flags(); + return 0; +} + +/*! + Returns the model that the index belongs to. +*/ +const QAbstractItemModel *QPersistentModelIndex::model() const +{ + if (d) + return d->index.model(); + return 0; +} + +/*! + \fn bool QPersistentModelIndex::isValid() const + + Returns true if this persistent model index is valid; otherwise returns + false. + + A valid index belongs to a model, and has non-negative row and column + numbers. + + \sa model(), row(), column() +*/ + +bool QPersistentModelIndex::isValid() const +{ + return d && d->index.isValid(); +} + +#ifndef QT_NO_DEBUG_STREAM +QDebug operator<<(QDebug dbg, const QModelIndex &idx) +{ +#ifndef Q_BROKEN_DEBUG_STREAM + dbg.nospace() << "QModelIndex(" << idx.row() << ',' << idx.column() + << ',' << idx.internalPointer() << ',' << idx.model() << ')'; + return dbg.space(); +#else + qWarning("This compiler doesn't support streaming QModelIndex to QDebug"); + return dbg; + Q_UNUSED(idx); +#endif +} + +QDebug operator<<(QDebug dbg, const QPersistentModelIndex &idx) +{ + if (idx.d) + dbg << idx.d->index; + else + dbg << QModelIndex(); + return dbg; +} +#endif + +class QEmptyItemModel : public QAbstractItemModel +{ +public: + explicit QEmptyItemModel(QObject *parent = 0) : QAbstractItemModel(parent) {} + QModelIndex index(int, int, const QModelIndex &) const { return QModelIndex(); } + QModelIndex parent(const QModelIndex &) const { return QModelIndex(); } + int rowCount(const QModelIndex &) const { return 0; } + int columnCount(const QModelIndex &) const { return 0; } + bool hasChildren(const QModelIndex &) const { return false; } + QVariant data(const QModelIndex &, int) const { return QVariant(); } +}; + +Q_GLOBAL_STATIC(QEmptyItemModel, qEmptyModel) + +QAbstractItemModel *QAbstractItemModelPrivate::staticEmptyModel() +{ + return qEmptyModel(); +} + +namespace { + struct DefaultRoleNames : public QHash + { + DefaultRoleNames() { + (*this)[Qt::DisplayRole] = "display"; + (*this)[Qt::DecorationRole] = "decoration"; + (*this)[Qt::EditRole] = "edit"; + (*this)[Qt::ToolTipRole] = "toolTip"; + (*this)[Qt::StatusTipRole] = "statusTip"; + (*this)[Qt::WhatsThisRole] = "whatsThis"; + } + }; +} + +Q_GLOBAL_STATIC(DefaultRoleNames, qDefaultRoleNames) + +const QHash &QAbstractItemModelPrivate::defaultRoleNames() +{ + return *qDefaultRoleNames(); +} + + +static uint typeOfVariant(const QVariant &value) +{ + //return 0 for integer, 1 for floating point and 2 for other + switch (value.userType()) { + case QVariant::Bool: + case QVariant::Int: + case QVariant::UInt: + case QVariant::LongLong: + case QVariant::ULongLong: + case QVariant::Char: + case QMetaType::Short: + case QMetaType::UShort: + case QMetaType::UChar: + case QMetaType::ULong: + case QMetaType::Long: + return 0; + case QVariant::Double: + case QMetaType::Float: + return 1; + default: + return 2; + } +} + +/*! + \internal + return true if \a value contains a numerical type + + This function is used by our Q{Tree,Widget,Table}WidgetModel classes to sort. +*/ +bool QAbstractItemModelPrivate::variantLessThan(const QVariant &v1, const QVariant &v2) +{ + switch(qMax(typeOfVariant(v1), typeOfVariant(v2))) + { + case 0: //integer type + return v1.toLongLong() < v2.toLongLong(); + case 1: //floating point + return v1.toReal() < v2.toReal(); + default: + return v1.toString().localeAwareCompare(v2.toString()) < 0; + } +} + +void QAbstractItemModelPrivate::removePersistentIndexData(QPersistentModelIndexData *data) +{ + if (data->index.isValid()) { + int removed = persistent.indexes.remove(data->index); + Q_ASSERT_X(removed == 1, "QPersistentModelIndex::~QPersistentModelIndex", + "persistent model indexes corrupted"); //maybe the index was somewhat invalid? + // This assert may happen if the model use changePersistentIndex in a way that could result on two + // QPersistentModelIndex pointing to the same index. + Q_UNUSED(removed); + } + // make sure our optimization still works + for (int i = persistent.moved.count() - 1; i >= 0; --i) { + int idx = persistent.moved[i].indexOf(data); + if (idx >= 0) + persistent.moved[i].remove(idx); + } + // update the references to invalidated persistent indexes + for (int i = persistent.invalidated.count() - 1; i >= 0; --i) { + int idx = persistent.invalidated[i].indexOf(data); + if (idx >= 0) + persistent.invalidated[i].remove(idx); + } + +} + +void QAbstractItemModelPrivate::rowsAboutToBeInserted(const QModelIndex &parent, + int first, int last) +{ + Q_Q(QAbstractItemModel); + Q_UNUSED(last); + QVector persistent_moved; + if (first < q->rowCount(parent)) { + for (QHash::const_iterator it = persistent.indexes.constBegin(); + it != persistent.indexes.constEnd(); ++it) { + QPersistentModelIndexData *data = *it; + const QModelIndex &index = data->index; + if (index.row() >= first && index.isValid() && index.parent() == parent) { + persistent_moved.append(data); + } + } + } + persistent.moved.push(persistent_moved); +} + +void QAbstractItemModelPrivate::rowsInserted(const QModelIndex &parent, + int first, int last) +{ + QVector persistent_moved = persistent.moved.pop(); + int count = (last - first) + 1; // it is important to only use the delta, because the change could be nested + for (QVector::const_iterator it = persistent_moved.constBegin(); + it != persistent_moved.constEnd(); ++it) { + QPersistentModelIndexData *data = *it; + QModelIndex old = data->index; + persistent.indexes.erase(persistent.indexes.find(old)); + data->index = q_func()->index(old.row() + count, old.column(), parent); + if (data->index.isValid()) { + persistent.insertMultiAtEnd(data->index, data); + } else { + qWarning() << "QAbstractItemModel::endInsertRows: Invalid index (" << old.row() + count << ',' << old.column() << ") in model" << q_func(); + } + } +} + +void QAbstractItemModelPrivate::itemsAboutToBeMoved(const QModelIndex &srcParent, int srcFirst, int srcLast, const QModelIndex &destinationParent, int destinationChild, Qt::Orientation orientation) +{ + QVector persistent_moved_explicitly; + QVector persistent_moved_in_source; + QVector persistent_moved_in_destination; + + QHash::const_iterator it; + const QHash::const_iterator begin = persistent.indexes.constBegin(); + const QHash::const_iterator end = persistent.indexes.constEnd(); + + const bool sameParent = (srcParent == destinationParent); + const bool movingUp = (srcFirst > destinationChild); + + for ( it = begin; it != end; ++it) { + QPersistentModelIndexData *data = *it; + const QModelIndex &index = data->index; + const QModelIndex &parent = index.parent(); + const bool isSourceIndex = (parent == srcParent); + const bool isDestinationIndex = (parent == destinationParent); + + int childPosition; + if (orientation == Qt::Vertical) + childPosition = index.row(); + else + childPosition = index.column(); + + if (!index.isValid() || !(isSourceIndex || isDestinationIndex ) ) + continue; + + if (!sameParent && isDestinationIndex) { + if (childPosition >= destinationChild) + persistent_moved_in_destination.append(data); + continue; + } + + if (sameParent && movingUp && childPosition < destinationChild) + continue; + + if (sameParent && !movingUp && childPosition < srcFirst ) + continue; + + if (!sameParent && childPosition < srcFirst) + continue; + + if (sameParent && (childPosition > srcLast) && (childPosition >= destinationChild )) + continue; + + if ((childPosition <= srcLast) && (childPosition >= srcFirst)) { + persistent_moved_explicitly.append(data); + } else { + persistent_moved_in_source.append(data); + } + } + persistent.moved.push(persistent_moved_explicitly); + persistent.moved.push(persistent_moved_in_source); + persistent.moved.push(persistent_moved_in_destination); +} + +/*! + \internal + + Moves persistent indexes \a indexes by amount \a change. The change will be either a change in row value or a change in + column value depending on the value of \a orientation. The indexes may also be moved to a different parent if \a parent + differs from the existing parent for the index. +*/ +void QAbstractItemModelPrivate::movePersistentIndexes(QVector indexes, int change, const QModelIndex &parent, Qt::Orientation orientation) +{ + QVector::const_iterator it; + const QVector::const_iterator begin = indexes.constBegin(); + const QVector::const_iterator end = indexes.constEnd(); + + for (it = begin; it != end; ++it) + { + QPersistentModelIndexData *data = *it; + + int row = data->index.row(); + int column = data->index.column(); + + if (Qt::Vertical == orientation) + row += change; + else + column += change; + + persistent.indexes.erase(persistent.indexes.find(data->index)); + data->index = q_func()->index(row, column, parent); + if (data->index.isValid()) { + persistent.insertMultiAtEnd(data->index, data); + } else { + qWarning() << "QAbstractItemModel::endMoveRows: Invalid index (" << row << "," << column << ") in model" << q_func(); + } + } +} + +void QAbstractItemModelPrivate::itemsMoved(const QModelIndex &sourceParent, int sourceFirst, int sourceLast, const QModelIndex &destinationParent, int destinationChild, Qt::Orientation orientation) +{ + QVector moved_in_destination = persistent.moved.pop(); + QVector moved_in_source = persistent.moved.pop(); + QVector moved_explicitly = persistent.moved.pop(); + + const bool sameParent = (sourceParent == destinationParent); + const bool movingUp = (sourceFirst > destinationChild); + + const int explicit_change = (!sameParent || movingUp) ? destinationChild - sourceFirst : destinationChild - sourceLast - 1 ; + const int source_change = (!sameParent || !movingUp) ? -1*(sourceLast - sourceFirst + 1) : sourceLast - sourceFirst + 1 ; + const int destination_change = sourceLast - sourceFirst + 1; + + movePersistentIndexes(moved_explicitly, explicit_change, destinationParent, orientation); + movePersistentIndexes(moved_in_source, source_change, sourceParent, orientation); + movePersistentIndexes(moved_in_destination, destination_change, destinationParent, orientation); +} + +void QAbstractItemModelPrivate::rowsAboutToBeRemoved(const QModelIndex &parent, + int first, int last) +{ + QVector persistent_moved; + QVector persistent_invalidated; + // find the persistent indexes that are affected by the change, either by being in the removed subtree + // or by being on the same level and below the removed rows + for (QHash::const_iterator it = persistent.indexes.constBegin(); + it != persistent.indexes.constEnd(); ++it) { + QPersistentModelIndexData *data = *it; + bool level_changed = false; + QModelIndex current = data->index; + while (current.isValid()) { + QModelIndex current_parent = current.parent(); + if (current_parent == parent) { // on the same level as the change + if (!level_changed && current.row() > last) // below the removed rows + persistent_moved.append(data); + else if (current.row() <= last && current.row() >= first) // in the removed subtree + persistent_invalidated.append(data); + break; + } + current = current_parent; + level_changed = true; + } + } + + persistent.moved.push(persistent_moved); + persistent.invalidated.push(persistent_invalidated); +} + +void QAbstractItemModelPrivate::rowsRemoved(const QModelIndex &parent, + int first, int last) +{ + QVector persistent_moved = persistent.moved.pop(); + int count = (last - first) + 1; // it is important to only use the delta, because the change could be nested + for (QVector::const_iterator it = persistent_moved.constBegin(); + it != persistent_moved.constEnd(); ++it) { + QPersistentModelIndexData *data = *it; + QModelIndex old = data->index; + persistent.indexes.erase(persistent.indexes.find(old)); + data->index = q_func()->index(old.row() - count, old.column(), parent); + if (data->index.isValid()) { + persistent.insertMultiAtEnd(data->index, data); + } else { + qWarning() << "QAbstractItemModel::endRemoveRows: Invalid index (" << old.row() - count << ',' << old.column() << ") in model" << q_func(); + } + } + QVector persistent_invalidated = persistent.invalidated.pop(); + for (QVector::const_iterator it = persistent_invalidated.constBegin(); + it != persistent_invalidated.constEnd(); ++it) { + QPersistentModelIndexData *data = *it; + persistent.indexes.erase(persistent.indexes.find(data->index)); + data->index = QModelIndex(); + data->model = 0; + } +} + +void QAbstractItemModelPrivate::columnsAboutToBeInserted(const QModelIndex &parent, + int first, int last) +{ + Q_Q(QAbstractItemModel); + Q_UNUSED(last); + QVector persistent_moved; + if (first < q->columnCount(parent)) { + for (QHash::const_iterator it = persistent.indexes.constBegin(); + it != persistent.indexes.constEnd(); ++it) { + QPersistentModelIndexData *data = *it; + const QModelIndex &index = data->index; + if (index.column() >= first && index.isValid() && index.parent() == parent) + persistent_moved.append(data); + } + } + persistent.moved.push(persistent_moved); +} + +void QAbstractItemModelPrivate::columnsInserted(const QModelIndex &parent, + int first, int last) +{ + QVector persistent_moved = persistent.moved.pop(); + int count = (last - first) + 1; // it is important to only use the delta, because the change could be nested + for (QVector::const_iterator it = persistent_moved.constBegin(); + it != persistent_moved.constEnd(); ++it) { + QPersistentModelIndexData *data = *it; + QModelIndex old = data->index; + persistent.indexes.erase(persistent.indexes.find(old)); + data->index = q_func()->index(old.row(), old.column() + count, parent); + if (data->index.isValid()) { + persistent.insertMultiAtEnd(data->index, data); + } else { + qWarning() << "QAbstractItemModel::endInsertColumns: Invalid index (" << old.row() << ',' << old.column() + count << ") in model" << q_func(); + } + } +} + +void QAbstractItemModelPrivate::columnsAboutToBeRemoved(const QModelIndex &parent, + int first, int last) +{ + QVector persistent_moved; + QVector persistent_invalidated; + // find the persistent indexes that are affected by the change, either by being in the removed subtree + // or by being on the same level and to the right of the removed columns + for (QHash::const_iterator it = persistent.indexes.constBegin(); + it != persistent.indexes.constEnd(); ++it) { + QPersistentModelIndexData *data = *it; + bool level_changed = false; + QModelIndex current = data->index; + while (current.isValid()) { + QModelIndex current_parent = current.parent(); + if (current_parent == parent) { // on the same level as the change + if (!level_changed && current.column() > last) // right of the removed columns + persistent_moved.append(data); + else if (current.column() <= last && current.column() >= first) // in the removed subtree + persistent_invalidated.append(data); + break; + } + current = current_parent; + level_changed = true; + } + } + + persistent.moved.push(persistent_moved); + persistent.invalidated.push(persistent_invalidated); + +} + +void QAbstractItemModelPrivate::columnsRemoved(const QModelIndex &parent, + int first, int last) +{ + QVector persistent_moved = persistent.moved.pop(); + int count = (last - first) + 1; // it is important to only use the delta, because the change could be nested + for (QVector::const_iterator it = persistent_moved.constBegin(); + it != persistent_moved.constEnd(); ++it) { + QPersistentModelIndexData *data = *it; + QModelIndex old = data->index; + persistent.indexes.erase(persistent.indexes.find(old)); + data->index = q_func()->index(old.row(), old.column() - count, parent); + if (data->index.isValid()) { + persistent.insertMultiAtEnd(data->index, data); + } else { + qWarning() << "QAbstractItemModel::endRemoveColumns: Invalid index (" << old.row() << ',' << old.column() - count << ") in model" << q_func(); + } + } + QVector persistent_invalidated = persistent.invalidated.pop(); + for (QVector::const_iterator it = persistent_invalidated.constBegin(); + it != persistent_invalidated.constEnd(); ++it) { + QPersistentModelIndexData *data = *it; + persistent.indexes.erase(persistent.indexes.find(data->index)); + data->index = QModelIndex(); + data->model = 0; + } +} + +/*! + \class QModelIndex + + \brief The QModelIndex class is used to locate data in a data model. + + \ingroup model-view + + + This class is used as an index into item models derived from + QAbstractItemModel. The index is used by item views, delegates, and + selection models to locate an item in the model. + + New QModelIndex objects are created by the model using the + QAbstractItemModel::createIndex() function. An \e invalid model index can + be constructed with the QModelIndex constructor. Invalid indexes are often + used as parent indexes when referring to top-level items in a model. + + Model indexes refer to items in models, and contain all the information + required to specify their locations in those models. Each index is located + in a given row and column, and may have a parent index; use row(), + column(), and parent() to obtain this information. Each top-level item in a + model is represented by a model index that does not have a parent index - + in this case, parent() will return an invalid model index, equivalent to an + index constructed with the zero argument form of the QModelIndex() + constructor. + + To obtain a model index that refers to an existing item in a model, call + QAbstractItemModel::index() with the required row and column values, and + the model index of the parent. When referring to top-level items in a + model, supply QModelIndex() as the parent index. + + The model() function returns the model that the index references as a + QAbstractItemModel. The child() function is used to examine items held + under the index in the model. The sibling() function allows you to traverse + items in the model on the same level as the index. + + \note Model indexes should be used immediately and then discarded. You + should not rely on indexes to remain valid after calling model functions + that change the structure of the model or delete items. If you need to + keep a model index over time use a QPersistentModelIndex. + + \sa {Model/View Programming}, QPersistentModelIndex, QAbstractItemModel +*/ + +/*! + \fn QModelIndex::QModelIndex() + + Creates a new empty model index. This type of model index is used to + indicate that the position in the model is invalid. + + \sa isValid() QAbstractItemModel +*/ + +/*! + \fn QModelIndex::QModelIndex(int row, int column, void *data, const QAbstractItemModel *model) + + \internal + + Creates a new model index at the given \a row and \a column, + pointing to some \a data. +*/ + +/*! + \fn QModelIndex::QModelIndex(const QModelIndex &other) + + Creates a new model index that is a copy of the \a other model + index. +*/ + +/*! + \fn QModelIndex::~QModelIndex() + + Destroys the model index. +*/ + +/*! + \fn int QModelIndex::row() const + + Returns the row this model index refers to. +*/ + + +/*! + \fn int QModelIndex::column() const + + Returns the column this model index refers to. +*/ + + +/*! + \fn void *QModelIndex::internalPointer() const + + Returns a \c{void} \c{*} pointer used by the model to associate + the index with the internal data structure. + + \sa QAbstractItemModel::createIndex() +*/ + +/*! + \fn void *QModelIndex::internalId() const + + Returns a \c{qint64} used by the model to associate + the index with the internal data structure. + + \sa QAbstractItemModel::createIndex() +*/ + +/*! + \fn bool QModelIndex::isValid() const + + Returns true if this model index is valid; otherwise returns false. + + A valid index belongs to a model, and has non-negative row and column + numbers. + + \sa model(), row(), column() +*/ + +/*! + \fn const QAbstractItemModel *QModelIndex::model() const + + Returns a pointer to the model containing the item that this index + refers to. + + A const pointer to the model is returned because calls to non-const + functions of the model might invalidate the model index and possibly + crash your application. +*/ + +/*! + \fn QModelIndex QModelIndex::sibling(int row, int column) const + + Returns the sibling at \a row and \a column. If there is no sibling at this + position, an invalid QModelIndex is returned. + + \sa parent(), child() +*/ + +/*! + \fn QModelIndex QModelIndex::child(int row, int column) const + + Returns the child of the model index that is stored in the given \a row and + \a column. + + \note This function does not work for an invalid model index which is often + used as the root index. + + \sa parent(), sibling() +*/ + +/*! + \fn QVariant QModelIndex::data(int role) const + + Returns the data for the given \a role for the item referred to by the + index. +*/ + +/*! + \fn Qt::ItemFlags QModelIndex::flags() const + \since 4.2 + + Returns the flags for the item referred to by the index. +*/ + +/*! + \fn bool QModelIndex::operator==(const QModelIndex &other) const + + Returns true if this model index refers to the same location as the + \a other model index; otherwise returns false. + + All values in the model index are used when comparing with another model + index. +*/ + + +/*! + \fn bool QModelIndex::operator!=(const QModelIndex &other) const + + Returns true if this model index does not refer to the same location as + the \a other model index; otherwise returns false. +*/ + + +/*! + \fn QModelIndex QModelIndex::parent() const + + Returns the parent of the model index, or QModelIndex() if it has no + parent. + + \sa child(), sibling(), model() +*/ + +/*! + \class QAbstractItemModel + + \brief The QAbstractItemModel class provides the abstract interface for + item model classes. + + \ingroup model-view + + + The QAbstractItemModel class defines the standard interface that item + models must use to be able to interoperate with other components in the + model/view architecture. It is not supposed to be instantiated directly. + Instead, you should subclass it to create new models. + + The QAbstractItemModel class is one of the \l{Model/View Classes} + and is part of Qt's \l{Model/View Programming}{model/view framework}. + + If you need a model to use with a QListView or a QTableView, you should + consider subclassing QAbstractListModel or QAbstractTableModel instead of + this class. + + The underlying data model is exposed to views and delegates as a hierarchy + of tables. If you do not make use of the hierarchy, then the model is a + simple table of rows and columns. Each item has a unique index specified by + a QModelIndex. + + \image modelindex-no-parent.png + + Every item of data that can be accessed via a model has an associated model + index. You can obtain this model index using the index() function. Each + index may have a sibling() index; child items have a parent() index. + + Each item has a number of data elements associated with it and they can be + retrieved by specifying a role (see \l Qt::ItemDataRole) to the model's + data() function. Data for all available roles can be obtained at the same + time using the itemData() function. + + Data for each role is set using a particular \l Qt::ItemDataRole. Data for + individual roles are set individually with setData(), or they can be set + for all roles with setItemData(). + + Items can be queried with flags() (see \l Qt::ItemFlag) to see if they can + be selected, dragged, or manipulated in other ways. + + If an item has child objects, hasChildren() returns true for the + corresponding index. + + The model has a rowCount() and a columnCount() for each level of the + hierarchy. Rows and columns can be inserted and removed with insertRows(), + insertColumns(), removeRows(), and removeColumns(). + + The model emits signals to indicate changes. For example, dataChanged() is + emitted whenever items of data made available by the model are changed. + Changes to the headers supplied by the model cause headerDataChanged() to + be emitted. If the structure of the underlying data changes, the model can + emit layoutChanged() to indicate to any attached views that they should + redisplay any items shown, taking the new structure into account. + + The items available through the model can be searched for particular data + using the match() function. + + To sort the model, you can use sort(). + + + \section1 Subclassing + + \note Some general guidelines for subclassing models are available in the + \l{Model Subclassing Reference}. + + When subclassing QAbstractItemModel, at the very least you must implement + index(), parent(), rowCount(), columnCount(), and data(). These functions + are used in all read-only models, and form the basis of editable models. + + You can also reimplement hasChildren() to provide special behavior for + models where the implementation of rowCount() is expensive. This makes it + possible for models to restrict the amount of data requested by views, and + can be used as a way to implement lazy population of model data. + + To enable editing in your model, you must also implement setData(), and + reimplement flags() to ensure that \c ItemIsEditable is returned. You can + also reimplement headerData() and setHeaderData() to control the way the + headers for your model are presented. + + The dataChanged() and headerDataChanged() signals must be emitted + explicitly when reimplementing the setData() and setHeaderData() functions, + respectively. + + Custom models need to create model indexes for other components to use. To + do this, call createIndex() with suitable row and column numbers for the + item, and an identifier for it, either as a pointer or as an integer value. + The combination of these values must be unique for each item. Custom models + typically use these unique identifiers in other reimplemented functions to + retrieve item data and access information about the item's parents and + children. See the \l{Simple Tree Model Example} for more information about + unique identifiers. + + It is not necessary to support every role defined in Qt::ItemDataRole. + Depending on the type of data contained within a model, it may only be + useful to implement the data() function to return valid information for + some of the more common roles. Most models provide at least a textual + representation of item data for the Qt::DisplayRole, and well-behaved + models should also provide valid information for the Qt::ToolTipRole and + Qt::WhatsThisRole. Supporting these roles enables models to be used with + standard Qt views. However, for some models that handle highly-specialized + data, it may be appropriate to provide data only for user-defined roles. + + Models that provide interfaces to resizable data structures can provide + implementations of insertRows(), removeRows(), insertColumns(),and + removeColumns(). When implementing these functions, it is important to + notify any connected views about changes to the model's dimensions both + \e before and \e after they occur: + + \list + \o An insertRows() implementation must call beginInsertRows() \e before + inserting new rows into the data structure, and endInsertRows() + \e{immediately afterwards}. + \o An insertColumns() implementation must call beginInsertColumns() + \e before inserting new columns into the data structure, and + endInsertColumns() \e{immediately afterwards}. + \o A removeRows() implementation must call beginRemoveRows() \e before + the rows are removed from the data structure, and endRemoveRows() + \e{immediately afterwards}. + \o A removeColumns() implementation must call beginRemoveColumns() + \e before the columns are removed from the data structure, and + endRemoveColumns() \e{immediately afterwards}. + \endlist + + The \e private signals that these functions emit give attached components + the chance to take action before any data becomes unavailable. The + encapsulation of the insert and remove operations with these begin and end + functions also enables the model to manage \l{QPersistentModelIndex} + {persistent model indexes} correctly. \bold{If you want selections to be + handled properly, you must ensure that you call these functions.} If you + insert or remove an item with children, you do not need to call these + functions for the child items. In other words, the parent item will take + care of its child items. + + To create models that populate incrementally, you can reimplement + fetchMore() and canFetchMore(). If the reimplementation of fetchMore() adds + rows to the model, \l{QAbstractItemModel::}{beginInsertRows()} and + \l{QAbstractItemModel::}{endInsertRows()} must be called. + + \sa {Model Classes}, {Model Subclassing Reference}, QModelIndex, + QAbstractItemView, {Using drag and drop with item views}, + {Simple DOM Model Example}, {Simple Tree Model Example}, + {Editable Tree Model Example}, {Fetch More Example} +*/ + +/*! + \fn QModelIndex QAbstractItemModel::index(int row, int column, const QModelIndex &parent) const = 0 + + Returns the index of the item in the model specified by the given \a row, + \a column and \a parent index. + + When reimplementing this function in a subclass, call createIndex() to + generate model indexes that other components can use to refer to items in + your model. + + \sa createIndex() +*/ + +/*! + \fn bool QAbstractItemModel::insertColumn(int column, const QModelIndex &parent) + + Inserts a single column before the given \a column in the child items of + the \a parent specified. + + Returns true if the column is inserted; otherwise returns false. + + \sa insertColumns() insertRow() removeColumn() +*/ + +/*! + \fn bool QAbstractItemModel::insertRow(int row, const QModelIndex &parent) + + \note The base class implementation of this function does nothing and + returns false. + + Inserts a single row before the given \a row in the child items of the + \a parent specified. + + Returns true if the row is inserted; otherwise returns false. + + \sa insertRows() insertColumn() removeRow() +*/ + +/*! + \fn QObject *QAbstractItemModel::parent() const + \internal +*/ + +/*! + \fn QModelIndex QAbstractItemModel::parent(const QModelIndex &index) const = 0 + + Returns the parent of the model item with the given \a index. If the item + has no parent, an invalid QModelIndex is returned. + + A common convention used in models that expose tree data structures is that + only items in the first column have children. For that case, when + reimplementing this function in a subclass the column of the returned + QModelIndex would be 0. + + When reimplementing this function in a subclass, be careful to avoid + calling QModelIndex member functions, such as QModelIndex::parent(), since + indexes belonging to your model will simply call your implementation, + leading to infinite recursion. + + \sa createIndex() +*/ + +/*! + \fn bool QAbstractItemModel::removeColumn(int column, const QModelIndex &parent) + + Removes the given \a column from the child items of the \a parent + specified. + + Returns true if the column is removed; otherwise returns false. + + \sa removeColumns(), removeRow(), insertColumn() +*/ + +/*! + \fn bool QAbstractItemModel::removeRow(int row, const QModelIndex &parent) + + Removes the given \a row from the child items of the \a parent specified. + + Returns true if the row is removed; otherwise returns false. + + This is a convenience function that calls removeRows(). The + QAbstractItemModel implementation of removeRows() does nothing. + + \sa removeRows(), removeColumn(), insertRow() +*/ + +/*! + \fn void QAbstractItemModel::headerDataChanged(Qt::Orientation orientation, int first, int last) + + This signal is emitted whenever a header is changed. The \a orientation + indicates whether the horizontal or vertical header has changed. The + sections in the header from the \a first to the \a last need to be updated. + + When reimplementing the setHeaderData() function, this signal must be + emitted explicitly. + + If you are changing the number of columns or rows you do not need to emit + this signal, but use the begin/end functions (refer to the section on + subclassing in the QAbstractItemModel class description for details). + + \sa headerData(), setHeaderData(), dataChanged() +*/ + +/*! + \fn void QAbstractItemModel::layoutAboutToBeChanged(const QList &parents = QList()) + \since 4.2 + + This signal is emitted just before the layout of a model is changed. + Components connected to this signal use it to adapt to changes in the + model's layout. + + Subclasses should update any persistent model indexes after emitting + layoutAboutToBeChanged(). + + The optional @p parents parameter is used to give a more specific notification + about what parts of the layout of the model are changing. An empty list indicates + a change to the layout of the entire model. + + \sa layoutChanged(), changePersistentIndex() +*/ + +/*! + \fn void QAbstractItemModel::layoutChanged(const QList &parents = QList()) + + This signal is emitted whenever the layout of items exposed by the model + has changed; for example, when the model has been sorted. When this signal + is received by a view, it should update the layout of items to reflect this + change. + + When subclassing QAbstractItemModel or QAbstractProxyModel, ensure that you + emit layoutAboutToBeChanged() before changing the order of items or + altering the structure of the data you expose to views, and emit + layoutChanged() after changing the layout. + + The optional @p parents parameter is used to give a more specific notification + about what parts of the layout of the model are changing. An empty list indicates + a change to the layout of the entire model. + + Subclasses should update any persistent model indexes before emitting + layoutChanged(). In other words, when the structure changes: + + \list + \o emit layoutAboutToBeChanged + \o Remember the QModelIndex that will change + \o Update your internal data + \o Call changePersistentIndex() + \o emit layoutChanged + \endlist + + \sa layoutAboutToBeChanged(), dataChanged(), headerDataChanged(), modelReset(), + changePersistentIndex() +*/ + +/*! + Constructs an abstract item model with the given \a parent. +*/ +QAbstractItemModel::QAbstractItemModel(QObject *parent) + : QObject(*new QAbstractItemModelPrivate, parent) +{ +} + +/*! + \internal +*/ +QAbstractItemModel::QAbstractItemModel(QAbstractItemModelPrivate &dd, QObject *parent) + : QObject(dd, parent) +{ +} + +/*! + Destroys the abstract item model. +*/ +QAbstractItemModel::~QAbstractItemModel() +{ + d_func()->invalidatePersistentIndexes(); +} + +/*! + \fn QModelIndex QAbstractItemModel::sibling(int row, int column, const QModelIndex &index) const + + Returns the sibling at \a row and \a column for the item at \a index, or an + invalid QModelIndex if there is no sibling at that location. + + sibling() is just a convenience function that finds the item's parent, and + uses it to retrieve the index of the child item in the specified \a row and + \a column. + + \sa index(), QModelIndex::row(), QModelIndex::column() +*/ + + +/*! + \fn int QAbstractItemModel::rowCount(const QModelIndex &parent) const + + Returns the number of rows under the given \a parent. When the parent is + valid it means that rowCount is returning the number of children of parent. + + \note When implementing a table based model, rowCount() should return 0 + when the parent is valid. + + \sa columnCount() +*/ + +/*! + \fn int QAbstractItemModel::columnCount(const QModelIndex &parent) const + + Returns the number of columns for the children of the given \a parent. + + In most subclasses, the number of columns is independent of the \a parent. + + For example: + + \snippet examples/itemviews/simpledommodel/dommodel.cpp 2 + + \note When implementing a table based model, columnCount() should return 0 + when the parent is valid. + + \sa rowCount() +*/ + +/*! + \fn void QAbstractItemModel::dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QSet &roles = QSet()) + + This signal is emitted whenever the data in an existing item changes. + + If the items are of the same parent, the affected ones are those between + \a topLeft and \a bottomRight inclusive. If the items do not have the same + parent, the behavior is undefined. + + When reimplementing the setData() function, this signal must be emitted + explicitly. + + The optional roles argument can be used to specify which data roles have actually + been modified. An empty set in the roles argument means that all roles should be + considered modified. + + \sa headerDataChanged(), setData(), layoutChanged() +*/ + +/*! + \fn void QAbstractItemModel::rowsInserted(const QModelIndex &parent, int start, int end) + + This signal is emitted after rows have been inserted into the + model. The new items are those between \a start and \a end + inclusive, under the given \a parent item. + + \note Components connected to this signal use it to adapt to changes in the + model's dimensions. It can only be emitted by the QAbstractItemModel + implementation, and cannot be explicitly emitted in subclass code. + + \sa insertRows(), beginInsertRows() +*/ + +/*! + \fn void QAbstractItemModel::rowsAboutToBeInserted(const QModelIndex &parent, int start, int end) + + This signal is emitted just before rows are inserted into the model. The + new items will be positioned between \a start and \a end inclusive, under + the given \a parent item. + + \note Components connected to this signal use it to adapt to changes + in the model's dimensions. It can only be emitted by the QAbstractItemModel + implementation, and cannot be explicitly emitted in subclass code. + + \sa insertRows(), beginInsertRows() +*/ + +/*! + \fn void QAbstractItemModel::rowsRemoved(const QModelIndex &parent, int start, int end) + + This signal is emitted after rows have been removed from the model. The + removed items are those between \a start and \a end inclusive, under the + given \a parent item. + + \note Components connected to this signal use it to adapt to changes + in the model's dimensions. It can only be emitted by the QAbstractItemModel + implementation, and cannot be explicitly emitted in subclass code. + + \sa removeRows(), beginRemoveRows() +*/ + +/*! + \fn void QAbstractItemModel::rowsAboutToBeRemoved(const QModelIndex &parent, int start, int end) + + This signal is emitted just before rows are removed from the model. The + items that will be removed are those between \a start and \a end inclusive, + under the given \a parent item. + + \note Components connected to this signal use it to adapt to changes + in the model's dimensions. It can only be emitted by the QAbstractItemModel + implementation, and cannot be explicitly emitted in subclass code. + + \sa removeRows(), beginRemoveRows() +*/ + +/*! + \fn void QAbstractItemModel::rowsMoved(const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destinationParent, int destinationRow) + \since 4.6 + + This signal is emitted after rows have been moved within the + model. The items between \a sourceStart and \a sourceEnd + inclusive, under the given \a sourceParent item have been moved to \a destinationParent + starting at the row \a destinationRow. + + \bold{Note:} Components connected to this signal use it to adapt to changes + in the model's dimensions. It can only be emitted by the QAbstractItemModel + implementation, and cannot be explicitly emitted in subclass code. + + \sa beginMoveRows() +*/ + +/*! + \fn void QAbstractItemModel::rowsAboutToBeMoved(const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destinationParent, int destinationRow) + \since 4.6 + + This signal is emitted just before rows are moved within the + model. The items that will be moved are those between \a sourceStart and \a sourceEnd + inclusive, under the given \a sourceParent item. They will be moved to \a destinationParent + starting at the row \a destinationRow. + + \bold{Note:} Components connected to this signal use it to adapt to changes + in the model's dimensions. It can only be emitted by the QAbstractItemModel + implementation, and cannot be explicitly emitted in subclass code. + + \sa beginMoveRows() +*/ + +/*! + \fn void QAbstractItemModel::columnsMoved(const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destinationParent, int destinationColumn) + \since 4.6 + + This signal is emitted after columns have been moved within the + model. The items between \a sourceStart and \a sourceEnd + inclusive, under the given \a sourceParent item have been moved to \a destinationParent + starting at the column \a destinationColumn. + + \bold{Note:} Components connected to this signal use it to adapt to changes + in the model's dimensions. It can only be emitted by the QAbstractItemModel + implementation, and cannot be explicitly emitted in subclass code. + + \sa beginMoveRows() +*/ + +/*! + \fn void QAbstractItemModel::columnsAboutToBeMoved(const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destinationParent, int destinationColumn) + \since 4.6 + + This signal is emitted just before columns are moved within the + model. The items that will be moved are those between \a sourceStart and \a sourceEnd + inclusive, under the given \a sourceParent item. They will be moved to \a destinationParent + starting at the column \a destinationColumn. + + \bold{Note:} Components connected to this signal use it to adapt to changes + in the model's dimensions. It can only be emitted by the QAbstractItemModel + implementation, and cannot be explicitly emitted in subclass code. + + \sa beginMoveRows() +*/ + +/*! + \fn void QAbstractItemModel::columnsInserted(const QModelIndex &parent, int start, int end) + + This signal is emitted after columns have been inserted into the model. The + new items are those between \a start and \a end inclusive, under the given + \a parent item. + + \note Components connected to this signal use it to adapt to changes in the + model's dimensions. It can only be emitted by the QAbstractItemModel + implementation, and cannot be explicitly emitted in subclass code. + + \sa insertColumns(), beginInsertColumns() +*/ + +/*! + \fn void QAbstractItemModel::columnsAboutToBeInserted(const QModelIndex &parent, int start, int end) + + This signal is emitted just before columns are inserted into the model. The + new items will be positioned between \a start and \a end inclusive, under + the given \a parent item. + + \note Components connected to this signal use it to adapt to changes in the + model's dimensions. It can only be emitted by the QAbstractItemModel + implementation, and cannot be explicitly emitted in subclass code. + + \sa insertColumns(), beginInsertColumns() +*/ + +/*! + \fn void QAbstractItemModel::columnsRemoved(const QModelIndex &parent, int start, int end) + + This signal is emitted after columns have been removed from the model. + The removed items are those between \a start and \a end inclusive, + under the given \a parent item. + + \note Components connected to this signal use it to adapt to changes in + the model's dimensions. It can only be emitted by the QAbstractItemModel + implementation, and cannot be explicitly emitted in subclass code. + + \sa removeColumns(), beginRemoveColumns() +*/ + +/*! + \fn void QAbstractItemModel::columnsAboutToBeRemoved(const QModelIndex &parent, int start, int end) + + This signal is emitted just before columns are removed from the model. The + items to be removed are those between \a start and \a end inclusive, under + the given \a parent item. + + \note Components connected to this signal use it to adapt to changes in the + model's dimensions. It can only be emitted by the QAbstractItemModel + implementation, and cannot be explicitly emitted in subclass code. + + \sa removeColumns(), beginRemoveColumns() +*/ + +/*! + Returns true if the model returns a valid QModelIndex for \a row and + \a column with \a parent, otherwise returns false. +*/ +bool QAbstractItemModel::hasIndex(int row, int column, const QModelIndex &parent) const +{ + if (row < 0 || column < 0) + return false; + return row < rowCount(parent) && column < columnCount(parent); +} + + +/*! + Returns true if \a parent has any children; otherwise returns false. + + Use rowCount() on the parent to find out the number of children. + + \sa parent() index() +*/ +bool QAbstractItemModel::hasChildren(const QModelIndex &parent) const +{ + return (rowCount(parent) > 0) && (columnCount(parent) > 0); +} + + +/*! + Returns a map with values for all predefined roles in the model for the + item at the given \a index. + + Reimplement this function if you want to extend the default behavior of + this function to include custom roles in the map. + + \sa Qt::ItemDataRole, data() +*/ +QMap QAbstractItemModel::itemData(const QModelIndex &index) const +{ + QMap roles; + for (int i = 0; i < Qt::UserRole; ++i) { + QVariant variantData = data(index, i); + if (variantData.isValid()) + roles.insert(i, variantData); + } + return roles; +} + +/*! + Sets the \a role data for the item at \a index to \a value. + + Returns true if successful; otherwise returns false. + + The dataChanged() signal should be emitted if the data was successfully + set. + + The base class implementation returns false. This function and data() must + be reimplemented for editable models. + + \sa Qt::ItemDataRole, data(), itemData() +*/ +bool QAbstractItemModel::setData(const QModelIndex &index, const QVariant &value, int role) +{ + Q_UNUSED(index); + Q_UNUSED(value); + Q_UNUSED(role); + return false; +} + +/*! + \fn QVariant QAbstractItemModel::data(const QModelIndex &index, int role) const = 0 + + Returns the data stored under the given \a role for the item referred to + by the \a index. + + \note If you do not have a value to return, return an \bold invalid + QVariant instead of returning 0. + + \sa Qt::ItemDataRole, setData(), headerData() +*/ + +/*! + Sets the role data for the item at \a index to the associated value in + \a roles, for every Qt::ItemDataRole. + + Returns true if successful; otherwise returns false. + + Roles that are not in \a roles will not be modified. + + \sa setData() data() itemData() +*/ +bool QAbstractItemModel::setItemData(const QModelIndex &index, const QMap &roles) +{ + bool b = true; + for (QMap::ConstIterator it = roles.begin(); it != roles.end(); ++it) + b = b && setData(index, it.value(), it.key()); + return b; +} + +/*! + Returns a list of MIME types that can be used to describe a list of model + indexes. + + \sa mimeData() +*/ +QStringList QAbstractItemModel::mimeTypes() const +{ + QStringList types; + types << QLatin1String("application/x-qabstractitemmodeldatalist"); + return types; +} + +/*! + Returns an object that contains serialized items of data corresponding to + the list of \a indexes specified. The formats used to describe the encoded + data is obtained from the mimeTypes() function. + + If the list of indexes is empty, or there are no supported MIME types, 0 is + returned rather than a serialized empty list. + + \sa mimeTypes(), dropMimeData() +*/ +QMimeData *QAbstractItemModel::mimeData(const QModelIndexList &indexes) const +{ + if (indexes.count() <= 0) + return 0; + QStringList types = mimeTypes(); + if (types.isEmpty()) + return 0; + QMimeData *data = new QMimeData(); + QString format = types.at(0); + QByteArray encoded; + QDataStream stream(&encoded, QIODevice::WriteOnly); + encodeData(indexes, stream); + data->setData(format, encoded); + return data; +} + +/*! + Handles the \a data supplied by a drag and drop operation that ended with + the given \a action. + + Returns true if the data and action can be handled by the model; otherwise + returns false. + + Although the specified \a row, \a column and \a parent indicate the + location of an item in the model where the operation ended, it is the + responsibility of the view to provide a suitable location for where the + data should be inserted. + + For instance, a drop action on an item in a QTreeView can result in new + items either being inserted as children of the item specified by \a row, + \a column, and \a parent, or as siblings of the item. + + When row and column are -1 it means that it is up to the model to decide + where to place the data. This can occur in a tree when data is dropped on + a parent. Models will usually append the data to the parent in this case. + + \sa supportedDropActions(), {Using drag and drop with item views} +*/ +bool QAbstractItemModel::dropMimeData(const QMimeData *data, Qt::DropAction action, + int row, int column, const QModelIndex &parent) +{ + // check if the action is supported + if (!data || !(action == Qt::CopyAction || action == Qt::MoveAction)) + return false; + // check if the format is supported + QStringList types = mimeTypes(); + if (types.isEmpty()) + return false; + QString format = types.at(0); + if (!data->hasFormat(format)) + return false; + if (row > rowCount(parent)) + row = rowCount(parent); + if (row == -1) + row = rowCount(parent); + if (column == -1) + column = 0; + // decode and insert + QByteArray encoded = data->data(format); + QDataStream stream(&encoded, QIODevice::ReadOnly); + return decodeData(row, column, parent, stream); +} + +/*! + \since 4.2 + + Returns the drop actions supported by this model. + + The default implementation returns Qt::CopyAction. Reimplement this + function if you wish to support additional actions. You must also + reimplement the dropMimeData() function to handle the additional + operations. + + \sa dropMimeData(), Qt::DropActions, {Using drag and drop with item + views} +*/ +Qt::DropActions QAbstractItemModel::supportedDropActions() const +{ + return Qt::CopyAction; +} + +/*! + Returns the actions supported by the data in this model. + + The default implementation returns supportedDropActions() unless specific + values have been set with setSupportedDragActions(). + + supportedDragActions() is used by QAbstractItemView::startDrag() as the + default values when a drag occurs. + + \sa Qt::DropActions, {Using drag and drop with item views} +*/ +Qt::DropActions QAbstractItemModel::supportedDragActions() const +{ + // ### Qt 5: make this virtual or these properties + Q_D(const QAbstractItemModel); + if (d->supportedDragActions != -1) + return d->supportedDragActions; + return supportedDropActions(); +} + +/*! + \since 4.2 + + Sets the supported drag \a actions for the items in the model. + + \sa supportedDragActions(), {Using drag and drop with item views} +*/ +void QAbstractItemModel::setSupportedDragActions(Qt::DropActions actions) +{ + Q_D(QAbstractItemModel); + d->supportedDragActions = actions; +} + +/*! + \note The base class implementation of this function does nothing and + returns false. + + On models that support this, inserts \a count rows into the model before + the given \a row. Items in the new row will be children of the item + represented by the \a parent model index. + + If \a row is 0, the rows are prepended to any existing rows in the parent. + + If \a row is rowCount(), the rows are appended to any existing rows in the + parent. + + If \a parent has no children, a single column with \a count rows is + inserted. + + Returns true if the rows were successfully inserted; otherwise returns + false. + + If you implement your own model, you can reimplement this function if you + want to support insertions. Alternatively, you can provide your own API for + altering the data. In either case, you will need to call + beginInsertRows() and endInsertRows() to notify other components that the + model has changed. + + \sa insertColumns(), removeRows(), beginInsertRows(), endInsertRows() +*/ +bool QAbstractItemModel::insertRows(int, int, const QModelIndex &) +{ + return false; +} + +/*! + On models that support this, inserts \a count new columns into the model + before the given \a column. The items in each new column will be children + of the item represented by the \a parent model index. + + If \a column is 0, the columns are prepended to any existing columns. + + If \a column is columnCount(), the columns are appended to any existing + columns. + + If \a parent has no children, a single row with \a count columns is + inserted. + + Returns true if the columns were successfully inserted; otherwise returns + false. + + The base class implementation does nothing and returns false. + + If you implement your own model, you can reimplement this function if you + want to support insertions. Alternatively, you can provide your own API for + altering the data. + + \sa insertRows(), removeColumns(), beginInsertColumns(), endInsertColumns() +*/ +bool QAbstractItemModel::insertColumns(int, int, const QModelIndex &) +{ + return false; +} + +/*! + On models that support this, removes \a count rows starting with the given + \a row under parent \a parent from the model. + + Returns true if the rows were successfully removed; otherwise returns + false. + + The base class implementation does nothing and returns false. + + If you implement your own model, you can reimplement this function if you + want to support removing. Alternatively, you can provide your own API for + altering the data. + + \sa removeRow(), removeColumns(), insertColumns(), beginRemoveRows(), + endRemoveRows() +*/ +bool QAbstractItemModel::removeRows(int, int, const QModelIndex &) +{ + return false; +} + +/*! + On models that support this, removes \a count columns starting with the + given \a column under parent \a parent from the model. + + Returns true if the columns were successfully removed; otherwise returns + false. + + The base class implementation does nothing and returns false. + + If you implement your own model, you can reimplement this function if you + want to support removing. Alternatively, you can provide your own API for + altering the data. + + \sa removeColumn(), removeRows(), insertColumns(), beginRemoveColumns(), + endRemoveColumns() +*/ +bool QAbstractItemModel::removeColumns(int, int, const QModelIndex &) +{ + return false; +} + +/*! + Fetches any available data for the items with the parent specified by the + \a parent index. + + Reimplement this if you are populating your model incrementally. + + The default implementation does nothing. + + \sa canFetchMore() +*/ +void QAbstractItemModel::fetchMore(const QModelIndex &) +{ + // do nothing +} + +/*! + Returns true if there is more data available for \a parent; otherwise + returns false. + + The default implementation always returns false. + + If canFetchMore() returns true, QAbstractItemView will call fetchMore(). + However, the fetchMore() function is only called when the model is being + populated incrementally. + + \sa fetchMore() +*/ +bool QAbstractItemModel::canFetchMore(const QModelIndex &) const +{ + return false; +} + +/*! + Returns the item flags for the given \a index. + + The base class implementation returns a combination of flags that enables + the item (\c ItemIsEnabled) and allows it to be selected + (\c ItemIsSelectable). + + \sa Qt::ItemFlags +*/ +Qt::ItemFlags QAbstractItemModel::flags(const QModelIndex &index) const +{ + Q_D(const QAbstractItemModel); + if (!d->indexValid(index)) + return 0; + + return Qt::ItemIsSelectable|Qt::ItemIsEnabled; +} + +/*! + Sorts the model by \a column in the given \a order. + + The base class implementation does nothing. +*/ +void QAbstractItemModel::sort(int column, Qt::SortOrder order) +{ + Q_UNUSED(column); + Q_UNUSED(order); + // do nothing +} + +/*! + Returns a model index for the buddy of the item represented by \a index. + When the user wants to edit an item, the view will call this function to + check whether another item in the model should be edited instead. Then, the + view will construct a delegate using the model index returned by the buddy + item. + + The default implementation of this function has each item as its own buddy. +*/ +QModelIndex QAbstractItemModel::buddy(const QModelIndex &index) const +{ + return index; +} + +/*! + Returns a list of indexes for the items in the column of the \a start index + where data stored under the given \a role matches the specified \a value. + The way the search is performed is defined by the \a flags given. The list + that is returned may be empty. + + The search begins from the \a start index, and continues until the number + of matching data items equals \a hits, the search reaches the last row, or + the search reaches \a start again - depending on whether \c MatchWrap is + specified in \a flags. If you want to search for all matching items, use + \a hits = -1. + + By default, this function will perform a wrapping, string-based comparison + on all items, searching for items that begin with the search term specified + by \a value. + + \note The default implementation of this function only searches columns. + Reimplement this function to include a different search behavior. +*/ +QModelIndexList QAbstractItemModel::match(const QModelIndex &start, int role, + const QVariant &value, int hits, + Qt::MatchFlags flags) const +{ + QModelIndexList result; + uint matchType = flags & 0x0F; + Qt::CaseSensitivity cs = flags & Qt::MatchCaseSensitive ? Qt::CaseSensitive : Qt::CaseInsensitive; + bool recurse = flags & Qt::MatchRecursive; + bool wrap = flags & Qt::MatchWrap; + bool allHits = (hits == -1); + QString text; // only convert to a string if it is needed + QModelIndex p = parent(start); + int from = start.row(); + int to = rowCount(p); + + // iterates twice if wrapping + for (int i = 0; (wrap && i < 2) || (!wrap && i < 1); ++i) { + for (int r = from; (r < to) && (allHits || result.count() < hits); ++r) { + QModelIndex idx = index(r, start.column(), p); + if (!idx.isValid()) + continue; + QVariant v = data(idx, role); + // QVariant based matching + if (matchType == Qt::MatchExactly) { + if (value == v) + result.append(idx); + } else { // QString based matching + if (text.isEmpty()) // lazy conversion + text = value.toString(); + QString t = v.toString(); + switch (matchType) { + case Qt::MatchRegExp: + if (QRegExp(text, cs).exactMatch(t)) + result.append(idx); + break; + case Qt::MatchWildcard: + if (QRegExp(text, cs, QRegExp::Wildcard).exactMatch(t)) + result.append(idx); + break; + case Qt::MatchStartsWith: + if (t.startsWith(text, cs)) + result.append(idx); + break; + case Qt::MatchEndsWith: + if (t.endsWith(text, cs)) + result.append(idx); + break; + case Qt::MatchFixedString: + if (t.compare(text, cs) == 0) + result.append(idx); + break; + case Qt::MatchContains: + default: + if (t.contains(text, cs)) + result.append(idx); + } + } + if (recurse && hasChildren(idx)) { // search the hierarchy + result += match(index(0, idx.column(), idx), role, + (text.isEmpty() ? value : text), + (allHits ? -1 : hits - result.count()), flags); + } + } + // prepare for the next iteration + from = 0; + to = start.row(); + } + return result; +} + +/*! + Returns the row and column span of the item represented by \a index. + + \note Currently, span is not used. +*/ + +QSize QAbstractItemModel::span(const QModelIndex &) const +{ + return QSize(1, 1); +} + +/*! + \since 4.6 + + Sets the model's role names to \a roleNames. + + This function allows mapping of role identifiers to role property names in + Declarative UI. This function must be called before the model is used. + Modifying the role names after the model has been set may result in + undefined behaviour. + + \sa roleNames() +*/ +void QAbstractItemModel::setRoleNames(const QHash &roleNames) +{ + Q_D(QAbstractItemModel); + d->roleNames = roleNames; +} + +/*! + \since 4.6 + + Returns the model's role names. + + \sa setRoleNames() +*/ +const QHash &QAbstractItemModel::roleNames() const +{ + Q_D(const QAbstractItemModel); + return d->roleNames; +} + +/*! + Lets the model know that it should submit cached information to permanent + storage. This function is typically used for row editing. + + Returns true if there is no error; otherwise returns false. + + \sa revert() +*/ + +bool QAbstractItemModel::submit() +{ + return true; +} + +/*! + Lets the model know that it should discard cached information. This + function is typically used for row editing. + + \sa submit() +*/ + +void QAbstractItemModel::revert() +{ + // do nothing +} + +/*! + Returns the data for the given \a role and \a section in the header with + the specified \a orientation. + + For horizontal headers, the section number corresponds to the column + number. Similarly, for vertical headers, the section number corresponds to + the row number. + + \sa Qt::ItemDataRole, setHeaderData(), QHeaderView +*/ + +QVariant QAbstractItemModel::headerData(int section, Qt::Orientation orientation, int role) const +{ + Q_UNUSED(orientation); + if (role == Qt::DisplayRole) + return section + 1; + return QVariant(); +} + +/*! + Sets the data for the given \a role and \a section in the header with the + specified \a orientation to the \a value supplied. + + Returns true if the header's data was updated; otherwise returns false. + + When reimplementing this function, the headerDataChanged() signal must be + emitted explicitly. + + \sa Qt::ItemDataRole, headerData() +*/ + +bool QAbstractItemModel::setHeaderData(int section, Qt::Orientation orientation, + const QVariant &value, int role) +{ + Q_UNUSED(section); + Q_UNUSED(orientation); + Q_UNUSED(value); + Q_UNUSED(role); + return false; +} + +/*! + \fn QModelIndex QAbstractItemModel::createIndex(int row, int column, void *ptr) const + + Creates a model index for the given \a row and \a column with the internal + pointer \a ptr. + + When using a QSortFilterProxyModel, its indexes have their own internal + pointer. It is not advisable to access this internal pointer outside of the + model. Use the data() function instead. + + This function provides a consistent interface that model subclasses must + use to create model indexes. +*/ + +/*! + \fn QModelIndex QAbstractItemModel::createIndex(int row, int column, int id) const + \obsolete + + Use QModelIndex + QAbstractItemModel::createIndex(int row, int column, quint32 id) instead. +*/ + +/*! + \fn QModelIndex QAbstractItemModel::createIndex(int row, int column, quint32 id) const + + Creates a model index for the given \a row and \a column with the internal + identifier, \a id. + + This function provides a consistent interface that model subclasses must + use to create model indexes. + + \sa QModelIndex::internalId() +*/ + +/*! + \internal +*/ +void QAbstractItemModel::encodeData(const QModelIndexList &indexes, QDataStream &stream) const +{ + QModelIndexList::ConstIterator it = indexes.begin(); + for (; it != indexes.end(); ++it) + stream << (*it).row() << (*it).column() << itemData(*it); +} + +/*! + \internal + */ +bool QAbstractItemModel::decodeData(int row, int column, const QModelIndex &parent, + QDataStream &stream) +{ + int top = INT_MAX; + int left = INT_MAX; + int bottom = 0; + int right = 0; + QVector rows, columns; + QVector > data; + + while (!stream.atEnd()) { + int r, c; + QMap v; + stream >> r >> c >> v; + rows.append(r); + columns.append(c); + data.append(v); + top = qMin(r, top); + left = qMin(c, left); + bottom = qMax(r, bottom); + right = qMax(c, right); + } + + // insert the dragged items into the table, use a bit array to avoid overwriting items, + // since items from different tables can have the same row and column + int dragRowCount = 0; + int dragColumnCount = right - left + 1; + + // Compute the number of continuous rows upon insertion and modify the rows to match + QVector rowsToInsert(bottom + 1); + for (int i = 0; i < rows.count(); ++i) + rowsToInsert[rows.at(i)] = 1; + for (int i = 0; i < rowsToInsert.count(); ++i) { + if (rowsToInsert[i] == 1){ + rowsToInsert[i] = dragRowCount; + ++dragRowCount; + } + } + for (int i = 0; i < rows.count(); ++i) + rows[i] = top + rowsToInsert[rows[i]]; + + QBitArray isWrittenTo(dragRowCount * dragColumnCount); + + // make space in the table for the dropped data + int colCount = columnCount(parent); + if (colCount == 0) { + insertColumns(colCount, dragColumnCount - colCount, parent); + colCount = columnCount(parent); + } + insertRows(row, dragRowCount, parent); + + row = qMax(0, row); + column = qMax(0, column); + + QVector newIndexes(data.size()); + // set the data in the table + for (int j = 0; j < data.size(); ++j) { + int relativeRow = rows.at(j) - top; + int relativeColumn = columns.at(j) - left; + int destinationRow = relativeRow + row; + int destinationColumn = relativeColumn + column; + int flat = (relativeRow * dragColumnCount) + relativeColumn; + // if the item was already written to, or we just can't fit it in the table, create a new row + if (destinationColumn >= colCount || isWrittenTo.testBit(flat)) { + destinationColumn = qBound(column, destinationColumn, colCount - 1); + destinationRow = row + dragRowCount; + insertRows(row + dragRowCount, 1, parent); + flat = (dragRowCount * dragColumnCount) + relativeColumn; + isWrittenTo.resize(++dragRowCount * dragColumnCount); + } + if (!isWrittenTo.testBit(flat)) { + newIndexes[j] = index(destinationRow, destinationColumn, parent); + isWrittenTo.setBit(flat); + } + } + + for(int k = 0; k < newIndexes.size(); k++) { + if (newIndexes.at(k).isValid()) + setItemData(newIndexes.at(k), data.at(k)); + } + + return true; +} + +/*! + Begins a row insertion operation. + + When reimplementing insertRows() in a subclass, you must call this function + \e before inserting data into the model's underlying data store. + + The \a parent index corresponds to the parent into which the new rows are + inserted; \a first and \a last are the row numbers that the new rows will + have after they have been inserted. + + \table 80% + \row + \o \inlineimage modelview-begin-insert-rows.png Inserting rows + \o Specify the first and last row numbers for the span of rows you + want to insert into an item in a model. + + For example, as shown in the diagram, we insert three rows before + row 2, so \a first is 2 and \a last is 4: + + \snippet doc/src/snippets/code/src_corelib_kernel_qabstractitemmodel.cpp 0 + + This inserts the three new rows as rows 2, 3, and 4. + \row + \o \inlineimage modelview-begin-append-rows.png Appending rows + \o To append rows, insert them after the last row. + + For example, as shown in the diagram, we append two rows to a + collection of 4 existing rows (ending in row 3), so \a first is 4 + and \a last is 5: + + \snippet doc/src/snippets/code/src_corelib_kernel_qabstractitemmodel.cpp 1 + + This appends the two new rows as rows 4 and 5. + \endtable + + \note This function emits the rowsAboutToBeInserted() signal which + connected views (or proxies) must handle before the data is inserted. + Otherwise, the views may end up in an invalid state. + \sa endInsertRows() +*/ +void QAbstractItemModel::beginInsertRows(const QModelIndex &parent, int first, int last) +{ + Q_ASSERT(first >= 0); + Q_ASSERT(last >= first); + Q_D(QAbstractItemModel); + d->changes.push(QAbstractItemModelPrivate::Change(parent, first, last)); + emit rowsAboutToBeInserted(parent, first, last); + d->rowsAboutToBeInserted(parent, first, last); +} + +/*! + Ends a row insertion operation. + + When reimplementing insertRows() in a subclass, you must call this function + \e after inserting data into the model's underlying data store. + + \sa beginInsertRows() +*/ +void QAbstractItemModel::endInsertRows() +{ + Q_D(QAbstractItemModel); + QAbstractItemModelPrivate::Change change = d->changes.pop(); + d->rowsInserted(change.parent, change.first, change.last); + emit rowsInserted(change.parent, change.first, change.last); +} + +/*! + Begins a row removal operation. + + When reimplementing removeRows() in a subclass, you must call this + function \e before removing data from the model's underlying data store. + + The \a parent index corresponds to the parent from which the new rows are + removed; \a first and \a last are the row numbers of the rows to be + removed. + + \table 80% + \row + \o \inlineimage modelview-begin-remove-rows.png Removing rows + \o Specify the first and last row numbers for the span of rows you + want to remove from an item in a model. + + For example, as shown in the diagram, we remove the two rows from + row 2 to row 3, so \a first is 2 and \a last is 3: + + \snippet doc/src/snippets/code/src_corelib_kernel_qabstractitemmodel.cpp 2 + \endtable + + \note This function emits the rowsAboutToBeRemoved() signal which connected + views (or proxies) must handle before the data is removed. Otherwise, the + views may end up in an invalid state. + + \sa endRemoveRows() +*/ +void QAbstractItemModel::beginRemoveRows(const QModelIndex &parent, int first, int last) +{ + Q_ASSERT(first >= 0); + Q_ASSERT(last >= first); + Q_D(QAbstractItemModel); + d->changes.push(QAbstractItemModelPrivate::Change(parent, first, last)); + emit rowsAboutToBeRemoved(parent, first, last); + d->rowsAboutToBeRemoved(parent, first, last); +} + +/*! + Ends a row removal operation. + + When reimplementing removeRows() in a subclass, you must call this function + \e after removing data from the model's underlying data store. + + \sa beginRemoveRows() +*/ +void QAbstractItemModel::endRemoveRows() +{ + Q_D(QAbstractItemModel); + QAbstractItemModelPrivate::Change change = d->changes.pop(); + d->rowsRemoved(change.parent, change.first, change.last); + emit rowsRemoved(change.parent, change.first, change.last); +} + +/*! + Returns whether a move operation is valid. + + A move operation is not allowed if it moves a continuous range of rows to a destination within + itself, or if it attempts to move a row to one of its own descendants. + + \internal +*/ +bool QAbstractItemModelPrivate::allowMove(const QModelIndex &srcParent, int start, int end, const QModelIndex &destinationParent, int destinationStart, Qt::Orientation orientation) +{ + // Don't move the range within itself. + if (destinationParent == srcParent) + return !(destinationStart >= start && destinationStart <= end + 1); + + QModelIndex destinationAncestor = destinationParent; + int pos = (Qt::Vertical == orientation) ? destinationAncestor.row() : destinationAncestor.column(); + forever { + if (destinationAncestor == srcParent) { + if (pos >= start && pos <= end) + return false; + break; + } + + if (!destinationAncestor.isValid()) + break; + + pos = (Qt::Vertical == orientation) ? destinationAncestor.row() : destinationAncestor.column(); + destinationAncestor = destinationAncestor.parent(); + } + + return true; +} + +/*! + \since 4.6 + + Begins a row move operation. + + When reimplementing a subclass, this method simplifies moving + entities in your model. This method is responsible for moving + persistent indexes in the model, which you would otherwise be + required to do yourself. Using beginMoveRows and endMoveRows + is an alternative to emitting layoutAboutToBeChanged and + layoutChanged directly along with changePersistentIndexes. + + The \a sourceParent index corresponds to the parent from which the + rows are moved; \a sourceFirst and \a sourceLast are the first and last + row numbers of the rows to be moved. The \a destinationParent index + corresponds to the parent into which those rows are moved. The \a + destinationChild is the row to which the rows will be moved. That + is, the index at row \a sourceFirst in \a sourceParent will become + row \a destinationChild in \a destinationParent, followed by all other + rows up to \a sourceLast. + + However, when moving rows down in the same parent (\a sourceParent + and \a destinationParent are equal), the rows will be placed before the + \a destinationChild index. That is, if you wish to move rows 0 and 1 so + they will become rows 1 and 2, \a destinationChild should be 3. In this + case, the new index for the source row \c i (which is between + \a sourceFirst and \a sourceLast) is equal to + \c {(destinationChild-sourceLast-1+i)}. + + Note that if \a sourceParent and \a destinationParent are the same, + you must ensure that the \a destinationChild is not within the range + of \a sourceFirst and \a sourceLast + 1. You must also ensure that you + do not attempt to move a row to one of its own children or ancestors. + This method returns false if either condition is true, in which case you + should abort your move operation. + + \table 80% + \row + \o \inlineimage modelview-move-rows-1.png Moving rows to another parent + \o Specify the first and last row numbers for the span of rows in + the source parent you want to move in the model. Also specify + the row in the destination parent to move the span to. + + For example, as shown in the diagram, we move three rows from + row 2 to 4 in the source, so \a sourceFirst is 2 and \a sourceLast is 4. + We move those items to above row 2 in the destination, so \a destinationChild is 2. + + \snippet doc/src/snippets/code/src_corelib_kernel_qabstractitemmodel.cpp 6 + + This moves the three rows rows 2, 3, and 4 in the source to become 2, 3 and 4 in + the destination. Other affected siblings are displaced accordingly. + \row + \o \inlineimage modelview-move-rows-2.png Moving rows to append to another parent + \o To append rows to another parent, move them to after the last row. + + For example, as shown in the diagram, we move three rows to a + collection of 6 existing rows (ending in row 5), so \a destinationChild is 6: + + \snippet doc/src/snippets/code/src_corelib_kernel_qabstractitemmodel.cpp 7 + + This moves the target rows to the end of the target parent as 6, 7 and 8. + \row + \o \inlineimage modelview-move-rows-3.png Moving rows in the same parent up + \o To move rows within the same parent, specify the row to move them to. + + For example, as shown in the diagram, we move one item from row 2 to row 0, + so \a sourceFirst and \a sourceLast are 2 and \a destinationChild is 0. + + \snippet doc/src/snippets/code/src_corelib_kernel_qabstractitemmodel.cpp 8 + + Note that other rows may be displaced accordingly. Note also that when moving + items within the same parent you should not attempt invalid or no-op moves. In + the above example, item 2 is at row 2 before the move, so it can not be moved + to row 2 (where it is already) or row 3 (no-op as row 3 means above row 3, where + it is already) + + \row + \o \inlineimage modelview-move-rows-4.png Moving rows in the same parent down + \o To move rows within the same parent, specify the row to move them to. + + For example, as shown in the diagram, we move one item from row 2 to row 4, + so \a sourceFirst and \a sourceLast are 2 and \a destinationChild is 4. + + \snippet doc/src/snippets/code/src_corelib_kernel_qabstractitemmodel.cpp 9 + + Note that other rows may be displaced accordingly. + \endtable + + \sa endMoveRows() +*/ +bool QAbstractItemModel::beginMoveRows(const QModelIndex &sourceParent, int sourceFirst, int sourceLast, const QModelIndex &destinationParent, int destinationChild) +{ + Q_ASSERT(sourceFirst >= 0); + Q_ASSERT(sourceLast >= sourceFirst); + Q_ASSERT(destinationChild >= 0); + Q_D(QAbstractItemModel); + + if (!d->allowMove(sourceParent, sourceFirst, sourceLast, destinationParent, destinationChild, Qt::Vertical)) { + return false; + } + + QAbstractItemModelPrivate::Change sourceChange(sourceParent, sourceFirst, sourceLast); + sourceChange.needsAdjust = sourceParent.isValid() && sourceParent.row() >= destinationChild && sourceParent.parent() == destinationParent; + d->changes.push(sourceChange); + int destinationLast = destinationChild + (sourceLast - sourceFirst); + QAbstractItemModelPrivate::Change destinationChange(destinationParent, destinationChild, destinationLast); + destinationChange.needsAdjust = destinationParent.isValid() && destinationParent.row() >= sourceLast && destinationParent.parent() == sourceParent; + d->changes.push(destinationChange); + + emit rowsAboutToBeMoved(sourceParent, sourceFirst, sourceLast, destinationParent, destinationChild); + d->itemsAboutToBeMoved(sourceParent, sourceFirst, sourceLast, destinationParent, destinationChild, Qt::Vertical); + return true; +} + +/*! + Ends a row move operation. + + When implementing a subclass, you must call this + function \e after moving data within the model's underlying data + store. + + \sa beginMoveRows() + + \since 4.6 +*/ +void QAbstractItemModel::endMoveRows() +{ + Q_D(QAbstractItemModel); + + QAbstractItemModelPrivate::Change insertChange = d->changes.pop(); + QAbstractItemModelPrivate::Change removeChange = d->changes.pop(); + + QModelIndex adjustedSource = removeChange.parent; + QModelIndex adjustedDestination = insertChange.parent; + + const int numMoved = removeChange.last - removeChange.first + 1; + if (insertChange.needsAdjust) + adjustedDestination = createIndex(adjustedDestination.row() - numMoved, adjustedDestination.column(), adjustedDestination.internalPointer()); + + if (removeChange.needsAdjust) + adjustedSource = createIndex(adjustedSource.row() + numMoved, adjustedSource.column(), adjustedSource.internalPointer()); + + d->itemsMoved(adjustedSource, removeChange.first, removeChange.last, adjustedDestination, insertChange.first, Qt::Vertical); + + emit rowsMoved(adjustedSource, removeChange.first, removeChange.last, adjustedDestination, insertChange.first); +} + +/*! + Begins a column insertion operation. + + When reimplementing insertColumns() in a subclass, you must call this + function \e before inserting data into the model's underlying data store. + + The \a parent index corresponds to the parent into which the new columns + are inserted; \a first and \a last are the column numbers of the new + columns will have after they have been inserted. + + \table 80% + \row + \o \inlineimage modelview-begin-insert-columns.png Inserting columns + \o Specify the first and last column numbers for the span of columns + you want to insert into an item in a model. + + For example, as shown in the diagram, we insert three columns + before column 4, so \a first is 4 and \a last is 6: + + \snippet doc/src/snippets/code/src_corelib_kernel_qabstractitemmodel.cpp 3 + + This inserts the three new columns as columns 4, 5, and 6. + \row + \o \inlineimage modelview-begin-append-columns.png Appending columns + \o To append columns, insert them after the last column. + + For example, as shown in the diagram, we append three columns to a + collection of six existing columns (ending in column 5), so + \a first is 6 and \a last is 8: + + \snippet doc/src/snippets/code/src_corelib_kernel_qabstractitemmodel.cpp 4 + + This appends the two new columns as columns 6, 7, and 8. + \endtable + + \note This function emits the columnsAboutToBeInserted() signal which + connected views (or proxies) must handle before the data is inserted. + Otherwise, the views may end up in an invalid state. + + \sa endInsertColumns() +*/ +void QAbstractItemModel::beginInsertColumns(const QModelIndex &parent, int first, int last) +{ + Q_ASSERT(first >= 0); + Q_ASSERT(last >= first); + Q_D(QAbstractItemModel); + d->changes.push(QAbstractItemModelPrivate::Change(parent, first, last)); + emit columnsAboutToBeInserted(parent, first, last); + d->columnsAboutToBeInserted(parent, first, last); +} + +/*! + Ends a column insertion operation. + + When reimplementing insertColumns() in a subclass, you must call this + function \e after inserting data into the model's underlying data + store. + + \sa beginInsertColumns() +*/ +void QAbstractItemModel::endInsertColumns() +{ + Q_D(QAbstractItemModel); + QAbstractItemModelPrivate::Change change = d->changes.pop(); + d->columnsInserted(change.parent, change.first, change.last); + emit columnsInserted(change.parent, change.first, change.last); +} + +/*! + Begins a column removal operation. + + When reimplementing removeColumns() in a subclass, you must call this + function \e before removing data from the model's underlying data store. + + The \a parent index corresponds to the parent from which the new columns + are removed; \a first and \a last are the column numbers of the first and + last columns to be removed. + + \table 80% + \row + \o \inlineimage modelview-begin-remove-columns.png Removing columns + \o Specify the first and last column numbers for the span of columns + you want to remove from an item in a model. + + For example, as shown in the diagram, we remove the three columns + from column 4 to column 6, so \a first is 4 and \a last is 6: + + \snippet doc/src/snippets/code/src_corelib_kernel_qabstractitemmodel.cpp 5 + \endtable + + \note This function emits the columnsAboutToBeRemoved() signal which + connected views (or proxies) must handle before the data is removed. + Otherwise, the views may end up in an invalid state. + + \sa endRemoveColumns() +*/ +void QAbstractItemModel::beginRemoveColumns(const QModelIndex &parent, int first, int last) +{ + Q_ASSERT(first >= 0); + Q_ASSERT(last >= first); + Q_D(QAbstractItemModel); + d->changes.push(QAbstractItemModelPrivate::Change(parent, first, last)); + emit columnsAboutToBeRemoved(parent, first, last); + d->columnsAboutToBeRemoved(parent, first, last); +} + +/*! + Ends a column removal operation. + + When reimplementing removeColumns() in a subclass, you must call this + function \e after removing data from the model's underlying data store. + + \sa beginRemoveColumns() +*/ +void QAbstractItemModel::endRemoveColumns() +{ + Q_D(QAbstractItemModel); + QAbstractItemModelPrivate::Change change = d->changes.pop(); + d->columnsRemoved(change.parent, change.first, change.last); + emit columnsRemoved(change.parent, change.first, change.last); +} + +/*! + Begins a column move operation. + + When reimplementing a subclass, this method simplifies moving + entities in your model. This method is responsible for moving + persistent indexes in the model, which you would otherwise be + required to do yourself. Using beginMoveRows and endMoveRows + is an alternative to emitting layoutAboutToBeChanged and + layoutChanged directly along with changePersistentIndexes. + + The \a sourceParent index corresponds to the parent from which the + columns are moved; \a sourceFirst and \a sourceLast are the first and last + column numbers of the columns to be moved. The \a destinationParent index + corresponds to the parent into which those columns are moved. The \a + destinationChild is the column to which the columns will be moved. That + is, the index at column \a sourceFirst in \a sourceParent will become + column \a destinationChild in \a destinationParent, followed by all other + columns up to \a sourceLast. + + However, when moving columns down in the same parent (\a sourceParent + and \a destinationParent are equal), the columnss will be placed before the + \a destinationChild index. That is, if you wish to move columns 0 and 1 so + they will become columns 1 and 2, \a destinationChild should be 3. In this + case, the new index for the source column \c i (which is between + \a sourceFirst and \a sourceLast) is equal to + \c {(destinationChild-sourceLast-1+i)}. + + Note that if \a sourceParent and \a destinationParent are the same, + you must ensure that the \a destinationChild is not within the range + of \a sourceFirst and \a sourceLast + 1. You must also ensure that you + do not attempt to move a column to one of its own children or ancestors. + This method returns false if either condition is true, in which case you + should abort your move operation. + + \sa endMoveColumns() + + \since 4.6 +*/ +bool QAbstractItemModel::beginMoveColumns(const QModelIndex &sourceParent, int sourceFirst, int sourceLast, const QModelIndex &destinationParent, int destinationChild) +{ + Q_ASSERT(sourceFirst >= 0); + Q_ASSERT(sourceLast >= sourceFirst); + Q_ASSERT(destinationChild >= 0); + Q_D(QAbstractItemModel); + + if (!d->allowMove(sourceParent, sourceFirst, sourceLast, destinationParent, destinationChild, Qt::Horizontal)) { + return false; + } + + QAbstractItemModelPrivate::Change sourceChange(sourceParent, sourceFirst, sourceLast); + sourceChange.needsAdjust = sourceParent.isValid() && sourceParent.row() >= destinationChild && sourceParent.parent() == destinationParent; + d->changes.push(sourceChange); + int destinationLast = destinationChild + (sourceLast - sourceFirst); + QAbstractItemModelPrivate::Change destinationChange(destinationParent, destinationChild, destinationLast); + destinationChange.needsAdjust = destinationParent.isValid() && destinationParent.row() >= sourceLast && destinationParent.parent() == sourceParent; + d->changes.push(destinationChange); + + d->itemsAboutToBeMoved(sourceParent, sourceFirst, sourceLast, destinationParent, destinationChild, Qt::Horizontal); + + emit columnsAboutToBeMoved(sourceParent, sourceFirst, sourceLast, destinationParent, destinationChild); + return true; +} + +/*! + Ends a column move operation. + + When implementing a subclass, you must call this + function \e after moving data within the model's underlying data + store. + + \sa beginMoveColumns() + + \since 4.6 +*/ +void QAbstractItemModel::endMoveColumns() +{ + Q_D(QAbstractItemModel); + + QAbstractItemModelPrivate::Change insertChange = d->changes.pop(); + QAbstractItemModelPrivate::Change removeChange = d->changes.pop(); + + QModelIndex adjustedSource = removeChange.parent; + QModelIndex adjustedDestination = insertChange.parent; + + const int numMoved = removeChange.last - removeChange.first + 1; + if (insertChange.needsAdjust) + adjustedDestination = createIndex(adjustedDestination.row(), adjustedDestination.column() - numMoved, adjustedDestination.internalPointer()); + + if (removeChange.needsAdjust) + adjustedSource = createIndex(adjustedSource.row(), adjustedSource.column() + numMoved, adjustedSource.internalPointer()); + + d->itemsMoved(adjustedSource, removeChange.first, removeChange.last, adjustedDestination, insertChange.first, Qt::Horizontal); + + emit columnsMoved(adjustedSource, removeChange.first, removeChange.last, adjustedDestination, insertChange.first); +} + +/*! + Resets the model to its original state in any attached views. + + \note Use beginResetModel() and endResetModel() instead whenever possible. + Use this method only if there is no way to call beginResetModel() before invalidating the model. + Otherwise it could lead to unexpected behaviour, especially when used with proxy models. +*/ +void QAbstractItemModel::reset() +{ + Q_D(QAbstractItemModel); + emit modelAboutToBeReset(); + d->invalidatePersistentIndexes(); + emit modelReset(); +} + +/*! + Begins a model reset operation. + + A reset operation resets the model to its current state in any attached views. + + \note Any views attached to this model will be reset as well. + + When a model is reset it means that any previous data reported from the + model is now invalid and has to be queried for again. This also means that + the current item and any selected items will become invalid. + + When a model radically changes its data it can sometimes be easier to just + call this function rather than emit dataChanged() to inform other + components when the underlying data source, or its structure, has changed. + + You must call this function before resetting any internal data structures in your model + or proxy model. + + \sa modelAboutToBeReset(), modelReset(), endResetModel() + \since 4.6 +*/ +void QAbstractItemModel::beginResetModel() +{ + emit modelAboutToBeReset(); +} + +/*! + Completes a model reset operation. + + You must call this function after resetting any internal data structure in your model + or proxy model. + + \sa beginResetModel() + \since 4.6 +*/ +void QAbstractItemModel::endResetModel() +{ + Q_D(QAbstractItemModel); + d->invalidatePersistentIndexes(); + emit modelReset(); +} + +/*! + Changes the QPersistentModelIndex that is equal to the given \a from model + index to the given \a to model index. + + If no persistent model index equal to the given \a from model index was + found, nothing is changed. + + \sa persistentIndexList(), changePersistentIndexList() +*/ +void QAbstractItemModel::changePersistentIndex(const QModelIndex &from, const QModelIndex &to) +{ + Q_D(QAbstractItemModel); + if (d->persistent.indexes.isEmpty()) + return; + // find the data and reinsert it sorted + const QHash::iterator it = d->persistent.indexes.find(from); + if (it != d->persistent.indexes.end()) { + QPersistentModelIndexData *data = *it; + d->persistent.indexes.erase(it); + data->index = to; + if (to.isValid()) + d->persistent.insertMultiAtEnd(to, data); + else + data->model = 0; + } +} + +/*! + \since 4.1 + + Changes the QPersistentModelIndexes that is equal to the indexes in the + given \a from model index list to the given \a to model index list. + + If no persistent model indexes equal to the indexes in the given \a from + model index list was found, nothing is changed. + + \sa persistentIndexList(), changePersistentIndex() +*/ +void QAbstractItemModel::changePersistentIndexList(const QModelIndexList &from, + const QModelIndexList &to) +{ + Q_D(QAbstractItemModel); + if (d->persistent.indexes.isEmpty()) + return; + QVector toBeReinserted; + toBeReinserted.reserve(to.count()); + for (int i = 0; i < from.count(); ++i) { + if (from.at(i) == to.at(i)) + continue; + const QHash::iterator it = d->persistent.indexes.find(from.at(i)); + if (it != d->persistent.indexes.end()) { + QPersistentModelIndexData *data = *it; + d->persistent.indexes.erase(it); + data->index = to.at(i); + if (data->index.isValid()) + toBeReinserted << data; + else + data->model = 0; + } + } + + for (QVector::const_iterator it = toBeReinserted.constBegin(); + it != toBeReinserted.constEnd() ; ++it) { + QPersistentModelIndexData *data = *it; + d->persistent.insertMultiAtEnd(data->index, data); + } +} + +/*! + \since 4.2 + + Returns the list of indexes stored as persistent indexes in the model. +*/ +QModelIndexList QAbstractItemModel::persistentIndexList() const +{ + Q_D(const QAbstractItemModel); + QModelIndexList result; + for (QHash::const_iterator it = d->persistent.indexes.constBegin(); + it != d->persistent.indexes.constEnd(); ++it) { + QPersistentModelIndexData *data = *it; + result.append(data->index); + } + return result; +} + + +/*! + \class QAbstractTableModel + \brief The QAbstractTableModel class provides an abstract model that can be + subclassed to create table models. + + \ingroup model-view + + QAbstractTableModel provides a standard interface for models that represent + their data as a two-dimensional array of items. It is not used directly, + but must be subclassed. + + Since the model provides a more specialized interface than + QAbstractItemModel, it is not suitable for use with tree views, although it + can be used to provide data to a QListView. If you need to represent a + simple list of items, and only need a model to contain a single column of + data, subclassing the QAbstractListModel may be more appropriate. + + The rowCount() and columnCount() functions return the dimensions of the + table. To retrieve a model index corresponding to an item in the model, use + index() and provide only the row and column numbers. + + \section1 Subclassing + + When subclassing QAbstractTableModel, you must implement rowCount(), + columnCount(), and data(). Default implementations of the index() and + parent() functions are provided by QAbstractTableModel. + Well behaved models will also implement headerData(). + + Editable models need to implement setData(), and implement flags() to + return a value containing + \l{Qt::ItemFlags}{Qt::ItemIsEditable}. + + Models that provide interfaces to resizable data structures can + provide implementations of insertRows(), removeRows(), insertColumns(), + and removeColumns(). When implementing these functions, it is + important to call the appropriate functions so that all connected views + are aware of any changes: + + \list + \o An insertRows() implementation must call beginInsertRows() + \e before inserting new rows into the data structure, and it must + call endInsertRows() \e{immediately afterwards}. + \o An insertColumns() implementation must call beginInsertColumns() + \e before inserting new columns into the data structure, and it must + call endInsertColumns() \e{immediately afterwards}. + \o A removeRows() implementation must call beginRemoveRows() + \e before the rows are removed from the data structure, and it must + call endRemoveRows() \e{immediately afterwards}. + \o A removeColumns() implementation must call beginRemoveColumns() + \e before the columns are removed from the data structure, and it must + call endRemoveColumns() \e{immediately afterwards}. + \endlist + + \note Some general guidelines for subclassing models are available in the + \l{Model Subclassing Reference}. + + \note + + \sa {Model Classes}, QAbstractItemModel, QAbstractListModel, + {Pixelator Example} +*/ + +/*! + Constructs an abstract table model for the given \a parent. +*/ + +QAbstractTableModel::QAbstractTableModel(QObject *parent) + : QAbstractItemModel(parent) +{ + +} + +/*! + \internal + + Constructs an abstract table model with \a dd and the given \a parent. +*/ + +QAbstractTableModel::QAbstractTableModel(QAbstractItemModelPrivate &dd, QObject *parent) + : QAbstractItemModel(dd, parent) +{ + +} + +/*! + Destroys the abstract table model. +*/ + +QAbstractTableModel::~QAbstractTableModel() +{ + +} + +/*! + \fn QModelIndex QAbstractTableModel::index(int row, int column, const QModelIndex &parent = QModelIndex()) const + + Returns the index of the data in \a row and \a column with \a parent. + + \sa parent() +*/ + +QModelIndex QAbstractTableModel::index(int row, int column, const QModelIndex &parent) const +{ + return hasIndex(row, column, parent) ? createIndex(row, column, 0) : QModelIndex(); +} + +/*! + \fn QModelIndex QAbstractTableModel::parent(const QModelIndex &index) const + + Returns the parent of the model item with the given \a index. + + \sa index() hasChildren() +*/ + +QModelIndex QAbstractTableModel::parent(const QModelIndex &) const +{ + return QModelIndex(); +} + +bool QAbstractTableModel::hasChildren(const QModelIndex &parent) const +{ + if (parent.model() == this || !parent.isValid()) + return rowCount(parent) > 0 && columnCount(parent) > 0; + return false; +} + +/*! + \class QAbstractListModel + \brief The QAbstractListModel class provides an abstract model that can be + subclassed to create one-dimensional list models. + + \ingroup model-view + + QAbstractListModel provides a standard interface for models that represent + their data as a simple non-hierarchical sequence of items. It is not used + directly, but must be subclassed. + + Since the model provides a more specialized interface than + QAbstractItemModel, it is not suitable for use with tree views; you will + need to subclass QAbstractItemModel if you want to provide a model for + that purpose. If you need to use a number of list models to manage data, + it may be more appropriate to subclass QAbstractTableModel class instead. + + Simple models can be created by subclassing this class and implementing + the minimum number of required functions. For example, we could implement + a simple read-only QStringList-based model that provides a list of strings + to a QListView widget. In such a case, we only need to implement the + rowCount() function to return the number of items in the list, and the + data() function to retrieve items from the list. + + Since the model represents a one-dimensional structure, the rowCount() + function returns the total number of items in the model. The columnCount() + function is implemented for interoperability with all kinds of views, but + by default informs views that the model contains only one column. + + \section1 Subclassing + + When subclassing QAbstractListModel, you must provide implementations + of the rowCount() and data() functions. Well behaved models also provide + a headerData() implementation. + + For editable list models, you must also provide an implementation of + setData(), implement the flags() function so that it returns a value + containing \l{Qt::ItemFlags}{Qt::ItemIsEditable}. + + Note that QAbstractListModel provides a default implementation of + columnCount() that informs views that there is only a single column + of items in this model. + + Models that provide interfaces to resizable list-like data structures + can provide implementations of insertRows() and removeRows(). When + implementing these functions, it is important to call the appropriate + functions so that all connected views are aware of any changes: + + \list + \o An insertRows() implementation must call beginInsertRows() + \e before inserting new rows into the data structure, and it must + call endInsertRows() \e{immediately afterwards}. + \o A removeRows() implementation must call beginRemoveRows() + \e before the rows are removed from the data structure, and it must + call endRemoveRows() \e{immediately afterwards}. + \endlist + + \note Some general guidelines for subclassing models are available in the + \l{Model Subclassing Reference}. + + \sa {Model Classes}, {Model Subclassing Reference}, QAbstractItemView, + QAbstractTableModel, {Item Views Puzzle Example} +*/ + +/*! + Constructs an abstract list model with the given \a parent. +*/ + +QAbstractListModel::QAbstractListModel(QObject *parent) + : QAbstractItemModel(parent) +{ + +} + +/*! + \internal + + Constructs an abstract list model with \a dd and the given \a parent. +*/ + +QAbstractListModel::QAbstractListModel(QAbstractItemModelPrivate &dd, QObject *parent) + : QAbstractItemModel(dd, parent) +{ + +} + +/*! + Destroys the abstract list model. +*/ + +QAbstractListModel::~QAbstractListModel() +{ + +} + +/*! + \fn QModelIndex QAbstractListModel::index(int row, int column, const QModelIndex &parent = QModelIndex()) const + + Returns the index of the data in \a row and \a column with \a parent. + + \sa parent() +*/ + +QModelIndex QAbstractListModel::index(int row, int column, const QModelIndex &parent) const +{ + return hasIndex(row, column, parent) ? createIndex(row, column, 0) : QModelIndex(); +} + +/*! + Returns the parent of the model item with the given \a index. + + \sa index() hasChildren() +*/ + +QModelIndex QAbstractListModel::parent(const QModelIndex & /* index */) const +{ + return QModelIndex(); +} + +/*! + \internal + + Returns the number of columns in the list with the given \a parent. + + \sa rowCount() +*/ + +int QAbstractListModel::columnCount(const QModelIndex &parent) const +{ + return parent.isValid() ? 0 : 1; +} + +bool QAbstractListModel::hasChildren(const QModelIndex &parent) const +{ + return parent.isValid() ? false : (rowCount() > 0); +} + +/*! + \typedef QModelIndexList + \relates QModelIndex + + Synonym for QList. +*/ + +/*! + \reimp +*/ +bool QAbstractTableModel::dropMimeData(const QMimeData *data, Qt::DropAction action, + int row, int column, const QModelIndex &parent) +{ + if (!data || !(action == Qt::CopyAction || action == Qt::MoveAction)) + return false; + + QStringList types = mimeTypes(); + if (types.isEmpty()) + return false; + QString format = types.at(0); + if (!data->hasFormat(format)) + return false; + + QByteArray encoded = data->data(format); + QDataStream stream(&encoded, QIODevice::ReadOnly); + + // if the drop is on an item, replace the data in the items + if (parent.isValid() && row == -1 && column == -1) { + int top = INT_MAX; + int left = INT_MAX; + QVector rows, columns; + QVector > data; + + while (!stream.atEnd()) { + int r, c; + QMap v; + stream >> r >> c >> v; + rows.append(r); + columns.append(c); + data.append(v); + top = qMin(r, top); + left = qMin(c, left); + } + + for (int i = 0; i < data.size(); ++i) { + int r = (rows.at(i) - top) + parent.row(); + int c = (columns.at(i) - left) + parent.column(); + if (hasIndex(r, c)) + setItemData(index(r, c), data.at(i)); + } + + return true; + } + + // otherwise insert new rows for the data + return decodeData(row, column, parent, stream); +} + +/*! + \reimp +*/ +bool QAbstractListModel::dropMimeData(const QMimeData *data, Qt::DropAction action, + int row, int column, const QModelIndex &parent) +{ + if (!data || !(action == Qt::CopyAction || action == Qt::MoveAction)) + return false; + + QStringList types = mimeTypes(); + if (types.isEmpty()) + return false; + QString format = types.at(0); + if (!data->hasFormat(format)) + return false; + + QByteArray encoded = data->data(format); + QDataStream stream(&encoded, QIODevice::ReadOnly); + + // if the drop is on an item, replace the data in the items + if (parent.isValid() && row == -1 && column == -1) { + int top = INT_MAX; + int left = INT_MAX; + QVector rows, columns; + QVector > data; + + while (!stream.atEnd()) { + int r, c; + QMap v; + stream >> r >> c >> v; + rows.append(r); + columns.append(c); + data.append(v); + top = qMin(r, top); + left = qMin(c, left); + } + + for (int i = 0; i < data.size(); ++i) { + int r = (rows.at(i) - top) + parent.row(); + if (columns.at(i) == left && hasIndex(r, 0)) + setItemData(index(r), data.at(i)); + } + + return true; + } + + if (row == -1) + row = rowCount(parent); + + // otherwise insert new rows for the data + return decodeData(row, column, parent, stream); +} + +/*! + \fn QAbstractItemModel::modelAboutToBeReset() + \since 4.2 + + This signal is emitted when reset() is called, before the model's internal + state (e.g. persistent model indexes) has been invalidated. + + \sa beginResetModel(), modelReset() +*/ + +/*! + \fn QAbstractItemModel::modelReset() + \since 4.1 + + This signal is emitted when reset() is called, after the model's internal + state (e.g. persistent model indexes) has been invalidated. + + \sa endResetModel(), modelAboutToBeReset() +*/ + +/*! + \fn bool QModelIndex::operator<(const QModelIndex &other) const + \since 4.1 + + Returns true if this model index is smaller than the \a other + model index; otherwise returns false. +*/ + +/*! + \fn uint qHash(const QPersistentModelIndex &index) + \since 4.5 + + Returns a hash of the QPersistentModelIndex + */ + + +/*! + \internal + QHash::insertMulti insert the value before the old value. and find() return the new value. + We need insertMultiAtEnd because we don't want to overwrite the old one, which should be removed later + + There should be only one instance QPersistentModelIndexData per index, but in some intermediate state there may be + severals of PersistantModelIndex pointing to the same index, but one is already updated, and the other one is not. + This make sure than when updating the first one we don't overwrite the second one in the hash, and the second one + will be updated right later. + */ +void QAbstractItemModelPrivate::Persistent::insertMultiAtEnd(const QModelIndex& key, QPersistentModelIndexData *data) +{ + QHash::iterator newIt = + indexes.insertMulti(key, data); + QHash::iterator it = newIt + 1; + while (it != indexes.end() && it.key() == key) { + qSwap(*newIt,*it); + newIt = it; + ++it; + } +} + +QT_END_NAMESPACE diff --git a/src/corelib/itemmodels/qabstractitemmodel.h b/src/corelib/itemmodels/qabstractitemmodel.h new file mode 100644 index 0000000000..0aa8144602 --- /dev/null +++ b/src/corelib/itemmodels/qabstractitemmodel.h @@ -0,0 +1,412 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtCore module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QABSTRACTITEMMODEL_H +#define QABSTRACTITEMMODEL_H + +#include +#include +#include +#include + +QT_BEGIN_HEADER + +QT_BEGIN_NAMESPACE + +QT_MODULE(Core) + +class QAbstractItemModel; +class QPersistentModelIndex; + +class Q_CORE_EXPORT QModelIndex +{ + friend class QAbstractItemModel; + friend class QProxyModel; +public: + inline QModelIndex() : r(-1), c(-1), p(0), m(0) {} + inline QModelIndex(const QModelIndex &other) + : r(other.r), c(other.c), p(other.p), m(other.m) {} + inline ~QModelIndex() { p = 0; m = 0; } + inline int row() const { return r; } + inline int column() const { return c; } + inline void *internalPointer() const { return p; } + inline qint64 internalId() const { return reinterpret_cast(p); } + inline QModelIndex parent() const; + inline QModelIndex sibling(int row, int column) const; + inline QModelIndex child(int row, int column) const; + inline QVariant data(int role = Qt::DisplayRole) const; + inline Qt::ItemFlags flags() const; + inline const QAbstractItemModel *model() const { return m; } + inline bool isValid() const { return (r >= 0) && (c >= 0) && (m != 0); } + inline bool operator==(const QModelIndex &other) const + { return (other.r == r) && (other.p == p) && (other.c == c) && (other.m == m); } + inline bool operator!=(const QModelIndex &other) const + { return !(*this == other); } + inline bool operator<(const QModelIndex &other) const + { + if (r < other.r) return true; + if (r == other.r) { + if (c < other.c) return true; + if (c == other.c) { + if (p < other.p) return true; + if (p == other.p) return m < other.m; + } + } + return false; } +private: + inline QModelIndex(int row, int column, void *ptr, const QAbstractItemModel *model); + int r, c; + void *p; + const QAbstractItemModel *m; +}; +Q_DECLARE_TYPEINFO(QModelIndex, Q_MOVABLE_TYPE); + +#ifndef QT_NO_DEBUG_STREAM +Q_CORE_EXPORT QDebug operator<<(QDebug, const QModelIndex &); +#endif + +class QPersistentModelIndexData; + +class Q_CORE_EXPORT QPersistentModelIndex +{ +public: + QPersistentModelIndex(); + QPersistentModelIndex(const QModelIndex &index); + QPersistentModelIndex(const QPersistentModelIndex &other); + ~QPersistentModelIndex(); + bool operator<(const QPersistentModelIndex &other) const; + bool operator==(const QPersistentModelIndex &other) const; + inline bool operator!=(const QPersistentModelIndex &other) const + { return !operator==(other); } + QPersistentModelIndex &operator=(const QPersistentModelIndex &other); + bool operator==(const QModelIndex &other) const; + bool operator!=(const QModelIndex &other) const; + QPersistentModelIndex &operator=(const QModelIndex &other); + operator const QModelIndex&() const; + int row() const; + int column() const; + void *internalPointer() const; + qint64 internalId() const; + QModelIndex parent() const; + QModelIndex sibling(int row, int column) const; + QModelIndex child(int row, int column) const; + QVariant data(int role = Qt::DisplayRole) const; + Qt::ItemFlags flags() const; + const QAbstractItemModel *model() const; + bool isValid() const; +private: + QPersistentModelIndexData *d; + friend uint qHash(const QPersistentModelIndex &); +#ifndef QT_NO_DEBUG_STREAM + friend Q_CORE_EXPORT QDebug operator<<(QDebug, const QPersistentModelIndex &); +#endif +}; +Q_DECLARE_TYPEINFO(QPersistentModelIndex, Q_MOVABLE_TYPE); + +inline uint qHash(const QPersistentModelIndex &index) +{ return qHash(index.d); } + + +#ifndef QT_NO_DEBUG_STREAM +Q_CORE_EXPORT QDebug operator<<(QDebug, const QPersistentModelIndex &); +#endif + +template class QList; +typedef QList QModelIndexList; + +class QMimeData; +class QAbstractItemModelPrivate; +template class QMap; + + +class Q_CORE_EXPORT QAbstractItemModel : public QObject +{ + Q_OBJECT + + friend class QPersistentModelIndexData; + friend class QAbstractItemViewPrivate; + friend class QIdentityProxyModel; +public: + + explicit QAbstractItemModel(QObject *parent = 0); + virtual ~QAbstractItemModel(); + + bool hasIndex(int row, int column, const QModelIndex &parent = QModelIndex()) const; + virtual QModelIndex index(int row, int column, + const QModelIndex &parent = QModelIndex()) const = 0; + virtual QModelIndex parent(const QModelIndex &child) const = 0; + + inline QModelIndex sibling(int row, int column, const QModelIndex &idx) const + { return index(row, column, parent(idx)); } + + virtual int rowCount(const QModelIndex &parent = QModelIndex()) const = 0; + virtual int columnCount(const QModelIndex &parent = QModelIndex()) const = 0; + virtual bool hasChildren(const QModelIndex &parent = QModelIndex()) const; + + virtual QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const = 0; + virtual bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole); + + virtual QVariant headerData(int section, Qt::Orientation orientation, + int role = Qt::DisplayRole) const; + virtual bool setHeaderData(int section, Qt::Orientation orientation, const QVariant &value, + int role = Qt::EditRole); + + virtual QMap itemData(const QModelIndex &index) const; + virtual bool setItemData(const QModelIndex &index, const QMap &roles); + + virtual QStringList mimeTypes() const; + virtual QMimeData *mimeData(const QModelIndexList &indexes) const; + virtual bool dropMimeData(const QMimeData *data, Qt::DropAction action, + int row, int column, const QModelIndex &parent); + virtual Qt::DropActions supportedDropActions() const; + + Qt::DropActions supportedDragActions() const; + void setSupportedDragActions(Qt::DropActions); + + virtual bool insertRows(int row, int count, const QModelIndex &parent = QModelIndex()); + virtual bool insertColumns(int column, int count, const QModelIndex &parent = QModelIndex()); + virtual bool removeRows(int row, int count, const QModelIndex &parent = QModelIndex()); + virtual bool removeColumns(int column, int count, const QModelIndex &parent = QModelIndex()); + + inline bool insertRow(int row, const QModelIndex &parent = QModelIndex()); + inline bool insertColumn(int column, const QModelIndex &parent = QModelIndex()); + inline bool removeRow(int row, const QModelIndex &parent = QModelIndex()); + inline bool removeColumn(int column, const QModelIndex &parent = QModelIndex()); + + virtual void fetchMore(const QModelIndex &parent); + virtual bool canFetchMore(const QModelIndex &parent) const; + virtual Qt::ItemFlags flags(const QModelIndex &index) const; + virtual void sort(int column, Qt::SortOrder order = Qt::AscendingOrder); + virtual QModelIndex buddy(const QModelIndex &index) const; + virtual QModelIndexList match(const QModelIndex &start, int role, + const QVariant &value, int hits = 1, + Qt::MatchFlags flags = + Qt::MatchFlags(Qt::MatchStartsWith|Qt::MatchWrap)) const; + virtual QSize span(const QModelIndex &index) const; + + const QHash &roleNames() const; + +#ifdef Q_NO_USING_KEYWORD + inline QObject *parent() const { return QObject::parent(); } +#else + using QObject::parent; +#endif + +Q_SIGNALS: + void dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QSet &roles = QSet()); + void headerDataChanged(Qt::Orientation orientation, int first, int last); + void layoutChanged(const QList &parents = QList()); + void layoutAboutToBeChanged(const QList &parents = QList()); + +#if !defined(Q_MOC_RUN) && !defined(qdoc) +private: // can only be emitted by QAbstractItemModel +#endif + void rowsAboutToBeInserted(const QModelIndex &parent, int first, int last); + void rowsInserted(const QModelIndex &parent, int first, int last); + + void rowsAboutToBeRemoved(const QModelIndex &parent, int first, int last); + void rowsRemoved(const QModelIndex &parent, int first, int last); + + void columnsAboutToBeInserted(const QModelIndex &parent, int first, int last); + void columnsInserted(const QModelIndex &parent, int first, int last); + + void columnsAboutToBeRemoved(const QModelIndex &parent, int first, int last); + void columnsRemoved(const QModelIndex &parent, int first, int last); + + void modelAboutToBeReset(); + void modelReset(); + + void rowsAboutToBeMoved( const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destinationParent, int destinationRow ); + void rowsMoved( const QModelIndex &parent, int start, int end, const QModelIndex &destination, int row ); + + void columnsAboutToBeMoved( const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destinationParent, int destinationColumn ); + void columnsMoved( const QModelIndex &parent, int start, int end, const QModelIndex &destination, int column ); + + +public Q_SLOTS: + virtual bool submit(); + virtual void revert(); + +protected: + QAbstractItemModel(QAbstractItemModelPrivate &dd, QObject *parent = 0); + + inline QModelIndex createIndex(int row, int column, void *data = 0) const; + inline QModelIndex createIndex(int row, int column, int id) const; + inline QModelIndex createIndex(int row, int column, quint32 id) const; + + void encodeData(const QModelIndexList &indexes, QDataStream &stream) const; + bool decodeData(int row, int column, const QModelIndex &parent, QDataStream &stream); + + void beginInsertRows(const QModelIndex &parent, int first, int last); + void endInsertRows(); + + void beginRemoveRows(const QModelIndex &parent, int first, int last); + void endRemoveRows(); + + bool beginMoveRows(const QModelIndex &sourceParent, int sourceFirst, int sourceLast, const QModelIndex &destinationParent, int destinationRow); + void endMoveRows(); + + void beginInsertColumns(const QModelIndex &parent, int first, int last); + void endInsertColumns(); + + void beginRemoveColumns(const QModelIndex &parent, int first, int last); + void endRemoveColumns(); + + bool beginMoveColumns(const QModelIndex &sourceParent, int sourceFirst, int sourceLast, const QModelIndex &destinationParent, int destinationColumn); + void endMoveColumns(); + + void reset(); + + void beginResetModel(); + void endResetModel(); + + void changePersistentIndex(const QModelIndex &from, const QModelIndex &to); + void changePersistentIndexList(const QModelIndexList &from, const QModelIndexList &to); + QModelIndexList persistentIndexList() const; + + void setRoleNames(const QHash &roleNames); + +private: + Q_DECLARE_PRIVATE(QAbstractItemModel) + Q_DISABLE_COPY(QAbstractItemModel) +}; + +inline bool QAbstractItemModel::insertRow(int arow, const QModelIndex &aparent) +{ return insertRows(arow, 1, aparent); } +inline bool QAbstractItemModel::insertColumn(int acolumn, const QModelIndex &aparent) +{ return insertColumns(acolumn, 1, aparent); } +inline bool QAbstractItemModel::removeRow(int arow, const QModelIndex &aparent) +{ return removeRows(arow, 1, aparent); } +inline bool QAbstractItemModel::removeColumn(int acolumn, const QModelIndex &aparent) +{ return removeColumns(acolumn, 1, aparent); } + +inline QModelIndex QAbstractItemModel::createIndex(int arow, int acolumn, void *adata) const +{ return QModelIndex(arow, acolumn, adata, this); } +inline QModelIndex QAbstractItemModel::createIndex(int arow, int acolumn, int aid) const +#if defined(Q_CC_MSVC) +#pragma warning( push ) +#pragma warning( disable : 4312 ) // avoid conversion warning on 64-bit +#endif +{ return QModelIndex(arow, acolumn, reinterpret_cast(aid), this); } +#if defined(Q_CC_MSVC) +#pragma warning( pop ) +#endif +inline QModelIndex QAbstractItemModel::createIndex(int arow, int acolumn, quint32 aid) const +#if defined(Q_CC_MSVC) +#pragma warning( push ) +#pragma warning( disable : 4312 ) // avoid conversion warning on 64-bit +#endif +{ return QModelIndex(arow, acolumn, reinterpret_cast(aid), this); } +#if defined(Q_CC_MSVC) +#pragma warning( pop ) +#endif + + +class Q_CORE_EXPORT QAbstractTableModel : public QAbstractItemModel +{ + Q_OBJECT + +public: + explicit QAbstractTableModel(QObject *parent = 0); + ~QAbstractTableModel(); + + QModelIndex index(int row, int column, const QModelIndex &parent = QModelIndex()) const; + bool dropMimeData(const QMimeData *data, Qt::DropAction action, + int row, int column, const QModelIndex &parent); +protected: + QAbstractTableModel(QAbstractItemModelPrivate &dd, QObject *parent); + +private: + Q_DISABLE_COPY(QAbstractTableModel) + QModelIndex parent(const QModelIndex &child) const; + bool hasChildren(const QModelIndex &parent) const; +}; + +class Q_CORE_EXPORT QAbstractListModel : public QAbstractItemModel +{ + Q_OBJECT + +public: + explicit QAbstractListModel(QObject *parent = 0); + ~QAbstractListModel(); + + QModelIndex index(int row, int column = 0, const QModelIndex &parent = QModelIndex()) const; + bool dropMimeData(const QMimeData *data, Qt::DropAction action, + int row, int column, const QModelIndex &parent); +protected: + QAbstractListModel(QAbstractItemModelPrivate &dd, QObject *parent); + +private: + Q_DISABLE_COPY(QAbstractListModel) + QModelIndex parent(const QModelIndex &child) const; + int columnCount(const QModelIndex &parent) const; + bool hasChildren(const QModelIndex &parent) const; +}; + +// inline implementations + +inline QModelIndex::QModelIndex(int arow, int acolumn, void *adata, + const QAbstractItemModel *amodel) + : r(arow), c(acolumn), p(adata), m(amodel) {} + +inline QModelIndex QModelIndex::parent() const +{ return m ? m->parent(*this) : QModelIndex(); } + +inline QModelIndex QModelIndex::sibling(int arow, int acolumn) const +{ return m ? (r == arow && c == acolumn) ? *this : m->index(arow, acolumn, m->parent(*this)) : QModelIndex(); } + +inline QModelIndex QModelIndex::child(int arow, int acolumn) const +{ return m ? m->index(arow, acolumn, *this) : QModelIndex(); } + +inline QVariant QModelIndex::data(int arole) const +{ return m ? m->data(*this, arole) : QVariant(); } + +inline Qt::ItemFlags QModelIndex::flags() const +{ return m ? m->flags(*this) : Qt::ItemFlags(0); } + +inline uint qHash(const QModelIndex &index) +{ return uint((index.row() << 4) + index.column() + index.internalId()); } + +QT_END_NAMESPACE + +QT_END_HEADER + +#endif // QABSTRACTITEMMODEL_H diff --git a/src/corelib/itemmodels/qabstractitemmodel_p.h b/src/corelib/itemmodels/qabstractitemmodel_p.h new file mode 100644 index 0000000000..86680dd0bc --- /dev/null +++ b/src/corelib/itemmodels/qabstractitemmodel_p.h @@ -0,0 +1,176 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtCore module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QABSTRACTITEMMODEL_P_H +#define QABSTRACTITEMMODEL_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of QAbstractItemModel*. This header file may change from version +// to version without notice, or even be removed. +// +// We mean it. +// +// + +#include "private/qobject_p.h" +#include "QtCore/qstack.h" +#include "QtCore/qset.h" +#include "QtCore/qhash.h" + +QT_BEGIN_NAMESPACE + +class QPersistentModelIndexData +{ +public: + QPersistentModelIndexData() : model(0) {} + QPersistentModelIndexData(const QModelIndex &idx) : index(idx), model(idx.model()) {} + QModelIndex index; + QAtomicInt ref; + const QAbstractItemModel *model; + static QPersistentModelIndexData *create(const QModelIndex &index); + static void destroy(QPersistentModelIndexData *data); +}; + +class Q_CORE_EXPORT QAbstractItemModelPrivate : public QObjectPrivate +{ + Q_DECLARE_PUBLIC(QAbstractItemModel) + +public: + QAbstractItemModelPrivate() : QObjectPrivate(), supportedDragActions(-1), roleNames(defaultRoleNames()) {} + void removePersistentIndexData(QPersistentModelIndexData *data); + void movePersistentIndexes(QVector indexes, int change, const QModelIndex &parent, Qt::Orientation orientation); + void rowsAboutToBeInserted(const QModelIndex &parent, int first, int last); + void rowsInserted(const QModelIndex &parent, int first, int last); + void rowsAboutToBeRemoved(const QModelIndex &parent, int first, int last); + void rowsRemoved(const QModelIndex &parent, int first, int last); + void columnsAboutToBeInserted(const QModelIndex &parent, int first, int last); + void columnsInserted(const QModelIndex &parent, int first, int last); + void columnsAboutToBeRemoved(const QModelIndex &parent, int first, int last); + void columnsRemoved(const QModelIndex &parent, int first, int last); + static QAbstractItemModel *staticEmptyModel(); + static bool variantLessThan(const QVariant &v1, const QVariant &v2); + + void itemsAboutToBeMoved(const QModelIndex &srcParent, int srcFirst, int srcLast, const QModelIndex &destinationParent, int destinationChild, Qt::Orientation); + void itemsMoved(const QModelIndex &srcParent, int srcFirst, int srcLast, const QModelIndex &destinationParent, int destinationChild, Qt::Orientation orientation); + bool allowMove(const QModelIndex &srcParent, int srcFirst, int srcLast, const QModelIndex &destinationParent, int destinationChild, Qt::Orientation orientation); + + inline QModelIndex createIndex(int row, int column, void *data = 0) const { + return q_func()->createIndex(row, column, data); + } + + inline QModelIndex createIndex(int row, int column, int id) const { + return q_func()->createIndex(row, column, id); + } + + inline bool indexValid(const QModelIndex &index) const { + return (index.row() >= 0) && (index.column() >= 0) && (index.model() == q_func()); + } + + inline void invalidatePersistentIndexes() { + foreach (QPersistentModelIndexData *data, persistent.indexes) { + data->index = QModelIndex(); + data->model = 0; + } + persistent.indexes.clear(); + } + + /*! + \internal + clean the QPersistentModelIndex relative to the index if there is one. + To be used before an index is invalided + */ + inline void invalidatePersistentIndex(const QModelIndex &index) { + QHash::iterator it = persistent.indexes.find(index); + if(it != persistent.indexes.end()) { + QPersistentModelIndexData *data = *it; + persistent.indexes.erase(it); + data->index = QModelIndex(); + data->model = 0; + } + } + + struct Change { + Change() : first(-1), last(-1) {} + Change(const Change &c) : parent(c.parent), first(c.first), last(c.last), needsAdjust(c.needsAdjust) {} + Change(const QModelIndex &p, int f, int l) : parent(p), first(f), last(l), needsAdjust(false) {} + QModelIndex parent; + int first, last; + + + // In cases such as this: + // - A + // - B + // - C + // - - D + // - - E + // - - F + // + // If B is moved to above E, C is the source parent in the signal and its row is 2. When the move is + // completed however, C is at row 1 and there is no row 2 at the same level in the model at all. + // The QModelIndex is adjusted to correct that in those cases before reporting it though the + // rowsMoved signal. + bool needsAdjust; + + bool isValid() { return first >= 0 && last >= 0; } + }; + QStack changes; + + struct Persistent { + Persistent() {} + QHash indexes; + QStack > moved; + QStack > invalidated; + void insertMultiAtEnd(const QModelIndex& key, QPersistentModelIndexData *data); + } persistent; + + Qt::DropActions supportedDragActions; + + QHash roleNames; + static const QHash &defaultRoleNames(); +}; + +QT_END_NAMESPACE + +#endif // QABSTRACTITEMMODEL_P_H diff --git a/src/corelib/kernel/kernel.pri b/src/corelib/kernel/kernel.pri index 8b69d771b7..b67d60bfff 100644 --- a/src/corelib/kernel/kernel.pri +++ b/src/corelib/kernel/kernel.pri @@ -2,8 +2,6 @@ HEADERS += \ kernel/qabstracteventdispatcher.h \ - kernel/qabstractitemmodel.h \ - kernel/qabstractitemmodel_p.h \ kernel/qbasictimer.h \ kernel/qeventloop.h\ kernel/qpointer.h \ @@ -42,7 +40,6 @@ HEADERS += \ SOURCES += \ kernel/qabstracteventdispatcher.cpp \ - kernel/qabstractitemmodel.cpp \ kernel/qbasictimer.cpp \ kernel/qeventloop.cpp \ kernel/qcoreapplication.cpp \ diff --git a/src/corelib/kernel/qabstractitemmodel.cpp b/src/corelib/kernel/qabstractitemmodel.cpp deleted file mode 100644 index 99455371ae..0000000000 --- a/src/corelib/kernel/qabstractitemmodel.cpp +++ /dev/null @@ -1,3454 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtCore module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "qabstractitemmodel.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include - -QT_BEGIN_NAMESPACE - -QPersistentModelIndexData *QPersistentModelIndexData::create(const QModelIndex &index) -{ - Q_ASSERT(index.isValid()); // we will _never_ insert an invalid index in the list - QPersistentModelIndexData *d = 0; - QAbstractItemModel *model = const_cast(index.model()); - QHash &indexes = model->d_func()->persistent.indexes; - const QHash::iterator it = indexes.find(index); - if (it != indexes.end()) { - d = (*it); - } else { - d = new QPersistentModelIndexData(index); - indexes.insert(index, d); - } - Q_ASSERT(d); - return d; -} - -void QPersistentModelIndexData::destroy(QPersistentModelIndexData *data) -{ - Q_ASSERT(data); - Q_ASSERT(data->ref.load() == 0); - QAbstractItemModel *model = const_cast(data->model); - // a valid persistent model index with a null model pointer can only happen if the model was destroyed - if (model) { - QAbstractItemModelPrivate *p = model->d_func(); - Q_ASSERT(p); - p->removePersistentIndexData(data); - } - delete data; -} - -/*! - \class QPersistentModelIndex - - \brief The QPersistentModelIndex class is used to locate data in a data model. - - \ingroup model-view - - A QPersistentModelIndex is a model index that can be stored by an - application, and later used to access information in a model. - Unlike the QModelIndex class, it is safe to store a - QPersistentModelIndex since the model will ensure that references - to items will continue to be valid as long as they can be accessed - by the model. - - It is good practice to check that persistent model indexes are valid - before using them. - - \sa {Model/View Programming}, QModelIndex, QAbstractItemModel -*/ - - -/*! - \fn QPersistentModelIndex::QPersistentModelIndex() - - \internal -*/ - -QPersistentModelIndex::QPersistentModelIndex() - : d(0) -{ -} - -/*! - \fn QPersistentModelIndex::QPersistentModelIndex(const QPersistentModelIndex &other) - - Creates a new QPersistentModelIndex that is a copy of the \a other persistent - model index. -*/ - -QPersistentModelIndex::QPersistentModelIndex(const QPersistentModelIndex &other) - : d(other.d) -{ - if (d) d->ref.ref(); -} - -/*! - Creates a new QPersistentModelIndex that is a copy of the model \a index. -*/ - -QPersistentModelIndex::QPersistentModelIndex(const QModelIndex &index) - : d(0) -{ - if (index.isValid()) { - d = QPersistentModelIndexData::create(index); - d->ref.ref(); - } -} - -/*! - \fn QPersistentModelIndex::~QPersistentModelIndex() - - \internal -*/ - -QPersistentModelIndex::~QPersistentModelIndex() -{ - if (d && !d->ref.deref()) { - QPersistentModelIndexData::destroy(d); - d = 0; - } -} - -/*! - Returns true if this persistent model index is equal to the \a other - persistent model index; otherwise returns false. - - All values in the persistent model index are used when comparing - with another persistent model index. -*/ - -bool QPersistentModelIndex::operator==(const QPersistentModelIndex &other) const -{ - if (d && other.d) - return d->index == other.d->index; - return d == other.d; -} - -/*! - \since 4.1 - - Returns true if this persistent model index is smaller than the \a other - persistent model index; otherwise returns false. - - All values in the persistent model index are used when comparing - with another persistent model index. -*/ - -bool QPersistentModelIndex::operator<(const QPersistentModelIndex &other) const -{ - if (d && other.d) - return d->index < other.d->index; - - return d < other.d; -} - -/*! - \fn bool QPersistentModelIndex::operator!=(const QPersistentModelIndex &other) const - \since 4.2 - - Returns true if this persistent model index is not equal to the \a - other persistent model index; otherwise returns false. -*/ - -/*! - Sets the persistent model index to refer to the same item in a model - as the \a other persistent model index. -*/ - -QPersistentModelIndex &QPersistentModelIndex::operator=(const QPersistentModelIndex &other) -{ - if (d == other.d) - return *this; - if (d && !d->ref.deref()) - QPersistentModelIndexData::destroy(d); - d = other.d; - if (d) d->ref.ref(); - return *this; -} - -/*! - Sets the persistent model index to refer to the same item in a model - as the \a other model index. -*/ - -QPersistentModelIndex &QPersistentModelIndex::operator=(const QModelIndex &other) -{ - if (d && !d->ref.deref()) - QPersistentModelIndexData::destroy(d); - if (other.isValid()) { - d = QPersistentModelIndexData::create(other); - if (d) d->ref.ref(); - } else { - d = 0; - } - return *this; -} - -/*! - \fn QPersistentModelIndex::operator const QModelIndex&() const - - Cast operator that returns a const QModelIndex&. -*/ - -QPersistentModelIndex::operator const QModelIndex&() const -{ - static const QModelIndex invalid; - if (d) - return d->index; - return invalid; -} - -/*! - \fn bool QPersistentModelIndex::operator==(const QModelIndex &other) const - - Returns true if this persistent model index refers to the same location as - the \a other model index; otherwise returns false. - - All values in the persistent model index are used when comparing with - another model index. -*/ - -bool QPersistentModelIndex::operator==(const QModelIndex &other) const -{ - if (d) - return d->index == other; - return !other.isValid(); -} - -/*! - \fn bool QPersistentModelIndex::operator!=(const QModelIndex &other) const - - Returns true if this persistent model index does not refer to the same - location as the \a other model index; otherwise returns false. -*/ - -bool QPersistentModelIndex::operator!=(const QModelIndex &other) const -{ - if (d) - return d->index != other; - return other.isValid(); -} - -/*! - \fn int QPersistentModelIndex::row() const - - Returns the row this persistent model index refers to. -*/ - -int QPersistentModelIndex::row() const -{ - if (d) - return d->index.row(); - return -1; -} - -/*! - \fn int QPersistentModelIndex::column() const - - Returns the column this persistent model index refers to. -*/ - -int QPersistentModelIndex::column() const -{ - if (d) - return d->index.column(); - return -1; -} - -/*! - \fn void *QPersistentModelIndex::internalPointer() const - - \internal - - Returns a \c{void} \c{*} pointer used by the model to associate the index with - the internal data structure. -*/ - -void *QPersistentModelIndex::internalPointer() const -{ - if (d) - return d->index.internalPointer(); - return 0; -} - -/*! - \fn void *QPersistentModelIndex::internalId() const - - \internal - - Returns a \c{qint64} used by the model to associate the index with - the internal data structure. -*/ - -qint64 QPersistentModelIndex::internalId() const -{ - if (d) - return d->index.internalId(); - return 0; -} - -/*! - Returns the parent QModelIndex for this persistent index, or an invalid - QModelIndex if it has no parent. - - \sa child() sibling() model() -*/ -QModelIndex QPersistentModelIndex::parent() const -{ - if (d) - return d->index.parent(); - return QModelIndex(); -} - -/*! - Returns the sibling at \a row and \a column or an invalid QModelIndex if - there is no sibling at this position. - - \sa parent() child() -*/ - -QModelIndex QPersistentModelIndex::sibling(int row, int column) const -{ - if (d) - return d->index.sibling(row, column); - return QModelIndex(); -} - -/*! - Returns the child of the model index that is stored in the given \a row - and \a column. - - \sa parent() sibling() -*/ - -QModelIndex QPersistentModelIndex::child(int row, int column) const -{ - if (d) - return d->index.child(row, column); - return QModelIndex(); -} - -/*! - Returns the data for the given \a role for the item referred to by the - index. - - \sa Qt::ItemDataRole, QAbstractItemModel::setData() -*/ -QVariant QPersistentModelIndex::data(int role) const -{ - if (d) - return d->index.data(role); - return QVariant(); -} - -/*! - \since 4.2 - - Returns the flags for the item referred to by the index. -*/ -Qt::ItemFlags QPersistentModelIndex::flags() const -{ - if (d) - return d->index.flags(); - return 0; -} - -/*! - Returns the model that the index belongs to. -*/ -const QAbstractItemModel *QPersistentModelIndex::model() const -{ - if (d) - return d->index.model(); - return 0; -} - -/*! - \fn bool QPersistentModelIndex::isValid() const - - Returns true if this persistent model index is valid; otherwise returns - false. - - A valid index belongs to a model, and has non-negative row and column - numbers. - - \sa model(), row(), column() -*/ - -bool QPersistentModelIndex::isValid() const -{ - return d && d->index.isValid(); -} - -#ifndef QT_NO_DEBUG_STREAM -QDebug operator<<(QDebug dbg, const QModelIndex &idx) -{ -#ifndef Q_BROKEN_DEBUG_STREAM - dbg.nospace() << "QModelIndex(" << idx.row() << ',' << idx.column() - << ',' << idx.internalPointer() << ',' << idx.model() << ')'; - return dbg.space(); -#else - qWarning("This compiler doesn't support streaming QModelIndex to QDebug"); - return dbg; - Q_UNUSED(idx); -#endif -} - -QDebug operator<<(QDebug dbg, const QPersistentModelIndex &idx) -{ - if (idx.d) - dbg << idx.d->index; - else - dbg << QModelIndex(); - return dbg; -} -#endif - -class QEmptyItemModel : public QAbstractItemModel -{ -public: - explicit QEmptyItemModel(QObject *parent = 0) : QAbstractItemModel(parent) {} - QModelIndex index(int, int, const QModelIndex &) const { return QModelIndex(); } - QModelIndex parent(const QModelIndex &) const { return QModelIndex(); } - int rowCount(const QModelIndex &) const { return 0; } - int columnCount(const QModelIndex &) const { return 0; } - bool hasChildren(const QModelIndex &) const { return false; } - QVariant data(const QModelIndex &, int) const { return QVariant(); } -}; - -Q_GLOBAL_STATIC(QEmptyItemModel, qEmptyModel) - -QAbstractItemModel *QAbstractItemModelPrivate::staticEmptyModel() -{ - return qEmptyModel(); -} - -namespace { - struct DefaultRoleNames : public QHash - { - DefaultRoleNames() { - (*this)[Qt::DisplayRole] = "display"; - (*this)[Qt::DecorationRole] = "decoration"; - (*this)[Qt::EditRole] = "edit"; - (*this)[Qt::ToolTipRole] = "toolTip"; - (*this)[Qt::StatusTipRole] = "statusTip"; - (*this)[Qt::WhatsThisRole] = "whatsThis"; - } - }; -} - -Q_GLOBAL_STATIC(DefaultRoleNames, qDefaultRoleNames) - -const QHash &QAbstractItemModelPrivate::defaultRoleNames() -{ - return *qDefaultRoleNames(); -} - - -static uint typeOfVariant(const QVariant &value) -{ - //return 0 for integer, 1 for floating point and 2 for other - switch (value.userType()) { - case QVariant::Bool: - case QVariant::Int: - case QVariant::UInt: - case QVariant::LongLong: - case QVariant::ULongLong: - case QVariant::Char: - case QMetaType::Short: - case QMetaType::UShort: - case QMetaType::UChar: - case QMetaType::ULong: - case QMetaType::Long: - return 0; - case QVariant::Double: - case QMetaType::Float: - return 1; - default: - return 2; - } -} - -/*! - \internal - return true if \a value contains a numerical type - - This function is used by our Q{Tree,Widget,Table}WidgetModel classes to sort. -*/ -bool QAbstractItemModelPrivate::variantLessThan(const QVariant &v1, const QVariant &v2) -{ - switch(qMax(typeOfVariant(v1), typeOfVariant(v2))) - { - case 0: //integer type - return v1.toLongLong() < v2.toLongLong(); - case 1: //floating point - return v1.toReal() < v2.toReal(); - default: - return v1.toString().localeAwareCompare(v2.toString()) < 0; - } -} - -void QAbstractItemModelPrivate::removePersistentIndexData(QPersistentModelIndexData *data) -{ - if (data->index.isValid()) { - int removed = persistent.indexes.remove(data->index); - Q_ASSERT_X(removed == 1, "QPersistentModelIndex::~QPersistentModelIndex", - "persistent model indexes corrupted"); //maybe the index was somewhat invalid? - // This assert may happen if the model use changePersistentIndex in a way that could result on two - // QPersistentModelIndex pointing to the same index. - Q_UNUSED(removed); - } - // make sure our optimization still works - for (int i = persistent.moved.count() - 1; i >= 0; --i) { - int idx = persistent.moved[i].indexOf(data); - if (idx >= 0) - persistent.moved[i].remove(idx); - } - // update the references to invalidated persistent indexes - for (int i = persistent.invalidated.count() - 1; i >= 0; --i) { - int idx = persistent.invalidated[i].indexOf(data); - if (idx >= 0) - persistent.invalidated[i].remove(idx); - } - -} - -void QAbstractItemModelPrivate::rowsAboutToBeInserted(const QModelIndex &parent, - int first, int last) -{ - Q_Q(QAbstractItemModel); - Q_UNUSED(last); - QVector persistent_moved; - if (first < q->rowCount(parent)) { - for (QHash::const_iterator it = persistent.indexes.constBegin(); - it != persistent.indexes.constEnd(); ++it) { - QPersistentModelIndexData *data = *it; - const QModelIndex &index = data->index; - if (index.row() >= first && index.isValid() && index.parent() == parent) { - persistent_moved.append(data); - } - } - } - persistent.moved.push(persistent_moved); -} - -void QAbstractItemModelPrivate::rowsInserted(const QModelIndex &parent, - int first, int last) -{ - QVector persistent_moved = persistent.moved.pop(); - int count = (last - first) + 1; // it is important to only use the delta, because the change could be nested - for (QVector::const_iterator it = persistent_moved.constBegin(); - it != persistent_moved.constEnd(); ++it) { - QPersistentModelIndexData *data = *it; - QModelIndex old = data->index; - persistent.indexes.erase(persistent.indexes.find(old)); - data->index = q_func()->index(old.row() + count, old.column(), parent); - if (data->index.isValid()) { - persistent.insertMultiAtEnd(data->index, data); - } else { - qWarning() << "QAbstractItemModel::endInsertRows: Invalid index (" << old.row() + count << ',' << old.column() << ") in model" << q_func(); - } - } -} - -void QAbstractItemModelPrivate::itemsAboutToBeMoved(const QModelIndex &srcParent, int srcFirst, int srcLast, const QModelIndex &destinationParent, int destinationChild, Qt::Orientation orientation) -{ - QVector persistent_moved_explicitly; - QVector persistent_moved_in_source; - QVector persistent_moved_in_destination; - - QHash::const_iterator it; - const QHash::const_iterator begin = persistent.indexes.constBegin(); - const QHash::const_iterator end = persistent.indexes.constEnd(); - - const bool sameParent = (srcParent == destinationParent); - const bool movingUp = (srcFirst > destinationChild); - - for ( it = begin; it != end; ++it) { - QPersistentModelIndexData *data = *it; - const QModelIndex &index = data->index; - const QModelIndex &parent = index.parent(); - const bool isSourceIndex = (parent == srcParent); - const bool isDestinationIndex = (parent == destinationParent); - - int childPosition; - if (orientation == Qt::Vertical) - childPosition = index.row(); - else - childPosition = index.column(); - - if (!index.isValid() || !(isSourceIndex || isDestinationIndex ) ) - continue; - - if (!sameParent && isDestinationIndex) { - if (childPosition >= destinationChild) - persistent_moved_in_destination.append(data); - continue; - } - - if (sameParent && movingUp && childPosition < destinationChild) - continue; - - if (sameParent && !movingUp && childPosition < srcFirst ) - continue; - - if (!sameParent && childPosition < srcFirst) - continue; - - if (sameParent && (childPosition > srcLast) && (childPosition >= destinationChild )) - continue; - - if ((childPosition <= srcLast) && (childPosition >= srcFirst)) { - persistent_moved_explicitly.append(data); - } else { - persistent_moved_in_source.append(data); - } - } - persistent.moved.push(persistent_moved_explicitly); - persistent.moved.push(persistent_moved_in_source); - persistent.moved.push(persistent_moved_in_destination); -} - -/*! - \internal - - Moves persistent indexes \a indexes by amount \a change. The change will be either a change in row value or a change in - column value depending on the value of \a orientation. The indexes may also be moved to a different parent if \a parent - differs from the existing parent for the index. -*/ -void QAbstractItemModelPrivate::movePersistentIndexes(QVector indexes, int change, const QModelIndex &parent, Qt::Orientation orientation) -{ - QVector::const_iterator it; - const QVector::const_iterator begin = indexes.constBegin(); - const QVector::const_iterator end = indexes.constEnd(); - - for (it = begin; it != end; ++it) - { - QPersistentModelIndexData *data = *it; - - int row = data->index.row(); - int column = data->index.column(); - - if (Qt::Vertical == orientation) - row += change; - else - column += change; - - persistent.indexes.erase(persistent.indexes.find(data->index)); - data->index = q_func()->index(row, column, parent); - if (data->index.isValid()) { - persistent.insertMultiAtEnd(data->index, data); - } else { - qWarning() << "QAbstractItemModel::endMoveRows: Invalid index (" << row << "," << column << ") in model" << q_func(); - } - } -} - -void QAbstractItemModelPrivate::itemsMoved(const QModelIndex &sourceParent, int sourceFirst, int sourceLast, const QModelIndex &destinationParent, int destinationChild, Qt::Orientation orientation) -{ - QVector moved_in_destination = persistent.moved.pop(); - QVector moved_in_source = persistent.moved.pop(); - QVector moved_explicitly = persistent.moved.pop(); - - const bool sameParent = (sourceParent == destinationParent); - const bool movingUp = (sourceFirst > destinationChild); - - const int explicit_change = (!sameParent || movingUp) ? destinationChild - sourceFirst : destinationChild - sourceLast - 1 ; - const int source_change = (!sameParent || !movingUp) ? -1*(sourceLast - sourceFirst + 1) : sourceLast - sourceFirst + 1 ; - const int destination_change = sourceLast - sourceFirst + 1; - - movePersistentIndexes(moved_explicitly, explicit_change, destinationParent, orientation); - movePersistentIndexes(moved_in_source, source_change, sourceParent, orientation); - movePersistentIndexes(moved_in_destination, destination_change, destinationParent, orientation); -} - -void QAbstractItemModelPrivate::rowsAboutToBeRemoved(const QModelIndex &parent, - int first, int last) -{ - QVector persistent_moved; - QVector persistent_invalidated; - // find the persistent indexes that are affected by the change, either by being in the removed subtree - // or by being on the same level and below the removed rows - for (QHash::const_iterator it = persistent.indexes.constBegin(); - it != persistent.indexes.constEnd(); ++it) { - QPersistentModelIndexData *data = *it; - bool level_changed = false; - QModelIndex current = data->index; - while (current.isValid()) { - QModelIndex current_parent = current.parent(); - if (current_parent == parent) { // on the same level as the change - if (!level_changed && current.row() > last) // below the removed rows - persistent_moved.append(data); - else if (current.row() <= last && current.row() >= first) // in the removed subtree - persistent_invalidated.append(data); - break; - } - current = current_parent; - level_changed = true; - } - } - - persistent.moved.push(persistent_moved); - persistent.invalidated.push(persistent_invalidated); -} - -void QAbstractItemModelPrivate::rowsRemoved(const QModelIndex &parent, - int first, int last) -{ - QVector persistent_moved = persistent.moved.pop(); - int count = (last - first) + 1; // it is important to only use the delta, because the change could be nested - for (QVector::const_iterator it = persistent_moved.constBegin(); - it != persistent_moved.constEnd(); ++it) { - QPersistentModelIndexData *data = *it; - QModelIndex old = data->index; - persistent.indexes.erase(persistent.indexes.find(old)); - data->index = q_func()->index(old.row() - count, old.column(), parent); - if (data->index.isValid()) { - persistent.insertMultiAtEnd(data->index, data); - } else { - qWarning() << "QAbstractItemModel::endRemoveRows: Invalid index (" << old.row() - count << ',' << old.column() << ") in model" << q_func(); - } - } - QVector persistent_invalidated = persistent.invalidated.pop(); - for (QVector::const_iterator it = persistent_invalidated.constBegin(); - it != persistent_invalidated.constEnd(); ++it) { - QPersistentModelIndexData *data = *it; - persistent.indexes.erase(persistent.indexes.find(data->index)); - data->index = QModelIndex(); - data->model = 0; - } -} - -void QAbstractItemModelPrivate::columnsAboutToBeInserted(const QModelIndex &parent, - int first, int last) -{ - Q_Q(QAbstractItemModel); - Q_UNUSED(last); - QVector persistent_moved; - if (first < q->columnCount(parent)) { - for (QHash::const_iterator it = persistent.indexes.constBegin(); - it != persistent.indexes.constEnd(); ++it) { - QPersistentModelIndexData *data = *it; - const QModelIndex &index = data->index; - if (index.column() >= first && index.isValid() && index.parent() == parent) - persistent_moved.append(data); - } - } - persistent.moved.push(persistent_moved); -} - -void QAbstractItemModelPrivate::columnsInserted(const QModelIndex &parent, - int first, int last) -{ - QVector persistent_moved = persistent.moved.pop(); - int count = (last - first) + 1; // it is important to only use the delta, because the change could be nested - for (QVector::const_iterator it = persistent_moved.constBegin(); - it != persistent_moved.constEnd(); ++it) { - QPersistentModelIndexData *data = *it; - QModelIndex old = data->index; - persistent.indexes.erase(persistent.indexes.find(old)); - data->index = q_func()->index(old.row(), old.column() + count, parent); - if (data->index.isValid()) { - persistent.insertMultiAtEnd(data->index, data); - } else { - qWarning() << "QAbstractItemModel::endInsertColumns: Invalid index (" << old.row() << ',' << old.column() + count << ") in model" << q_func(); - } - } -} - -void QAbstractItemModelPrivate::columnsAboutToBeRemoved(const QModelIndex &parent, - int first, int last) -{ - QVector persistent_moved; - QVector persistent_invalidated; - // find the persistent indexes that are affected by the change, either by being in the removed subtree - // or by being on the same level and to the right of the removed columns - for (QHash::const_iterator it = persistent.indexes.constBegin(); - it != persistent.indexes.constEnd(); ++it) { - QPersistentModelIndexData *data = *it; - bool level_changed = false; - QModelIndex current = data->index; - while (current.isValid()) { - QModelIndex current_parent = current.parent(); - if (current_parent == parent) { // on the same level as the change - if (!level_changed && current.column() > last) // right of the removed columns - persistent_moved.append(data); - else if (current.column() <= last && current.column() >= first) // in the removed subtree - persistent_invalidated.append(data); - break; - } - current = current_parent; - level_changed = true; - } - } - - persistent.moved.push(persistent_moved); - persistent.invalidated.push(persistent_invalidated); - -} - -void QAbstractItemModelPrivate::columnsRemoved(const QModelIndex &parent, - int first, int last) -{ - QVector persistent_moved = persistent.moved.pop(); - int count = (last - first) + 1; // it is important to only use the delta, because the change could be nested - for (QVector::const_iterator it = persistent_moved.constBegin(); - it != persistent_moved.constEnd(); ++it) { - QPersistentModelIndexData *data = *it; - QModelIndex old = data->index; - persistent.indexes.erase(persistent.indexes.find(old)); - data->index = q_func()->index(old.row(), old.column() - count, parent); - if (data->index.isValid()) { - persistent.insertMultiAtEnd(data->index, data); - } else { - qWarning() << "QAbstractItemModel::endRemoveColumns: Invalid index (" << old.row() << ',' << old.column() - count << ") in model" << q_func(); - } - } - QVector persistent_invalidated = persistent.invalidated.pop(); - for (QVector::const_iterator it = persistent_invalidated.constBegin(); - it != persistent_invalidated.constEnd(); ++it) { - QPersistentModelIndexData *data = *it; - persistent.indexes.erase(persistent.indexes.find(data->index)); - data->index = QModelIndex(); - data->model = 0; - } -} - -/*! - \class QModelIndex - - \brief The QModelIndex class is used to locate data in a data model. - - \ingroup model-view - - - This class is used as an index into item models derived from - QAbstractItemModel. The index is used by item views, delegates, and - selection models to locate an item in the model. - - New QModelIndex objects are created by the model using the - QAbstractItemModel::createIndex() function. An \e invalid model index can - be constructed with the QModelIndex constructor. Invalid indexes are often - used as parent indexes when referring to top-level items in a model. - - Model indexes refer to items in models, and contain all the information - required to specify their locations in those models. Each index is located - in a given row and column, and may have a parent index; use row(), - column(), and parent() to obtain this information. Each top-level item in a - model is represented by a model index that does not have a parent index - - in this case, parent() will return an invalid model index, equivalent to an - index constructed with the zero argument form of the QModelIndex() - constructor. - - To obtain a model index that refers to an existing item in a model, call - QAbstractItemModel::index() with the required row and column values, and - the model index of the parent. When referring to top-level items in a - model, supply QModelIndex() as the parent index. - - The model() function returns the model that the index references as a - QAbstractItemModel. The child() function is used to examine items held - under the index in the model. The sibling() function allows you to traverse - items in the model on the same level as the index. - - \note Model indexes should be used immediately and then discarded. You - should not rely on indexes to remain valid after calling model functions - that change the structure of the model or delete items. If you need to - keep a model index over time use a QPersistentModelIndex. - - \sa {Model/View Programming}, QPersistentModelIndex, QAbstractItemModel -*/ - -/*! - \fn QModelIndex::QModelIndex() - - Creates a new empty model index. This type of model index is used to - indicate that the position in the model is invalid. - - \sa isValid() QAbstractItemModel -*/ - -/*! - \fn QModelIndex::QModelIndex(int row, int column, void *data, const QAbstractItemModel *model) - - \internal - - Creates a new model index at the given \a row and \a column, - pointing to some \a data. -*/ - -/*! - \fn QModelIndex::QModelIndex(const QModelIndex &other) - - Creates a new model index that is a copy of the \a other model - index. -*/ - -/*! - \fn QModelIndex::~QModelIndex() - - Destroys the model index. -*/ - -/*! - \fn int QModelIndex::row() const - - Returns the row this model index refers to. -*/ - - -/*! - \fn int QModelIndex::column() const - - Returns the column this model index refers to. -*/ - - -/*! - \fn void *QModelIndex::internalPointer() const - - Returns a \c{void} \c{*} pointer used by the model to associate - the index with the internal data structure. - - \sa QAbstractItemModel::createIndex() -*/ - -/*! - \fn void *QModelIndex::internalId() const - - Returns a \c{qint64} used by the model to associate - the index with the internal data structure. - - \sa QAbstractItemModel::createIndex() -*/ - -/*! - \fn bool QModelIndex::isValid() const - - Returns true if this model index is valid; otherwise returns false. - - A valid index belongs to a model, and has non-negative row and column - numbers. - - \sa model(), row(), column() -*/ - -/*! - \fn const QAbstractItemModel *QModelIndex::model() const - - Returns a pointer to the model containing the item that this index - refers to. - - A const pointer to the model is returned because calls to non-const - functions of the model might invalidate the model index and possibly - crash your application. -*/ - -/*! - \fn QModelIndex QModelIndex::sibling(int row, int column) const - - Returns the sibling at \a row and \a column. If there is no sibling at this - position, an invalid QModelIndex is returned. - - \sa parent(), child() -*/ - -/*! - \fn QModelIndex QModelIndex::child(int row, int column) const - - Returns the child of the model index that is stored in the given \a row and - \a column. - - \note This function does not work for an invalid model index which is often - used as the root index. - - \sa parent(), sibling() -*/ - -/*! - \fn QVariant QModelIndex::data(int role) const - - Returns the data for the given \a role for the item referred to by the - index. -*/ - -/*! - \fn Qt::ItemFlags QModelIndex::flags() const - \since 4.2 - - Returns the flags for the item referred to by the index. -*/ - -/*! - \fn bool QModelIndex::operator==(const QModelIndex &other) const - - Returns true if this model index refers to the same location as the - \a other model index; otherwise returns false. - - All values in the model index are used when comparing with another model - index. -*/ - - -/*! - \fn bool QModelIndex::operator!=(const QModelIndex &other) const - - Returns true if this model index does not refer to the same location as - the \a other model index; otherwise returns false. -*/ - - -/*! - \fn QModelIndex QModelIndex::parent() const - - Returns the parent of the model index, or QModelIndex() if it has no - parent. - - \sa child(), sibling(), model() -*/ - -/*! - \class QAbstractItemModel - - \brief The QAbstractItemModel class provides the abstract interface for - item model classes. - - \ingroup model-view - - - The QAbstractItemModel class defines the standard interface that item - models must use to be able to interoperate with other components in the - model/view architecture. It is not supposed to be instantiated directly. - Instead, you should subclass it to create new models. - - The QAbstractItemModel class is one of the \l{Model/View Classes} - and is part of Qt's \l{Model/View Programming}{model/view framework}. - - If you need a model to use with a QListView or a QTableView, you should - consider subclassing QAbstractListModel or QAbstractTableModel instead of - this class. - - The underlying data model is exposed to views and delegates as a hierarchy - of tables. If you do not make use of the hierarchy, then the model is a - simple table of rows and columns. Each item has a unique index specified by - a QModelIndex. - - \image modelindex-no-parent.png - - Every item of data that can be accessed via a model has an associated model - index. You can obtain this model index using the index() function. Each - index may have a sibling() index; child items have a parent() index. - - Each item has a number of data elements associated with it and they can be - retrieved by specifying a role (see \l Qt::ItemDataRole) to the model's - data() function. Data for all available roles can be obtained at the same - time using the itemData() function. - - Data for each role is set using a particular \l Qt::ItemDataRole. Data for - individual roles are set individually with setData(), or they can be set - for all roles with setItemData(). - - Items can be queried with flags() (see \l Qt::ItemFlag) to see if they can - be selected, dragged, or manipulated in other ways. - - If an item has child objects, hasChildren() returns true for the - corresponding index. - - The model has a rowCount() and a columnCount() for each level of the - hierarchy. Rows and columns can be inserted and removed with insertRows(), - insertColumns(), removeRows(), and removeColumns(). - - The model emits signals to indicate changes. For example, dataChanged() is - emitted whenever items of data made available by the model are changed. - Changes to the headers supplied by the model cause headerDataChanged() to - be emitted. If the structure of the underlying data changes, the model can - emit layoutChanged() to indicate to any attached views that they should - redisplay any items shown, taking the new structure into account. - - The items available through the model can be searched for particular data - using the match() function. - - To sort the model, you can use sort(). - - - \section1 Subclassing - - \note Some general guidelines for subclassing models are available in the - \l{Model Subclassing Reference}. - - When subclassing QAbstractItemModel, at the very least you must implement - index(), parent(), rowCount(), columnCount(), and data(). These functions - are used in all read-only models, and form the basis of editable models. - - You can also reimplement hasChildren() to provide special behavior for - models where the implementation of rowCount() is expensive. This makes it - possible for models to restrict the amount of data requested by views, and - can be used as a way to implement lazy population of model data. - - To enable editing in your model, you must also implement setData(), and - reimplement flags() to ensure that \c ItemIsEditable is returned. You can - also reimplement headerData() and setHeaderData() to control the way the - headers for your model are presented. - - The dataChanged() and headerDataChanged() signals must be emitted - explicitly when reimplementing the setData() and setHeaderData() functions, - respectively. - - Custom models need to create model indexes for other components to use. To - do this, call createIndex() with suitable row and column numbers for the - item, and an identifier for it, either as a pointer or as an integer value. - The combination of these values must be unique for each item. Custom models - typically use these unique identifiers in other reimplemented functions to - retrieve item data and access information about the item's parents and - children. See the \l{Simple Tree Model Example} for more information about - unique identifiers. - - It is not necessary to support every role defined in Qt::ItemDataRole. - Depending on the type of data contained within a model, it may only be - useful to implement the data() function to return valid information for - some of the more common roles. Most models provide at least a textual - representation of item data for the Qt::DisplayRole, and well-behaved - models should also provide valid information for the Qt::ToolTipRole and - Qt::WhatsThisRole. Supporting these roles enables models to be used with - standard Qt views. However, for some models that handle highly-specialized - data, it may be appropriate to provide data only for user-defined roles. - - Models that provide interfaces to resizable data structures can provide - implementations of insertRows(), removeRows(), insertColumns(),and - removeColumns(). When implementing these functions, it is important to - notify any connected views about changes to the model's dimensions both - \e before and \e after they occur: - - \list - \o An insertRows() implementation must call beginInsertRows() \e before - inserting new rows into the data structure, and endInsertRows() - \e{immediately afterwards}. - \o An insertColumns() implementation must call beginInsertColumns() - \e before inserting new columns into the data structure, and - endInsertColumns() \e{immediately afterwards}. - \o A removeRows() implementation must call beginRemoveRows() \e before - the rows are removed from the data structure, and endRemoveRows() - \e{immediately afterwards}. - \o A removeColumns() implementation must call beginRemoveColumns() - \e before the columns are removed from the data structure, and - endRemoveColumns() \e{immediately afterwards}. - \endlist - - The \e private signals that these functions emit give attached components - the chance to take action before any data becomes unavailable. The - encapsulation of the insert and remove operations with these begin and end - functions also enables the model to manage \l{QPersistentModelIndex} - {persistent model indexes} correctly. \bold{If you want selections to be - handled properly, you must ensure that you call these functions.} If you - insert or remove an item with children, you do not need to call these - functions for the child items. In other words, the parent item will take - care of its child items. - - To create models that populate incrementally, you can reimplement - fetchMore() and canFetchMore(). If the reimplementation of fetchMore() adds - rows to the model, \l{QAbstractItemModel::}{beginInsertRows()} and - \l{QAbstractItemModel::}{endInsertRows()} must be called. - - \sa {Model Classes}, {Model Subclassing Reference}, QModelIndex, - QAbstractItemView, {Using drag and drop with item views}, - {Simple DOM Model Example}, {Simple Tree Model Example}, - {Editable Tree Model Example}, {Fetch More Example} -*/ - -/*! - \fn QModelIndex QAbstractItemModel::index(int row, int column, const QModelIndex &parent) const = 0 - - Returns the index of the item in the model specified by the given \a row, - \a column and \a parent index. - - When reimplementing this function in a subclass, call createIndex() to - generate model indexes that other components can use to refer to items in - your model. - - \sa createIndex() -*/ - -/*! - \fn bool QAbstractItemModel::insertColumn(int column, const QModelIndex &parent) - - Inserts a single column before the given \a column in the child items of - the \a parent specified. - - Returns true if the column is inserted; otherwise returns false. - - \sa insertColumns() insertRow() removeColumn() -*/ - -/*! - \fn bool QAbstractItemModel::insertRow(int row, const QModelIndex &parent) - - \note The base class implementation of this function does nothing and - returns false. - - Inserts a single row before the given \a row in the child items of the - \a parent specified. - - Returns true if the row is inserted; otherwise returns false. - - \sa insertRows() insertColumn() removeRow() -*/ - -/*! - \fn QObject *QAbstractItemModel::parent() const - \internal -*/ - -/*! - \fn QModelIndex QAbstractItemModel::parent(const QModelIndex &index) const = 0 - - Returns the parent of the model item with the given \a index. If the item - has no parent, an invalid QModelIndex is returned. - - A common convention used in models that expose tree data structures is that - only items in the first column have children. For that case, when - reimplementing this function in a subclass the column of the returned - QModelIndex would be 0. - - When reimplementing this function in a subclass, be careful to avoid - calling QModelIndex member functions, such as QModelIndex::parent(), since - indexes belonging to your model will simply call your implementation, - leading to infinite recursion. - - \sa createIndex() -*/ - -/*! - \fn bool QAbstractItemModel::removeColumn(int column, const QModelIndex &parent) - - Removes the given \a column from the child items of the \a parent - specified. - - Returns true if the column is removed; otherwise returns false. - - \sa removeColumns(), removeRow(), insertColumn() -*/ - -/*! - \fn bool QAbstractItemModel::removeRow(int row, const QModelIndex &parent) - - Removes the given \a row from the child items of the \a parent specified. - - Returns true if the row is removed; otherwise returns false. - - This is a convenience function that calls removeRows(). The - QAbstractItemModel implementation of removeRows() does nothing. - - \sa removeRows(), removeColumn(), insertRow() -*/ - -/*! - \fn void QAbstractItemModel::headerDataChanged(Qt::Orientation orientation, int first, int last) - - This signal is emitted whenever a header is changed. The \a orientation - indicates whether the horizontal or vertical header has changed. The - sections in the header from the \a first to the \a last need to be updated. - - When reimplementing the setHeaderData() function, this signal must be - emitted explicitly. - - If you are changing the number of columns or rows you do not need to emit - this signal, but use the begin/end functions (refer to the section on - subclassing in the QAbstractItemModel class description for details). - - \sa headerData(), setHeaderData(), dataChanged() -*/ - -/*! - \fn void QAbstractItemModel::layoutAboutToBeChanged(const QList &parents = QList()) - \since 4.2 - - This signal is emitted just before the layout of a model is changed. - Components connected to this signal use it to adapt to changes in the - model's layout. - - Subclasses should update any persistent model indexes after emitting - layoutAboutToBeChanged(). - - The optional @p parents parameter is used to give a more specific notification - about what parts of the layout of the model are changing. An empty list indicates - a change to the layout of the entire model. - - \sa layoutChanged(), changePersistentIndex() -*/ - -/*! - \fn void QAbstractItemModel::layoutChanged(const QList &parents = QList()) - - This signal is emitted whenever the layout of items exposed by the model - has changed; for example, when the model has been sorted. When this signal - is received by a view, it should update the layout of items to reflect this - change. - - When subclassing QAbstractItemModel or QAbstractProxyModel, ensure that you - emit layoutAboutToBeChanged() before changing the order of items or - altering the structure of the data you expose to views, and emit - layoutChanged() after changing the layout. - - The optional @p parents parameter is used to give a more specific notification - about what parts of the layout of the model are changing. An empty list indicates - a change to the layout of the entire model. - - Subclasses should update any persistent model indexes before emitting - layoutChanged(). In other words, when the structure changes: - - \list - \o emit layoutAboutToBeChanged - \o Remember the QModelIndex that will change - \o Update your internal data - \o Call changePersistentIndex() - \o emit layoutChanged - \endlist - - \sa layoutAboutToBeChanged(), dataChanged(), headerDataChanged(), modelReset(), - changePersistentIndex() -*/ - -/*! - Constructs an abstract item model with the given \a parent. -*/ -QAbstractItemModel::QAbstractItemModel(QObject *parent) - : QObject(*new QAbstractItemModelPrivate, parent) -{ -} - -/*! - \internal -*/ -QAbstractItemModel::QAbstractItemModel(QAbstractItemModelPrivate &dd, QObject *parent) - : QObject(dd, parent) -{ -} - -/*! - Destroys the abstract item model. -*/ -QAbstractItemModel::~QAbstractItemModel() -{ - d_func()->invalidatePersistentIndexes(); -} - -/*! - \fn QModelIndex QAbstractItemModel::sibling(int row, int column, const QModelIndex &index) const - - Returns the sibling at \a row and \a column for the item at \a index, or an - invalid QModelIndex if there is no sibling at that location. - - sibling() is just a convenience function that finds the item's parent, and - uses it to retrieve the index of the child item in the specified \a row and - \a column. - - \sa index(), QModelIndex::row(), QModelIndex::column() -*/ - - -/*! - \fn int QAbstractItemModel::rowCount(const QModelIndex &parent) const - - Returns the number of rows under the given \a parent. When the parent is - valid it means that rowCount is returning the number of children of parent. - - \note When implementing a table based model, rowCount() should return 0 - when the parent is valid. - - \sa columnCount() -*/ - -/*! - \fn int QAbstractItemModel::columnCount(const QModelIndex &parent) const - - Returns the number of columns for the children of the given \a parent. - - In most subclasses, the number of columns is independent of the \a parent. - - For example: - - \snippet examples/itemviews/simpledommodel/dommodel.cpp 2 - - \note When implementing a table based model, columnCount() should return 0 - when the parent is valid. - - \sa rowCount() -*/ - -/*! - \fn void QAbstractItemModel::dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QSet &roles = QSet()) - - This signal is emitted whenever the data in an existing item changes. - - If the items are of the same parent, the affected ones are those between - \a topLeft and \a bottomRight inclusive. If the items do not have the same - parent, the behavior is undefined. - - When reimplementing the setData() function, this signal must be emitted - explicitly. - - The optional roles argument can be used to specify which data roles have actually - been modified. An empty set in the roles argument means that all roles should be - considered modified. - - \sa headerDataChanged(), setData(), layoutChanged() -*/ - -/*! - \fn void QAbstractItemModel::rowsInserted(const QModelIndex &parent, int start, int end) - - This signal is emitted after rows have been inserted into the - model. The new items are those between \a start and \a end - inclusive, under the given \a parent item. - - \note Components connected to this signal use it to adapt to changes in the - model's dimensions. It can only be emitted by the QAbstractItemModel - implementation, and cannot be explicitly emitted in subclass code. - - \sa insertRows(), beginInsertRows() -*/ - -/*! - \fn void QAbstractItemModel::rowsAboutToBeInserted(const QModelIndex &parent, int start, int end) - - This signal is emitted just before rows are inserted into the model. The - new items will be positioned between \a start and \a end inclusive, under - the given \a parent item. - - \note Components connected to this signal use it to adapt to changes - in the model's dimensions. It can only be emitted by the QAbstractItemModel - implementation, and cannot be explicitly emitted in subclass code. - - \sa insertRows(), beginInsertRows() -*/ - -/*! - \fn void QAbstractItemModel::rowsRemoved(const QModelIndex &parent, int start, int end) - - This signal is emitted after rows have been removed from the model. The - removed items are those between \a start and \a end inclusive, under the - given \a parent item. - - \note Components connected to this signal use it to adapt to changes - in the model's dimensions. It can only be emitted by the QAbstractItemModel - implementation, and cannot be explicitly emitted in subclass code. - - \sa removeRows(), beginRemoveRows() -*/ - -/*! - \fn void QAbstractItemModel::rowsAboutToBeRemoved(const QModelIndex &parent, int start, int end) - - This signal is emitted just before rows are removed from the model. The - items that will be removed are those between \a start and \a end inclusive, - under the given \a parent item. - - \note Components connected to this signal use it to adapt to changes - in the model's dimensions. It can only be emitted by the QAbstractItemModel - implementation, and cannot be explicitly emitted in subclass code. - - \sa removeRows(), beginRemoveRows() -*/ - -/*! - \fn void QAbstractItemModel::rowsMoved(const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destinationParent, int destinationRow) - \since 4.6 - - This signal is emitted after rows have been moved within the - model. The items between \a sourceStart and \a sourceEnd - inclusive, under the given \a sourceParent item have been moved to \a destinationParent - starting at the row \a destinationRow. - - \bold{Note:} Components connected to this signal use it to adapt to changes - in the model's dimensions. It can only be emitted by the QAbstractItemModel - implementation, and cannot be explicitly emitted in subclass code. - - \sa beginMoveRows() -*/ - -/*! - \fn void QAbstractItemModel::rowsAboutToBeMoved(const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destinationParent, int destinationRow) - \since 4.6 - - This signal is emitted just before rows are moved within the - model. The items that will be moved are those between \a sourceStart and \a sourceEnd - inclusive, under the given \a sourceParent item. They will be moved to \a destinationParent - starting at the row \a destinationRow. - - \bold{Note:} Components connected to this signal use it to adapt to changes - in the model's dimensions. It can only be emitted by the QAbstractItemModel - implementation, and cannot be explicitly emitted in subclass code. - - \sa beginMoveRows() -*/ - -/*! - \fn void QAbstractItemModel::columnsMoved(const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destinationParent, int destinationColumn) - \since 4.6 - - This signal is emitted after columns have been moved within the - model. The items between \a sourceStart and \a sourceEnd - inclusive, under the given \a sourceParent item have been moved to \a destinationParent - starting at the column \a destinationColumn. - - \bold{Note:} Components connected to this signal use it to adapt to changes - in the model's dimensions. It can only be emitted by the QAbstractItemModel - implementation, and cannot be explicitly emitted in subclass code. - - \sa beginMoveRows() -*/ - -/*! - \fn void QAbstractItemModel::columnsAboutToBeMoved(const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destinationParent, int destinationColumn) - \since 4.6 - - This signal is emitted just before columns are moved within the - model. The items that will be moved are those between \a sourceStart and \a sourceEnd - inclusive, under the given \a sourceParent item. They will be moved to \a destinationParent - starting at the column \a destinationColumn. - - \bold{Note:} Components connected to this signal use it to adapt to changes - in the model's dimensions. It can only be emitted by the QAbstractItemModel - implementation, and cannot be explicitly emitted in subclass code. - - \sa beginMoveRows() -*/ - -/*! - \fn void QAbstractItemModel::columnsInserted(const QModelIndex &parent, int start, int end) - - This signal is emitted after columns have been inserted into the model. The - new items are those between \a start and \a end inclusive, under the given - \a parent item. - - \note Components connected to this signal use it to adapt to changes in the - model's dimensions. It can only be emitted by the QAbstractItemModel - implementation, and cannot be explicitly emitted in subclass code. - - \sa insertColumns(), beginInsertColumns() -*/ - -/*! - \fn void QAbstractItemModel::columnsAboutToBeInserted(const QModelIndex &parent, int start, int end) - - This signal is emitted just before columns are inserted into the model. The - new items will be positioned between \a start and \a end inclusive, under - the given \a parent item. - - \note Components connected to this signal use it to adapt to changes in the - model's dimensions. It can only be emitted by the QAbstractItemModel - implementation, and cannot be explicitly emitted in subclass code. - - \sa insertColumns(), beginInsertColumns() -*/ - -/*! - \fn void QAbstractItemModel::columnsRemoved(const QModelIndex &parent, int start, int end) - - This signal is emitted after columns have been removed from the model. - The removed items are those between \a start and \a end inclusive, - under the given \a parent item. - - \note Components connected to this signal use it to adapt to changes in - the model's dimensions. It can only be emitted by the QAbstractItemModel - implementation, and cannot be explicitly emitted in subclass code. - - \sa removeColumns(), beginRemoveColumns() -*/ - -/*! - \fn void QAbstractItemModel::columnsAboutToBeRemoved(const QModelIndex &parent, int start, int end) - - This signal is emitted just before columns are removed from the model. The - items to be removed are those between \a start and \a end inclusive, under - the given \a parent item. - - \note Components connected to this signal use it to adapt to changes in the - model's dimensions. It can only be emitted by the QAbstractItemModel - implementation, and cannot be explicitly emitted in subclass code. - - \sa removeColumns(), beginRemoveColumns() -*/ - -/*! - Returns true if the model returns a valid QModelIndex for \a row and - \a column with \a parent, otherwise returns false. -*/ -bool QAbstractItemModel::hasIndex(int row, int column, const QModelIndex &parent) const -{ - if (row < 0 || column < 0) - return false; - return row < rowCount(parent) && column < columnCount(parent); -} - - -/*! - Returns true if \a parent has any children; otherwise returns false. - - Use rowCount() on the parent to find out the number of children. - - \sa parent() index() -*/ -bool QAbstractItemModel::hasChildren(const QModelIndex &parent) const -{ - return (rowCount(parent) > 0) && (columnCount(parent) > 0); -} - - -/*! - Returns a map with values for all predefined roles in the model for the - item at the given \a index. - - Reimplement this function if you want to extend the default behavior of - this function to include custom roles in the map. - - \sa Qt::ItemDataRole, data() -*/ -QMap QAbstractItemModel::itemData(const QModelIndex &index) const -{ - QMap roles; - for (int i = 0; i < Qt::UserRole; ++i) { - QVariant variantData = data(index, i); - if (variantData.isValid()) - roles.insert(i, variantData); - } - return roles; -} - -/*! - Sets the \a role data for the item at \a index to \a value. - - Returns true if successful; otherwise returns false. - - The dataChanged() signal should be emitted if the data was successfully - set. - - The base class implementation returns false. This function and data() must - be reimplemented for editable models. - - \sa Qt::ItemDataRole, data(), itemData() -*/ -bool QAbstractItemModel::setData(const QModelIndex &index, const QVariant &value, int role) -{ - Q_UNUSED(index); - Q_UNUSED(value); - Q_UNUSED(role); - return false; -} - -/*! - \fn QVariant QAbstractItemModel::data(const QModelIndex &index, int role) const = 0 - - Returns the data stored under the given \a role for the item referred to - by the \a index. - - \note If you do not have a value to return, return an \bold invalid - QVariant instead of returning 0. - - \sa Qt::ItemDataRole, setData(), headerData() -*/ - -/*! - Sets the role data for the item at \a index to the associated value in - \a roles, for every Qt::ItemDataRole. - - Returns true if successful; otherwise returns false. - - Roles that are not in \a roles will not be modified. - - \sa setData() data() itemData() -*/ -bool QAbstractItemModel::setItemData(const QModelIndex &index, const QMap &roles) -{ - bool b = true; - for (QMap::ConstIterator it = roles.begin(); it != roles.end(); ++it) - b = b && setData(index, it.value(), it.key()); - return b; -} - -/*! - Returns a list of MIME types that can be used to describe a list of model - indexes. - - \sa mimeData() -*/ -QStringList QAbstractItemModel::mimeTypes() const -{ - QStringList types; - types << QLatin1String("application/x-qabstractitemmodeldatalist"); - return types; -} - -/*! - Returns an object that contains serialized items of data corresponding to - the list of \a indexes specified. The formats used to describe the encoded - data is obtained from the mimeTypes() function. - - If the list of indexes is empty, or there are no supported MIME types, 0 is - returned rather than a serialized empty list. - - \sa mimeTypes(), dropMimeData() -*/ -QMimeData *QAbstractItemModel::mimeData(const QModelIndexList &indexes) const -{ - if (indexes.count() <= 0) - return 0; - QStringList types = mimeTypes(); - if (types.isEmpty()) - return 0; - QMimeData *data = new QMimeData(); - QString format = types.at(0); - QByteArray encoded; - QDataStream stream(&encoded, QIODevice::WriteOnly); - encodeData(indexes, stream); - data->setData(format, encoded); - return data; -} - -/*! - Handles the \a data supplied by a drag and drop operation that ended with - the given \a action. - - Returns true if the data and action can be handled by the model; otherwise - returns false. - - Although the specified \a row, \a column and \a parent indicate the - location of an item in the model where the operation ended, it is the - responsibility of the view to provide a suitable location for where the - data should be inserted. - - For instance, a drop action on an item in a QTreeView can result in new - items either being inserted as children of the item specified by \a row, - \a column, and \a parent, or as siblings of the item. - - When row and column are -1 it means that it is up to the model to decide - where to place the data. This can occur in a tree when data is dropped on - a parent. Models will usually append the data to the parent in this case. - - \sa supportedDropActions(), {Using drag and drop with item views} -*/ -bool QAbstractItemModel::dropMimeData(const QMimeData *data, Qt::DropAction action, - int row, int column, const QModelIndex &parent) -{ - // check if the action is supported - if (!data || !(action == Qt::CopyAction || action == Qt::MoveAction)) - return false; - // check if the format is supported - QStringList types = mimeTypes(); - if (types.isEmpty()) - return false; - QString format = types.at(0); - if (!data->hasFormat(format)) - return false; - if (row > rowCount(parent)) - row = rowCount(parent); - if (row == -1) - row = rowCount(parent); - if (column == -1) - column = 0; - // decode and insert - QByteArray encoded = data->data(format); - QDataStream stream(&encoded, QIODevice::ReadOnly); - return decodeData(row, column, parent, stream); -} - -/*! - \since 4.2 - - Returns the drop actions supported by this model. - - The default implementation returns Qt::CopyAction. Reimplement this - function if you wish to support additional actions. You must also - reimplement the dropMimeData() function to handle the additional - operations. - - \sa dropMimeData(), Qt::DropActions, {Using drag and drop with item - views} -*/ -Qt::DropActions QAbstractItemModel::supportedDropActions() const -{ - return Qt::CopyAction; -} - -/*! - Returns the actions supported by the data in this model. - - The default implementation returns supportedDropActions() unless specific - values have been set with setSupportedDragActions(). - - supportedDragActions() is used by QAbstractItemView::startDrag() as the - default values when a drag occurs. - - \sa Qt::DropActions, {Using drag and drop with item views} -*/ -Qt::DropActions QAbstractItemModel::supportedDragActions() const -{ - // ### Qt 5: make this virtual or these properties - Q_D(const QAbstractItemModel); - if (d->supportedDragActions != -1) - return d->supportedDragActions; - return supportedDropActions(); -} - -/*! - \since 4.2 - - Sets the supported drag \a actions for the items in the model. - - \sa supportedDragActions(), {Using drag and drop with item views} -*/ -void QAbstractItemModel::setSupportedDragActions(Qt::DropActions actions) -{ - Q_D(QAbstractItemModel); - d->supportedDragActions = actions; -} - -/*! - \note The base class implementation of this function does nothing and - returns false. - - On models that support this, inserts \a count rows into the model before - the given \a row. Items in the new row will be children of the item - represented by the \a parent model index. - - If \a row is 0, the rows are prepended to any existing rows in the parent. - - If \a row is rowCount(), the rows are appended to any existing rows in the - parent. - - If \a parent has no children, a single column with \a count rows is - inserted. - - Returns true if the rows were successfully inserted; otherwise returns - false. - - If you implement your own model, you can reimplement this function if you - want to support insertions. Alternatively, you can provide your own API for - altering the data. In either case, you will need to call - beginInsertRows() and endInsertRows() to notify other components that the - model has changed. - - \sa insertColumns(), removeRows(), beginInsertRows(), endInsertRows() -*/ -bool QAbstractItemModel::insertRows(int, int, const QModelIndex &) -{ - return false; -} - -/*! - On models that support this, inserts \a count new columns into the model - before the given \a column. The items in each new column will be children - of the item represented by the \a parent model index. - - If \a column is 0, the columns are prepended to any existing columns. - - If \a column is columnCount(), the columns are appended to any existing - columns. - - If \a parent has no children, a single row with \a count columns is - inserted. - - Returns true if the columns were successfully inserted; otherwise returns - false. - - The base class implementation does nothing and returns false. - - If you implement your own model, you can reimplement this function if you - want to support insertions. Alternatively, you can provide your own API for - altering the data. - - \sa insertRows(), removeColumns(), beginInsertColumns(), endInsertColumns() -*/ -bool QAbstractItemModel::insertColumns(int, int, const QModelIndex &) -{ - return false; -} - -/*! - On models that support this, removes \a count rows starting with the given - \a row under parent \a parent from the model. - - Returns true if the rows were successfully removed; otherwise returns - false. - - The base class implementation does nothing and returns false. - - If you implement your own model, you can reimplement this function if you - want to support removing. Alternatively, you can provide your own API for - altering the data. - - \sa removeRow(), removeColumns(), insertColumns(), beginRemoveRows(), - endRemoveRows() -*/ -bool QAbstractItemModel::removeRows(int, int, const QModelIndex &) -{ - return false; -} - -/*! - On models that support this, removes \a count columns starting with the - given \a column under parent \a parent from the model. - - Returns true if the columns were successfully removed; otherwise returns - false. - - The base class implementation does nothing and returns false. - - If you implement your own model, you can reimplement this function if you - want to support removing. Alternatively, you can provide your own API for - altering the data. - - \sa removeColumn(), removeRows(), insertColumns(), beginRemoveColumns(), - endRemoveColumns() -*/ -bool QAbstractItemModel::removeColumns(int, int, const QModelIndex &) -{ - return false; -} - -/*! - Fetches any available data for the items with the parent specified by the - \a parent index. - - Reimplement this if you are populating your model incrementally. - - The default implementation does nothing. - - \sa canFetchMore() -*/ -void QAbstractItemModel::fetchMore(const QModelIndex &) -{ - // do nothing -} - -/*! - Returns true if there is more data available for \a parent; otherwise - returns false. - - The default implementation always returns false. - - If canFetchMore() returns true, QAbstractItemView will call fetchMore(). - However, the fetchMore() function is only called when the model is being - populated incrementally. - - \sa fetchMore() -*/ -bool QAbstractItemModel::canFetchMore(const QModelIndex &) const -{ - return false; -} - -/*! - Returns the item flags for the given \a index. - - The base class implementation returns a combination of flags that enables - the item (\c ItemIsEnabled) and allows it to be selected - (\c ItemIsSelectable). - - \sa Qt::ItemFlags -*/ -Qt::ItemFlags QAbstractItemModel::flags(const QModelIndex &index) const -{ - Q_D(const QAbstractItemModel); - if (!d->indexValid(index)) - return 0; - - return Qt::ItemIsSelectable|Qt::ItemIsEnabled; -} - -/*! - Sorts the model by \a column in the given \a order. - - The base class implementation does nothing. -*/ -void QAbstractItemModel::sort(int column, Qt::SortOrder order) -{ - Q_UNUSED(column); - Q_UNUSED(order); - // do nothing -} - -/*! - Returns a model index for the buddy of the item represented by \a index. - When the user wants to edit an item, the view will call this function to - check whether another item in the model should be edited instead. Then, the - view will construct a delegate using the model index returned by the buddy - item. - - The default implementation of this function has each item as its own buddy. -*/ -QModelIndex QAbstractItemModel::buddy(const QModelIndex &index) const -{ - return index; -} - -/*! - Returns a list of indexes for the items in the column of the \a start index - where data stored under the given \a role matches the specified \a value. - The way the search is performed is defined by the \a flags given. The list - that is returned may be empty. - - The search begins from the \a start index, and continues until the number - of matching data items equals \a hits, the search reaches the last row, or - the search reaches \a start again - depending on whether \c MatchWrap is - specified in \a flags. If you want to search for all matching items, use - \a hits = -1. - - By default, this function will perform a wrapping, string-based comparison - on all items, searching for items that begin with the search term specified - by \a value. - - \note The default implementation of this function only searches columns. - Reimplement this function to include a different search behavior. -*/ -QModelIndexList QAbstractItemModel::match(const QModelIndex &start, int role, - const QVariant &value, int hits, - Qt::MatchFlags flags) const -{ - QModelIndexList result; - uint matchType = flags & 0x0F; - Qt::CaseSensitivity cs = flags & Qt::MatchCaseSensitive ? Qt::CaseSensitive : Qt::CaseInsensitive; - bool recurse = flags & Qt::MatchRecursive; - bool wrap = flags & Qt::MatchWrap; - bool allHits = (hits == -1); - QString text; // only convert to a string if it is needed - QModelIndex p = parent(start); - int from = start.row(); - int to = rowCount(p); - - // iterates twice if wrapping - for (int i = 0; (wrap && i < 2) || (!wrap && i < 1); ++i) { - for (int r = from; (r < to) && (allHits || result.count() < hits); ++r) { - QModelIndex idx = index(r, start.column(), p); - if (!idx.isValid()) - continue; - QVariant v = data(idx, role); - // QVariant based matching - if (matchType == Qt::MatchExactly) { - if (value == v) - result.append(idx); - } else { // QString based matching - if (text.isEmpty()) // lazy conversion - text = value.toString(); - QString t = v.toString(); - switch (matchType) { - case Qt::MatchRegExp: - if (QRegExp(text, cs).exactMatch(t)) - result.append(idx); - break; - case Qt::MatchWildcard: - if (QRegExp(text, cs, QRegExp::Wildcard).exactMatch(t)) - result.append(idx); - break; - case Qt::MatchStartsWith: - if (t.startsWith(text, cs)) - result.append(idx); - break; - case Qt::MatchEndsWith: - if (t.endsWith(text, cs)) - result.append(idx); - break; - case Qt::MatchFixedString: - if (t.compare(text, cs) == 0) - result.append(idx); - break; - case Qt::MatchContains: - default: - if (t.contains(text, cs)) - result.append(idx); - } - } - if (recurse && hasChildren(idx)) { // search the hierarchy - result += match(index(0, idx.column(), idx), role, - (text.isEmpty() ? value : text), - (allHits ? -1 : hits - result.count()), flags); - } - } - // prepare for the next iteration - from = 0; - to = start.row(); - } - return result; -} - -/*! - Returns the row and column span of the item represented by \a index. - - \note Currently, span is not used. -*/ - -QSize QAbstractItemModel::span(const QModelIndex &) const -{ - return QSize(1, 1); -} - -/*! - \since 4.6 - - Sets the model's role names to \a roleNames. - - This function allows mapping of role identifiers to role property names in - Declarative UI. This function must be called before the model is used. - Modifying the role names after the model has been set may result in - undefined behaviour. - - \sa roleNames() -*/ -void QAbstractItemModel::setRoleNames(const QHash &roleNames) -{ - Q_D(QAbstractItemModel); - d->roleNames = roleNames; -} - -/*! - \since 4.6 - - Returns the model's role names. - - \sa setRoleNames() -*/ -const QHash &QAbstractItemModel::roleNames() const -{ - Q_D(const QAbstractItemModel); - return d->roleNames; -} - -/*! - Lets the model know that it should submit cached information to permanent - storage. This function is typically used for row editing. - - Returns true if there is no error; otherwise returns false. - - \sa revert() -*/ - -bool QAbstractItemModel::submit() -{ - return true; -} - -/*! - Lets the model know that it should discard cached information. This - function is typically used for row editing. - - \sa submit() -*/ - -void QAbstractItemModel::revert() -{ - // do nothing -} - -/*! - Returns the data for the given \a role and \a section in the header with - the specified \a orientation. - - For horizontal headers, the section number corresponds to the column - number. Similarly, for vertical headers, the section number corresponds to - the row number. - - \sa Qt::ItemDataRole, setHeaderData(), QHeaderView -*/ - -QVariant QAbstractItemModel::headerData(int section, Qt::Orientation orientation, int role) const -{ - Q_UNUSED(orientation); - if (role == Qt::DisplayRole) - return section + 1; - return QVariant(); -} - -/*! - Sets the data for the given \a role and \a section in the header with the - specified \a orientation to the \a value supplied. - - Returns true if the header's data was updated; otherwise returns false. - - When reimplementing this function, the headerDataChanged() signal must be - emitted explicitly. - - \sa Qt::ItemDataRole, headerData() -*/ - -bool QAbstractItemModel::setHeaderData(int section, Qt::Orientation orientation, - const QVariant &value, int role) -{ - Q_UNUSED(section); - Q_UNUSED(orientation); - Q_UNUSED(value); - Q_UNUSED(role); - return false; -} - -/*! - \fn QModelIndex QAbstractItemModel::createIndex(int row, int column, void *ptr) const - - Creates a model index for the given \a row and \a column with the internal - pointer \a ptr. - - When using a QSortFilterProxyModel, its indexes have their own internal - pointer. It is not advisable to access this internal pointer outside of the - model. Use the data() function instead. - - This function provides a consistent interface that model subclasses must - use to create model indexes. -*/ - -/*! - \fn QModelIndex QAbstractItemModel::createIndex(int row, int column, int id) const - \obsolete - - Use QModelIndex - QAbstractItemModel::createIndex(int row, int column, quint32 id) instead. -*/ - -/*! - \fn QModelIndex QAbstractItemModel::createIndex(int row, int column, quint32 id) const - - Creates a model index for the given \a row and \a column with the internal - identifier, \a id. - - This function provides a consistent interface that model subclasses must - use to create model indexes. - - \sa QModelIndex::internalId() -*/ - -/*! - \internal -*/ -void QAbstractItemModel::encodeData(const QModelIndexList &indexes, QDataStream &stream) const -{ - QModelIndexList::ConstIterator it = indexes.begin(); - for (; it != indexes.end(); ++it) - stream << (*it).row() << (*it).column() << itemData(*it); -} - -/*! - \internal - */ -bool QAbstractItemModel::decodeData(int row, int column, const QModelIndex &parent, - QDataStream &stream) -{ - int top = INT_MAX; - int left = INT_MAX; - int bottom = 0; - int right = 0; - QVector rows, columns; - QVector > data; - - while (!stream.atEnd()) { - int r, c; - QMap v; - stream >> r >> c >> v; - rows.append(r); - columns.append(c); - data.append(v); - top = qMin(r, top); - left = qMin(c, left); - bottom = qMax(r, bottom); - right = qMax(c, right); - } - - // insert the dragged items into the table, use a bit array to avoid overwriting items, - // since items from different tables can have the same row and column - int dragRowCount = 0; - int dragColumnCount = right - left + 1; - - // Compute the number of continuous rows upon insertion and modify the rows to match - QVector rowsToInsert(bottom + 1); - for (int i = 0; i < rows.count(); ++i) - rowsToInsert[rows.at(i)] = 1; - for (int i = 0; i < rowsToInsert.count(); ++i) { - if (rowsToInsert[i] == 1){ - rowsToInsert[i] = dragRowCount; - ++dragRowCount; - } - } - for (int i = 0; i < rows.count(); ++i) - rows[i] = top + rowsToInsert[rows[i]]; - - QBitArray isWrittenTo(dragRowCount * dragColumnCount); - - // make space in the table for the dropped data - int colCount = columnCount(parent); - if (colCount == 0) { - insertColumns(colCount, dragColumnCount - colCount, parent); - colCount = columnCount(parent); - } - insertRows(row, dragRowCount, parent); - - row = qMax(0, row); - column = qMax(0, column); - - QVector newIndexes(data.size()); - // set the data in the table - for (int j = 0; j < data.size(); ++j) { - int relativeRow = rows.at(j) - top; - int relativeColumn = columns.at(j) - left; - int destinationRow = relativeRow + row; - int destinationColumn = relativeColumn + column; - int flat = (relativeRow * dragColumnCount) + relativeColumn; - // if the item was already written to, or we just can't fit it in the table, create a new row - if (destinationColumn >= colCount || isWrittenTo.testBit(flat)) { - destinationColumn = qBound(column, destinationColumn, colCount - 1); - destinationRow = row + dragRowCount; - insertRows(row + dragRowCount, 1, parent); - flat = (dragRowCount * dragColumnCount) + relativeColumn; - isWrittenTo.resize(++dragRowCount * dragColumnCount); - } - if (!isWrittenTo.testBit(flat)) { - newIndexes[j] = index(destinationRow, destinationColumn, parent); - isWrittenTo.setBit(flat); - } - } - - for(int k = 0; k < newIndexes.size(); k++) { - if (newIndexes.at(k).isValid()) - setItemData(newIndexes.at(k), data.at(k)); - } - - return true; -} - -/*! - Begins a row insertion operation. - - When reimplementing insertRows() in a subclass, you must call this function - \e before inserting data into the model's underlying data store. - - The \a parent index corresponds to the parent into which the new rows are - inserted; \a first and \a last are the row numbers that the new rows will - have after they have been inserted. - - \table 80% - \row - \o \inlineimage modelview-begin-insert-rows.png Inserting rows - \o Specify the first and last row numbers for the span of rows you - want to insert into an item in a model. - - For example, as shown in the diagram, we insert three rows before - row 2, so \a first is 2 and \a last is 4: - - \snippet doc/src/snippets/code/src_corelib_kernel_qabstractitemmodel.cpp 0 - - This inserts the three new rows as rows 2, 3, and 4. - \row - \o \inlineimage modelview-begin-append-rows.png Appending rows - \o To append rows, insert them after the last row. - - For example, as shown in the diagram, we append two rows to a - collection of 4 existing rows (ending in row 3), so \a first is 4 - and \a last is 5: - - \snippet doc/src/snippets/code/src_corelib_kernel_qabstractitemmodel.cpp 1 - - This appends the two new rows as rows 4 and 5. - \endtable - - \note This function emits the rowsAboutToBeInserted() signal which - connected views (or proxies) must handle before the data is inserted. - Otherwise, the views may end up in an invalid state. - \sa endInsertRows() -*/ -void QAbstractItemModel::beginInsertRows(const QModelIndex &parent, int first, int last) -{ - Q_ASSERT(first >= 0); - Q_ASSERT(last >= first); - Q_D(QAbstractItemModel); - d->changes.push(QAbstractItemModelPrivate::Change(parent, first, last)); - emit rowsAboutToBeInserted(parent, first, last); - d->rowsAboutToBeInserted(parent, first, last); -} - -/*! - Ends a row insertion operation. - - When reimplementing insertRows() in a subclass, you must call this function - \e after inserting data into the model's underlying data store. - - \sa beginInsertRows() -*/ -void QAbstractItemModel::endInsertRows() -{ - Q_D(QAbstractItemModel); - QAbstractItemModelPrivate::Change change = d->changes.pop(); - d->rowsInserted(change.parent, change.first, change.last); - emit rowsInserted(change.parent, change.first, change.last); -} - -/*! - Begins a row removal operation. - - When reimplementing removeRows() in a subclass, you must call this - function \e before removing data from the model's underlying data store. - - The \a parent index corresponds to the parent from which the new rows are - removed; \a first and \a last are the row numbers of the rows to be - removed. - - \table 80% - \row - \o \inlineimage modelview-begin-remove-rows.png Removing rows - \o Specify the first and last row numbers for the span of rows you - want to remove from an item in a model. - - For example, as shown in the diagram, we remove the two rows from - row 2 to row 3, so \a first is 2 and \a last is 3: - - \snippet doc/src/snippets/code/src_corelib_kernel_qabstractitemmodel.cpp 2 - \endtable - - \note This function emits the rowsAboutToBeRemoved() signal which connected - views (or proxies) must handle before the data is removed. Otherwise, the - views may end up in an invalid state. - - \sa endRemoveRows() -*/ -void QAbstractItemModel::beginRemoveRows(const QModelIndex &parent, int first, int last) -{ - Q_ASSERT(first >= 0); - Q_ASSERT(last >= first); - Q_D(QAbstractItemModel); - d->changes.push(QAbstractItemModelPrivate::Change(parent, first, last)); - emit rowsAboutToBeRemoved(parent, first, last); - d->rowsAboutToBeRemoved(parent, first, last); -} - -/*! - Ends a row removal operation. - - When reimplementing removeRows() in a subclass, you must call this function - \e after removing data from the model's underlying data store. - - \sa beginRemoveRows() -*/ -void QAbstractItemModel::endRemoveRows() -{ - Q_D(QAbstractItemModel); - QAbstractItemModelPrivate::Change change = d->changes.pop(); - d->rowsRemoved(change.parent, change.first, change.last); - emit rowsRemoved(change.parent, change.first, change.last); -} - -/*! - Returns whether a move operation is valid. - - A move operation is not allowed if it moves a continuous range of rows to a destination within - itself, or if it attempts to move a row to one of its own descendants. - - \internal -*/ -bool QAbstractItemModelPrivate::allowMove(const QModelIndex &srcParent, int start, int end, const QModelIndex &destinationParent, int destinationStart, Qt::Orientation orientation) -{ - // Don't move the range within itself. - if (destinationParent == srcParent) - return !(destinationStart >= start && destinationStart <= end + 1); - - QModelIndex destinationAncestor = destinationParent; - int pos = (Qt::Vertical == orientation) ? destinationAncestor.row() : destinationAncestor.column(); - forever { - if (destinationAncestor == srcParent) { - if (pos >= start && pos <= end) - return false; - break; - } - - if (!destinationAncestor.isValid()) - break; - - pos = (Qt::Vertical == orientation) ? destinationAncestor.row() : destinationAncestor.column(); - destinationAncestor = destinationAncestor.parent(); - } - - return true; -} - -/*! - \since 4.6 - - Begins a row move operation. - - When reimplementing a subclass, this method simplifies moving - entities in your model. This method is responsible for moving - persistent indexes in the model, which you would otherwise be - required to do yourself. Using beginMoveRows and endMoveRows - is an alternative to emitting layoutAboutToBeChanged and - layoutChanged directly along with changePersistentIndexes. - - The \a sourceParent index corresponds to the parent from which the - rows are moved; \a sourceFirst and \a sourceLast are the first and last - row numbers of the rows to be moved. The \a destinationParent index - corresponds to the parent into which those rows are moved. The \a - destinationChild is the row to which the rows will be moved. That - is, the index at row \a sourceFirst in \a sourceParent will become - row \a destinationChild in \a destinationParent, followed by all other - rows up to \a sourceLast. - - However, when moving rows down in the same parent (\a sourceParent - and \a destinationParent are equal), the rows will be placed before the - \a destinationChild index. That is, if you wish to move rows 0 and 1 so - they will become rows 1 and 2, \a destinationChild should be 3. In this - case, the new index for the source row \c i (which is between - \a sourceFirst and \a sourceLast) is equal to - \c {(destinationChild-sourceLast-1+i)}. - - Note that if \a sourceParent and \a destinationParent are the same, - you must ensure that the \a destinationChild is not within the range - of \a sourceFirst and \a sourceLast + 1. You must also ensure that you - do not attempt to move a row to one of its own children or ancestors. - This method returns false if either condition is true, in which case you - should abort your move operation. - - \table 80% - \row - \o \inlineimage modelview-move-rows-1.png Moving rows to another parent - \o Specify the first and last row numbers for the span of rows in - the source parent you want to move in the model. Also specify - the row in the destination parent to move the span to. - - For example, as shown in the diagram, we move three rows from - row 2 to 4 in the source, so \a sourceFirst is 2 and \a sourceLast is 4. - We move those items to above row 2 in the destination, so \a destinationChild is 2. - - \snippet doc/src/snippets/code/src_corelib_kernel_qabstractitemmodel.cpp 6 - - This moves the three rows rows 2, 3, and 4 in the source to become 2, 3 and 4 in - the destination. Other affected siblings are displaced accordingly. - \row - \o \inlineimage modelview-move-rows-2.png Moving rows to append to another parent - \o To append rows to another parent, move them to after the last row. - - For example, as shown in the diagram, we move three rows to a - collection of 6 existing rows (ending in row 5), so \a destinationChild is 6: - - \snippet doc/src/snippets/code/src_corelib_kernel_qabstractitemmodel.cpp 7 - - This moves the target rows to the end of the target parent as 6, 7 and 8. - \row - \o \inlineimage modelview-move-rows-3.png Moving rows in the same parent up - \o To move rows within the same parent, specify the row to move them to. - - For example, as shown in the diagram, we move one item from row 2 to row 0, - so \a sourceFirst and \a sourceLast are 2 and \a destinationChild is 0. - - \snippet doc/src/snippets/code/src_corelib_kernel_qabstractitemmodel.cpp 8 - - Note that other rows may be displaced accordingly. Note also that when moving - items within the same parent you should not attempt invalid or no-op moves. In - the above example, item 2 is at row 2 before the move, so it can not be moved - to row 2 (where it is already) or row 3 (no-op as row 3 means above row 3, where - it is already) - - \row - \o \inlineimage modelview-move-rows-4.png Moving rows in the same parent down - \o To move rows within the same parent, specify the row to move them to. - - For example, as shown in the diagram, we move one item from row 2 to row 4, - so \a sourceFirst and \a sourceLast are 2 and \a destinationChild is 4. - - \snippet doc/src/snippets/code/src_corelib_kernel_qabstractitemmodel.cpp 9 - - Note that other rows may be displaced accordingly. - \endtable - - \sa endMoveRows() -*/ -bool QAbstractItemModel::beginMoveRows(const QModelIndex &sourceParent, int sourceFirst, int sourceLast, const QModelIndex &destinationParent, int destinationChild) -{ - Q_ASSERT(sourceFirst >= 0); - Q_ASSERT(sourceLast >= sourceFirst); - Q_ASSERT(destinationChild >= 0); - Q_D(QAbstractItemModel); - - if (!d->allowMove(sourceParent, sourceFirst, sourceLast, destinationParent, destinationChild, Qt::Vertical)) { - return false; - } - - QAbstractItemModelPrivate::Change sourceChange(sourceParent, sourceFirst, sourceLast); - sourceChange.needsAdjust = sourceParent.isValid() && sourceParent.row() >= destinationChild && sourceParent.parent() == destinationParent; - d->changes.push(sourceChange); - int destinationLast = destinationChild + (sourceLast - sourceFirst); - QAbstractItemModelPrivate::Change destinationChange(destinationParent, destinationChild, destinationLast); - destinationChange.needsAdjust = destinationParent.isValid() && destinationParent.row() >= sourceLast && destinationParent.parent() == sourceParent; - d->changes.push(destinationChange); - - emit rowsAboutToBeMoved(sourceParent, sourceFirst, sourceLast, destinationParent, destinationChild); - d->itemsAboutToBeMoved(sourceParent, sourceFirst, sourceLast, destinationParent, destinationChild, Qt::Vertical); - return true; -} - -/*! - Ends a row move operation. - - When implementing a subclass, you must call this - function \e after moving data within the model's underlying data - store. - - \sa beginMoveRows() - - \since 4.6 -*/ -void QAbstractItemModel::endMoveRows() -{ - Q_D(QAbstractItemModel); - - QAbstractItemModelPrivate::Change insertChange = d->changes.pop(); - QAbstractItemModelPrivate::Change removeChange = d->changes.pop(); - - QModelIndex adjustedSource = removeChange.parent; - QModelIndex adjustedDestination = insertChange.parent; - - const int numMoved = removeChange.last - removeChange.first + 1; - if (insertChange.needsAdjust) - adjustedDestination = createIndex(adjustedDestination.row() - numMoved, adjustedDestination.column(), adjustedDestination.internalPointer()); - - if (removeChange.needsAdjust) - adjustedSource = createIndex(adjustedSource.row() + numMoved, adjustedSource.column(), adjustedSource.internalPointer()); - - d->itemsMoved(adjustedSource, removeChange.first, removeChange.last, adjustedDestination, insertChange.first, Qt::Vertical); - - emit rowsMoved(adjustedSource, removeChange.first, removeChange.last, adjustedDestination, insertChange.first); -} - -/*! - Begins a column insertion operation. - - When reimplementing insertColumns() in a subclass, you must call this - function \e before inserting data into the model's underlying data store. - - The \a parent index corresponds to the parent into which the new columns - are inserted; \a first and \a last are the column numbers of the new - columns will have after they have been inserted. - - \table 80% - \row - \o \inlineimage modelview-begin-insert-columns.png Inserting columns - \o Specify the first and last column numbers for the span of columns - you want to insert into an item in a model. - - For example, as shown in the diagram, we insert three columns - before column 4, so \a first is 4 and \a last is 6: - - \snippet doc/src/snippets/code/src_corelib_kernel_qabstractitemmodel.cpp 3 - - This inserts the three new columns as columns 4, 5, and 6. - \row - \o \inlineimage modelview-begin-append-columns.png Appending columns - \o To append columns, insert them after the last column. - - For example, as shown in the diagram, we append three columns to a - collection of six existing columns (ending in column 5), so - \a first is 6 and \a last is 8: - - \snippet doc/src/snippets/code/src_corelib_kernel_qabstractitemmodel.cpp 4 - - This appends the two new columns as columns 6, 7, and 8. - \endtable - - \note This function emits the columnsAboutToBeInserted() signal which - connected views (or proxies) must handle before the data is inserted. - Otherwise, the views may end up in an invalid state. - - \sa endInsertColumns() -*/ -void QAbstractItemModel::beginInsertColumns(const QModelIndex &parent, int first, int last) -{ - Q_ASSERT(first >= 0); - Q_ASSERT(last >= first); - Q_D(QAbstractItemModel); - d->changes.push(QAbstractItemModelPrivate::Change(parent, first, last)); - emit columnsAboutToBeInserted(parent, first, last); - d->columnsAboutToBeInserted(parent, first, last); -} - -/*! - Ends a column insertion operation. - - When reimplementing insertColumns() in a subclass, you must call this - function \e after inserting data into the model's underlying data - store. - - \sa beginInsertColumns() -*/ -void QAbstractItemModel::endInsertColumns() -{ - Q_D(QAbstractItemModel); - QAbstractItemModelPrivate::Change change = d->changes.pop(); - d->columnsInserted(change.parent, change.first, change.last); - emit columnsInserted(change.parent, change.first, change.last); -} - -/*! - Begins a column removal operation. - - When reimplementing removeColumns() in a subclass, you must call this - function \e before removing data from the model's underlying data store. - - The \a parent index corresponds to the parent from which the new columns - are removed; \a first and \a last are the column numbers of the first and - last columns to be removed. - - \table 80% - \row - \o \inlineimage modelview-begin-remove-columns.png Removing columns - \o Specify the first and last column numbers for the span of columns - you want to remove from an item in a model. - - For example, as shown in the diagram, we remove the three columns - from column 4 to column 6, so \a first is 4 and \a last is 6: - - \snippet doc/src/snippets/code/src_corelib_kernel_qabstractitemmodel.cpp 5 - \endtable - - \note This function emits the columnsAboutToBeRemoved() signal which - connected views (or proxies) must handle before the data is removed. - Otherwise, the views may end up in an invalid state. - - \sa endRemoveColumns() -*/ -void QAbstractItemModel::beginRemoveColumns(const QModelIndex &parent, int first, int last) -{ - Q_ASSERT(first >= 0); - Q_ASSERT(last >= first); - Q_D(QAbstractItemModel); - d->changes.push(QAbstractItemModelPrivate::Change(parent, first, last)); - emit columnsAboutToBeRemoved(parent, first, last); - d->columnsAboutToBeRemoved(parent, first, last); -} - -/*! - Ends a column removal operation. - - When reimplementing removeColumns() in a subclass, you must call this - function \e after removing data from the model's underlying data store. - - \sa beginRemoveColumns() -*/ -void QAbstractItemModel::endRemoveColumns() -{ - Q_D(QAbstractItemModel); - QAbstractItemModelPrivate::Change change = d->changes.pop(); - d->columnsRemoved(change.parent, change.first, change.last); - emit columnsRemoved(change.parent, change.first, change.last); -} - -/*! - Begins a column move operation. - - When reimplementing a subclass, this method simplifies moving - entities in your model. This method is responsible for moving - persistent indexes in the model, which you would otherwise be - required to do yourself. Using beginMoveRows and endMoveRows - is an alternative to emitting layoutAboutToBeChanged and - layoutChanged directly along with changePersistentIndexes. - - The \a sourceParent index corresponds to the parent from which the - columns are moved; \a sourceFirst and \a sourceLast are the first and last - column numbers of the columns to be moved. The \a destinationParent index - corresponds to the parent into which those columns are moved. The \a - destinationChild is the column to which the columns will be moved. That - is, the index at column \a sourceFirst in \a sourceParent will become - column \a destinationChild in \a destinationParent, followed by all other - columns up to \a sourceLast. - - However, when moving columns down in the same parent (\a sourceParent - and \a destinationParent are equal), the columnss will be placed before the - \a destinationChild index. That is, if you wish to move columns 0 and 1 so - they will become columns 1 and 2, \a destinationChild should be 3. In this - case, the new index for the source column \c i (which is between - \a sourceFirst and \a sourceLast) is equal to - \c {(destinationChild-sourceLast-1+i)}. - - Note that if \a sourceParent and \a destinationParent are the same, - you must ensure that the \a destinationChild is not within the range - of \a sourceFirst and \a sourceLast + 1. You must also ensure that you - do not attempt to move a column to one of its own children or ancestors. - This method returns false if either condition is true, in which case you - should abort your move operation. - - \sa endMoveColumns() - - \since 4.6 -*/ -bool QAbstractItemModel::beginMoveColumns(const QModelIndex &sourceParent, int sourceFirst, int sourceLast, const QModelIndex &destinationParent, int destinationChild) -{ - Q_ASSERT(sourceFirst >= 0); - Q_ASSERT(sourceLast >= sourceFirst); - Q_ASSERT(destinationChild >= 0); - Q_D(QAbstractItemModel); - - if (!d->allowMove(sourceParent, sourceFirst, sourceLast, destinationParent, destinationChild, Qt::Horizontal)) { - return false; - } - - QAbstractItemModelPrivate::Change sourceChange(sourceParent, sourceFirst, sourceLast); - sourceChange.needsAdjust = sourceParent.isValid() && sourceParent.row() >= destinationChild && sourceParent.parent() == destinationParent; - d->changes.push(sourceChange); - int destinationLast = destinationChild + (sourceLast - sourceFirst); - QAbstractItemModelPrivate::Change destinationChange(destinationParent, destinationChild, destinationLast); - destinationChange.needsAdjust = destinationParent.isValid() && destinationParent.row() >= sourceLast && destinationParent.parent() == sourceParent; - d->changes.push(destinationChange); - - d->itemsAboutToBeMoved(sourceParent, sourceFirst, sourceLast, destinationParent, destinationChild, Qt::Horizontal); - - emit columnsAboutToBeMoved(sourceParent, sourceFirst, sourceLast, destinationParent, destinationChild); - return true; -} - -/*! - Ends a column move operation. - - When implementing a subclass, you must call this - function \e after moving data within the model's underlying data - store. - - \sa beginMoveColumns() - - \since 4.6 -*/ -void QAbstractItemModel::endMoveColumns() -{ - Q_D(QAbstractItemModel); - - QAbstractItemModelPrivate::Change insertChange = d->changes.pop(); - QAbstractItemModelPrivate::Change removeChange = d->changes.pop(); - - QModelIndex adjustedSource = removeChange.parent; - QModelIndex adjustedDestination = insertChange.parent; - - const int numMoved = removeChange.last - removeChange.first + 1; - if (insertChange.needsAdjust) - adjustedDestination = createIndex(adjustedDestination.row(), adjustedDestination.column() - numMoved, adjustedDestination.internalPointer()); - - if (removeChange.needsAdjust) - adjustedSource = createIndex(adjustedSource.row(), adjustedSource.column() + numMoved, adjustedSource.internalPointer()); - - d->itemsMoved(adjustedSource, removeChange.first, removeChange.last, adjustedDestination, insertChange.first, Qt::Horizontal); - - emit columnsMoved(adjustedSource, removeChange.first, removeChange.last, adjustedDestination, insertChange.first); -} - -/*! - Resets the model to its original state in any attached views. - - \note Use beginResetModel() and endResetModel() instead whenever possible. - Use this method only if there is no way to call beginResetModel() before invalidating the model. - Otherwise it could lead to unexpected behaviour, especially when used with proxy models. -*/ -void QAbstractItemModel::reset() -{ - Q_D(QAbstractItemModel); - emit modelAboutToBeReset(); - d->invalidatePersistentIndexes(); - emit modelReset(); -} - -/*! - Begins a model reset operation. - - A reset operation resets the model to its current state in any attached views. - - \note Any views attached to this model will be reset as well. - - When a model is reset it means that any previous data reported from the - model is now invalid and has to be queried for again. This also means that - the current item and any selected items will become invalid. - - When a model radically changes its data it can sometimes be easier to just - call this function rather than emit dataChanged() to inform other - components when the underlying data source, or its structure, has changed. - - You must call this function before resetting any internal data structures in your model - or proxy model. - - \sa modelAboutToBeReset(), modelReset(), endResetModel() - \since 4.6 -*/ -void QAbstractItemModel::beginResetModel() -{ - emit modelAboutToBeReset(); -} - -/*! - Completes a model reset operation. - - You must call this function after resetting any internal data structure in your model - or proxy model. - - \sa beginResetModel() - \since 4.6 -*/ -void QAbstractItemModel::endResetModel() -{ - Q_D(QAbstractItemModel); - d->invalidatePersistentIndexes(); - emit modelReset(); -} - -/*! - Changes the QPersistentModelIndex that is equal to the given \a from model - index to the given \a to model index. - - If no persistent model index equal to the given \a from model index was - found, nothing is changed. - - \sa persistentIndexList(), changePersistentIndexList() -*/ -void QAbstractItemModel::changePersistentIndex(const QModelIndex &from, const QModelIndex &to) -{ - Q_D(QAbstractItemModel); - if (d->persistent.indexes.isEmpty()) - return; - // find the data and reinsert it sorted - const QHash::iterator it = d->persistent.indexes.find(from); - if (it != d->persistent.indexes.end()) { - QPersistentModelIndexData *data = *it; - d->persistent.indexes.erase(it); - data->index = to; - if (to.isValid()) - d->persistent.insertMultiAtEnd(to, data); - else - data->model = 0; - } -} - -/*! - \since 4.1 - - Changes the QPersistentModelIndexes that is equal to the indexes in the - given \a from model index list to the given \a to model index list. - - If no persistent model indexes equal to the indexes in the given \a from - model index list was found, nothing is changed. - - \sa persistentIndexList(), changePersistentIndex() -*/ -void QAbstractItemModel::changePersistentIndexList(const QModelIndexList &from, - const QModelIndexList &to) -{ - Q_D(QAbstractItemModel); - if (d->persistent.indexes.isEmpty()) - return; - QVector toBeReinserted; - toBeReinserted.reserve(to.count()); - for (int i = 0; i < from.count(); ++i) { - if (from.at(i) == to.at(i)) - continue; - const QHash::iterator it = d->persistent.indexes.find(from.at(i)); - if (it != d->persistent.indexes.end()) { - QPersistentModelIndexData *data = *it; - d->persistent.indexes.erase(it); - data->index = to.at(i); - if (data->index.isValid()) - toBeReinserted << data; - else - data->model = 0; - } - } - - for (QVector::const_iterator it = toBeReinserted.constBegin(); - it != toBeReinserted.constEnd() ; ++it) { - QPersistentModelIndexData *data = *it; - d->persistent.insertMultiAtEnd(data->index, data); - } -} - -/*! - \since 4.2 - - Returns the list of indexes stored as persistent indexes in the model. -*/ -QModelIndexList QAbstractItemModel::persistentIndexList() const -{ - Q_D(const QAbstractItemModel); - QModelIndexList result; - for (QHash::const_iterator it = d->persistent.indexes.constBegin(); - it != d->persistent.indexes.constEnd(); ++it) { - QPersistentModelIndexData *data = *it; - result.append(data->index); - } - return result; -} - - -/*! - \class QAbstractTableModel - \brief The QAbstractTableModel class provides an abstract model that can be - subclassed to create table models. - - \ingroup model-view - - QAbstractTableModel provides a standard interface for models that represent - their data as a two-dimensional array of items. It is not used directly, - but must be subclassed. - - Since the model provides a more specialized interface than - QAbstractItemModel, it is not suitable for use with tree views, although it - can be used to provide data to a QListView. If you need to represent a - simple list of items, and only need a model to contain a single column of - data, subclassing the QAbstractListModel may be more appropriate. - - The rowCount() and columnCount() functions return the dimensions of the - table. To retrieve a model index corresponding to an item in the model, use - index() and provide only the row and column numbers. - - \section1 Subclassing - - When subclassing QAbstractTableModel, you must implement rowCount(), - columnCount(), and data(). Default implementations of the index() and - parent() functions are provided by QAbstractTableModel. - Well behaved models will also implement headerData(). - - Editable models need to implement setData(), and implement flags() to - return a value containing - \l{Qt::ItemFlags}{Qt::ItemIsEditable}. - - Models that provide interfaces to resizable data structures can - provide implementations of insertRows(), removeRows(), insertColumns(), - and removeColumns(). When implementing these functions, it is - important to call the appropriate functions so that all connected views - are aware of any changes: - - \list - \o An insertRows() implementation must call beginInsertRows() - \e before inserting new rows into the data structure, and it must - call endInsertRows() \e{immediately afterwards}. - \o An insertColumns() implementation must call beginInsertColumns() - \e before inserting new columns into the data structure, and it must - call endInsertColumns() \e{immediately afterwards}. - \o A removeRows() implementation must call beginRemoveRows() - \e before the rows are removed from the data structure, and it must - call endRemoveRows() \e{immediately afterwards}. - \o A removeColumns() implementation must call beginRemoveColumns() - \e before the columns are removed from the data structure, and it must - call endRemoveColumns() \e{immediately afterwards}. - \endlist - - \note Some general guidelines for subclassing models are available in the - \l{Model Subclassing Reference}. - - \note - - \sa {Model Classes}, QAbstractItemModel, QAbstractListModel, - {Pixelator Example} -*/ - -/*! - Constructs an abstract table model for the given \a parent. -*/ - -QAbstractTableModel::QAbstractTableModel(QObject *parent) - : QAbstractItemModel(parent) -{ - -} - -/*! - \internal - - Constructs an abstract table model with \a dd and the given \a parent. -*/ - -QAbstractTableModel::QAbstractTableModel(QAbstractItemModelPrivate &dd, QObject *parent) - : QAbstractItemModel(dd, parent) -{ - -} - -/*! - Destroys the abstract table model. -*/ - -QAbstractTableModel::~QAbstractTableModel() -{ - -} - -/*! - \fn QModelIndex QAbstractTableModel::index(int row, int column, const QModelIndex &parent = QModelIndex()) const - - Returns the index of the data in \a row and \a column with \a parent. - - \sa parent() -*/ - -QModelIndex QAbstractTableModel::index(int row, int column, const QModelIndex &parent) const -{ - return hasIndex(row, column, parent) ? createIndex(row, column, 0) : QModelIndex(); -} - -/*! - \fn QModelIndex QAbstractTableModel::parent(const QModelIndex &index) const - - Returns the parent of the model item with the given \a index. - - \sa index() hasChildren() -*/ - -QModelIndex QAbstractTableModel::parent(const QModelIndex &) const -{ - return QModelIndex(); -} - -bool QAbstractTableModel::hasChildren(const QModelIndex &parent) const -{ - if (parent.model() == this || !parent.isValid()) - return rowCount(parent) > 0 && columnCount(parent) > 0; - return false; -} - -/*! - \class QAbstractListModel - \brief The QAbstractListModel class provides an abstract model that can be - subclassed to create one-dimensional list models. - - \ingroup model-view - - QAbstractListModel provides a standard interface for models that represent - their data as a simple non-hierarchical sequence of items. It is not used - directly, but must be subclassed. - - Since the model provides a more specialized interface than - QAbstractItemModel, it is not suitable for use with tree views; you will - need to subclass QAbstractItemModel if you want to provide a model for - that purpose. If you need to use a number of list models to manage data, - it may be more appropriate to subclass QAbstractTableModel class instead. - - Simple models can be created by subclassing this class and implementing - the minimum number of required functions. For example, we could implement - a simple read-only QStringList-based model that provides a list of strings - to a QListView widget. In such a case, we only need to implement the - rowCount() function to return the number of items in the list, and the - data() function to retrieve items from the list. - - Since the model represents a one-dimensional structure, the rowCount() - function returns the total number of items in the model. The columnCount() - function is implemented for interoperability with all kinds of views, but - by default informs views that the model contains only one column. - - \section1 Subclassing - - When subclassing QAbstractListModel, you must provide implementations - of the rowCount() and data() functions. Well behaved models also provide - a headerData() implementation. - - For editable list models, you must also provide an implementation of - setData(), implement the flags() function so that it returns a value - containing \l{Qt::ItemFlags}{Qt::ItemIsEditable}. - - Note that QAbstractListModel provides a default implementation of - columnCount() that informs views that there is only a single column - of items in this model. - - Models that provide interfaces to resizable list-like data structures - can provide implementations of insertRows() and removeRows(). When - implementing these functions, it is important to call the appropriate - functions so that all connected views are aware of any changes: - - \list - \o An insertRows() implementation must call beginInsertRows() - \e before inserting new rows into the data structure, and it must - call endInsertRows() \e{immediately afterwards}. - \o A removeRows() implementation must call beginRemoveRows() - \e before the rows are removed from the data structure, and it must - call endRemoveRows() \e{immediately afterwards}. - \endlist - - \note Some general guidelines for subclassing models are available in the - \l{Model Subclassing Reference}. - - \sa {Model Classes}, {Model Subclassing Reference}, QAbstractItemView, - QAbstractTableModel, {Item Views Puzzle Example} -*/ - -/*! - Constructs an abstract list model with the given \a parent. -*/ - -QAbstractListModel::QAbstractListModel(QObject *parent) - : QAbstractItemModel(parent) -{ - -} - -/*! - \internal - - Constructs an abstract list model with \a dd and the given \a parent. -*/ - -QAbstractListModel::QAbstractListModel(QAbstractItemModelPrivate &dd, QObject *parent) - : QAbstractItemModel(dd, parent) -{ - -} - -/*! - Destroys the abstract list model. -*/ - -QAbstractListModel::~QAbstractListModel() -{ - -} - -/*! - \fn QModelIndex QAbstractListModel::index(int row, int column, const QModelIndex &parent = QModelIndex()) const - - Returns the index of the data in \a row and \a column with \a parent. - - \sa parent() -*/ - -QModelIndex QAbstractListModel::index(int row, int column, const QModelIndex &parent) const -{ - return hasIndex(row, column, parent) ? createIndex(row, column, 0) : QModelIndex(); -} - -/*! - Returns the parent of the model item with the given \a index. - - \sa index() hasChildren() -*/ - -QModelIndex QAbstractListModel::parent(const QModelIndex & /* index */) const -{ - return QModelIndex(); -} - -/*! - \internal - - Returns the number of columns in the list with the given \a parent. - - \sa rowCount() -*/ - -int QAbstractListModel::columnCount(const QModelIndex &parent) const -{ - return parent.isValid() ? 0 : 1; -} - -bool QAbstractListModel::hasChildren(const QModelIndex &parent) const -{ - return parent.isValid() ? false : (rowCount() > 0); -} - -/*! - \typedef QModelIndexList - \relates QModelIndex - - Synonym for QList. -*/ - -/*! - \reimp -*/ -bool QAbstractTableModel::dropMimeData(const QMimeData *data, Qt::DropAction action, - int row, int column, const QModelIndex &parent) -{ - if (!data || !(action == Qt::CopyAction || action == Qt::MoveAction)) - return false; - - QStringList types = mimeTypes(); - if (types.isEmpty()) - return false; - QString format = types.at(0); - if (!data->hasFormat(format)) - return false; - - QByteArray encoded = data->data(format); - QDataStream stream(&encoded, QIODevice::ReadOnly); - - // if the drop is on an item, replace the data in the items - if (parent.isValid() && row == -1 && column == -1) { - int top = INT_MAX; - int left = INT_MAX; - QVector rows, columns; - QVector > data; - - while (!stream.atEnd()) { - int r, c; - QMap v; - stream >> r >> c >> v; - rows.append(r); - columns.append(c); - data.append(v); - top = qMin(r, top); - left = qMin(c, left); - } - - for (int i = 0; i < data.size(); ++i) { - int r = (rows.at(i) - top) + parent.row(); - int c = (columns.at(i) - left) + parent.column(); - if (hasIndex(r, c)) - setItemData(index(r, c), data.at(i)); - } - - return true; - } - - // otherwise insert new rows for the data - return decodeData(row, column, parent, stream); -} - -/*! - \reimp -*/ -bool QAbstractListModel::dropMimeData(const QMimeData *data, Qt::DropAction action, - int row, int column, const QModelIndex &parent) -{ - if (!data || !(action == Qt::CopyAction || action == Qt::MoveAction)) - return false; - - QStringList types = mimeTypes(); - if (types.isEmpty()) - return false; - QString format = types.at(0); - if (!data->hasFormat(format)) - return false; - - QByteArray encoded = data->data(format); - QDataStream stream(&encoded, QIODevice::ReadOnly); - - // if the drop is on an item, replace the data in the items - if (parent.isValid() && row == -1 && column == -1) { - int top = INT_MAX; - int left = INT_MAX; - QVector rows, columns; - QVector > data; - - while (!stream.atEnd()) { - int r, c; - QMap v; - stream >> r >> c >> v; - rows.append(r); - columns.append(c); - data.append(v); - top = qMin(r, top); - left = qMin(c, left); - } - - for (int i = 0; i < data.size(); ++i) { - int r = (rows.at(i) - top) + parent.row(); - if (columns.at(i) == left && hasIndex(r, 0)) - setItemData(index(r), data.at(i)); - } - - return true; - } - - if (row == -1) - row = rowCount(parent); - - // otherwise insert new rows for the data - return decodeData(row, column, parent, stream); -} - -/*! - \fn QAbstractItemModel::modelAboutToBeReset() - \since 4.2 - - This signal is emitted when reset() is called, before the model's internal - state (e.g. persistent model indexes) has been invalidated. - - \sa beginResetModel(), modelReset() -*/ - -/*! - \fn QAbstractItemModel::modelReset() - \since 4.1 - - This signal is emitted when reset() is called, after the model's internal - state (e.g. persistent model indexes) has been invalidated. - - \sa endResetModel(), modelAboutToBeReset() -*/ - -/*! - \fn bool QModelIndex::operator<(const QModelIndex &other) const - \since 4.1 - - Returns true if this model index is smaller than the \a other - model index; otherwise returns false. -*/ - -/*! - \fn uint qHash(const QPersistentModelIndex &index) - \since 4.5 - - Returns a hash of the QPersistentModelIndex - */ - - -/*! - \internal - QHash::insertMulti insert the value before the old value. and find() return the new value. - We need insertMultiAtEnd because we don't want to overwrite the old one, which should be removed later - - There should be only one instance QPersistentModelIndexData per index, but in some intermediate state there may be - severals of PersistantModelIndex pointing to the same index, but one is already updated, and the other one is not. - This make sure than when updating the first one we don't overwrite the second one in the hash, and the second one - will be updated right later. - */ -void QAbstractItemModelPrivate::Persistent::insertMultiAtEnd(const QModelIndex& key, QPersistentModelIndexData *data) -{ - QHash::iterator newIt = - indexes.insertMulti(key, data); - QHash::iterator it = newIt + 1; - while (it != indexes.end() && it.key() == key) { - qSwap(*newIt,*it); - newIt = it; - ++it; - } -} - -QT_END_NAMESPACE diff --git a/src/corelib/kernel/qabstractitemmodel.h b/src/corelib/kernel/qabstractitemmodel.h deleted file mode 100644 index 0aa8144602..0000000000 --- a/src/corelib/kernel/qabstractitemmodel.h +++ /dev/null @@ -1,412 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtCore module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef QABSTRACTITEMMODEL_H -#define QABSTRACTITEMMODEL_H - -#include -#include -#include -#include - -QT_BEGIN_HEADER - -QT_BEGIN_NAMESPACE - -QT_MODULE(Core) - -class QAbstractItemModel; -class QPersistentModelIndex; - -class Q_CORE_EXPORT QModelIndex -{ - friend class QAbstractItemModel; - friend class QProxyModel; -public: - inline QModelIndex() : r(-1), c(-1), p(0), m(0) {} - inline QModelIndex(const QModelIndex &other) - : r(other.r), c(other.c), p(other.p), m(other.m) {} - inline ~QModelIndex() { p = 0; m = 0; } - inline int row() const { return r; } - inline int column() const { return c; } - inline void *internalPointer() const { return p; } - inline qint64 internalId() const { return reinterpret_cast(p); } - inline QModelIndex parent() const; - inline QModelIndex sibling(int row, int column) const; - inline QModelIndex child(int row, int column) const; - inline QVariant data(int role = Qt::DisplayRole) const; - inline Qt::ItemFlags flags() const; - inline const QAbstractItemModel *model() const { return m; } - inline bool isValid() const { return (r >= 0) && (c >= 0) && (m != 0); } - inline bool operator==(const QModelIndex &other) const - { return (other.r == r) && (other.p == p) && (other.c == c) && (other.m == m); } - inline bool operator!=(const QModelIndex &other) const - { return !(*this == other); } - inline bool operator<(const QModelIndex &other) const - { - if (r < other.r) return true; - if (r == other.r) { - if (c < other.c) return true; - if (c == other.c) { - if (p < other.p) return true; - if (p == other.p) return m < other.m; - } - } - return false; } -private: - inline QModelIndex(int row, int column, void *ptr, const QAbstractItemModel *model); - int r, c; - void *p; - const QAbstractItemModel *m; -}; -Q_DECLARE_TYPEINFO(QModelIndex, Q_MOVABLE_TYPE); - -#ifndef QT_NO_DEBUG_STREAM -Q_CORE_EXPORT QDebug operator<<(QDebug, const QModelIndex &); -#endif - -class QPersistentModelIndexData; - -class Q_CORE_EXPORT QPersistentModelIndex -{ -public: - QPersistentModelIndex(); - QPersistentModelIndex(const QModelIndex &index); - QPersistentModelIndex(const QPersistentModelIndex &other); - ~QPersistentModelIndex(); - bool operator<(const QPersistentModelIndex &other) const; - bool operator==(const QPersistentModelIndex &other) const; - inline bool operator!=(const QPersistentModelIndex &other) const - { return !operator==(other); } - QPersistentModelIndex &operator=(const QPersistentModelIndex &other); - bool operator==(const QModelIndex &other) const; - bool operator!=(const QModelIndex &other) const; - QPersistentModelIndex &operator=(const QModelIndex &other); - operator const QModelIndex&() const; - int row() const; - int column() const; - void *internalPointer() const; - qint64 internalId() const; - QModelIndex parent() const; - QModelIndex sibling(int row, int column) const; - QModelIndex child(int row, int column) const; - QVariant data(int role = Qt::DisplayRole) const; - Qt::ItemFlags flags() const; - const QAbstractItemModel *model() const; - bool isValid() const; -private: - QPersistentModelIndexData *d; - friend uint qHash(const QPersistentModelIndex &); -#ifndef QT_NO_DEBUG_STREAM - friend Q_CORE_EXPORT QDebug operator<<(QDebug, const QPersistentModelIndex &); -#endif -}; -Q_DECLARE_TYPEINFO(QPersistentModelIndex, Q_MOVABLE_TYPE); - -inline uint qHash(const QPersistentModelIndex &index) -{ return qHash(index.d); } - - -#ifndef QT_NO_DEBUG_STREAM -Q_CORE_EXPORT QDebug operator<<(QDebug, const QPersistentModelIndex &); -#endif - -template class QList; -typedef QList QModelIndexList; - -class QMimeData; -class QAbstractItemModelPrivate; -template class QMap; - - -class Q_CORE_EXPORT QAbstractItemModel : public QObject -{ - Q_OBJECT - - friend class QPersistentModelIndexData; - friend class QAbstractItemViewPrivate; - friend class QIdentityProxyModel; -public: - - explicit QAbstractItemModel(QObject *parent = 0); - virtual ~QAbstractItemModel(); - - bool hasIndex(int row, int column, const QModelIndex &parent = QModelIndex()) const; - virtual QModelIndex index(int row, int column, - const QModelIndex &parent = QModelIndex()) const = 0; - virtual QModelIndex parent(const QModelIndex &child) const = 0; - - inline QModelIndex sibling(int row, int column, const QModelIndex &idx) const - { return index(row, column, parent(idx)); } - - virtual int rowCount(const QModelIndex &parent = QModelIndex()) const = 0; - virtual int columnCount(const QModelIndex &parent = QModelIndex()) const = 0; - virtual bool hasChildren(const QModelIndex &parent = QModelIndex()) const; - - virtual QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const = 0; - virtual bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole); - - virtual QVariant headerData(int section, Qt::Orientation orientation, - int role = Qt::DisplayRole) const; - virtual bool setHeaderData(int section, Qt::Orientation orientation, const QVariant &value, - int role = Qt::EditRole); - - virtual QMap itemData(const QModelIndex &index) const; - virtual bool setItemData(const QModelIndex &index, const QMap &roles); - - virtual QStringList mimeTypes() const; - virtual QMimeData *mimeData(const QModelIndexList &indexes) const; - virtual bool dropMimeData(const QMimeData *data, Qt::DropAction action, - int row, int column, const QModelIndex &parent); - virtual Qt::DropActions supportedDropActions() const; - - Qt::DropActions supportedDragActions() const; - void setSupportedDragActions(Qt::DropActions); - - virtual bool insertRows(int row, int count, const QModelIndex &parent = QModelIndex()); - virtual bool insertColumns(int column, int count, const QModelIndex &parent = QModelIndex()); - virtual bool removeRows(int row, int count, const QModelIndex &parent = QModelIndex()); - virtual bool removeColumns(int column, int count, const QModelIndex &parent = QModelIndex()); - - inline bool insertRow(int row, const QModelIndex &parent = QModelIndex()); - inline bool insertColumn(int column, const QModelIndex &parent = QModelIndex()); - inline bool removeRow(int row, const QModelIndex &parent = QModelIndex()); - inline bool removeColumn(int column, const QModelIndex &parent = QModelIndex()); - - virtual void fetchMore(const QModelIndex &parent); - virtual bool canFetchMore(const QModelIndex &parent) const; - virtual Qt::ItemFlags flags(const QModelIndex &index) const; - virtual void sort(int column, Qt::SortOrder order = Qt::AscendingOrder); - virtual QModelIndex buddy(const QModelIndex &index) const; - virtual QModelIndexList match(const QModelIndex &start, int role, - const QVariant &value, int hits = 1, - Qt::MatchFlags flags = - Qt::MatchFlags(Qt::MatchStartsWith|Qt::MatchWrap)) const; - virtual QSize span(const QModelIndex &index) const; - - const QHash &roleNames() const; - -#ifdef Q_NO_USING_KEYWORD - inline QObject *parent() const { return QObject::parent(); } -#else - using QObject::parent; -#endif - -Q_SIGNALS: - void dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QSet &roles = QSet()); - void headerDataChanged(Qt::Orientation orientation, int first, int last); - void layoutChanged(const QList &parents = QList()); - void layoutAboutToBeChanged(const QList &parents = QList()); - -#if !defined(Q_MOC_RUN) && !defined(qdoc) -private: // can only be emitted by QAbstractItemModel -#endif - void rowsAboutToBeInserted(const QModelIndex &parent, int first, int last); - void rowsInserted(const QModelIndex &parent, int first, int last); - - void rowsAboutToBeRemoved(const QModelIndex &parent, int first, int last); - void rowsRemoved(const QModelIndex &parent, int first, int last); - - void columnsAboutToBeInserted(const QModelIndex &parent, int first, int last); - void columnsInserted(const QModelIndex &parent, int first, int last); - - void columnsAboutToBeRemoved(const QModelIndex &parent, int first, int last); - void columnsRemoved(const QModelIndex &parent, int first, int last); - - void modelAboutToBeReset(); - void modelReset(); - - void rowsAboutToBeMoved( const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destinationParent, int destinationRow ); - void rowsMoved( const QModelIndex &parent, int start, int end, const QModelIndex &destination, int row ); - - void columnsAboutToBeMoved( const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destinationParent, int destinationColumn ); - void columnsMoved( const QModelIndex &parent, int start, int end, const QModelIndex &destination, int column ); - - -public Q_SLOTS: - virtual bool submit(); - virtual void revert(); - -protected: - QAbstractItemModel(QAbstractItemModelPrivate &dd, QObject *parent = 0); - - inline QModelIndex createIndex(int row, int column, void *data = 0) const; - inline QModelIndex createIndex(int row, int column, int id) const; - inline QModelIndex createIndex(int row, int column, quint32 id) const; - - void encodeData(const QModelIndexList &indexes, QDataStream &stream) const; - bool decodeData(int row, int column, const QModelIndex &parent, QDataStream &stream); - - void beginInsertRows(const QModelIndex &parent, int first, int last); - void endInsertRows(); - - void beginRemoveRows(const QModelIndex &parent, int first, int last); - void endRemoveRows(); - - bool beginMoveRows(const QModelIndex &sourceParent, int sourceFirst, int sourceLast, const QModelIndex &destinationParent, int destinationRow); - void endMoveRows(); - - void beginInsertColumns(const QModelIndex &parent, int first, int last); - void endInsertColumns(); - - void beginRemoveColumns(const QModelIndex &parent, int first, int last); - void endRemoveColumns(); - - bool beginMoveColumns(const QModelIndex &sourceParent, int sourceFirst, int sourceLast, const QModelIndex &destinationParent, int destinationColumn); - void endMoveColumns(); - - void reset(); - - void beginResetModel(); - void endResetModel(); - - void changePersistentIndex(const QModelIndex &from, const QModelIndex &to); - void changePersistentIndexList(const QModelIndexList &from, const QModelIndexList &to); - QModelIndexList persistentIndexList() const; - - void setRoleNames(const QHash &roleNames); - -private: - Q_DECLARE_PRIVATE(QAbstractItemModel) - Q_DISABLE_COPY(QAbstractItemModel) -}; - -inline bool QAbstractItemModel::insertRow(int arow, const QModelIndex &aparent) -{ return insertRows(arow, 1, aparent); } -inline bool QAbstractItemModel::insertColumn(int acolumn, const QModelIndex &aparent) -{ return insertColumns(acolumn, 1, aparent); } -inline bool QAbstractItemModel::removeRow(int arow, const QModelIndex &aparent) -{ return removeRows(arow, 1, aparent); } -inline bool QAbstractItemModel::removeColumn(int acolumn, const QModelIndex &aparent) -{ return removeColumns(acolumn, 1, aparent); } - -inline QModelIndex QAbstractItemModel::createIndex(int arow, int acolumn, void *adata) const -{ return QModelIndex(arow, acolumn, adata, this); } -inline QModelIndex QAbstractItemModel::createIndex(int arow, int acolumn, int aid) const -#if defined(Q_CC_MSVC) -#pragma warning( push ) -#pragma warning( disable : 4312 ) // avoid conversion warning on 64-bit -#endif -{ return QModelIndex(arow, acolumn, reinterpret_cast(aid), this); } -#if defined(Q_CC_MSVC) -#pragma warning( pop ) -#endif -inline QModelIndex QAbstractItemModel::createIndex(int arow, int acolumn, quint32 aid) const -#if defined(Q_CC_MSVC) -#pragma warning( push ) -#pragma warning( disable : 4312 ) // avoid conversion warning on 64-bit -#endif -{ return QModelIndex(arow, acolumn, reinterpret_cast(aid), this); } -#if defined(Q_CC_MSVC) -#pragma warning( pop ) -#endif - - -class Q_CORE_EXPORT QAbstractTableModel : public QAbstractItemModel -{ - Q_OBJECT - -public: - explicit QAbstractTableModel(QObject *parent = 0); - ~QAbstractTableModel(); - - QModelIndex index(int row, int column, const QModelIndex &parent = QModelIndex()) const; - bool dropMimeData(const QMimeData *data, Qt::DropAction action, - int row, int column, const QModelIndex &parent); -protected: - QAbstractTableModel(QAbstractItemModelPrivate &dd, QObject *parent); - -private: - Q_DISABLE_COPY(QAbstractTableModel) - QModelIndex parent(const QModelIndex &child) const; - bool hasChildren(const QModelIndex &parent) const; -}; - -class Q_CORE_EXPORT QAbstractListModel : public QAbstractItemModel -{ - Q_OBJECT - -public: - explicit QAbstractListModel(QObject *parent = 0); - ~QAbstractListModel(); - - QModelIndex index(int row, int column = 0, const QModelIndex &parent = QModelIndex()) const; - bool dropMimeData(const QMimeData *data, Qt::DropAction action, - int row, int column, const QModelIndex &parent); -protected: - QAbstractListModel(QAbstractItemModelPrivate &dd, QObject *parent); - -private: - Q_DISABLE_COPY(QAbstractListModel) - QModelIndex parent(const QModelIndex &child) const; - int columnCount(const QModelIndex &parent) const; - bool hasChildren(const QModelIndex &parent) const; -}; - -// inline implementations - -inline QModelIndex::QModelIndex(int arow, int acolumn, void *adata, - const QAbstractItemModel *amodel) - : r(arow), c(acolumn), p(adata), m(amodel) {} - -inline QModelIndex QModelIndex::parent() const -{ return m ? m->parent(*this) : QModelIndex(); } - -inline QModelIndex QModelIndex::sibling(int arow, int acolumn) const -{ return m ? (r == arow && c == acolumn) ? *this : m->index(arow, acolumn, m->parent(*this)) : QModelIndex(); } - -inline QModelIndex QModelIndex::child(int arow, int acolumn) const -{ return m ? m->index(arow, acolumn, *this) : QModelIndex(); } - -inline QVariant QModelIndex::data(int arole) const -{ return m ? m->data(*this, arole) : QVariant(); } - -inline Qt::ItemFlags QModelIndex::flags() const -{ return m ? m->flags(*this) : Qt::ItemFlags(0); } - -inline uint qHash(const QModelIndex &index) -{ return uint((index.row() << 4) + index.column() + index.internalId()); } - -QT_END_NAMESPACE - -QT_END_HEADER - -#endif // QABSTRACTITEMMODEL_H diff --git a/src/corelib/kernel/qabstractitemmodel_p.h b/src/corelib/kernel/qabstractitemmodel_p.h deleted file mode 100644 index 86680dd0bc..0000000000 --- a/src/corelib/kernel/qabstractitemmodel_p.h +++ /dev/null @@ -1,176 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtCore module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef QABSTRACTITEMMODEL_P_H -#define QABSTRACTITEMMODEL_P_H - -// -// W A R N I N G -// ------------- -// -// This file is not part of the Qt API. It exists for the convenience -// of QAbstractItemModel*. This header file may change from version -// to version without notice, or even be removed. -// -// We mean it. -// -// - -#include "private/qobject_p.h" -#include "QtCore/qstack.h" -#include "QtCore/qset.h" -#include "QtCore/qhash.h" - -QT_BEGIN_NAMESPACE - -class QPersistentModelIndexData -{ -public: - QPersistentModelIndexData() : model(0) {} - QPersistentModelIndexData(const QModelIndex &idx) : index(idx), model(idx.model()) {} - QModelIndex index; - QAtomicInt ref; - const QAbstractItemModel *model; - static QPersistentModelIndexData *create(const QModelIndex &index); - static void destroy(QPersistentModelIndexData *data); -}; - -class Q_CORE_EXPORT QAbstractItemModelPrivate : public QObjectPrivate -{ - Q_DECLARE_PUBLIC(QAbstractItemModel) - -public: - QAbstractItemModelPrivate() : QObjectPrivate(), supportedDragActions(-1), roleNames(defaultRoleNames()) {} - void removePersistentIndexData(QPersistentModelIndexData *data); - void movePersistentIndexes(QVector indexes, int change, const QModelIndex &parent, Qt::Orientation orientation); - void rowsAboutToBeInserted(const QModelIndex &parent, int first, int last); - void rowsInserted(const QModelIndex &parent, int first, int last); - void rowsAboutToBeRemoved(const QModelIndex &parent, int first, int last); - void rowsRemoved(const QModelIndex &parent, int first, int last); - void columnsAboutToBeInserted(const QModelIndex &parent, int first, int last); - void columnsInserted(const QModelIndex &parent, int first, int last); - void columnsAboutToBeRemoved(const QModelIndex &parent, int first, int last); - void columnsRemoved(const QModelIndex &parent, int first, int last); - static QAbstractItemModel *staticEmptyModel(); - static bool variantLessThan(const QVariant &v1, const QVariant &v2); - - void itemsAboutToBeMoved(const QModelIndex &srcParent, int srcFirst, int srcLast, const QModelIndex &destinationParent, int destinationChild, Qt::Orientation); - void itemsMoved(const QModelIndex &srcParent, int srcFirst, int srcLast, const QModelIndex &destinationParent, int destinationChild, Qt::Orientation orientation); - bool allowMove(const QModelIndex &srcParent, int srcFirst, int srcLast, const QModelIndex &destinationParent, int destinationChild, Qt::Orientation orientation); - - inline QModelIndex createIndex(int row, int column, void *data = 0) const { - return q_func()->createIndex(row, column, data); - } - - inline QModelIndex createIndex(int row, int column, int id) const { - return q_func()->createIndex(row, column, id); - } - - inline bool indexValid(const QModelIndex &index) const { - return (index.row() >= 0) && (index.column() >= 0) && (index.model() == q_func()); - } - - inline void invalidatePersistentIndexes() { - foreach (QPersistentModelIndexData *data, persistent.indexes) { - data->index = QModelIndex(); - data->model = 0; - } - persistent.indexes.clear(); - } - - /*! - \internal - clean the QPersistentModelIndex relative to the index if there is one. - To be used before an index is invalided - */ - inline void invalidatePersistentIndex(const QModelIndex &index) { - QHash::iterator it = persistent.indexes.find(index); - if(it != persistent.indexes.end()) { - QPersistentModelIndexData *data = *it; - persistent.indexes.erase(it); - data->index = QModelIndex(); - data->model = 0; - } - } - - struct Change { - Change() : first(-1), last(-1) {} - Change(const Change &c) : parent(c.parent), first(c.first), last(c.last), needsAdjust(c.needsAdjust) {} - Change(const QModelIndex &p, int f, int l) : parent(p), first(f), last(l), needsAdjust(false) {} - QModelIndex parent; - int first, last; - - - // In cases such as this: - // - A - // - B - // - C - // - - D - // - - E - // - - F - // - // If B is moved to above E, C is the source parent in the signal and its row is 2. When the move is - // completed however, C is at row 1 and there is no row 2 at the same level in the model at all. - // The QModelIndex is adjusted to correct that in those cases before reporting it though the - // rowsMoved signal. - bool needsAdjust; - - bool isValid() { return first >= 0 && last >= 0; } - }; - QStack changes; - - struct Persistent { - Persistent() {} - QHash indexes; - QStack > moved; - QStack > invalidated; - void insertMultiAtEnd(const QModelIndex& key, QPersistentModelIndexData *data); - } persistent; - - Qt::DropActions supportedDragActions; - - QHash roleNames; - static const QHash &defaultRoleNames(); -}; - -QT_END_NAMESPACE - -#endif // QABSTRACTITEMMODEL_P_H diff --git a/tests/auto/corelib/corelib.pro b/tests/auto/corelib/corelib.pro index 50228990c9..84eb3f284c 100644 --- a/tests/auto/corelib/corelib.pro +++ b/tests/auto/corelib/corelib.pro @@ -5,6 +5,7 @@ SUBDIRS=\ concurrent \ global \ io \ + itemmodels \ kernel \ plugin \ statemachine \ diff --git a/tests/auto/corelib/itemmodels/itemmodels.pro b/tests/auto/corelib/itemmodels/itemmodels.pro new file mode 100644 index 0000000000..c11a1f120b --- /dev/null +++ b/tests/auto/corelib/itemmodels/itemmodels.pro @@ -0,0 +1,5 @@ +TEMPLATE=subdirs + +SUBDIRS = qabstractitemmodel + +mac: qabstractitemmodel.CONFIG = no_check_target # QTBUG-22748 diff --git a/tests/auto/corelib/itemmodels/qabstractitemmodel/.gitignore b/tests/auto/corelib/itemmodels/qabstractitemmodel/.gitignore new file mode 100644 index 0000000000..f6f93f4b89 --- /dev/null +++ b/tests/auto/corelib/itemmodels/qabstractitemmodel/.gitignore @@ -0,0 +1 @@ +tst_qabstractitemmodel diff --git a/tests/auto/corelib/itemmodels/qabstractitemmodel/qabstractitemmodel.pro b/tests/auto/corelib/itemmodels/qabstractitemmodel/qabstractitemmodel.pro new file mode 100644 index 0000000000..acf74737a8 --- /dev/null +++ b/tests/auto/corelib/itemmodels/qabstractitemmodel/qabstractitemmodel.pro @@ -0,0 +1,8 @@ +CONFIG += testcase +TARGET = tst_qabstractitemmodel +QT += widgets testlib + +mtdir = ../../../other/modeltest +INCLUDEPATH += $$PWD/$${mtdir} +SOURCES = tst_qabstractitemmodel.cpp $${mtdir}/dynamictreemodel.cpp $${mtdir}/modeltest.cpp +HEADERS = $${mtdir}/dynamictreemodel.h $${mtdir}/modeltest.h diff --git a/tests/auto/corelib/itemmodels/qabstractitemmodel/tst_qabstractitemmodel.cpp b/tests/auto/corelib/itemmodels/qabstractitemmodel/tst_qabstractitemmodel.cpp new file mode 100644 index 0000000000..2340c86207 --- /dev/null +++ b/tests/auto/corelib/itemmodels/qabstractitemmodel/tst_qabstractitemmodel.cpp @@ -0,0 +1,2015 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include +#include + +#include +#include + +#include "dynamictreemodel.h" + +Q_DECLARE_METATYPE(QModelIndex) + +/*! + Note that this doesn't test models, but any functionality that QAbstractItemModel should provide + */ +class tst_QAbstractItemModel : public QObject +{ + Q_OBJECT + +public slots: + void initTestCase(); + void init(); + +private slots: + void index(); + void parent(); + void hasChildren(); + void data(); + void headerData(); + void itemData(); + void itemFlags(); + void match(); + void dropMimeData_data(); + void dropMimeData(); + void changePersistentIndex(); + void movePersistentIndex(); + + void insertRows(); + void insertColumns(); + void removeRows(); + void removeColumns(); + + void reset(); + + void complexChangesWithPersistent(); + + void testMoveSameParentUp_data(); + void testMoveSameParentUp(); + + void testMoveSameParentDown_data(); + void testMoveSameParentDown(); + + void testMoveToGrandParent_data(); + void testMoveToGrandParent(); + + void testMoveToSibling_data(); + void testMoveToSibling(); + + void testMoveToUncle_data(); + void testMoveToUncle(); + + void testMoveToDescendants(); + + void testMoveWithinOwnRange_data(); + void testMoveWithinOwnRange(); + + void testMoveThroughProxy(); + + void testReset(); + + void testDataChanged(); + + void testChildrenLayoutsChanged(); + +private: + DynamicTreeModel *m_model; +}; + +/*! + Test model that impliments the pure vitual functions and anything else that is + needed. + + It is a table implemented as a vector of vectors of strings. + */ +class QtTestModel: public QAbstractItemModel +{ +public: + QtTestModel(int rows, int columns, QObject *parent = 0); + QtTestModel(const QVector > tbl, QObject *parent = 0); + QModelIndex index(int row, int column, const QModelIndex &parent = QModelIndex()) const; + QModelIndex parent(const QModelIndex &) const; + int rowCount(const QModelIndex &parent) const; + int columnCount(const QModelIndex &parent) const; + bool hasChildren(const QModelIndex &) const; + QVariant data(const QModelIndex &idx, int) const; + bool setData(const QModelIndex &idx, const QVariant &value, int); + bool insertRows(int row, int count, const QModelIndex &parent= QModelIndex()); + bool insertColumns(int column, int count, const QModelIndex &parent= QModelIndex()); + void setPersistent(const QModelIndex &from, const QModelIndex &to); + bool removeRows ( int row, int count, const QModelIndex & parent = QModelIndex() ); + bool removeColumns( int column, int count, const QModelIndex & parent = QModelIndex()); + void reset(); + + int cCount, rCount; + mutable bool wrongIndex; + QVector > table; +}; + +QtTestModel::QtTestModel(int rows, int columns, QObject *parent) + : QAbstractItemModel(parent), cCount(columns), rCount(rows), wrongIndex(false) +{ + table.resize(rows); + for (int r = 0; r < rows; ++r) { + table[r].resize(columns); + for (int c = 0; c < columns; ++c) + table[r][c] = QString("%1/%2").arg(r).arg(c); + } +} + +QtTestModel::QtTestModel(const QVector > tbl, QObject *parent) + : QAbstractItemModel(parent), wrongIndex(false) +{ + table = tbl; + rCount = tbl.count(); + cCount = tbl.at(0).count(); +} + +QModelIndex QtTestModel::index(int row, int column, const QModelIndex &parent) const +{ + return hasIndex(row, column, parent) ? createIndex(row, column, 0) : QModelIndex(); +} + +QModelIndex QtTestModel::parent(const QModelIndex &) const { return QModelIndex(); } +int QtTestModel::rowCount(const QModelIndex &parent) const { return parent.isValid() ? 0 : rCount; } +int QtTestModel::columnCount(const QModelIndex &parent) const { return parent.isValid() ? 0 : cCount; } +bool QtTestModel::hasChildren(const QModelIndex &) const { return false; } + +QVariant QtTestModel::data(const QModelIndex &idx, int) const +{ + if (idx.row() < 0 || idx.column() < 0 || idx.column() > cCount || idx.row() > rCount) { + wrongIndex = true; + qWarning("got invalid modelIndex %d/%d", idx.row(), idx.column()); + return QVariant(); + } + return table.at(idx.row()).at(idx.column()); +} + +bool QtTestModel::setData(const QModelIndex &idx, const QVariant &value, int) +{ + table[idx.row()][idx.column()] = value.toString(); + return true; +} + +bool QtTestModel::insertRows(int row, int count, const QModelIndex &parent) +{ + QAbstractItemModel::beginInsertRows(parent, row, row + count - 1); + int cc = columnCount(parent); + table.insert(row, count, QVector(cc)); + rCount = table.count(); + QAbstractItemModel::endInsertRows(); + return true; +} + +bool QtTestModel::insertColumns(int column, int count, const QModelIndex &parent) +{ + QAbstractItemModel::beginInsertColumns(parent, column, column + count - 1); + int rc = rowCount(parent); + for (int i = 0; i < rc; ++i) + table[i].insert(column, 1, ""); + cCount = table.at(0).count(); + QAbstractItemModel::endInsertColumns(); + return true; +} + +void QtTestModel::setPersistent(const QModelIndex &from, const QModelIndex &to) +{ + changePersistentIndex(from, to); +} + +bool QtTestModel::removeRows( int row, int count, const QModelIndex & parent) +{ + QAbstractItemModel::beginRemoveRows(parent, row, row + count - 1); + + for (int r = row+count-1; r >= row; --r) + table.remove(r); + rCount = table.count(); + + QAbstractItemModel::endRemoveRows(); + return true; +} + +bool QtTestModel::removeColumns(int column, int count, const QModelIndex & parent) +{ + QAbstractItemModel::beginRemoveColumns(parent, column, column + count - 1); + + for (int c = column+count-1; c > column; --c) + for (int r = 0; r < rCount; ++r) + table[r].remove(c); + + cCount = table.at(0).count(); + + QAbstractItemModel::endRemoveColumns(); + return true; +} + +void QtTestModel::reset() +{ + QAbstractItemModel::reset(); +} + +/** + * The source Model *must* be initialized before the _data function, since the _data function uses QModelIndexes to reference the items in the tables. + * Therefore, we must initialize it globally. + */ + +void tst_QAbstractItemModel::initTestCase() +{ + qRegisterMetaType("QModelIndex"); +} + +void tst_QAbstractItemModel::init() +{ + m_model = new DynamicTreeModel(this); + + ModelInsertCommand *insertCommand = new ModelInsertCommand(m_model, this); + insertCommand->setNumCols(4); + insertCommand->setStartRow(0); + insertCommand->setEndRow(9); + insertCommand->doCommand(); + + insertCommand = new ModelInsertCommand(m_model, this); + insertCommand->setAncestorRowNumbers(QList() << 5); + insertCommand->setNumCols(4); + insertCommand->setStartRow(0); + insertCommand->setEndRow(9); + insertCommand->doCommand(); +} + +/* + tests +*/ + +void tst_QAbstractItemModel::index() +{ + QtTestModel model(1, 1); + QModelIndex idx = model.index(0, 0, QModelIndex()); + QVERIFY(idx.isValid()); +} + +void tst_QAbstractItemModel::parent() +{ + QtTestModel model(1, 1); + QModelIndex idx = model.index(0, 0, QModelIndex()); + QModelIndex par = model.parent(idx); + QVERIFY(!par.isValid()); +} + +void tst_QAbstractItemModel::hasChildren() +{ + QtTestModel model(1, 1); + QModelIndex idx = model.index(0, 0, QModelIndex()); + QVERIFY(model.hasChildren(idx) == false); +} + +void tst_QAbstractItemModel::data() +{ + QtTestModel model(1, 1); + QModelIndex idx = model.index(0, 0, QModelIndex()); + QVERIFY(idx.isValid()); + QCOMPARE(model.data(idx, Qt::DisplayRole).toString(), QString("0/0")); + + // Default does nothing + QCOMPARE(model.setHeaderData(0, Qt::Horizontal, QVariant(0), 0), false); +} + +void tst_QAbstractItemModel::headerData() +{ + QtTestModel model(1, 1); + QCOMPARE(model.headerData(0, Qt::Horizontal, Qt::DisplayRole).toString(), + QString("1")); + + // Default text alignment for header must be invalid + QVERIFY( !model.headerData(0, Qt::Horizontal, Qt::TextAlignmentRole).isValid() ); +} + +void tst_QAbstractItemModel::itemData() +{ + QtTestModel model(1, 1); + QModelIndex idx = model.index(0, 0, QModelIndex()); + QVERIFY(idx.isValid()); + QMap dat = model.itemData(idx); + QCOMPARE(dat.count(Qt::DisplayRole), 1); + QCOMPARE(dat.value(Qt::DisplayRole).toString(), QString("0/0")); +} + +void tst_QAbstractItemModel::itemFlags() +{ + QtTestModel model(1, 1); + QModelIndex idx = model.index(0, 0, QModelIndex()); + QVERIFY(idx.isValid()); + Qt::ItemFlags flags = model.flags(idx); + QCOMPARE(Qt::ItemIsSelectable|Qt::ItemIsEnabled, flags); +} + +void tst_QAbstractItemModel::match() +{ + QtTestModel model(4, 1); + QModelIndex start = model.index(0, 0, QModelIndex()); + QVERIFY(start.isValid()); + QModelIndexList res = model.match(start, Qt::DisplayRole, QVariant("1"), 3); + QCOMPARE(res.count(), 1); + QModelIndex idx = model.index(1, 0, QModelIndex()); + bool areEqual = (idx == res.first()); + QVERIFY(areEqual); + + model.setData(model.index(0, 0, QModelIndex()), "bat", Qt::DisplayRole); + model.setData(model.index(1, 0, QModelIndex()), "cat", Qt::DisplayRole); + model.setData(model.index(2, 0, QModelIndex()), "dog", Qt::DisplayRole); + model.setData(model.index(3, 0, QModelIndex()), "boar", Qt::DisplayRole); + + res = model.match(start, Qt::DisplayRole, QVariant("dog"), -1, Qt::MatchExactly); + QCOMPARE(res.count(), 1); + res = model.match(start, Qt::DisplayRole, QVariant("a"), -1, Qt::MatchContains); + QCOMPARE(res.count(), 3); + res = model.match(start, Qt::DisplayRole, QVariant("b"), -1, Qt::MatchStartsWith); + QCOMPARE(res.count(), 2); + res = model.match(start, Qt::DisplayRole, QVariant("t"), -1, Qt::MatchEndsWith); + QCOMPARE(res.count(), 2); + res = model.match(start, Qt::DisplayRole, QVariant("*a*"), -1, Qt::MatchWildcard); + QCOMPARE(res.count(), 3); + res = model.match(start, Qt::DisplayRole, QVariant(".*O.*"), -1, Qt::MatchRegExp); + QCOMPARE(res.count(), 2); + res = model.match(start, Qt::DisplayRole, QVariant(".*O.*"), -1, Qt::MatchRegExp | Qt::MatchCaseSensitive); + QCOMPARE(res.count(), 0); + res = model.match(start, Qt::DisplayRole, QVariant("BOAR"), -1, Qt::MatchFixedString); + QCOMPARE(res.count(), 1); + res = model.match(start, Qt::DisplayRole, QVariant("bat"), -1, + Qt::MatchFixedString | Qt::MatchCaseSensitive); + QCOMPARE(res.count(), 1); +} + +typedef QPair Position; +typedef QVector > Selection; +typedef QVector > StringTable; +typedef QVector StringTableRow; +Q_DECLARE_METATYPE(Position) +Q_DECLARE_METATYPE(Selection) +Q_DECLARE_METATYPE(StringTable) + +static StringTableRow qStringTableRow(const QString &s1, const QString &s2, const QString &s3) +{ + StringTableRow row; + row << s1 << s2 << s3; + return row; +} + +#ifdef Q_CC_MSVC +# define STRINGTABLE (StringTable()) +#else +# define STRINGTABLE StringTable() +#endif + +void tst_QAbstractItemModel::dropMimeData_data() +{ + QTest::addColumn("src_table"); // drag source + QTest::addColumn("dst_table"); // drop target + QTest::addColumn("selection"); // dragged items + QTest::addColumn("dst_position"); // drop position + QTest::addColumn("res_table"); // expected result + + { + QTest::newRow("2x2 dropped at [0, 0]") + << (STRINGTABLE // source table + << (qStringTableRow("A", "B", "C")) + << (qStringTableRow("D", "E", "F"))) + << (STRINGTABLE // destination table + << (qStringTableRow("0", "1", "2")) + << (qStringTableRow("3", "4", "5"))) + << (Selection() // selection + << Position(0, 0) << Position(0, 1) + << Position(1, 0) << Position(1, 1)) + << Position(0, 0) // drop position + << (STRINGTABLE // resulting table + << (qStringTableRow("A", "B", "" )) + << (qStringTableRow("D", "E", "" )) + << (qStringTableRow("0", "1", "2")) + << (qStringTableRow("3", "4", "5"))); + } + + { + QTest::newRow("2x2 dropped at [1, 0]") + << (STRINGTABLE // source table + << (qStringTableRow("A", "B", "C")) + << (qStringTableRow("D", "E", "F"))) + << (STRINGTABLE // destination table + << (qStringTableRow("0", "1", "2")) + << (qStringTableRow("3", "4", "5"))) + << (Selection() // selection + << Position(0, 0) << Position(0, 1) + << Position(1, 0) << Position(1, 1)) + << Position(1, 0) // drop position + << (STRINGTABLE // resulting table + << (qStringTableRow("0", "1", "2")) + << (qStringTableRow("A", "B", "" )) + << (qStringTableRow("D", "E", "" )) + << (qStringTableRow("3", "4", "5"))); + } + + { + QTest::newRow("2x2 dropped at [3, 0]") + << (STRINGTABLE // source table + << (qStringTableRow("A", "B", "C")) + << (qStringTableRow("D", "E", "F"))) + << (STRINGTABLE // destination table + << (qStringTableRow("0", "1", "2")) + << (qStringTableRow("3", "4", "5"))) + << (Selection() // selection + << Position(0, 0) << Position(0, 1) + << Position(1, 0) << Position(1, 1)) + << Position(3, 0) // drop position + << (STRINGTABLE // resulting table + << (qStringTableRow("0", "1", "2")) + << (qStringTableRow("3", "4", "5")) + << (qStringTableRow("A", "B", "" )) + << (qStringTableRow("D", "E", "" ))); + } + + { + QTest::newRow("2x2 dropped at [0, 1]") + << (STRINGTABLE // source table + << (qStringTableRow("A", "B", "C")) + << (qStringTableRow("D", "E", "F"))) + << (STRINGTABLE // destination table + << (qStringTableRow("0", "1", "2")) + << (qStringTableRow("3", "4", "5"))) + << (Selection() // selection + << Position(0, 0) << Position(0, 1) + << Position(1, 0) << Position(1, 1)) + << Position(0, 1) // drop position + << (STRINGTABLE // resulting table + << (qStringTableRow("" , "A", "B")) + << (qStringTableRow("" , "D", "E")) + << (qStringTableRow("0", "1", "2")) + << (qStringTableRow("3", "4", "5"))); + } + + { + QTest::newRow("2x2 dropped at [0, 2] (line break)") + << (STRINGTABLE // source table + << (qStringTableRow("A", "B", "C")) + << (qStringTableRow("D", "E", "F"))) + << (STRINGTABLE // destination table + << (qStringTableRow("0", "1", "2")) + << (qStringTableRow("3", "4", "5"))) + << (Selection() // selection + << Position(0, 0) << Position(0, 1) + << Position(1, 0) << Position(1, 1)) + << Position(0, 2) // drop position + << (STRINGTABLE // resulting table + << (qStringTableRow("" , "" , "A")) + << (qStringTableRow("" , "" , "D")) + << (qStringTableRow("" , "" , "B")) + << (qStringTableRow("" , "" , "E")) + << (qStringTableRow("0", "1", "2")) + << (qStringTableRow("3", "4", "5"))); + } + + { + QTest::newRow("2x2 dropped at [3, 2] (line break)") + << (STRINGTABLE // source table + << (qStringTableRow("A", "B", "C")) + << (qStringTableRow("D", "E", "F"))) + << (STRINGTABLE // destination table + << (qStringTableRow("0", "1", "2")) + << (qStringTableRow("3", "4", "5"))) + << (Selection() // selection + << Position(0, 0) << Position(0, 1) + << Position(1, 0) << Position(1, 1)) + << Position(3, 2) // drop position + << (STRINGTABLE // resulting table + << (qStringTableRow("0", "1", "2")) + << (qStringTableRow("3", "4", "5")) + << (qStringTableRow("" , "" , "A")) + << (qStringTableRow("" , "" , "D")) + << (qStringTableRow("" , "" , "B")) + << (qStringTableRow("" , "" , "E"))); + } + + { + QTest::newRow("non-square dropped at [0, 0]") + << (STRINGTABLE // source table + << (qStringTableRow("A", "B", "C")) + << (qStringTableRow("D", "E", "F"))) + << (STRINGTABLE // destination table + << (qStringTableRow("0", "1", "2")) + << (qStringTableRow("3", "4", "5"))) + << (Selection() // selection + << Position(0, 0) << Position(0, 1) + << Position(1, 0)) + << Position(0, 0) // drop position + << (STRINGTABLE // resulting table + << (qStringTableRow("A", "B", "" )) + << (qStringTableRow("D", "" , "" )) + << (qStringTableRow("0", "1", "2")) + << (qStringTableRow("3", "4", "5"))); + } + + { + QTest::newRow("non-square dropped at [0, 2]") + << (STRINGTABLE // source table + << (qStringTableRow("A", "B", "C")) + << (qStringTableRow("D", "E", "F"))) + << (STRINGTABLE // destination table + << (qStringTableRow("0", "1", "2")) + << (qStringTableRow("3", "4", "5"))) + << (Selection() // selection + << Position(0, 0) << Position(0, 1) + << Position(1, 0)) + << Position(0, 2) // drop position + << (STRINGTABLE // resulting table + << (qStringTableRow("" , "" , "A")) + << (qStringTableRow("" , "" , "D")) + << (qStringTableRow("" , "" , "B")) + << (qStringTableRow("0", "1", "2")) + << (qStringTableRow("3", "4", "5"))); + } + + { + QTest::newRow("2x 1x2 dropped at [0, 0] (duplicates)") + << (STRINGTABLE // source table + << (qStringTableRow("A", "B", "C")) + << (qStringTableRow("D", "E", "F"))) + << (STRINGTABLE // destination table + << (qStringTableRow("0", "1", "2")) + << (qStringTableRow("3", "4", "5"))) + << (Selection() // selection; 2x the same row (to simulate selections in hierarchy) + << Position(0, 0) << Position(0, 1) + << Position(0, 0) << Position(0, 1)) + << Position(0, 0) // drop position + << (STRINGTABLE // resulting table + << (qStringTableRow("A", "B", "" )) + << (qStringTableRow("A", "" , "" )) + << (qStringTableRow("" , "B", "" )) // ### FIXME: strange behavior, but rare case + << (qStringTableRow("0", "1", "2")) + << (qStringTableRow("3", "4", "5"))); + } + + { + QTest::newRow("2x 1x2 dropped at [3, 2] (duplicates)") + << (STRINGTABLE // source table + << (qStringTableRow("A", "B", "C")) + << (qStringTableRow("D", "E", "F"))) + << (STRINGTABLE // destination table + << (qStringTableRow("0", "1", "2")) + << (qStringTableRow("3", "4", "5"))) + << (Selection() // selection; 2x the same row (to simulate selections in hierarchy) + << Position(0, 0) << Position(0, 1) + << Position(0, 0) << Position(0, 1)) + << Position(3, 2) // drop position + << (STRINGTABLE // resulting table + << (qStringTableRow("0", "1", "2")) + << (qStringTableRow("3", "4", "5")) + << (qStringTableRow("" , "" , "A")) + << (qStringTableRow("" , "" , "B")) + << (qStringTableRow("" , "" , "A")) + << (qStringTableRow("" , "" , "B"))); + } + { + QTest::newRow("2x 1x2 dropped at [3, 2] (different rows)") + << (STRINGTABLE // source table + << (qStringTableRow("A", "B", "C")) + << (qStringTableRow("D", "E", "F")) + << (qStringTableRow("G", "H", "I"))) + << (STRINGTABLE // destination table + << (qStringTableRow("0", "1", "2")) + << (qStringTableRow("3", "4", "5"))) + << (Selection() // selection; 2x the same row (to simulate selections in hierarchy) + << Position(0, 0) << Position(0, 1) + << Position(2, 0) << Position(2, 1)) + << Position(2, 1) // drop position + << (STRINGTABLE // resulting table + << (qStringTableRow("0", "1", "2")) + << (qStringTableRow("3", "4", "5")) + << (qStringTableRow("" , "A" , "B")) + << (qStringTableRow("" , "G" , "H"))); + } + + { + QTest::newRow("2x 1x2 dropped at [3, 2] (different rows, over the edge)") + << (STRINGTABLE // source table + << (qStringTableRow("A", "B", "C")) + << (qStringTableRow("D", "E", "F")) + << (qStringTableRow("G", "H", "I"))) + << (STRINGTABLE // destination table + << (qStringTableRow("0", "1", "2")) + << (qStringTableRow("3", "4", "5"))) + << (Selection() // selection; 2x the same row (to simulate selections in hierarchy) + << Position(0, 0) << Position(0, 1) + << Position(2, 0) << Position(2, 1)) + << Position(3, 2) // drop position + << (STRINGTABLE // resulting table + << (qStringTableRow("0", "1", "2")) + << (qStringTableRow("3", "4", "5")) + << (qStringTableRow("" , "" , "A")) + << (qStringTableRow("" , "" , "G")) + << (qStringTableRow("" , "" , "B")) + << (qStringTableRow("" , "" , "H"))); + } +} + +void tst_QAbstractItemModel::dropMimeData() +{ + QFETCH(StringTable, src_table); + QFETCH(StringTable, dst_table); + QFETCH(Selection, selection); + QFETCH(Position, dst_position); + QFETCH(StringTable, res_table); + + QtTestModel src(src_table); + QtTestModel dst(dst_table); + QtTestModel res(res_table); + + // get the mimeData from the "selected" indexes + QModelIndexList selectedIndexes; + for (int i = 0; i < selection.count(); ++i) + selectedIndexes << src.index(selection.at(i).first, selection.at(i).second, QModelIndex()); + QMimeData *md = src.mimeData(selectedIndexes); + // do the drop + dst.dropMimeData(md, Qt::CopyAction, dst_position.first, dst_position.second, QModelIndex()); + delete md; + + // compare to the expected results + QCOMPARE(dst.rowCount(QModelIndex()), res.rowCount(QModelIndex())); + QCOMPARE(dst.columnCount(QModelIndex()), res.columnCount(QModelIndex())); + for (int r = 0; r < dst.rowCount(QModelIndex()); ++r) { + for (int c = 0; c < dst.columnCount(QModelIndex()); ++c) { + QModelIndex dst_idx = dst.index(r, c, QModelIndex()); + QModelIndex res_idx = res.index(r, c, QModelIndex()); + QMap dst_data = dst.itemData(dst_idx); + QMap res_data = res.itemData(res_idx); + QCOMPARE(dst_data , res_data); + } + } +} + + +void tst_QAbstractItemModel::changePersistentIndex() +{ + QtTestModel model(3, 3); + QModelIndex a = model.index(1, 2, QModelIndex()); + QModelIndex b = model.index(2, 1, QModelIndex()); + QPersistentModelIndex p(a); + QVERIFY(p == a); + model.setPersistent(a, b); + QVERIFY(p == b); +} + +void tst_QAbstractItemModel::movePersistentIndex() +{ + QtTestModel model(3, 3); + + QPersistentModelIndex a = model.index(1, 1); + QVERIFY(a.isValid()); + QCOMPARE(a.row(), 1); + QCOMPARE(a.column(), 1); + + model.insertRow(0); + QCOMPARE(a.row(), 2); + + model.insertRow(1); + QCOMPARE(a.row(), 3); + + model.insertColumn(0); + QCOMPARE(a.column(), 2); +} + +void tst_QAbstractItemModel::removeRows() +{ + QtTestModel model(10, 10); + + QSignalSpy rowsAboutToBeRemovedSpy(&model, SIGNAL(rowsAboutToBeRemoved( const QModelIndex &, int , int ))); + QSignalSpy rowsRemovedSpy(&model, SIGNAL(rowsRemoved( const QModelIndex &, int, int ))); + + QCOMPARE(model.removeRows(6, 4), true); + QCOMPARE(rowsAboutToBeRemovedSpy.count(), 1); + QCOMPARE(rowsRemovedSpy.count(), 1); +} + +void tst_QAbstractItemModel::removeColumns() +{ + QtTestModel model(10, 10); + + QSignalSpy columnsAboutToBeRemovedSpy(&model, SIGNAL(columnsAboutToBeRemoved( const QModelIndex &, int , int ))); + QSignalSpy columnsRemovedSpy(&model, SIGNAL(columnsRemoved( const QModelIndex &, int, int ))); + + QCOMPARE(model.removeColumns(6, 4), true); + QCOMPARE(columnsAboutToBeRemovedSpy.count(), 1); + QCOMPARE(columnsRemovedSpy.count(), 1); +} + +void tst_QAbstractItemModel::insertRows() +{ + QtTestModel model(10, 10); + + QSignalSpy rowsAboutToBeInsertedSpy(&model, SIGNAL(rowsAboutToBeInserted( const QModelIndex &, int , int ))); + QSignalSpy rowsInsertedSpy(&model, SIGNAL(rowsInserted( const QModelIndex &, int, int ))); + + QCOMPARE(model.insertRows(6, 4), true); + QCOMPARE(rowsAboutToBeInsertedSpy.count(), 1); + QCOMPARE(rowsInsertedSpy.count(), 1); +} + +void tst_QAbstractItemModel::insertColumns() +{ + QtTestModel model(10, 10); + + QSignalSpy columnsAboutToBeInsertedSpy(&model, SIGNAL(columnsAboutToBeInserted( const QModelIndex &, int , int ))); + QSignalSpy columnsInsertedSpy(&model, SIGNAL(columnsInserted( const QModelIndex &, int, int ))); + + QCOMPARE(model.insertColumns(6, 4), true); + QCOMPARE(columnsAboutToBeInsertedSpy.count(), 1); + QCOMPARE(columnsInsertedSpy.count(), 1); +} + +void tst_QAbstractItemModel::reset() +{ + QtTestModel model(10, 10); + + QSignalSpy resetSpy(&model, SIGNAL(modelReset())); + model.reset(); + QCOMPARE(resetSpy.count(), 1); +} + +void tst_QAbstractItemModel::complexChangesWithPersistent() +{ + QtTestModel model(10, 10); + QPersistentModelIndex a = model.index(1, 1, QModelIndex()); + QPersistentModelIndex b = model.index(9, 7, QModelIndex()); + QPersistentModelIndex c = model.index(5, 6, QModelIndex()); + QPersistentModelIndex d = model.index(3, 9, QModelIndex()); + QPersistentModelIndex e[10]; + for (int i=0; i <10 ; i++) { + e[i] = model.index(2, i , QModelIndex()); + } + + QVERIFY(a == model.index(1, 1, QModelIndex())); + QVERIFY(b == model.index(9, 7, QModelIndex())); + QVERIFY(c == model.index(5, 6, QModelIndex())); + QVERIFY(d == model.index(3, 9, QModelIndex())); + for (int i=0; i <8 ; i++) + QVERIFY(e[i] == model.index(2, i , QModelIndex())); + + //remove a bunch of columns + model.removeColumns(2, 4); + + QVERIFY(a == model.index(1, 1, QModelIndex())); + QVERIFY(b == model.index(9, 3, QModelIndex())); + QVERIFY(c == model.index(5, 2, QModelIndex())); + QVERIFY(d == model.index(3, 5, QModelIndex())); + for (int i=0; i <2 ; i++) + QVERIFY(e[i] == model.index(2, i , QModelIndex())); + for (int i=2; i <6 ; i++) + QVERIFY(!e[i].isValid()); + for (int i=6; i <10 ; i++) + QVERIFY(e[i] == model.index(2, i-4 , QModelIndex())); + + //move some indexes around + model.setPersistent(model.index(1, 1 , QModelIndex()), model.index(9, 3 , QModelIndex())); + model.setPersistent(model.index(9, 3 , QModelIndex()), model.index(8, 4 , QModelIndex())); + + QVERIFY(a == model.index(9, 3, QModelIndex())); + QVERIFY(b == model.index(8, 4, QModelIndex())); + QVERIFY(c == model.index(5, 2, QModelIndex())); + QVERIFY(d == model.index(3, 5, QModelIndex())); + for (int i=0; i <2 ; i++) + QVERIFY(e[i] == model.index(2, i , QModelIndex())); + for (int i=2; i <6 ; i++) + QVERIFY(!e[i].isValid()); + for (int i=6; i <10 ; i++) + QVERIFY(e[i] == model.index(2, i-4 , QModelIndex())); + + //inserting a bunch of columns + model.insertColumns(2, 2); + QVERIFY(a == model.index(9, 5, QModelIndex())); + QVERIFY(b == model.index(8, 6, QModelIndex())); + QVERIFY(c == model.index(5, 4, QModelIndex())); + QVERIFY(d == model.index(3, 7, QModelIndex())); + for (int i=0; i <2 ; i++) + QVERIFY(e[i] == model.index(2, i , QModelIndex())); + for (int i=2; i <6 ; i++) + QVERIFY(!e[i].isValid()); + for (int i=6; i <10 ; i++) + QVERIFY(e[i] == model.index(2, i-2 , QModelIndex())); + +} + +void tst_QAbstractItemModel::testMoveSameParentDown_data() +{ + QTest::addColumn("startRow"); + QTest::addColumn("endRow"); + QTest::addColumn("destRow"); + // We can't put the actual parent index for the move in here because m_model is not defined until init() is run. + QTest::addColumn("topLevel"); + + // Move from the start to the middle + QTest::newRow("move01") << 0 << 2 << 8 << true; + // Move from the start to the end + QTest::newRow("move02") << 0 << 2 << 10 << true; + // Move from the middle to the middle + QTest::newRow("move03") << 3 << 5 << 8 << true; + // Move from the middle to the end + QTest::newRow("move04") << 3 << 5 << 10 << true; + + QTest::newRow("move05") << 0 << 2 << 8 << false; + QTest::newRow("move06") << 0 << 2 << 10 << false; + QTest::newRow("move07") << 3 << 5 << 8 << false; + QTest::newRow("move08") << 3 << 5 << 10 << false; +} + +void tst_QAbstractItemModel::testMoveSameParentDown() +{ + QFETCH( int, startRow); + QFETCH( int, endRow); + QFETCH( int, destRow); + QFETCH( bool, topLevel); + + QModelIndex moveParent = topLevel ? QModelIndex() : m_model->index(5, 0); + + QList persistentList; + QModelIndexList indexList; + + for (int column = 0; column < m_model->columnCount(); ++column) + { + for (int row= 0; row < m_model->rowCount(); ++row) + { + QModelIndex idx = m_model->index(row, column); + QVERIFY(idx.isValid()); + indexList << idx; + persistentList << QPersistentModelIndex(idx); + } + } + + QModelIndex parent = m_model->index(5, 0); + for (int column = 0; column < m_model->columnCount(); ++column) + { + for (int row= 0; row < m_model->rowCount(parent); ++row) + { + QModelIndex idx = m_model->index(row, column, parent); + QVERIFY(idx.isValid()); + indexList << idx; + persistentList << QPersistentModelIndex(idx); + } + } + + QSignalSpy beforeSpy(m_model, SIGNAL(rowsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int))); + QSignalSpy afterSpy(m_model, SIGNAL(rowsMoved(const QModelIndex &, int, int, const QModelIndex &, int))); + + ModelMoveCommand *moveCommand = new ModelMoveCommand(m_model, this); + moveCommand->setNumCols(4); + if (!topLevel) + moveCommand->setAncestorRowNumbers(QList() << 5); + moveCommand->setStartRow(startRow); + moveCommand->setEndRow(endRow); + moveCommand->setDestRow(destRow); + if (!topLevel) + moveCommand->setDestAncestors(QList() << 5); + moveCommand->doCommand(); + + QVariantList beforeSignal = beforeSpy.takeAt(0); + QVariantList afterSignal = afterSpy.takeAt(0); + + QCOMPARE(beforeSignal.size(), 5); + QCOMPARE(beforeSignal.at(0).value(), moveParent); + QCOMPARE(beforeSignal.at(1).toInt(), startRow); + QCOMPARE(beforeSignal.at(2).toInt(), endRow); + QCOMPARE(beforeSignal.at(3).value(), moveParent); + QCOMPARE(beforeSignal.at(4).toInt(), destRow); + + QCOMPARE(afterSignal.size(), 5); + QCOMPARE(afterSignal.at(0).value(), moveParent); + QCOMPARE(afterSignal.at(1).toInt(), startRow); + QCOMPARE(afterSignal.at(2).toInt(), endRow); + QCOMPARE(afterSignal.at(3).value(), moveParent); + QCOMPARE(afterSignal.at(4).toInt(), destRow); + + for (int i = 0; i < indexList.size(); i++) + { + QModelIndex idx = indexList.at(i); + QModelIndex persistentIndex = persistentList.at(i); + if (idx.parent() == moveParent) + { + int row = idx.row(); + if ( row >= startRow) + { + if (row <= endRow) + { + QCOMPARE(row + destRow - endRow - 1, persistentIndex.row() ); + QCOMPARE(idx.column(), persistentIndex.column()); + QCOMPARE(idx.parent(), persistentIndex.parent()); + QCOMPARE(idx.model(), persistentIndex.model()); + } else if ( row < destRow) + { + QCOMPARE(row - (endRow - startRow + 1), persistentIndex.row() ); + QCOMPARE(idx.column(), persistentIndex.column()); + QCOMPARE(idx.parent(), persistentIndex.parent()); + QCOMPARE(idx.model(), persistentIndex.model()); + } else + { + QCOMPARE(idx, persistentIndex); + } + } else + { + QCOMPARE(idx, persistentIndex); + } + } else + { + QCOMPARE(idx, persistentIndex); + } + } +} + +void tst_QAbstractItemModel::testMoveSameParentUp_data() +{ + QTest::addColumn("startRow"); + QTest::addColumn("endRow"); + QTest::addColumn("destRow"); + QTest::addColumn("topLevel"); + + // Move from the middle to the start + QTest::newRow("move01") << 5 << 7 << 0 << true; + // Move from the end to the start + QTest::newRow("move02") << 8 << 9 << 0 << true; + // Move from the middle to the middle + QTest::newRow("move03") << 5 << 7 << 2 << true; + // Move from the end to the middle + QTest::newRow("move04") << 8 << 9 << 5 << true; + + QTest::newRow("move05") << 5 << 7 << 0 << false; + QTest::newRow("move06") << 8 << 9 << 0 << false; + QTest::newRow("move07") << 5 << 7 << 2 << false; + QTest::newRow("move08") << 8 << 9 << 5 << false; +} + +void tst_QAbstractItemModel::testMoveSameParentUp() +{ + + QFETCH( int, startRow); + QFETCH( int, endRow); + QFETCH( int, destRow); + QFETCH( bool, topLevel); + + QModelIndex moveParent = topLevel ? QModelIndex() : m_model->index(5, 0); + + QList persistentList; + QModelIndexList indexList; + + for (int column = 0; column < m_model->columnCount(); ++column) + { + for (int row= 0; row < m_model->rowCount(); ++row) + { + QModelIndex idx = m_model->index(row, column); + QVERIFY(idx.isValid()); + indexList << idx; + persistentList << QPersistentModelIndex(idx); + } + } + + QModelIndex parent = m_model->index(2, 0); + for (int column = 0; column < m_model->columnCount(); ++column) + { + for (int row= 0; row < m_model->rowCount(parent); ++row) + { + QModelIndex idx = m_model->index(row, column, parent); + QVERIFY(idx.isValid()); + indexList << idx; + persistentList << QPersistentModelIndex(idx); + } + } + + QSignalSpy beforeSpy(m_model, SIGNAL(rowsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int))); + QSignalSpy afterSpy(m_model, SIGNAL(rowsMoved(const QModelIndex &, int, int, const QModelIndex &, int))); + + + ModelMoveCommand *moveCommand = new ModelMoveCommand(m_model, this); + moveCommand->setNumCols(4); + if (!topLevel) + moveCommand->setAncestorRowNumbers(QList() << 5); + moveCommand->setStartRow(startRow); + moveCommand->setEndRow(endRow); + moveCommand->setDestRow(destRow); + if (!topLevel) + moveCommand->setDestAncestors(QList() << 5); + moveCommand->doCommand(); + + QVariantList beforeSignal = beforeSpy.takeAt(0); + QVariantList afterSignal = afterSpy.takeAt(0); + + QCOMPARE(beforeSignal.size(), 5); + QCOMPARE(beforeSignal.at(0).value(), moveParent); + QCOMPARE(beforeSignal.at(1).toInt(), startRow); + QCOMPARE(beforeSignal.at(2).toInt(), endRow); + QCOMPARE(beforeSignal.at(3).value(), moveParent); + QCOMPARE(beforeSignal.at(4).toInt(), destRow); + + QCOMPARE(afterSignal.size(), 5); + QCOMPARE(afterSignal.at(0).value(), moveParent); + QCOMPARE(afterSignal.at(1).toInt(), startRow); + QCOMPARE(afterSignal.at(2).toInt(), endRow); + QCOMPARE(afterSignal.at(3).value(), moveParent); + QCOMPARE(afterSignal.at(4).toInt(), destRow); + + + for (int i = 0; i < indexList.size(); i++) + { + QModelIndex idx = indexList.at(i); + QModelIndex persistentIndex = persistentList.at(i); + if (idx.parent() == moveParent) + { + int row = idx.row(); + if ( row >= destRow) + { + if (row < startRow) + { + QCOMPARE(row + endRow - startRow + 1, persistentIndex.row() ); + QCOMPARE(idx.column(), persistentIndex.column()); + QCOMPARE(idx.parent(), persistentIndex.parent()); + QCOMPARE(idx.model(), persistentIndex.model()); + } else if ( row <= endRow) + { + QCOMPARE(row + destRow - startRow, persistentIndex.row() ); + QCOMPARE(idx.column(), persistentIndex.column()); + QCOMPARE(idx.parent(), persistentIndex.parent()); + QCOMPARE(idx.model(), persistentIndex.model()); + } else + { + QCOMPARE(idx, persistentIndex); + } + } else + { + QCOMPARE(idx, persistentIndex); + } + } else + { + QCOMPARE(idx, persistentIndex); + } + } +} + +void tst_QAbstractItemModel::testMoveThroughProxy() +{ + QSortFilterProxyModel *proxy = new QSortFilterProxyModel(this); + proxy->setSourceModel(m_model); + + QList persistentList; + + persistentList.append(proxy->index(0, 0)); + persistentList.append(proxy->index(0, 0, proxy->mapFromSource(m_model->index(5, 0)))); + + ModelMoveCommand *moveCommand = new ModelMoveCommand(m_model, this); + moveCommand->setNumCols(4); + moveCommand->setAncestorRowNumbers(QList() << 5); + moveCommand->setStartRow(0); + moveCommand->setEndRow(0); + moveCommand->setDestRow(0); + moveCommand->doCommand(); +} + +void tst_QAbstractItemModel::testMoveToGrandParent_data() +{ + QTest::addColumn("startRow"); + QTest::addColumn("endRow"); + QTest::addColumn("destRow"); + + // Move from the start to the middle + QTest::newRow("move01") << 0 << 2 << 8; + // Move from the start to the end + QTest::newRow("move02") << 0 << 2 << 10; + // Move from the middle to the middle + QTest::newRow("move03") << 3 << 5 << 8; + // Move from the middle to the end + QTest::newRow("move04") << 3 << 5 << 10; + + // Move from the middle to the start + QTest::newRow("move05") << 5 << 7 << 0; + // Move from the end to the start + QTest::newRow("move06") << 8 << 9 << 0; + // Move from the middle to the middle + QTest::newRow("move07") << 5 << 7 << 2; + // Move from the end to the middle + QTest::newRow("move08") << 8 << 9 << 5; + + // Moving to the same row in a different parent doesn't confuse things. + QTest::newRow("move09") << 8 << 8 << 8; + + // Moving to the row of my parent and its neighbours doesn't confuse things + QTest::newRow("move09") << 8 << 8 << 4; + QTest::newRow("move10") << 8 << 8 << 5; + QTest::newRow("move11") << 8 << 8 << 6; + + // Moving everything from one parent to another + QTest::newRow("move12") << 0 << 9 << 10; + QTest::newRow("move13") << 0 << 9 << 0; +} + +void tst_QAbstractItemModel::testMoveToGrandParent() +{ + + QFETCH( int, startRow); + QFETCH( int, endRow); + QFETCH( int, destRow); + + QList persistentList; + QModelIndexList indexList; + QModelIndexList parentsList; + + for (int column = 0; column < m_model->columnCount(); ++column) + { + for (int row= 0; row < m_model->rowCount(); ++row) + { + QModelIndex idx = m_model->index(row, column); + QVERIFY(idx.isValid()); + indexList << idx; + parentsList << idx.parent(); + persistentList << QPersistentModelIndex(idx); + } + } + + QModelIndex sourceIndex = m_model->index(5, 0); + for (int column = 0; column < m_model->columnCount(); ++column) + { + for (int row= 0; row < m_model->rowCount(sourceIndex); ++row) + { + QModelIndex idx = m_model->index(row, column, sourceIndex); + QVERIFY(idx.isValid()); + indexList << idx; + parentsList << idx.parent(); + persistentList << QPersistentModelIndex(idx); + } + } + + QSignalSpy beforeSpy(m_model, SIGNAL(rowsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int))); + QSignalSpy afterSpy(m_model, SIGNAL(rowsMoved(const QModelIndex &, int, int, const QModelIndex &, int))); + + QPersistentModelIndex persistentSource = sourceIndex; + + ModelMoveCommand *moveCommand = new ModelMoveCommand(m_model, this); + moveCommand->setAncestorRowNumbers(QList() << 5); + moveCommand->setNumCols(4); + moveCommand->setStartRow(startRow); + moveCommand->setEndRow(endRow); + moveCommand->setDestRow(destRow); + moveCommand->doCommand(); + + QVariantList beforeSignal = beforeSpy.takeAt(0); + QVariantList afterSignal = afterSpy.takeAt(0); + + QCOMPARE(beforeSignal.size(), 5); + QCOMPARE(beforeSignal.at(0).value(), sourceIndex); + QCOMPARE(beforeSignal.at(1).toInt(), startRow); + QCOMPARE(beforeSignal.at(2).toInt(), endRow); + QCOMPARE(beforeSignal.at(3).value(), QModelIndex()); + QCOMPARE(beforeSignal.at(4).toInt(), destRow); + + QCOMPARE(afterSignal.size(), 5); + QCOMPARE(afterSignal.at(0).value(), static_cast(persistentSource)); + QCOMPARE(afterSignal.at(1).toInt(), startRow); + QCOMPARE(afterSignal.at(2).toInt(), endRow); + QCOMPARE(afterSignal.at(3).value(), QModelIndex()); + QCOMPARE(afterSignal.at(4).toInt(), destRow); + + for (int i = 0; i < indexList.size(); i++) + { + QModelIndex idx = indexList.at(i); + QModelIndex idxParent = parentsList.at(i); + QModelIndex persistentIndex = persistentList.at(i); + int row = idx.row(); + if (idxParent == QModelIndex()) + { + if ( row >= destRow) + { + QCOMPARE(row + endRow - startRow + 1, persistentIndex.row() ); + QCOMPARE(idx.column(), persistentIndex.column()); + QCOMPARE(idxParent, persistentIndex.parent()); + QCOMPARE(idx.model(), persistentIndex.model()); + } else + { + QCOMPARE(idx, persistentIndex); + } + } else + { + if (row < startRow) + { + QCOMPARE(idx, persistentIndex); + } else if (row <= endRow) + { + QCOMPARE(row + destRow - startRow, persistentIndex.row() ); + QCOMPARE(idx.column(), persistentIndex.column()); + QCOMPARE(QModelIndex(), persistentIndex.parent()); + QCOMPARE(idx.model(), persistentIndex.model()); + } else { + QCOMPARE(row - (endRow - startRow + 1), persistentIndex.row() ); + QCOMPARE(idx.column(), persistentIndex.column()); + + if (idxParent.row() >= destRow) + { + QModelIndex adjustedParent; + adjustedParent = idxParent.sibling( idxParent.row() + endRow - startRow + 1, idxParent.column()); + QCOMPARE(adjustedParent, persistentIndex.parent()); + } else + { + QCOMPARE(idxParent, persistentIndex.parent()); + } + QCOMPARE(idx.model(), persistentIndex.model()); + } + } + } +} + +void tst_QAbstractItemModel::testMoveToSibling_data() +{ + QTest::addColumn("startRow"); + QTest::addColumn("endRow"); + QTest::addColumn("destRow"); + + // Move from the start to the middle + QTest::newRow("move01") << 0 << 2 << 8; + // Move from the start to the end + QTest::newRow("move02") << 0 << 2 << 10; + // Move from the middle to the middle + QTest::newRow("move03") << 2 << 4 << 8; + // Move from the middle to the end + QTest::newRow("move04") << 2 << 4 << 10; + + // Move from the middle to the start + QTest::newRow("move05") << 8 << 8 << 0; + // Move from the end to the start + QTest::newRow("move06") << 8 << 9 << 0; + // Move from the middle to the middle + QTest::newRow("move07") << 6 << 8 << 2; + // Move from the end to the middle + QTest::newRow("move08") << 8 << 9 << 5; + + // Moving to the same row in a different parent doesn't confuse things. + QTest::newRow("move09") << 8 << 8 << 8; + + // Moving to the row of my target and its neighbours doesn't confuse things + QTest::newRow("move09") << 8 << 8 << 4; + QTest::newRow("move10") << 8 << 8 << 5; + QTest::newRow("move11") << 8 << 8 << 6; + + // Move such that the destination parent no longer valid after the move. + // The destination parent is always QMI(5, 0), but after this move the + // row count is 5, so (5, 0) (used internally in QAIM) no longer refers to a valid index. + QTest::newRow("move12") << 0 << 4 << 0; +} + +void tst_QAbstractItemModel::testMoveToSibling() +{ + + QFETCH( int, startRow); + QFETCH( int, endRow); + QFETCH( int, destRow); + + QList persistentList; + QModelIndexList indexList; + QModelIndexList parentsList; + + const int column = 0; + + for (int i= 0; i < m_model->rowCount(); ++i) + { + QModelIndex idx = m_model->index(i, column); + QVERIFY(idx.isValid()); + indexList << idx; + parentsList << idx.parent(); + persistentList << QPersistentModelIndex(idx); + } + + QModelIndex destIndex = m_model->index(5, 0); + QModelIndex sourceIndex; + for (int i= 0; i < m_model->rowCount(destIndex); ++i) + { + QModelIndex idx = m_model->index(i, column, destIndex); + QVERIFY(idx.isValid()); + indexList << idx; + parentsList << idx.parent(); + persistentList << QPersistentModelIndex(idx); + } + + QSignalSpy beforeSpy(m_model, SIGNAL(rowsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int))); + QSignalSpy afterSpy(m_model, SIGNAL(rowsMoved(const QModelIndex &, int, int, const QModelIndex &, int))); + + QPersistentModelIndex persistentDest = destIndex; + + ModelMoveCommand *moveCommand = new ModelMoveCommand(m_model, this); + moveCommand->setNumCols(4); + moveCommand->setStartRow(startRow); + moveCommand->setEndRow(endRow); + moveCommand->setDestAncestors(QList() << 5); + moveCommand->setDestRow(destRow); + moveCommand->doCommand(); + + QVariantList beforeSignal = beforeSpy.takeAt(0); + QVariantList afterSignal = afterSpy.takeAt(0); + + QCOMPARE(beforeSignal.size(), 5); + QCOMPARE(beforeSignal.at(0).value(), sourceIndex); + QCOMPARE(beforeSignal.at(1).toInt(), startRow); + QCOMPARE(beforeSignal.at(2).toInt(), endRow); + QCOMPARE(beforeSignal.at(3).value(), destIndex); + QCOMPARE(beforeSignal.at(4).toInt(), destRow); + + QCOMPARE(afterSignal.size(), 5); + QCOMPARE(afterSignal.at(0).value(), sourceIndex); + QCOMPARE(afterSignal.at(1).toInt(), startRow); + QCOMPARE(afterSignal.at(2).toInt(), endRow); + QCOMPARE(afterSignal.at(3).value(), static_cast(persistentDest)); + QCOMPARE(afterSignal.at(4).toInt(), destRow); + + for (int i = 0; i < indexList.size(); i++) + { + QModelIndex idx = indexList.at(i); + QModelIndex idxParent = parentsList.at(i); + QModelIndex persistentIndex = persistentList.at(i); + + QModelIndex adjustedDestination = destIndex.sibling(destIndex.row() - (endRow - startRow + 1), destIndex.column()); + int row = idx.row(); + if (idxParent == destIndex) + { + if ( row >= destRow) + { + QCOMPARE(row + endRow - startRow + 1, persistentIndex.row() ); + QCOMPARE(idx.column(), persistentIndex.column()); + if (idxParent.row() > startRow) + { + QCOMPARE(adjustedDestination, persistentIndex.parent()); + } else { + QCOMPARE(destIndex, persistentIndex.parent()); + } + QCOMPARE(idx.model(), persistentIndex.model()); + } else + { + QCOMPARE(idx, persistentIndex); + } + } else + { + if (row < startRow) + { + QCOMPARE(idx, persistentIndex); + } else if (row <= endRow) + { + QCOMPARE(row + destRow - startRow, persistentIndex.row() ); + QCOMPARE(idx.column(), persistentIndex.column()); + if (destIndex.row() > startRow) + { + QCOMPARE(adjustedDestination, persistentIndex.parent()); + } else { + QCOMPARE(destIndex, persistentIndex.parent()); + } + + QCOMPARE(idx.model(), persistentIndex.model()); + + } else { + QCOMPARE(row - (endRow - startRow + 1), persistentIndex.row() ); + QCOMPARE(idx.column(), persistentIndex.column()); + QCOMPARE(idxParent, persistentIndex.parent()); + QCOMPARE(idx.model(), persistentIndex.model()); + } + } + } +} + +void tst_QAbstractItemModel::testMoveToUncle_data() +{ + + QTest::addColumn("startRow"); + QTest::addColumn("endRow"); + QTest::addColumn("destRow"); + + // Move from the start to the middle + QTest::newRow("move01") << 0 << 2 << 8; + // Move from the start to the end + QTest::newRow("move02") << 0 << 2 << 10; + // Move from the middle to the middle + QTest::newRow("move03") << 3 << 5 << 8; + // Move from the middle to the end + QTest::newRow("move04") << 3 << 5 << 10; + + // Move from the middle to the start + QTest::newRow("move05") << 5 << 7 << 0; + // Move from the end to the start + QTest::newRow("move06") << 8 << 9 << 0; + // Move from the middle to the middle + QTest::newRow("move07") << 5 << 7 << 2; + // Move from the end to the middle + QTest::newRow("move08") << 8 << 9 << 5; + + // Moving to the same row in a different parent doesn't confuse things. + QTest::newRow("move09") << 8 << 8 << 8; + + // Moving to the row of my parent and its neighbours doesn't confuse things + QTest::newRow("move09") << 8 << 8 << 4; + QTest::newRow("move10") << 8 << 8 << 5; + QTest::newRow("move11") << 8 << 8 << 6; + + // Moving everything from one parent to another + QTest::newRow("move12") << 0 << 9 << 10; +} + +void tst_QAbstractItemModel::testMoveToUncle() +{ + // Need to have some extra rows available. + ModelInsertCommand *insertCommand = new ModelInsertCommand(m_model, this); + insertCommand->setAncestorRowNumbers(QList() << 9); + insertCommand->setNumCols(4); + insertCommand->setStartRow(0); + insertCommand->setEndRow(9); + insertCommand->doCommand(); + + QFETCH( int, startRow); + QFETCH( int, endRow); + QFETCH( int, destRow); + + QList persistentList; + QModelIndexList indexList; + QModelIndexList parentsList; + + const int column = 0; + + QModelIndex sourceIndex = m_model->index(9, 0); + for (int i= 0; i < m_model->rowCount(sourceIndex); ++i) + { + QModelIndex idx = m_model->index(i, column, sourceIndex); + QVERIFY(idx.isValid()); + indexList << idx; + parentsList << idx.parent(); + persistentList << QPersistentModelIndex(idx); + } + + QModelIndex destIndex = m_model->index(5, 0); + for (int i= 0; i < m_model->rowCount(destIndex); ++i) + { + QModelIndex idx = m_model->index(i, column, destIndex); + QVERIFY(idx.isValid()); + indexList << idx; + parentsList << idx.parent(); + persistentList << QPersistentModelIndex(idx); + } + + QSignalSpy beforeSpy(m_model, SIGNAL(rowsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int))); + QSignalSpy afterSpy(m_model, SIGNAL(rowsMoved(const QModelIndex &, int, int, const QModelIndex &, int))); + + ModelMoveCommand *moveCommand = new ModelMoveCommand(m_model, this); + moveCommand->setAncestorRowNumbers(QList() << 9); + moveCommand->setNumCols(4); + moveCommand->setStartRow(startRow); + moveCommand->setEndRow(endRow); + moveCommand->setDestAncestors(QList() << 5); + moveCommand->setDestRow(destRow); + moveCommand->doCommand(); + + QVariantList beforeSignal = beforeSpy.takeAt(0); + QVariantList afterSignal = afterSpy.takeAt(0); + + QCOMPARE(beforeSignal.size(), 5); + QCOMPARE(beforeSignal.at(0).value(), sourceIndex); + QCOMPARE(beforeSignal.at(1).toInt(), startRow); + QCOMPARE(beforeSignal.at(2).toInt(), endRow); + QCOMPARE(beforeSignal.at(3).value(), destIndex); + QCOMPARE(beforeSignal.at(4).toInt(), destRow); + + QCOMPARE(afterSignal.size(), 5); + QCOMPARE(afterSignal.at(0).value(), sourceIndex); + QCOMPARE(afterSignal.at(1).toInt(), startRow); + QCOMPARE(afterSignal.at(2).toInt(), endRow); + QCOMPARE(afterSignal.at(3).value(), destIndex); + QCOMPARE(afterSignal.at(4).toInt(), destRow); + + for (int i = 0; i < indexList.size(); i++) + { + QModelIndex idx = indexList.at(i); + QModelIndex idxParent = parentsList.at(i); + QModelIndex persistentIndex = persistentList.at(i); + + int row = idx.row(); + if (idxParent == destIndex) + { + if ( row >= destRow) + { + QCOMPARE(row + endRow - startRow + 1, persistentIndex.row() ); + QCOMPARE(idx.column(), persistentIndex.column()); + QCOMPARE(destIndex, persistentIndex.parent()); + QCOMPARE(idx.model(), persistentIndex.model()); + } else + { + QCOMPARE(idx, persistentIndex); + } + } else + { + if (row < startRow) + { + QCOMPARE(idx, persistentIndex); + } else if (row <= endRow) + { + QCOMPARE(row + destRow - startRow, persistentIndex.row() ); + QCOMPARE(idx.column(), persistentIndex.column()); + QCOMPARE(destIndex, persistentIndex.parent()); + QCOMPARE(idx.model(), persistentIndex.model()); + + } else { + QCOMPARE(row - (endRow - startRow + 1), persistentIndex.row() ); + QCOMPARE(idx.column(), persistentIndex.column()); + QCOMPARE(idxParent, persistentIndex.parent()); + QCOMPARE(idx.model(), persistentIndex.model()); + } + } + } +} + +void tst_QAbstractItemModel::testMoveToDescendants() +{ + // Attempt to move a row to its ancestors depth rows deep. + const int depth = 6; + + // Need to have some extra rows available in a tree. + QList rows; + ModelInsertCommand *insertCommand; + for (int i = 0; i < depth; i++) + { + insertCommand = new ModelInsertCommand(m_model, this); + insertCommand->setAncestorRowNumbers(rows); + insertCommand->setNumCols(4); + insertCommand->setStartRow(0); + insertCommand->setEndRow(9); + insertCommand->doCommand(); + rows << 9; + } + + QList persistentList; + QModelIndexList indexList; + QModelIndexList parentsList; + + const int column = 0; + + QModelIndex sourceIndex = m_model->index(9, 0); + for (int i= 0; i < m_model->rowCount(sourceIndex); ++i) + { + QModelIndex idx = m_model->index(i, column, sourceIndex); + QVERIFY(idx.isValid()); + indexList << idx; + parentsList << idx.parent(); + persistentList << QPersistentModelIndex(idx); + } + + QModelIndex destIndex = m_model->index(5, 0); + for (int i= 0; i < m_model->rowCount(destIndex); ++i) + { + QModelIndex idx = m_model->index(i, column, destIndex); + QVERIFY(idx.isValid()); + indexList << idx; + parentsList << idx.parent(); + persistentList << QPersistentModelIndex(idx); + } + + QSignalSpy beforeSpy(m_model, SIGNAL(rowsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int))); + QSignalSpy afterSpy(m_model, SIGNAL(rowsMoved(const QModelIndex &, int, int, const QModelIndex &, int))); + + ModelMoveCommand *moveCommand; + QList ancestors; + while (ancestors.size() < depth) + { + ancestors << 9; + for (int row = 0; row <= 9; row++) + { + moveCommand = new ModelMoveCommand(m_model, this); + moveCommand->setNumCols(4); + moveCommand->setStartRow(9); + moveCommand->setEndRow(9); + moveCommand->setDestAncestors(ancestors); + moveCommand->setDestRow(row); + moveCommand->doCommand(); + + QVERIFY(beforeSpy.size() == 0); + QVERIFY(afterSpy.size() == 0); + } + } +} + +void tst_QAbstractItemModel::testMoveWithinOwnRange_data() +{ + QTest::addColumn("startRow"); + QTest::addColumn("endRow"); + QTest::addColumn("destRow"); + + QTest::newRow("move01") << 0 << 0 << 0; + QTest::newRow("move02") << 0 << 0 << 1; + QTest::newRow("move03") << 0 << 5 << 0; + QTest::newRow("move04") << 0 << 5 << 1; + QTest::newRow("move05") << 0 << 5 << 2; + QTest::newRow("move06") << 0 << 5 << 3; + QTest::newRow("move07") << 0 << 5 << 4; + QTest::newRow("move08") << 0 << 5 << 5; + QTest::newRow("move09") << 0 << 5 << 6; + QTest::newRow("move08") << 3 << 5 << 5; + QTest::newRow("move08") << 3 << 5 << 6; + QTest::newRow("move09") << 4 << 5 << 5; + QTest::newRow("move10") << 4 << 5 << 6; + QTest::newRow("move11") << 5 << 5 << 5; + QTest::newRow("move12") << 5 << 5 << 6; + QTest::newRow("move13") << 5 << 9 << 9; + QTest::newRow("move14") << 5 << 9 << 10; + QTest::newRow("move15") << 6 << 9 << 9; + QTest::newRow("move16") << 6 << 9 << 10; + QTest::newRow("move17") << 7 << 9 << 9; + QTest::newRow("move18") << 7 << 9 << 10; + QTest::newRow("move19") << 8 << 9 << 9; + QTest::newRow("move20") << 8 << 9 << 10; + QTest::newRow("move21") << 9 << 9 << 9; + QTest::newRow("move22") << 0 << 9 << 10; + +} + +void tst_QAbstractItemModel::testMoveWithinOwnRange() +{ + + QFETCH( int, startRow); + QFETCH( int, endRow); + QFETCH( int, destRow); + + + QSignalSpy beforeSpy(m_model, SIGNAL(rowsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int))); + QSignalSpy afterSpy(m_model, SIGNAL(rowsMoved(const QModelIndex &, int, int, const QModelIndex &, int))); + + ModelMoveCommand *moveCommand = new ModelMoveCommand(m_model, this); + moveCommand->setNumCols(4); + moveCommand->setStartRow(startRow); + moveCommand->setEndRow(endRow); + moveCommand->setDestRow(destRow); + moveCommand->doCommand(); + + QVERIFY(beforeSpy.size() == 0); + QVERIFY(afterSpy.size() == 0); + + +} + +class ListenerObject : public QObject +{ + Q_OBJECT +public: + ListenerObject(QAbstractProxyModel *parent); + +protected: + void fillIndexStores(const QModelIndex &parent); + +public slots: + void slotAboutToBeReset(); + void slotReset(); + +private: + QAbstractProxyModel *m_model; + QList m_persistentIndexes; + QModelIndexList m_nonPersistentIndexes; +}; + + +ListenerObject::ListenerObject(QAbstractProxyModel *parent) + : QObject(parent), m_model(parent) +{ + connect(m_model, SIGNAL(modelAboutToBeReset()), SLOT(slotAboutToBeReset())); + connect(m_model, SIGNAL(modelReset()), SLOT(slotReset())); + + fillIndexStores(QModelIndex()); +} + +void ListenerObject::fillIndexStores(const QModelIndex &parent) +{ + const int column = 0; + int row = 0; + QModelIndex idx = m_model->index(row, column, parent); + while (idx.isValid()) + { + m_persistentIndexes << QPersistentModelIndex(idx); + m_nonPersistentIndexes << idx; + if (m_model->hasChildren(idx)) + { + fillIndexStores(idx); + } + ++row; + idx = m_model->index(row, column, parent); + } +} + +void ListenerObject::slotAboutToBeReset() +{ + // Nothing has been changed yet. All indexes should be the same. + for (int i = 0; i < m_persistentIndexes.size(); ++i) + { + QModelIndex idx = m_persistentIndexes.at(i); + QVERIFY(idx == m_nonPersistentIndexes.at(i)); + QVERIFY(m_model->mapToSource(idx).isValid()); + } +} + +void ListenerObject::slotReset() +{ + foreach(const QModelIndex &idx, m_persistentIndexes) + { + QVERIFY(!idx.isValid()); + } +} + + +void tst_QAbstractItemModel::testReset() +{ + QSignalSpy beforeResetSpy(m_model, SIGNAL(modelAboutToBeReset())); + QSignalSpy afterResetSpy(m_model, SIGNAL(modelReset())); + + + QSortFilterProxyModel *nullProxy = new QSortFilterProxyModel(this); + nullProxy->setSourceModel(m_model); + + // Makes sure the model and proxy are in a consistent state. before and after reset. + new ListenerObject(nullProxy); + + ModelResetCommandFixed *resetCommand = new ModelResetCommandFixed(m_model, this); + + resetCommand->setNumCols(4); + resetCommand->setStartRow(0); + resetCommand->setEndRow(0); + resetCommand->setDestRow(0); + resetCommand->setDestAncestors(QList() << 5); + resetCommand->doCommand(); + + // Verify that the correct signals were emitted + QVERIFY(beforeResetSpy.size() == 1); + QVERIFY(afterResetSpy.size() == 1); + + // Verify that the move actually happened. + QVERIFY(m_model->rowCount() == 9); + QModelIndex destIndex = m_model->index(4, 0); + QVERIFY(m_model->rowCount(destIndex) == 11); + +} + +class CustomRoleModel : public QStringListModel +{ + Q_OBJECT + Q_ENUMS(Roles) +public: + enum Roles { + Custom1 = Qt::UserRole + 1, + Custom2, + UserRole + }; + + CustomRoleModel(QObject *parent = 0) + : QStringListModel(QStringList() << "a" << "b" << "c", parent) + { + + } + + void emitSignals() + { + const QModelIndex top = index(0, 0); + const QModelIndex bottom = index(2, 0); + + emit dataChanged(top, bottom); + emit dataChanged(top, bottom, QSet() << Qt::ToolTipRole); + emit dataChanged(top, bottom, QSet() << Qt::ToolTipRole << Custom1); + } +}; + +Q_DECLARE_METATYPE(QSet) + +void tst_QAbstractItemModel::testDataChanged() +{ + qRegisterMetaType >(); + + CustomRoleModel model; + + QSignalSpy withRoles(&model, SIGNAL(dataChanged(QModelIndex,QModelIndex,QSet))); + QSignalSpy withoutRoles(&model, SIGNAL(dataChanged(QModelIndex,QModelIndex))); + + model.emitSignals(); + + QCOMPARE(withRoles.size(), withoutRoles.size()); + QCOMPARE(withRoles.size(), 3); + + const QVariantList secondEmission = withRoles.at(1); + const QVariantList thirdEmission = withRoles.at(2); + + const QSet secondRoles = secondEmission.at(2).value >(); + const QSet thirdRoles = thirdEmission.at(2).value >(); + + QCOMPARE(secondRoles.size(), 1); + QVERIFY(secondRoles.contains(Qt::ToolTipRole)); + + QCOMPARE(thirdRoles.size(), 2); + QVERIFY(thirdRoles.contains(Qt::ToolTipRole)); + QVERIFY(thirdRoles.contains(CustomRoleModel::Custom1)); +} + +Q_DECLARE_METATYPE(QList) + +class SignalArgumentChecker : public QObject +{ + Q_OBJECT +public: + SignalArgumentChecker(const QModelIndex &p1, const QModelIndex &p2, QObject *parent = 0) + : QObject(parent), m_p1(p1), m_p2(p2), m_p1Persistent(p1), m_p2Persistent(p2) + { + connect(p1.model(), SIGNAL(layoutAboutToBeChanged(QList)), SLOT(layoutAboutToBeChanged(QList))); + connect(p1.model(), SIGNAL(layoutChanged(QList)), SLOT(layoutChanged(QList))); + } + +private slots: + void layoutAboutToBeChanged(const QList &parents) + { + QCOMPARE(parents.size(), 2); + QVERIFY(parents.first() != parents.at(1)); + QVERIFY(parents.contains(m_p1)); + QVERIFY(parents.contains(m_p2)); + } + + void layoutChanged(const QList &parents) + { + QCOMPARE(parents.size(), 2); + QVERIFY(parents.first() != parents.at(1)); + QVERIFY(parents.contains(m_p1Persistent)); + QVERIFY(parents.contains(m_p2Persistent)); + QVERIFY(!parents.contains(m_p2)); // Has changed + } + +private: + QModelIndex m_p1; + QModelIndex m_p2; + QPersistentModelIndex m_p1Persistent; + QPersistentModelIndex m_p2Persistent; +}; + +void tst_QAbstractItemModel::testChildrenLayoutsChanged() +{ + DynamicTreeModel model; + + ModelInsertCommand *insertCommand = new ModelInsertCommand(&model, this); + insertCommand->setStartRow(0); + insertCommand->setEndRow(9); + insertCommand->doCommand(); + + insertCommand = new ModelInsertCommand(&model, this); + insertCommand->setAncestorRowNumbers(QList() << 2); + insertCommand->setStartRow(0); + insertCommand->setEndRow(9); + insertCommand->doCommand(); + + insertCommand = new ModelInsertCommand(&model, this); + insertCommand->setAncestorRowNumbers(QList() << 5); + insertCommand->setStartRow(0); + insertCommand->setEndRow(9); + insertCommand->doCommand(); + + qRegisterMetaType >(); + + { + const QModelIndex p1 = model.index(2, 0); + const QModelIndex p2 = model.index(5, 0); + + const QPersistentModelIndex p1FirstPersistent = model.index(0, 0, p1); + const QPersistentModelIndex p1LastPersistent = model.index(9, 0, p1); + const QPersistentModelIndex p2FirstPersistent = model.index(0, 0, p2); + const QPersistentModelIndex p2LastPersistent = model.index(9, 0, p2); + + QVERIFY(p1.isValid()); + QVERIFY(p2.isValid()); + + QCOMPARE(model.rowCount(), 10); + QCOMPARE(model.rowCount(p1), 10); + QCOMPARE(model.rowCount(p2), 10); + + QSignalSpy beforeSpy(&model, SIGNAL(layoutAboutToBeChanged(QList))); + QSignalSpy afterSpy(&model, SIGNAL(layoutChanged(QList))); + + ModelChangeChildrenLayoutsCommand *changeCommand = new ModelChangeChildrenLayoutsCommand(&model, this); + changeCommand->setAncestorRowNumbers(QList() << 2); + changeCommand->setSecondAncestorRowNumbers(QList() << 5); + changeCommand->doCommand(); + + QCOMPARE(beforeSpy.size(), 1); + QCOMPARE(afterSpy.size(), 1); + + const QVariantList beforeSignal = beforeSpy.first(); + const QVariantList afterSignal = afterSpy.first(); + QCOMPARE(beforeSignal.size(), 1); + QCOMPARE(afterSignal.size(), 1); + + const QList beforeParents = beforeSignal.first().value >(); + QCOMPARE(beforeParents.size(), 2); + QVERIFY(beforeParents.first() != beforeParents.at(1)); + QVERIFY(beforeParents.contains(p1)); + QVERIFY(beforeParents.contains(p2)); + + const QList afterParents = afterSignal.first().value >(); + QCOMPARE(afterParents.size(), 2); + QVERIFY(afterParents.first() != afterParents.at(1)); + QVERIFY(afterParents.contains(p1)); + QVERIFY(afterParents.contains(p2)); + + // The first will be the last, and the lest will be the first. + QVERIFY(p1FirstPersistent.row() == 1); + QVERIFY(p1LastPersistent.row() == 0); + QVERIFY(p2FirstPersistent.row() == 9); + QVERIFY(p2LastPersistent.row() == 8); + + } + + insertCommand = new ModelInsertCommand(&model, this); + insertCommand->setAncestorRowNumbers(QList() << 5 << 4); + insertCommand->setStartRow(0); + insertCommand->setEndRow(9); + insertCommand->doCommand(); + + delete insertCommand; + + // Even when p2 itself is moved around, signal emission remains correct for its children. + { + const QModelIndex p1 = model.index(5, 0); + const QModelIndex p2 = model.index(4, 0, p1); + + QVERIFY(p1.isValid()); + QVERIFY(p2.isValid()); + + QCOMPARE(model.rowCount(), 10); + QCOMPARE(model.rowCount(p1), 10); + QCOMPARE(model.rowCount(p2), 10); + + const QPersistentModelIndex p1Persistent = p1; + const QPersistentModelIndex p2Persistent = p2; + + const QPersistentModelIndex p1FirstPersistent = model.index(0, 0, p1); + const QPersistentModelIndex p1LastPersistent = model.index(9, 0, p1); + const QPersistentModelIndex p2FirstPersistent = model.index(0, 0, p2); + const QPersistentModelIndex p2LastPersistent = model.index(9, 0, p2); + + QSignalSpy beforeSpy(&model, SIGNAL(layoutAboutToBeChanged(QList))); + QSignalSpy afterSpy(&model, SIGNAL(layoutChanged(QList))); + + // Because the arguments in the signal are persistent, we need to check them for the aboutToBe + // case at emission time - before they get updated. + SignalArgumentChecker checker(p1, p2); + + ModelChangeChildrenLayoutsCommand *changeCommand = new ModelChangeChildrenLayoutsCommand(&model, this); + changeCommand->setAncestorRowNumbers(QList() << 5); + changeCommand->setSecondAncestorRowNumbers(QList() << 5 << 4); + changeCommand->doCommand(); + + // p2 has been moved. + QCOMPARE(p2Persistent.row(), p2.row() + 1); + + QCOMPARE(beforeSpy.size(), 1); + QCOMPARE(afterSpy.size(), 1); + + const QVariantList beforeSignal = beforeSpy.first(); + const QVariantList afterSignal = afterSpy.first(); + QCOMPARE(beforeSignal.size(), 1); + QCOMPARE(afterSignal.size(), 1); + + QVERIFY(p1FirstPersistent.row() == 1); + QVERIFY(p1LastPersistent.row() == 0); + QVERIFY(p2FirstPersistent.row() == 9); + QVERIFY(p2LastPersistent.row() == 8); + } +} + +QTEST_MAIN(tst_QAbstractItemModel) +#include "tst_qabstractitemmodel.moc" diff --git a/tests/auto/corelib/kernel/kernel.pro b/tests/auto/corelib/kernel/kernel.pro index 90a5c24506..77762dbee1 100644 --- a/tests/auto/corelib/kernel/kernel.pro +++ b/tests/auto/corelib/kernel/kernel.pro @@ -1,6 +1,5 @@ TEMPLATE=subdirs SUBDIRS=\ - qabstractitemmodel \ qcoreapplication \ qeventloop \ qitemmodel \ @@ -24,4 +23,3 @@ SUBDIRS=\ # This test is only applicable on Windows !win32*:SUBDIRS -= qwineventnotifier -mac: qabstractitemmodel.CONFIG = no_check_target # QTBUG-22748 diff --git a/tests/auto/corelib/kernel/qabstractitemmodel/.gitignore b/tests/auto/corelib/kernel/qabstractitemmodel/.gitignore deleted file mode 100644 index f6f93f4b89..0000000000 --- a/tests/auto/corelib/kernel/qabstractitemmodel/.gitignore +++ /dev/null @@ -1 +0,0 @@ -tst_qabstractitemmodel diff --git a/tests/auto/corelib/kernel/qabstractitemmodel/qabstractitemmodel.pro b/tests/auto/corelib/kernel/qabstractitemmodel/qabstractitemmodel.pro deleted file mode 100644 index acf74737a8..0000000000 --- a/tests/auto/corelib/kernel/qabstractitemmodel/qabstractitemmodel.pro +++ /dev/null @@ -1,8 +0,0 @@ -CONFIG += testcase -TARGET = tst_qabstractitemmodel -QT += widgets testlib - -mtdir = ../../../other/modeltest -INCLUDEPATH += $$PWD/$${mtdir} -SOURCES = tst_qabstractitemmodel.cpp $${mtdir}/dynamictreemodel.cpp $${mtdir}/modeltest.cpp -HEADERS = $${mtdir}/dynamictreemodel.h $${mtdir}/modeltest.h diff --git a/tests/auto/corelib/kernel/qabstractitemmodel/tst_qabstractitemmodel.cpp b/tests/auto/corelib/kernel/qabstractitemmodel/tst_qabstractitemmodel.cpp deleted file mode 100644 index 2340c86207..0000000000 --- a/tests/auto/corelib/kernel/qabstractitemmodel/tst_qabstractitemmodel.cpp +++ /dev/null @@ -1,2015 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the test suite of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include -#include - -#include -#include - -#include "dynamictreemodel.h" - -Q_DECLARE_METATYPE(QModelIndex) - -/*! - Note that this doesn't test models, but any functionality that QAbstractItemModel should provide - */ -class tst_QAbstractItemModel : public QObject -{ - Q_OBJECT - -public slots: - void initTestCase(); - void init(); - -private slots: - void index(); - void parent(); - void hasChildren(); - void data(); - void headerData(); - void itemData(); - void itemFlags(); - void match(); - void dropMimeData_data(); - void dropMimeData(); - void changePersistentIndex(); - void movePersistentIndex(); - - void insertRows(); - void insertColumns(); - void removeRows(); - void removeColumns(); - - void reset(); - - void complexChangesWithPersistent(); - - void testMoveSameParentUp_data(); - void testMoveSameParentUp(); - - void testMoveSameParentDown_data(); - void testMoveSameParentDown(); - - void testMoveToGrandParent_data(); - void testMoveToGrandParent(); - - void testMoveToSibling_data(); - void testMoveToSibling(); - - void testMoveToUncle_data(); - void testMoveToUncle(); - - void testMoveToDescendants(); - - void testMoveWithinOwnRange_data(); - void testMoveWithinOwnRange(); - - void testMoveThroughProxy(); - - void testReset(); - - void testDataChanged(); - - void testChildrenLayoutsChanged(); - -private: - DynamicTreeModel *m_model; -}; - -/*! - Test model that impliments the pure vitual functions and anything else that is - needed. - - It is a table implemented as a vector of vectors of strings. - */ -class QtTestModel: public QAbstractItemModel -{ -public: - QtTestModel(int rows, int columns, QObject *parent = 0); - QtTestModel(const QVector > tbl, QObject *parent = 0); - QModelIndex index(int row, int column, const QModelIndex &parent = QModelIndex()) const; - QModelIndex parent(const QModelIndex &) const; - int rowCount(const QModelIndex &parent) const; - int columnCount(const QModelIndex &parent) const; - bool hasChildren(const QModelIndex &) const; - QVariant data(const QModelIndex &idx, int) const; - bool setData(const QModelIndex &idx, const QVariant &value, int); - bool insertRows(int row, int count, const QModelIndex &parent= QModelIndex()); - bool insertColumns(int column, int count, const QModelIndex &parent= QModelIndex()); - void setPersistent(const QModelIndex &from, const QModelIndex &to); - bool removeRows ( int row, int count, const QModelIndex & parent = QModelIndex() ); - bool removeColumns( int column, int count, const QModelIndex & parent = QModelIndex()); - void reset(); - - int cCount, rCount; - mutable bool wrongIndex; - QVector > table; -}; - -QtTestModel::QtTestModel(int rows, int columns, QObject *parent) - : QAbstractItemModel(parent), cCount(columns), rCount(rows), wrongIndex(false) -{ - table.resize(rows); - for (int r = 0; r < rows; ++r) { - table[r].resize(columns); - for (int c = 0; c < columns; ++c) - table[r][c] = QString("%1/%2").arg(r).arg(c); - } -} - -QtTestModel::QtTestModel(const QVector > tbl, QObject *parent) - : QAbstractItemModel(parent), wrongIndex(false) -{ - table = tbl; - rCount = tbl.count(); - cCount = tbl.at(0).count(); -} - -QModelIndex QtTestModel::index(int row, int column, const QModelIndex &parent) const -{ - return hasIndex(row, column, parent) ? createIndex(row, column, 0) : QModelIndex(); -} - -QModelIndex QtTestModel::parent(const QModelIndex &) const { return QModelIndex(); } -int QtTestModel::rowCount(const QModelIndex &parent) const { return parent.isValid() ? 0 : rCount; } -int QtTestModel::columnCount(const QModelIndex &parent) const { return parent.isValid() ? 0 : cCount; } -bool QtTestModel::hasChildren(const QModelIndex &) const { return false; } - -QVariant QtTestModel::data(const QModelIndex &idx, int) const -{ - if (idx.row() < 0 || idx.column() < 0 || idx.column() > cCount || idx.row() > rCount) { - wrongIndex = true; - qWarning("got invalid modelIndex %d/%d", idx.row(), idx.column()); - return QVariant(); - } - return table.at(idx.row()).at(idx.column()); -} - -bool QtTestModel::setData(const QModelIndex &idx, const QVariant &value, int) -{ - table[idx.row()][idx.column()] = value.toString(); - return true; -} - -bool QtTestModel::insertRows(int row, int count, const QModelIndex &parent) -{ - QAbstractItemModel::beginInsertRows(parent, row, row + count - 1); - int cc = columnCount(parent); - table.insert(row, count, QVector(cc)); - rCount = table.count(); - QAbstractItemModel::endInsertRows(); - return true; -} - -bool QtTestModel::insertColumns(int column, int count, const QModelIndex &parent) -{ - QAbstractItemModel::beginInsertColumns(parent, column, column + count - 1); - int rc = rowCount(parent); - for (int i = 0; i < rc; ++i) - table[i].insert(column, 1, ""); - cCount = table.at(0).count(); - QAbstractItemModel::endInsertColumns(); - return true; -} - -void QtTestModel::setPersistent(const QModelIndex &from, const QModelIndex &to) -{ - changePersistentIndex(from, to); -} - -bool QtTestModel::removeRows( int row, int count, const QModelIndex & parent) -{ - QAbstractItemModel::beginRemoveRows(parent, row, row + count - 1); - - for (int r = row+count-1; r >= row; --r) - table.remove(r); - rCount = table.count(); - - QAbstractItemModel::endRemoveRows(); - return true; -} - -bool QtTestModel::removeColumns(int column, int count, const QModelIndex & parent) -{ - QAbstractItemModel::beginRemoveColumns(parent, column, column + count - 1); - - for (int c = column+count-1; c > column; --c) - for (int r = 0; r < rCount; ++r) - table[r].remove(c); - - cCount = table.at(0).count(); - - QAbstractItemModel::endRemoveColumns(); - return true; -} - -void QtTestModel::reset() -{ - QAbstractItemModel::reset(); -} - -/** - * The source Model *must* be initialized before the _data function, since the _data function uses QModelIndexes to reference the items in the tables. - * Therefore, we must initialize it globally. - */ - -void tst_QAbstractItemModel::initTestCase() -{ - qRegisterMetaType("QModelIndex"); -} - -void tst_QAbstractItemModel::init() -{ - m_model = new DynamicTreeModel(this); - - ModelInsertCommand *insertCommand = new ModelInsertCommand(m_model, this); - insertCommand->setNumCols(4); - insertCommand->setStartRow(0); - insertCommand->setEndRow(9); - insertCommand->doCommand(); - - insertCommand = new ModelInsertCommand(m_model, this); - insertCommand->setAncestorRowNumbers(QList() << 5); - insertCommand->setNumCols(4); - insertCommand->setStartRow(0); - insertCommand->setEndRow(9); - insertCommand->doCommand(); -} - -/* - tests -*/ - -void tst_QAbstractItemModel::index() -{ - QtTestModel model(1, 1); - QModelIndex idx = model.index(0, 0, QModelIndex()); - QVERIFY(idx.isValid()); -} - -void tst_QAbstractItemModel::parent() -{ - QtTestModel model(1, 1); - QModelIndex idx = model.index(0, 0, QModelIndex()); - QModelIndex par = model.parent(idx); - QVERIFY(!par.isValid()); -} - -void tst_QAbstractItemModel::hasChildren() -{ - QtTestModel model(1, 1); - QModelIndex idx = model.index(0, 0, QModelIndex()); - QVERIFY(model.hasChildren(idx) == false); -} - -void tst_QAbstractItemModel::data() -{ - QtTestModel model(1, 1); - QModelIndex idx = model.index(0, 0, QModelIndex()); - QVERIFY(idx.isValid()); - QCOMPARE(model.data(idx, Qt::DisplayRole).toString(), QString("0/0")); - - // Default does nothing - QCOMPARE(model.setHeaderData(0, Qt::Horizontal, QVariant(0), 0), false); -} - -void tst_QAbstractItemModel::headerData() -{ - QtTestModel model(1, 1); - QCOMPARE(model.headerData(0, Qt::Horizontal, Qt::DisplayRole).toString(), - QString("1")); - - // Default text alignment for header must be invalid - QVERIFY( !model.headerData(0, Qt::Horizontal, Qt::TextAlignmentRole).isValid() ); -} - -void tst_QAbstractItemModel::itemData() -{ - QtTestModel model(1, 1); - QModelIndex idx = model.index(0, 0, QModelIndex()); - QVERIFY(idx.isValid()); - QMap dat = model.itemData(idx); - QCOMPARE(dat.count(Qt::DisplayRole), 1); - QCOMPARE(dat.value(Qt::DisplayRole).toString(), QString("0/0")); -} - -void tst_QAbstractItemModel::itemFlags() -{ - QtTestModel model(1, 1); - QModelIndex idx = model.index(0, 0, QModelIndex()); - QVERIFY(idx.isValid()); - Qt::ItemFlags flags = model.flags(idx); - QCOMPARE(Qt::ItemIsSelectable|Qt::ItemIsEnabled, flags); -} - -void tst_QAbstractItemModel::match() -{ - QtTestModel model(4, 1); - QModelIndex start = model.index(0, 0, QModelIndex()); - QVERIFY(start.isValid()); - QModelIndexList res = model.match(start, Qt::DisplayRole, QVariant("1"), 3); - QCOMPARE(res.count(), 1); - QModelIndex idx = model.index(1, 0, QModelIndex()); - bool areEqual = (idx == res.first()); - QVERIFY(areEqual); - - model.setData(model.index(0, 0, QModelIndex()), "bat", Qt::DisplayRole); - model.setData(model.index(1, 0, QModelIndex()), "cat", Qt::DisplayRole); - model.setData(model.index(2, 0, QModelIndex()), "dog", Qt::DisplayRole); - model.setData(model.index(3, 0, QModelIndex()), "boar", Qt::DisplayRole); - - res = model.match(start, Qt::DisplayRole, QVariant("dog"), -1, Qt::MatchExactly); - QCOMPARE(res.count(), 1); - res = model.match(start, Qt::DisplayRole, QVariant("a"), -1, Qt::MatchContains); - QCOMPARE(res.count(), 3); - res = model.match(start, Qt::DisplayRole, QVariant("b"), -1, Qt::MatchStartsWith); - QCOMPARE(res.count(), 2); - res = model.match(start, Qt::DisplayRole, QVariant("t"), -1, Qt::MatchEndsWith); - QCOMPARE(res.count(), 2); - res = model.match(start, Qt::DisplayRole, QVariant("*a*"), -1, Qt::MatchWildcard); - QCOMPARE(res.count(), 3); - res = model.match(start, Qt::DisplayRole, QVariant(".*O.*"), -1, Qt::MatchRegExp); - QCOMPARE(res.count(), 2); - res = model.match(start, Qt::DisplayRole, QVariant(".*O.*"), -1, Qt::MatchRegExp | Qt::MatchCaseSensitive); - QCOMPARE(res.count(), 0); - res = model.match(start, Qt::DisplayRole, QVariant("BOAR"), -1, Qt::MatchFixedString); - QCOMPARE(res.count(), 1); - res = model.match(start, Qt::DisplayRole, QVariant("bat"), -1, - Qt::MatchFixedString | Qt::MatchCaseSensitive); - QCOMPARE(res.count(), 1); -} - -typedef QPair Position; -typedef QVector > Selection; -typedef QVector > StringTable; -typedef QVector StringTableRow; -Q_DECLARE_METATYPE(Position) -Q_DECLARE_METATYPE(Selection) -Q_DECLARE_METATYPE(StringTable) - -static StringTableRow qStringTableRow(const QString &s1, const QString &s2, const QString &s3) -{ - StringTableRow row; - row << s1 << s2 << s3; - return row; -} - -#ifdef Q_CC_MSVC -# define STRINGTABLE (StringTable()) -#else -# define STRINGTABLE StringTable() -#endif - -void tst_QAbstractItemModel::dropMimeData_data() -{ - QTest::addColumn("src_table"); // drag source - QTest::addColumn("dst_table"); // drop target - QTest::addColumn("selection"); // dragged items - QTest::addColumn("dst_position"); // drop position - QTest::addColumn("res_table"); // expected result - - { - QTest::newRow("2x2 dropped at [0, 0]") - << (STRINGTABLE // source table - << (qStringTableRow("A", "B", "C")) - << (qStringTableRow("D", "E", "F"))) - << (STRINGTABLE // destination table - << (qStringTableRow("0", "1", "2")) - << (qStringTableRow("3", "4", "5"))) - << (Selection() // selection - << Position(0, 0) << Position(0, 1) - << Position(1, 0) << Position(1, 1)) - << Position(0, 0) // drop position - << (STRINGTABLE // resulting table - << (qStringTableRow("A", "B", "" )) - << (qStringTableRow("D", "E", "" )) - << (qStringTableRow("0", "1", "2")) - << (qStringTableRow("3", "4", "5"))); - } - - { - QTest::newRow("2x2 dropped at [1, 0]") - << (STRINGTABLE // source table - << (qStringTableRow("A", "B", "C")) - << (qStringTableRow("D", "E", "F"))) - << (STRINGTABLE // destination table - << (qStringTableRow("0", "1", "2")) - << (qStringTableRow("3", "4", "5"))) - << (Selection() // selection - << Position(0, 0) << Position(0, 1) - << Position(1, 0) << Position(1, 1)) - << Position(1, 0) // drop position - << (STRINGTABLE // resulting table - << (qStringTableRow("0", "1", "2")) - << (qStringTableRow("A", "B", "" )) - << (qStringTableRow("D", "E", "" )) - << (qStringTableRow("3", "4", "5"))); - } - - { - QTest::newRow("2x2 dropped at [3, 0]") - << (STRINGTABLE // source table - << (qStringTableRow("A", "B", "C")) - << (qStringTableRow("D", "E", "F"))) - << (STRINGTABLE // destination table - << (qStringTableRow("0", "1", "2")) - << (qStringTableRow("3", "4", "5"))) - << (Selection() // selection - << Position(0, 0) << Position(0, 1) - << Position(1, 0) << Position(1, 1)) - << Position(3, 0) // drop position - << (STRINGTABLE // resulting table - << (qStringTableRow("0", "1", "2")) - << (qStringTableRow("3", "4", "5")) - << (qStringTableRow("A", "B", "" )) - << (qStringTableRow("D", "E", "" ))); - } - - { - QTest::newRow("2x2 dropped at [0, 1]") - << (STRINGTABLE // source table - << (qStringTableRow("A", "B", "C")) - << (qStringTableRow("D", "E", "F"))) - << (STRINGTABLE // destination table - << (qStringTableRow("0", "1", "2")) - << (qStringTableRow("3", "4", "5"))) - << (Selection() // selection - << Position(0, 0) << Position(0, 1) - << Position(1, 0) << Position(1, 1)) - << Position(0, 1) // drop position - << (STRINGTABLE // resulting table - << (qStringTableRow("" , "A", "B")) - << (qStringTableRow("" , "D", "E")) - << (qStringTableRow("0", "1", "2")) - << (qStringTableRow("3", "4", "5"))); - } - - { - QTest::newRow("2x2 dropped at [0, 2] (line break)") - << (STRINGTABLE // source table - << (qStringTableRow("A", "B", "C")) - << (qStringTableRow("D", "E", "F"))) - << (STRINGTABLE // destination table - << (qStringTableRow("0", "1", "2")) - << (qStringTableRow("3", "4", "5"))) - << (Selection() // selection - << Position(0, 0) << Position(0, 1) - << Position(1, 0) << Position(1, 1)) - << Position(0, 2) // drop position - << (STRINGTABLE // resulting table - << (qStringTableRow("" , "" , "A")) - << (qStringTableRow("" , "" , "D")) - << (qStringTableRow("" , "" , "B")) - << (qStringTableRow("" , "" , "E")) - << (qStringTableRow("0", "1", "2")) - << (qStringTableRow("3", "4", "5"))); - } - - { - QTest::newRow("2x2 dropped at [3, 2] (line break)") - << (STRINGTABLE // source table - << (qStringTableRow("A", "B", "C")) - << (qStringTableRow("D", "E", "F"))) - << (STRINGTABLE // destination table - << (qStringTableRow("0", "1", "2")) - << (qStringTableRow("3", "4", "5"))) - << (Selection() // selection - << Position(0, 0) << Position(0, 1) - << Position(1, 0) << Position(1, 1)) - << Position(3, 2) // drop position - << (STRINGTABLE // resulting table - << (qStringTableRow("0", "1", "2")) - << (qStringTableRow("3", "4", "5")) - << (qStringTableRow("" , "" , "A")) - << (qStringTableRow("" , "" , "D")) - << (qStringTableRow("" , "" , "B")) - << (qStringTableRow("" , "" , "E"))); - } - - { - QTest::newRow("non-square dropped at [0, 0]") - << (STRINGTABLE // source table - << (qStringTableRow("A", "B", "C")) - << (qStringTableRow("D", "E", "F"))) - << (STRINGTABLE // destination table - << (qStringTableRow("0", "1", "2")) - << (qStringTableRow("3", "4", "5"))) - << (Selection() // selection - << Position(0, 0) << Position(0, 1) - << Position(1, 0)) - << Position(0, 0) // drop position - << (STRINGTABLE // resulting table - << (qStringTableRow("A", "B", "" )) - << (qStringTableRow("D", "" , "" )) - << (qStringTableRow("0", "1", "2")) - << (qStringTableRow("3", "4", "5"))); - } - - { - QTest::newRow("non-square dropped at [0, 2]") - << (STRINGTABLE // source table - << (qStringTableRow("A", "B", "C")) - << (qStringTableRow("D", "E", "F"))) - << (STRINGTABLE // destination table - << (qStringTableRow("0", "1", "2")) - << (qStringTableRow("3", "4", "5"))) - << (Selection() // selection - << Position(0, 0) << Position(0, 1) - << Position(1, 0)) - << Position(0, 2) // drop position - << (STRINGTABLE // resulting table - << (qStringTableRow("" , "" , "A")) - << (qStringTableRow("" , "" , "D")) - << (qStringTableRow("" , "" , "B")) - << (qStringTableRow("0", "1", "2")) - << (qStringTableRow("3", "4", "5"))); - } - - { - QTest::newRow("2x 1x2 dropped at [0, 0] (duplicates)") - << (STRINGTABLE // source table - << (qStringTableRow("A", "B", "C")) - << (qStringTableRow("D", "E", "F"))) - << (STRINGTABLE // destination table - << (qStringTableRow("0", "1", "2")) - << (qStringTableRow("3", "4", "5"))) - << (Selection() // selection; 2x the same row (to simulate selections in hierarchy) - << Position(0, 0) << Position(0, 1) - << Position(0, 0) << Position(0, 1)) - << Position(0, 0) // drop position - << (STRINGTABLE // resulting table - << (qStringTableRow("A", "B", "" )) - << (qStringTableRow("A", "" , "" )) - << (qStringTableRow("" , "B", "" )) // ### FIXME: strange behavior, but rare case - << (qStringTableRow("0", "1", "2")) - << (qStringTableRow("3", "4", "5"))); - } - - { - QTest::newRow("2x 1x2 dropped at [3, 2] (duplicates)") - << (STRINGTABLE // source table - << (qStringTableRow("A", "B", "C")) - << (qStringTableRow("D", "E", "F"))) - << (STRINGTABLE // destination table - << (qStringTableRow("0", "1", "2")) - << (qStringTableRow("3", "4", "5"))) - << (Selection() // selection; 2x the same row (to simulate selections in hierarchy) - << Position(0, 0) << Position(0, 1) - << Position(0, 0) << Position(0, 1)) - << Position(3, 2) // drop position - << (STRINGTABLE // resulting table - << (qStringTableRow("0", "1", "2")) - << (qStringTableRow("3", "4", "5")) - << (qStringTableRow("" , "" , "A")) - << (qStringTableRow("" , "" , "B")) - << (qStringTableRow("" , "" , "A")) - << (qStringTableRow("" , "" , "B"))); - } - { - QTest::newRow("2x 1x2 dropped at [3, 2] (different rows)") - << (STRINGTABLE // source table - << (qStringTableRow("A", "B", "C")) - << (qStringTableRow("D", "E", "F")) - << (qStringTableRow("G", "H", "I"))) - << (STRINGTABLE // destination table - << (qStringTableRow("0", "1", "2")) - << (qStringTableRow("3", "4", "5"))) - << (Selection() // selection; 2x the same row (to simulate selections in hierarchy) - << Position(0, 0) << Position(0, 1) - << Position(2, 0) << Position(2, 1)) - << Position(2, 1) // drop position - << (STRINGTABLE // resulting table - << (qStringTableRow("0", "1", "2")) - << (qStringTableRow("3", "4", "5")) - << (qStringTableRow("" , "A" , "B")) - << (qStringTableRow("" , "G" , "H"))); - } - - { - QTest::newRow("2x 1x2 dropped at [3, 2] (different rows, over the edge)") - << (STRINGTABLE // source table - << (qStringTableRow("A", "B", "C")) - << (qStringTableRow("D", "E", "F")) - << (qStringTableRow("G", "H", "I"))) - << (STRINGTABLE // destination table - << (qStringTableRow("0", "1", "2")) - << (qStringTableRow("3", "4", "5"))) - << (Selection() // selection; 2x the same row (to simulate selections in hierarchy) - << Position(0, 0) << Position(0, 1) - << Position(2, 0) << Position(2, 1)) - << Position(3, 2) // drop position - << (STRINGTABLE // resulting table - << (qStringTableRow("0", "1", "2")) - << (qStringTableRow("3", "4", "5")) - << (qStringTableRow("" , "" , "A")) - << (qStringTableRow("" , "" , "G")) - << (qStringTableRow("" , "" , "B")) - << (qStringTableRow("" , "" , "H"))); - } -} - -void tst_QAbstractItemModel::dropMimeData() -{ - QFETCH(StringTable, src_table); - QFETCH(StringTable, dst_table); - QFETCH(Selection, selection); - QFETCH(Position, dst_position); - QFETCH(StringTable, res_table); - - QtTestModel src(src_table); - QtTestModel dst(dst_table); - QtTestModel res(res_table); - - // get the mimeData from the "selected" indexes - QModelIndexList selectedIndexes; - for (int i = 0; i < selection.count(); ++i) - selectedIndexes << src.index(selection.at(i).first, selection.at(i).second, QModelIndex()); - QMimeData *md = src.mimeData(selectedIndexes); - // do the drop - dst.dropMimeData(md, Qt::CopyAction, dst_position.first, dst_position.second, QModelIndex()); - delete md; - - // compare to the expected results - QCOMPARE(dst.rowCount(QModelIndex()), res.rowCount(QModelIndex())); - QCOMPARE(dst.columnCount(QModelIndex()), res.columnCount(QModelIndex())); - for (int r = 0; r < dst.rowCount(QModelIndex()); ++r) { - for (int c = 0; c < dst.columnCount(QModelIndex()); ++c) { - QModelIndex dst_idx = dst.index(r, c, QModelIndex()); - QModelIndex res_idx = res.index(r, c, QModelIndex()); - QMap dst_data = dst.itemData(dst_idx); - QMap res_data = res.itemData(res_idx); - QCOMPARE(dst_data , res_data); - } - } -} - - -void tst_QAbstractItemModel::changePersistentIndex() -{ - QtTestModel model(3, 3); - QModelIndex a = model.index(1, 2, QModelIndex()); - QModelIndex b = model.index(2, 1, QModelIndex()); - QPersistentModelIndex p(a); - QVERIFY(p == a); - model.setPersistent(a, b); - QVERIFY(p == b); -} - -void tst_QAbstractItemModel::movePersistentIndex() -{ - QtTestModel model(3, 3); - - QPersistentModelIndex a = model.index(1, 1); - QVERIFY(a.isValid()); - QCOMPARE(a.row(), 1); - QCOMPARE(a.column(), 1); - - model.insertRow(0); - QCOMPARE(a.row(), 2); - - model.insertRow(1); - QCOMPARE(a.row(), 3); - - model.insertColumn(0); - QCOMPARE(a.column(), 2); -} - -void tst_QAbstractItemModel::removeRows() -{ - QtTestModel model(10, 10); - - QSignalSpy rowsAboutToBeRemovedSpy(&model, SIGNAL(rowsAboutToBeRemoved( const QModelIndex &, int , int ))); - QSignalSpy rowsRemovedSpy(&model, SIGNAL(rowsRemoved( const QModelIndex &, int, int ))); - - QCOMPARE(model.removeRows(6, 4), true); - QCOMPARE(rowsAboutToBeRemovedSpy.count(), 1); - QCOMPARE(rowsRemovedSpy.count(), 1); -} - -void tst_QAbstractItemModel::removeColumns() -{ - QtTestModel model(10, 10); - - QSignalSpy columnsAboutToBeRemovedSpy(&model, SIGNAL(columnsAboutToBeRemoved( const QModelIndex &, int , int ))); - QSignalSpy columnsRemovedSpy(&model, SIGNAL(columnsRemoved( const QModelIndex &, int, int ))); - - QCOMPARE(model.removeColumns(6, 4), true); - QCOMPARE(columnsAboutToBeRemovedSpy.count(), 1); - QCOMPARE(columnsRemovedSpy.count(), 1); -} - -void tst_QAbstractItemModel::insertRows() -{ - QtTestModel model(10, 10); - - QSignalSpy rowsAboutToBeInsertedSpy(&model, SIGNAL(rowsAboutToBeInserted( const QModelIndex &, int , int ))); - QSignalSpy rowsInsertedSpy(&model, SIGNAL(rowsInserted( const QModelIndex &, int, int ))); - - QCOMPARE(model.insertRows(6, 4), true); - QCOMPARE(rowsAboutToBeInsertedSpy.count(), 1); - QCOMPARE(rowsInsertedSpy.count(), 1); -} - -void tst_QAbstractItemModel::insertColumns() -{ - QtTestModel model(10, 10); - - QSignalSpy columnsAboutToBeInsertedSpy(&model, SIGNAL(columnsAboutToBeInserted( const QModelIndex &, int , int ))); - QSignalSpy columnsInsertedSpy(&model, SIGNAL(columnsInserted( const QModelIndex &, int, int ))); - - QCOMPARE(model.insertColumns(6, 4), true); - QCOMPARE(columnsAboutToBeInsertedSpy.count(), 1); - QCOMPARE(columnsInsertedSpy.count(), 1); -} - -void tst_QAbstractItemModel::reset() -{ - QtTestModel model(10, 10); - - QSignalSpy resetSpy(&model, SIGNAL(modelReset())); - model.reset(); - QCOMPARE(resetSpy.count(), 1); -} - -void tst_QAbstractItemModel::complexChangesWithPersistent() -{ - QtTestModel model(10, 10); - QPersistentModelIndex a = model.index(1, 1, QModelIndex()); - QPersistentModelIndex b = model.index(9, 7, QModelIndex()); - QPersistentModelIndex c = model.index(5, 6, QModelIndex()); - QPersistentModelIndex d = model.index(3, 9, QModelIndex()); - QPersistentModelIndex e[10]; - for (int i=0; i <10 ; i++) { - e[i] = model.index(2, i , QModelIndex()); - } - - QVERIFY(a == model.index(1, 1, QModelIndex())); - QVERIFY(b == model.index(9, 7, QModelIndex())); - QVERIFY(c == model.index(5, 6, QModelIndex())); - QVERIFY(d == model.index(3, 9, QModelIndex())); - for (int i=0; i <8 ; i++) - QVERIFY(e[i] == model.index(2, i , QModelIndex())); - - //remove a bunch of columns - model.removeColumns(2, 4); - - QVERIFY(a == model.index(1, 1, QModelIndex())); - QVERIFY(b == model.index(9, 3, QModelIndex())); - QVERIFY(c == model.index(5, 2, QModelIndex())); - QVERIFY(d == model.index(3, 5, QModelIndex())); - for (int i=0; i <2 ; i++) - QVERIFY(e[i] == model.index(2, i , QModelIndex())); - for (int i=2; i <6 ; i++) - QVERIFY(!e[i].isValid()); - for (int i=6; i <10 ; i++) - QVERIFY(e[i] == model.index(2, i-4 , QModelIndex())); - - //move some indexes around - model.setPersistent(model.index(1, 1 , QModelIndex()), model.index(9, 3 , QModelIndex())); - model.setPersistent(model.index(9, 3 , QModelIndex()), model.index(8, 4 , QModelIndex())); - - QVERIFY(a == model.index(9, 3, QModelIndex())); - QVERIFY(b == model.index(8, 4, QModelIndex())); - QVERIFY(c == model.index(5, 2, QModelIndex())); - QVERIFY(d == model.index(3, 5, QModelIndex())); - for (int i=0; i <2 ; i++) - QVERIFY(e[i] == model.index(2, i , QModelIndex())); - for (int i=2; i <6 ; i++) - QVERIFY(!e[i].isValid()); - for (int i=6; i <10 ; i++) - QVERIFY(e[i] == model.index(2, i-4 , QModelIndex())); - - //inserting a bunch of columns - model.insertColumns(2, 2); - QVERIFY(a == model.index(9, 5, QModelIndex())); - QVERIFY(b == model.index(8, 6, QModelIndex())); - QVERIFY(c == model.index(5, 4, QModelIndex())); - QVERIFY(d == model.index(3, 7, QModelIndex())); - for (int i=0; i <2 ; i++) - QVERIFY(e[i] == model.index(2, i , QModelIndex())); - for (int i=2; i <6 ; i++) - QVERIFY(!e[i].isValid()); - for (int i=6; i <10 ; i++) - QVERIFY(e[i] == model.index(2, i-2 , QModelIndex())); - -} - -void tst_QAbstractItemModel::testMoveSameParentDown_data() -{ - QTest::addColumn("startRow"); - QTest::addColumn("endRow"); - QTest::addColumn("destRow"); - // We can't put the actual parent index for the move in here because m_model is not defined until init() is run. - QTest::addColumn("topLevel"); - - // Move from the start to the middle - QTest::newRow("move01") << 0 << 2 << 8 << true; - // Move from the start to the end - QTest::newRow("move02") << 0 << 2 << 10 << true; - // Move from the middle to the middle - QTest::newRow("move03") << 3 << 5 << 8 << true; - // Move from the middle to the end - QTest::newRow("move04") << 3 << 5 << 10 << true; - - QTest::newRow("move05") << 0 << 2 << 8 << false; - QTest::newRow("move06") << 0 << 2 << 10 << false; - QTest::newRow("move07") << 3 << 5 << 8 << false; - QTest::newRow("move08") << 3 << 5 << 10 << false; -} - -void tst_QAbstractItemModel::testMoveSameParentDown() -{ - QFETCH( int, startRow); - QFETCH( int, endRow); - QFETCH( int, destRow); - QFETCH( bool, topLevel); - - QModelIndex moveParent = topLevel ? QModelIndex() : m_model->index(5, 0); - - QList persistentList; - QModelIndexList indexList; - - for (int column = 0; column < m_model->columnCount(); ++column) - { - for (int row= 0; row < m_model->rowCount(); ++row) - { - QModelIndex idx = m_model->index(row, column); - QVERIFY(idx.isValid()); - indexList << idx; - persistentList << QPersistentModelIndex(idx); - } - } - - QModelIndex parent = m_model->index(5, 0); - for (int column = 0; column < m_model->columnCount(); ++column) - { - for (int row= 0; row < m_model->rowCount(parent); ++row) - { - QModelIndex idx = m_model->index(row, column, parent); - QVERIFY(idx.isValid()); - indexList << idx; - persistentList << QPersistentModelIndex(idx); - } - } - - QSignalSpy beforeSpy(m_model, SIGNAL(rowsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int))); - QSignalSpy afterSpy(m_model, SIGNAL(rowsMoved(const QModelIndex &, int, int, const QModelIndex &, int))); - - ModelMoveCommand *moveCommand = new ModelMoveCommand(m_model, this); - moveCommand->setNumCols(4); - if (!topLevel) - moveCommand->setAncestorRowNumbers(QList() << 5); - moveCommand->setStartRow(startRow); - moveCommand->setEndRow(endRow); - moveCommand->setDestRow(destRow); - if (!topLevel) - moveCommand->setDestAncestors(QList() << 5); - moveCommand->doCommand(); - - QVariantList beforeSignal = beforeSpy.takeAt(0); - QVariantList afterSignal = afterSpy.takeAt(0); - - QCOMPARE(beforeSignal.size(), 5); - QCOMPARE(beforeSignal.at(0).value(), moveParent); - QCOMPARE(beforeSignal.at(1).toInt(), startRow); - QCOMPARE(beforeSignal.at(2).toInt(), endRow); - QCOMPARE(beforeSignal.at(3).value(), moveParent); - QCOMPARE(beforeSignal.at(4).toInt(), destRow); - - QCOMPARE(afterSignal.size(), 5); - QCOMPARE(afterSignal.at(0).value(), moveParent); - QCOMPARE(afterSignal.at(1).toInt(), startRow); - QCOMPARE(afterSignal.at(2).toInt(), endRow); - QCOMPARE(afterSignal.at(3).value(), moveParent); - QCOMPARE(afterSignal.at(4).toInt(), destRow); - - for (int i = 0; i < indexList.size(); i++) - { - QModelIndex idx = indexList.at(i); - QModelIndex persistentIndex = persistentList.at(i); - if (idx.parent() == moveParent) - { - int row = idx.row(); - if ( row >= startRow) - { - if (row <= endRow) - { - QCOMPARE(row + destRow - endRow - 1, persistentIndex.row() ); - QCOMPARE(idx.column(), persistentIndex.column()); - QCOMPARE(idx.parent(), persistentIndex.parent()); - QCOMPARE(idx.model(), persistentIndex.model()); - } else if ( row < destRow) - { - QCOMPARE(row - (endRow - startRow + 1), persistentIndex.row() ); - QCOMPARE(idx.column(), persistentIndex.column()); - QCOMPARE(idx.parent(), persistentIndex.parent()); - QCOMPARE(idx.model(), persistentIndex.model()); - } else - { - QCOMPARE(idx, persistentIndex); - } - } else - { - QCOMPARE(idx, persistentIndex); - } - } else - { - QCOMPARE(idx, persistentIndex); - } - } -} - -void tst_QAbstractItemModel::testMoveSameParentUp_data() -{ - QTest::addColumn("startRow"); - QTest::addColumn("endRow"); - QTest::addColumn("destRow"); - QTest::addColumn("topLevel"); - - // Move from the middle to the start - QTest::newRow("move01") << 5 << 7 << 0 << true; - // Move from the end to the start - QTest::newRow("move02") << 8 << 9 << 0 << true; - // Move from the middle to the middle - QTest::newRow("move03") << 5 << 7 << 2 << true; - // Move from the end to the middle - QTest::newRow("move04") << 8 << 9 << 5 << true; - - QTest::newRow("move05") << 5 << 7 << 0 << false; - QTest::newRow("move06") << 8 << 9 << 0 << false; - QTest::newRow("move07") << 5 << 7 << 2 << false; - QTest::newRow("move08") << 8 << 9 << 5 << false; -} - -void tst_QAbstractItemModel::testMoveSameParentUp() -{ - - QFETCH( int, startRow); - QFETCH( int, endRow); - QFETCH( int, destRow); - QFETCH( bool, topLevel); - - QModelIndex moveParent = topLevel ? QModelIndex() : m_model->index(5, 0); - - QList persistentList; - QModelIndexList indexList; - - for (int column = 0; column < m_model->columnCount(); ++column) - { - for (int row= 0; row < m_model->rowCount(); ++row) - { - QModelIndex idx = m_model->index(row, column); - QVERIFY(idx.isValid()); - indexList << idx; - persistentList << QPersistentModelIndex(idx); - } - } - - QModelIndex parent = m_model->index(2, 0); - for (int column = 0; column < m_model->columnCount(); ++column) - { - for (int row= 0; row < m_model->rowCount(parent); ++row) - { - QModelIndex idx = m_model->index(row, column, parent); - QVERIFY(idx.isValid()); - indexList << idx; - persistentList << QPersistentModelIndex(idx); - } - } - - QSignalSpy beforeSpy(m_model, SIGNAL(rowsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int))); - QSignalSpy afterSpy(m_model, SIGNAL(rowsMoved(const QModelIndex &, int, int, const QModelIndex &, int))); - - - ModelMoveCommand *moveCommand = new ModelMoveCommand(m_model, this); - moveCommand->setNumCols(4); - if (!topLevel) - moveCommand->setAncestorRowNumbers(QList() << 5); - moveCommand->setStartRow(startRow); - moveCommand->setEndRow(endRow); - moveCommand->setDestRow(destRow); - if (!topLevel) - moveCommand->setDestAncestors(QList() << 5); - moveCommand->doCommand(); - - QVariantList beforeSignal = beforeSpy.takeAt(0); - QVariantList afterSignal = afterSpy.takeAt(0); - - QCOMPARE(beforeSignal.size(), 5); - QCOMPARE(beforeSignal.at(0).value(), moveParent); - QCOMPARE(beforeSignal.at(1).toInt(), startRow); - QCOMPARE(beforeSignal.at(2).toInt(), endRow); - QCOMPARE(beforeSignal.at(3).value(), moveParent); - QCOMPARE(beforeSignal.at(4).toInt(), destRow); - - QCOMPARE(afterSignal.size(), 5); - QCOMPARE(afterSignal.at(0).value(), moveParent); - QCOMPARE(afterSignal.at(1).toInt(), startRow); - QCOMPARE(afterSignal.at(2).toInt(), endRow); - QCOMPARE(afterSignal.at(3).value(), moveParent); - QCOMPARE(afterSignal.at(4).toInt(), destRow); - - - for (int i = 0; i < indexList.size(); i++) - { - QModelIndex idx = indexList.at(i); - QModelIndex persistentIndex = persistentList.at(i); - if (idx.parent() == moveParent) - { - int row = idx.row(); - if ( row >= destRow) - { - if (row < startRow) - { - QCOMPARE(row + endRow - startRow + 1, persistentIndex.row() ); - QCOMPARE(idx.column(), persistentIndex.column()); - QCOMPARE(idx.parent(), persistentIndex.parent()); - QCOMPARE(idx.model(), persistentIndex.model()); - } else if ( row <= endRow) - { - QCOMPARE(row + destRow - startRow, persistentIndex.row() ); - QCOMPARE(idx.column(), persistentIndex.column()); - QCOMPARE(idx.parent(), persistentIndex.parent()); - QCOMPARE(idx.model(), persistentIndex.model()); - } else - { - QCOMPARE(idx, persistentIndex); - } - } else - { - QCOMPARE(idx, persistentIndex); - } - } else - { - QCOMPARE(idx, persistentIndex); - } - } -} - -void tst_QAbstractItemModel::testMoveThroughProxy() -{ - QSortFilterProxyModel *proxy = new QSortFilterProxyModel(this); - proxy->setSourceModel(m_model); - - QList persistentList; - - persistentList.append(proxy->index(0, 0)); - persistentList.append(proxy->index(0, 0, proxy->mapFromSource(m_model->index(5, 0)))); - - ModelMoveCommand *moveCommand = new ModelMoveCommand(m_model, this); - moveCommand->setNumCols(4); - moveCommand->setAncestorRowNumbers(QList() << 5); - moveCommand->setStartRow(0); - moveCommand->setEndRow(0); - moveCommand->setDestRow(0); - moveCommand->doCommand(); -} - -void tst_QAbstractItemModel::testMoveToGrandParent_data() -{ - QTest::addColumn("startRow"); - QTest::addColumn("endRow"); - QTest::addColumn("destRow"); - - // Move from the start to the middle - QTest::newRow("move01") << 0 << 2 << 8; - // Move from the start to the end - QTest::newRow("move02") << 0 << 2 << 10; - // Move from the middle to the middle - QTest::newRow("move03") << 3 << 5 << 8; - // Move from the middle to the end - QTest::newRow("move04") << 3 << 5 << 10; - - // Move from the middle to the start - QTest::newRow("move05") << 5 << 7 << 0; - // Move from the end to the start - QTest::newRow("move06") << 8 << 9 << 0; - // Move from the middle to the middle - QTest::newRow("move07") << 5 << 7 << 2; - // Move from the end to the middle - QTest::newRow("move08") << 8 << 9 << 5; - - // Moving to the same row in a different parent doesn't confuse things. - QTest::newRow("move09") << 8 << 8 << 8; - - // Moving to the row of my parent and its neighbours doesn't confuse things - QTest::newRow("move09") << 8 << 8 << 4; - QTest::newRow("move10") << 8 << 8 << 5; - QTest::newRow("move11") << 8 << 8 << 6; - - // Moving everything from one parent to another - QTest::newRow("move12") << 0 << 9 << 10; - QTest::newRow("move13") << 0 << 9 << 0; -} - -void tst_QAbstractItemModel::testMoveToGrandParent() -{ - - QFETCH( int, startRow); - QFETCH( int, endRow); - QFETCH( int, destRow); - - QList persistentList; - QModelIndexList indexList; - QModelIndexList parentsList; - - for (int column = 0; column < m_model->columnCount(); ++column) - { - for (int row= 0; row < m_model->rowCount(); ++row) - { - QModelIndex idx = m_model->index(row, column); - QVERIFY(idx.isValid()); - indexList << idx; - parentsList << idx.parent(); - persistentList << QPersistentModelIndex(idx); - } - } - - QModelIndex sourceIndex = m_model->index(5, 0); - for (int column = 0; column < m_model->columnCount(); ++column) - { - for (int row= 0; row < m_model->rowCount(sourceIndex); ++row) - { - QModelIndex idx = m_model->index(row, column, sourceIndex); - QVERIFY(idx.isValid()); - indexList << idx; - parentsList << idx.parent(); - persistentList << QPersistentModelIndex(idx); - } - } - - QSignalSpy beforeSpy(m_model, SIGNAL(rowsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int))); - QSignalSpy afterSpy(m_model, SIGNAL(rowsMoved(const QModelIndex &, int, int, const QModelIndex &, int))); - - QPersistentModelIndex persistentSource = sourceIndex; - - ModelMoveCommand *moveCommand = new ModelMoveCommand(m_model, this); - moveCommand->setAncestorRowNumbers(QList() << 5); - moveCommand->setNumCols(4); - moveCommand->setStartRow(startRow); - moveCommand->setEndRow(endRow); - moveCommand->setDestRow(destRow); - moveCommand->doCommand(); - - QVariantList beforeSignal = beforeSpy.takeAt(0); - QVariantList afterSignal = afterSpy.takeAt(0); - - QCOMPARE(beforeSignal.size(), 5); - QCOMPARE(beforeSignal.at(0).value(), sourceIndex); - QCOMPARE(beforeSignal.at(1).toInt(), startRow); - QCOMPARE(beforeSignal.at(2).toInt(), endRow); - QCOMPARE(beforeSignal.at(3).value(), QModelIndex()); - QCOMPARE(beforeSignal.at(4).toInt(), destRow); - - QCOMPARE(afterSignal.size(), 5); - QCOMPARE(afterSignal.at(0).value(), static_cast(persistentSource)); - QCOMPARE(afterSignal.at(1).toInt(), startRow); - QCOMPARE(afterSignal.at(2).toInt(), endRow); - QCOMPARE(afterSignal.at(3).value(), QModelIndex()); - QCOMPARE(afterSignal.at(4).toInt(), destRow); - - for (int i = 0; i < indexList.size(); i++) - { - QModelIndex idx = indexList.at(i); - QModelIndex idxParent = parentsList.at(i); - QModelIndex persistentIndex = persistentList.at(i); - int row = idx.row(); - if (idxParent == QModelIndex()) - { - if ( row >= destRow) - { - QCOMPARE(row + endRow - startRow + 1, persistentIndex.row() ); - QCOMPARE(idx.column(), persistentIndex.column()); - QCOMPARE(idxParent, persistentIndex.parent()); - QCOMPARE(idx.model(), persistentIndex.model()); - } else - { - QCOMPARE(idx, persistentIndex); - } - } else - { - if (row < startRow) - { - QCOMPARE(idx, persistentIndex); - } else if (row <= endRow) - { - QCOMPARE(row + destRow - startRow, persistentIndex.row() ); - QCOMPARE(idx.column(), persistentIndex.column()); - QCOMPARE(QModelIndex(), persistentIndex.parent()); - QCOMPARE(idx.model(), persistentIndex.model()); - } else { - QCOMPARE(row - (endRow - startRow + 1), persistentIndex.row() ); - QCOMPARE(idx.column(), persistentIndex.column()); - - if (idxParent.row() >= destRow) - { - QModelIndex adjustedParent; - adjustedParent = idxParent.sibling( idxParent.row() + endRow - startRow + 1, idxParent.column()); - QCOMPARE(adjustedParent, persistentIndex.parent()); - } else - { - QCOMPARE(idxParent, persistentIndex.parent()); - } - QCOMPARE(idx.model(), persistentIndex.model()); - } - } - } -} - -void tst_QAbstractItemModel::testMoveToSibling_data() -{ - QTest::addColumn("startRow"); - QTest::addColumn("endRow"); - QTest::addColumn("destRow"); - - // Move from the start to the middle - QTest::newRow("move01") << 0 << 2 << 8; - // Move from the start to the end - QTest::newRow("move02") << 0 << 2 << 10; - // Move from the middle to the middle - QTest::newRow("move03") << 2 << 4 << 8; - // Move from the middle to the end - QTest::newRow("move04") << 2 << 4 << 10; - - // Move from the middle to the start - QTest::newRow("move05") << 8 << 8 << 0; - // Move from the end to the start - QTest::newRow("move06") << 8 << 9 << 0; - // Move from the middle to the middle - QTest::newRow("move07") << 6 << 8 << 2; - // Move from the end to the middle - QTest::newRow("move08") << 8 << 9 << 5; - - // Moving to the same row in a different parent doesn't confuse things. - QTest::newRow("move09") << 8 << 8 << 8; - - // Moving to the row of my target and its neighbours doesn't confuse things - QTest::newRow("move09") << 8 << 8 << 4; - QTest::newRow("move10") << 8 << 8 << 5; - QTest::newRow("move11") << 8 << 8 << 6; - - // Move such that the destination parent no longer valid after the move. - // The destination parent is always QMI(5, 0), but after this move the - // row count is 5, so (5, 0) (used internally in QAIM) no longer refers to a valid index. - QTest::newRow("move12") << 0 << 4 << 0; -} - -void tst_QAbstractItemModel::testMoveToSibling() -{ - - QFETCH( int, startRow); - QFETCH( int, endRow); - QFETCH( int, destRow); - - QList persistentList; - QModelIndexList indexList; - QModelIndexList parentsList; - - const int column = 0; - - for (int i= 0; i < m_model->rowCount(); ++i) - { - QModelIndex idx = m_model->index(i, column); - QVERIFY(idx.isValid()); - indexList << idx; - parentsList << idx.parent(); - persistentList << QPersistentModelIndex(idx); - } - - QModelIndex destIndex = m_model->index(5, 0); - QModelIndex sourceIndex; - for (int i= 0; i < m_model->rowCount(destIndex); ++i) - { - QModelIndex idx = m_model->index(i, column, destIndex); - QVERIFY(idx.isValid()); - indexList << idx; - parentsList << idx.parent(); - persistentList << QPersistentModelIndex(idx); - } - - QSignalSpy beforeSpy(m_model, SIGNAL(rowsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int))); - QSignalSpy afterSpy(m_model, SIGNAL(rowsMoved(const QModelIndex &, int, int, const QModelIndex &, int))); - - QPersistentModelIndex persistentDest = destIndex; - - ModelMoveCommand *moveCommand = new ModelMoveCommand(m_model, this); - moveCommand->setNumCols(4); - moveCommand->setStartRow(startRow); - moveCommand->setEndRow(endRow); - moveCommand->setDestAncestors(QList() << 5); - moveCommand->setDestRow(destRow); - moveCommand->doCommand(); - - QVariantList beforeSignal = beforeSpy.takeAt(0); - QVariantList afterSignal = afterSpy.takeAt(0); - - QCOMPARE(beforeSignal.size(), 5); - QCOMPARE(beforeSignal.at(0).value(), sourceIndex); - QCOMPARE(beforeSignal.at(1).toInt(), startRow); - QCOMPARE(beforeSignal.at(2).toInt(), endRow); - QCOMPARE(beforeSignal.at(3).value(), destIndex); - QCOMPARE(beforeSignal.at(4).toInt(), destRow); - - QCOMPARE(afterSignal.size(), 5); - QCOMPARE(afterSignal.at(0).value(), sourceIndex); - QCOMPARE(afterSignal.at(1).toInt(), startRow); - QCOMPARE(afterSignal.at(2).toInt(), endRow); - QCOMPARE(afterSignal.at(3).value(), static_cast(persistentDest)); - QCOMPARE(afterSignal.at(4).toInt(), destRow); - - for (int i = 0; i < indexList.size(); i++) - { - QModelIndex idx = indexList.at(i); - QModelIndex idxParent = parentsList.at(i); - QModelIndex persistentIndex = persistentList.at(i); - - QModelIndex adjustedDestination = destIndex.sibling(destIndex.row() - (endRow - startRow + 1), destIndex.column()); - int row = idx.row(); - if (idxParent == destIndex) - { - if ( row >= destRow) - { - QCOMPARE(row + endRow - startRow + 1, persistentIndex.row() ); - QCOMPARE(idx.column(), persistentIndex.column()); - if (idxParent.row() > startRow) - { - QCOMPARE(adjustedDestination, persistentIndex.parent()); - } else { - QCOMPARE(destIndex, persistentIndex.parent()); - } - QCOMPARE(idx.model(), persistentIndex.model()); - } else - { - QCOMPARE(idx, persistentIndex); - } - } else - { - if (row < startRow) - { - QCOMPARE(idx, persistentIndex); - } else if (row <= endRow) - { - QCOMPARE(row + destRow - startRow, persistentIndex.row() ); - QCOMPARE(idx.column(), persistentIndex.column()); - if (destIndex.row() > startRow) - { - QCOMPARE(adjustedDestination, persistentIndex.parent()); - } else { - QCOMPARE(destIndex, persistentIndex.parent()); - } - - QCOMPARE(idx.model(), persistentIndex.model()); - - } else { - QCOMPARE(row - (endRow - startRow + 1), persistentIndex.row() ); - QCOMPARE(idx.column(), persistentIndex.column()); - QCOMPARE(idxParent, persistentIndex.parent()); - QCOMPARE(idx.model(), persistentIndex.model()); - } - } - } -} - -void tst_QAbstractItemModel::testMoveToUncle_data() -{ - - QTest::addColumn("startRow"); - QTest::addColumn("endRow"); - QTest::addColumn("destRow"); - - // Move from the start to the middle - QTest::newRow("move01") << 0 << 2 << 8; - // Move from the start to the end - QTest::newRow("move02") << 0 << 2 << 10; - // Move from the middle to the middle - QTest::newRow("move03") << 3 << 5 << 8; - // Move from the middle to the end - QTest::newRow("move04") << 3 << 5 << 10; - - // Move from the middle to the start - QTest::newRow("move05") << 5 << 7 << 0; - // Move from the end to the start - QTest::newRow("move06") << 8 << 9 << 0; - // Move from the middle to the middle - QTest::newRow("move07") << 5 << 7 << 2; - // Move from the end to the middle - QTest::newRow("move08") << 8 << 9 << 5; - - // Moving to the same row in a different parent doesn't confuse things. - QTest::newRow("move09") << 8 << 8 << 8; - - // Moving to the row of my parent and its neighbours doesn't confuse things - QTest::newRow("move09") << 8 << 8 << 4; - QTest::newRow("move10") << 8 << 8 << 5; - QTest::newRow("move11") << 8 << 8 << 6; - - // Moving everything from one parent to another - QTest::newRow("move12") << 0 << 9 << 10; -} - -void tst_QAbstractItemModel::testMoveToUncle() -{ - // Need to have some extra rows available. - ModelInsertCommand *insertCommand = new ModelInsertCommand(m_model, this); - insertCommand->setAncestorRowNumbers(QList() << 9); - insertCommand->setNumCols(4); - insertCommand->setStartRow(0); - insertCommand->setEndRow(9); - insertCommand->doCommand(); - - QFETCH( int, startRow); - QFETCH( int, endRow); - QFETCH( int, destRow); - - QList persistentList; - QModelIndexList indexList; - QModelIndexList parentsList; - - const int column = 0; - - QModelIndex sourceIndex = m_model->index(9, 0); - for (int i= 0; i < m_model->rowCount(sourceIndex); ++i) - { - QModelIndex idx = m_model->index(i, column, sourceIndex); - QVERIFY(idx.isValid()); - indexList << idx; - parentsList << idx.parent(); - persistentList << QPersistentModelIndex(idx); - } - - QModelIndex destIndex = m_model->index(5, 0); - for (int i= 0; i < m_model->rowCount(destIndex); ++i) - { - QModelIndex idx = m_model->index(i, column, destIndex); - QVERIFY(idx.isValid()); - indexList << idx; - parentsList << idx.parent(); - persistentList << QPersistentModelIndex(idx); - } - - QSignalSpy beforeSpy(m_model, SIGNAL(rowsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int))); - QSignalSpy afterSpy(m_model, SIGNAL(rowsMoved(const QModelIndex &, int, int, const QModelIndex &, int))); - - ModelMoveCommand *moveCommand = new ModelMoveCommand(m_model, this); - moveCommand->setAncestorRowNumbers(QList() << 9); - moveCommand->setNumCols(4); - moveCommand->setStartRow(startRow); - moveCommand->setEndRow(endRow); - moveCommand->setDestAncestors(QList() << 5); - moveCommand->setDestRow(destRow); - moveCommand->doCommand(); - - QVariantList beforeSignal = beforeSpy.takeAt(0); - QVariantList afterSignal = afterSpy.takeAt(0); - - QCOMPARE(beforeSignal.size(), 5); - QCOMPARE(beforeSignal.at(0).value(), sourceIndex); - QCOMPARE(beforeSignal.at(1).toInt(), startRow); - QCOMPARE(beforeSignal.at(2).toInt(), endRow); - QCOMPARE(beforeSignal.at(3).value(), destIndex); - QCOMPARE(beforeSignal.at(4).toInt(), destRow); - - QCOMPARE(afterSignal.size(), 5); - QCOMPARE(afterSignal.at(0).value(), sourceIndex); - QCOMPARE(afterSignal.at(1).toInt(), startRow); - QCOMPARE(afterSignal.at(2).toInt(), endRow); - QCOMPARE(afterSignal.at(3).value(), destIndex); - QCOMPARE(afterSignal.at(4).toInt(), destRow); - - for (int i = 0; i < indexList.size(); i++) - { - QModelIndex idx = indexList.at(i); - QModelIndex idxParent = parentsList.at(i); - QModelIndex persistentIndex = persistentList.at(i); - - int row = idx.row(); - if (idxParent == destIndex) - { - if ( row >= destRow) - { - QCOMPARE(row + endRow - startRow + 1, persistentIndex.row() ); - QCOMPARE(idx.column(), persistentIndex.column()); - QCOMPARE(destIndex, persistentIndex.parent()); - QCOMPARE(idx.model(), persistentIndex.model()); - } else - { - QCOMPARE(idx, persistentIndex); - } - } else - { - if (row < startRow) - { - QCOMPARE(idx, persistentIndex); - } else if (row <= endRow) - { - QCOMPARE(row + destRow - startRow, persistentIndex.row() ); - QCOMPARE(idx.column(), persistentIndex.column()); - QCOMPARE(destIndex, persistentIndex.parent()); - QCOMPARE(idx.model(), persistentIndex.model()); - - } else { - QCOMPARE(row - (endRow - startRow + 1), persistentIndex.row() ); - QCOMPARE(idx.column(), persistentIndex.column()); - QCOMPARE(idxParent, persistentIndex.parent()); - QCOMPARE(idx.model(), persistentIndex.model()); - } - } - } -} - -void tst_QAbstractItemModel::testMoveToDescendants() -{ - // Attempt to move a row to its ancestors depth rows deep. - const int depth = 6; - - // Need to have some extra rows available in a tree. - QList rows; - ModelInsertCommand *insertCommand; - for (int i = 0; i < depth; i++) - { - insertCommand = new ModelInsertCommand(m_model, this); - insertCommand->setAncestorRowNumbers(rows); - insertCommand->setNumCols(4); - insertCommand->setStartRow(0); - insertCommand->setEndRow(9); - insertCommand->doCommand(); - rows << 9; - } - - QList persistentList; - QModelIndexList indexList; - QModelIndexList parentsList; - - const int column = 0; - - QModelIndex sourceIndex = m_model->index(9, 0); - for (int i= 0; i < m_model->rowCount(sourceIndex); ++i) - { - QModelIndex idx = m_model->index(i, column, sourceIndex); - QVERIFY(idx.isValid()); - indexList << idx; - parentsList << idx.parent(); - persistentList << QPersistentModelIndex(idx); - } - - QModelIndex destIndex = m_model->index(5, 0); - for (int i= 0; i < m_model->rowCount(destIndex); ++i) - { - QModelIndex idx = m_model->index(i, column, destIndex); - QVERIFY(idx.isValid()); - indexList << idx; - parentsList << idx.parent(); - persistentList << QPersistentModelIndex(idx); - } - - QSignalSpy beforeSpy(m_model, SIGNAL(rowsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int))); - QSignalSpy afterSpy(m_model, SIGNAL(rowsMoved(const QModelIndex &, int, int, const QModelIndex &, int))); - - ModelMoveCommand *moveCommand; - QList ancestors; - while (ancestors.size() < depth) - { - ancestors << 9; - for (int row = 0; row <= 9; row++) - { - moveCommand = new ModelMoveCommand(m_model, this); - moveCommand->setNumCols(4); - moveCommand->setStartRow(9); - moveCommand->setEndRow(9); - moveCommand->setDestAncestors(ancestors); - moveCommand->setDestRow(row); - moveCommand->doCommand(); - - QVERIFY(beforeSpy.size() == 0); - QVERIFY(afterSpy.size() == 0); - } - } -} - -void tst_QAbstractItemModel::testMoveWithinOwnRange_data() -{ - QTest::addColumn("startRow"); - QTest::addColumn("endRow"); - QTest::addColumn("destRow"); - - QTest::newRow("move01") << 0 << 0 << 0; - QTest::newRow("move02") << 0 << 0 << 1; - QTest::newRow("move03") << 0 << 5 << 0; - QTest::newRow("move04") << 0 << 5 << 1; - QTest::newRow("move05") << 0 << 5 << 2; - QTest::newRow("move06") << 0 << 5 << 3; - QTest::newRow("move07") << 0 << 5 << 4; - QTest::newRow("move08") << 0 << 5 << 5; - QTest::newRow("move09") << 0 << 5 << 6; - QTest::newRow("move08") << 3 << 5 << 5; - QTest::newRow("move08") << 3 << 5 << 6; - QTest::newRow("move09") << 4 << 5 << 5; - QTest::newRow("move10") << 4 << 5 << 6; - QTest::newRow("move11") << 5 << 5 << 5; - QTest::newRow("move12") << 5 << 5 << 6; - QTest::newRow("move13") << 5 << 9 << 9; - QTest::newRow("move14") << 5 << 9 << 10; - QTest::newRow("move15") << 6 << 9 << 9; - QTest::newRow("move16") << 6 << 9 << 10; - QTest::newRow("move17") << 7 << 9 << 9; - QTest::newRow("move18") << 7 << 9 << 10; - QTest::newRow("move19") << 8 << 9 << 9; - QTest::newRow("move20") << 8 << 9 << 10; - QTest::newRow("move21") << 9 << 9 << 9; - QTest::newRow("move22") << 0 << 9 << 10; - -} - -void tst_QAbstractItemModel::testMoveWithinOwnRange() -{ - - QFETCH( int, startRow); - QFETCH( int, endRow); - QFETCH( int, destRow); - - - QSignalSpy beforeSpy(m_model, SIGNAL(rowsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int))); - QSignalSpy afterSpy(m_model, SIGNAL(rowsMoved(const QModelIndex &, int, int, const QModelIndex &, int))); - - ModelMoveCommand *moveCommand = new ModelMoveCommand(m_model, this); - moveCommand->setNumCols(4); - moveCommand->setStartRow(startRow); - moveCommand->setEndRow(endRow); - moveCommand->setDestRow(destRow); - moveCommand->doCommand(); - - QVERIFY(beforeSpy.size() == 0); - QVERIFY(afterSpy.size() == 0); - - -} - -class ListenerObject : public QObject -{ - Q_OBJECT -public: - ListenerObject(QAbstractProxyModel *parent); - -protected: - void fillIndexStores(const QModelIndex &parent); - -public slots: - void slotAboutToBeReset(); - void slotReset(); - -private: - QAbstractProxyModel *m_model; - QList m_persistentIndexes; - QModelIndexList m_nonPersistentIndexes; -}; - - -ListenerObject::ListenerObject(QAbstractProxyModel *parent) - : QObject(parent), m_model(parent) -{ - connect(m_model, SIGNAL(modelAboutToBeReset()), SLOT(slotAboutToBeReset())); - connect(m_model, SIGNAL(modelReset()), SLOT(slotReset())); - - fillIndexStores(QModelIndex()); -} - -void ListenerObject::fillIndexStores(const QModelIndex &parent) -{ - const int column = 0; - int row = 0; - QModelIndex idx = m_model->index(row, column, parent); - while (idx.isValid()) - { - m_persistentIndexes << QPersistentModelIndex(idx); - m_nonPersistentIndexes << idx; - if (m_model->hasChildren(idx)) - { - fillIndexStores(idx); - } - ++row; - idx = m_model->index(row, column, parent); - } -} - -void ListenerObject::slotAboutToBeReset() -{ - // Nothing has been changed yet. All indexes should be the same. - for (int i = 0; i < m_persistentIndexes.size(); ++i) - { - QModelIndex idx = m_persistentIndexes.at(i); - QVERIFY(idx == m_nonPersistentIndexes.at(i)); - QVERIFY(m_model->mapToSource(idx).isValid()); - } -} - -void ListenerObject::slotReset() -{ - foreach(const QModelIndex &idx, m_persistentIndexes) - { - QVERIFY(!idx.isValid()); - } -} - - -void tst_QAbstractItemModel::testReset() -{ - QSignalSpy beforeResetSpy(m_model, SIGNAL(modelAboutToBeReset())); - QSignalSpy afterResetSpy(m_model, SIGNAL(modelReset())); - - - QSortFilterProxyModel *nullProxy = new QSortFilterProxyModel(this); - nullProxy->setSourceModel(m_model); - - // Makes sure the model and proxy are in a consistent state. before and after reset. - new ListenerObject(nullProxy); - - ModelResetCommandFixed *resetCommand = new ModelResetCommandFixed(m_model, this); - - resetCommand->setNumCols(4); - resetCommand->setStartRow(0); - resetCommand->setEndRow(0); - resetCommand->setDestRow(0); - resetCommand->setDestAncestors(QList() << 5); - resetCommand->doCommand(); - - // Verify that the correct signals were emitted - QVERIFY(beforeResetSpy.size() == 1); - QVERIFY(afterResetSpy.size() == 1); - - // Verify that the move actually happened. - QVERIFY(m_model->rowCount() == 9); - QModelIndex destIndex = m_model->index(4, 0); - QVERIFY(m_model->rowCount(destIndex) == 11); - -} - -class CustomRoleModel : public QStringListModel -{ - Q_OBJECT - Q_ENUMS(Roles) -public: - enum Roles { - Custom1 = Qt::UserRole + 1, - Custom2, - UserRole - }; - - CustomRoleModel(QObject *parent = 0) - : QStringListModel(QStringList() << "a" << "b" << "c", parent) - { - - } - - void emitSignals() - { - const QModelIndex top = index(0, 0); - const QModelIndex bottom = index(2, 0); - - emit dataChanged(top, bottom); - emit dataChanged(top, bottom, QSet() << Qt::ToolTipRole); - emit dataChanged(top, bottom, QSet() << Qt::ToolTipRole << Custom1); - } -}; - -Q_DECLARE_METATYPE(QSet) - -void tst_QAbstractItemModel::testDataChanged() -{ - qRegisterMetaType >(); - - CustomRoleModel model; - - QSignalSpy withRoles(&model, SIGNAL(dataChanged(QModelIndex,QModelIndex,QSet))); - QSignalSpy withoutRoles(&model, SIGNAL(dataChanged(QModelIndex,QModelIndex))); - - model.emitSignals(); - - QCOMPARE(withRoles.size(), withoutRoles.size()); - QCOMPARE(withRoles.size(), 3); - - const QVariantList secondEmission = withRoles.at(1); - const QVariantList thirdEmission = withRoles.at(2); - - const QSet secondRoles = secondEmission.at(2).value >(); - const QSet thirdRoles = thirdEmission.at(2).value >(); - - QCOMPARE(secondRoles.size(), 1); - QVERIFY(secondRoles.contains(Qt::ToolTipRole)); - - QCOMPARE(thirdRoles.size(), 2); - QVERIFY(thirdRoles.contains(Qt::ToolTipRole)); - QVERIFY(thirdRoles.contains(CustomRoleModel::Custom1)); -} - -Q_DECLARE_METATYPE(QList) - -class SignalArgumentChecker : public QObject -{ - Q_OBJECT -public: - SignalArgumentChecker(const QModelIndex &p1, const QModelIndex &p2, QObject *parent = 0) - : QObject(parent), m_p1(p1), m_p2(p2), m_p1Persistent(p1), m_p2Persistent(p2) - { - connect(p1.model(), SIGNAL(layoutAboutToBeChanged(QList)), SLOT(layoutAboutToBeChanged(QList))); - connect(p1.model(), SIGNAL(layoutChanged(QList)), SLOT(layoutChanged(QList))); - } - -private slots: - void layoutAboutToBeChanged(const QList &parents) - { - QCOMPARE(parents.size(), 2); - QVERIFY(parents.first() != parents.at(1)); - QVERIFY(parents.contains(m_p1)); - QVERIFY(parents.contains(m_p2)); - } - - void layoutChanged(const QList &parents) - { - QCOMPARE(parents.size(), 2); - QVERIFY(parents.first() != parents.at(1)); - QVERIFY(parents.contains(m_p1Persistent)); - QVERIFY(parents.contains(m_p2Persistent)); - QVERIFY(!parents.contains(m_p2)); // Has changed - } - -private: - QModelIndex m_p1; - QModelIndex m_p2; - QPersistentModelIndex m_p1Persistent; - QPersistentModelIndex m_p2Persistent; -}; - -void tst_QAbstractItemModel::testChildrenLayoutsChanged() -{ - DynamicTreeModel model; - - ModelInsertCommand *insertCommand = new ModelInsertCommand(&model, this); - insertCommand->setStartRow(0); - insertCommand->setEndRow(9); - insertCommand->doCommand(); - - insertCommand = new ModelInsertCommand(&model, this); - insertCommand->setAncestorRowNumbers(QList() << 2); - insertCommand->setStartRow(0); - insertCommand->setEndRow(9); - insertCommand->doCommand(); - - insertCommand = new ModelInsertCommand(&model, this); - insertCommand->setAncestorRowNumbers(QList() << 5); - insertCommand->setStartRow(0); - insertCommand->setEndRow(9); - insertCommand->doCommand(); - - qRegisterMetaType >(); - - { - const QModelIndex p1 = model.index(2, 0); - const QModelIndex p2 = model.index(5, 0); - - const QPersistentModelIndex p1FirstPersistent = model.index(0, 0, p1); - const QPersistentModelIndex p1LastPersistent = model.index(9, 0, p1); - const QPersistentModelIndex p2FirstPersistent = model.index(0, 0, p2); - const QPersistentModelIndex p2LastPersistent = model.index(9, 0, p2); - - QVERIFY(p1.isValid()); - QVERIFY(p2.isValid()); - - QCOMPARE(model.rowCount(), 10); - QCOMPARE(model.rowCount(p1), 10); - QCOMPARE(model.rowCount(p2), 10); - - QSignalSpy beforeSpy(&model, SIGNAL(layoutAboutToBeChanged(QList))); - QSignalSpy afterSpy(&model, SIGNAL(layoutChanged(QList))); - - ModelChangeChildrenLayoutsCommand *changeCommand = new ModelChangeChildrenLayoutsCommand(&model, this); - changeCommand->setAncestorRowNumbers(QList() << 2); - changeCommand->setSecondAncestorRowNumbers(QList() << 5); - changeCommand->doCommand(); - - QCOMPARE(beforeSpy.size(), 1); - QCOMPARE(afterSpy.size(), 1); - - const QVariantList beforeSignal = beforeSpy.first(); - const QVariantList afterSignal = afterSpy.first(); - QCOMPARE(beforeSignal.size(), 1); - QCOMPARE(afterSignal.size(), 1); - - const QList beforeParents = beforeSignal.first().value >(); - QCOMPARE(beforeParents.size(), 2); - QVERIFY(beforeParents.first() != beforeParents.at(1)); - QVERIFY(beforeParents.contains(p1)); - QVERIFY(beforeParents.contains(p2)); - - const QList afterParents = afterSignal.first().value >(); - QCOMPARE(afterParents.size(), 2); - QVERIFY(afterParents.first() != afterParents.at(1)); - QVERIFY(afterParents.contains(p1)); - QVERIFY(afterParents.contains(p2)); - - // The first will be the last, and the lest will be the first. - QVERIFY(p1FirstPersistent.row() == 1); - QVERIFY(p1LastPersistent.row() == 0); - QVERIFY(p2FirstPersistent.row() == 9); - QVERIFY(p2LastPersistent.row() == 8); - - } - - insertCommand = new ModelInsertCommand(&model, this); - insertCommand->setAncestorRowNumbers(QList() << 5 << 4); - insertCommand->setStartRow(0); - insertCommand->setEndRow(9); - insertCommand->doCommand(); - - delete insertCommand; - - // Even when p2 itself is moved around, signal emission remains correct for its children. - { - const QModelIndex p1 = model.index(5, 0); - const QModelIndex p2 = model.index(4, 0, p1); - - QVERIFY(p1.isValid()); - QVERIFY(p2.isValid()); - - QCOMPARE(model.rowCount(), 10); - QCOMPARE(model.rowCount(p1), 10); - QCOMPARE(model.rowCount(p2), 10); - - const QPersistentModelIndex p1Persistent = p1; - const QPersistentModelIndex p2Persistent = p2; - - const QPersistentModelIndex p1FirstPersistent = model.index(0, 0, p1); - const QPersistentModelIndex p1LastPersistent = model.index(9, 0, p1); - const QPersistentModelIndex p2FirstPersistent = model.index(0, 0, p2); - const QPersistentModelIndex p2LastPersistent = model.index(9, 0, p2); - - QSignalSpy beforeSpy(&model, SIGNAL(layoutAboutToBeChanged(QList))); - QSignalSpy afterSpy(&model, SIGNAL(layoutChanged(QList))); - - // Because the arguments in the signal are persistent, we need to check them for the aboutToBe - // case at emission time - before they get updated. - SignalArgumentChecker checker(p1, p2); - - ModelChangeChildrenLayoutsCommand *changeCommand = new ModelChangeChildrenLayoutsCommand(&model, this); - changeCommand->setAncestorRowNumbers(QList() << 5); - changeCommand->setSecondAncestorRowNumbers(QList() << 5 << 4); - changeCommand->doCommand(); - - // p2 has been moved. - QCOMPARE(p2Persistent.row(), p2.row() + 1); - - QCOMPARE(beforeSpy.size(), 1); - QCOMPARE(afterSpy.size(), 1); - - const QVariantList beforeSignal = beforeSpy.first(); - const QVariantList afterSignal = afterSpy.first(); - QCOMPARE(beforeSignal.size(), 1); - QCOMPARE(afterSignal.size(), 1); - - QVERIFY(p1FirstPersistent.row() == 1); - QVERIFY(p1LastPersistent.row() == 0); - QVERIFY(p2FirstPersistent.row() == 9); - QVERIFY(p2LastPersistent.row() == 8); - } -} - -QTEST_MAIN(tst_QAbstractItemModel) -#include "tst_qabstractitemmodel.moc" -- cgit v1.2.3 From 3bd3b82a2f6e61bb9f5bcc095ef96b39d8e19b80 Mon Sep 17 00:00:00 2001 From: Michael Brasser Date: Fri, 9 Dec 2011 12:39:53 +1000 Subject: Fix possible jump in animation timer. If both a stop and start happen within an event loop, ensure they are processed in order. Based on a patch from Charles Yin. Task-number: QTBUG-22865 Change-Id: I6131bd43a6ba5ad4fa37c863a9f4598bf2ac0e01 Reviewed-by: Leonardo Sobral Cunha Reviewed-by: Martin Jones --- src/corelib/animation/qabstractanimation.cpp | 64 ++++++++++++++-------- src/corelib/animation/qabstractanimation_p.h | 7 +++ .../qabstractanimation/tst_qabstractanimation.cpp | 46 +++++++++++++++- 3 files changed, 92 insertions(+), 25 deletions(-) diff --git a/src/corelib/animation/qabstractanimation.cpp b/src/corelib/animation/qabstractanimation.cpp index b529359f71..d852fee7f0 100644 --- a/src/corelib/animation/qabstractanimation.cpp +++ b/src/corelib/animation/qabstractanimation.cpp @@ -168,6 +168,7 @@ Q_GLOBAL_STATIC(QThreadStorage, unifiedTimer) QUnifiedTimer::QUnifiedTimer() : QObject(), defaultDriver(this), lastTick(0), timingInterval(DEFAULT_TIMER_INTERVAL), currentAnimationIdx(0), insideTick(false), consistentTiming(false), slowMode(false), + startAnimationPending(false), stopTimerPending(false), slowdownFactor(5.0f), isPauseTimerActive(false), runningLeafAnimations(0), profilerCallback(0) { time.invalidate(); @@ -284,30 +285,41 @@ void QUnifiedTimer::setTimingInterval(int interval) } } +void QUnifiedTimer::startAnimations() +{ + startAnimationPending = false; + //we transfer the waiting animations into the "really running" state + animations += animationsToStart; + animationsToStart.clear(); + if (!animations.isEmpty()) { + restartAnimationTimer(); + if (!time.isValid()) { + lastTick = 0; + time.start(); + } + } +} + +void QUnifiedTimer::stopTimer() +{ + stopTimerPending = false; + if (animations.isEmpty()) { + animationTimer.stop(); + isPauseTimerActive = false; + // invalidate the start reference time + time.invalidate(); + } +} void QUnifiedTimer::timerEvent(QTimerEvent *event) { //in the case of consistent timing we make sure the orders in which events come is always the same - //for that purpose we do as if the startstoptimer would always fire before the animation timer - if ((consistentTiming && startStopAnimationTimer.isActive()) || - event->timerId() == startStopAnimationTimer.timerId()) { - startStopAnimationTimer.stop(); - - //we transfer the waiting animations into the "really running" state - animations += animationsToStart; - animationsToStart.clear(); - if (animations.isEmpty()) { - animationTimer.stop(); - isPauseTimerActive = false; - // invalidate the start reference time - time.invalidate(); - } else { - restartAnimationTimer(); - if (!time.isValid()) { - lastTick = 0; - time.start(); - } - } + //for that purpose we do as if the startstoptimer would always fire before the animation timer + if (consistentTiming) { + if (stopTimerPending) + stopTimer(); + if (startAnimationPending) + startAnimations(); } if (event->timerId() == animationTimer.timerId()) { @@ -325,8 +337,10 @@ void QUnifiedTimer::registerAnimation(QAbstractAnimation *animation, bool isTopL Q_ASSERT(!QAbstractAnimationPrivate::get(animation)->hasRegisteredTimer); QAbstractAnimationPrivate::get(animation)->hasRegisteredTimer = true; inst->animationsToStart << animation; - if (!inst->startStopAnimationTimer.isActive()) - inst->startStopAnimationTimer.start(STARTSTOP_TIMER_DELAY, inst); + if (!inst->startAnimationPending) { + inst->startAnimationPending = true; + QMetaObject::invokeMethod(inst, "startAnimations", Qt::QueuedConnection); + } } } @@ -349,8 +363,10 @@ void QUnifiedTimer::unregisterAnimation(QAbstractAnimation *animation) if (idx <= inst->currentAnimationIdx) --inst->currentAnimationIdx; - if (inst->animations.isEmpty() && !inst->startStopAnimationTimer.isActive()) - inst->startStopAnimationTimer.start(STARTSTOP_TIMER_DELAY, inst); + if (inst->animations.isEmpty() && !inst->stopTimerPending) { + inst->stopTimerPending = true; + QMetaObject::invokeMethod(inst, "stopTimer", Qt::QueuedConnection); + } } else { inst->animationsToStart.removeOne(animation); } diff --git a/src/corelib/animation/qabstractanimation_p.h b/src/corelib/animation/qabstractanimation_p.h index 7e7571bc58..61a68a7032 100644 --- a/src/corelib/animation/qabstractanimation_p.h +++ b/src/corelib/animation/qabstractanimation_p.h @@ -144,6 +144,7 @@ typedef QElapsedTimer ElapsedTimer; class Q_CORE_EXPORT QUnifiedTimer : public QObject { + Q_OBJECT private: QUnifiedTimer(); @@ -194,6 +195,10 @@ public: protected: void timerEvent(QTimerEvent *); +private Q_SLOTS: + void startAnimations(); + void stopTimer(); + private: friend class QDefaultAnimationDriver; friend class QAnimationDriver; @@ -213,6 +218,8 @@ private: bool insideTick; bool consistentTiming; bool slowMode; + bool startAnimationPending; + bool stopTimerPending; // This factor will be used to divide the DEFAULT_TIMER_INTERVAL at each tick // when slowMode is enabled. Setting it to 0 or higher than DEFAULT_TIMER_INTERVAL (16) diff --git a/tests/auto/corelib/animation/qabstractanimation/tst_qabstractanimation.cpp b/tests/auto/corelib/animation/qabstractanimation/tst_qabstractanimation.cpp index 8fd5237606..083324bdd8 100644 --- a/tests/auto/corelib/animation/qabstractanimation/tst_qabstractanimation.cpp +++ b/tests/auto/corelib/animation/qabstractanimation/tst_qabstractanimation.cpp @@ -58,6 +58,8 @@ private slots: void loopCount(); void state(); void totalDuration(); + void avoidJumpAtStart(); + void avoidJumpAtStartWithStop(); }; class TestableQAbstractAnimation : public QAbstractAnimation @@ -65,10 +67,15 @@ class TestableQAbstractAnimation : public QAbstractAnimation Q_OBJECT public: + TestableQAbstractAnimation() : m_duration(10) {} virtual ~TestableQAbstractAnimation() {}; - int duration() const { return 10; } + int duration() const { return m_duration; } virtual void updateCurrentTime(int) {} + + void setDuration(int duration) { m_duration = duration; } +private: + int m_duration; }; class DummyQAnimationGroup : public QAnimationGroup @@ -150,6 +157,43 @@ void tst_QAbstractAnimation::totalDuration() QCOMPARE(anim.totalDuration(), 50); } +void tst_QAbstractAnimation::avoidJumpAtStart() +{ + TestableQAbstractAnimation anim; + anim.setDuration(1000); + + /* + the timer shouldn't actually start until we hit the event loop, + so the sleep should have no effect + */ + anim.start(); + QTest::qSleep(300); + QCoreApplication::processEvents(); + QVERIFY(anim.currentTime() < 50); +} + +void tst_QAbstractAnimation::avoidJumpAtStartWithStop() +{ + TestableQAbstractAnimation anim; + anim.setDuration(1000); + + TestableQAbstractAnimation anim2; + anim2.setDuration(1000); + + anim.start(); + QTest::qWait(300); + anim.stop(); + + /* + same test as avoidJumpAtStart, but after there is a + running animation that is stopped + */ + anim2.start(); + QTest::qSleep(300); + QCoreApplication::processEvents(); + QVERIFY(anim2.currentTime() < 50); +} + QTEST_MAIN(tst_QAbstractAnimation) #include "tst_qabstractanimation.moc" -- cgit v1.2.3 From 08d378d9331c5be75087b1158a50076d12e14ea5 Mon Sep 17 00:00:00 2001 From: Michael Brasser Date: Mon, 12 Dec 2011 14:30:11 +1000 Subject: Cleanup pause timer handling in QUnifiedTimer. The animationTimer is now only used for pauses, so can be renamed to pauseTimer, and directly queried for whether it is active. Change-Id: I3d9319b6ee76158e875ab43657126a0aa0a1cf2e Reviewed-by: Leonardo Sobral Cunha Reviewed-by: Martin Jones --- src/corelib/animation/qabstractanimation.cpp | 21 ++++++++++----------- src/corelib/animation/qabstractanimation_p.h | 5 +---- 2 files changed, 11 insertions(+), 15 deletions(-) diff --git a/src/corelib/animation/qabstractanimation.cpp b/src/corelib/animation/qabstractanimation.cpp index d852fee7f0..1d0715e6d9 100644 --- a/src/corelib/animation/qabstractanimation.cpp +++ b/src/corelib/animation/qabstractanimation.cpp @@ -169,7 +169,7 @@ QUnifiedTimer::QUnifiedTimer() : QObject(), defaultDriver(this), lastTick(0), timingInterval(DEFAULT_TIMER_INTERVAL), currentAnimationIdx(0), insideTick(false), consistentTiming(false), slowMode(false), startAnimationPending(false), stopTimerPending(false), - slowdownFactor(5.0f), isPauseTimerActive(false), runningLeafAnimations(0), profilerCallback(0) + slowdownFactor(5.0f), runningLeafAnimations(0), profilerCallback(0) { time.invalidate(); driver = &defaultDriver; @@ -201,7 +201,7 @@ QUnifiedTimer *QUnifiedTimer::instance() void QUnifiedTimer::ensureTimerUpdate() { QUnifiedTimer *inst = QUnifiedTimer::instance(false); - if (inst && inst->isPauseTimerActive) + if (inst && inst->pauseTimer.isActive()) inst->updateAnimationsTime(-1); } @@ -214,7 +214,7 @@ void QUnifiedTimer::updateAnimationsTime(qint64 timeStep) qint64 totalElapsed = timeStep >= 0 ? timeStep : time.elapsed(); // ignore consistentTiming in case the pause timer is active - int delta = (consistentTiming && !isPauseTimerActive) ? + int delta = (consistentTiming && !pauseTimer.isActive()) ? timingInterval : totalElapsed - lastTick; if (slowMode) { if (slowdownFactor > 0) @@ -265,11 +265,11 @@ void QUnifiedTimer::restartAnimationTimer() qDebug() << closestPauseAnimationTimeToFinish(); } driver->stop(); - animationTimer.start(closestTimeToFinish, this); - isPauseTimerActive = true; - } else if (!driver->isRunning() || isPauseTimerActive) { + pauseTimer.start(closestTimeToFinish, this); + } else if (!driver->isRunning()) { + if (pauseTimer.isActive()) + pauseTimer.stop(); driver->start(); - isPauseTimerActive = false; } else if (runningLeafAnimations == 0) driver->stop(); } @@ -278,7 +278,7 @@ void QUnifiedTimer::setTimingInterval(int interval) { timingInterval = interval; - if (driver->isRunning() && !isPauseTimerActive) { + if (driver->isRunning() && !pauseTimer.isActive()) { //we changed the timing interval driver->stop(); driver->start(); @@ -304,8 +304,7 @@ void QUnifiedTimer::stopTimer() { stopTimerPending = false; if (animations.isEmpty()) { - animationTimer.stop(); - isPauseTimerActive = false; + pauseTimer.stop(); // invalidate the start reference time time.invalidate(); } @@ -322,7 +321,7 @@ void QUnifiedTimer::timerEvent(QTimerEvent *event) startAnimations(); } - if (event->timerId() == animationTimer.timerId()) { + if (event->timerId() == pauseTimer.timerId()) { // update current time on all top level animations updateAnimationsTime(-1); restartAnimationTimer(); diff --git a/src/corelib/animation/qabstractanimation_p.h b/src/corelib/animation/qabstractanimation_p.h index 61a68a7032..e7c1effa9f 100644 --- a/src/corelib/animation/qabstractanimation_p.h +++ b/src/corelib/animation/qabstractanimation_p.h @@ -206,7 +206,7 @@ private: QAnimationDriver *driver; QDefaultAnimationDriver defaultDriver; - QBasicTimer animationTimer; + QBasicTimer pauseTimer; // timer used to delay the check if we should start/stop the animation timer QBasicTimer startStopAnimationTimer; @@ -226,9 +226,6 @@ private: // stops all animations. qreal slowdownFactor; - // bool to indicate that only pause animations are active - bool isPauseTimerActive; - QList animations, animationsToStart; // this is the count of running animations that are not a group neither a pause animation -- cgit v1.2.3 From 30a4d9bc99caae9e7254da18c95b5422e6917688 Mon Sep 17 00:00:00 2001 From: Michael Brasser Date: Mon, 12 Dec 2011 14:40:35 +1000 Subject: Only call profiler callback once per animation tick. Change-Id: I369afdf34ded2c6327ce36cdb80fab51bf89a1b5 Reviewed-by: Christiaan Janssen --- src/corelib/animation/qabstractanimation.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/corelib/animation/qabstractanimation.cpp b/src/corelib/animation/qabstractanimation.cpp index 1d0715e6d9..11113138a7 100644 --- a/src/corelib/animation/qabstractanimation.cpp +++ b/src/corelib/animation/qabstractanimation.cpp @@ -230,14 +230,13 @@ void QUnifiedTimer::updateAnimationsTime(qint64 timeStep) //when the CPU load is high if (delta) { insideTick = true; + if (profilerCallback) + profilerCallback(delta); for (currentAnimationIdx = 0; currentAnimationIdx < animations.count(); ++currentAnimationIdx) { QAbstractAnimation *animation = animations.at(currentAnimationIdx); int elapsed = QAbstractAnimationPrivate::get(animation)->totalCurrentTime + (animation->direction() == QAbstractAnimation::Forward ? delta : -delta); animation->setCurrentTime(elapsed); - - if (profilerCallback) - profilerCallback(delta); } insideTick = false; currentAnimationIdx = 0; -- cgit v1.2.3 From 5d00ae3b698653f3ae83ccb353120cc36a3b3518 Mon Sep 17 00:00:00 2001 From: Michael Brasser Date: Mon, 12 Dec 2011 14:51:15 +1000 Subject: Stop animation driver in the appropriate place. Calling stop from restartAnimationTimer was incorrect (it was initially added as a fix after the introduction of QAnimationDriver, but this is a better location for the fix). Change-Id: I2507096b846ada061e36a9ece6aa814d801ddd53 Reviewed-by: Gunnar Sletta --- src/corelib/animation/qabstractanimation.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/corelib/animation/qabstractanimation.cpp b/src/corelib/animation/qabstractanimation.cpp index 11113138a7..71eb9c9f9c 100644 --- a/src/corelib/animation/qabstractanimation.cpp +++ b/src/corelib/animation/qabstractanimation.cpp @@ -269,8 +269,7 @@ void QUnifiedTimer::restartAnimationTimer() if (pauseTimer.isActive()) pauseTimer.stop(); driver->start(); - } else if (runningLeafAnimations == 0) - driver->stop(); + } } void QUnifiedTimer::setTimingInterval(int interval) @@ -303,6 +302,7 @@ void QUnifiedTimer::stopTimer() { stopTimerPending = false; if (animations.isEmpty()) { + driver->stop(); pauseTimer.stop(); // invalidate the start reference time time.invalidate(); -- cgit v1.2.3 From 9f592dbd60c1242b384464bbaafb6fe04c3166f9 Mon Sep 17 00:00:00 2001 From: Rohan McGovern Date: Tue, 13 Dec 2011 10:20:11 +1000 Subject: testlib: fixed actual, expected order in QTest::compare_helper These two parameters were written in the opposite order in the function's declaration and definition. Harmless to the compiler, but confusing to developers and reviewers. Change-Id: I1d4cb0a41b465b5f918daa76756677fe0cfe0a59 Reviewed-by: Jason McDonald Reviewed-by: Jason McDonald --- src/testlib/qtestcase.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/testlib/qtestcase.h b/src/testlib/qtestcase.h index dffbedab8e..70055a71df 100644 --- a/src/testlib/qtestcase.h +++ b/src/testlib/qtestcase.h @@ -209,7 +209,7 @@ namespace QTest Q_TESTLIB_EXPORT bool compare_helper(bool success, const char *msg, const char *file, int line); Q_TESTLIB_EXPORT bool compare_helper(bool success, const char *msg, char *val1, char *val2, - const char *expected, const char *actual, + const char *actual, const char *expected, const char *file, int line); Q_TESTLIB_EXPORT void qSleep(int ms); Q_TESTLIB_EXPORT void addColumnInternal(int id, const char *name); -- cgit v1.2.3 From d702da7482081f5153170779540326be836008a1 Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Mon, 12 Dec 2011 17:32:48 +1000 Subject: Add missing assertion to QAbstractTestLogger. If passed an empty string, QAbstractTestLogger::outputString() would crash, so add a QTEST_ASSERT to make the cause of any crashes more obvious. Change-Id: I00afe2e73120b87e211f858402d441f345dddd08 Reviewed-by: Rohan McGovern --- src/testlib/qabstracttestlogger.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/testlib/qabstracttestlogger.cpp b/src/testlib/qabstracttestlogger.cpp index 9ac1de9909..7f0c70e975 100644 --- a/src/testlib/qabstracttestlogger.cpp +++ b/src/testlib/qabstracttestlogger.cpp @@ -93,6 +93,7 @@ void QAbstractTestLogger::filterUnprintable(char *str) const void QAbstractTestLogger::outputString(const char *msg) { QTEST_ASSERT(stream); + QTEST_ASSERT(msg); char *filtered = new char[strlen(msg) + 1]; strcpy(filtered, msg); -- cgit v1.2.3 From 3c189d9b743730a0c3b0aefb36b015399e85957d Mon Sep 17 00:00:00 2001 From: Kurt Korbatits Date: Tue, 13 Dec 2011 11:08:41 +1000 Subject: Fix qfile unit test failing on shadow build. Updated three instances were not using QFINDTESTDATA. Change-Id: Ibd0f6734791fc5d98ebeb65ac3bd80aa1c076414 Reviewed-by: Jason McDonald --- tests/auto/corelib/io/qfile/tst_qfile.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tests/auto/corelib/io/qfile/tst_qfile.cpp b/tests/auto/corelib/io/qfile/tst_qfile.cpp index 300f30e133..ac19d9c681 100644 --- a/tests/auto/corelib/io/qfile/tst_qfile.cpp +++ b/tests/auto/corelib/io/qfile/tst_qfile.cpp @@ -832,7 +832,7 @@ void tst_QFile::readAllStdin() QByteArray lotsOfData(1024, '@'); // 10 megs QProcess process; - process.start("stdinprocess/stdinprocess all"); + process.start(QFINDTESTDATA("stdinprocess/stdinprocess")+" all"); QVERIFY( process.waitForStarted() ); for (int i = 0; i < 5; ++i) { QTest::qWait(1000); @@ -867,7 +867,7 @@ void tst_QFile::readLineStdin() for (int i = 0; i < 2; ++i) { QProcess process; - process.start(QString("stdinprocess/stdinprocess line %1").arg(i), QIODevice::Text | QIODevice::ReadWrite); + process.start((QFINDTESTDATA("stdinprocess/stdinprocess")+QString(" line %1").arg(i)), QIODevice::Text | QIODevice::ReadWrite); for (int i = 0; i < 5; ++i) { QTest::qWait(1000); process.write(lotsOfData); @@ -901,7 +901,7 @@ void tst_QFile::readLineStdin_lineByLine() #else for (int i = 0; i < 2; ++i) { QProcess process; - process.start(QString("stdinprocess/stdinprocess line %1").arg(i), QIODevice::Text | QIODevice::ReadWrite); + process.start(QFINDTESTDATA("stdinprocess/stdinprocess")+ QString(" line %1").arg(i), QIODevice::Text | QIODevice::ReadWrite); QVERIFY(process.waitForStarted()); for (int j = 0; j < 3; ++j) { -- cgit v1.2.3 From 1a5f5d0056288a4ebde4deadfe58ff9c59a15751 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Fri, 9 Dec 2011 17:14:52 +0100 Subject: QClipboard-test: Fix test - Use QFINDTESTDATA to locate sub-executables - Remove dependency on QtWidgets, use QGuiApplication everywhere. - Improve error handling when running sub-executables, prevent hangs (Windows) Change-Id: If8e3be82f855c8be6bdbfc9f9728e8490ed181f3 Reviewed-by: Rohan McGovern --- tests/auto/gui/kernel/qclipboard/copier/copier.pro | 1 - tests/auto/gui/kernel/qclipboard/copier/main.cpp | 20 +-- tests/auto/gui/kernel/qclipboard/paster/main.cpp | 19 +-- tests/auto/gui/kernel/qclipboard/paster/paster.pro | 1 - .../auto/gui/kernel/qclipboard/tst_qclipboard.cpp | 153 ++++++++++++++------- 5 files changed, 122 insertions(+), 72 deletions(-) diff --git a/tests/auto/gui/kernel/qclipboard/copier/copier.pro b/tests/auto/gui/kernel/qclipboard/copier/copier.pro index d345d33eb5..1c188ca7de 100644 --- a/tests/auto/gui/kernel/qclipboard/copier/copier.pro +++ b/tests/auto/gui/kernel/qclipboard/copier/copier.pro @@ -3,7 +3,6 @@ TARGET = DEPENDPATH += . INCLUDEPATH += . CONFIG -= app_bundle -QT += widgets win32: DESTDIR = ../copier # Input SOURCES += main.cpp diff --git a/tests/auto/gui/kernel/qclipboard/copier/main.cpp b/tests/auto/gui/kernel/qclipboard/copier/main.cpp index e4417352ff..7cc4ee08d5 100644 --- a/tests/auto/gui/kernel/qclipboard/copier/main.cpp +++ b/tests/auto/gui/kernel/qclipboard/copier/main.cpp @@ -38,17 +38,19 @@ ** $QT_END_LICENSE$ ** ****************************************************************************/ -#include -#include -#include +#include +#include +#include + int main(int argc, char **argv) { - QApplication app(argc, argv); - QClipboard *board = QApplication::clipboard(); -#ifdef Q_OS_WINCE - board->setText(QLatin1String("testString.!")); -#else - board->setText(app.arguments().at(1)); + QGuiApplication app(argc, argv); + QString paste = QStringLiteral("testString.!"); +#ifndef Q_OS_WINCE + const QStringList arguments = app.arguments(); + if (arguments.size() > 1) + paste = arguments.at(1); #endif + QGuiApplication::clipboard()->setText(paste); return 0; } diff --git a/tests/auto/gui/kernel/qclipboard/paster/main.cpp b/tests/auto/gui/kernel/qclipboard/paster/main.cpp index 4df4d7fb45..e4f7864061 100644 --- a/tests/auto/gui/kernel/qclipboard/paster/main.cpp +++ b/tests/auto/gui/kernel/qclipboard/paster/main.cpp @@ -38,17 +38,18 @@ ** $QT_END_LICENSE$ ** ****************************************************************************/ -#include -#include -#include +#include +#include +#include int main(int argc, char **argv) { - QApplication app(argc, argv); - QClipboard *board = QApplication::clipboard(); -#ifdef Q_OS_WINCE - return (board->text() == QLatin1String("testString.!")) ? 0 : 1; -#else - return (board->text() == app.arguments().at(1)) ? 0 : 1; + QGuiApplication app(argc, argv); + QString expected = QStringLiteral("testString.!"); +#ifndef Q_OS_WINCE + const QStringList arguments = app.arguments(); + if (arguments.size() > 1) + expected = arguments.at(1); #endif + return QGuiApplication::clipboard()->text() == expected ? 0 : 1; } diff --git a/tests/auto/gui/kernel/qclipboard/paster/paster.pro b/tests/auto/gui/kernel/qclipboard/paster/paster.pro index d214c9e90a..2f50eefb1e 100644 --- a/tests/auto/gui/kernel/qclipboard/paster/paster.pro +++ b/tests/auto/gui/kernel/qclipboard/paster/paster.pro @@ -4,7 +4,6 @@ DEPENDPATH += . INCLUDEPATH += . win32: DESTDIR = ../paster CONFIG -= app_bundle -QT += widgets # Input SOURCES += main.cpp diff --git a/tests/auto/gui/kernel/qclipboard/tst_qclipboard.cpp b/tests/auto/gui/kernel/qclipboard/tst_qclipboard.cpp index 29fabefc72..e4c415be1c 100644 --- a/tests/auto/gui/kernel/qclipboard/tst_qclipboard.cpp +++ b/tests/auto/gui/kernel/qclipboard/tst_qclipboard.cpp @@ -42,7 +42,9 @@ #include #include -#include +#include +#include +#include #include #ifdef Q_WS_MAC #include @@ -52,8 +54,9 @@ class tst_QClipboard : public QObject { Q_OBJECT private slots: + void init(); void copy_exit_paste(); - void capabiliyFunctions(); + void capabilityFunctions(); void modes(); void testSignals(); void setMimeData(); @@ -63,6 +66,11 @@ private: bool nativeClipboardWorking(); }; +void tst_QClipboard::init() +{ + const QString testdataDir = QFileInfo(QFINDTESTDATA("copier")).absolutePath(); + QVERIFY2(QDir::setCurrent(testdataDir), qPrintable("Could not chdir to " + testdataDir)); +} bool tst_QClipboard::nativeClipboardWorking() { @@ -82,9 +90,9 @@ Q_DECLARE_METATYPE(QClipboard::Mode) Tests that the capability functions are implemented on all platforms. */ -void tst_QClipboard::capabiliyFunctions() +void tst_QClipboard::capabilityFunctions() { - QClipboard * const clipboard = QApplication::clipboard(); + QClipboard * const clipboard = QGuiApplication::clipboard(); clipboard->supportsSelection(); clipboard->supportsFindBuffer(); @@ -99,7 +107,7 @@ void tst_QClipboard::capabiliyFunctions() */ void tst_QClipboard::modes() { - QClipboard * const clipboard = QApplication::clipboard(); + QClipboard * const clipboard = QGuiApplication::clipboard(); if (!nativeClipboardWorking()) QSKIP("Native clipboard not working in this setup"); @@ -124,7 +132,7 @@ void tst_QClipboard::modes() } /* - Test that the appropriate signals are emitted when the cliboard + Test that the appropriate signals are emitted when the clipboard contents is changed by calling the qt functions. */ void tst_QClipboard::testSignals() @@ -134,7 +142,7 @@ void tst_QClipboard::testSignals() if (!nativeClipboardWorking()) QSKIP("Native clipboard not working in this setup"); - QClipboard * const clipboard = QApplication::clipboard(); + QClipboard * const clipboard = QGuiApplication::clipboard(); QSignalSpy changedSpy(clipboard, SIGNAL(changed(QClipboard::Mode))); QSignalSpy dataChangedSpy(clipboard, SIGNAL(dataChanged())); @@ -182,6 +190,44 @@ void tst_QClipboard::testSignals() QCOMPARE(dataChangedSpy.count(), 1); } +static bool runHelper(const QString &program, const QStringList &arguments, QByteArray *errorMessage) +{ + QProcess process; + process.setReadChannelMode(QProcess::ForwardedChannels); + process.start(program, arguments); + if (!process.waitForStarted()) { + *errorMessage = "Unable to start '" + program.toLocal8Bit() + " ': " + + process.errorString().toLocal8Bit(); + return false; + } + + // Windows: Due to implementation changes, the event loop needs + // to be spun since we ourselves also need to answer the + // WM_DRAWCLIPBOARD message as we are in the chain of clipboard + // viewers. + bool running = true; + for (int i = 0; i < 60 && running; ++i) { + QGuiApplication::processEvents(QEventLoop::ExcludeUserInputEvents); + if (process.waitForFinished(500)) + running = false; + } + if (running) { + process.kill(); + *errorMessage = "Timeout running '" + program.toLocal8Bit() + '\''; + return false; + } + if (process.exitStatus() != QProcess::NormalExit) { + *errorMessage = "Process '" + program.toLocal8Bit() + "' crashed."; + return false; + } + if (process.exitCode()) { + *errorMessage = "Process '" + program.toLocal8Bit() + "' returns " + + QByteArray::number(process.exitCode()); + return false; + } + return true; +} + // Test that pasted text remains on the clipboard after a Qt application exits. void tst_QClipboard::copy_exit_paste() { @@ -192,13 +238,16 @@ void tst_QClipboard::copy_exit_paste() #endif if (!nativeClipboardWorking()) QSKIP("Native clipboard not working in this setup"); - const QStringList stringArgument = QStringList() << "Test string."; - QCOMPARE(QProcess::execute("copier/copier", stringArgument), 0); + const QStringList stringArgument(QStringLiteral("Test string.")); + QByteArray errorMessage; + QVERIFY2(runHelper(QStringLiteral("copier/copier"), stringArgument, &errorMessage), + errorMessage.constData()); #ifdef Q_OS_MAC // The Pasteboard needs a moment to breathe (at least on older Macs). QTest::qWait(100); #endif - QCOMPARE(QProcess::execute("paster/paster", stringArgument), 0); + QVERIFY2(runHelper(QStringLiteral("paster/paster"), stringArgument, &errorMessage), + errorMessage.constData()); #endif } @@ -214,33 +263,33 @@ void tst_QClipboard::setMimeData() mimeData->setText(QLatin1String("Qt/CE foo")); #endif - QApplication::clipboard()->setMimeData(mimeData); - QCOMPARE(QApplication::clipboard()->mimeData(), (const QMimeData *)mimeData); - QCOMPARE(QApplication::clipboard()->mimeData()->objectName(), TestName); + QGuiApplication::clipboard()->setMimeData(mimeData); + QCOMPARE(QGuiApplication::clipboard()->mimeData(), (const QMimeData *)mimeData); + QCOMPARE(QGuiApplication::clipboard()->mimeData()->objectName(), TestName); // set it to the same data again, it shouldn't delete mimeData (and crash as a result) - QApplication::clipboard()->setMimeData(mimeData); - QCOMPARE(QApplication::clipboard()->mimeData(), (const QMimeData *)mimeData); - QCOMPARE(QApplication::clipboard()->mimeData()->objectName(), TestName); - QApplication::clipboard()->clear(); - const QMimeData *appMimeData = QApplication::clipboard()->mimeData(); + QGuiApplication::clipboard()->setMimeData(mimeData); + QCOMPARE(QGuiApplication::clipboard()->mimeData(), (const QMimeData *)mimeData); + QCOMPARE(QGuiApplication::clipboard()->mimeData()->objectName(), TestName); + QGuiApplication::clipboard()->clear(); + const QMimeData *appMimeData = QGuiApplication::clipboard()->mimeData(); QVERIFY(appMimeData != mimeData || appMimeData->objectName() != TestName); // check for crash when using the same mimedata object on several clipboards QMimeData *data = new QMimeData; data->setText("foo"); - QApplication::clipboard()->setMimeData(data, QClipboard::Clipboard); - QApplication::clipboard()->setMimeData(data, QClipboard::Selection); - QApplication::clipboard()->setMimeData(data, QClipboard::FindBuffer); + QGuiApplication::clipboard()->setMimeData(data, QClipboard::Clipboard); + QGuiApplication::clipboard()->setMimeData(data, QClipboard::Selection); + QGuiApplication::clipboard()->setMimeData(data, QClipboard::FindBuffer); - QSignalSpy spySelection(QApplication::clipboard(), SIGNAL(selectionChanged())); - QSignalSpy spyData(QApplication::clipboard(), SIGNAL(dataChanged())); - QSignalSpy spyFindBuffer(QApplication::clipboard(), SIGNAL(findBufferChanged())); + QSignalSpy spySelection(QGuiApplication::clipboard(), SIGNAL(selectionChanged())); + QSignalSpy spyData(QGuiApplication::clipboard(), SIGNAL(dataChanged())); + QSignalSpy spyFindBuffer(QGuiApplication::clipboard(), SIGNAL(findBufferChanged())); - QApplication::clipboard()->clear(QClipboard::Clipboard); - QApplication::clipboard()->clear(QClipboard::Selection); // used to crash on X11 - QApplication::clipboard()->clear(QClipboard::FindBuffer); + QGuiApplication::clipboard()->clear(QClipboard::Clipboard); + QGuiApplication::clipboard()->clear(QClipboard::Selection); // used to crash on X11 + QGuiApplication::clipboard()->clear(QClipboard::FindBuffer); #if defined(Q_WS_X11) QCOMPARE(spySelection.count(), 1); @@ -260,9 +309,9 @@ void tst_QClipboard::setMimeData() data = new QMimeData; data->setText("foo"); - QApplication::clipboard()->setMimeData(data, QClipboard::Clipboard); - QApplication::clipboard()->setMimeData(data, QClipboard::Selection); - QApplication::clipboard()->setMimeData(data, QClipboard::FindBuffer); + QGuiApplication::clipboard()->setMimeData(data, QClipboard::Clipboard); + QGuiApplication::clipboard()->setMimeData(data, QClipboard::Selection); + QGuiApplication::clipboard()->setMimeData(data, QClipboard::FindBuffer); QMimeData *newData = new QMimeData; newData->setText("bar"); @@ -271,9 +320,9 @@ void tst_QClipboard::setMimeData() spyData.clear(); spyFindBuffer.clear(); - QApplication::clipboard()->setMimeData(newData, QClipboard::Clipboard); - QApplication::clipboard()->setMimeData(newData, QClipboard::Selection); // used to crash on X11 - QApplication::clipboard()->setMimeData(newData, QClipboard::FindBuffer); + QGuiApplication::clipboard()->setMimeData(newData, QClipboard::Clipboard); + QGuiApplication::clipboard()->setMimeData(newData, QClipboard::Selection); // used to crash on X11 + QGuiApplication::clipboard()->setMimeData(newData, QClipboard::FindBuffer); #if defined(Q_WS_X11) QCOMPARE(spySelection.count(), 1); @@ -292,7 +341,7 @@ void tst_QClipboard::setMimeData() void tst_QClipboard::clearBeforeSetText() { - QApplication::processEvents(); + QGuiApplication::processEvents(); if (!nativeClipboardWorking()) QSKIP("Native clipboard not working in this setup"); @@ -300,30 +349,30 @@ void tst_QClipboard::clearBeforeSetText() const QString text = "tst_QClipboard::clearBeforeSetText()"; // setText() should work after processEvents() - QApplication::clipboard()->setText(text); - QCOMPARE(QApplication::clipboard()->text(), text); - QApplication::processEvents(); - QCOMPARE(QApplication::clipboard()->text(), text); + QGuiApplication::clipboard()->setText(text); + QCOMPARE(QGuiApplication::clipboard()->text(), text); + QGuiApplication::processEvents(); + QCOMPARE(QGuiApplication::clipboard()->text(), text); // same with clear() - QApplication::clipboard()->clear(); - QVERIFY(QApplication::clipboard()->text().isEmpty()); - QApplication::processEvents(); - QVERIFY(QApplication::clipboard()->text().isEmpty()); + QGuiApplication::clipboard()->clear(); + QVERIFY(QGuiApplication::clipboard()->text().isEmpty()); + QGuiApplication::processEvents(); + QVERIFY(QGuiApplication::clipboard()->text().isEmpty()); // setText() again - QApplication::clipboard()->setText(text); - QCOMPARE(QApplication::clipboard()->text(), text); - QApplication::processEvents(); - QCOMPARE(QApplication::clipboard()->text(), text); + QGuiApplication::clipboard()->setText(text); + QCOMPARE(QGuiApplication::clipboard()->text(), text); + QGuiApplication::processEvents(); + QCOMPARE(QGuiApplication::clipboard()->text(), text); // clear() immediately followed by setText() should still return the text - QApplication::clipboard()->clear(); - QVERIFY(QApplication::clipboard()->text().isEmpty()); - QApplication::clipboard()->setText(text); - QCOMPARE(QApplication::clipboard()->text(), text); - QApplication::processEvents(); - QCOMPARE(QApplication::clipboard()->text(), text); + QGuiApplication::clipboard()->clear(); + QVERIFY(QGuiApplication::clipboard()->text().isEmpty()); + QGuiApplication::clipboard()->setText(text); + QCOMPARE(QGuiApplication::clipboard()->text(), text); + QGuiApplication::processEvents(); + QCOMPARE(QGuiApplication::clipboard()->text(), text); } QTEST_MAIN(tst_QClipboard) -- cgit v1.2.3 From 0786716ce57a06b7984b3a6934c64e35115c507e Mon Sep 17 00:00:00 2001 From: Sarah Smith Date: Thu, 17 Nov 2011 15:06:17 +1000 Subject: Fix failing unit tests. The test that was failing was the readFromDevice one - where the extension is not known. Looks as though image detection is required in a positive way, that is it is not enough to say I think I can read this file, and then fail if the format is "corrupt", you must be certain that the file was intended to be that format. In the case of TGA the original format has no magic byte header, and no consistent way to check if it really is a TGA file. With 2.0 the footer was added at the end, so that can be checked for confirming the file is TGA. However rejecting files which do not have this means that old TGA files will not be read. On a quick survey TGA files that have been used in applications so far all seem to be 2.0 TrueVision, so for now, lets just reject earlier files and see how it goes. Also add reading the tga test file to the readFromDevice test. (cherry picked from commit 665bc3951709f0d726cb82501a5bca684f3347a5) Change-Id: I665bc3951709f0d726cb82501a5bca684f3347a5 Reviewed-by: Sarah Jane Smith --- tests/auto/gui/image/qimagereader/tst_qimagereader.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tests/auto/gui/image/qimagereader/tst_qimagereader.cpp b/tests/auto/gui/image/qimagereader/tst_qimagereader.cpp index d0bbc57632..4fa1bedcdc 100644 --- a/tests/auto/gui/image/qimagereader/tst_qimagereader.cpp +++ b/tests/auto/gui/image/qimagereader/tst_qimagereader.cpp @@ -1041,6 +1041,9 @@ void tst_QImageReader::readFromDevice_data() QTest::newRow("svg") << QString("rect.svg") << QByteArray("svg"); QTest::newRow("svgz") << QString("rect.svgz") << QByteArray("svgz"); +#if defined QTEST_HAVE_TGA + QTest::newRow("tga") << QString("test-flag.tga") << QByteArray("tga"); +#endif } void tst_QImageReader::readFromDevice() -- cgit v1.2.3 From abb1c066e5203566c5987d6ba0746c2de1e66eb7 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Mon, 12 Dec 2011 11:16:43 +0100 Subject: QImageReader-test: Make more verbose, use QTemporaryDir. - Add some QVERIFY to check for isNull(). - Use QTemporaryDir to avoid spurious failures in the format extension-ignore test (cannot copy to '/tmp/black.jpg'). Change-Id: Ia57ea4daa6b8686d1111c9c27a47666265fa9781 Reviewed-by: Rohan McGovern --- .../gui/image/qimagereader/tst_qimagereader.cpp | 55 ++++++++++++++++++---- 1 file changed, 46 insertions(+), 9 deletions(-) diff --git a/tests/auto/gui/image/qimagereader/tst_qimagereader.cpp b/tests/auto/gui/image/qimagereader/tst_qimagereader.cpp index 4fa1bedcdc..2ce4d01e8e 100644 --- a/tests/auto/gui/image/qimagereader/tst_qimagereader.cpp +++ b/tests/auto/gui/image/qimagereader/tst_qimagereader.cpp @@ -54,6 +54,7 @@ #include #include #include +#include typedef QMap QStringMap; typedef QList QIntList; @@ -176,6 +177,9 @@ private slots: void preserveTexts_data(); void preserveTexts(); + +private: + QTemporaryDir m_temporaryDir; }; static const QLatin1String prefix(SRCDIR "/images/"); @@ -203,8 +207,10 @@ void tst_QImageReader::getSetCheck() delete var1; } -tst_QImageReader::tst_QImageReader() +tst_QImageReader::tst_QImageReader() : + m_temporaryDir(QStringLiteral("tst_qimagereaderXXXXXX")) { + m_temporaryDir.setAutoRemove(true); } tst_QImageReader::~tst_QImageReader() @@ -214,6 +220,7 @@ tst_QImageReader::~tst_QImageReader() void tst_QImageReader::init() { + QVERIFY(m_temporaryDir.isValid()); } void tst_QImageReader::cleanup() @@ -1046,6 +1053,17 @@ void tst_QImageReader::readFromDevice_data() #endif } +static QByteArray msgReadFromDeviceFail(const QString &sourceFileName, + const QByteArray &detectedFormat) +{ + QByteArray result = "Failure for '"; + result += sourceFileName.toLocal8Bit(); + result += "', detected as: '"; + result += detectedFormat; + result += '\''; + return result; +} + void tst_QImageReader::readFromDevice() { QFETCH(QString, fileName); @@ -1053,9 +1071,9 @@ void tst_QImageReader::readFromDevice() SKIP_IF_UNSUPPORTED(format); - QImage expectedImage(prefix + fileName, format); - - QFile file(prefix + fileName); + const QString imageFileName = prefix + fileName; + QImage expectedImage(imageFileName, format); + QFile file(imageFileName); QVERIFY(file.open(QFile::ReadOnly)); QByteArray imageData = file.readAll(); QVERIFY(!imageData.isEmpty()); @@ -1068,6 +1086,7 @@ void tst_QImageReader::readFromDevice() QVERIFY(reader.canRead()); QImage imageReaderImage = reader.read(); + QVERIFY2(!imageReaderImage.isNull(), msgReadFromDeviceFail(imageFileName, reader.format()).constData()); QCOMPARE(imageReaderImage, expectedImage); buffer.seek(0); @@ -1849,6 +1868,19 @@ void tst_QImageReader::testIgnoresFormatAndExtension_data() QTest::newRow("rect.svgz") << "rect" << "svgz" << "svgz"; } +static QByteArray msgIgnoreFormatAndExtensionFail(const QString &sourceFileName, + const QString &targetFileName, + const QString &detectedFormat) +{ + QByteArray result = "Failure for '"; + result += sourceFileName.toLocal8Bit(); + result += "' as '"; + result += targetFileName; + result += "', detected as: '"; + result += detectedFormat.toLocal8Bit(); + result += '\''; + return result; +} void tst_QImageReader::testIgnoresFormatAndExtension() { @@ -1859,21 +1891,26 @@ void tst_QImageReader::testIgnoresFormatAndExtension() SKIP_IF_UNSUPPORTED(expected.toLatin1()); QList formats = QImageReader::supportedImageFormats(); - QString fileNameBase = prefix + name + "."; + QString fileNameBase = prefix + name + QLatin1Char('.'); + QString tempPath = m_temporaryDir.path(); + if (!tempPath.endsWith(QLatin1Char('/'))) + tempPath += QLatin1Char('/'); foreach (const QByteArray &f, formats) { if (f == extension) continue; - QFile tmp(QDir::tempPath() + "/" + name + "_" + expected + "." + f); - QVERIFY(QFile::copy(fileNameBase + extension, QFileInfo(tmp).absoluteFilePath())); + QFile tmp(tempPath + name + QLatin1Char('_') + expected + QLatin1Char('.') + f); + const QString sourceFileName = fileNameBase + extension; + const QString tempFileName = QFileInfo(tmp).absoluteFilePath(); + QVERIFY(QFile::copy(sourceFileName, tempFileName)); QString format; QImage image; { // image reader needs to be scoped for the remove() to work.. QImageReader r; - r.setFileName(QFileInfo(tmp).absoluteFilePath()); + r.setFileName(tempFileName); r.setDecideFormatFromContent(true); format = r.format(); r.read(&image); @@ -1881,7 +1918,7 @@ void tst_QImageReader::testIgnoresFormatAndExtension() tmp.remove(); - QVERIFY(!image.isNull()); + QVERIFY2(!image.isNull(), msgIgnoreFormatAndExtensionFail(sourceFileName, tempFileName, format).constData()); QCOMPARE(format, expected); } } -- cgit v1.2.3 From 0553ab912746ece4a309d9b5b5cf1fd54630ffc2 Mon Sep 17 00:00:00 2001 From: Bradley Smith Date: Mon, 12 Dec 2011 21:47:03 -0800 Subject: Fix QPA xlib plugin handling of setParent(0). MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Dereference of the parent argument did not check for nullptr. For example, the hellogl example would crash. Now if the parent argument is null, the screen's root window is used. Change-Id: Ib06181c9ab9794d577722f1c1dd5ee92e4edaee5 Reviewed-by: Samuel Rødal --- src/plugins/platforms/xlib/qxlibwindow.cpp | 5 +++-- src/plugins/platforms/xlib/qxlibwindow.h | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/plugins/platforms/xlib/qxlibwindow.cpp b/src/plugins/platforms/xlib/qxlibwindow.cpp index c14fadaaaa..70eb061c13 100644 --- a/src/plugins/platforms/xlib/qxlibwindow.cpp +++ b/src/plugins/platforms/xlib/qxlibwindow.cpp @@ -303,10 +303,11 @@ WId QXlibWindow::winId() const return x_window; } -void QXlibWindow::setParent(const QPlatformWindow *window) +void QXlibWindow::setParent(const QPlatformWindow *parent) { QPoint topLeft = geometry().topLeft(); - XReparentWindow(mScreen->display()->nativeDisplay(),x_window,window->winId(),topLeft.x(),topLeft.y()); + WId parentWinId = parent ? parent->winId() : mScreen->rootWindow(); + XReparentWindow(mScreen->display()->nativeDisplay(),x_window,parentWinId,topLeft.x(),topLeft.y()); } void QXlibWindow::raise() diff --git a/src/plugins/platforms/xlib/qxlibwindow.h b/src/plugins/platforms/xlib/qxlibwindow.h index 9b64dc5624..eb69369150 100644 --- a/src/plugins/platforms/xlib/qxlibwindow.h +++ b/src/plugins/platforms/xlib/qxlibwindow.h @@ -112,7 +112,7 @@ public: void setVisible(bool visible); WId winId() const; - void setParent(const QPlatformWindow *window); + void setParent(const QPlatformWindow *parent); void raise(); void lower(); void setWindowTitle(const QString &title); -- cgit v1.2.3 From d52fd497f60a3c4456994f4f10e9451d611c9ea4 Mon Sep 17 00:00:00 2001 From: Kim Motoyoshi Kalland Date: Mon, 12 Dec 2011 13:02:13 +0100 Subject: Improved performance of large text when parts are outside view. Avoid generating paths for the parts of the text that are outside the viewport in the raster paint engine. Task-number: QTBUG-22687 Change-Id: I06159bc4c1aa82a07606f4b2f0336cb25dfd56d2 Reviewed-by: Eskil Abrahamsen Blomfeldt --- src/gui/painting/qpaintengine_raster.cpp | 87 +++++++++++++++++++++++++++++--- 1 file changed, 81 insertions(+), 6 deletions(-) diff --git a/src/gui/painting/qpaintengine_raster.cpp b/src/gui/painting/qpaintengine_raster.cpp index 89a8f8a032..60ead45eab 100644 --- a/src/gui/painting/qpaintengine_raster.cpp +++ b/src/gui/painting/qpaintengine_raster.cpp @@ -2878,11 +2878,47 @@ QRasterPaintEnginePrivate::getPenFunc(const QRectF &rect, return isUnclipped(rect, penWidth) ? data->unclipped_blend : data->blend; } +static QPair visibleGlyphRange(const QRectF &clip, QFontEngine *fontEngine, + glyph_t *glyphs, QFixedPoint *positions, int numGlyphs) +{ + QFixed clipLeft = QFixed::fromReal(clip.left()); + QFixed clipRight = QFixed::fromReal(clip.right()); + QFixed clipTop = QFixed::fromReal(clip.top()); + QFixed clipBottom = QFixed::fromReal(clip.bottom()); + + int first = 0; + while (first < numGlyphs) { + glyph_metrics_t metrics = fontEngine->boundingBox(glyphs[first]); + QFixed left = metrics.x + positions[first].x; + QFixed top = metrics.y + positions[first].y; + QFixed right = left + metrics.width; + QFixed bottom = top + metrics.height; + if (left < clipRight && right > clipLeft && top < clipBottom && bottom > clipTop) + break; + ++first; + } + int last = numGlyphs - 1; + while (last > first) { + glyph_metrics_t metrics = fontEngine->boundingBox(glyphs[last]); + QFixed left = metrics.x + positions[last].x; + QFixed top = metrics.y + positions[last].y; + QFixed right = left + metrics.width; + QFixed bottom = top + metrics.height; + if (left < clipRight && right > clipLeft && top < clipBottom && bottom > clipTop) + break; + --last; + } + return QPair(first, last + 1); +} + /*! \reimp */ void QRasterPaintEngine::drawStaticTextItem(QStaticTextItem *textItem) { + if (textItem->numGlyphs == 0) + return; + ensurePen(); ensureRasterState(); @@ -2890,6 +2926,20 @@ void QRasterPaintEngine::drawStaticTextItem(QStaticTextItem *textItem) if (shouldDrawCachedGlyphs(fontEngine->fontDef.pixelSize, state()->matrix)) { drawCachedGlyphs(textItem->numGlyphs, textItem->glyphs, textItem->glyphPositions, fontEngine); + } else if (state()->matrix.type() < QTransform::TxProject) { + bool invertible; + QTransform invMat = state()->matrix.inverted(&invertible); + if (!invertible) + return; + + QPair range = visibleGlyphRange(invMat.mapRect(clipBoundingRect()), + textItem->fontEngine(), textItem->glyphs, + textItem->glyphPositions, textItem->numGlyphs); + QStaticTextItem copy = *textItem; + copy.glyphs += range.first; + copy.glyphPositions += range.first; + copy.numGlyphs = range.second - range.first; + QPaintEngineEx::drawStaticTextItem(©); } else { QPaintEngineEx::drawStaticTextItem(textItem); } @@ -2901,7 +2951,6 @@ void QRasterPaintEngine::drawStaticTextItem(QStaticTextItem *textItem) void QRasterPaintEngine::drawTextItem(const QPointF &p, const QTextItem &textItem) { const QTextItemInt &ti = static_cast(textItem); - QRasterPaintEngineState *s = state(); #ifdef QT_DEBUG_DRAW Q_D(QRasterPaintEngine); @@ -2910,25 +2959,51 @@ void QRasterPaintEngine::drawTextItem(const QPointF &p, const QTextItem &textIte d->glyphCacheType); #endif + if (ti.glyphs.numGlyphs == 0) + return; ensurePen(); ensureRasterState(); + QRasterPaintEngineState *s = state(); + QTransform matrix = s->matrix; if (!supportsTransformations(ti.fontEngine)) { QVarLengthArray positions; QVarLengthArray glyphs; - QTransform matrix = s->matrix; matrix.translate(p.x(), p.y()); - ti.fontEngine->getGlyphPositions(ti.glyphs, matrix, ti.flags, glyphs, positions); drawCachedGlyphs(glyphs.size(), glyphs.constData(), positions.constData(), ti.fontEngine); - return; - } + } else if (matrix.type() < QTransform::TxProject) { + bool invertible; + QTransform invMat = matrix.inverted(&invertible); + if (!invertible) + return; + + QVarLengthArray positions; + QVarLengthArray glyphs; + + ti.fontEngine->getGlyphPositions(ti.glyphs, QTransform::fromTranslate(p.x(), p.y()), + ti.flags, glyphs, positions); + QPair range = visibleGlyphRange(invMat.mapRect(clipBoundingRect()), + ti.fontEngine, glyphs.data(), positions.data(), + glyphs.size()); + if (range.first >= range.second) + return; - QPaintEngineEx::drawTextItem(p, ti); + QStaticTextItem staticTextItem; + staticTextItem.color = s->pen.color(); + staticTextItem.font = s->font; + staticTextItem.setFontEngine(ti.fontEngine); + staticTextItem.numGlyphs = range.second - range.first; + staticTextItem.glyphs = glyphs.data() + range.first; + staticTextItem.glyphPositions = positions.data() + range.first; + QPaintEngineEx::drawStaticTextItem(&staticTextItem); + } else { + QPaintEngineEx::drawTextItem(p, ti); + } } /*! -- cgit v1.2.3 From 8757aaaf2f9cba58f23609693eef89c80816433d Mon Sep 17 00:00:00 2001 From: Johannes Zellner Date: Tue, 13 Dec 2011 11:00:56 +0100 Subject: Fix debug output in eglfs with QEGL_EXTRA_DEBUG enabled MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I615a953b52184d01c5b1b78d1cff283f94c458d9 Reviewed-by: Samuel Rødal --- src/plugins/platforms/eglfs/qeglfsbackingstore.cpp | 8 ++++---- src/plugins/platforms/eglfs/qeglfsintegration.cpp | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/plugins/platforms/eglfs/qeglfsbackingstore.cpp b/src/plugins/platforms/eglfs/qeglfsbackingstore.cpp index 1d27be7fb3..bbe5864cc5 100644 --- a/src/plugins/platforms/eglfs/qeglfsbackingstore.cpp +++ b/src/plugins/platforms/eglfs/qeglfsbackingstore.cpp @@ -79,18 +79,18 @@ QEglFSBackingStore::QEglFSBackingStore(QWindow *window) : QPlatformBackingStore(window) { #ifdef QEGL_EXTRA_DEBUG - qWarning("QEglBackingStore %p, %p", window, screen); + qWarning("QEglBackingStore %p, %p", window, window->screen()); #endif m_paintDevice = new QEglFSPaintDevice(static_cast(window->screen()->handle())); } -void QEglFSBackingStore::flush(QWindow *widget, const QRegion ®ion, const QPoint &offset) +void QEglFSBackingStore::flush(QWindow *window, const QRegion ®ion, const QPoint &offset) { - Q_UNUSED(widget); + Q_UNUSED(window); Q_UNUSED(region); Q_UNUSED(offset); #ifdef QEGL_EXTRA_DEBUG - qWarning("QEglBackingStore::flush %p",widget); + qWarning("QEglBackingStore::flush %p", window); #endif static_cast(m_paintDevice)->context()->swapBuffers(); } diff --git a/src/plugins/platforms/eglfs/qeglfsintegration.cpp b/src/plugins/platforms/eglfs/qeglfsintegration.cpp index 57579e8fef..c2717a33d4 100644 --- a/src/plugins/platforms/eglfs/qeglfsintegration.cpp +++ b/src/plugins/platforms/eglfs/qeglfsintegration.cpp @@ -90,7 +90,7 @@ QPlatformWindow *QEglFSIntegration::createPlatformWindow(QWindow *window) const QPlatformBackingStore *QEglFSIntegration::createPlatformBackingStore(QWindow *window) const { #ifdef QEGL_EXTRA_DEBUG - qWarning("QEglIntegration::createWindowSurface %p\n",widget); + qWarning("QEglIntegration::createWindowSurface %p\n", window); #endif return new QEglFSBackingStore(window); } -- cgit v1.2.3 From d308797d0093c686493e616fa2f435f9119a8fbf Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Tue, 13 Dec 2011 10:17:22 +0100 Subject: Finish removing virtual child integers Finish the work started by commit beb72b2fbf17a20b4a9d51d75d79f9c3c69bb357. This silences warnings found by -Woverloaded-virtual. Change-Id: Ic6f5e77e324463ade8349f23f272b41b509d87e4 Reviewed-by: Frederik Gladhorn --- src/plugins/accessible/widgets/complexwidgets.cpp | 2 +- src/plugins/accessible/widgets/complexwidgets.h | 2 +- src/plugins/accessible/widgets/itemviews.cpp | 2 +- src/plugins/accessible/widgets/itemviews.h | 4 ++-- src/plugins/accessible/widgets/qaccessiblewidgets.cpp | 8 ++++---- src/plugins/accessible/widgets/qaccessiblewidgets.h | 8 ++++---- 6 files changed, 13 insertions(+), 13 deletions(-) diff --git a/src/plugins/accessible/widgets/complexwidgets.cpp b/src/plugins/accessible/widgets/complexwidgets.cpp index 1ceeb31b16..91f13676d3 100644 --- a/src/plugins/accessible/widgets/complexwidgets.cpp +++ b/src/plugins/accessible/widgets/complexwidgets.cpp @@ -1775,7 +1775,7 @@ QAccessibleAbstractScrollArea::QAccessibleAbstractScrollArea(QWidget *widget) Q_ASSERT(qobject_cast(widget)); } -QVariant QAccessibleAbstractScrollArea::invokeMethod(QAccessible::Method, int, const QVariantList &) +QVariant QAccessibleAbstractScrollArea::invokeMethod(QAccessible::Method, const QVariantList &) { return QVariant(); } diff --git a/src/plugins/accessible/widgets/complexwidgets.h b/src/plugins/accessible/widgets/complexwidgets.h index 2dde422b12..2e80e24e0f 100644 --- a/src/plugins/accessible/widgets/complexwidgets.h +++ b/src/plugins/accessible/widgets/complexwidgets.h @@ -75,7 +75,7 @@ public: }; QAccessibleInterface *child(int index) const; - QVariant invokeMethod(QAccessible::Method method, int, const QVariantList ¶ms); + QVariant invokeMethod(QAccessible::Method method, const QVariantList ¶ms); int childCount() const; int indexOfChild(const QAccessibleInterface *child) const; bool isValid() const; diff --git a/src/plugins/accessible/widgets/itemviews.cpp b/src/plugins/accessible/widgets/itemviews.cpp index b33260099f..87956b139f 100644 --- a/src/plugins/accessible/widgets/itemviews.cpp +++ b/src/plugins/accessible/widgets/itemviews.cpp @@ -984,7 +984,7 @@ int QAccessibleTableHeaderCell::navigate(QAccessible::RelationFlag relation, int return -1; } -QAccessible::Relation QAccessibleTableHeaderCell::relationTo(int, const QAccessibleInterface *, int) const +QAccessible::Relation QAccessibleTableHeaderCell::relationTo(const QAccessibleInterface *) const { return QAccessible::Unrelated; } diff --git a/src/plugins/accessible/widgets/itemviews.h b/src/plugins/accessible/widgets/itemviews.h index 08e0bbb487..9f95285d16 100644 --- a/src/plugins/accessible/widgets/itemviews.h +++ b/src/plugins/accessible/widgets/itemviews.h @@ -241,7 +241,7 @@ public: QAccessibleInterface *parent() const; QAccessibleInterface *child(int index) const; int navigate(QAccessible::RelationFlag relation, int index, QAccessibleInterface **iface) const; - QAccessible::Relation relationTo(int child, const QAccessibleInterface *other, int otherChild) const; + QAccessible::Relation relationTo(const QAccessibleInterface *other) const; private: QAbstractItemView *view; @@ -289,7 +289,7 @@ public: } return -1; } - QAccessible::Relation relationTo(int, const QAccessibleInterface *, int) const + QAccessible::Relation relationTo(const QAccessibleInterface *) const { return QAccessible::Unrelated; } diff --git a/src/plugins/accessible/widgets/qaccessiblewidgets.cpp b/src/plugins/accessible/widgets/qaccessiblewidgets.cpp index c1cdd7c45d..7387e2ea53 100644 --- a/src/plugins/accessible/widgets/qaccessiblewidgets.cpp +++ b/src/plugins/accessible/widgets/qaccessiblewidgets.cpp @@ -716,7 +716,7 @@ QAccessibleStackedWidget::QAccessibleStackedWidget(QWidget *widget) Q_ASSERT(qobject_cast(widget)); } -QVariant QAccessibleStackedWidget::invokeMethod(QAccessible::Method, int, const QVariantList &) +QVariant QAccessibleStackedWidget::invokeMethod(QAccessible::Method, const QVariantList ¶ms) { return QVariant(); } @@ -1041,7 +1041,7 @@ QAccessibleDialogButtonBox::QAccessibleDialogButtonBox(QWidget *widget) Q_ASSERT(qobject_cast(widget)); } -QVariant QAccessibleDialogButtonBox::invokeMethod(QAccessible::Method, int, const QVariantList &) +QVariant QAccessibleDialogButtonBox::invokeMethod(QAccessible::Method, const QVariantList &) { return QVariant(); } @@ -1068,7 +1068,7 @@ QAccessibleCalendarWidget::QAccessibleCalendarWidget(QWidget *widget) Q_ASSERT(qobject_cast(widget)); } -QVariant QAccessibleCalendarWidget::invokeMethod(QAccessible::Method, int, const QVariantList &) +QVariant QAccessibleCalendarWidget::invokeMethod(QAccessible::Method, const QVariantList &) { return QVariant(); } @@ -1436,7 +1436,7 @@ bool QAccessibleTitleBar::isValid() const QAccessibleMainWindow::QAccessibleMainWindow(QWidget *widget) : QAccessibleWidget(widget, QAccessible::Window) { } -QVariant QAccessibleMainWindow::invokeMethod(QAccessible::Method /*method*/, int /*child*/, const QVariantList & /*params*/) +QVariant QAccessibleMainWindow::invokeMethod(QAccessible::Method /*method*/, const QVariantList & /*params*/) { return QVariant(); } diff --git a/src/plugins/accessible/widgets/qaccessiblewidgets.h b/src/plugins/accessible/widgets/qaccessiblewidgets.h index 232293b32a..e8c2e6ddf5 100644 --- a/src/plugins/accessible/widgets/qaccessiblewidgets.h +++ b/src/plugins/accessible/widgets/qaccessiblewidgets.h @@ -121,7 +121,7 @@ class QAccessibleStackedWidget : public QAccessibleWidget public: explicit QAccessibleStackedWidget(QWidget *widget); - QVariant invokeMethod(QAccessible::Method method, int child, const QVariantList ¶ms); + QVariant invokeMethod(QAccessible::Method method, const QVariantList ¶ms); int childAt(int x, int y) const; int childCount() const; int indexOfChild(const QAccessibleInterface *child) const; @@ -200,7 +200,7 @@ class QAccessibleDialogButtonBox : public QAccessibleWidget public: explicit QAccessibleDialogButtonBox(QWidget *widget); - QVariant invokeMethod(QAccessible::Method method, int child, const QVariantList ¶ms); + QVariant invokeMethod(QAccessible::Method method, const QVariantList ¶ms); }; #ifndef QT_NO_TEXTBROWSER @@ -226,7 +226,7 @@ public: QAccessibleInterface *child(int index) const; - QVariant invokeMethod(QAccessible::Method method, int child, const QVariantList ¶ms); + QVariant invokeMethod(QAccessible::Method method, const QVariantList ¶ms); protected: QCalendarWidget *calendarWidget() const; @@ -290,7 +290,7 @@ public: int childAt(int x, int y) const; QMainWindow *mainWindow() const; - QVariant invokeMethod(QAccessible::Method method, int child, const QVariantList ¶ms); + QVariant invokeMethod(QAccessible::Method method, const QVariantList ¶ms); }; #endif //QT_NO_MAINWINDOW -- cgit v1.2.3 From 7694599ef933b306d54116723adab0d5d8651ff5 Mon Sep 17 00:00:00 2001 From: Debao Zhang Date: Fri, 18 Nov 2011 22:40:47 +0800 Subject: Fix Memory leak related to Content Menu From Qt4.7 on, the contextmenu of QTextEdit/QPlainTextEdit/QLineEdit/QLabel/QMainWindow etc using QMenu::popup() instead of QMenu::exec(), but the setAttribute(Qt::WA_DeleteOnClose) does not work, as QMenu::close() isn't called when the menus disapper. And this causes a memory leak. This is a side effect of b7af368e86874d71ffc9071c9ef009814d6a3467 Task-number: QTBUG-22817 Task-number: QTBUG-19592 Change-Id: I4c2c3edb3f63ce914b7b57cd0fbcec20488c8315 Reviewed-by: Frederik Gladhorn --- src/widgets/widgets/qmenu.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/widgets/widgets/qmenu.cpp b/src/widgets/widgets/qmenu.cpp index b8ba2cdf5d..3bcba686be 100644 --- a/src/widgets/widgets/qmenu.cpp +++ b/src/widgets/widgets/qmenu.cpp @@ -500,7 +500,7 @@ void QMenuPrivate::hideMenu(QMenu *menu, bool justRegister) menu->blockSignals(false); #endif // QT_NO_EFFECTS if (!justRegister) - menu->hide(); + menu->close(); } void QMenuPrivate::popupAction(QAction *action, int delay, bool activateFirst) -- cgit v1.2.3 From 3ed0a233231a94cd8adb2fe8dfa212caece0085b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C4=99drzej=20Nowacki?= Date: Tue, 13 Dec 2011 10:14:23 +0100 Subject: Add specialization for QTypeInfo QTypeInfo uses sizeof which is illegal operation for void type. Change-Id: Idf43551bdfafbb76e32f4f2785af5f4291981e73 Reviewed-by: Thiago Macieira Reviewed-by: Olivier Goffart --- src/corelib/global/qglobal.h | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/corelib/global/qglobal.h b/src/corelib/global/qglobal.h index e22d66628e..76b956cc67 100644 --- a/src/corelib/global/qglobal.h +++ b/src/corelib/global/qglobal.h @@ -2027,6 +2027,19 @@ public: }; }; +template<> +class QTypeInfo +{ +public: + enum { + isPointer = false, + isComplex = false, + isStatic = false, + isLarge = false, + isDummy = false + }; +}; + template class QTypeInfo { -- cgit v1.2.3 From a9ad8886fe25276ea6e81e191392d4c90d207759 Mon Sep 17 00:00:00 2001 From: Michael Brasser Date: Wed, 14 Dec 2011 10:29:34 +1000 Subject: Fix possible jump in animation timer. When starting new animations with existing animations running, ensure we force an update to the timer first, so that the new animations can't mistakenly start with a very large delta. This fixes tst_qdeclarativeanimations::alwaysRunToEndRestartBug failure on slow machines. Change-Id: Ida4e5dcf0ff792e6bfe0d244b6e969d04d0b20fa Reviewed-by: Martin Jones --- src/corelib/animation/qabstractanimation.cpp | 4 +++ .../qabstractanimation/tst_qabstractanimation.cpp | 33 ++++++++++++++++++++++ 2 files changed, 37 insertions(+) diff --git a/src/corelib/animation/qabstractanimation.cpp b/src/corelib/animation/qabstractanimation.cpp index 71eb9c9f9c..a7d428384a 100644 --- a/src/corelib/animation/qabstractanimation.cpp +++ b/src/corelib/animation/qabstractanimation.cpp @@ -286,6 +286,10 @@ void QUnifiedTimer::setTimingInterval(int interval) void QUnifiedTimer::startAnimations() { startAnimationPending = false; + //force timer to update, which prevents large deltas for our newly added animations + if (!animations.isEmpty()) + updateAnimationsTime(-1); + //we transfer the waiting animations into the "really running" state animations += animationsToStart; animationsToStart.clear(); diff --git a/tests/auto/corelib/animation/qabstractanimation/tst_qabstractanimation.cpp b/tests/auto/corelib/animation/qabstractanimation/tst_qabstractanimation.cpp index 083324bdd8..28118aa203 100644 --- a/tests/auto/corelib/animation/qabstractanimation/tst_qabstractanimation.cpp +++ b/tests/auto/corelib/animation/qabstractanimation/tst_qabstractanimation.cpp @@ -60,6 +60,7 @@ private slots: void totalDuration(); void avoidJumpAtStart(); void avoidJumpAtStartWithStop(); + void avoidJumpAtStartWithRunning(); }; class TestableQAbstractAnimation : public QAbstractAnimation @@ -180,6 +181,9 @@ void tst_QAbstractAnimation::avoidJumpAtStartWithStop() TestableQAbstractAnimation anim2; anim2.setDuration(1000); + TestableQAbstractAnimation anim3; + anim3.setDuration(1000); + anim.start(); QTest::qWait(300); anim.stop(); @@ -190,10 +194,39 @@ void tst_QAbstractAnimation::avoidJumpAtStartWithStop() */ anim2.start(); QTest::qSleep(300); + anim3.start(); + QCoreApplication::processEvents(); + QVERIFY(anim2.currentTime() < 50); + QVERIFY(anim3.currentTime() < 50); +} + +void tst_QAbstractAnimation::avoidJumpAtStartWithRunning() +{ + TestableQAbstractAnimation anim; + anim.setDuration(2000); + + TestableQAbstractAnimation anim2; + anim2.setDuration(1000); + + TestableQAbstractAnimation anim3; + anim3.setDuration(1000); + + anim.start(); + QTest::qWait(300); //make sure timer has started + + /* + same test as avoidJumpAtStart, but with an + existing running animation + */ + anim2.start(); + QTest::qSleep(300); //force large delta for next tick + anim3.start(); QCoreApplication::processEvents(); QVERIFY(anim2.currentTime() < 50); + QVERIFY(anim3.currentTime() < 50); } + QTEST_MAIN(tst_QAbstractAnimation) #include "tst_qabstractanimation.moc" -- cgit v1.2.3 From 9bc546e4920af554011adab10e15624f9a012bf8 Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Tue, 13 Dec 2011 17:26:36 +1000 Subject: Add testlib selftest for QStringList comparison. The (disabled) alive selftest contained a test for the QStringList specialization of the QTest::qCompare template. This test is unrelated to the rest of the alive selftest, so move it to the cmptest selftest, where QCOMPARE is tested. Change-Id: Ic6f0e491dd3b3ce8b4ca1d49666a099815575eaa Reviewed-by: Rohan McGovern --- tests/auto/testlib/selftests/alive/tst_alive.cpp | 77 --------------------- .../auto/testlib/selftests/cmptest/tst_cmptest.cpp | 78 +++++++++++++++++++++- tests/auto/testlib/selftests/expected_alive.txt | 22 +----- .../testlib/selftests/expected_cmptest.lightxml | 27 ++++++++ tests/auto/testlib/selftests/expected_cmptest.txt | 22 +++++- tests/auto/testlib/selftests/expected_cmptest.xml | 27 ++++++++ .../testlib/selftests/expected_cmptest.xunitxml | 19 +++++- 7 files changed, 171 insertions(+), 101 deletions(-) diff --git a/tests/auto/testlib/selftests/alive/tst_alive.cpp b/tests/auto/testlib/selftests/alive/tst_alive.cpp index f29aebb176..93cea82c20 100644 --- a/tests/auto/testlib/selftests/alive/tst_alive.cpp +++ b/tests/auto/testlib/selftests/alive/tst_alive.cpp @@ -52,8 +52,6 @@ class tst_Alive: public QObject private slots: void alive(); void addMouseDClick() const; - void compareQStringLists() const; - void compareQStringLists_data() const; }; void tst_Alive::alive() @@ -95,80 +93,5 @@ void tst_Alive::addMouseDClick() const QVERIFY(listener.isTested); } -void tst_Alive::compareQStringLists() const -{ - QFETCH(QStringList, opA); - QFETCH(QStringList, opB); - - QCOMPARE(opA, opB); -} - -void tst_Alive::compareQStringLists_data() const -{ - QTest::addColumn("opA"); - QTest::addColumn("opB"); - - { - QStringList opA; - opA.append(QLatin1String("string1")); - opA.append(QLatin1String("string2")); - - QStringList opB(opA); - opA.append(QLatin1String("string3")); - opB.append(QLatin1String("DIFFERS")); - - QTest::newRow("") << opA << opB; - } - - { - QStringList opA; - opA.append(QLatin1String("string1")); - opA.append(QLatin1String("string2")); - - QStringList opB(opA); - opA.append(QLatin1String("string3")); - opA.append(QLatin1String("string4")); - - opB.append(QLatin1String("DIFFERS")); - opB.append(QLatin1String("string4")); - - QTest::newRow("") << opA << opB; - } - - { - QStringList opA; - opA.append(QLatin1String("string1")); - opA.append(QLatin1String("string2")); - - QStringList opB; - opB.append(QLatin1String("string1")); - - QTest::newRow("") << opA << opB; - } - - { - QStringList opA; - opA.append(QLatin1String("openInNewWindow")); - opA.append(QLatin1String("openInNewTab")); - opA.append(QLatin1String("separator")); - opA.append(QLatin1String("bookmark_add")); - opA.append(QLatin1String("savelinkas")); - opA.append(QLatin1String("copylinklocation")); - opA.append(QLatin1String("separator")); - opA.append(QLatin1String("openWith_submenu")); - opA.append(QLatin1String("preview1")); - opA.append(QLatin1String("actions_submenu")); - opA.append(QLatin1String("separator")); - opA.append(QLatin1String("viewDocumentSource")); - - QStringList opB; - opB.append(QLatin1String("viewDocumentSource")); - - QTest::newRow("") << opA << opB; - - QTest::newRow("") << opB << opA; - } -} - QTEST_MAIN(tst_Alive) #include "tst_alive.moc" diff --git a/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp b/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp index 70396a75b3..924b734e51 100644 --- a/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp +++ b/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp @@ -52,6 +52,8 @@ private slots: void compare_pointerfuncs(); void compare_tostring(); void compare_tostring_data(); + void compareQStringLists(); + void compareQStringLists_data(); }; static bool boolfunc() { return true; } @@ -126,6 +128,80 @@ void tst_Cmptest::compare_tostring() QCOMPARE(actual, expected); } -QTEST_MAIN(tst_Cmptest) +void tst_Cmptest::compareQStringLists_data() +{ + QTest::addColumn("opA"); + QTest::addColumn("opB"); + + { + QStringList opA; + opA.append(QLatin1String("string1")); + opA.append(QLatin1String("string2")); + + QStringList opB(opA); + opA.append(QLatin1String("string3")); + opB.append(QLatin1String("DIFFERS")); + + QTest::newRow("") << opA << opB; + } + + { + QStringList opA; + opA.append(QLatin1String("string1")); + opA.append(QLatin1String("string2")); + + QStringList opB(opA); + opA.append(QLatin1String("string3")); + opA.append(QLatin1String("string4")); + + opB.append(QLatin1String("DIFFERS")); + opB.append(QLatin1String("string4")); + + QTest::newRow("") << opA << opB; + } + + { + QStringList opA; + opA.append(QLatin1String("string1")); + opA.append(QLatin1String("string2")); + + QStringList opB; + opB.append(QLatin1String("string1")); + + QTest::newRow("") << opA << opB; + } + + { + QStringList opA; + opA.append(QLatin1String("openInNewWindow")); + opA.append(QLatin1String("openInNewTab")); + opA.append(QLatin1String("separator")); + opA.append(QLatin1String("bookmark_add")); + opA.append(QLatin1String("savelinkas")); + opA.append(QLatin1String("copylinklocation")); + opA.append(QLatin1String("separator")); + opA.append(QLatin1String("openWith_submenu")); + opA.append(QLatin1String("preview1")); + opA.append(QLatin1String("actions_submenu")); + opA.append(QLatin1String("separator")); + opA.append(QLatin1String("viewDocumentSource")); + + QStringList opB; + opB.append(QLatin1String("viewDocumentSource")); + + QTest::newRow("") << opA << opB; + + QTest::newRow("") << opB << opA; + } +} + +void tst_Cmptest::compareQStringLists() +{ + QFETCH(QStringList, opA); + QFETCH(QStringList, opB); + + QCOMPARE(opA, opB); +} +QTEST_MAIN(tst_Cmptest) #include "tst_cmptest.moc" diff --git a/tests/auto/testlib/selftests/expected_alive.txt b/tests/auto/testlib/selftests/expected_alive.txt index 74d93c5a21..352c878575 100644 --- a/tests/auto/testlib/selftests/expected_alive.txt +++ b/tests/auto/testlib/selftests/expected_alive.txt @@ -8,26 +8,6 @@ QWARN : tst_Alive::alive() TEST LAGS 3 PINGS behind! QWARN : tst_Alive::alive() TEST LAGS 4 PINGS behind! PASS : tst_Alive::alive() PASS : tst_Alive::addMouseDClick() -FAIL! : tst_Alive::compareQStringLists() Compared QStringLists differ at index 2. - Actual (opA) : 'string3' - Expected (opB) : 'DIFFERS' - Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/alive/tst_alive.cpp(68)] -FAIL! : tst_Alive::compareQStringLists() Compared QStringLists differ at index 2. - Actual (opA) : 'string3' - Expected (opB) : 'DIFFERS' - Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/alive/tst_alive.cpp(68)] -FAIL! : tst_Alive::compareQStringLists() Compared QStringLists have different sizes. - Actual (opA) size : '2' - Expected (opB) size: '1' - Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/alive/tst_alive.cpp(68)] -FAIL! : tst_Alive::compareQStringLists() Compared QStringLists have different sizes. - Actual (opA) size : '12' - Expected (opB) size: '1' - Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/alive/tst_alive.cpp(68)] -FAIL! : tst_Alive::compareQStringLists() Compared QStringLists have different sizes. - Actual (opA) size : '1' - Expected (opB) size: '12' - Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/alive/tst_alive.cpp(68)] PASS : tst_Alive::cleanupTestCase() -Totals: 4 passed, 5 failed, 0 skipped +Totals: 4 passed, 0 failed, 0 skipped ********* Finished testing of tst_Alive ********* diff --git a/tests/auto/testlib/selftests/expected_cmptest.lightxml b/tests/auto/testlib/selftests/expected_cmptest.lightxml index 97b0621f9c..7aa4fe1f2f 100644 --- a/tests/auto/testlib/selftests/expected_cmptest.lightxml +++ b/tests/auto/testlib/selftests/expected_cmptest.lightxml @@ -37,6 +37,33 @@ Expected (expected): QVariant(PhonyClass,)]]> + + + + + + + + + + + + + + + + + diff --git a/tests/auto/testlib/selftests/expected_cmptest.txt b/tests/auto/testlib/selftests/expected_cmptest.txt index 30cc201ef1..3e40b3be7a 100644 --- a/tests/auto/testlib/selftests/expected_cmptest.txt +++ b/tests/auto/testlib/selftests/expected_cmptest.txt @@ -19,6 +19,26 @@ FAIL! : tst_Cmptest::compare_tostring(both non-null user type) Compared values Actual (actual): QVariant(PhonyClass,) Expected (expected): QVariant(PhonyClass,) Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(122)] +FAIL! : tst_Cmptest::compareQStringLists() Compared QStringLists differ at index 2. + Actual (opA) : 'string3' + Expected (opB) : 'DIFFERS' + Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/alive/tst_alive.cpp(68)] +FAIL! : tst_Cmptest::compareQStringLists() Compared QStringLists differ at index 2. + Actual (opA) : 'string3' + Expected (opB) : 'DIFFERS' + Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/alive/tst_alive.cpp(68)] +FAIL! : tst_Cmptest::compareQStringLists() Compared QStringLists have different sizes. + Actual (opA) size : '2' + Expected (opB) size: '1' + Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/alive/tst_alive.cpp(68)] +FAIL! : tst_Cmptest::compareQStringLists() Compared QStringLists have different sizes. + Actual (opA) size : '12' + Expected (opB) size: '1' + Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/alive/tst_alive.cpp(68)] +FAIL! : tst_Cmptest::compareQStringLists() Compared QStringLists have different sizes. + Actual (opA) size : '1' + Expected (opB) size: '12' + Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/alive/tst_alive.cpp(68)] PASS : tst_Cmptest::cleanupTestCase() -Totals: 4 passed, 4 failed, 0 skipped +Totals: 4 passed, 9 failed, 0 skipped ********* Finished testing of tst_Cmptest ********* diff --git a/tests/auto/testlib/selftests/expected_cmptest.xml b/tests/auto/testlib/selftests/expected_cmptest.xml index ea05c725fd..1b32389acb 100644 --- a/tests/auto/testlib/selftests/expected_cmptest.xml +++ b/tests/auto/testlib/selftests/expected_cmptest.xml @@ -39,6 +39,33 @@ Expected (expected): QVariant(PhonyClass,)]]> + + + + + + + + + + + + + + + + + diff --git a/tests/auto/testlib/selftests/expected_cmptest.xunitxml b/tests/auto/testlib/selftests/expected_cmptest.xunitxml index 01bfda8d01..8ce2dc92d5 100644 --- a/tests/auto/testlib/selftests/expected_cmptest.xunitxml +++ b/tests/auto/testlib/selftests/expected_cmptest.xunitxml @@ -1,5 +1,5 @@ - + @@ -21,6 +21,23 @@ Actual (actual): QVariant(PhonyClass,<value not representable as string>) Expected (expected): QVariant(PhonyClass,<value not representable as string>)" result="fail"/> + + + + + + + -- cgit v1.2.3 From 4a233f9a9017418d0d95a94b0a1b25c8e338da91 Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Tue, 13 Dec 2011 18:02:46 +1000 Subject: Give names to data rows in cmptest selftest. Change-Id: Ia362f0651c8d32602fa13d6639fb8386fe8d9e0b Reviewed-by: Rohan McGovern --- tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp | 10 +++++----- tests/auto/testlib/selftests/expected_cmptest.lightxml | 5 +++++ tests/auto/testlib/selftests/expected_cmptest.txt | 10 +++++----- tests/auto/testlib/selftests/expected_cmptest.xml | 5 +++++ tests/auto/testlib/selftests/expected_cmptest.xunitxml | 10 +++++----- 5 files changed, 25 insertions(+), 15 deletions(-) diff --git a/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp b/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp index 924b734e51..c2e7f26387 100644 --- a/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp +++ b/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp @@ -142,7 +142,7 @@ void tst_Cmptest::compareQStringLists_data() opA.append(QLatin1String("string3")); opB.append(QLatin1String("DIFFERS")); - QTest::newRow("") << opA << opB; + QTest::newRow("last item different") << opA << opB; } { @@ -157,7 +157,7 @@ void tst_Cmptest::compareQStringLists_data() opB.append(QLatin1String("DIFFERS")); opB.append(QLatin1String("string4")); - QTest::newRow("") << opA << opB; + QTest::newRow("second-last item different") << opA << opB; } { @@ -168,7 +168,7 @@ void tst_Cmptest::compareQStringLists_data() QStringList opB; opB.append(QLatin1String("string1")); - QTest::newRow("") << opA << opB; + QTest::newRow("prefix") << opA << opB; } { @@ -189,9 +189,9 @@ void tst_Cmptest::compareQStringLists_data() QStringList opB; opB.append(QLatin1String("viewDocumentSource")); - QTest::newRow("") << opA << opB; + QTest::newRow("short list second") << opA << opB; - QTest::newRow("") << opB << opA; + QTest::newRow("short list first") << opB << opA; } } diff --git a/tests/auto/testlib/selftests/expected_cmptest.lightxml b/tests/auto/testlib/selftests/expected_cmptest.lightxml index 7aa4fe1f2f..d027dcde11 100644 --- a/tests/auto/testlib/selftests/expected_cmptest.lightxml +++ b/tests/auto/testlib/selftests/expected_cmptest.lightxml @@ -39,26 +39,31 @@ + + + + + diff --git a/tests/auto/testlib/selftests/expected_cmptest.txt b/tests/auto/testlib/selftests/expected_cmptest.txt index 3e40b3be7a..f7dc5cfed3 100644 --- a/tests/auto/testlib/selftests/expected_cmptest.txt +++ b/tests/auto/testlib/selftests/expected_cmptest.txt @@ -19,23 +19,23 @@ FAIL! : tst_Cmptest::compare_tostring(both non-null user type) Compared values Actual (actual): QVariant(PhonyClass,) Expected (expected): QVariant(PhonyClass,) Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(122)] -FAIL! : tst_Cmptest::compareQStringLists() Compared QStringLists differ at index 2. +FAIL! : tst_Cmptest::compareQStringLists(last item different) Compared QStringLists differ at index 2. Actual (opA) : 'string3' Expected (opB) : 'DIFFERS' Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/alive/tst_alive.cpp(68)] -FAIL! : tst_Cmptest::compareQStringLists() Compared QStringLists differ at index 2. +FAIL! : tst_Cmptest::compareQStringLists(second-last item different) Compared QStringLists differ at index 2. Actual (opA) : 'string3' Expected (opB) : 'DIFFERS' Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/alive/tst_alive.cpp(68)] -FAIL! : tst_Cmptest::compareQStringLists() Compared QStringLists have different sizes. +FAIL! : tst_Cmptest::compareQStringLists(prefix) Compared QStringLists have different sizes. Actual (opA) size : '2' Expected (opB) size: '1' Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/alive/tst_alive.cpp(68)] -FAIL! : tst_Cmptest::compareQStringLists() Compared QStringLists have different sizes. +FAIL! : tst_Cmptest::compareQStringLists(short list second) Compared QStringLists have different sizes. Actual (opA) size : '12' Expected (opB) size: '1' Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/alive/tst_alive.cpp(68)] -FAIL! : tst_Cmptest::compareQStringLists() Compared QStringLists have different sizes. +FAIL! : tst_Cmptest::compareQStringLists(short list first) Compared QStringLists have different sizes. Actual (opA) size : '1' Expected (opB) size: '12' Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/alive/tst_alive.cpp(68)] diff --git a/tests/auto/testlib/selftests/expected_cmptest.xml b/tests/auto/testlib/selftests/expected_cmptest.xml index 1b32389acb..7faa3a979d 100644 --- a/tests/auto/testlib/selftests/expected_cmptest.xml +++ b/tests/auto/testlib/selftests/expected_cmptest.xml @@ -41,26 +41,31 @@ + + + + + diff --git a/tests/auto/testlib/selftests/expected_cmptest.xunitxml b/tests/auto/testlib/selftests/expected_cmptest.xunitxml index 8ce2dc92d5..aa765a65e0 100644 --- a/tests/auto/testlib/selftests/expected_cmptest.xunitxml +++ b/tests/auto/testlib/selftests/expected_cmptest.xunitxml @@ -22,19 +22,19 @@ Expected (expected): QVariant(PhonyClass,<value not representable as string>)" result="fail"/> - - - - - -- cgit v1.2.3 From d939dd8791134a41d36196213f463660a1c87421 Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Tue, 13 Dec 2011 18:20:36 +1000 Subject: Improve QStringList test in cmptest selftest. The old test only verified the behaviour of QCOMPARE when comparing lists that were different. Add data rows for comparing empty lists and non-empty lists that are equal. Note that testlib currently does not report passing data rows (only failing rows and completely passing test functions), so the new data rows do not cause any change in the expected test output. Change-Id: I137650ce0ca6250cee36bd9cb74b01f8abd4e89c Reviewed-by: Rohan McGovern --- tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp b/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp index c2e7f26387..6e19d60cbb 100644 --- a/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp +++ b/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp @@ -133,6 +133,25 @@ void tst_Cmptest::compareQStringLists_data() QTest::addColumn("opA"); QTest::addColumn("opB"); + { + QStringList opA; + QStringList opB(opA); + + QTest::newRow("empty lists") << opA << opB; + } + + { + QStringList opA; + opA.append(QLatin1String("string1")); + opA.append(QLatin1String("string2")); + opA.append(QLatin1String("string3")); + opA.append(QLatin1String("string4")); + + QStringList opB(opA); + + QTest::newRow("equal lists") << opA << opB; + } + { QStringList opA; opA.append(QLatin1String("string1")); -- cgit v1.2.3 From ab272fff56be6a7f37d30943c2927ceb32a409f3 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Mon, 12 Dec 2011 16:28:30 +0100 Subject: QObject-test: Reorganize subprocess. On Windows, the signalbug.exe could not be launched since it is not next to tst_qobject.exe, which is in one of the 'release', 'debug' subfolders. Introduce a subdirectory structure similar to that of the QProcess test and use QFINDTESTDATA to locate it. Change-Id: Ie8f2ede8cb76f22a908cb77517a74076be11fbb7 Reviewed-by: Olivier Goffart Reviewed-by: Rohan McGovern --- tests/auto/corelib/kernel/qobject/.gitignore | 4 +- tests/auto/corelib/kernel/qobject/qobject.pro | 2 +- tests/auto/corelib/kernel/qobject/signalbug.cpp | 147 --------------------- tests/auto/corelib/kernel/qobject/signalbug.h | 100 -------------- tests/auto/corelib/kernel/qobject/signalbug.pro | 17 --- .../corelib/kernel/qobject/signalbug/signalbug.cpp | 147 +++++++++++++++++++++ .../corelib/kernel/qobject/signalbug/signalbug.h | 100 ++++++++++++++ .../corelib/kernel/qobject/signalbug/signalbug.pro | 17 +++ tests/auto/corelib/kernel/qobject/tst_qobject.cpp | 11 +- 9 files changed, 277 insertions(+), 268 deletions(-) delete mode 100644 tests/auto/corelib/kernel/qobject/signalbug.cpp delete mode 100644 tests/auto/corelib/kernel/qobject/signalbug.h delete mode 100644 tests/auto/corelib/kernel/qobject/signalbug.pro create mode 100644 tests/auto/corelib/kernel/qobject/signalbug/signalbug.cpp create mode 100644 tests/auto/corelib/kernel/qobject/signalbug/signalbug.h create mode 100644 tests/auto/corelib/kernel/qobject/signalbug/signalbug.pro diff --git a/tests/auto/corelib/kernel/qobject/.gitignore b/tests/auto/corelib/kernel/qobject/.gitignore index ea4d6d7f06..7970e32c8f 100644 --- a/tests/auto/corelib/kernel/qobject/.gitignore +++ b/tests/auto/corelib/kernel/qobject/.gitignore @@ -1,3 +1,3 @@ tst_qobject -signalbug -signalbug.exe +signalbug/signalbug +signalbug/signalbug.exe diff --git a/tests/auto/corelib/kernel/qobject/qobject.pro b/tests/auto/corelib/kernel/qobject/qobject.pro index 113e14a61d..ee48f56b1d 100644 --- a/tests/auto/corelib/kernel/qobject/qobject.pro +++ b/tests/auto/corelib/kernel/qobject/qobject.pro @@ -1,3 +1,3 @@ TEMPLATE = subdirs -SUBDIRS = tst_qobject.pro signalbug.pro +SUBDIRS = signalbug tst_qobject.pro CONFIG += parallel_test diff --git a/tests/auto/corelib/kernel/qobject/signalbug.cpp b/tests/auto/corelib/kernel/qobject/signalbug.cpp deleted file mode 100644 index 0465373e40..0000000000 --- a/tests/auto/corelib/kernel/qobject/signalbug.cpp +++ /dev/null @@ -1,147 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the test suite of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "signalbug.h" - -#include -#include - -#include - -static int Step = 0; -Sender RandomSender (0, 0); - -void TRACE (int step, const char *name) -{ - for (int t = 0; t < step - 1; t++) - fprintf (stderr, "\t"); - fprintf (stderr, "Step %d: %s\n", step, name); - return; -} - -Receiver::Receiver () - : QObject () -{ -} - -void Receiver::received () -{ - ::Step++; - const int stepCopy = ::Step; - TRACE (stepCopy, "Receiver::received()"); - if (::Step != 2 && ::Step != 4) - qFatal("%s: Incorrect Step: %d (should be 2 or 4)", Q_FUNC_INFO, ::Step); - - if (::Step == 2) - s->fire (); - - fprintf (stderr, "Receiver<%s>::received() sender=%s\n", - (const char *) objectName ().toAscii (), sender ()->metaObject()->className()); - - TRACE (stepCopy, "ends Receiver::received()"); -} - -Disconnector::Disconnector () - : QObject () -{ -} - -void Disconnector::received () -{ - ::Step++; - const int stepCopy = ::Step; - TRACE (stepCopy, "Disconnector::received()"); - if (::Step != 5 && ::Step != 6) - qFatal("%s: Incorrect Step: %d (should be 5 or 6)", Q_FUNC_INFO, ::Step); - - fprintf (stderr, "Disconnector<%s>::received() sender=%s\n", - (const char *) objectName ().toAscii (), sender ()->metaObject()->className()); - if (sender () == 0) - fprintf (stderr, "WE SHOULD NOT BE RECEIVING THIS SIGNAL\n"); - - if (::Step == 5) - { - disconnect (s, SIGNAL (fired ()), s->d, SLOT (received ())); - - connect (&RandomSender, SIGNAL (fired ()), s->d, SLOT (received ())); - } - - TRACE (stepCopy, "ends Disconnector::received()"); -} - - -Sender::Sender (Receiver *r, Disconnector *d) - : QObject () -{ - this->r = r; this->d = d; - if (r) - connect (this, SIGNAL (fired ()), r, SLOT (received ())); - if (d) - connect (this, SIGNAL (fired ()), d, SLOT (received ())); -}; - -void Sender::fire () -{ - ::Step++; - const int stepCopy = ::Step; - TRACE (stepCopy, "Sender::fire()"); - if (::Step != 1 && ::Step != 3) - qFatal("%s: Incorrect Step: %d (should be 1 or 3)", Q_FUNC_INFO, ::Step); - - emit fired (); - TRACE (stepCopy, "ends Sender::fire()"); -} - -int main (int argc, char *argv []) -{ - QCoreApplication app (argc, argv); - - Receiver r; - Disconnector d; - Sender s (&r, &d); - - r.s = &s; - d.s = &s; - - ::Step = 0; - s.fire (); - return 0; -} diff --git a/tests/auto/corelib/kernel/qobject/signalbug.h b/tests/auto/corelib/kernel/qobject/signalbug.h deleted file mode 100644 index 4292d70063..0000000000 --- a/tests/auto/corelib/kernel/qobject/signalbug.h +++ /dev/null @@ -1,100 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the test suite of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef SIGNAL_BUG_H -#define SIGNAL_BUG_H - - -#include - - -class Sender; - - -class Receiver : public QObject -{ -Q_OBJECT - -public: - Receiver (); - virtual ~Receiver () {} - -protected slots: - void received (); - -public: - Sender *s; -}; - -class Disconnector : public QObject -{ -Q_OBJECT - -public: - Disconnector (); - virtual ~Disconnector () {} - -protected slots: - void received (); - -public: - Sender *s; -}; - -class Sender : public QObject -{ -Q_OBJECT - -public: - Sender (Receiver *r, Disconnector *d); - virtual ~Sender () {} - - void fire (); - -signals: - void fired (); - -public: - Receiver *r; - Disconnector *d; -}; - -#endif // SIGNAL_BUG_H diff --git a/tests/auto/corelib/kernel/qobject/signalbug.pro b/tests/auto/corelib/kernel/qobject/signalbug.pro deleted file mode 100644 index ed3adf0242..0000000000 --- a/tests/auto/corelib/kernel/qobject/signalbug.pro +++ /dev/null @@ -1,17 +0,0 @@ -TEMPLATE = app -TARGET = -DEPENDPATH += . -INCLUDEPATH += . -CONFIG -= app_bundle debug_and_release -DESTDIR=. -QT -= gui -wince*: { - LIBS += coredll.lib -} -# Input -HEADERS += signalbug.h -SOURCES += signalbug.cpp - -# This app is testdata for tst_qobject -target.path = $$[QT_INSTALL_TESTS]/tst_qobject -INSTALLS += target diff --git a/tests/auto/corelib/kernel/qobject/signalbug/signalbug.cpp b/tests/auto/corelib/kernel/qobject/signalbug/signalbug.cpp new file mode 100644 index 0000000000..0465373e40 --- /dev/null +++ b/tests/auto/corelib/kernel/qobject/signalbug/signalbug.cpp @@ -0,0 +1,147 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include "signalbug.h" + +#include +#include + +#include + +static int Step = 0; +Sender RandomSender (0, 0); + +void TRACE (int step, const char *name) +{ + for (int t = 0; t < step - 1; t++) + fprintf (stderr, "\t"); + fprintf (stderr, "Step %d: %s\n", step, name); + return; +} + +Receiver::Receiver () + : QObject () +{ +} + +void Receiver::received () +{ + ::Step++; + const int stepCopy = ::Step; + TRACE (stepCopy, "Receiver::received()"); + if (::Step != 2 && ::Step != 4) + qFatal("%s: Incorrect Step: %d (should be 2 or 4)", Q_FUNC_INFO, ::Step); + + if (::Step == 2) + s->fire (); + + fprintf (stderr, "Receiver<%s>::received() sender=%s\n", + (const char *) objectName ().toAscii (), sender ()->metaObject()->className()); + + TRACE (stepCopy, "ends Receiver::received()"); +} + +Disconnector::Disconnector () + : QObject () +{ +} + +void Disconnector::received () +{ + ::Step++; + const int stepCopy = ::Step; + TRACE (stepCopy, "Disconnector::received()"); + if (::Step != 5 && ::Step != 6) + qFatal("%s: Incorrect Step: %d (should be 5 or 6)", Q_FUNC_INFO, ::Step); + + fprintf (stderr, "Disconnector<%s>::received() sender=%s\n", + (const char *) objectName ().toAscii (), sender ()->metaObject()->className()); + if (sender () == 0) + fprintf (stderr, "WE SHOULD NOT BE RECEIVING THIS SIGNAL\n"); + + if (::Step == 5) + { + disconnect (s, SIGNAL (fired ()), s->d, SLOT (received ())); + + connect (&RandomSender, SIGNAL (fired ()), s->d, SLOT (received ())); + } + + TRACE (stepCopy, "ends Disconnector::received()"); +} + + +Sender::Sender (Receiver *r, Disconnector *d) + : QObject () +{ + this->r = r; this->d = d; + if (r) + connect (this, SIGNAL (fired ()), r, SLOT (received ())); + if (d) + connect (this, SIGNAL (fired ()), d, SLOT (received ())); +}; + +void Sender::fire () +{ + ::Step++; + const int stepCopy = ::Step; + TRACE (stepCopy, "Sender::fire()"); + if (::Step != 1 && ::Step != 3) + qFatal("%s: Incorrect Step: %d (should be 1 or 3)", Q_FUNC_INFO, ::Step); + + emit fired (); + TRACE (stepCopy, "ends Sender::fire()"); +} + +int main (int argc, char *argv []) +{ + QCoreApplication app (argc, argv); + + Receiver r; + Disconnector d; + Sender s (&r, &d); + + r.s = &s; + d.s = &s; + + ::Step = 0; + s.fire (); + return 0; +} diff --git a/tests/auto/corelib/kernel/qobject/signalbug/signalbug.h b/tests/auto/corelib/kernel/qobject/signalbug/signalbug.h new file mode 100644 index 0000000000..4292d70063 --- /dev/null +++ b/tests/auto/corelib/kernel/qobject/signalbug/signalbug.h @@ -0,0 +1,100 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef SIGNAL_BUG_H +#define SIGNAL_BUG_H + + +#include + + +class Sender; + + +class Receiver : public QObject +{ +Q_OBJECT + +public: + Receiver (); + virtual ~Receiver () {} + +protected slots: + void received (); + +public: + Sender *s; +}; + +class Disconnector : public QObject +{ +Q_OBJECT + +public: + Disconnector (); + virtual ~Disconnector () {} + +protected slots: + void received (); + +public: + Sender *s; +}; + +class Sender : public QObject +{ +Q_OBJECT + +public: + Sender (Receiver *r, Disconnector *d); + virtual ~Sender () {} + + void fire (); + +signals: + void fired (); + +public: + Receiver *r; + Disconnector *d; +}; + +#endif // SIGNAL_BUG_H diff --git a/tests/auto/corelib/kernel/qobject/signalbug/signalbug.pro b/tests/auto/corelib/kernel/qobject/signalbug/signalbug.pro new file mode 100644 index 0000000000..19d36a63a1 --- /dev/null +++ b/tests/auto/corelib/kernel/qobject/signalbug/signalbug.pro @@ -0,0 +1,17 @@ +TEMPLATE = app +DEPENDPATH += . +INCLUDEPATH += . +CONFIG -= app_bundle debug_and_release +CONFIG += console +DESTDIR = ./ +QT -= gui +wince*: { + LIBS += coredll.lib +} +# Input +HEADERS += signalbug.h +SOURCES += signalbug.cpp + +# This app is testdata for tst_qobject +target.path = $$[QT_INSTALL_TESTS]/tst_qobject/$$TARGET +INSTALLS += target diff --git a/tests/auto/corelib/kernel/qobject/tst_qobject.cpp b/tests/auto/corelib/kernel/qobject/tst_qobject.cpp index 8f938a79fe..05b9229c3d 100644 --- a/tests/auto/corelib/kernel/qobject/tst_qobject.cpp +++ b/tests/auto/corelib/kernel/qobject/tst_qobject.cpp @@ -65,6 +65,7 @@ class tst_QObject : public QObject { Q_OBJECT private slots: + void initTestCase(); void disconnect(); void connectByName(); void connectSignalsToSignalsWithDefaultArguments(); @@ -236,6 +237,12 @@ public slots: int ReceiverObject::sequence = 0; +void tst_QObject::initTestCase() +{ + const QString testDataDir = QFileInfo(QFINDTESTDATA("signalbug")).absolutePath(); + QVERIFY2(QDir::setCurrent(testDataDir), qPrintable("Could not chdir to " + testDataDir)); +} + void tst_QObject::disconnect() { SenderObject *s = new SenderObject; @@ -2794,7 +2801,9 @@ void tst_QObject::recursiveSignalEmission() { QProcess proc; // signalbug helper app should always be next to this test binary - proc.start(QCoreApplication::applicationDirPath() + "/signalbug"); + const QString path = QStringLiteral("signalbug/signalbug"); + proc.start(path); + QVERIFY2(proc.waitForStarted(), qPrintable(QString::fromLatin1("Cannot start '%1': %2").arg(path, proc.errorString()))); QVERIFY(proc.waitForFinished()); QVERIFY(proc.exitStatus() == QProcess::NormalExit); QCOMPARE(proc.exitCode(), 0); -- cgit v1.2.3 From 0c9b050f918528eebdeb0819a02842a97263a963 Mon Sep 17 00:00:00 2001 From: Kurt Korbatits Date: Tue, 13 Dec 2011 15:19:39 +1000 Subject: Fix testlib selftests on shadow build. Changed to use QT_INSTALL_TESTS to install subtests. Change-Id: I4a2a7bd2d3e7d6da34dbb922bf377bee98cdedb0 Reviewed-by: Kurt Korbatits Reviewed-by: Jason McDonald --- tests/auto/testlib/selftests/assert/assert.pro | 5 +++++ tests/auto/testlib/selftests/badxml/badxml.pro | 4 ++++ .../auto/testlib/selftests/benchlibcallgrind/benchlibcallgrind.pro | 6 +++++- .../selftests/benchlibeventcounter/benchlibeventcounter.pro | 6 +++++- tests/auto/testlib/selftests/benchliboptions/benchliboptions.pro | 6 +++++- tests/auto/testlib/selftests/cmptest/cmptest.pro | 6 +++++- tests/auto/testlib/selftests/commandlinedata/commandlinedata.pro | 6 +++++- tests/auto/testlib/selftests/crashes/crashes.pro | 6 +++++- tests/auto/testlib/selftests/datatable/datatable.pro | 6 +++++- tests/auto/testlib/selftests/datetime/datetime.pro | 6 +++++- tests/auto/testlib/selftests/differentexec/differentexec.pro | 6 +++++- tests/auto/testlib/selftests/exceptionthrow/exceptionthrow.pro | 6 +++++- tests/auto/testlib/selftests/expectfail/expectfail.pro | 6 +++++- tests/auto/testlib/selftests/failinit/failinit.pro | 6 +++++- tests/auto/testlib/selftests/failinitdata/failinitdata.pro | 6 +++++- tests/auto/testlib/selftests/fetchbogus/fetchbogus.pro | 6 +++++- tests/auto/testlib/selftests/findtestdata/findtestdata.pro | 5 +++++ tests/auto/testlib/selftests/float/float.pro | 5 +++++ tests/auto/testlib/selftests/globaldata/globaldata.pro | 6 +++++- tests/auto/testlib/selftests/longstring/longstring.pro | 5 ++++- tests/auto/testlib/selftests/maxwarnings/maxwarnings.pro | 6 +++++- tests/auto/testlib/selftests/multiexec/multiexec.pro | 6 +++++- tests/auto/testlib/selftests/printdatatags/printdatatags.pro | 5 +++++ .../printdatatagswithglobaltags/printdatatagswithglobaltags.pro | 5 +++++ tests/auto/testlib/selftests/qexecstringlist/qexecstringlist.pro | 6 +++++- tests/auto/testlib/selftests/singleskip/singleskip.pro | 6 +++++- tests/auto/testlib/selftests/skip/skip.pro | 6 +++++- tests/auto/testlib/selftests/skipinit/skipinit.pro | 6 +++++- tests/auto/testlib/selftests/skipinitdata/skipinitdata.pro | 6 +++++- tests/auto/testlib/selftests/sleep/sleep.pro | 6 +++++- tests/auto/testlib/selftests/strcmp/strcmp.pro | 6 +++++- tests/auto/testlib/selftests/subtest/subtest.pro | 6 +++++- tests/auto/testlib/selftests/warnings/warnings.pro | 6 +++++- tests/auto/testlib/selftests/xunit/xunit.pro | 7 ++++++- 34 files changed, 169 insertions(+), 28 deletions(-) diff --git a/tests/auto/testlib/selftests/assert/assert.pro b/tests/auto/testlib/selftests/assert/assert.pro index cfc6a0c6b3..fcde0384e4 100644 --- a/tests/auto/testlib/selftests/assert/assert.pro +++ b/tests/auto/testlib/selftests/assert/assert.pro @@ -5,3 +5,8 @@ mac:CONFIG -= app_bundle CONFIG -= debug_and_release_target TARGET = assert + +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + diff --git a/tests/auto/testlib/selftests/badxml/badxml.pro b/tests/auto/testlib/selftests/badxml/badxml.pro index 561c7e01db..89ae8eeeef 100644 --- a/tests/auto/testlib/selftests/badxml/badxml.pro +++ b/tests/auto/testlib/selftests/badxml/badxml.pro @@ -6,3 +6,7 @@ CONFIG -= debug_and_release_target TARGET = badxml +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + diff --git a/tests/auto/testlib/selftests/benchlibcallgrind/benchlibcallgrind.pro b/tests/auto/testlib/selftests/benchlibcallgrind/benchlibcallgrind.pro index baa996c8d3..58329d6c14 100644 --- a/tests/auto/testlib/selftests/benchlibcallgrind/benchlibcallgrind.pro +++ b/tests/auto/testlib/selftests/benchlibcallgrind/benchlibcallgrind.pro @@ -4,5 +4,9 @@ QT = core testlib mac:CONFIG -= app_bundle CONFIG -= debug_and_release_target - TARGET = benchlibcallgrind + +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + diff --git a/tests/auto/testlib/selftests/benchlibeventcounter/benchlibeventcounter.pro b/tests/auto/testlib/selftests/benchlibeventcounter/benchlibeventcounter.pro index d1fe909fa1..d5363eb54c 100644 --- a/tests/auto/testlib/selftests/benchlibeventcounter/benchlibeventcounter.pro +++ b/tests/auto/testlib/selftests/benchlibeventcounter/benchlibeventcounter.pro @@ -4,5 +4,9 @@ QT = core testlib mac:CONFIG -= app_bundle CONFIG -= debug_and_release_target - TARGET = benchlibeventcounter + +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + diff --git a/tests/auto/testlib/selftests/benchliboptions/benchliboptions.pro b/tests/auto/testlib/selftests/benchliboptions/benchliboptions.pro index 73173b0a08..df1bf2b64c 100644 --- a/tests/auto/testlib/selftests/benchliboptions/benchliboptions.pro +++ b/tests/auto/testlib/selftests/benchliboptions/benchliboptions.pro @@ -4,5 +4,9 @@ QT = core testlib mac:CONFIG -= app_bundle CONFIG -= debug_and_release_target - TARGET = benchliboptions + +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + diff --git a/tests/auto/testlib/selftests/cmptest/cmptest.pro b/tests/auto/testlib/selftests/cmptest/cmptest.pro index ac392b0234..bc72f23696 100644 --- a/tests/auto/testlib/selftests/cmptest/cmptest.pro +++ b/tests/auto/testlib/selftests/cmptest/cmptest.pro @@ -4,5 +4,9 @@ QT = core testlib mac:CONFIG -= app_bundle CONFIG -= debug_and_release_target - TARGET = cmptest + +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + diff --git a/tests/auto/testlib/selftests/commandlinedata/commandlinedata.pro b/tests/auto/testlib/selftests/commandlinedata/commandlinedata.pro index 9dd1212eba..705da2fc2e 100644 --- a/tests/auto/testlib/selftests/commandlinedata/commandlinedata.pro +++ b/tests/auto/testlib/selftests/commandlinedata/commandlinedata.pro @@ -4,5 +4,9 @@ QT = core testlib mac:CONFIG -= app_bundle CONFIG -= debug_and_release_target - TARGET = commandlinedata + +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + diff --git a/tests/auto/testlib/selftests/crashes/crashes.pro b/tests/auto/testlib/selftests/crashes/crashes.pro index e9f0f3e5b7..d9011bae5d 100644 --- a/tests/auto/testlib/selftests/crashes/crashes.pro +++ b/tests/auto/testlib/selftests/crashes/crashes.pro @@ -4,5 +4,9 @@ QT = core testlib mac:CONFIG -= app_bundle CONFIG -= debug_and_release_target - TARGET = crashes + +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + diff --git a/tests/auto/testlib/selftests/datatable/datatable.pro b/tests/auto/testlib/selftests/datatable/datatable.pro index 7c36d4a911..ab01b60627 100644 --- a/tests/auto/testlib/selftests/datatable/datatable.pro +++ b/tests/auto/testlib/selftests/datatable/datatable.pro @@ -4,5 +4,9 @@ QT = core testlib mac:CONFIG -= app_bundle CONFIG -= debug_and_release_target - TARGET = datatable + +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + diff --git a/tests/auto/testlib/selftests/datetime/datetime.pro b/tests/auto/testlib/selftests/datetime/datetime.pro index f73a763d6b..c0efbc2c6e 100644 --- a/tests/auto/testlib/selftests/datetime/datetime.pro +++ b/tests/auto/testlib/selftests/datetime/datetime.pro @@ -4,5 +4,9 @@ QT = core testlib mac:CONFIG -= app_bundle CONFIG -= debug_and_release_target - TARGET = datetime + +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + diff --git a/tests/auto/testlib/selftests/differentexec/differentexec.pro b/tests/auto/testlib/selftests/differentexec/differentexec.pro index 60000d12ea..d3ca2a2064 100644 --- a/tests/auto/testlib/selftests/differentexec/differentexec.pro +++ b/tests/auto/testlib/selftests/differentexec/differentexec.pro @@ -4,5 +4,9 @@ QT = core testlib mac:CONFIG -= app_bundle CONFIG -= debug_and_release_target - TARGET = differentexec + +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + diff --git a/tests/auto/testlib/selftests/exceptionthrow/exceptionthrow.pro b/tests/auto/testlib/selftests/exceptionthrow/exceptionthrow.pro index 4a72181a07..8e1bff4b93 100644 --- a/tests/auto/testlib/selftests/exceptionthrow/exceptionthrow.pro +++ b/tests/auto/testlib/selftests/exceptionthrow/exceptionthrow.pro @@ -4,5 +4,9 @@ QT = core testlib mac:CONFIG -= app_bundle CONFIG -= debug_and_release_target - TARGET = exceptionthrow + +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + diff --git a/tests/auto/testlib/selftests/expectfail/expectfail.pro b/tests/auto/testlib/selftests/expectfail/expectfail.pro index a2916b2830..c08ff868bc 100644 --- a/tests/auto/testlib/selftests/expectfail/expectfail.pro +++ b/tests/auto/testlib/selftests/expectfail/expectfail.pro @@ -4,5 +4,9 @@ QT = core testlib mac:CONFIG -= app_bundle CONFIG -= debug_and_release_target - TARGET = expectfail + +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + diff --git a/tests/auto/testlib/selftests/failinit/failinit.pro b/tests/auto/testlib/selftests/failinit/failinit.pro index 9a781840c6..4b292b5b3b 100644 --- a/tests/auto/testlib/selftests/failinit/failinit.pro +++ b/tests/auto/testlib/selftests/failinit/failinit.pro @@ -4,5 +4,9 @@ QT = core testlib mac:CONFIG -= app_bundle CONFIG -= debug_and_release_target - TARGET = failinit + +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + diff --git a/tests/auto/testlib/selftests/failinitdata/failinitdata.pro b/tests/auto/testlib/selftests/failinitdata/failinitdata.pro index 7b0b15a59b..a3cbed2afc 100644 --- a/tests/auto/testlib/selftests/failinitdata/failinitdata.pro +++ b/tests/auto/testlib/selftests/failinitdata/failinitdata.pro @@ -4,5 +4,9 @@ QT = core testlib mac:CONFIG -= app_bundle CONFIG -= debug_and_release_target - TARGET = failinitdata + +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + diff --git a/tests/auto/testlib/selftests/fetchbogus/fetchbogus.pro b/tests/auto/testlib/selftests/fetchbogus/fetchbogus.pro index 1f8652d533..013eaaf780 100644 --- a/tests/auto/testlib/selftests/fetchbogus/fetchbogus.pro +++ b/tests/auto/testlib/selftests/fetchbogus/fetchbogus.pro @@ -4,5 +4,9 @@ QT = core testlib mac:CONFIG -= app_bundle CONFIG -= debug_and_release_target - TARGET = fetchbogus + +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + diff --git a/tests/auto/testlib/selftests/findtestdata/findtestdata.pro b/tests/auto/testlib/selftests/findtestdata/findtestdata.pro index f04a640c59..ff349987ba 100644 --- a/tests/auto/testlib/selftests/findtestdata/findtestdata.pro +++ b/tests/auto/testlib/selftests/findtestdata/findtestdata.pro @@ -7,3 +7,8 @@ CONFIG -= debug_and_release_target RESOURCES = findtestdata.qrc TARGET = findtestdata + +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + diff --git a/tests/auto/testlib/selftests/float/float.pro b/tests/auto/testlib/selftests/float/float.pro index 95980eeac8..5b4376e760 100644 --- a/tests/auto/testlib/selftests/float/float.pro +++ b/tests/auto/testlib/selftests/float/float.pro @@ -5,3 +5,8 @@ mac:CONFIG -= app_bundle CONFIG -= debug_and_release_target TARGET = float + +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + diff --git a/tests/auto/testlib/selftests/globaldata/globaldata.pro b/tests/auto/testlib/selftests/globaldata/globaldata.pro index 3d49d3515b..240dd51b96 100644 --- a/tests/auto/testlib/selftests/globaldata/globaldata.pro +++ b/tests/auto/testlib/selftests/globaldata/globaldata.pro @@ -4,5 +4,9 @@ QT = core testlib mac:CONFIG -= app_bundle CONFIG -= debug_and_release_target - TARGET = globaldata + +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + diff --git a/tests/auto/testlib/selftests/longstring/longstring.pro b/tests/auto/testlib/selftests/longstring/longstring.pro index 9b393e9cc7..0b311bd019 100644 --- a/tests/auto/testlib/selftests/longstring/longstring.pro +++ b/tests/auto/testlib/selftests/longstring/longstring.pro @@ -4,6 +4,9 @@ QT = core testlib mac:CONFIG -= app_bundle CONFIG -= debug_and_release_target - TARGET = longstring +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + diff --git a/tests/auto/testlib/selftests/maxwarnings/maxwarnings.pro b/tests/auto/testlib/selftests/maxwarnings/maxwarnings.pro index 9ebdde5015..e93d1610af 100644 --- a/tests/auto/testlib/selftests/maxwarnings/maxwarnings.pro +++ b/tests/auto/testlib/selftests/maxwarnings/maxwarnings.pro @@ -4,5 +4,9 @@ QT = core testlib mac:CONFIG -= app_bundle CONFIG -= debug_and_release_target - TARGET = maxwarnings + +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + diff --git a/tests/auto/testlib/selftests/multiexec/multiexec.pro b/tests/auto/testlib/selftests/multiexec/multiexec.pro index 79ae010bcb..8886531417 100644 --- a/tests/auto/testlib/selftests/multiexec/multiexec.pro +++ b/tests/auto/testlib/selftests/multiexec/multiexec.pro @@ -4,5 +4,9 @@ QT = core testlib mac:CONFIG -= app_bundle CONFIG -= debug_and_release_target - TARGET = multiexec + +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + diff --git a/tests/auto/testlib/selftests/printdatatags/printdatatags.pro b/tests/auto/testlib/selftests/printdatatags/printdatatags.pro index cd06384835..80acde22dd 100644 --- a/tests/auto/testlib/selftests/printdatatags/printdatatags.pro +++ b/tests/auto/testlib/selftests/printdatatags/printdatatags.pro @@ -5,3 +5,8 @@ mac:CONFIG -= app_bundle CONFIG -= debug_and_release_target TARGET = printdatatags + +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + diff --git a/tests/auto/testlib/selftests/printdatatagswithglobaltags/printdatatagswithglobaltags.pro b/tests/auto/testlib/selftests/printdatatagswithglobaltags/printdatatagswithglobaltags.pro index f1cf25d104..86cfa0974d 100644 --- a/tests/auto/testlib/selftests/printdatatagswithglobaltags/printdatatagswithglobaltags.pro +++ b/tests/auto/testlib/selftests/printdatatagswithglobaltags/printdatatagswithglobaltags.pro @@ -5,3 +5,8 @@ mac:CONFIG -= app_bundle CONFIG -= debug_and_release_target TARGET = printdatatagswithglobaltags + +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + diff --git a/tests/auto/testlib/selftests/qexecstringlist/qexecstringlist.pro b/tests/auto/testlib/selftests/qexecstringlist/qexecstringlist.pro index de8a7da37e..15fd236aa5 100644 --- a/tests/auto/testlib/selftests/qexecstringlist/qexecstringlist.pro +++ b/tests/auto/testlib/selftests/qexecstringlist/qexecstringlist.pro @@ -4,5 +4,9 @@ QT = core testlib mac:CONFIG -= app_bundle CONFIG -= debug_and_release_target - TARGET = qexecstringlist + +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + diff --git a/tests/auto/testlib/selftests/singleskip/singleskip.pro b/tests/auto/testlib/selftests/singleskip/singleskip.pro index f4bde92d62..f0f51a5fc3 100644 --- a/tests/auto/testlib/selftests/singleskip/singleskip.pro +++ b/tests/auto/testlib/selftests/singleskip/singleskip.pro @@ -4,5 +4,9 @@ QT = core testlib mac:CONFIG -= app_bundle CONFIG -= debug_and_release_target - TARGET = singleskip + +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + diff --git a/tests/auto/testlib/selftests/skip/skip.pro b/tests/auto/testlib/selftests/skip/skip.pro index 82576212ad..65b41b9c3d 100644 --- a/tests/auto/testlib/selftests/skip/skip.pro +++ b/tests/auto/testlib/selftests/skip/skip.pro @@ -4,5 +4,9 @@ QT = core testlib mac:CONFIG -= app_bundle CONFIG -= debug_and_release_target - TARGET = skip + +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + diff --git a/tests/auto/testlib/selftests/skipinit/skipinit.pro b/tests/auto/testlib/selftests/skipinit/skipinit.pro index 848252eabd..acd6a41049 100644 --- a/tests/auto/testlib/selftests/skipinit/skipinit.pro +++ b/tests/auto/testlib/selftests/skipinit/skipinit.pro @@ -4,5 +4,9 @@ QT = core testlib mac:CONFIG -= app_bundle CONFIG -= debug_and_release_target - TARGET = skipinit + +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + diff --git a/tests/auto/testlib/selftests/skipinitdata/skipinitdata.pro b/tests/auto/testlib/selftests/skipinitdata/skipinitdata.pro index 762543a60b..e3dc586dee 100644 --- a/tests/auto/testlib/selftests/skipinitdata/skipinitdata.pro +++ b/tests/auto/testlib/selftests/skipinitdata/skipinitdata.pro @@ -4,5 +4,9 @@ QT = core testlib mac:CONFIG -= app_bundle CONFIG -= debug_and_release_target - TARGET = skipinitdata + +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + diff --git a/tests/auto/testlib/selftests/sleep/sleep.pro b/tests/auto/testlib/selftests/sleep/sleep.pro index e0ae72f54a..4ff843a4e7 100644 --- a/tests/auto/testlib/selftests/sleep/sleep.pro +++ b/tests/auto/testlib/selftests/sleep/sleep.pro @@ -4,5 +4,9 @@ QT = core testlib mac:CONFIG -= app_bundle CONFIG -= debug_and_release_target - TARGET = sleep + +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + diff --git a/tests/auto/testlib/selftests/strcmp/strcmp.pro b/tests/auto/testlib/selftests/strcmp/strcmp.pro index ac1f1e840e..5f3a9a2c10 100644 --- a/tests/auto/testlib/selftests/strcmp/strcmp.pro +++ b/tests/auto/testlib/selftests/strcmp/strcmp.pro @@ -4,5 +4,9 @@ QT = core testlib mac:CONFIG -= app_bundle CONFIG -= debug_and_release_target - TARGET = strcmp + +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + diff --git a/tests/auto/testlib/selftests/subtest/subtest.pro b/tests/auto/testlib/selftests/subtest/subtest.pro index 3066f20247..23786f5b19 100644 --- a/tests/auto/testlib/selftests/subtest/subtest.pro +++ b/tests/auto/testlib/selftests/subtest/subtest.pro @@ -4,5 +4,9 @@ QT = core testlib mac:CONFIG -= app_bundle CONFIG -= debug_and_release_target - TARGET = subtest + +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + diff --git a/tests/auto/testlib/selftests/warnings/warnings.pro b/tests/auto/testlib/selftests/warnings/warnings.pro index 0c6ca01588..061d2a1055 100644 --- a/tests/auto/testlib/selftests/warnings/warnings.pro +++ b/tests/auto/testlib/selftests/warnings/warnings.pro @@ -4,5 +4,9 @@ QT = core testlib mac:CONFIG -= app_bundle CONFIG -= debug_and_release_target - TARGET = warnings + +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + diff --git a/tests/auto/testlib/selftests/xunit/xunit.pro b/tests/auto/testlib/selftests/xunit/xunit.pro index d3ae402e6f..dc4f30c3e2 100644 --- a/tests/auto/testlib/selftests/xunit/xunit.pro +++ b/tests/auto/testlib/selftests/xunit/xunit.pro @@ -1,8 +1,13 @@ QT = core testlib -SOURCES += tst_xunit.cpp +SOURCES += tst_xunit.cpp + mac:CONFIG -= app_bundle CONFIG -= debug_and_release_target TARGET = xunit +# This app is testdata for tst_selftests +target.path = $$[QT_INSTALL_TESTS]/tst_selftests/$$TARGET +INSTALLS += target + -- cgit v1.2.3 From 239df503ba7d6c0d2e458fbe6ece0a549772a6fd Mon Sep 17 00:00:00 2001 From: Robin Burchell Date: Wed, 7 Dec 2011 15:17:30 +0100 Subject: Remove -graphicssystem (and -runtimegraphicssystem) options from configure. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit In a Qt 5 world, these have no relevance, so remove them. Task-number: QTBUG-23022 Change-Id: I2f52c7aa1fcb8234046dd95b4d702791d20514fa Reviewed-by: Bradley T. Hughes Reviewed-by: Friedemann Kleint Reviewed-by: Samuel Rødal --- configure | 71 ---------------------------------------- tools/configure/configureapp.cpp | 34 ------------------- 2 files changed, 105 deletions(-) diff --git a/configure b/configure index 869e398764..cfc4cec2e0 100755 --- a/configure +++ b/configure @@ -825,8 +825,6 @@ OPT_FAST=auto OPT_VERBOSE=no OPT_HELP= CFG_SILENT=no -CFG_GRAPHICS_SYSTEM=default -CFG_RUNTIME_SYSTEM= CFG_ALSA=auto CFG_PULSEAUDIO=auto CFG_COREWLAN=auto @@ -1142,16 +1140,6 @@ while [ "$#" -gt 0 ]; do shift VAL="$1" ;; - -graphicssystem) - VAR="graphicssystem" - shift - VAL=$1 - ;; - -runtimegraphicssystem) - VAR="runtimegraphicssystem" - shift - VAL=$1 - ;; -qtlibinfix) VAR="qtlibinfix" shift @@ -1401,33 +1389,6 @@ while [ "$#" -gt 0 ]; do UNKNOWN_OPT=yes fi ;; - graphicssystem) - if [ "$PLATFORM_QWS" = "yes" ]; then - echo "Error: Graphics System plugins are not supported on QWS." - echo " On QWS, the graphics system API is part of the QScreen plugin architecture " - echo " rather than existing as a separate plugin." - echo "" - UNKNOWN_OPT=yes - else - if [ "$VAL" = "opengl" ]; then - CFG_GRAPHICS_SYSTEM="opengl" - elif [ "$VAL" = "openvg" ]; then - CFG_GRAPHICS_SYSTEM="openvg" - elif [ "$VAL" = "raster" ]; then - CFG_GRAPHICS_SYSTEM="raster" - elif [ "$VAL" = "runtime" ]; then - CFG_GRAPHICS_SYSTEM="runtime" - else - UNKNOWN_OPT=yes - fi - fi - ;; - runtimegraphicssystem) - if [ "$VAL" != "runtime" ]; then - CFG_RUNTIME_SYSTEM="$VAL" - fi - ;; - qvfb) # left for commandline compatibility, not documented if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then if [ "$VAL" = "yes" ]; then @@ -5771,12 +5732,6 @@ if [ "$PLATFORM_X11" = "yes" -o "$XPLATFORM_MINGW" = "yes" ]; then ;; esac fi - - # if opengl is disabled and the user specified graphicssystem gl, disable it... - if [ "$CFG_GRAPHICS_SYSTEM" = "opengl" ] && [ "$CFG_OPENGL" = "no" ]; then - echo "OpenGL Graphics System is disabled due to missing OpenGL support..." - CFG_GRAPHICS_SYSTEM=default - fi fi # X11/MINGW OpenGL # X11 @@ -6688,17 +6643,6 @@ if [ "$CFG_OPENVG" != "no" ]; then fi fi -# if openvg is disabled and the user specified graphicssystem vg, disable it... -if [ "$CFG_GRAPHICS_SYSTEM" = "openvg" ] && [ "$CFG_OPENVG" = "no" ]; then - echo "OpenVG Graphics System is disabled due to missing OpenVG support..." - CFG_GRAPHICS_SYSTEM=default -fi - -if [ -n "$CFG_RUNTIME_SYSTEM" -a "$CFG_GRAPHICS_SYSTEM" != "runtime" ] || [ "$CFG_RUNTIME_SYSTEM" = "runtime" ]; then - echo "Argument to -runtimegraphicssystem is invalid so ignoring..." - CFG_RUNTIME_SYSTEM= -fi - if [ "$CFG_ALSA" = "auto" ]; then if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/alsa "alsa" $L_FLAGS $I_FLAGS $l_FLAGS; then CFG_ALSA=yes @@ -7864,13 +7808,6 @@ QMakeVar set sql-plugins "$SQL_PLUGINS" [ "$CFG_SXE" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_SXE" [ "$CFG_DBUS" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_DBUS" -if [ "$PLATFORM_QWS" != "yes" -a "$PLATFORM_QPA" != "yes" ]; then - [ "$CFG_GRAPHICS_SYSTEM" = "raster" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_GRAPHICSSYSTEM_RASTER" - [ "$CFG_GRAPHICS_SYSTEM" = "opengl" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_GRAPHICSSYSTEM_OPENGL" - [ "$CFG_GRAPHICS_SYSTEM" = "openvg" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_GRAPHICSSYSTEM_OPENVG" - [ "$CFG_GRAPHICS_SYSTEM" = "runtime" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_GRAPHICSSYSTEM_RUNTIME" -fi - # ATM we need this define to compile Qt. Remove later! QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_STYLE_S60" @@ -7976,13 +7913,6 @@ cat >>"$outpath/src/corelib/global/qconfig.h.new" << EOF EOF fi -if [ -n "$CFG_RUNTIME_SYSTEM" ]; then -cat >>"$outpath/src/corelib/global/qconfig.h.new" << EOF -#define QT_DEFAULT_RUNTIME_SYSTEM "$CFG_RUNTIME_SYSTEM" - -EOF -fi - # avoid unecessary rebuilds by copying only if qconfig.h has changed if cmp -s "$outpath/src/corelib/global/qconfig.h" "$outpath/src/corelib/global/qconfig.h.new"; then rm -f "$outpath/src/corelib/global/qconfig.h.new" @@ -8356,7 +8286,6 @@ if [ "$CFG_ARCH" = "arm" ] || [ "$CFG_ARCH" = "armv6" ]; then echo "iWMMXt support ......... ${CFG_IWMMXT}" echo "NEON support ........... ${CFG_NEON}" fi -[ "${PLATFORM_QWS}" != "yes" -a "${PLATFORM_QPA}" != "yes" ] && echo "Graphics System ........ $CFG_GRAPHICS_SYSTEM" echo "IPv6 ifname support .... $CFG_IPV6IFNAME" echo "getaddrinfo support .... $CFG_GETADDRINFO" echo "getifaddrs support ..... $CFG_GETIFADDRS" diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp index ad958e9d44..a831825346 100644 --- a/tools/configure/configureapp.cpp +++ b/tools/configure/configureapp.cpp @@ -345,7 +345,6 @@ Configure::Configure(int& argc, char** argv) dictionary[ "SQL_SQLITE_LIB" ] = "qt"; dictionary[ "SQL_SQLITE2" ] = "no"; dictionary[ "SQL_IBASE" ] = "no"; - dictionary[ "GRAPHICS_SYSTEM" ] = "raster"; QString tmp = dictionary[ "QMAKESPEC" ]; if (tmp.contains("\\")) { @@ -1140,25 +1139,6 @@ void Configure::parseCmdLine() dictionary[ "MAKE" ] = configCmdLine.at(i); } - else if (configCmdLine.at(i) == "-graphicssystem") { - ++i; - if (i == argCount) - break; - QString system = configCmdLine.at(i); - if (system == QLatin1String("raster") - || system == QLatin1String("opengl") - || system == QLatin1String("openvg") - || system == QLatin1String("runtime")) - dictionary["GRAPHICS_SYSTEM"] = configCmdLine.at(i); - } - - else if (configCmdLine.at(i) == "-runtimegraphicssystem") { - ++i; - if (i == argCount) - break; - dictionary["RUNTIME_SYSTEM"] = configCmdLine.at(i); - } - else if (configCmdLine.at(i).indexOf(QRegExp("^-(en|dis)able-")) != -1) { // Scan to see if any specific modules and drivers are enabled or disabled for (QStringList::Iterator module = modules.begin(); module != modules.end(); ++module) { @@ -1581,7 +1561,6 @@ bool Configure::displayHelp() "[-no-multimedia] [-multimedia] [-no-audio-backend] [-audio-backend]\n" "[-no-script] [-script] [-no-scripttools] [-scripttools]\n" "[-no-webkit] [-webkit] [-webkit-debug]\n" - "[-graphicssystem raster|opengl|openvg]\n" "[-no-directwrite] [-directwrite] [-qpa]\n\n", 0, 7); desc("Installation options:\n\n"); @@ -1683,11 +1662,6 @@ bool Configure::displayHelp() desc( "-L ", "Add an explicit library path."); desc( "-l ", "Add an explicit library name, residing in a librarypath.\n"); #endif - desc( "-graphicssystem ", "Specify which graphicssystem should be used.\n" - "Available values for :"); - desc("GRAPHICS_SYSTEM", "raster", "", " raster - Software rasterizer", ' '); - desc("GRAPHICS_SYSTEM", "opengl", "", " opengl - Using OpenGL acceleration, experimental!", ' '); - desc("GRAPHICS_SYSTEM", "openvg", "", " openvg - Using OpenVG acceleration, experimental!\n", ' '); desc( "-help, -h, -?", "Display this information.\n"); @@ -2926,8 +2900,6 @@ void Configure::generateConfigfiles() tmpStream << endl << "// Compile time features" << endl; tmpStream << "#define QT_ARCH_" << dictionary["ARCHITECTURE"].toUpper() << endl; - if (dictionary["GRAPHICS_SYSTEM"] == "runtime" && dictionary["RUNTIME_SYSTEM"] != "runtime") - tmpStream << "#define QT_DEFAULT_RUNTIME_SYSTEM \"" << dictionary["RUNTIME_SYSTEM"] << "\"" << endl; QStringList qconfigList; if (dictionary["STL"] == "no") qconfigList += "QT_NO_STL"; @@ -2995,11 +2967,6 @@ void Configure::generateConfigfiles() if (dictionary["SQL_SQLITE2"] == "yes") qconfigList += "QT_SQL_SQLITE2"; if (dictionary["SQL_IBASE"] == "yes") qconfigList += "QT_SQL_IBASE"; - if (dictionary["GRAPHICS_SYSTEM"] == "openvg") qconfigList += "QT_GRAPHICSSYSTEM_OPENVG"; - if (dictionary["GRAPHICS_SYSTEM"] == "opengl") qconfigList += "QT_GRAPHICSSYSTEM_OPENGL"; - if (dictionary["GRAPHICS_SYSTEM"] == "raster") qconfigList += "QT_GRAPHICSSYSTEM_RASTER"; - if (dictionary["GRAPHICS_SYSTEM"] == "runtime") qconfigList += "QT_GRAPHICSSYSTEM_RUNTIME"; - qconfigList.sort(); for (int i = 0; i < qconfigList.count(); ++i) tmpStream << addDefine(qconfigList.at(i)); @@ -3256,7 +3223,6 @@ void Configure::displayConfig() cout << "V8 support.................." << dictionary[ "V8" ] << endl; cout << "QtScript support............" << dictionary[ "SCRIPT" ] << endl; cout << "QtScriptTools support......." << dictionary[ "SCRIPTTOOLS" ] << endl; - cout << "Graphics System............." << dictionary[ "GRAPHICS_SYSTEM" ] << endl; cout << "Qt3 compatibility..........." << dictionary[ "QT3SUPPORT" ] << endl; cout << "DirectWrite support........." << dictionary[ "DIRECTWRITE" ] << endl << endl; -- cgit v1.2.3 From 876b2d06f7ef999d5266dba1097ab06b7a035799 Mon Sep 17 00:00:00 2001 From: Morten Johan Sorvig Date: Mon, 12 Dec 2011 10:55:37 +0100 Subject: Cocoa: Use new 10.7 mouse wheel API. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Silence "deprecated" warnings. Use the old API on 10.6. Change-Id: I0cfa3a083108618023b491589a85ddfc268f990b Reviewed-by: Morten Johan Sørvig --- src/plugins/platforms/cocoa/qnsview.mm | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/src/plugins/platforms/cocoa/qnsview.mm b/src/plugins/platforms/cocoa/qnsview.mm index a0a5a2e5cf..82b4e54deb 100644 --- a/src/plugins/platforms/cocoa/qnsview.mm +++ b/src/plugins/platforms/cocoa/qnsview.mm @@ -337,9 +337,20 @@ static QTouchDevice *touchDevice = 0; // It looks like 1/4 degrees per pixel behaves most native. // (NB: Qt expects the unit for delta to be 8 per degree): const int pixelsToDegrees = 2; // 8 * 1/4 - deltaX = [theEvent deviceDeltaX] * pixelsToDegrees; - deltaY = [theEvent deviceDeltaY] * pixelsToDegrees; - deltaZ = [theEvent deviceDeltaZ] * pixelsToDegrees; + +#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_7 + if ([theEvent respondsToSelector:@selector(scrollingDeltaX)]) { + deltaX = [theEvent scrollingDeltaX] * pixelsToDegrees; + deltaY = [theEvent scrollingDeltaY] * pixelsToDegrees; + // scrollingDeltaZ API is missing. + } else +#endif + { + deltaX = [theEvent deviceDeltaX] * pixelsToDegrees; + deltaY = [theEvent deviceDeltaY] * pixelsToDegrees; + deltaZ = [theEvent deviceDeltaZ] * pixelsToDegrees; + } + } else { // carbonEventKind == kEventMouseWheelMoved // Remove acceleration, and use either -120 or 120 as delta: -- cgit v1.2.3 From 2395a3c897272b5fd265831575ef7e29f604dac2 Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Wed, 14 Dec 2011 16:23:43 +1000 Subject: Remove incorrect information from QCOMPARE documentation. The documentation stated that QStringList objects would be compared starting from the end of the lists. The implementation in qtest.h actually starts at the beginning of the list, and always has done since qtestlib became part of Qt. Change-Id: I056f584564d46402ba23fc6a89c801cb5c3c6262 Reviewed-by: Rohan McGovern --- src/testlib/qtestcase.cpp | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/testlib/qtestcase.cpp b/src/testlib/qtestcase.cpp index 2ddb363888..aee225742a 100644 --- a/src/testlib/qtestcase.cpp +++ b/src/testlib/qtestcase.cpp @@ -148,9 +148,6 @@ QT_BEGIN_NAMESPACE unspecified behavior from being introduced; that is behavior that usually occurs when the compiler implicitly casts the argument. - If you use QCOMPARE() to compare two QStringList objects, it will start - comparing the objects from the end of the lists. - For your own classes, you can use \l QTest::toString() to format values for outputting into the test log. -- cgit v1.2.3 From 14d9a2b06c58f544f0db13267091cf94ed0d2e97 Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Tue, 13 Dec 2011 10:12:44 +0100 Subject: Remove QAlphaPaintEngine::drawImage() MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit It was not a proper reimplementation of QPaintEngine::drawImage(), which takes 4 arguments, not 3 as declared in QAlphaPaintEngine. Remove the code, since it is not being called. Change-Id: Ia125a9c7e8a2e05ec2ca11b859c01ccbf4d55af5 Reviewed-by: Samuel Rødal --- src/printsupport/kernel/qpaintengine_alpha.cpp | 19 ------------------- src/printsupport/kernel/qpaintengine_alpha_p.h | 1 - 2 files changed, 20 deletions(-) diff --git a/src/printsupport/kernel/qpaintengine_alpha.cpp b/src/printsupport/kernel/qpaintengine_alpha.cpp index beda2c7144..dc40bd95fb 100644 --- a/src/printsupport/kernel/qpaintengine_alpha.cpp +++ b/src/printsupport/kernel/qpaintengine_alpha.cpp @@ -223,25 +223,6 @@ void QAlphaPaintEngine::drawPixmap(const QRectF &r, const QPixmap &pm, const QRe } } -void QAlphaPaintEngine::drawImage(const QRectF &r, const QImage &image, const QRectF &sr) -{ - Q_D(QAlphaPaintEngine); - - QRectF tr = d->m_transform.mapRect(r); - if (d->m_pass == 0) { - d->m_continueCall = false; - if (image.hasAlphaChannel() || d->m_alphaOpacity || d->m_complexTransform) { - d->addAlphaRect(tr); - } - - if (d->m_picengine) - d->m_picengine->drawImage(r, image, sr); - - } else { - d->m_continueCall = !d->fullyContained(tr); - } -} - void QAlphaPaintEngine::drawTextItem(const QPointF &p, const QTextItem &textItem) { Q_D(QAlphaPaintEngine); diff --git a/src/printsupport/kernel/qpaintengine_alpha_p.h b/src/printsupport/kernel/qpaintengine_alpha_p.h index b662c166e8..407cf96cbc 100644 --- a/src/printsupport/kernel/qpaintengine_alpha_p.h +++ b/src/printsupport/kernel/qpaintengine_alpha_p.h @@ -76,7 +76,6 @@ public: virtual void drawPolygon(const QPointF *points, int pointCount, PolygonDrawMode mode); virtual void drawPixmap(const QRectF &r, const QPixmap &pm, const QRectF &sr); - virtual void drawImage(const QRectF &r, const QImage &image, const QRectF &sr); virtual void drawTextItem(const QPointF &p, const QTextItem &textItem); virtual void drawTiledPixmap(const QRectF &r, const QPixmap &pixmap, const QPointF &s); -- cgit v1.2.3 From 3064c1bc8cc04a40f6e468033d73823987687d40 Mon Sep 17 00:00:00 2001 From: Laszlo Agocs Date: Sat, 10 Dec 2011 16:30:18 +0200 Subject: Remove redundant touch processing in QtGui and widgets. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The duplicated hash tables in QGuiApplicationPrivate and QApplicationPrivate are now unified into one single hash table in QGuiApplicationPrivate. This also reduced the number of lookups. The extra processing needed to keep the touch points' first/lastPos values in sync is now done only once, in QGuiApplication. This eliminates the performance penalty (for widget-based apps) that was introduced during the QPA migration. As an added bonus the patch adds support for touch events arriving simultaenously from multiple devices. This was broken before: As there is no guarantee that two devices/drivers will not send touch points with the same ID, using structures with only the ID as key is wrong. The proper key is composed of the device ID (that is, a QTouchDevice pointer) and the touch point ID. The exported internal function qt_translateRawTouchEvent() has been removed. This function cannot work properly in the QPA world: It injected touches into the widget subsystem (QApplication) only which is wrong, and would result in half-filled touch events due to not routing the injected data through QGuiApplication. Autotests using this function are migrated to QWindowSystemInterface::handleTouchEvent(). Change-Id: I7632781d77f9e0ac4626fd7c9933511c94492156 Reviewed-by: Samuel Rødal --- dist/changes-5.0.0 | 4 + src/gui/kernel/qguiapplication.cpp | 46 +++- src/gui/kernel/qguiapplication_p.h | 20 +- src/testlib/qtesttouch.h | 56 +++-- src/widgets/kernel/qapplication.cpp | 135 ++++-------- src/widgets/kernel/qapplication_p.h | 9 +- .../gui/kernel/qtouchevent/tst_qtouchevent.cpp | 233 ++++++++++++++++++--- .../kernel/qapplication/tst_qapplication.cpp | 126 +++++++++-- 8 files changed, 436 insertions(+), 193 deletions(-) diff --git a/dist/changes-5.0.0 b/dist/changes-5.0.0 index daf68eee32..8dbda70212 100644 --- a/dist/changes-5.0.0 +++ b/dist/changes-5.0.0 @@ -113,6 +113,10 @@ information about a particular change. * The event type parameter is removed from handleTouchEvent(). +- The previously exported function qt_translateRawTouchEvent() has been removed. + Use QWindowSystemInterface::handleTouchEvent() instead. + + **************************************************************************** * General * **************************************************************************** diff --git a/src/gui/kernel/qguiapplication.cpp b/src/gui/kernel/qguiapplication.cpp index dc8e5edb56..312d8f50fb 100644 --- a/src/gui/kernel/qguiapplication.cpp +++ b/src/gui/kernel/qguiapplication.cpp @@ -823,6 +823,18 @@ void QGuiApplicationPrivate::processCloseEvent(QWindowSystemInterfacePrivate::Cl QGuiApplication::sendSpontaneousEvent(e->window.data(), &event); } +Q_GUI_EXPORT uint qHash(const QGuiApplicationPrivate::ActiveTouchPointsKey &k) +{ + return qHash(k.device) + k.touchPointId; +} + +Q_GUI_EXPORT bool operator==(const QGuiApplicationPrivate::ActiveTouchPointsKey &a, + const QGuiApplicationPrivate::ActiveTouchPointsKey &b) +{ + return a.device == b.device + && a.touchPointId == b.touchPointId; +} + void QGuiApplicationPrivate::processTouchEvent(QWindowSystemInterfacePrivate::TouchEvent *e) { QWindow *window = e->window.data(); @@ -840,13 +852,15 @@ void QGuiApplicationPrivate::processTouchEvent(QWindowSystemInterfacePrivate::To // update state QWeakPointer w; QTouchEvent::TouchPoint previousTouchPoint; + ActiveTouchPointsKey touchInfoKey(e->device, touchPoint.id()); + ActiveTouchPointsValue &touchInfo = d->activeTouchPoints[touchInfoKey]; switch (touchPoint.state()) { case Qt::TouchPointPressed: if (e->device->type() == QTouchDevice::TouchPad) { // on touch-pads, send all touch points to the same widget - w = d->windowForTouchPointId.isEmpty() + w = d->activeTouchPoints.isEmpty() ? QWeakPointer() - : d->windowForTouchPointId.constBegin().value(); + : d->activeTouchPoints.constBegin().value().window; } if (!w) { @@ -858,7 +872,7 @@ void QGuiApplicationPrivate::processTouchEvent(QWindowSystemInterfacePrivate::To w = window; } - d->windowForTouchPointId[touchPoint.id()] = w; + touchInfo.window = w; touchPoint.d->startScreenPos = touchPoint.screenPos(); touchPoint.d->lastScreenPos = touchPoint.screenPos(); touchPoint.d->startNormalizedPos = touchPoint.normalizedPos(); @@ -866,14 +880,15 @@ void QGuiApplicationPrivate::processTouchEvent(QWindowSystemInterfacePrivate::To if (touchPoint.pressure() < qreal(0.)) touchPoint.d->pressure = qreal(1.); - d->appCurrentTouchPoints.insert(touchPoint.id(), touchPoint); + touchInfo.touchPoint = touchPoint; break; case Qt::TouchPointReleased: - w = d->windowForTouchPointId.take(touchPoint.id()); + w = touchInfo.window; if (!w) continue; - previousTouchPoint = d->appCurrentTouchPoints.take(touchPoint.id()); + + previousTouchPoint = touchInfo.touchPoint; touchPoint.d->startScreenPos = previousTouchPoint.startScreenPos(); touchPoint.d->lastScreenPos = previousTouchPoint.screenPos(); touchPoint.d->startPos = previousTouchPoint.startPos(); @@ -882,14 +897,15 @@ void QGuiApplicationPrivate::processTouchEvent(QWindowSystemInterfacePrivate::To touchPoint.d->lastNormalizedPos = previousTouchPoint.normalizedPos(); if (touchPoint.pressure() < qreal(0.)) touchPoint.d->pressure = qreal(0.); + break; default: - w = d->windowForTouchPointId.value(touchPoint.id()); + w = touchInfo.window; if (!w) continue; - Q_ASSERT(d->appCurrentTouchPoints.contains(touchPoint.id())); - previousTouchPoint = d->appCurrentTouchPoints.value(touchPoint.id()); + + previousTouchPoint = touchInfo.touchPoint; touchPoint.d->startScreenPos = previousTouchPoint.startScreenPos(); touchPoint.d->lastScreenPos = previousTouchPoint.screenPos(); touchPoint.d->startPos = previousTouchPoint.startPos(); @@ -902,7 +918,7 @@ void QGuiApplicationPrivate::processTouchEvent(QWindowSystemInterfacePrivate::To // Stationary points might not be delivered down to the receiving item // and get their position transformed, keep the old values instead. if (touchPoint.state() != Qt::TouchPointStationary) - d->appCurrentTouchPoints[touchPoint.id()] = touchPoint; + touchInfo.touchPoint = touchPoint; break; } @@ -969,6 +985,16 @@ void QGuiApplicationPrivate::processTouchEvent(QWindowSystemInterfacePrivate::To QGuiApplication::sendSpontaneousEvent(w, &touchEvent); } + + // Remove released points from the hash table only after the event is + // delivered. When the receiver is a widget, QApplication will access + // activeTouchPoints during delivery and therefore nothing can be removed + // before sending the event. + for (int i = 0; i < e->points.count(); ++i) { + QTouchEvent::TouchPoint touchPoint = e->points.at(i); + if (touchPoint.state() == Qt::TouchPointReleased) + d->activeTouchPoints.remove(ActiveTouchPointsKey(e->device, touchPoint.id())); + } } void QGuiApplicationPrivate::reportScreenOrientationChange(QWindowSystemInterfacePrivate::ScreenOrientationEvent *e) diff --git a/src/gui/kernel/qguiapplication_p.h b/src/gui/kernel/qguiapplication_p.h index 9c8a2ca642..2d13127487 100644 --- a/src/gui/kernel/qguiapplication_p.h +++ b/src/gui/kernel/qguiapplication_p.h @@ -189,15 +189,29 @@ public: QShortcutMap shortcutMap; #endif + struct ActiveTouchPointsKey { + ActiveTouchPointsKey(QTouchDevice *dev, int id) : device(dev), touchPointId(id) { } + QTouchDevice *device; + int touchPointId; + }; + struct ActiveTouchPointsValue { + QWeakPointer window; + QWeakPointer target; + QTouchEvent::TouchPoint touchPoint; + }; + QHash activeTouchPoints; + private: void init(); static QGuiApplicationPrivate *self; - - QMap > windowForTouchPointId; - QMap appCurrentTouchPoints; }; +Q_GUI_EXPORT uint qHash(const QGuiApplicationPrivate::ActiveTouchPointsKey &k); + +Q_GUI_EXPORT bool operator==(const QGuiApplicationPrivate::ActiveTouchPointsKey &a, + const QGuiApplicationPrivate::ActiveTouchPointsKey &b); + QT_END_NAMESPACE QT_END_HEADER diff --git a/src/testlib/qtesttouch.h b/src/testlib/qtesttouch.h index 57085adb8b..3763a9a500 100644 --- a/src/testlib/qtesttouch.h +++ b/src/testlib/qtesttouch.h @@ -62,13 +62,6 @@ QT_BEGIN_NAMESPACE QT_MODULE(Test) -#ifdef QT_WIDGETS_LIB -extern Q_GUI_EXPORT void qt_translateRawTouchEvent(QWidget *window, - QTouchDevice *device, - const QList &touchPoints, - ulong timestamp); -#endif - namespace QTest { @@ -137,19 +130,43 @@ namespace QTest if (targetWindow) { QWindowSystemInterface::handleTouchEvent(targetWindow, device, touchPointList(points.values())); - QTest::qWait(10); } #ifdef QT_WIDGETS_LIB else if (targetWidget) { - qt_translateRawTouchEvent(targetWidget, device, points.values(), 0); + QWindowSystemInterface::handleTouchEvent(targetWidget->windowHandle(), device, touchPointList(points.values())); } #endif } + QCoreApplication::processEvents(); previousPoints = points; points.clear(); } + static QWindowSystemInterface::TouchPoint touchPoint(const QTouchEvent::TouchPoint& pt) + { + QWindowSystemInterface::TouchPoint p; + p.id = pt.id(); + p.flags = pt.flags(); + p.normalPosition = pt.normalizedPos(); + p.area = pt.screenRect(); + p.pressure = pt.pressure(); + p.state = pt.state(); + p.velocity = pt.velocity(); + p.rawPositions = pt.rawScreenPositions(); + return p; + } + static QList touchPointList(const QList& pointList) + { + QList newList; + + Q_FOREACH (QTouchEvent::TouchPoint p, pointList) + { + newList.append(touchPoint(p)); + } + return newList; + } + private: #ifdef QT_WIDGETS_LIB QTouchEventSequence(QWidget *widget, QTouchDevice *aDevice) @@ -198,27 +215,6 @@ namespace QTest return window->mapToGlobal(pt); return targetWindow ? targetWindow->mapToGlobal(pt) : pt; } - QWindowSystemInterface::TouchPoint touchPoint(const QTouchEvent::TouchPoint& pt) - { - QWindowSystemInterface::TouchPoint p; - p.id = pt.id(); - p.flags = pt.flags(); - p.normalPosition = pt.screenRect().topLeft(); - p.area = pt.screenRect(); - p.pressure = pt.pressure(); - p.state = pt.state(); - return p; - } - QList touchPointList(const QList& pointList) - { - QList newList; - - Q_FOREACH (QTouchEvent::TouchPoint p, pointList) - { - newList.append(touchPoint(p)); - } - return newList; - } QMap previousPoints; QMap points; diff --git a/src/widgets/kernel/qapplication.cpp b/src/widgets/kernel/qapplication.cpp index 4c4cb4061c..a4a1aa860d 100644 --- a/src/widgets/kernel/qapplication.cpp +++ b/src/widgets/kernel/qapplication.cpp @@ -3904,7 +3904,7 @@ bool QApplication::notify(QObject *receiver, QEvent *e) // the first widget to accept the TouchBegin gets an implicit grab. for (int i = 0; i < touchEvent->touchPoints().count(); ++i) { const QTouchEvent::TouchPoint &touchPoint = touchEvent->touchPoints().at(i); - d->widgetForTouchPointId[touchPoint.id()] = widget; + d->activeTouchPoints[QGuiApplicationPrivate::ActiveTouchPointsKey(touchEvent->device(), touchPoint.id())].target = widget; } break; } else if (p.isNull() || widget->isWindow() || widget->testAttribute(Qt::WA_NoMousePropagation)) { @@ -5168,41 +5168,43 @@ void QApplicationPrivate::updateTouchPointsForWidget(QWidget *widget, QTouchEven rect.moveCenter(widget->mapFromGlobal(screenPos.toPoint()) + delta); touchPoint.d->rect = rect; - if (touchPoint.state() == Qt::TouchPointPressed) { - touchPoint.d->startPos = widget->mapFromGlobal(touchPoint.startScreenPos().toPoint()) + delta; - touchPoint.d->lastPos = widget->mapFromGlobal(touchPoint.lastScreenPos().toPoint()) + delta; - } + touchPoint.d->startPos = widget->mapFromGlobal(touchPoint.startScreenPos().toPoint()) + delta; + touchPoint.d->lastPos = widget->mapFromGlobal(touchPoint.lastScreenPos().toPoint()) + delta; } } void QApplicationPrivate::initializeMultitouch() { - widgetForTouchPointId.clear(); - appCurrentTouchPoints.clear(); - initializeMultitouch_sys(); } void QApplicationPrivate::cleanupMultitouch() { cleanupMultitouch_sys(); - - widgetForTouchPointId.clear(); - appCurrentTouchPoints.clear(); } -int QApplicationPrivate::findClosestTouchPointId(const QPointF &screenPos) +QWidget *QApplicationPrivate::findClosestTouchPointTarget(QTouchDevice *device, const QPointF &screenPos) { int closestTouchPointId = -1; + QObject *closestTarget = 0; qreal closestDistance = qreal(0.); - foreach (const QTouchEvent::TouchPoint &touchPoint, appCurrentTouchPoints) { - qreal distance = QLineF(screenPos, touchPoint.screenPos()).length(); - if (closestTouchPointId == -1 || distance < closestDistance) { - closestTouchPointId = touchPoint.id(); - closestDistance = distance; + QHash::const_iterator it = activeTouchPoints.constBegin(), + ite = activeTouchPoints.constEnd(); + while (it != ite) { + if (it.key().device == device) { + const QTouchEvent::TouchPoint &touchPoint = it->touchPoint; + qreal dx = screenPos.x() - touchPoint.screenPos().x(); + qreal dy = screenPos.y() - touchPoint.screenPos().y(); + qreal distance = dx * dx + dy * dy; + if (closestTouchPointId == -1 || distance < closestDistance) { + closestTouchPointId = touchPoint.id(); + closestDistance = distance; + closestTarget = it.value().target.data(); + } } + ++it; } - return closestTouchPointId; + return static_cast(closestTarget); } void QApplicationPrivate::translateRawTouchEvent(QWidget *window, @@ -5222,91 +5224,46 @@ void QApplicationPrivate::translateRawTouchEvent(QWidget *window, touchPoint.d = touchPoint.d->detach(); // update state - QWeakPointer widget; - switch (touchPoint.state()) { - case Qt::TouchPointPressed: - { + QWeakPointer target; + ActiveTouchPointsKey touchInfoKey(device, touchPoint.id()); + ActiveTouchPointsValue &touchInfo = d->activeTouchPoints[touchInfoKey]; + if (touchPoint.state() == Qt::TouchPointPressed) { if (device->type() == QTouchDevice::TouchPad) { // on touch-pads, send all touch points to the same widget - widget = d->widgetForTouchPointId.isEmpty() - ? QWeakPointer() - : d->widgetForTouchPointId.constBegin().value(); + target = d->activeTouchPoints.isEmpty() + ? QWeakPointer() + : d->activeTouchPoints.constBegin().value().target; } - if (!widget) { + if (!target) { // determine which widget this event will go to if (!window) window = QApplication::topLevelAt(touchPoint.screenPos().toPoint()); if (!window) continue; - widget = window->childAt(window->mapFromGlobal(touchPoint.screenPos().toPoint())); - if (!widget) - widget = window; + target = window->childAt(window->mapFromGlobal(touchPoint.screenPos().toPoint())); + if (!target) + target = window; } if (device->type() == QTouchDevice::TouchScreen) { - int closestTouchPointId = d->findClosestTouchPointId(touchPoint.screenPos()); - QWidget *closestWidget = d->widgetForTouchPointId.value(closestTouchPointId).data(); + QWidget *closestWidget = d->findClosestTouchPointTarget(device, touchPoint.screenPos()); + QWidget *widget = static_cast(target.data()); if (closestWidget - && (widget.data()->isAncestorOf(closestWidget) || closestWidget->isAncestorOf(widget.data()))) { - widget = closestWidget; + && (widget->isAncestorOf(closestWidget) || closestWidget->isAncestorOf(widget))) { + target = closestWidget; } } - d->widgetForTouchPointId[touchPoint.id()] = widget; - touchPoint.d->startScreenPos = touchPoint.screenPos(); - touchPoint.d->lastScreenPos = touchPoint.screenPos(); - touchPoint.d->startNormalizedPos = touchPoint.normalizedPos(); - touchPoint.d->lastNormalizedPos = touchPoint.normalizedPos(); - if (touchPoint.pressure() < qreal(0.)) - touchPoint.d->pressure = qreal(1.); - - d->appCurrentTouchPoints.insert(touchPoint.id(), touchPoint); - break; - } - case Qt::TouchPointReleased: - { - widget = d->widgetForTouchPointId.take(touchPoint.id()); - if (!widget) - continue; - - QTouchEvent::TouchPoint previousTouchPoint = d->appCurrentTouchPoints.take(touchPoint.id()); - touchPoint.d->startScreenPos = previousTouchPoint.startScreenPos(); - touchPoint.d->lastScreenPos = previousTouchPoint.screenPos(); - touchPoint.d->startPos = previousTouchPoint.startPos(); - touchPoint.d->lastPos = previousTouchPoint.pos(); - touchPoint.d->startNormalizedPos = previousTouchPoint.startNormalizedPos(); - touchPoint.d->lastNormalizedPos = previousTouchPoint.normalizedPos(); - if (touchPoint.pressure() < qreal(0.)) - touchPoint.d->pressure = qreal(0.); - break; - } - default: - widget = d->widgetForTouchPointId.value(touchPoint.id()); - if (!widget) + touchInfo.target = target; + } else { + target = touchInfo.target; + if (!target) continue; - - Q_ASSERT(d->appCurrentTouchPoints.contains(touchPoint.id())); - QTouchEvent::TouchPoint previousTouchPoint = d->appCurrentTouchPoints.value(touchPoint.id()); - touchPoint.d->startScreenPos = previousTouchPoint.startScreenPos(); - touchPoint.d->lastScreenPos = previousTouchPoint.screenPos(); - touchPoint.d->startPos = previousTouchPoint.startPos(); - touchPoint.d->lastPos = previousTouchPoint.pos(); - touchPoint.d->startNormalizedPos = previousTouchPoint.startNormalizedPos(); - touchPoint.d->lastNormalizedPos = previousTouchPoint.normalizedPos(); - if (touchPoint.pressure() < qreal(0.)) - touchPoint.d->pressure = qreal(1.); - d->appCurrentTouchPoints[touchPoint.id()] = touchPoint; - break; } - Q_ASSERT(widget.data() != 0); - - // make the *scene* functions return the same as the *screen* functions - touchPoint.d->sceneRect = touchPoint.screenRect(); - touchPoint.d->startScenePos = touchPoint.startScreenPos(); - touchPoint.d->lastScenePos = touchPoint.lastScreenPos(); + Q_ASSERT(target.data() != 0); - StatesAndTouchPoints &maskAndPoints = widgetsNeedingEvents[widget.data()]; + StatesAndTouchPoints &maskAndPoints = widgetsNeedingEvents[static_cast(target.data())]; maskAndPoints.first |= touchPoint.state(); maskAndPoints.second.append(touchPoint); } @@ -5345,7 +5302,7 @@ void QApplicationPrivate::translateRawTouchEvent(QWidget *window, updateTouchPointsForWidget(widget, &touchEvent); touchEvent.setTimestamp(timestamp); touchEvent.setWindow(window->windowHandle()); - touchEvent.setTarget(window); + touchEvent.setTarget(widget); switch (touchEvent.type()) { case QEvent::TouchBegin: @@ -5367,14 +5324,6 @@ void QApplicationPrivate::translateRawTouchEvent(QWidget *window, } } -Q_WIDGETS_EXPORT void qt_translateRawTouchEvent(QWidget *window, - QTouchDevice *device, - const QList &touchPoints, - ulong timestamp) -{ - QApplicationPrivate::translateRawTouchEvent(window, device, touchPoints, timestamp); -} - #ifndef QT_NO_GESTURES QGestureManager* QGestureManager::instance() { diff --git a/src/widgets/kernel/qapplication_p.h b/src/widgets/kernel/qapplication_p.h index 3841cef62f..ac4b4ad667 100644 --- a/src/widgets/kernel/qapplication_p.h +++ b/src/widgets/kernel/qapplication_p.h @@ -472,14 +472,12 @@ public: QPixmap *ignore_cursor; #endif - QMap > widgetForTouchPointId; - QMap appCurrentTouchPoints; static void updateTouchPointsForWidget(QWidget *widget, QTouchEvent *touchEvent); void initializeMultitouch(); void initializeMultitouch_sys(); void cleanupMultitouch(); void cleanupMultitouch_sys(); - int findClosestTouchPointId(const QPointF &screenPos); + QWidget *findClosestTouchPointTarget(QTouchDevice *device, const QPointF &screenPos); void appendTouchPoint(const QTouchEvent::TouchPoint &touchPoint); void removeTouchPoint(int touchPointId); static void translateRawTouchEvent(QWidget *widget, @@ -554,11 +552,6 @@ private: static bool isAlien(QWidget *); }; -Q_WIDGETS_EXPORT void qt_translateRawTouchEvent(QWidget *window, - QTouchDevice *device, - const QList &touchPoints, - ulong timestamp); - #if defined(Q_WS_WIN) extern void qt_win_set_cursor(QWidget *, bool); #elif defined(Q_WS_X11) diff --git a/tests/auto/gui/kernel/qtouchevent/tst_qtouchevent.cpp b/tests/auto/gui/kernel/qtouchevent/tst_qtouchevent.cpp index 07afe4a89c..40e627d3a5 100644 --- a/tests/auto/gui/kernel/qtouchevent/tst_qtouchevent.cpp +++ b/tests/auto/gui/kernel/qtouchevent/tst_qtouchevent.cpp @@ -209,6 +209,8 @@ private slots: void deleteInRawEventTranslation(); void crashInQGraphicsSceneAfterNotHandlingTouchBegin(); void touchBeginWithGraphicsWidget(); + void testQGuiAppDelivery(); + void testMultiDevice(); private: QTouchDevice *touchScreenDevice; @@ -597,10 +599,12 @@ void tst_QTouchEvent::basicRawEventTranslation() rawPosList << QPointF(12, 34) << QPointF(56, 78); rawTouchPoint.setRawScreenPositions(rawPosList); const ulong timestamp = 1234; - qt_translateRawTouchEvent(&touchWidget, - touchScreenDevice, - QList() << rawTouchPoint, - timestamp); + QWindowSystemInterface::handleTouchEvent(touchWidget.windowHandle(), + timestamp, + touchScreenDevice, + QTest::QTouchEventSequence::touchPointList( + QList() << rawTouchPoint)); + QCoreApplication::processEvents(); QVERIFY(touchWidget.seenTouchBegin); QVERIFY(!touchWidget.seenTouchUpdate); QVERIFY(!touchWidget.seenTouchEnd); @@ -632,10 +636,11 @@ void tst_QTouchEvent::basicRawEventTranslation() rawTouchPoint.setState(Qt::TouchPointMoved); rawTouchPoint.setScreenPos(screenPos + delta); rawTouchPoint.setNormalizedPos(normalized(rawTouchPoint.pos(), screenGeometry)); - qt_translateRawTouchEvent(&touchWidget, - touchScreenDevice, - QList() << rawTouchPoint, - 0); + QWindowSystemInterface::handleTouchEvent(touchWidget.windowHandle(), + 0, + touchScreenDevice, + QTest::QTouchEventSequence::touchPointList(QList() << rawTouchPoint)); + QCoreApplication::processEvents(); QVERIFY(touchWidget.seenTouchBegin); QVERIFY(touchWidget.seenTouchUpdate); QVERIFY(!touchWidget.seenTouchEnd); @@ -664,10 +669,11 @@ void tst_QTouchEvent::basicRawEventTranslation() rawTouchPoint.setState(Qt::TouchPointReleased); rawTouchPoint.setScreenPos(screenPos + delta + delta); rawTouchPoint.setNormalizedPos(normalized(rawTouchPoint.pos(), screenGeometry)); - qt_translateRawTouchEvent(&touchWidget, - touchScreenDevice, - QList() << rawTouchPoint, - 0); + QWindowSystemInterface::handleTouchEvent(touchWidget.windowHandle(), + 0, + touchScreenDevice, + QTest::QTouchEventSequence::touchPointList(QList() << rawTouchPoint)); + QCoreApplication::processEvents(); QVERIFY(touchWidget.seenTouchBegin); QVERIFY(touchWidget.seenTouchUpdate); QVERIFY(touchWidget.seenTouchEnd); @@ -731,7 +737,11 @@ void tst_QTouchEvent::multiPointRawEventTranslationOnTouchScreen() rawTouchPoints[1].setState(Qt::TouchPointPressed); rawTouchPoints[1].setScreenPos(rightScreenPos); rawTouchPoints[1].setNormalizedPos(normalized(rawTouchPoints[1].pos(), screenGeometry)); - qt_translateRawTouchEvent(&touchWidget, touchScreenDevice, rawTouchPoints, 0); + QWindowSystemInterface::handleTouchEvent(touchWidget.windowHandle(), + 0, + touchScreenDevice, + QTest::QTouchEventSequence::touchPointList(rawTouchPoints)); + QCoreApplication::processEvents(); QVERIFY(!touchWidget.seenTouchBegin); QVERIFY(!touchWidget.seenTouchUpdate); QVERIFY(!touchWidget.seenTouchEnd); @@ -792,7 +802,11 @@ void tst_QTouchEvent::multiPointRawEventTranslationOnTouchScreen() rawTouchPoints[1].setState(Qt::TouchPointMoved); rawTouchPoints[1].setScreenPos(centerScreenPos); rawTouchPoints[1].setNormalizedPos(normalized(rawTouchPoints[1].pos(), screenGeometry)); - qt_translateRawTouchEvent(&touchWidget, touchScreenDevice, rawTouchPoints, 0); + QWindowSystemInterface::handleTouchEvent(touchWidget.windowHandle(), + 0, + touchScreenDevice, + QTest::QTouchEventSequence::touchPointList(rawTouchPoints)); + QCoreApplication::processEvents(); QVERIFY(!touchWidget.seenTouchBegin); QVERIFY(!touchWidget.seenTouchUpdate); QVERIFY(!touchWidget.seenTouchEnd); @@ -853,7 +867,11 @@ void tst_QTouchEvent::multiPointRawEventTranslationOnTouchScreen() rawTouchPoints[1].setState(Qt::TouchPointReleased); rawTouchPoints[1].setScreenPos(centerScreenPos); rawTouchPoints[1].setNormalizedPos(normalized(rawTouchPoints[1].pos(), screenGeometry)); - qt_translateRawTouchEvent(&touchWidget, touchScreenDevice, rawTouchPoints, 0); + QWindowSystemInterface::handleTouchEvent(touchWidget.windowHandle(), + 0, + touchScreenDevice, + QTest::QTouchEventSequence::touchPointList(rawTouchPoints)); + QCoreApplication::processEvents(); QVERIFY(!touchWidget.seenTouchBegin); QVERIFY(!touchWidget.seenTouchUpdate); QVERIFY(!touchWidget.seenTouchEnd); @@ -946,7 +964,11 @@ void tst_QTouchEvent::multiPointRawEventTranslationOnTouchPad() rawTouchPoints[1].setState(Qt::TouchPointPressed); rawTouchPoints[1].setScreenPos(rightScreenPos); rawTouchPoints[1].setNormalizedPos(normalized(rawTouchPoints[1].pos(), screenGeometry)); - qt_translateRawTouchEvent(&touchWidget, touchPadDevice, rawTouchPoints, 0); + QWindowSystemInterface::handleTouchEvent(touchWidget.windowHandle(), + 0, + touchPadDevice, + QTest::QTouchEventSequence::touchPointList(rawTouchPoints)); + QCoreApplication::processEvents(); QVERIFY(!touchWidget.seenTouchBegin); QVERIFY(!touchWidget.seenTouchUpdate); QVERIFY(!touchWidget.seenTouchEnd); @@ -1007,7 +1029,11 @@ void tst_QTouchEvent::multiPointRawEventTranslationOnTouchPad() rawTouchPoints[1].setState(Qt::TouchPointMoved); rawTouchPoints[1].setScreenPos(centerScreenPos); rawTouchPoints[1].setNormalizedPos(normalized(rawTouchPoints[1].pos(), screenGeometry)); - qt_translateRawTouchEvent(&touchWidget, touchPadDevice, rawTouchPoints, 0); + QWindowSystemInterface::handleTouchEvent(touchWidget.windowHandle(), + 0, + touchPadDevice, + QTest::QTouchEventSequence::touchPointList(rawTouchPoints)); + QCoreApplication::processEvents(); QVERIFY(!touchWidget.seenTouchBegin); QVERIFY(!touchWidget.seenTouchUpdate); QVERIFY(!touchWidget.seenTouchEnd); @@ -1068,7 +1094,11 @@ void tst_QTouchEvent::multiPointRawEventTranslationOnTouchPad() rawTouchPoints[1].setState(Qt::TouchPointReleased); rawTouchPoints[1].setScreenPos(centerScreenPos); rawTouchPoints[1].setNormalizedPos(normalized(rawTouchPoints[1].pos(), screenGeometry)); - qt_translateRawTouchEvent(&touchWidget, touchPadDevice, rawTouchPoints, 0); + QWindowSystemInterface::handleTouchEvent(touchWidget.windowHandle(), + 0, + touchPadDevice, + QTest::QTouchEventSequence::touchPointList(rawTouchPoints)); + QCoreApplication::processEvents(); QVERIFY(!touchWidget.seenTouchBegin); QVERIFY(!touchWidget.seenTouchUpdate); QVERIFY(!touchWidget.seenTouchEnd); @@ -1326,20 +1356,32 @@ void tst_QTouchEvent::deleteInRawEventTranslation() rawTouchPoints[2].setNormalizedPos(normalized(rawTouchPoints[2].pos(), screenGeometry)); // generate begin events on all widgets, the left widget should die - qt_translateRawTouchEvent(&touchWidget, touchScreenDevice, rawTouchPoints, 0); + QWindowSystemInterface::handleTouchEvent(touchWidget.windowHandle(), + 0, + touchScreenDevice, + QTest::QTouchEventSequence::touchPointList(rawTouchPoints)); + QCoreApplication::processEvents(); QVERIFY(pl.isNull() && !pc.isNull() && !pr.isNull()); // generate update events on all widget, the center widget should die rawTouchPoints[0].setState(Qt::TouchPointMoved); rawTouchPoints[1].setState(Qt::TouchPointMoved); rawTouchPoints[2].setState(Qt::TouchPointMoved); - qt_translateRawTouchEvent(&touchWidget, touchScreenDevice, rawTouchPoints, 0); + QWindowSystemInterface::handleTouchEvent(touchWidget.windowHandle(), + 0, + touchScreenDevice, + QTest::QTouchEventSequence::touchPointList(rawTouchPoints)); + QCoreApplication::processEvents(); // generate end events on all widget, the right widget should die rawTouchPoints[0].setState(Qt::TouchPointReleased); rawTouchPoints[1].setState(Qt::TouchPointReleased); rawTouchPoints[2].setState(Qt::TouchPointReleased); - qt_translateRawTouchEvent(&touchWidget, touchScreenDevice, rawTouchPoints, 0); + QWindowSystemInterface::handleTouchEvent(touchWidget.windowHandle(), + 0, + touchScreenDevice, + QTest::QTouchEventSequence::touchPointList(rawTouchPoints)); + QCoreApplication::processEvents(); } void tst_QTouchEvent::crashInQGraphicsSceneAfterNotHandlingTouchBegin() @@ -1390,12 +1432,12 @@ void tst_QTouchEvent::touchBeginWithGraphicsWidget() QTest::qWaitForWindowShown(&view); view.fitInView(scene.sceneRect()); - QTest::touchEvent(static_cast(0), touchScreenDevice) + QTest::touchEvent(&view, touchScreenDevice) .press(0, view.mapFromScene(root->mapToScene(3,3)), view.viewport()); - QTest::touchEvent(static_cast(0), touchScreenDevice) + QTest::touchEvent(&view, touchScreenDevice) .stationary(0) .press(1, view.mapFromScene(root->mapToScene(6,6)), view.viewport()); - QTest::touchEvent(static_cast(0), touchScreenDevice) + QTest::touchEvent(&view, touchScreenDevice) .release(0, view.mapFromScene(root->mapToScene(3,3)), view.viewport()) .release(1, view.mapFromScene(root->mapToScene(6,6)), view.viewport()); @@ -1407,12 +1449,12 @@ void tst_QTouchEvent::touchBeginWithGraphicsWidget() root->reset(); glassWidget->setWindowFlags(Qt::Window); // make the glassWidget a panel - QTest::touchEvent(static_cast(0), touchScreenDevice) + QTest::touchEvent(&view, touchScreenDevice) .press(0, view.mapFromScene(root->mapToScene(3,3)), view.viewport()); - QTest::touchEvent(static_cast(0), touchScreenDevice) + QTest::touchEvent(&view, touchScreenDevice) .stationary(0) .press(1, view.mapFromScene(root->mapToScene(6,6)), view.viewport()); - QTest::touchEvent(static_cast(0), touchScreenDevice) + QTest::touchEvent(&view, touchScreenDevice) .release(0, view.mapFromScene(root->mapToScene(3,3)), view.viewport()) .release(1, view.mapFromScene(root->mapToScene(6,6)), view.viewport()); @@ -1425,6 +1467,143 @@ void tst_QTouchEvent::touchBeginWithGraphicsWidget() delete glassWidget; } +class WindowTouchEventFilter : public QObject +{ + Q_OBJECT +public: + bool eventFilter(QObject *obj, QEvent *event); + struct TouchInfo { + QList points; + QEvent::Type lastSeenType; + }; + QMap d; +}; + +bool WindowTouchEventFilter::eventFilter(QObject *, QEvent *event) +{ + if (event->type() == QEvent::TouchBegin + || event->type() == QEvent::TouchUpdate + || event->type() == QEvent::TouchEnd) { + QTouchEvent *te = static_cast(event); + TouchInfo &td = d[te->device()]; + if (event->type() == QEvent::TouchBegin) + td.points.clear(); + td.points.append(te->touchPoints()); + td.lastSeenType = event->type(); + } + return false; +} + +void tst_QTouchEvent::testQGuiAppDelivery() +{ + QTouchDevice *device = new QTouchDevice; + device->setType(QTouchDevice::TouchScreen); + QWindowSystemInterface::registerTouchDevice(device); + + QWindow *w = new QWindow; + w->setGeometry(100, 100, 100, 100); + w->show(); + QTest::qWaitForWindowShown(w); + + WindowTouchEventFilter filter; + w->installEventFilter(&filter); + + QList points; + + // Pass empty list, should be ignored. + QWindowSystemInterface::handleTouchEvent(w, 0, points); + QCoreApplication::processEvents(); + QCOMPARE(filter.d.isEmpty(), true); + + QWindowSystemInterface::TouchPoint tp; + tp.id = 0; + tp.state = Qt::TouchPointPressed; + tp.area = QRectF(120, 120, 20, 20); + points.append(tp); + + // Pass 0 as device, should be ignored. + QWindowSystemInterface::handleTouchEvent(w, 0, points); + QCoreApplication::processEvents(); + QCOMPARE(filter.d.isEmpty(), true); + + // Now the real thing. + QWindowSystemInterface::handleTouchEvent(w, device, points); // TouchBegin + QCoreApplication::processEvents(); + QCOMPARE(filter.d.count(), 1); + QCOMPARE(filter.d.contains(device), true); + QCOMPARE(filter.d.value(device).points.count(), 1); + QCOMPARE(filter.d.value(device).lastSeenType, QEvent::TouchBegin); + + points[0].state = Qt::TouchPointMoved; + QWindowSystemInterface::handleTouchEvent(w, device, points); // TouchUpdate + QCoreApplication::processEvents(); + QCOMPARE(filter.d.count(), 1); + QCOMPARE(filter.d.contains(device), true); + QCOMPARE(filter.d.value(device).points.count(), 2); + QCOMPARE(filter.d.value(device).lastSeenType, QEvent::TouchUpdate); + + points[0].state = Qt::TouchPointReleased; + QWindowSystemInterface::handleTouchEvent(w, device, points); // TouchEnd + QCoreApplication::processEvents(); + QCOMPARE(filter.d.count(), 1); + QCOMPARE(filter.d.contains(device), true); + QCOMPARE(filter.d.value(device).points.count(), 3); + QCOMPARE(filter.d.value(device).lastSeenType, QEvent::TouchEnd); +} + +void tst_QTouchEvent::testMultiDevice() +{ + QTouchDevice *deviceOne = new QTouchDevice; + deviceOne->setType(QTouchDevice::TouchScreen); + QWindowSystemInterface::registerTouchDevice(deviceOne); + QTouchDevice *deviceTwo = new QTouchDevice; + deviceTwo->setType(QTouchDevice::TouchScreen); + QWindowSystemInterface::registerTouchDevice(deviceTwo); + + QWindow *w = new QWindow; + w->setGeometry(100, 100, 100, 100); + w->show(); + QTest::qWaitForWindowShown(w); + + WindowTouchEventFilter filter; + w->installEventFilter(&filter); + + QList pointsOne, pointsTwo; + + // deviceOne reports a single point, deviceTwo reports the beginning of a multi-point sequence. + // Even though there is a point with id 0 for both devices, they should be delivered cleanly, independently. + QWindowSystemInterface::TouchPoint tp; + tp.id = 0; + tp.state = Qt::TouchPointPressed; + tp.area = QRectF(120, 120, 20, 20); + pointsOne.append(tp); + + pointsTwo.append(tp); + tp.id = 1; + tp.area = QRectF(140, 140, 20, 20); + pointsTwo.append(tp); + + QWindowSystemInterface::handleTouchEvent(w, deviceOne, pointsOne); + QWindowSystemInterface::handleTouchEvent(w, deviceTwo, pointsTwo); + QCoreApplication::processEvents(); + + QCOMPARE(filter.d.contains(deviceOne), true); + QCOMPARE(filter.d.contains(deviceTwo), true); + + QCOMPARE(filter.d.value(deviceOne).lastSeenType, QEvent::TouchBegin); + QCOMPARE(filter.d.value(deviceTwo).lastSeenType, QEvent::TouchBegin); + QCOMPARE(filter.d.value(deviceOne).points.count(), 1); + QCOMPARE(filter.d.value(deviceTwo).points.count(), 2); + + QCOMPARE(filter.d.value(deviceOne).points.at(0).screenRect(), pointsOne[0].area); + QCOMPARE(filter.d.value(deviceOne).points.at(0).state(), pointsOne[0].state); + + QCOMPARE(filter.d.value(deviceTwo).points.at(0).screenRect(), pointsTwo[0].area); + QCOMPARE(filter.d.value(deviceTwo).points.at(0).state(), pointsTwo[0].state); + QCOMPARE(filter.d.value(deviceTwo).points.at(1).screenRect(), pointsTwo[1].area); + QCOMPARE(filter.d.value(deviceTwo).points.at(1).state(), pointsTwo[1].state); +} + QTEST_MAIN(tst_QTouchEvent) #include "tst_qtouchevent.moc" diff --git a/tests/auto/widgets/kernel/qapplication/tst_qapplication.cpp b/tests/auto/widgets/kernel/qapplication/tst_qapplication.cpp index 81cdffe4e5..4de05e1b98 100644 --- a/tests/auto/widgets/kernel/qapplication/tst_qapplication.cpp +++ b/tests/auto/widgets/kernel/qapplication/tst_qapplication.cpp @@ -1941,23 +1941,52 @@ void tst_QApplication::touchEventPropagation() // touch event behavior on a window TouchEventPropagationTestWidget window; window.setObjectName("1. window"); - - qt_translateRawTouchEvent(&window, device, pressedTouchPoints, 0); - qt_translateRawTouchEvent(&window, device, releasedTouchPoints, 0); + window.show(); // Must have an explicitly specified QWindow for handleTouchEvent, + // passing 0 would result in using topLevelAt() which is not ok in this case + // as the screen position in the point is bogus. + QTest::qWaitForWindowShown(&window); + // QPA always takes screen positions and since we map the TouchPoint back to QPA's structure first, + // we must ensure there is a screen position in the TouchPoint that maps to a local 0, 0. + pressedTouchPoints[0].setScreenPos(window.mapToGlobal(QPoint(0, 0))); + releasedTouchPoints[0].setScreenPos(window.mapToGlobal(QPoint(0, 0))); + + QWindowSystemInterface::handleTouchEvent(window.windowHandle(), + 0, + device, + QTest::QTouchEventSequence::touchPointList(pressedTouchPoints)); + QWindowSystemInterface::handleTouchEvent(window.windowHandle(), + 0, + device, + QTest::QTouchEventSequence::touchPointList(releasedTouchPoints)); + QCoreApplication::processEvents(); QVERIFY(!window.seenTouchEvent); QVERIFY(!window.seenMouseEvent); window.reset(); window.setAttribute(Qt::WA_AcceptTouchEvents); - qt_translateRawTouchEvent(&window, device, pressedTouchPoints, 0); - qt_translateRawTouchEvent(&window, device, releasedTouchPoints, 0); + QWindowSystemInterface::handleTouchEvent(window.windowHandle(), + 0, + device, + QTest::QTouchEventSequence::touchPointList(pressedTouchPoints)); + QWindowSystemInterface::handleTouchEvent(window.windowHandle(), + 0, + device, + QTest::QTouchEventSequence::touchPointList(releasedTouchPoints)); + QCoreApplication::processEvents(); QVERIFY(window.seenTouchEvent); QVERIFY(!window.seenMouseEvent); window.reset(); window.acceptTouchEvent = true; - qt_translateRawTouchEvent(&window, device, pressedTouchPoints, 0); - qt_translateRawTouchEvent(&window, device, releasedTouchPoints, 0); + QWindowSystemInterface::handleTouchEvent(window.windowHandle(), + 0, + device, + QTest::QTouchEventSequence::touchPointList(pressedTouchPoints)); + QWindowSystemInterface::handleTouchEvent(window.windowHandle(), + 0, + device, + QTest::QTouchEventSequence::touchPointList(releasedTouchPoints)); + QCoreApplication::processEvents(); QVERIFY(window.seenTouchEvent); QVERIFY(!window.seenMouseEvent); } @@ -1968,9 +1997,20 @@ void tst_QApplication::touchEventPropagation() window.setObjectName("2. window"); TouchEventPropagationTestWidget widget(&window); widget.setObjectName("2. widget"); - - qt_translateRawTouchEvent(&window, device, pressedTouchPoints, 0); - qt_translateRawTouchEvent(&window, device, releasedTouchPoints, 0); + window.show(); + QTest::qWaitForWindowShown(&window); + pressedTouchPoints[0].setScreenPos(window.mapToGlobal(QPoint(0, 0))); + releasedTouchPoints[0].setScreenPos(window.mapToGlobal(QPoint(0, 0))); + + QWindowSystemInterface::handleTouchEvent(window.windowHandle(), + 0, + device, + QTest::QTouchEventSequence::touchPointList(pressedTouchPoints)); + QWindowSystemInterface::handleTouchEvent(window.windowHandle(), + 0, + device, + QTest::QTouchEventSequence::touchPointList(releasedTouchPoints)); + QCoreApplication::processEvents(); QVERIFY(!widget.seenTouchEvent); QVERIFY(!widget.seenMouseEvent); QVERIFY(!window.seenTouchEvent); @@ -1979,8 +2019,15 @@ void tst_QApplication::touchEventPropagation() window.reset(); widget.reset(); widget.setAttribute(Qt::WA_AcceptTouchEvents); - qt_translateRawTouchEvent(&window, device, pressedTouchPoints, 0); - qt_translateRawTouchEvent(&window, device, releasedTouchPoints, 0); + QWindowSystemInterface::handleTouchEvent(window.windowHandle(), + 0, + device, + QTest::QTouchEventSequence::touchPointList(pressedTouchPoints)); + QWindowSystemInterface::handleTouchEvent(window.windowHandle(), + 0, + device, + QTest::QTouchEventSequence::touchPointList(releasedTouchPoints)); + QCoreApplication::processEvents(); QVERIFY(widget.seenTouchEvent); QVERIFY(!widget.seenMouseEvent); QVERIFY(!window.seenTouchEvent); @@ -1989,8 +2036,15 @@ void tst_QApplication::touchEventPropagation() window.reset(); widget.reset(); widget.acceptMouseEvent = true; - qt_translateRawTouchEvent(&window, device, pressedTouchPoints, 0); - qt_translateRawTouchEvent(&window, device, releasedTouchPoints, 0); + QWindowSystemInterface::handleTouchEvent(window.windowHandle(), + 0, + device, + QTest::QTouchEventSequence::touchPointList(pressedTouchPoints)); + QWindowSystemInterface::handleTouchEvent(window.windowHandle(), + 0, + device, + QTest::QTouchEventSequence::touchPointList(releasedTouchPoints)); + QCoreApplication::processEvents(); QVERIFY(widget.seenTouchEvent); QVERIFY(!widget.seenMouseEvent); QVERIFY(!window.seenTouchEvent); @@ -1999,8 +2053,15 @@ void tst_QApplication::touchEventPropagation() window.reset(); widget.reset(); widget.acceptTouchEvent = true; - qt_translateRawTouchEvent(&window, device, pressedTouchPoints, 0); - qt_translateRawTouchEvent(&window, device, releasedTouchPoints, 0); + QWindowSystemInterface::handleTouchEvent(window.windowHandle(), + 0, + device, + QTest::QTouchEventSequence::touchPointList(pressedTouchPoints)); + QWindowSystemInterface::handleTouchEvent(window.windowHandle(), + 0, + device, + QTest::QTouchEventSequence::touchPointList(releasedTouchPoints)); + QCoreApplication::processEvents(); QVERIFY(widget.seenTouchEvent); QVERIFY(!widget.seenMouseEvent); QVERIFY(!window.seenTouchEvent); @@ -2010,8 +2071,15 @@ void tst_QApplication::touchEventPropagation() widget.reset(); widget.setAttribute(Qt::WA_AcceptTouchEvents, false); window.setAttribute(Qt::WA_AcceptTouchEvents); - qt_translateRawTouchEvent(&window, device, pressedTouchPoints, 0); - qt_translateRawTouchEvent(&window, device, releasedTouchPoints, 0); + QWindowSystemInterface::handleTouchEvent(window.windowHandle(), + 0, + device, + QTest::QTouchEventSequence::touchPointList(pressedTouchPoints)); + QWindowSystemInterface::handleTouchEvent(window.windowHandle(), + 0, + device, + QTest::QTouchEventSequence::touchPointList(releasedTouchPoints)); + QCoreApplication::processEvents(); QVERIFY(!widget.seenTouchEvent); QVERIFY(!widget.seenMouseEvent); QVERIFY(window.seenTouchEvent); @@ -2020,8 +2088,15 @@ void tst_QApplication::touchEventPropagation() window.reset(); widget.reset(); window.acceptTouchEvent = true; - qt_translateRawTouchEvent(&window, device, pressedTouchPoints, 0); - qt_translateRawTouchEvent(&window, device, releasedTouchPoints, 0); + QWindowSystemInterface::handleTouchEvent(window.windowHandle(), + 0, + device, + QTest::QTouchEventSequence::touchPointList(pressedTouchPoints)); + QWindowSystemInterface::handleTouchEvent(window.windowHandle(), + 0, + device, + QTest::QTouchEventSequence::touchPointList(releasedTouchPoints)); + QCoreApplication::processEvents(); QVERIFY(!widget.seenTouchEvent); QVERIFY(!widget.seenMouseEvent); QVERIFY(window.seenTouchEvent); @@ -2031,8 +2106,15 @@ void tst_QApplication::touchEventPropagation() widget.reset(); widget.acceptMouseEvent = true; // doesn't matter, touch events are propagated first window.acceptTouchEvent = true; - qt_translateRawTouchEvent(&window, device, pressedTouchPoints, 0); - qt_translateRawTouchEvent(&window, device, releasedTouchPoints, 0); + QWindowSystemInterface::handleTouchEvent(window.windowHandle(), + 0, + device, + QTest::QTouchEventSequence::touchPointList(pressedTouchPoints)); + QWindowSystemInterface::handleTouchEvent(window.windowHandle(), + 0, + device, + QTest::QTouchEventSequence::touchPointList(releasedTouchPoints)); + QCoreApplication::processEvents(); QVERIFY(!widget.seenTouchEvent); QVERIFY(!widget.seenMouseEvent); QVERIFY(window.seenTouchEvent); -- cgit v1.2.3 From cd44813bae38b75261a22e755e4e5fed7114751f Mon Sep 17 00:00:00 2001 From: Aurindam Jana Date: Tue, 13 Dec 2011 14:05:13 +0100 Subject: Update V8 Update V8 with fix for Issue 1853 (http://code.google.com/p/v8/issues/detail?id=1853) Change-Id: I10f652228ab1421b280b433eb2a59aeb83a7699f Reviewed-by: Kai Koehne Reviewed-by: Aaron Kennedy --- ...shing-and-comparison-methods-to-v8-String.patch | 8 +-- ...back-mode-for-named-property-interceptors.patch | 6 +- ...0003-Generalize-external-object-resources.patch | 6 +- src/v8/0004-Introduce-a-QML-compilation-mode.patch | 8 +-- ...5-Allow-access-to-the-calling-script-data.patch | 6 +- .../0006-Add-custom-object-compare-callback.patch | 6 +- ...07-Allow-a-script-to-be-flagged-as-native.patch | 6 +- ...-Add-new-v8-api-to-check-if-a-value-is-an.patch | 7 +-- src/v8/0009-Fix-deprecated-Python-code.patch | 6 +- .../0010-Remove-execute-flag-from-v8-debug.h.patch | 6 +- src/v8/0011-Fix-warnings.patch | 6 +- ...2-Add-flag-to-avoid-breakpoint-relocation.patch | 6 +- ...Update-ScriptBreakPoints-for-ScriptRegExp.patch | 68 ++++++++++++++++++++++ 13 files changed, 106 insertions(+), 39 deletions(-) create mode 100644 src/v8/0013-Update-ScriptBreakPoints-for-ScriptRegExp.patch diff --git a/src/v8/0001-Add-hashing-and-comparison-methods-to-v8-String.patch b/src/v8/0001-Add-hashing-and-comparison-methods-to-v8-String.patch index cb9f4a255c..dd6374a9cb 100644 --- a/src/v8/0001-Add-hashing-and-comparison-methods-to-v8-String.patch +++ b/src/v8/0001-Add-hashing-and-comparison-methods-to-v8-String.patch @@ -1,7 +1,7 @@ -From 0a86a97f554c4aaa727da1c4481ca6368c68bf85 Mon Sep 17 00:00:00 2001 +From d97195f011cdaa8b859d759f8a34dd50c3092f30 Mon Sep 17 00:00:00 2001 From: Aaron Kennedy Date: Tue, 4 Oct 2011 15:04:21 +1000 -Subject: [PATCH 01/12] Add hashing and comparison methods to v8::String +Subject: [PATCH 01/13] Add hashing and comparison methods to v8::String This allows us to more rapidly search for a v8::String inside a hash of QStrings. @@ -303,7 +303,7 @@ index 9a87ac5..2946d02 100644 class SubStringAsciiSymbolKey : public HashTableKey { diff --git a/src/objects.h b/src/objects.h -index f7d21802..d96e5f9 100644 +index f7d2180..d96e5f9 100644 --- a/src/objects.h +++ b/src/objects.h @@ -6201,6 +6201,9 @@ class String: public HeapObject { @@ -332,5 +332,5 @@ index f7d21802..d96e5f9 100644 private: DISALLOW_IMPLICIT_CONSTRUCTORS(SeqString); -- -1.7.7.3 +1.7.4.1 diff --git a/src/v8/0002-Add-a-fallback-mode-for-named-property-interceptors.patch b/src/v8/0002-Add-a-fallback-mode-for-named-property-interceptors.patch index 35db5c2ca5..7ee05caea2 100644 --- a/src/v8/0002-Add-a-fallback-mode-for-named-property-interceptors.patch +++ b/src/v8/0002-Add-a-fallback-mode-for-named-property-interceptors.patch @@ -1,7 +1,7 @@ -From 20eca1d4ce4c56b599a052d496f4660f9ca9c978 Mon Sep 17 00:00:00 2001 +From e30b202d683e36731d9674ebf75803990a33816e Mon Sep 17 00:00:00 2001 From: Aaron Kennedy Date: Thu, 27 Oct 2011 11:31:56 +0100 -Subject: [PATCH 02/12] Add a "fallback" mode for named property interceptors +Subject: [PATCH 02/13] Add a "fallback" mode for named property interceptors By default interceptors are called before the normal property resolution on objects. When an interceptor is installed as a @@ -357,5 +357,5 @@ index 9c23c2c..0e256c1 100644 return isolate->heap()->undefined_value(); } -- -1.7.7.3 +1.7.4.1 diff --git a/src/v8/0003-Generalize-external-object-resources.patch b/src/v8/0003-Generalize-external-object-resources.patch index ba384a62ee..580b8f0f24 100644 --- a/src/v8/0003-Generalize-external-object-resources.patch +++ b/src/v8/0003-Generalize-external-object-resources.patch @@ -1,7 +1,7 @@ -From 74974cee335e6c22ea99fd9a4bbb9c7fa7323d80 Mon Sep 17 00:00:00 2001 +From 501255df9cb6241a1f6c8d8a3361b9582fa481ef Mon Sep 17 00:00:00 2001 From: Aaron Kennedy Date: Tue, 4 Oct 2011 16:06:09 +1000 -Subject: [PATCH 03/12] Generalize external object resources +Subject: [PATCH 03/13] Generalize external object resources V8 was already able to manage and finalize an external string resource. This change generalizes that mechanism to handle a @@ -591,5 +591,5 @@ index ed40061..c38d461 100644 -- -1.7.7.3 +1.7.4.1 diff --git a/src/v8/0004-Introduce-a-QML-compilation-mode.patch b/src/v8/0004-Introduce-a-QML-compilation-mode.patch index 712c710df2..84823ca4a7 100644 --- a/src/v8/0004-Introduce-a-QML-compilation-mode.patch +++ b/src/v8/0004-Introduce-a-QML-compilation-mode.patch @@ -1,7 +1,7 @@ -From ae1c497cf2235df9d73d3c5d3c2b40bcde7e534f Mon Sep 17 00:00:00 2001 +From c49c39afa016b176c933ff01e748a2eddb26e131 Mon Sep 17 00:00:00 2001 From: Aaron Kennedy Date: Thu, 27 Oct 2011 13:34:16 +0100 -Subject: [PATCH 04/12] Introduce a QML compilation mode +Subject: [PATCH 04/13] Introduce a QML compilation mode In QML mode, there is a second global object - known as the QML global object. During property resolution, if a property is not @@ -2058,7 +2058,7 @@ index 3167c4d..6503d07 100644 case DYNAMIC_LOOKUP: diff --git a/src/scopes.h b/src/scopes.h -index a1418874..41e5f5c 100644 +index a141887..41e5f5c 100644 --- a/src/scopes.h +++ b/src/scopes.h @@ -228,6 +228,11 @@ class Scope: public ZoneObject { @@ -2351,5 +2351,5 @@ index f5f81b1..5caa6cf 100644 static inline Operand StackSpaceOperand(int index) { #ifdef _WIN64 -- -1.7.7.3 +1.7.4.1 diff --git a/src/v8/0005-Allow-access-to-the-calling-script-data.patch b/src/v8/0005-Allow-access-to-the-calling-script-data.patch index 3c41a036ee..596e9573fc 100644 --- a/src/v8/0005-Allow-access-to-the-calling-script-data.patch +++ b/src/v8/0005-Allow-access-to-the-calling-script-data.patch @@ -1,7 +1,7 @@ -From d01b0fc24542eb6128bcbd3a8a02da9659b8433e Mon Sep 17 00:00:00 2001 +From 2081f6baaab81d60564680de600b4dcf03de6cd4 Mon Sep 17 00:00:00 2001 From: Aaron Kennedy Date: Fri, 14 Oct 2011 17:03:06 +1000 -Subject: [PATCH 05/12] Allow access to the calling script data +Subject: [PATCH 05/13] Allow access to the calling script data --- include/v8.h | 1 + @@ -44,5 +44,5 @@ index 2d3d97a..54df40d 100644 v8::Local Context::Global() { if (IsDeadCheck(i::Isolate::Current(), "v8::Context::Global()")) { -- -1.7.7.3 +1.7.4.1 diff --git a/src/v8/0006-Add-custom-object-compare-callback.patch b/src/v8/0006-Add-custom-object-compare-callback.patch index 51c933580f..0ffe0b6dfc 100644 --- a/src/v8/0006-Add-custom-object-compare-callback.patch +++ b/src/v8/0006-Add-custom-object-compare-callback.patch @@ -1,7 +1,7 @@ -From 59b3da4073971aa725eea8f303f37948dc3bb376 Mon Sep 17 00:00:00 2001 +From d2d3c19a32e2f7a5586811bb10ea75a79a11f52f Mon Sep 17 00:00:00 2001 From: Aaron Kennedy Date: Thu, 27 Oct 2011 13:40:00 +0100 -Subject: [PATCH 06/12] Add custom object compare callback +Subject: [PATCH 06/13] Add custom object compare callback A global custom object comparison callback can be set with: V8::SetUserObjectComparisonCallbackFunction() @@ -544,5 +544,5 @@ index f30221f..ff8337f 100644 ASSERT(GetCondition() == equal); __ subq(rax, rdx); -- -1.7.7.3 +1.7.4.1 diff --git a/src/v8/0007-Allow-a-script-to-be-flagged-as-native.patch b/src/v8/0007-Allow-a-script-to-be-flagged-as-native.patch index b6380b1b8e..e3b65f5ee2 100644 --- a/src/v8/0007-Allow-a-script-to-be-flagged-as-native.patch +++ b/src/v8/0007-Allow-a-script-to-be-flagged-as-native.patch @@ -1,7 +1,7 @@ -From 519fec2ddc92193760dc2a6599f91ff4eb11563c Mon Sep 17 00:00:00 2001 +From 1ecd533461383671ea465b37f2cad84a0aad3d52 Mon Sep 17 00:00:00 2001 From: Aaron Kennedy Date: Fri, 9 Sep 2011 14:16:12 +1000 -Subject: [PATCH 07/12] Allow a script to be flagged as "native" +Subject: [PATCH 07/13] Allow a script to be flagged as "native" Native scripts do not appear in backtraces, or in the source and line number when exceptions are thrown from within them. This is @@ -42,5 +42,5 @@ index 4902e72..cabca74 100644 } if (!script_name.is_null()) { -- -1.7.7.3 +1.7.4.1 diff --git a/src/v8/0008-QtScript-V8-Add-new-v8-api-to-check-if-a-value-is-an.patch b/src/v8/0008-QtScript-V8-Add-new-v8-api-to-check-if-a-value-is-an.patch index 5e36024232..8c072d901e 100644 --- a/src/v8/0008-QtScript-V8-Add-new-v8-api-to-check-if-a-value-is-an.patch +++ b/src/v8/0008-QtScript-V8-Add-new-v8-api-to-check-if-a-value-is-an.patch @@ -1,8 +1,7 @@ -From de3e14564f163d808a3d10397a3018e6aaeb727b Mon Sep 17 00:00:00 2001 +From c7850561fcdf333a5b80a50623c7d4507757b315 Mon Sep 17 00:00:00 2001 From: Jedrzej Nowacki Date: Tue, 7 Dec 2010 11:56:42 +0100 -Subject: [PATCH 08/12] QtScript/V8: Add new v8 api to check if a value is an - error. +Subject: [PATCH 08/13] QtScript/V8: Add new v8 api to check if a value is an error. New function v8::Value::IsError was created. @@ -60,5 +59,5 @@ index 5e90964..6166cde 100644 V(to_string_symbol, "toString") \ V(char_at_symbol, "CharAt") \ -- -1.7.7.3 +1.7.4.1 diff --git a/src/v8/0009-Fix-deprecated-Python-code.patch b/src/v8/0009-Fix-deprecated-Python-code.patch index c0ca24a9ff..2c34e20321 100644 --- a/src/v8/0009-Fix-deprecated-Python-code.patch +++ b/src/v8/0009-Fix-deprecated-Python-code.patch @@ -1,7 +1,7 @@ -From 7084bd94a99db246baa4f1d050a6f23cfd6adc14 Mon Sep 17 00:00:00 2001 +From 4a9995fd141e40df2493dc2ef12d91f0a946629a Mon Sep 17 00:00:00 2001 From: Kent Hansen Date: Fri, 2 Sep 2011 12:03:09 +0200 -Subject: [PATCH 09/12] Fix deprecated Python code +Subject: [PATCH 09/13] Fix deprecated Python code Needed to make the scripts run on Python 3, which is the default python interpreter on some newer distros. @@ -47,5 +47,5 @@ index 646bf14..395441b 100644 if identifier_second_char != 0: new_identifier = ( -- -1.7.7.3 +1.7.4.1 diff --git a/src/v8/0010-Remove-execute-flag-from-v8-debug.h.patch b/src/v8/0010-Remove-execute-flag-from-v8-debug.h.patch index 243692e9ee..92ef7af9cd 100644 --- a/src/v8/0010-Remove-execute-flag-from-v8-debug.h.patch +++ b/src/v8/0010-Remove-execute-flag-from-v8-debug.h.patch @@ -1,7 +1,7 @@ -From 04779c9a6f99fc097af68cf75a27b1d6a76c3e9d Mon Sep 17 00:00:00 2001 +From 8498e4b40d8355aa51dd8f4641dd1fdd4704e7bd Mon Sep 17 00:00:00 2001 From: Aaron Kennedy Date: Thu, 25 Aug 2011 11:09:58 +1000 -Subject: [PATCH 10/12] Remove execute flag from v8-debug.h +Subject: [PATCH 10/13] Remove execute flag from v8-debug.h --- 0 files changed, 0 insertions(+), 0 deletions(-) @@ -11,5 +11,5 @@ diff --git a/include/v8-debug.h b/include/v8-debug.h old mode 100755 new mode 100644 -- -1.7.7.3 +1.7.4.1 diff --git a/src/v8/0011-Fix-warnings.patch b/src/v8/0011-Fix-warnings.patch index 39b5438e23..40261df358 100644 --- a/src/v8/0011-Fix-warnings.patch +++ b/src/v8/0011-Fix-warnings.patch @@ -1,7 +1,7 @@ -From eb7bb4628dc4480210818e371934a76ae1f7fb91 Mon Sep 17 00:00:00 2001 +From 6643bd52181d51570bb1f9806dd06ff3b66c4251 Mon Sep 17 00:00:00 2001 From: Aaron Kennedy Date: Fri, 27 May 2011 13:04:15 +1000 -Subject: [PATCH 11/12] Fix warnings +Subject: [PATCH 11/13] Fix warnings --- include/v8.h | 16 ++++++++-------- @@ -42,5 +42,5 @@ index d995e54..a7b5c8a 100644 } // namespace internal -- -1.7.7.3 +1.7.4.1 diff --git a/src/v8/0012-Add-flag-to-avoid-breakpoint-relocation.patch b/src/v8/0012-Add-flag-to-avoid-breakpoint-relocation.patch index 922b011776..0b6895657d 100644 --- a/src/v8/0012-Add-flag-to-avoid-breakpoint-relocation.patch +++ b/src/v8/0012-Add-flag-to-avoid-breakpoint-relocation.patch @@ -1,7 +1,7 @@ -From d28b6a024826aaa48a8b3e69c096d01c91aff2c9 Mon Sep 17 00:00:00 2001 +From f37d702159f3e606610b74fb2b56ece63d510a6e Mon Sep 17 00:00:00 2001 From: Kai Koehne Date: Thu, 10 Nov 2011 16:00:37 +0100 -Subject: [PATCH 12/12] Add flag to avoid breakpoint relocation +Subject: [PATCH 12/13] Add flag to avoid breakpoint relocation Add a flag that prevents v8 from relocating breakpoints across line boundaries. @@ -143,5 +143,5 @@ index cf723ba..7e51c34 100644 // Test that it is possible to remove the last break point for a function // inside the break handling of that break point. -- -1.7.7.3 +1.7.4.1 diff --git a/src/v8/0013-Update-ScriptBreakPoints-for-ScriptRegExp.patch b/src/v8/0013-Update-ScriptBreakPoints-for-ScriptRegExp.patch new file mode 100644 index 0000000000..2945ff5f07 --- /dev/null +++ b/src/v8/0013-Update-ScriptBreakPoints-for-ScriptRegExp.patch @@ -0,0 +1,68 @@ +From f02e75f4f2fdffcac78317dff38c6ca6e679cf5c Mon Sep 17 00:00:00 2001 +From: Aurindam Jana +Date: Tue, 13 Dec 2011 13:43:23 +0100 +Subject: [PATCH 13/13] Update ScriptBreakPoints for ScriptRegExp + +Update breakpoints of type ScriptRegExpwhen a new script +is compiled. Solves Issue 1853 +(http://code.google.com/p/v8/issues/detail?id=1853) + +Reviewed-by: aaron.kennedy@nokia.com +--- + src/debug-debugger.js | 3 ++- + test/mjsunit/debug-setbreakpoint.js | 12 ++++++++++-- + 2 files changed, 12 insertions(+), 3 deletions(-) + +diff --git a/src/debug-debugger.js b/src/debug-debugger.js +index d254ee5..6f80a8b 100644 +--- a/src/debug-debugger.js ++++ b/src/debug-debugger.js +@@ -477,7 +477,8 @@ ScriptBreakPoint.prototype.clear = function () { + // break points set in this script. + function UpdateScriptBreakPoints(script) { + for (var i = 0; i < script_break_points.length; i++) { +- if (script_break_points[i].type() == Debug.ScriptBreakPointType.ScriptName && ++ if ((script_break_points[i].type() == Debug.ScriptBreakPointType.ScriptName || ++ script_break_points[i].type() == Debug.ScriptBreakPointType.ScriptRegExp) && + script_break_points[i].matchesScript(script)) { + script_break_points[i].set(script); + } +diff --git a/test/mjsunit/debug-setbreakpoint.js b/test/mjsunit/debug-setbreakpoint.js +index 90dfcd1..03ba28e 100644 +--- a/test/mjsunit/debug-setbreakpoint.js ++++ b/test/mjsunit/debug-setbreakpoint.js +@@ -49,14 +49,17 @@ function safeEval(code) { + } + } + +-function testArguments(dcp, arguments, success, is_script) { ++function testArguments(dcp, arguments, success, is_script, is_script_reg_exp) { + var request = '{' + base_request + ',"arguments":' + arguments + '}' + var json_response = dcp.processDebugJSONRequest(request); + var response = safeEval(json_response); + if (success) { + assertTrue(response.success, request + ' -> ' + json_response); + if (is_script) { +- assertEquals('scriptName', response.body.type, request + ' -> ' + json_response); ++ if (is_script_reg_exp) ++ assertEquals('scriptRegExp', response.body.type, request + ' -> ' + json_response); ++ else ++ assertEquals('scriptName', response.body.type, request + ' -> ' + json_response); + } else { + assertEquals('scriptId', response.body.type, request + ' -> ' + json_response); + } +@@ -108,6 +111,11 @@ function listener(event, exec_state, event_data, data) { + testArguments(dcp, '{"type":"script","target":"test","line":1}', true, true); + testArguments(dcp, '{"type":"script","target":"test","column":1}', true, true); + ++ testArguments(dcp, '{"type":"scriptRegExp","target":"test"}', true, true, true); ++ testArguments(dcp, '{"type":"scriptRegExp","target":"test"}', true, true, true); ++ testArguments(dcp, '{"type":"scriptRegExp","target":"test","line":1}', true, true, true); ++ testArguments(dcp, '{"type":"scriptRegExp","target":"test","column":1}', true, true, true); ++ + testArguments(dcp, '{"type":"scriptId","target":' + f_script_id + ',"line":' + f_line + '}', true, false); + testArguments(dcp, '{"type":"scriptId","target":' + g_script_id + ',"line":' + g_line + '}', true, false); + testArguments(dcp, '{"type":"scriptId","target":' + h_script_id + ',"line":' + h_line + '}', true, false); +-- +1.7.4.1 + -- cgit v1.2.3 From eeade8bf9ce89a05b459790406763f409f9449e6 Mon Sep 17 00:00:00 2001 From: Aaron Kennedy Date: Wed, 14 Dec 2011 14:35:37 +0000 Subject: Update V8 to match current patchset Change-Id: Ib3a093129b1f8bbe66fc870af8871dea3f58c081 Reviewed-by: Aurindam Jana --- src/3rdparty/v8 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/3rdparty/v8 b/src/3rdparty/v8 index d28b6a0248..a07f617da0 160000 --- a/src/3rdparty/v8 +++ b/src/3rdparty/v8 @@ -1 +1 @@ -Subproject commit d28b6a024826aaa48a8b3e69c096d01c91aff2c9 +Subproject commit a07f617da094b83b7a9e5b2d37e8bf9172c61109 -- cgit v1.2.3 From f86007175d7d9d592e9cf6499704ad4f17944ce4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thorbj=C3=B8rn=20Lund=20Martsum?= Date: Sun, 11 Dec 2011 20:28:01 +0100 Subject: QHeaderView::ResizeToContents slow hide fix I have been a bit confused about what QHeaderView::ResizeToContents does good. It only sizes depending of the visible part. However in hide it goes crazy and checks calculates size hints for every row. At first I considered to solve it in QTableView. It could be made to calculate the maximum height of the maximum screen - however I decided not to touch it since I was not certain that it wouldn't have any unexpected side effects. Therefore I instead made this patch which is more simple and seems to be safer. The logic is that when a QHeaderView is hidden we actually only want to recalculate sizes if the headerview has a visible parent. Task-number: QTBUG-14234 Change-Id: I186ab6afa95aed43022f2bb7c36e3fd008355d9b Reviewed-by: Stephen Kelly --- src/widgets/itemviews/qheaderview.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/widgets/itemviews/qheaderview.cpp b/src/widgets/itemviews/qheaderview.cpp index 36784f6424..8ecbdeb8bd 100644 --- a/src/widgets/itemviews/qheaderview.cpp +++ b/src/widgets/itemviews/qheaderview.cpp @@ -2405,7 +2405,13 @@ bool QHeaderView::viewportEvent(QEvent *e) } return true; } #endif // QT_NO_STATUSTIP - case QEvent::Hide: + case QEvent::Hide: { + d->invalidateCachedSizeHint(); + QAbstractScrollArea *parent = qobject_cast(parentWidget()); + if (parent && parent->isVisible()) // Only resize if we have a visible parent + resizeSections(); + emit geometriesChanged(); + break;} case QEvent::Show: case QEvent::FontChange: case QEvent::StyleChange: -- cgit v1.2.3 From 56c4ddfdf62ff6b71ce3df680bdaca01012e13f4 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Wed, 23 Nov 2011 12:04:01 +0100 Subject: QPlatformDialogHelpers: Reduce dependency on QDialog. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit For each QDialog-derived class, introduce a Q[X]Options class containing the options of the dialog. An instance is shared between the QDialog (or dialog desktop component) and the helper. Change-Id: Ibabf508a4b9eaea25615638a47a4c1b8f93c019e Reviewed-by: Morten Johan Sørvig --- .../platforms/cocoa/qcocoafiledialoghelper.h | 5 +- .../platforms/cocoa/qcocoafiledialoghelper.mm | 156 +++---- .../platforms/windows/qwindowsdialoghelpers.cpp | 140 ++++--- .../platforms/windows/qwindowsdialoghelpers.h | 7 +- src/widgets/dialogs/qcolordialog.cpp | 106 ++--- src/widgets/dialogs/qcolordialog_p.h | 8 +- src/widgets/dialogs/qdialog.cpp | 25 +- src/widgets/dialogs/qdialog.h | 2 +- src/widgets/dialogs/qdialog_p.h | 3 + src/widgets/dialogs/qfiledialog.cpp | 239 ++++++----- src/widgets/dialogs/qfiledialog_p.h | 32 +- src/widgets/dialogs/qfontdialog.cpp | 20 +- src/widgets/dialogs/qfontdialog_p.h | 6 +- src/widgets/kernel/qplatformdialoghelper_qpa.cpp | 466 +++++++++++++++++++++ src/widgets/kernel/qplatformdialoghelper_qpa.h | 187 ++++++++- 15 files changed, 1042 insertions(+), 360 deletions(-) diff --git a/src/plugins/platforms/cocoa/qcocoafiledialoghelper.h b/src/plugins/platforms/cocoa/qcocoafiledialoghelper.h index c5c40c69a1..4204de22c9 100644 --- a/src/plugins/platforms/cocoa/qcocoafiledialoghelper.h +++ b/src/plugins/platforms/cocoa/qcocoafiledialoghelper.h @@ -62,7 +62,7 @@ public: bool defaultNameFilterDisables() const; void deleteNativeDialog_sys(); - bool show_sys(QWindow *parent); + bool show_sys(ShowFlags flags, Qt::WindowFlags windowFlags, QWindow *parent); void hide_sys(); QPlatformFileDialogHelper::DialogCode dialogResultCode_sys(); void setDirectory_sys(const QString &directory); @@ -70,12 +70,11 @@ public: void selectFile_sys(const QString &filename); QStringList selectedFiles_sys() const; void setFilter_sys(); - void setNameFilters_sys(const QStringList &filters); void selectNameFilter_sys(const QString &filter); QString selectedNameFilter_sys() const; public: - bool showCocoaFilePanel(); + bool showCocoaFilePanel(QWindow *parent); bool hideCocoaFilePanel(); void createNSOpenSavePanelDelegate(); diff --git a/src/plugins/platforms/cocoa/qcocoafiledialoghelper.mm b/src/plugins/platforms/cocoa/qcocoafiledialoghelper.mm index 820a5dcbd0..e7f6b8b54f 100644 --- a/src/plugins/platforms/cocoa/qcocoafiledialoghelper.mm +++ b/src/plugins/platforms/cocoa/qcocoafiledialoghelper.mm @@ -72,8 +72,11 @@ QT_FORWARD_DECLARE_CLASS(QStringList) QT_FORWARD_DECLARE_CLASS(QWidget) QT_FORWARD_DECLARE_CLASS(QAction) QT_FORWARD_DECLARE_CLASS(QFileInfo) +QT_FORWARD_DECLARE_CLASS(QWindow) QT_USE_NAMESPACE +typedef QSharedPointer SharedPointerFileDialogOptions; + @class QT_MANGLE_NAMESPACE(QNSOpenSavePanelDelegate); @interface QT_MANGLE_NAMESPACE(QNSOpenSavePanelDelegate) @@ -92,14 +95,10 @@ QT_USE_NAMESPACE QFileDialog *mFileDialog; QCocoaFileDialogHelper *mHelper; NSString *mCurrentDir; - bool mConfirmOverwrite; - int mReturnCode; - QT_PREPEND_NAMESPACE(QFileDialog::AcceptMode) mAcceptMode; - QT_PREPEND_NAMESPACE(QDir::Filters) *mQDirFilter; - QT_PREPEND_NAMESPACE(QFileDialog::FileMode) mFileMode; - QT_PREPEND_NAMESPACE(QFileDialog::Options) *mFileOptions; + int mReturnCode; + SharedPointerFileDialogOptions mOptions; QString *mLastFilterCheckPath; QString *mCurrentSelection; QStringList *mQDirFilterEntryList; @@ -112,7 +111,7 @@ QT_USE_NAMESPACE - (void)filterChanged:(id)sender; - (void)showModelessPanel; - (BOOL)runApplicationModalPanel; -- (void)showWindowModalSheet:(QWidget *)docWidget; +- (void)showWindowModalSheet:(QWindow *)docWidget; - (void)updateProperties; - (QStringList)acceptableExtensionsForSave; - (QString)removeExtensions:(const QString &)filter; @@ -125,21 +124,16 @@ QT_USE_NAMESPACE @implementation QT_MANGLE_NAMESPACE(QNSOpenSavePanelDelegate) -- (id)initWithAcceptMode:(QT_PREPEND_NAMESPACE(QFileDialog::AcceptMode))acceptMode - title:(const QString &)title - hideNameFilterDetails:(bool)hideNameFilterDetails - qDirFilter:(QT_PREPEND_NAMESPACE(QDir::Filters))qDirFilter - fileOptions:(QT_PREPEND_NAMESPACE(QFileDialog::Options))fileOptions - fileMode:(QT_PREPEND_NAMESPACE(QFileDialog::FileMode))fileMode - selectFile:(const QString &)selectFile - confirmOverwrite:(bool)confirm +- (id)initWithAcceptMode: + (const QString &)selectFile fileDialog:(QFileDialog *)fileDialog + options:(SharedPointerFileDialogOptions)options helper:(QCocoaFileDialogHelper *)helper { self = [super init]; mFileDialog = fileDialog; - mAcceptMode = acceptMode; - if (mAcceptMode == QT_PREPEND_NAMESPACE(QFileDialog::AcceptOpen)){ + mOptions = options; + if (mOptions->acceptMode() == QT_PREPEND_NAMESPACE(QFileDialogOptions::AcceptOpen)){ mOpenPanel = [NSOpenPanel openPanel]; mSavePanel = mOpenPanel; } else { @@ -149,15 +143,11 @@ QT_USE_NAMESPACE [mSavePanel setLevel:NSModalPanelWindowLevel]; [mSavePanel setDelegate:self]; - mQDirFilter = new QT_PREPEND_NAMESPACE(QDir::Filters)(qDirFilter); - mFileOptions = new QT_PREPEND_NAMESPACE(QFileDialog::Options)(fileOptions); - mFileMode = fileMode; - mConfirmOverwrite = confirm; mReturnCode = -1; mHelper = helper; mLastFilterCheckPath = new QString; mQDirFilterEntryList = new QStringList; - mNameFilterDropDownList = new QStringList(mFileDialog->nameFilters()); + mNameFilterDropDownList = new QStringList(mOptions->nameFilters()); QString selectedVisualNameFilter = mFileDialog->selectedNameFilter(); mSelectedNameFilter = new QStringList([self findStrippedFilterWithVisualFilterName:selectedVisualNameFilter]); @@ -170,16 +160,17 @@ QT_USE_NAMESPACE mCurrentSelection = new QString(sel.absoluteFilePath()); } - [mSavePanel setTitle:qt_mac_QStringToNSString(title)]; - [self createPopUpButton:selectedVisualNameFilter hideDetails:hideNameFilterDetails]; + [mSavePanel setTitle:qt_mac_QStringToNSString(options->windowTitle())]; + [self createPopUpButton:selectedVisualNameFilter hideDetails:options->testOption(QFileDialogOptions::HideNameFilterDetails)]; [self createTextField]; [self createAccessory]; [mSavePanel setAccessoryView:mNameFilterDropDownList->size() > 1 ? mAccessoryView : nil]; - [mSavePanel setPrompt:[self strip:mFileDialog->labelText(QFileDialog::Accept)]]; - if (false) // ### fixme mPriv->fileNameLabelExplicitlySat) - [mSavePanel setNameFieldLabel:[self strip:mFileDialog->labelText(QFileDialog::FileName)]]; + if (mOptions->isLabelExplicitlySet(QFileDialogOptions::Accept)) + [mSavePanel setPrompt:[self strip:options->labelText(QFileDialogOptions::Accept)]]; + if (mOptions->isLabelExplicitlySet(QFileDialogOptions::FileName)) + [mSavePanel setNameFieldLabel:[self strip:options->labelText(QFileDialogOptions::FileName)]]; [self updateProperties]; [mSavePanel retain]; @@ -188,8 +179,6 @@ QT_USE_NAMESPACE - (void)dealloc { - delete mQDirFilter; - delete mFileOptions; delete mLastFilterCheckPath; delete mQDirFilterEntryList; delete mNameFilterDropDownList; @@ -225,7 +214,7 @@ QT_USE_NAMESPACE QFileInfo info(*mCurrentSelection); NSString *filename = QT_PREPEND_NAMESPACE(qt_mac_QStringToNSString)(info.fileName()); NSString *filepath = QT_PREPEND_NAMESPACE(qt_mac_QStringToNSString)(info.filePath()); - bool selectable = (mAcceptMode == QFileDialog::AcceptSave) + bool selectable = (mOptions->acceptMode() == QFileDialogOptions::AcceptSave) || [self panel:nil shouldShowFilename:filepath]; [mOpenPanel beginForDirectory:mCurrentDir @@ -242,7 +231,7 @@ QT_USE_NAMESPACE QFileInfo info(*mCurrentSelection); NSString *filename = QT_PREPEND_NAMESPACE(qt_mac_QStringToNSString)(info.fileName()); NSString *filepath = QT_PREPEND_NAMESPACE(qt_mac_QStringToNSString)(info.filePath()); - bool selectable = (mAcceptMode == QFileDialog::AcceptSave) + bool selectable = (mOptions->acceptMode() == QFileDialogOptions::AcceptSave) || [self panel:nil shouldShowFilename:filepath]; mReturnCode = [mSavePanel runModalForDirectory:mCurrentDir @@ -257,13 +246,13 @@ QT_USE_NAMESPACE return (mReturnCode == NSOKButton) ? QT_PREPEND_NAMESPACE(QPlatformDialogHelper::Accepted) : QT_PREPEND_NAMESPACE(QPlatformDialogHelper::Rejected); } -- (void)showWindowModalSheet:(QWidget *)docWidget +- (void)showWindowModalSheet:(QWindow *)docWidget { Q_UNUSED(docWidget); QFileInfo info(*mCurrentSelection); NSString *filename = QT_PREPEND_NAMESPACE(qt_mac_QStringToNSString)(info.fileName()); NSString *filepath = QT_PREPEND_NAMESPACE(qt_mac_QStringToNSString)(info.filePath()); - bool selectable = (mAcceptMode == QFileDialog::AcceptSave) + bool selectable = (mOptions->acceptMode() == QFileDialogOptions::AcceptSave) || [self panel:nil shouldShowFilename:filepath]; [mSavePanel beginSheetForDirectory:mCurrentDir @@ -295,7 +284,7 @@ QT_USE_NAMESPACE QString path = info.absolutePath(); if (path != *mLastFilterCheckPath){ *mLastFilterCheckPath = path; - *mQDirFilterEntryList = info.dir().entryList(*mQDirFilter); + *mQDirFilterEntryList = info.dir().entryList(mOptions->filter()); } // Check if the QDir filter accepts the file: if (!mQDirFilterEntryList->contains(info.fileName())) @@ -317,7 +306,7 @@ QT_USE_NAMESPACE Q_UNUSED(sender); if (!okFlag) return filename; - if (mConfirmOverwrite) + if (!mOptions->testOption(QFileDialogOptions::DontConfirmOverwrite)) return filename; // User has clicked save, and no overwrite confirmation should occur. @@ -376,20 +365,21 @@ QT_USE_NAMESPACE // Call this functions if mFileMode, mFileOptions, // mNameFilterDropDownList or mQDirFilter changes. // The savepanel does not contain the neccessary functions for this. - bool chooseFilesOnly = mFileMode == QT_PREPEND_NAMESPACE(QFileDialog::ExistingFile) - || mFileMode == QT_PREPEND_NAMESPACE(QFileDialog::ExistingFiles); - bool chooseDirsOnly = mFileMode == QT_PREPEND_NAMESPACE(QFileDialog::Directory) - || mFileMode == QT_PREPEND_NAMESPACE(QFileDialog::DirectoryOnly) - || *mFileOptions & QT_PREPEND_NAMESPACE(QFileDialog::ShowDirsOnly); + const QT_PREPEND_NAMESPACE(QFileDialogOptions::FileMode) fileMode = mOptions->fileMode(); + bool chooseFilesOnly = fileMode == QT_PREPEND_NAMESPACE(QFileDialogOptions::ExistingFile) + || fileMode == QT_PREPEND_NAMESPACE(QFileDialogOptions::ExistingFiles); + bool chooseDirsOnly = fileMode == QT_PREPEND_NAMESPACE(QFileDialogOptions::Directory) + || fileMode == QT_PREPEND_NAMESPACE(QFileDialogOptions::DirectoryOnly) + || mOptions->testOption(QT_PREPEND_NAMESPACE(QFileDialogOptions::ShowDirsOnly)); [mOpenPanel setCanChooseFiles:!chooseDirsOnly]; [mOpenPanel setCanChooseDirectories:!chooseFilesOnly]; - [mSavePanel setCanCreateDirectories:!(*mFileOptions & QT_PREPEND_NAMESPACE(QFileDialog::ReadOnly))]; - [mOpenPanel setAllowsMultipleSelection:(mFileMode == QT_PREPEND_NAMESPACE(QFileDialog::ExistingFiles))]; - [mOpenPanel setResolvesAliases:!(*mFileOptions & QT_PREPEND_NAMESPACE(QFileDialog::DontResolveSymlinks))]; + [mSavePanel setCanCreateDirectories:!(mOptions->testOption(QT_PREPEND_NAMESPACE(QFileDialogOptions::ReadOnly)))]; + [mOpenPanel setAllowsMultipleSelection:(fileMode == QT_PREPEND_NAMESPACE(QFileDialogOptions::ExistingFiles))]; + [mOpenPanel setResolvesAliases:!(mOptions->testOption(QT_PREPEND_NAMESPACE(QFileDialogOptions::DontResolveSymlinks)))]; QStringList ext = [self acceptableExtensionsForSave]; - const QString defaultSuffix = mFileDialog->defaultSuffix(); + const QString defaultSuffix = mOptions->defaultSuffix(); if (!ext.isEmpty() && !defaultSuffix.isEmpty()) ext.prepend(defaultSuffix); [mSavePanel setAllowedFileTypes:ext.isEmpty() ? nil : QT_PREPEND_NAMESPACE(qt_mac_QStringListToNSMutableArray(ext))]; @@ -473,7 +463,8 @@ QT_USE_NAMESPACE [mTextField setSelectable:false]; [mTextField setBordered:false]; [mTextField setDrawsBackground:false]; - [mTextField setStringValue:[self strip:mFileDialog->labelText(QFileDialog::FileType)]]; + if (mOptions->isLabelExplicitlySet(QFileDialogOptions::FileType)) + [mTextField setStringValue:[self strip:mOptions->labelText(QFileDialogOptions::FileType)]]; } - (void)createPopUpButton:(const QString &)selectedFilter hideDetails:(BOOL)hideDetails @@ -538,15 +529,16 @@ QCocoaFileDialogHelper::~QCocoaFileDialogHelper() void QCocoaFileDialogHelper::QNSOpenSavePanelDelegate_selectionChanged(const QString &newPath) { - qtFileDialog->metaObject()->invokeMethod(qtFileDialog, "currentChanged", Q_ARG(QString, newPath)); + emit currentChanged(newPath); } void QCocoaFileDialogHelper::QNSOpenSavePanelDelegate_panelClosed(bool accepted) { - if (accepted) - qtFileDialog->metaObject()->invokeMethod(qtFileDialog, "accept"); - else - qtFileDialog->metaObject()->invokeMethod(qtFileDialog, "reject"); + if (accepted) { + emit accept(); + } else { + emit reject(); + } } void QCocoaFileDialogHelper::QNSOpenSavePanelDelegate_directoryEntered(const QString &newDir) @@ -557,7 +549,7 @@ void QCocoaFileDialogHelper::QNSOpenSavePanelDelegate_directoryEntered(const QSt void QCocoaFileDialogHelper::QNSOpenSavePanelDelegate_filterSelected(int menuIndex) { - const QStringList filters = qtFileDialog->nameFilters(); + const QStringList filters = options()->nameFilters(); emit filterSelected(menuIndex >= 0 && menuIndex < filters.size() ? filters.at(menuIndex) : QString()); } @@ -593,29 +585,22 @@ QStringList QCocoaFileDialogHelper::selectedFiles_sys() const return [delegate selectedFiles]; } -void QCocoaFileDialogHelper::setNameFilters_sys(const QStringList &filters) -{ - QT_MANGLE_NAMESPACE(QNSOpenSavePanelDelegate) *delegate = static_cast(mDelegate); - bool hideDetails = qtFileDialog->testOption(QFileDialog::HideNameFilterDetails); - [delegate setNameFilters:filters hideDetails:hideDetails]; -} - void QCocoaFileDialogHelper::setFilter_sys() { QT_MANGLE_NAMESPACE(QNSOpenSavePanelDelegate) *delegate = static_cast(mDelegate); - *(delegate->mQDirFilter) = qtFileDialog->filter(); - delegate->mFileMode = qtFileDialog->fileMode(); - [delegate->mSavePanel setTitle:qt_mac_QStringToNSString(qtFileDialog->windowTitle())]; - [delegate->mSavePanel setPrompt:[delegate strip:qtFileDialog->labelText(QFileDialog::Accept)]]; - if (false) // ### fixme priv->fileNameLabelExplicitlySat) - [delegate->mSavePanel setNameFieldLabel:[delegate strip:qtFileDialog->labelText(QFileDialog::FileName)]]; + const SharedPointerFileDialogOptions &opts = options(); + [delegate->mSavePanel setTitle:qt_mac_QStringToNSString(opts->windowTitle())]; + if (opts->isLabelExplicitlySet(QFileDialogOptions::Accept)) + [delegate->mSavePanel setPrompt:[delegate strip:opts->labelText(QFileDialogOptions::Accept)]]; + if (opts->isLabelExplicitlySet(QFileDialogOptions::FileName)) + [delegate->mSavePanel setNameFieldLabel:[delegate strip:opts->labelText(QFileDialogOptions::FileName)]]; [delegate updateProperties]; } void QCocoaFileDialogHelper::selectNameFilter_sys(const QString &filter) { - const int index = qtFileDialog->nameFilters().indexOf(filter); + const int index = options()->nameFilters().indexOf(filter); if (index != -1) { QT_MANGLE_NAMESPACE(QNSOpenSavePanelDelegate) *delegate = static_cast(mDelegate); [delegate->mPopUpButton selectItemAtIndex:index]; @@ -627,7 +612,7 @@ QString QCocoaFileDialogHelper::selectedNameFilter_sys() const { QT_MANGLE_NAMESPACE(QNSOpenSavePanelDelegate) *delegate = static_cast(mDelegate); int index = [delegate->mPopUpButton indexOfSelectedItem]; - return index != -1 ? qtFileDialog->nameFilters().at(index) : QString(); + return index != -1 ? options()->nameFilters().at(index) : QString(); } void QCocoaFileDialogHelper::deleteNativeDialog_sys() @@ -642,13 +627,13 @@ void QCocoaFileDialogHelper::hide_sys() hideCocoaFilePanel(); } -bool QCocoaFileDialogHelper::show_sys(QWindow * /* parent */) +bool QCocoaFileDialogHelper::show_sys(ShowFlags /* flags */, Qt::WindowFlags windowFlags, QWindow *parent) { // Q_Q(QFileDialog); if (!qtFileDialog->isHidden()) return false; - if (qtFileDialog->windowFlags() & Qt::WindowStaysOnTopHint) { + if (windowFlags & Qt::WindowStaysOnTopHint) { // The native file dialog tries all it can to stay // on the NSModalPanel level. And it might also show // its own "create directory" dialog that we cannot control. @@ -656,38 +641,35 @@ bool QCocoaFileDialogHelper::show_sys(QWindow * /* parent */) return false; } - return showCocoaFilePanel(); + return showCocoaFilePanel(parent); } void QCocoaFileDialogHelper::createNSOpenSavePanelDelegate() { if (mDelegate) return; - - bool selectDir = qtFileDialog->selectedFiles().isEmpty(); - QString selection(selectDir ? qtFileDialog->directory().absolutePath() : qtFileDialog->selectedFiles().value(0)); + const SharedPointerFileDialogOptions &opts = options(); + const QStringList selectedFiles = opts->initiallySelectedFiles(); + const QString directory = opts->initialDirectory(); + const bool selectDir = selectedFiles.isEmpty(); + QString selection(selectDir ? directory : selectedFiles.front()); QT_MANGLE_NAMESPACE(QNSOpenSavePanelDelegate) *delegate = [[QT_MANGLE_NAMESPACE(QNSOpenSavePanelDelegate) alloc] - initWithAcceptMode:qtFileDialog->acceptMode() - title:qtFileDialog->windowTitle() - hideNameFilterDetails:qtFileDialog->testOption(QFileDialog::HideNameFilterDetails) - qDirFilter:qtFileDialog->filter() - fileOptions:qtFileDialog->options() - fileMode:qtFileDialog->fileMode() - selectFile:selection - confirmOverwrite:!qtFileDialog->testOption(QFileDialog::DontConfirmOverwrite) - fileDialog:qtFileDialog - helper:this]; + initWithAcceptMode: + selection + fileDialog:qtFileDialog + options:opts + helper:this]; mDelegate = delegate; } -bool QCocoaFileDialogHelper::showCocoaFilePanel() +bool QCocoaFileDialogHelper::showCocoaFilePanel(QWindow *parent) { // Q_Q(QFileDialog); createNSOpenSavePanelDelegate(); QT_MANGLE_NAMESPACE(QNSOpenSavePanelDelegate) *delegate = static_cast(mDelegate); if (qt_mac_is_macsheet(qtFileDialog)) - [delegate showWindowModalSheet:qtFileDialog->parentWidget()]; + [delegate showWindowModalSheet:parent]; else [delegate showModelessPanel]; return true; @@ -717,7 +699,7 @@ void QCocoaFileDialogHelper::platformNativeDialogModalHelp() // running (which is the case if e.g a top-most QEventLoop has been // interrupted, and the second-most event loop has not yet been reactivated (regardless // if [NSApp run] is still on the stack)), showing a native modal dialog will fail. - QTimer::singleShot(1, qtFileDialog, SLOT(_q_platformRunNativeAppModalPanel())); + QTimer::singleShot(1, this, SIGNAL(launchNativeAppModalPanel())); } void QCocoaFileDialogHelper::_q_platformRunNativeAppModalPanel() @@ -729,9 +711,9 @@ void QCocoaFileDialogHelper::_q_platformRunNativeAppModalPanel() QT_MANGLE_NAMESPACE(QNSOpenSavePanelDelegate) *delegate = static_cast(mDelegate); [delegate runApplicationModalPanel]; if (dialogResultCode_sys() == QPlatformDialogHelper::Accepted) - qtFileDialog->metaObject()->invokeMethod(qtFileDialog, "accept"); + emit accept(); else - qtFileDialog->metaObject()->invokeMethod(qtFileDialog, "reject"); + emit reject(); } QPlatformDialogHelper::DialogCode QCocoaFileDialogHelper::dialogResultCode_sys() diff --git a/src/plugins/platforms/windows/qwindowsdialoghelpers.cpp b/src/plugins/platforms/windows/qwindowsdialoghelpers.cpp index 58352470a6..7a83baabb1 100644 --- a/src/plugins/platforms/windows/qwindowsdialoghelpers.cpp +++ b/src/plugins/platforms/windows/qwindowsdialoghelpers.cpp @@ -416,8 +416,7 @@ protected: */ template -QWindowsDialogHelperBase::QWindowsDialogHelperBase(QDialog *dialog) : - m_dialog(dialog), +QWindowsDialogHelperBase::QWindowsDialogHelperBase() : m_nativeDialog(0), m_ownerWindow(0) { @@ -437,11 +436,8 @@ template QWindowsNativeDialogBase *QWindowsDialogHelperBase::ensureNativeDialog() { // Create dialog and apply common settings. - if (!m_nativeDialog) { + if (!m_nativeDialog) m_nativeDialog = createNativeDialog(); - if (m_nativeDialog) - m_nativeDialog->setWindowTitle(m_dialog->windowTitle()); - } return m_nativeDialog; } @@ -487,9 +483,11 @@ void QWindowsDialogThread::run() } template -bool QWindowsDialogHelperBase::show_sys(QWindow *parent) +bool QWindowsDialogHelperBase::show_sys(QPlatformDialogHelper::ShowFlags flags, + Qt::WindowFlags, + QWindow *parent) { - const bool modal = m_dialog->isModal(); + const bool modal = flags & QPlatformDialogHelper::ShowModal; if (parent) { m_ownerWindow = QWindowsWindow::handleOf(parent); } else { @@ -523,7 +521,8 @@ void QWindowsDialogHelperBase::platformNativeDialogModalHelp() if (QWindowsContext::verboseDialogs) qDebug("%s" , __FUNCTION__); if (QWindowsNativeDialogBase *nd =nativeDialog()) - nd->metaObject()->invokeMethod(m_dialog, "_q_platformRunNativeAppModalPanel", + nd->metaObject()->invokeMethod(this, + "emitLaunchNativeAppModalPanel", Qt::QueuedConnection); } @@ -650,10 +649,10 @@ class QWindowsNativeFileDialogBase : public QWindowsNativeDialogBase public: ~QWindowsNativeFileDialogBase(); - inline static QWindowsNativeFileDialogBase *create(QFileDialog::AcceptMode am); + inline static QWindowsNativeFileDialogBase *create(QFileDialogOptions::AcceptMode am); virtual void setWindowTitle(const QString &title); - inline void setMode(QFileDialog::FileMode mode, QFileDialog::Options options); + inline void setMode(QFileDialogOptions::FileMode mode, QFileDialogOptions::FileDialogOptions options); inline void setDirectory(const QString &directory); inline QString directory() const; virtual void exec(HWND owner = 0); @@ -662,6 +661,8 @@ public: inline QString selectedNameFilter() const; bool hideFiltersDetails() const { return m_hideFiltersDetails; } void setHideFiltersDetails(bool h) { m_hideFiltersDetails = h; } + void setDefaultSuffix(const QString &s); + inline void setLabelText(QFileDialogOptions::DialogLabel l, const QString &text); virtual QPlatformDialogHelper::DialogCode result() const { return fileResult(); } @@ -785,25 +786,25 @@ void QWindowsNativeFileDialogBase::exec(HWND owner) } } -void QWindowsNativeFileDialogBase::setMode(QFileDialog::FileMode mode, QFileDialog::Options options) +void QWindowsNativeFileDialogBase::setMode(QFileDialogOptions::FileMode mode, QFileDialogOptions::FileDialogOptions options) { DWORD flags = FOS_PATHMUSTEXIST | FOS_FORCESHOWHIDDEN; - if (options & QFileDialog::DontResolveSymlinks) + if (options & QFileDialogOptions::DontResolveSymlinks) flags |= FOS_NODEREFERENCELINKS; switch (mode) { - case QFileDialog::AnyFile: + case QFileDialogOptions::AnyFile: flags |= FOS_NOREADONLYRETURN; - if (!(options & QFileDialog::DontConfirmOverwrite)) + if (!(options & QFileDialogOptions::DontConfirmOverwrite)) flags |= FOS_OVERWRITEPROMPT; break; - case QFileDialog::ExistingFile: + case QFileDialogOptions::ExistingFile: flags |= FOS_FILEMUSTEXIST; break; - case QFileDialog::Directory: - case QFileDialog::DirectoryOnly: + case QFileDialogOptions::Directory: + case QFileDialogOptions::DirectoryOnly: flags |= FOS_PICKFOLDERS | FOS_FILEMUSTEXIST; break; - case QFileDialog::ExistingFiles: + case QFileDialogOptions::ExistingFiles: flags |= FOS_FILEMUSTEXIST | FOS_ALLOWMULTISELECT; break; } @@ -905,6 +906,31 @@ void QWindowsNativeFileDialogBase::setNameFilters(const QStringList &filters) m_fileDialog->SetFileTypes(size, comFilterSpec.data()); } +void QWindowsNativeFileDialogBase::setDefaultSuffix(const QString &s) +{ + wchar_t *wSuffix = const_cast(reinterpret_cast(s.utf16())); + m_fileDialog->SetDefaultExtension(wSuffix); +} + +void QWindowsNativeFileDialogBase::setLabelText(QFileDialogOptions::DialogLabel l, const QString &text) +{ + wchar_t *wText = const_cast(reinterpret_cast(text.utf16())); + switch (l) { + break; + case QFileDialogOptions::FileName: + m_fileDialog->SetFileNameLabel(wText); + break; + case QFileDialogOptions::Accept: + m_fileDialog->SetOkButtonLabel(wText); + break; + case QFileDialogOptions::LookIn: + case QFileDialogOptions::Reject: + case QFileDialogOptions::FileType: + case QFileDialogOptions::DialogLabelCount: + break; + } +} + void QWindowsNativeFileDialogBase::selectNameFilter(const QString &filter) { const int index = m_nameFilters.indexOf(filter); @@ -1052,10 +1078,10 @@ QStringList QWindowsNativeOpenFileDialog::selectedFiles() const QFileDialog::AcceptMode. */ -QWindowsNativeFileDialogBase *QWindowsNativeFileDialogBase::create(QFileDialog::AcceptMode am) +QWindowsNativeFileDialogBase *QWindowsNativeFileDialogBase::create(QFileDialogOptions::AcceptMode am) { QWindowsNativeFileDialogBase *result = 0; - if (am == QFileDialog::AcceptOpen) { + if (am == QFileDialogOptions::AcceptOpen) { result = new QWindowsNativeOpenFileDialog; if (!result->init(CLSID_FileOpenDialog, IID_IFileOpenDialog)) { delete result; @@ -1081,10 +1107,7 @@ QWindowsNativeFileDialogBase *QWindowsNativeFileDialogBase::create(QFileDialog:: class QWindowsFileDialogHelper : public QWindowsDialogHelperBase { public: - explicit QWindowsFileDialogHelper(QDialog *dialog) : - QWindowsDialogHelperBase(dialog), - m_fileDialog(qobject_cast(dialog)) - { Q_ASSERT(m_fileDialog); } + QWindowsFileDialogHelper() {} virtual bool defaultNameFilterDisables() const { return true; } @@ -1101,18 +1124,16 @@ private: virtual QWindowsNativeDialogBase *createNativeDialog(); inline QWindowsNativeFileDialogBase *nativeFileDialog() const { return static_cast(nativeDialog()); } - - QFileDialog *m_fileDialog; }; QWindowsNativeDialogBase *QWindowsFileDialogHelper::createNativeDialog() { - QWindowsNativeFileDialogBase *result = QWindowsNativeFileDialogBase::create(m_fileDialog->acceptMode()); + QWindowsNativeFileDialogBase *result = QWindowsNativeFileDialogBase::create(options()->acceptMode()); if (!result) return 0; - QObject::connect(result, SIGNAL(accepted()), m_fileDialog, SLOT(accept()), + QObject::connect(result, SIGNAL(accepted()), this, SIGNAL(accept()), Qt::QueuedConnection); - QObject::connect(result, SIGNAL(rejected()), m_fileDialog, SLOT(reject()), + QObject::connect(result, SIGNAL(rejected()), this, SIGNAL(reject()), Qt::QueuedConnection); QObject::connect(result, SIGNAL(directoryEntered(QString)), this, SIGNAL(directoryEntered(QString)), @@ -1125,18 +1146,26 @@ QWindowsNativeDialogBase *QWindowsFileDialogHelper::createNativeDialog() Qt::QueuedConnection); // Apply settings. - result->setMode(m_fileDialog->fileMode(), m_fileDialog->options()); - const QDir directory = m_fileDialog->directory(); - if (directory.exists()) - result->setDirectory(directory.absolutePath()); - result->setHideFiltersDetails(m_fileDialog->testOption(QFileDialog::HideNameFilterDetails)); - const QStringList nameFilters = m_fileDialog->nameFilters(); - if (!nameFilters.isEmpty()) { + const QSharedPointer &opts = options(); + result->setWindowTitle(opts->windowTitle()); + result->setMode(opts->fileMode(), opts->options()); + result->setHideFiltersDetails(opts->testOption(QFileDialogOptions::HideNameFilterDetails)); + const QStringList nameFilters = opts->nameFilters(); + if (!nameFilters.isEmpty()) result->setNameFilters(nameFilters); - const QString selectedNameFilter = m_fileDialog->selectedNameFilter(); - if (!selectedNameFilter.isEmpty()) - result->selectNameFilter(selectedNameFilter); - } + if (opts->isLabelExplicitlySet(QFileDialogOptions::FileName)) + result->setLabelText(QFileDialogOptions::FileName, opts->labelText(QFileDialogOptions::FileName)); + if (opts->isLabelExplicitlySet(QFileDialogOptions::Accept)) + result->setLabelText(QFileDialogOptions::Accept, opts->labelText(QFileDialogOptions::Accept)); + const QString initialDirectory = opts->initialDirectory(); + if (!initialDirectory.isEmpty()) + result->setDirectory(initialDirectory); + const QString initialNameFilter = opts->initiallySelectedNameFilter(); + if (!initialNameFilter.isEmpty()) + result->selectNameFilter(initialNameFilter); + const QString defaultSuffix = opts->defaultSuffix(); + if (!defaultSuffix.isEmpty()) + result->setDefaultSuffix(defaultSuffix); return result; } @@ -1218,6 +1247,8 @@ class QWindowsNativeColorDialog : public QWindowsNativeDialogBase { Q_OBJECT public: + enum { CustomColorCount = 16 }; + explicit QWindowsNativeColorDialog(const SharedPointerColor &color); virtual void setWindowTitle(const QString &) {} @@ -1228,7 +1259,7 @@ public slots: virtual void close() {} private: - COLORREF m_customColors[16]; + COLORREF m_customColors[CustomColorCount]; QPlatformDialogHelper::DialogCode m_code; SharedPointerColor m_color; }; @@ -1256,6 +1287,11 @@ void QWindowsNativeColorDialog::exec(HWND owner) chooseColor.lStructSize = sizeof(chooseColor); chooseColor.hwndOwner = owner; chooseColor.lpCustColors = m_customColors; + QRgb *qCustomColors = QColorDialogOptions::customColors(); + const int customColorCount = qMin(QColorDialogOptions::customColorCount(), + int(CustomColorCount)); + for (int c= 0; c < customColorCount; ++c) + m_customColors[c] = qColorToCOLORREF(QColor(qCustomColors[c])); chooseColor.rgbResult = qColorToCOLORREF(*m_color); chooseColor.Flags = CC_FULLOPEN | CC_RGBINIT; static ChooseColorWType chooseColorW = 0; @@ -1272,6 +1308,8 @@ void QWindowsNativeColorDialog::exec(HWND owner) } if (m_code == QPlatformDialogHelper::Accepted) { *m_color = COLORREFToQColor(chooseColor.rgbResult); + for (int c= 0; c < customColorCount; ++c) + qCustomColors[c] = COLORREFToQColor(m_customColors[c]).rgb(); emit accepted(); if (QWindowsContext::verboseDialogs) qDebug() << '<' << __FUNCTION__ << m_color; @@ -1295,8 +1333,7 @@ void QWindowsNativeColorDialog::exec(HWND owner) class QWindowsColorDialogHelper : public QWindowsDialogHelperBase { public: - QWindowsColorDialogHelper(QDialog *dialog) : - QWindowsDialogHelperBase(dialog), m_currentColor(new QColor) { } + QWindowsColorDialogHelper() {} virtual bool supportsNonModalDialog() { return false; } @@ -1307,11 +1344,18 @@ public: private: inline QWindowsNativeColorDialog *nativeFileDialog() const { return static_cast(nativeDialog()); } - virtual QWindowsNativeDialogBase *createNativeDialog() - { return new QWindowsNativeColorDialog(m_currentColor); } + virtual QWindowsNativeDialogBase *createNativeDialog(); + SharedPointerColor m_currentColor; }; +QWindowsNativeDialogBase *QWindowsColorDialogHelper::createNativeDialog() +{ + QWindowsNativeColorDialog *nativeDialog = new QWindowsNativeColorDialog(m_currentColor); + nativeDialog->setWindowTitle(options()->windowTitle()); + return nativeDialog; +} + namespace QWindowsDialogs { // QWindowsDialogHelperBase creation functions @@ -1342,10 +1386,10 @@ QPlatformDialogHelper *createHelper(QDialog *dialog) switch (QWindowsDialogs::dialogType(dialog)) { case QWindowsDialogs::FileDialog: - return new QWindowsFileDialogHelper(dialog); + return new QWindowsFileDialogHelper(); case QWindowsDialogs::ColorDialog: #ifdef USE_NATIVE_COLOR_DIALOG - return new QWindowsColorDialogHelper(dialog); + return new QWindowsColorDialogHelper(); #endif case QWindowsDialogs::FontDialog: case QWindowsDialogs::UnknownType: diff --git a/src/plugins/platforms/windows/qwindowsdialoghelpers.h b/src/plugins/platforms/windows/qwindowsdialoghelpers.h index 96c03bbaec..a4fa8c4a3a 100644 --- a/src/plugins/platforms/windows/qwindowsdialoghelpers.h +++ b/src/plugins/platforms/windows/qwindowsdialoghelpers.h @@ -73,7 +73,9 @@ public: virtual void platformNativeDialogModalHelp(); virtual void _q_platformRunNativeAppModalPanel(); virtual void deleteNativeDialog_sys(); - virtual bool show_sys(QWindow *parent); + virtual bool show_sys(QPlatformDialogHelper::ShowFlags flags, + Qt::WindowFlags windowFlags, + QWindow *parent); virtual void hide_sys(); virtual QVariant styleHint(QPlatformDialogHelper::StyleHint) const; @@ -82,14 +84,13 @@ public: virtual bool supportsNonModalDialog() const { return true; } protected: - explicit QWindowsDialogHelperBase(QDialog *dialog); + QWindowsDialogHelperBase(); QWindowsNativeDialogBase *nativeDialog() const; private: virtual QWindowsNativeDialogBase *createNativeDialog() = 0; inline QWindowsNativeDialogBase *ensureNativeDialog(); - QDialog *m_dialog; QWindowsNativeDialogBase *m_nativeDialog; HWND m_ownerWindow; }; diff --git a/src/widgets/dialogs/qcolordialog.cpp b/src/widgets/dialogs/qcolordialog.cpp index 1803cba01d..d0a926e0cb 100644 --- a/src/widgets/dialogs/qcolordialog.cpp +++ b/src/widgets/dialogs/qcolordialog.cpp @@ -425,34 +425,13 @@ void QWellArray::keyPressEvent(QKeyEvent* e) //////////// QWellArray END -static bool initrgb = false; -static QRgb stdrgb[6*8]; -static QRgb cusrgb[2*8]; -static bool customSet = false; - - -static void initRGB() -{ - if (initrgb) - return; - initrgb = true; - int i = 0; - for (int g = 0; g < 4; g++) - for (int r = 0; r < 4; r++) - for (int b = 0; b < 3; b++) - stdrgb[i++] = qRgb(r * 255 / 3, g * 255 / 3, b * 255 / 2); - - for (i = 0; i < 2*8; i++) - cusrgb[i] = 0xffffffff; -} - /*! Returns the number of custom colors supported by QColorDialog. All color dialogs share the same custom colors. */ int QColorDialog::customCount() { - return 2 * 8; + return QColorDialogOptions::customColorCount(); } /*! @@ -462,10 +441,7 @@ int QColorDialog::customCount() */ QRgb QColorDialog::customColor(int index) { - if (uint(index) >= uint(customCount())) - return qRgb(255, 255, 255); - initRGB(); - return cusrgb[index]; + return QColorDialogOptions::customColor(index); } /*! @@ -477,11 +453,7 @@ QRgb QColorDialog::customColor(int index) */ void QColorDialog::setCustomColor(int index, QRgb color) { - if (uint(index) >= uint(customCount())) - return; - initRGB(); - customSet = true; - cusrgb[index] = color; + QColorDialogOptions::setCustomColor(index, color); } /*! @@ -494,10 +466,7 @@ void QColorDialog::setCustomColor(int index, QRgb color) void QColorDialog::setStandardColor(int index, QRgb color) { - if (uint(index) >= uint(6 * 8)) - return; - initRGB(); - stdrgb[index] = color; + QColorDialogOptions::setStandardColor(index, color); } static inline void rgb2hsv(QRgb rgb, int &h, int &s, int &v) @@ -1421,9 +1390,10 @@ bool QColorDialogPrivate::selectColor(const QColor &col) int i = 0, j = 0; // Check standard colors if (standard) { + const QRgb *standardColors = QColorDialogOptions::standardColors(); for (i = 0; i < 6; i++) { for (j = 0; j < 8; j++) { - if (color == stdrgb[i + j*6]) { + if (color == standardColors[i + j*6]) { _q_newStandard(i, j); standard->setCurrent(i, j); standard->setSelected(i, j); @@ -1435,9 +1405,10 @@ bool QColorDialogPrivate::selectColor(const QColor &col) } // Check custom colors if (custom) { + const QRgb *customColors = QColorDialogOptions::customColors(); for (i = 0; i < 2; i++) { for (j = 0; j < 8; j++) { - if (color == cusrgb[i + j*2]) { + if (color == customColors[i + j*2]) { _q_newCustom(i, j); custom->setCurrent(i, j); custom->setSelected(i, j); @@ -1461,8 +1432,8 @@ void QColorDialogPrivate::_q_newColorTypedIn(QRgb rgb) void QColorDialogPrivate::_q_newCustom(int r, int c) { - int i = r+2*c; - setCurrentColor(cusrgb[i]); + const int i = r + 2 * c; + setCurrentColor(QColorDialogOptions::customColor(i)); nextCust = i; if (standard) standard->setSelected(-1,-1); @@ -1470,7 +1441,7 @@ void QColorDialogPrivate::_q_newCustom(int r, int c) void QColorDialogPrivate::_q_newStandard(int r, int c) { - setCurrentColor(stdrgb[r+c*6]); + setCurrentColor(QColorDialogOptions::standardColor(r + c * 6)); if (custom) custom->setSelected(-1,-1); } @@ -1509,21 +1480,6 @@ void QColorDialogPrivate::init(const QColor &initial) topLay->addLayout(leftLay); } - initRGB(); - -#ifndef QT_NO_SETTINGS - if (!customSet) { - QSettings settings(QSettings::UserScope, QLatin1String("Trolltech")); - for (int i = 0; i < 2*8; ++i) { - QVariant v = settings.value(QLatin1String("Qt/customColors/") + QString::number(i)); - if (v.isValid()) { - QRgb rgb = v.toUInt(); - cusrgb[i] = rgb; - } - } - } -#endif - #if defined(QT_SMALL_COLORDIALOG) # if defined(Q_WS_S60) const bool nonTouchUI = !S60->hasTouchscreen; @@ -1533,7 +1489,7 @@ void QColorDialogPrivate::init(const QColor &initial) #endif if (!smallDisplay) { - standard = new QColorWell(q, 6, 8, stdrgb); + standard = new QColorWell(q, 6, 8, QColorDialogOptions::standardColors()); lblBasicColors = new QLabel(q); #ifndef QT_NO_SHORTCUT lblBasicColors->setBuddy(standard); @@ -1546,7 +1502,7 @@ void QColorDialogPrivate::init(const QColor &initial) leftLay->addStretch(); #endif - custom = new QColorWell(q, 2, 8, cusrgb); + custom = new QColorWell(q, 2, 8, QColorDialogOptions::customColors()); custom->setAcceptDrops(true); q->connect(custom, SIGNAL(selected(int,int)), SLOT(_q_newCustom(int,int))); @@ -1657,22 +1613,22 @@ void QColorDialogPrivate::initHelper(QPlatformDialogHelper *h) QColorDialog *d = q_func(); QObject::connect(h, SIGNAL(currentColorChanged(QColor)), d, SIGNAL(currentColorChanged(QColor))); QObject::connect(h, SIGNAL(colorSelected(QColor)), d, SIGNAL(colorSelected(QColor))); + static_cast(h)->setOptions(options); +} + +void QColorDialogPrivate::helperPrepareShow(QPlatformDialogHelper *) +{ + options->setWindowTitle(q_func()->windowTitle()); } void QColorDialogPrivate::_q_addCustom() { - cusrgb[nextCust] = cs->currentColor(); + QColorDialogOptions::setCustomColor(nextCust, cs->currentColor()); if (custom) custom->update(); nextCust = (nextCust+1) % 16; } -void QColorDialogPrivate::_q_platformRunNativeAppModalPanel() -{ - if (nativeDialogInUse) - platformHelper()->_q_platformRunNativeAppModalPanel(); -} - void QColorDialogPrivate::retranslateStrings() { if (!smallDisplay) { @@ -1800,8 +1756,7 @@ QColor QColorDialog::selectedColor() const void QColorDialog::setOption(ColorDialogOption option, bool on) { Q_D(QColorDialog); - if (!(d->opts & option) != !on) - setOptions(d->opts ^ option); + d->options->setOption(static_cast(option), on); } /*! @@ -1815,7 +1770,7 @@ void QColorDialog::setOption(ColorDialogOption option, bool on) bool QColorDialog::testOption(ColorDialogOption option) const { Q_D(const QColorDialog); - return (d->opts & option) != 0; + return d->options->testOption(static_cast(option)); } /*! @@ -1834,11 +1789,10 @@ void QColorDialog::setOptions(ColorDialogOptions options) { Q_D(QColorDialog); - ColorDialogOptions changed = (options ^ d->opts); - if (!changed) + if (QColorDialog::options() == options) return; - d->opts = options; + d->options->setOptions(QColorDialogOptions::ColorDialogOptions(int(options))); d->buttons->setVisible(!(options & NoButtons)); d->showAlpha(options & ShowAlphaChannel); } @@ -1846,7 +1800,7 @@ void QColorDialog::setOptions(ColorDialogOptions options) QColorDialog::ColorDialogOptions QColorDialog::options() const { Q_D(const QColorDialog); - return d->opts; + return QColorDialog::ColorDialogOptions(int(d->options->options())); } /*! @@ -1922,7 +1876,7 @@ void QColorDialog::setVisible(bool visible) } #else - if (!(d->opts & DontUseNativeDialog)) + if (!(options() & DontUseNativeDialog)) d->setNativeDialogVisible(visible); if (d->nativeDialogInUse) { @@ -2026,14 +1980,6 @@ QColorDialog::~QColorDialog() QColorDialogPrivate::sharedColorPanelAvailable = true; } #endif - -#ifndef QT_NO_SETTINGS - if (!customSet) { - QSettings settings(QSettings::UserScope, QLatin1String("Trolltech")); - for (int i = 0; i < 2*8; ++i) - settings.setValue(QLatin1String("Qt/customColors/") + QString::number(i), cusrgb[i]); - } -#endif } /*! diff --git a/src/widgets/dialogs/qcolordialog_p.h b/src/widgets/dialogs/qcolordialog_p.h index 39d7192b1d..42176fe214 100644 --- a/src/widgets/dialogs/qcolordialog_p.h +++ b/src/widgets/dialogs/qcolordialog_p.h @@ -56,6 +56,7 @@ #include "private/qdialog_p.h" #include "qcolordialog.h" +#include "qsharedpointer.h" #ifndef QT_NO_COLORDIALOG @@ -75,6 +76,8 @@ class QColorDialogPrivate : public QDialogPrivate Q_DECLARE_PUBLIC(QColorDialog) public: + QColorDialogPrivate() : options(new QColorDialogOptions) {} + QPlatformColorDialogHelper *platformColorDialogHelper() const { return static_cast(platformHelper()); } @@ -92,7 +95,6 @@ public: void retranslateStrings(); void _q_addCustom(); - void _q_platformRunNativeAppModalPanel(); void _q_newHsv(int h, int s, int v); void _q_newColorTypedIn(QRgb rgb); @@ -115,7 +117,8 @@ public: QColor selectedQColor; int nextCust; bool smallDisplay; - QColorDialog::ColorDialogOptions opts; + QSharedPointer options; + QPointer receiverToDisconnectOnClose; QByteArray memberToDisconnectOnClose; @@ -138,6 +141,7 @@ public: #endif private: virtual void initHelper(QPlatformDialogHelper *h); + virtual void helperPrepareShow(QPlatformDialogHelper *h); }; #endif // QT_NO_COLORDIALOG diff --git a/src/widgets/dialogs/qdialog.cpp b/src/widgets/dialogs/qdialog.cpp index 363d3bf592..4170530ff7 100644 --- a/src/widgets/dialogs/qdialog.cpp +++ b/src/widgets/dialogs/qdialog.cpp @@ -66,10 +66,16 @@ QPlatformDialogHelper *QDialogPrivate::platformHelper() const if (!m_platformHelperCreated) { QDialogPrivate *ncThis = const_cast(this); m_platformHelperCreated = true; + QDialog *dialog = ncThis->q_func(); m_platformHelper = QGuiApplicationPrivate::platformTheme() - ->createPlatformDialogHelper(ncThis->q_func()); - if (m_platformHelper) + ->createPlatformDialogHelper(dialog); + if (m_platformHelper) { + QObject::connect(m_platformHelper, SIGNAL(accept()), dialog, SLOT(accept())); + QObject::connect(m_platformHelper, SIGNAL(reject()), dialog, SLOT(reject())); + QObject::connect(m_platformHelper, SIGNAL(launchNativeAppModalPanel()), + dialog, SLOT(_q_platformRunNativeAppModalPanel())); ncThis->initHelper(m_platformHelper); + } } return m_platformHelper; } @@ -85,7 +91,11 @@ bool QDialogPrivate::setNativeDialogVisible(bool visible) { if (QPlatformDialogHelper *helper = platformHelper()) { if (visible) { - nativeDialogInUse = helper->show_sys(parentWindow()); + helperPrepareShow(helper); + QPlatformDialogHelper::ShowFlags flags(0); + if (q_func()->isModal()) + flags |= QPlatformDialogHelper::ShowModal; + nativeDialogInUse = helper->show_sys(flags, q_func()->windowFlags(), parentWindow()); } else { helper->hide_sys(); } @@ -93,6 +103,13 @@ bool QDialogPrivate::setNativeDialogVisible(bool visible) return nativeDialogInUse; } +void QDialogPrivate::_q_platformRunNativeAppModalPanel() +{ + if (nativeDialogInUse) + platformHelper()->_q_platformRunNativeAppModalPanel(); +} + + QVariant QDialogPrivate::styleHint(QPlatformDialogHelper::StyleHint hint) const { if (const QPlatformDialogHelper *helper = platformHelper()) @@ -505,6 +522,8 @@ int QDialog::exec() int res = result(); if (deleteOnClose) delete this; + if (d->nativeDialogInUse) + d->helperDone(static_cast(res), d->platformHelper()); return res; } diff --git a/src/widgets/dialogs/qdialog.h b/src/widgets/dialogs/qdialog.h index d4171ece47..18f65274e5 100644 --- a/src/widgets/dialogs/qdialog.h +++ b/src/widgets/dialogs/qdialog.h @@ -118,7 +118,7 @@ protected: private: Q_DECLARE_PRIVATE(QDialog) Q_DISABLE_COPY(QDialog) - + Q_PRIVATE_SLOT(d_func(), void _q_platformRunNativeAppModalPanel()) #ifdef Q_WS_WINCE_WM Q_PRIVATE_SLOT(d_func(), void _q_doneAction()) diff --git a/src/widgets/dialogs/qdialog_p.h b/src/widgets/dialogs/qdialog_p.h index 3d90686b6d..83964a1b99 100644 --- a/src/widgets/dialogs/qdialog_p.h +++ b/src/widgets/dialogs/qdialog_p.h @@ -79,6 +79,7 @@ public: nativeDialogInUse(false), m_platformHelper(0), m_platformHelperCreated(false) {} ~QDialogPrivate() { delete m_platformHelper; } + void _q_platformRunNativeAppModalPanel(); QWindow *parentWindow() const; bool setNativeDialogVisible(bool visible); @@ -115,6 +116,8 @@ public: private: virtual void initHelper(QPlatformDialogHelper *) {} + virtual void helperPrepareShow(QPlatformDialogHelper *) {} + virtual void helperDone(QDialog::DialogCode, QPlatformDialogHelper *) {} mutable QPlatformDialogHelper *m_platformHelper; mutable bool m_platformHelperCreated; diff --git a/src/widgets/dialogs/qfiledialog.cpp b/src/widgets/dialogs/qfiledialog.cpp index 19f474e503..c3561cc62a 100644 --- a/src/widgets/dialogs/qfiledialog.cpp +++ b/src/widgets/dialogs/qfiledialog.cpp @@ -507,16 +507,14 @@ QFileDialogPrivate::QFileDialogPrivate() proxyModel(0), #endif model(0), - fileMode(QFileDialog::AnyFile), - acceptMode(QFileDialog::AcceptOpen), currentHistoryLocation(-1), renameAction(0), deleteAction(0), showHiddenAction(0), useDefaultCaption(true), defaultFileTypes(true), - fileNameLabelExplicitlySat(false), - qFileDialogUi(0) + qFileDialogUi(0), + options(new QFileDialogOptions) { } @@ -524,12 +522,49 @@ QFileDialogPrivate::~QFileDialogPrivate() { } +void QFileDialogPrivate::initHelper(QPlatformDialogHelper *h) +{ + QFileDialog *d = q_func(); + QObject::connect(h, SIGNAL(fileSelected(QString)), d, SIGNAL(fileSelected(QString))); + QObject::connect(h, SIGNAL(filesSelected(QStringList)), d, SIGNAL(filesSelected(QStringList))); + QObject::connect(h, SIGNAL(currentChanged(QString)), d, SIGNAL(currentChanged(QString))); + QObject::connect(h, SIGNAL(directoryEntered(QString)), d, SIGNAL(directoryEntered(QString))); + QObject::connect(h, SIGNAL(filterSelected(QString)), d, SIGNAL(filterSelected(QString))); + static_cast(h)->setOptions(options); +} + +void QFileDialogPrivate::helperPrepareShow(QPlatformDialogHelper *) +{ + Q_Q(QFileDialog); + options->setWindowTitle(q->windowTitle()); + options->setViewMode(static_cast(q->viewMode())); + options->setHistory(q->history()); + options->setSidebarUrls(qFileDialogUi->sidebar->urls()); + const QDir directory = q->directory(); + options->setInitialDirectory(directory.exists() ? + directory.absolutePath() : + QString()); + options->setInitiallySelectedNameFilter(q->selectedNameFilter()); + options->setInitiallySelectedFiles(q->selectedFiles()); +} + +void QFileDialogPrivate::helperDone(QDialog::DialogCode code, QPlatformDialogHelper *) +{ + if (code == QDialog::Accepted) { + Q_Q(QFileDialog); + q->setViewMode(static_cast(options->viewMode())); + q->setSidebarUrls(options->sidebarUrls()); + q->setHistory(options->history()); + } +} + void QFileDialogPrivate::retranslateWindowTitle() { Q_Q(QFileDialog); if (!useDefaultCaption || setWindowTitle != q->windowTitle()) return; - if (acceptMode == QFileDialog::AcceptOpen) { + if (q->acceptMode() == QFileDialog::AcceptOpen) { + const QFileDialog::FileMode fileMode = q->fileMode(); if (fileMode == QFileDialog::DirectoryOnly || fileMode == QFileDialog::Directory) q->setWindowTitle(QFileDialog::tr("Find Directory")); else @@ -545,6 +580,46 @@ void QFileDialogPrivate::setLastVisitedDirectory(const QString &dir) *lastVisitedDir() = dir; } +void QFileDialogPrivate::updateFileNameLabel() +{ + if (!options->isLabelExplicitlySet(QFileDialogOptions::FileName)) { + switch (q_func()->fileMode()) { + case QFileDialog::DirectoryOnly: + case QFileDialog::Directory: + setLabelTextControl(QFileDialog::FileName, QFileDialog::tr("Directory:")); + break; + default: + setLabelTextControl(QFileDialog::FileName, QFileDialog::tr("File &name:")); + break; + } + } +} + +void QFileDialogPrivate::updateOkButtonText(bool saveAsOnFolder) +{ + Q_Q(QFileDialog); + // 'Save as' at a folder: Temporarily change to "Open". + if (saveAsOnFolder) { + setLabelTextControl(QFileDialog::Accept, QFileDialog::tr("&Open")); + } else if (options->isLabelExplicitlySet(QFileDialogOptions::Accept)) { + setLabelTextControl(QFileDialog::Accept, options->labelText(QFileDialogOptions::Accept)); + return; + } else { + switch (q->fileMode()) { + case QFileDialog::DirectoryOnly: + case QFileDialog::Directory: + setLabelTextControl(QFileDialog::Accept, QFileDialog::tr("&Choose")); + break; + default: + setLabelTextControl(QFileDialog::Accept, + q->acceptMode() == QFileDialog::AcceptOpen ? + QFileDialog::tr("&Open") : + QFileDialog::tr("&Save")); + break; + } + } +} + void QFileDialogPrivate::retranslateStrings() { Q_Q(QFileDialog); @@ -569,15 +644,7 @@ void QFileDialogPrivate::retranslateStrings() showHiddenAction->setText(QFileDialog::tr("Show &hidden files")); newFolderAction->setText(QFileDialog::tr("&New Folder")); qFileDialogUi->retranslateUi(q); - - if (!fileNameLabelExplicitlySat){ - if (fileMode == QFileDialog::DirectoryOnly || fileMode == QFileDialog::Directory) { - q->setLabelText(QFileDialog::FileName, QFileDialog::tr("Directory:")); - } else { - q->setLabelText(QFileDialog::FileName, QFileDialog::tr("File &name:")); - } - fileNameLabelExplicitlySat = false; - } + updateFileNameLabel(); } void QFileDialogPrivate::emitFilesSelected(const QStringList &files) @@ -595,7 +662,7 @@ bool QFileDialogPrivate::canBeNativeDialog() return true; if (q->testAttribute(Qt::WA_DontShowOnScreen)) return false; - if (opts & QFileDialog::DontUseNativeDialog) + if (q->options() & QFileDialog::DontUseNativeDialog) return false; QLatin1String staticName(QFileDialog::staticMetaObject.className()); @@ -612,9 +679,9 @@ bool QFileDialogPrivate::canBeNativeDialog() */ void QFileDialog::setOption(Option option, bool on) { - Q_D(QFileDialog); - if (!(d->opts & option) != !on) - setOptions(d->opts ^ option); + const QFileDialog::Options previousOptions = options(); + if (!(previousOptions & option) != !on) + setOptions(previousOptions ^ option); } /*! @@ -628,7 +695,7 @@ void QFileDialog::setOption(Option option, bool on) bool QFileDialog::testOption(Option option) const { Q_D(const QFileDialog); - return (d->opts & option) != 0; + return d->options->testOption(static_cast(option)); } /*! @@ -648,11 +715,11 @@ void QFileDialog::setOptions(Options options) { Q_D(QFileDialog); - Options changed = (options ^ d->opts); + Options changed = (options ^ QFileDialog::options()); if (!changed) return; - d->opts = options; + d->options->setOptions(QFileDialogOptions::FileDialogOptions(int(options))); if (changed & DontResolveSymlinks) d->model->setResolveSymlinks(!(options & DontResolveSymlinks)); if (changed & ReadOnly) { @@ -663,7 +730,7 @@ void QFileDialog::setOptions(Options options) d->deleteAction->setEnabled(!ro); } if (changed & HideNameFilterDetails) - setNameFilters(d->nameFilters); + setNameFilters(d->options->nameFilters()); if (changed & ShowDirsOnly) setFilter((options & ShowDirsOnly) ? filter() & ~QDir::Files : filter() | QDir::Files); @@ -672,7 +739,7 @@ void QFileDialog::setOptions(Options options) QFileDialog::Options QFileDialog::options() const { Q_D(const QFileDialog); - return d->opts; + return QFileDialog::Options(int(d->options->options())); } /*! @@ -942,6 +1009,7 @@ QStringList QFileDialogPrivate::addDefaultSuffixToFiles(const QStringList filesT QString name = toInternal(filesToFix.at(i)); QFileInfo info(name); // if the filename has no suffix, add the default suffix + const QString defaultSuffix = options->defaultSuffix(); if (!defaultSuffix.isEmpty() && !info.isDir() && name.lastIndexOf(QLatin1Char('.')) == -1) name += QLatin1Char('.') + defaultSuffix; if (info.isAbsolute()) { @@ -981,8 +1049,8 @@ QStringList QFileDialog::selectedFiles() const if (files.isEmpty() && !d->lineEdit()->text().isEmpty()) files = d->typedFiles(); - - if (files.isEmpty() && !(d->fileMode == ExistingFile || d->fileMode == ExistingFiles)) + const FileMode fm = fileMode(); + if (files.isEmpty() && !(fm == ExistingFile || fm == ExistingFiles)) files.append(d->rootIndex().data(QFileSystemModel::FilePathRole).toString()); return files; } @@ -1095,12 +1163,7 @@ void QFileDialog::setNameFilters(const QStringList &filters) for (int i = 0; i < filters.count(); ++i) { cleanedFilters << filters[i].simplified(); } - d->nameFilters = cleanedFilters; - - if (d->nativeDialogInUse){ - d->setNameFilters_sys(cleanedFilters); - return; - } + d->options->setNameFilters(cleanedFilters); d->qFileDialogUi->fileTypeCombo->clear(); if (cleanedFilters.isEmpty()) @@ -1132,7 +1195,7 @@ void QFileDialog::setFilters(const QStringList &filters) */ QStringList QFileDialog::nameFilters() const { - return d_func()->nameFilters; + return d_func()->options->nameFilters(); } /*! @@ -1236,6 +1299,7 @@ void QFileDialog::setFilter(QDir::Filters filters) { Q_D(QFileDialog); d->model->setFilter(filters); + d->options->setFilter(filters); if (d->nativeDialogInUse){ d->setFilter_sys(); return; @@ -1286,7 +1350,7 @@ QFileDialog::ViewMode QFileDialog::viewMode() const void QFileDialog::setFileMode(QFileDialog::FileMode mode) { Q_D(QFileDialog); - d->fileMode = mode; + d->options->setFileMode(static_cast(mode)); d->retranslateWindowTitle(); // keep ShowDirsOnly option in sync with fileMode (BTW, DirectoryOnly is obsolete) @@ -1303,24 +1367,13 @@ void QFileDialog::setFileMode(QFileDialog::FileMode mode) // set filter d->model->setFilter(d->filterForMode(filter())); // setup file type for directory - QString buttonText = (d->acceptMode == AcceptOpen ? tr("&Open") : tr("&Save")); if (mode == DirectoryOnly || mode == Directory) { d->qFileDialogUi->fileTypeCombo->clear(); d->qFileDialogUi->fileTypeCombo->addItem(tr("Directories")); d->qFileDialogUi->fileTypeCombo->setEnabled(false); - - if (!d->fileNameLabelExplicitlySat){ - setLabelText(FileName, tr("Directory:")); - d->fileNameLabelExplicitlySat = false; - } - buttonText = tr("&Choose"); - } else { - if (!d->fileNameLabelExplicitlySat){ - setLabelText(FileName, tr("File &name:")); - d->fileNameLabelExplicitlySat = false; - } } - setLabelText(Accept, buttonText); + d->updateFileNameLabel(); + d->updateOkButtonText(); if (d->nativeDialogInUse){ d->setFilter_sys(); return; @@ -1333,7 +1386,7 @@ void QFileDialog::setFileMode(QFileDialog::FileMode mode) QFileDialog::FileMode QFileDialog::fileMode() const { Q_D(const QFileDialog); - return d->fileMode; + return static_cast(d->options->fileMode()); } /*! @@ -1349,16 +1402,11 @@ QFileDialog::FileMode QFileDialog::fileMode() const void QFileDialog::setAcceptMode(QFileDialog::AcceptMode mode) { Q_D(QFileDialog); - d->acceptMode = mode; - bool directoryMode = (d->fileMode == Directory || d->fileMode == DirectoryOnly); + d->options->setAcceptMode(static_cast(mode)); QDialogButtonBox::StandardButton button = (mode == AcceptOpen ? QDialogButtonBox::Open : QDialogButtonBox::Save); d->qFileDialogUi->buttonBox->setStandardButtons(button | QDialogButtonBox::Cancel); d->qFileDialogUi->buttonBox->button(button)->setEnabled(false); d->_q_updateOkButton(); - if (mode == AcceptOpen && directoryMode) - setLabelText(Accept, tr("&Choose")); - else - setLabelText(Accept, (mode == AcceptOpen ? tr("&Open") : tr("&Save"))); if (mode == AcceptSave) { d->qFileDialogUi->lookInCombo->setEditable(false); } @@ -1415,7 +1463,7 @@ QModelIndex QFileDialogPrivate::select(const QModelIndex &index) const { QFileDialog::AcceptMode QFileDialog::acceptMode() const { Q_D(const QFileDialog); - return d->acceptMode; + return static_cast(d->options->acceptMode()); } /*! @@ -1490,13 +1538,13 @@ bool QFileDialog::confirmOverwrite() const void QFileDialog::setDefaultSuffix(const QString &suffix) { Q_D(QFileDialog); - d->defaultSuffix = suffix; + d->options->setDefaultSuffix(suffix); } QString QFileDialog::defaultSuffix() const { Q_D(const QFileDialog); - return d->defaultSuffix; + return d->options->defaultSuffix(); } /*! @@ -1587,41 +1635,45 @@ QFileIconProvider *QFileDialog::iconProvider() const return d->model->iconProvider(); } -/*! - Sets the \a text shown in the filedialog in the specified \a label. -*/ -void QFileDialog::setLabelText(DialogLabel label, const QString &text) +void QFileDialogPrivate::setLabelTextControl(QFileDialog::DialogLabel label, const QString &text) { - Q_D(QFileDialog); - QPushButton *button; switch (label) { - case LookIn: - d->qFileDialogUi->lookInLabel->setText(text); + case QFileDialog::LookIn: + qFileDialogUi->lookInLabel->setText(text); break; - case FileName: - d->qFileDialogUi->fileNameLabel->setText(text); - d->fileNameLabelExplicitlySat = true; + case QFileDialog::FileName: + qFileDialogUi->fileNameLabel->setText(text); break; - case FileType: - d->qFileDialogUi->fileTypeLabel->setText(text); + case QFileDialog::FileType: + qFileDialogUi->fileTypeLabel->setText(text); break; - case Accept: - d->acceptLabel = text; - if (acceptMode() == AcceptOpen) - button = d->qFileDialogUi->buttonBox->button(QDialogButtonBox::Open); - else - button = d->qFileDialogUi->buttonBox->button(QDialogButtonBox::Save); - if (button) - button->setText(text); + case QFileDialog::Accept: + if (q_func()->acceptMode() == QFileDialog::AcceptOpen) { + if (QPushButton *button = qFileDialogUi->buttonBox->button(QDialogButtonBox::Open)) + button->setText(text); + } else { + if (QPushButton *button = qFileDialogUi->buttonBox->button(QDialogButtonBox::Save)) + button->setText(text); + } break; - case Reject: - button = d->qFileDialogUi->buttonBox->button(QDialogButtonBox::Cancel); - if (button) + case QFileDialog::Reject: + if (QPushButton *button = qFileDialogUi->buttonBox->button(QDialogButtonBox::Cancel)) button->setText(text); break; } } +/*! + Sets the \a text shown in the filedialog in the specified \a label. +*/ + +void QFileDialog::setLabelText(DialogLabel label, const QString &text) +{ + Q_D(QFileDialog); + d->options->setLabelText(static_cast(label), text); + d->setLabelTextControl(label, text); +} + /*! Returns the text shown in the filedialog in the specified \a label. */ @@ -2136,7 +2188,7 @@ void QFileDialog::accept() return; } - switch (d->fileMode) { + switch (fileMode()) { case DirectoryOnly: case Directory: { QString fn = files.first(); @@ -2235,7 +2287,7 @@ void QFileDialogPrivate::init(const QString &directory, const QString &nameFilte createWidgets(); createMenuActions(); retranslateStrings(); - q->setFileMode(fileMode); + q->setFileMode(QFileDialog::AnyFile); #ifndef QT_NO_SETTINGS QSettings settings(QSettings::UserScope, QLatin1String("Trolltech")); @@ -2271,6 +2323,7 @@ void QFileDialogPrivate::createWidgets() { Q_Q(QFileDialog); model = new QFileSystemModel(q); + options->setFilter(model->filter()); model->setObjectName(QLatin1String("qt_filesystem_model")); if (QPlatformFileDialogHelper *helper = platformFileDialogHelper()) model->setNameFilterDisables(helper->defaultNameFilterDisables()); @@ -2849,10 +2902,11 @@ void QFileDialogPrivate::_q_autoCompleteFileName(const QString &text) void QFileDialogPrivate::_q_updateOkButton() { Q_Q(QFileDialog); - QPushButton *button = qFileDialogUi->buttonBox->button((acceptMode == QFileDialog::AcceptOpen) + QPushButton *button = qFileDialogUi->buttonBox->button((q->acceptMode() == QFileDialog::AcceptOpen) ? QDialogButtonBox::Open : QDialogButtonBox::Save); if (!button) return; + const QFileDialog::FileMode fileMode = q->fileMode(); bool enableButton = true; bool isOpenDirectory = false; @@ -2862,8 +2916,7 @@ void QFileDialogPrivate::_q_updateOkButton() if (lineEditText.startsWith(QLatin1String("//")) || lineEditText.startsWith(QLatin1Char('\\'))) { button->setEnabled(true); - if (acceptMode == QFileDialog::AcceptSave) - button->setText(acceptLabel); + updateOkButtonText(); return; } @@ -2937,8 +2990,7 @@ void QFileDialogPrivate::_q_updateOkButton() } button->setEnabled(enableButton); - if (acceptMode == QFileDialog::AcceptSave) - button->setText(isOpenDirectory ? QFileDialog::tr("&Open") : acceptLabel); + updateOkButtonText(isOpenDirectory); } /*! @@ -2963,6 +3015,7 @@ void QFileDialogPrivate::_q_enterDirectory(const QModelIndex &index) QModelIndex sourceIndex = index.model() == proxyModel ? mapToSource(index) : index; QString path = sourceIndex.data(QFileSystemModel::FilePathRole).toString(); if (path.isEmpty() || model->isDir(sourceIndex)) { + const QFileDialog::FileMode fileMode = q->fileMode(); q->setDirectory(path); emit q->directoryEntered(path); if (fileMode == QFileDialog::Directory @@ -3031,14 +3084,16 @@ QStringList QFileDialogPrivate::qt_clean_filter_list(const QString &filter) */ void QFileDialogPrivate::_q_useNameFilter(int index) { + QStringList nameFilters = options->nameFilters(); if (index == nameFilters.size()) { QAbstractItemModel *comboModel = qFileDialogUi->fileTypeCombo->model(); nameFilters.append(comboModel->index(comboModel->rowCount() - 1, 0).data().toString()); + options->setNameFilters(nameFilters); } QString nameFilter = nameFilters.at(index); QStringList newNameFilters = qt_clean_filter_list(nameFilter); - if (acceptMode == QFileDialog::AcceptSave) { + if (q_func()->acceptMode() == QFileDialog::AcceptSave) { QString newNameFilterExtension; if (newNameFilters.count() > 0) newNameFilterExtension = QFileInfo(newNameFilters.at(0)).suffix(); @@ -3065,6 +3120,7 @@ void QFileDialogPrivate::_q_useNameFilter(int index) */ void QFileDialogPrivate::_q_selectionChanged() { + const QFileDialog::FileMode fileMode = q_func()->fileMode(); QModelIndexList indexes = qFileDialogUi->listView->selectionModel()->selectedRows(); bool stripDirs = (fileMode != QFileDialog::DirectoryOnly && fileMode != QFileDialog::Directory); @@ -3120,18 +3176,13 @@ void QFileDialogPrivate::_q_rowsInserted(const QModelIndex &parent) void QFileDialogPrivate::_q_fileRenamed(const QString &path, const QString oldName, const QString newName) { + const QFileDialog::FileMode fileMode = q_func()->fileMode(); if (fileMode == QFileDialog::Directory || fileMode == QFileDialog::DirectoryOnly) { if (path == rootPath() && lineEdit()->text() == oldName) lineEdit()->setText(newName); } } -void QFileDialogPrivate::_q_platformRunNativeAppModalPanel() -{ - if (nativeDialogInUse) - platformHelper()->_q_platformRunNativeAppModalPanel(); -} - /*! \internal diff --git a/src/widgets/dialogs/qfiledialog_p.h b/src/widgets/dialogs/qfiledialog_p.h index 1780fff72c..cdafcf6058 100644 --- a/src/widgets/dialogs/qfiledialog_p.h +++ b/src/widgets/dialogs/qfiledialog_p.h @@ -130,6 +130,9 @@ public: QStringList typedFiles() const; QStringList addDefaultSuffixToFiles(const QStringList filesToFix) const; bool removeDirectory(const QString &path); + void setLabelTextControl(QFileDialog::DialogLabel label, const QString &text); + inline void updateFileNameLabel(); + void updateOkButtonText(bool saveAsOnFolder = false); inline QModelIndex mapToSource(const QModelIndex &index) const; inline QModelIndex mapFromSource(const QModelIndex &index) const; @@ -170,6 +173,7 @@ public: QDir::Filters filterForMode(QDir::Filters filters) const { + const QFileDialog::FileMode fileMode = q_func()->fileMode(); if (fileMode == QFileDialog::DirectoryOnly) { filters |= QDir::Drives | QDir::AllDirs | QDir::Dirs; filters &= ~QDir::Files; @@ -224,7 +228,6 @@ public: void _q_autoCompleteFileName(const QString &); void _q_rowsInserted(const QModelIndex & parent); void _q_fileRenamed(const QString &path, const QString oldName, const QString newName); - void _q_platformRunNativeAppModalPanel(); static QStringList qt_clean_filter_list(const QString &filter); static const char *qt_file_dialog_filter_reg_exp; @@ -242,10 +245,6 @@ public: QFSCompleter *completer; #endif //QT_NO_FSCOMPLETER - QFileDialog::FileMode fileMode; - QFileDialog::AcceptMode acceptMode; - bool confirmOverwrite; - QString defaultSuffix; QString setWindowTitle; QStringList currentHistory; @@ -258,8 +257,6 @@ public: bool useDefaultCaption; bool defaultFileTypes; - bool fileNameLabelExplicitlySat; - QStringList nameFilters; // setVisible_sys returns true if it ends up showing a native // dialog. Returning false means that a non-native dialog must be @@ -273,7 +270,6 @@ public: void selectFile_sys(const QString &filename); QStringList selectedFiles_sys() const; void setFilter_sys(); - void setNameFilters_sys(const QStringList &filters); void selectNameFilter_sys(const QString &filter); QString selectedNameFilter_sys() const; ////////////////////////////////////////////// @@ -286,12 +282,14 @@ public: QByteArray memberToDisconnectOnClose; QByteArray signalToDisconnectOnClose; - QFileDialog::Options opts; + QSharedPointer options; ~QFileDialogPrivate(); private: virtual void initHelper(QPlatformDialogHelper *); + virtual void helperPrepareShow(QPlatformDialogHelper *); + virtual void helperDone(QDialog::DialogCode, QPlatformDialogHelper *); Q_DISABLE_COPY(QFileDialogPrivate) }; @@ -348,16 +346,6 @@ private: QFileDialogPrivate *d_ptr; }; -void QFileDialogPrivate::initHelper(QPlatformDialogHelper *h) -{ - QFileDialog *d = q_func(); - QObject::connect(h, SIGNAL(fileSelected(QString)), d, SIGNAL(fileSelected(QString))); - QObject::connect(h, SIGNAL(filesSelected(QStringList)), d, SIGNAL(filesSelected(QStringList))); - QObject::connect(h, SIGNAL(currentChanged(QString)), d, SIGNAL(currentChanged(QString))); - QObject::connect(h, SIGNAL(directoryEntered(QString)), d, SIGNAL(directoryEntered(QString))); - QObject::connect(h, SIGNAL(filterSelected(QString)), d, SIGNAL(filterSelected(QString))); -} - inline QModelIndex QFileDialogPrivate::mapToSource(const QModelIndex &index) const { #ifdef QT_NO_PROXYMODEL return index; @@ -427,12 +415,6 @@ inline void QFileDialogPrivate::setFilter_sys() helper->setFilter_sys(); } -inline void QFileDialogPrivate::setNameFilters_sys(const QStringList &filters) -{ - if (QPlatformFileDialogHelper *helper = platformFileDialogHelper()) - helper->setNameFilters_sys(filters); -} - inline void QFileDialogPrivate::selectNameFilter_sys(const QString &filter) { if (QPlatformFileDialogHelper *helper = platformFileDialogHelper()) diff --git a/src/widgets/dialogs/qfontdialog.cpp b/src/widgets/dialogs/qfontdialog.cpp index 1935a5aa73..3cc33dad9b 100644 --- a/src/widgets/dialogs/qfontdialog.cpp +++ b/src/widgets/dialogs/qfontdialog.cpp @@ -495,6 +495,12 @@ void QFontDialogPrivate::initHelper(QPlatformDialogHelper *h) QFontDialog *d = q_func(); QObject::connect(h, SIGNAL(currentFontChanged(QFont)), d, SIGNAL(currentFontChanged(QFont))); QObject::connect(h, SIGNAL(fontSelected(QFont)), d, SIGNAL(fontSelected(QFont))); + static_cast(h)->setOptions(options); +} + +void QFontDialogPrivate::helperPrepareShow(QPlatformDialogHelper *) +{ + options->setWindowTitle(q_func()->windowTitle()); } /* @@ -888,8 +894,7 @@ QFont QFontDialog::selectedFont() const void QFontDialog::setOption(FontDialogOption option, bool on) { Q_D(QFontDialog); - if (!(d->opts & option) != !on) - setOptions(d->opts ^ option); + d->options->setOption(static_cast(option), on); } /*! @@ -901,7 +906,7 @@ void QFontDialog::setOption(FontDialogOption option, bool on) bool QFontDialog::testOption(FontDialogOption option) const { Q_D(const QFontDialog); - return (d->opts & option) != 0; + return d->options->testOption(static_cast(option)); } /*! @@ -921,18 +926,17 @@ void QFontDialog::setOptions(FontDialogOptions options) { Q_D(QFontDialog); - FontDialogOptions changed = (options ^ d->opts); - if (!changed) + if (QFontDialog::options() == options) return; - d->opts = options; + d->options->setOptions(QFontDialogOptions::FontDialogOptions(int(options))); d->buttonBox->setVisible(!(options & NoButtons)); } QFontDialog::FontDialogOptions QFontDialog::options() const { Q_D(const QFontDialog); - return d->opts; + return QFontDialog::FontDialogOptions(int(d->options->options())); } #ifdef Q_WS_MAC @@ -1043,7 +1047,7 @@ bool QFontDialogPrivate::canBeNativeDialog() return true; if (q->testAttribute(Qt::WA_DontShowOnScreen)) return false; - if (opts & QFontDialog::DontUseNativeDialog) + if (options->options() & QFontDialog::DontUseNativeDialog) return false; QLatin1String staticName(QFontDialog::staticMetaObject.className()); diff --git a/src/widgets/dialogs/qfontdialog_p.h b/src/widgets/dialogs/qfontdialog_p.h index ef4e933624..8762ef2b07 100644 --- a/src/widgets/dialogs/qfontdialog_p.h +++ b/src/widgets/dialogs/qfontdialog_p.h @@ -58,6 +58,7 @@ #include "qfontdatabase.h" #include "qfontdialog.h" #include "qplatformdialoghelper_qpa.h" +#include "qsharedpointer.h" #ifndef QT_NO_FONTDIALOG @@ -78,7 +79,7 @@ class QFontDialogPrivate : public QDialogPrivate public: inline QFontDialogPrivate() - : writingSystem(QFontDatabase::Any) + : writingSystem(QFontDatabase::Any), options(new QFontDialogOptions) { } QPlatformFontDialogHelper *platformFontDialogHelper() const @@ -138,7 +139,7 @@ public: int size; bool smoothScalable; QFont selectedFont; - QFontDialog::FontDialogOptions opts; + QSharedPointer options; QPointer receiverToDisconnectOnClose; QByteArray memberToDisconnectOnClose; @@ -163,6 +164,7 @@ public: private: virtual void initHelper(QPlatformDialogHelper *); + virtual void helperPrepareShow(QPlatformDialogHelper *); }; #endif // QT_NO_FONTDIALOG diff --git a/src/widgets/kernel/qplatformdialoghelper_qpa.cpp b/src/widgets/kernel/qplatformdialoghelper_qpa.cpp index daf864ff30..f2ece1d617 100644 --- a/src/widgets/kernel/qplatformdialoghelper_qpa.cpp +++ b/src/widgets/kernel/qplatformdialoghelper_qpa.cpp @@ -42,6 +42,11 @@ #include "qplatformdialoghelper_qpa.h" #include +#include +#include +#include +#include +#include QT_BEGIN_NAMESPACE @@ -87,4 +92,465 @@ QVariant QPlatformDialogHelper::defaultStyleHint(QPlatformDialogHelper::StyleHi return QVariant(); } +void QPlatformDialogHelper::emitLaunchNativeAppModalPanel() +{ + emit launchNativeAppModalPanel(); +} + +// Font dialog + +class QFontDialogOptionsPrivate : public QSharedData +{ +public: + QFontDialogOptionsPrivate() : options(0) {} + + QFontDialogOptions::FontDialogOptions options; + QString windowTitle; +}; + +QFontDialogOptions::QFontDialogOptions() : d(new QFontDialogOptionsPrivate) +{ +} + +QFontDialogOptions::QFontDialogOptions(const QFontDialogOptions &rhs) : d(rhs.d) +{ +} + +QFontDialogOptions &QFontDialogOptions::operator=(const QFontDialogOptions &rhs) +{ + if (this != &rhs) + d = rhs.d; + return *this; +} + +QFontDialogOptions::~QFontDialogOptions() +{ +} + +QString QFontDialogOptions::windowTitle() const +{ + return d->windowTitle; +} + +void QFontDialogOptions::setWindowTitle(const QString &title) +{ + d->windowTitle = title; +} + +void QFontDialogOptions::setOption(QFontDialogOptions::FontDialogOption option, bool on) +{ + if (!(d->options & option) != !on) + setOptions(d->options ^ option); +} + +bool QFontDialogOptions::testOption(QFontDialogOptions::FontDialogOption option) const +{ + return d->options & option; +} + +void QFontDialogOptions::setOptions(FontDialogOptions options) +{ + if (options != d->options) + d->options = options; +} + +QFontDialogOptions::FontDialogOptions QFontDialogOptions::options() const +{ + return d->options; +} + +const QSharedPointer &QPlatformFontDialogHelper::options() const +{ + return m_options; +} + +void QPlatformFontDialogHelper::setOptions(const QSharedPointer &options) +{ + m_options = options; +} + +// Color dialog + +class QColorDialogStaticData +{ +public: + enum { CustomColorCount = 16, StandardColorCount = 6 * 8 }; + + QColorDialogStaticData(); + inline void readSettings(); + inline void writeSettings() const; + + QRgb customRgb[CustomColorCount]; + QRgb standardRgb[StandardColorCount]; + bool customSet; +}; + +QColorDialogStaticData::QColorDialogStaticData() : customSet(false) +{ + int i = 0; + for (int g = 0; g < 4; ++g) + for (int r = 0; r < 4; ++r) + for (int b = 0; b < 3; ++b) + standardRgb[i++] = qRgb(r * 255 / 3, g * 255 / 3, b * 255 / 2); + qFill(customRgb, customRgb + CustomColorCount, 0xffffffff); + readSettings(); +} + +void QColorDialogStaticData::readSettings() +{ +#ifndef QT_NO_SETTINGS + const QSettings settings(QSettings::UserScope, QStringLiteral("Trolltech")); + for (int i = 0; i < int(CustomColorCount); ++i) { + const QVariant v = settings.value(QStringLiteral("Qt/customColors/") + QString::number(i)); + if (v.isValid()) + customRgb[i] = v.toUInt(); + } +#endif +} + +void QColorDialogStaticData::writeSettings() const +{ +#ifndef QT_NO_SETTINGS + if (!customSet) { + QSettings settings(QSettings::UserScope, QStringLiteral("Trolltech")); + for (int i = 0; i < int(CustomColorCount); ++i) + settings.setValue(QStringLiteral("Qt/customColors/") + QString::number(i), customRgb[i]); + } +#endif +} + +Q_GLOBAL_STATIC(QColorDialogStaticData, qColorDialogStaticData) + +class QColorDialogOptionsPrivate : public QSharedData +{ +public: + QColorDialogOptionsPrivate() : options(0) {} + // Write out settings around destruction of dialogs + ~QColorDialogOptionsPrivate() { qColorDialogStaticData()->writeSettings(); } + + QColorDialogOptions::ColorDialogOptions options; + QString windowTitle; +}; + +QColorDialogOptions::QColorDialogOptions() : d(new QColorDialogOptionsPrivate) +{ +} + +QColorDialogOptions::QColorDialogOptions(const QColorDialogOptions &rhs) : d(rhs.d) +{ +} + +QColorDialogOptions &QColorDialogOptions::operator=(const QColorDialogOptions &rhs) +{ + if (this != &rhs) + d = rhs.d; + return *this; +} + +QColorDialogOptions::~QColorDialogOptions() +{ +} + +QString QColorDialogOptions::windowTitle() const +{ + return d->windowTitle; +} + +void QColorDialogOptions::setWindowTitle(const QString &title) +{ + d->windowTitle = title; +} + +void QColorDialogOptions::setOption(QColorDialogOptions::ColorDialogOption option, bool on) +{ + if (!(d->options & option) != !on) + setOptions(d->options ^ option); +} + +bool QColorDialogOptions::testOption(QColorDialogOptions::ColorDialogOption option) const +{ + return d->options & option; +} + +void QColorDialogOptions::setOptions(ColorDialogOptions options) +{ + if (options != d->options) + d->options = options; +} + +QColorDialogOptions::ColorDialogOptions QColorDialogOptions::options() const +{ + return d->options; +} + +int QColorDialogOptions::customColorCount() +{ + return QColorDialogStaticData::CustomColorCount; +} + +QRgb QColorDialogOptions::customColor(int index) +{ + if (uint(index) >= uint(QColorDialogStaticData::CustomColorCount)) + return qRgb(255, 255, 255); + return qColorDialogStaticData()->customRgb[index]; +} + +QRgb *QColorDialogOptions::customColors() +{ + return qColorDialogStaticData()->customRgb; +} + +void QColorDialogOptions::setCustomColor(int index, QRgb color) +{ + if (uint(index) >= uint(QColorDialogStaticData::CustomColorCount)) + return; + qColorDialogStaticData()->customSet; + qColorDialogStaticData()->customRgb[index] = color; +} + +QRgb *QColorDialogOptions::standardColors() +{ + return qColorDialogStaticData()->standardRgb; +} + +QRgb QColorDialogOptions::standardColor(int index) +{ + if (uint(index) >= uint(QColorDialogStaticData::StandardColorCount)) + return qRgb(255, 255, 255); + return qColorDialogStaticData()->standardRgb[index]; +} + +void QColorDialogOptions::setStandardColor(int index, QRgb color) +{ + if (uint(index) >= uint(QColorDialogStaticData::StandardColorCount)) + return; + qColorDialogStaticData()->standardRgb[index] = color; +} + +const QSharedPointer &QPlatformColorDialogHelper::options() const +{ + return m_options; +} + +void QPlatformColorDialogHelper::setOptions(const QSharedPointer &options) +{ + m_options = options; +} + +// File dialog + +class QFileDialogOptionsPrivate : public QSharedData +{ +public: + QFileDialogOptionsPrivate() : options(0), + viewMode(QFileDialogOptions::Detail), + fileMode(QFileDialogOptions::AnyFile), + acceptMode(QFileDialogOptions::AcceptOpen), + filters(QDir::AllEntries | QDir::NoDotAndDotDot | QDir::AllDirs) + {} + + QFileDialogOptions::FileDialogOptions options; + QString windowTitle; + + QFileDialogOptions::ViewMode viewMode; + QFileDialogOptions::FileMode fileMode; + QFileDialogOptions::AcceptMode acceptMode; + QString labels[QFileDialogOptions::DialogLabelCount]; + QDir::Filters filters; + QList sidebarUrls; + QStringList nameFilters; + QString defaultSuffix; + QStringList history; + QString initialDirectory; + QString initiallySelectedNameFilter; + QStringList initiallySelectedFiles; +}; + +QFileDialogOptions::QFileDialogOptions() : d(new QFileDialogOptionsPrivate) +{ +} + +QFileDialogOptions::QFileDialogOptions(const QFileDialogOptions &rhs) : d(rhs.d) +{ +} + +QFileDialogOptions &QFileDialogOptions::operator=(const QFileDialogOptions &rhs) +{ + if (this != &rhs) + d = rhs.d; + return *this; +} + +QFileDialogOptions::~QFileDialogOptions() +{ +} + +QString QFileDialogOptions::windowTitle() const +{ + return d->windowTitle; +} + +void QFileDialogOptions::setWindowTitle(const QString &title) +{ + d->windowTitle = title; +} + +void QFileDialogOptions::setOption(QFileDialogOptions::FileDialogOption option, bool on) +{ + if (!(d->options & option) != !on) + setOptions(d->options ^ option); +} + +bool QFileDialogOptions::testOption(QFileDialogOptions::FileDialogOption option) const +{ + return d->options & option; +} + +void QFileDialogOptions::setOptions(FileDialogOptions options) +{ + if (options != d->options) + d->options = options; +} + +QFileDialogOptions::FileDialogOptions QFileDialogOptions::options() const +{ + return d->options; +} + +QDir::Filters QFileDialogOptions::filter() const +{ + return d->filters; +} + +void QFileDialogOptions::setFilter(QDir::Filters filters) +{ + d->filters = filters; +} + +void QFileDialogOptions::setViewMode(QFileDialogOptions::ViewMode mode) +{ + d->viewMode = mode; +} + +QFileDialogOptions::ViewMode QFileDialogOptions::viewMode() const +{ + return d->viewMode; +} + +void QFileDialogOptions::setFileMode(QFileDialogOptions::FileMode mode) +{ + d->fileMode = mode; +} + +QFileDialogOptions::FileMode QFileDialogOptions::fileMode() const +{ + return d->fileMode; +} + +void QFileDialogOptions::setAcceptMode(QFileDialogOptions::AcceptMode mode) +{ + d->acceptMode = mode; +} + +QFileDialogOptions::AcceptMode QFileDialogOptions::acceptMode() const +{ + return d->acceptMode; +} + +void QFileDialogOptions::setSidebarUrls(const QList &urls) +{ + d->sidebarUrls = urls; +} + +QList QFileDialogOptions::sidebarUrls() const +{ + return d->sidebarUrls; +} + +void QFileDialogOptions::setNameFilters(const QStringList &filters) +{ + d->nameFilters = filters; +} + +QStringList QFileDialogOptions::nameFilters() const +{ + return d->nameFilters; +} + +void QFileDialogOptions::setDefaultSuffix(const QString &suffix) +{ + d->defaultSuffix = suffix; +} + +QString QFileDialogOptions::defaultSuffix() const +{ + return d->defaultSuffix; +} + +void QFileDialogOptions::setHistory(const QStringList &paths) +{ + d->history = paths; +} + +QStringList QFileDialogOptions::history() const +{ + return d->history; +} + +void QFileDialogOptions::setLabelText(QFileDialogOptions::DialogLabel label, const QString &text) +{ + if (label >= 0 && label < DialogLabelCount) + d->labels[label] = text; +} + +QString QFileDialogOptions::labelText(QFileDialogOptions::DialogLabel label) const +{ + return (label >= 0 && label < DialogLabelCount) ? d->labels[label] : QString(); +} + +bool QFileDialogOptions::isLabelExplicitlySet(DialogLabel label) +{ + return label >= 0 && label < DialogLabelCount && !d->labels[label].isEmpty(); +} + +QString QFileDialogOptions::initialDirectory() const +{ + return d->initialDirectory; +} + +void QFileDialogOptions::setInitialDirectory(const QString &directory) +{ + d->initialDirectory = directory; +} + +QString QFileDialogOptions::initiallySelectedNameFilter() const +{ + return d->initiallySelectedNameFilter; +} + +void QFileDialogOptions::setInitiallySelectedNameFilter(const QString &filter) +{ + d->initiallySelectedNameFilter = filter; +} + +QStringList QFileDialogOptions::initiallySelectedFiles() const +{ + return d->initiallySelectedFiles; +} + +void QFileDialogOptions::setInitiallySelectedFiles(const QStringList &files) +{ + d->initiallySelectedFiles = files; +} + +const QSharedPointer &QPlatformFileDialogHelper::options() const +{ + return m_options; +} + +void QPlatformFileDialogHelper::setOptions(const QSharedPointer &options) +{ + m_options = options; +} + QT_END_NAMESPACE diff --git a/src/widgets/kernel/qplatformdialoghelper_qpa.h b/src/widgets/kernel/qplatformdialoghelper_qpa.h index 970de611bc..e607d3e810 100644 --- a/src/widgets/kernel/qplatformdialoghelper_qpa.h +++ b/src/widgets/kernel/qplatformdialoghelper_qpa.h @@ -42,8 +42,13 @@ #ifndef QPLATFORMDIALOGHELPER_H #define QPLATFORMDIALOGHELPER_H -#include -#include +#include +#include +#include +#include +#include +#include +#include QT_BEGIN_HEADER @@ -56,6 +61,10 @@ class QColor; class QFont; class QWindow; class QVariant; +class QUrl; +class QColorDialogOptionsPrivate; +class QFontDialogOptionsPrivate; +class QFileDialogOptionsPrivate; class Q_WIDGETS_EXPORT QPlatformDialogHelper : public QObject { @@ -65,6 +74,11 @@ public: SnapToDefaultButton }; enum DialogCode { Rejected, Accepted }; + enum ShowFlag { + ShowModal = 0x00000001 + }; + + Q_DECLARE_FLAGS(ShowFlags, ShowFlag) QPlatformDialogHelper(); virtual ~QPlatformDialogHelper(); @@ -75,24 +89,104 @@ public: virtual void _q_platformRunNativeAppModalPanel() = 0; virtual void deleteNativeDialog_sys() = 0; - virtual bool show_sys(QWindow *parent) = 0; + virtual bool show_sys(ShowFlags showFlags, + Qt::WindowFlags windowFlags, + QWindow *parent) = 0; virtual void hide_sys() = 0; virtual DialogCode dialogResultCode_sys() = 0; static QVariant defaultStyleHint(QPlatformDialogHelper::StyleHint hint); + +Q_SIGNALS: + void launchNativeAppModalPanel(); + void accept(); + void reject(); + +protected Q_SLOTS: + void emitLaunchNativeAppModalPanel(); +}; + +class Q_WIDGETS_EXPORT QColorDialogOptions +{ +public: + enum ColorDialogOption { + ShowAlphaChannel = 0x00000001, + NoButtons = 0x00000002, + DontUseNativeDialog = 0x00000004 + }; + + Q_DECLARE_FLAGS(ColorDialogOptions, ColorDialogOption) + + QColorDialogOptions(); + QColorDialogOptions(const QColorDialogOptions &rhs); + QColorDialogOptions &operator=(const QColorDialogOptions &rhs); + ~QColorDialogOptions(); + + QString windowTitle() const; + void setWindowTitle(const QString &); + + void setOption(ColorDialogOption option, bool on = true); + bool testOption(ColorDialogOption option) const; + void setOptions(ColorDialogOptions options); + ColorDialogOptions options() const; + + static int customColorCount(); + static QRgb customColor(int index); + static QRgb *customColors(); + static void setCustomColor(int index, QRgb color); + + static QRgb *standardColors(); + static QRgb standardColor(int index); + static void setStandardColor(int index, QRgb color); + +private: + QSharedDataPointer d; }; class Q_WIDGETS_EXPORT QPlatformColorDialogHelper : public QPlatformDialogHelper { Q_OBJECT public: + const QSharedPointer &options() const; + void setOptions(const QSharedPointer &options); + virtual void setCurrentColor_sys(const QColor &) = 0; virtual QColor currentColor_sys() const = 0; Q_SIGNALS: void currentColorChanged(const QColor &color); void colorSelected(const QColor &color); + +private: + QSharedPointer m_options; +}; + +class Q_WIDGETS_EXPORT QFontDialogOptions +{ +public: + enum FontDialogOption { + NoButtons = 0x00000001, + DontUseNativeDialog = 0x00000002 + }; + + Q_DECLARE_FLAGS(FontDialogOptions, FontDialogOption) + + QFontDialogOptions(); + QFontDialogOptions(const QFontDialogOptions &rhs); + QFontDialogOptions &operator=(const QFontDialogOptions &rhs); + ~QFontDialogOptions(); + + QString windowTitle() const; + void setWindowTitle(const QString &); + + void setOption(FontDialogOption option, bool on = true); + bool testOption(FontDialogOption option) const; + void setOptions(FontDialogOptions options); + FontDialogOptions options() const; + +private: + QSharedDataPointer d; }; class Q_WIDGETS_EXPORT QPlatformFontDialogHelper : public QPlatformDialogHelper @@ -102,9 +196,89 @@ public: virtual void setCurrentFont_sys(const QFont &) = 0; virtual QFont currentFont_sys() const = 0; + const QSharedPointer &options() const; + void setOptions(const QSharedPointer &options); + Q_SIGNALS: void currentFontChanged(const QFont &font); void fontSelected(const QFont &font); + +private: + QSharedPointer m_options; +}; + +class Q_WIDGETS_EXPORT QFileDialogOptions +{ +public: + enum ViewMode { Detail, List }; + enum FileMode { AnyFile, ExistingFile, Directory, ExistingFiles, DirectoryOnly }; + enum AcceptMode { AcceptOpen, AcceptSave }; + enum DialogLabel { LookIn, FileName, FileType, Accept, Reject, DialogLabelCount }; + + enum FileDialogOption + { + ShowDirsOnly = 0x00000001, + DontResolveSymlinks = 0x00000002, + DontConfirmOverwrite = 0x00000004, + DontUseSheet = 0x00000008, + DontUseNativeDialog = 0x00000010, + ReadOnly = 0x00000020, + HideNameFilterDetails = 0x00000040 + }; + Q_DECLARE_FLAGS(FileDialogOptions, FileDialogOption) + + QFileDialogOptions(); + QFileDialogOptions(const QFileDialogOptions &rhs); + QFileDialogOptions &operator=(const QFileDialogOptions &rhs); + ~QFileDialogOptions(); + + QString windowTitle() const; + void setWindowTitle(const QString &); + + void setOption(FileDialogOption option, bool on = true); + bool testOption(FileDialogOption option) const; + void setOptions(FileDialogOptions options); + FileDialogOptions options() const; + + QDir::Filters filter() const; + void setFilter(QDir::Filters filters); + + void setViewMode(ViewMode mode); + ViewMode viewMode() const; + + void setFileMode(FileMode mode); + FileMode fileMode() const; + + void setAcceptMode(AcceptMode mode); + AcceptMode acceptMode() const; + + void setSidebarUrls(const QList &urls); + QList sidebarUrls() const; + + void setNameFilters(const QStringList &filters); + QStringList nameFilters() const; + + void setDefaultSuffix(const QString &suffix); + QString defaultSuffix() const; + + void setHistory(const QStringList &paths); + QStringList history() const; + + void setLabelText(DialogLabel label, const QString &text); + QString labelText(DialogLabel label) const; + bool isLabelExplicitlySet(DialogLabel label); + + QString initialDirectory() const; + void setInitialDirectory(const QString &); + + QString initiallySelectedNameFilter() const; + void setInitiallySelectedNameFilter(const QString &); + + QStringList initiallySelectedFiles() const; + void setInitiallySelectedFiles(const QStringList &); + +private: + QSharedDataPointer d; }; class Q_WIDGETS_EXPORT QPlatformFileDialogHelper : public QPlatformDialogHelper @@ -117,16 +291,21 @@ public: virtual void selectFile_sys(const QString &filename) = 0; virtual QStringList selectedFiles_sys() const = 0; virtual void setFilter_sys() = 0; - virtual void setNameFilters_sys(const QStringList &filters) = 0; virtual void selectNameFilter_sys(const QString &filter) = 0; virtual QString selectedNameFilter_sys() const = 0; + const QSharedPointer &options() const; + void setOptions(const QSharedPointer &options); + Q_SIGNALS: void fileSelected(const QString &file); void filesSelected(const QStringList &files); void currentChanged(const QString &path); void directoryEntered(const QString &directory); void filterSelected(const QString &filter); + +private: + QSharedPointer m_options; }; QT_END_NAMESPACE -- cgit v1.2.3 From 3b2d99a5c8b4c17f33ff4a03073bc602b7495b2b Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Mon, 12 Dec 2011 15:32:59 +0100 Subject: QIBusPlatformInputContext: Fix a crash in tst_qinputpanel::update. Change-Id: If50c442958b6f25f17325f7792bb3f882e4b13e7 Reviewed-by: Pekka Vuorela Reviewed-by: Joona Petrell --- src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.cpp b/src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.cpp index 6ab142ce25..502b415079 100644 --- a/src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.cpp +++ b/src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.cpp @@ -160,6 +160,8 @@ void QIBusPlatformInputContext::cursorRectChanged() return; QWindow *inputWindow = qApp->inputPanel()->inputWindow(); + if (!inputWindow) + return; r.moveTopLeft(inputWindow->mapToGlobal(r.topLeft())); if (debug) qDebug() << "microFocus" << r; -- cgit v1.2.3 From f295ef1a4b76eb6421fc3dcd7ab307d471c3e895 Mon Sep 17 00:00:00 2001 From: Morten Johan Sorvig Date: Wed, 14 Dec 2011 11:17:23 +0100 Subject: Cocoa: Add window debug output Add logging for setGeometry/setVisible/propagateSizeHints. Change-Id: I3590caed586d36f789dd67b1951e8152f923a407 Reviewed-by: Bradley T. Hughes --- src/plugins/platforms/cocoa/cocoa.pro | 3 +++ src/plugins/platforms/cocoa/qcocoawindow.mm | 13 +++++++++++++ 2 files changed, 16 insertions(+) diff --git a/src/plugins/platforms/cocoa/cocoa.pro b/src/plugins/platforms/cocoa/cocoa.pro index d59a0f1a0d..09b708d9a1 100644 --- a/src/plugins/platforms/cocoa/cocoa.pro +++ b/src/plugins/platforms/cocoa/cocoa.pro @@ -66,3 +66,6 @@ contains(QT_CONFIG,release):CONFIG -= debug # Acccessibility debug support # DEFINES += QT_COCOA_ENABLE_ACCESSIBILITY_INSPECTOR # include ($$PWD/../../../../util/accessibilityinspector/accessibilityinspector.pri) + +# Window debug support +#DEFINES += QT_COCOA_ENABLE_WINDOW_DEBUG diff --git a/src/plugins/platforms/cocoa/qcocoawindow.mm b/src/plugins/platforms/cocoa/qcocoawindow.mm index 86db8a5f67..859aa87cce 100644 --- a/src/plugins/platforms/cocoa/qcocoawindow.mm +++ b/src/plugins/platforms/cocoa/qcocoawindow.mm @@ -118,6 +118,9 @@ void QCocoaWindow::setGeometry(const QRect &rect) { if (geometry() == rect) return; +#ifdef QT_COCOA_ENABLE_WINDOW_DEBUG + qDebug() << "QCocoaWindow::setGeometry" << this << rect; +#endif QPlatformWindow::setGeometry(rect); NSRect bounds = qt_mac_flipRect(rect, window()); @@ -130,6 +133,9 @@ void QCocoaWindow::setGeometry(const QRect &rect) void QCocoaWindow::setVisible(bool visible) { QCocoaAutoReleasePool pool; +#ifdef QT_COCOA_ENABLE_WINDOW_DEBUG + qDebug() << "QCocoaWindow::setVisible" << this << visible; +#endif if (visible) { // The parent window might have moved while this window was hidden, // update the window geometry if there is a parent. @@ -172,6 +178,13 @@ void QCocoaWindow::propagateSizeHints() [m_nsWindow setMinSize : qt_mac_toNSSize(window()->minimumSize())]; [m_nsWindow setMaxSize : qt_mac_toNSSize(window()->maximumSize())]; +#ifdef QT_COCOA_ENABLE_WINDOW_DEBUG + qDebug() << "QCocoaWindow::propagateSizeHints" << this; + qDebug() << " min/max " << window()->minimumSize() << window()->maximumSize(); + qDebug() << " basesize" << window()->baseSize(); + qDebug() << " geometry" << geometry(); +#endif + if (!window()->sizeIncrement().isNull()) [m_nsWindow setResizeIncrements : qt_mac_toNSSize(window()->sizeIncrement())]; -- cgit v1.2.3 From f950a0f0c0b9259bb424f0c81fd6516fe8e4e103 Mon Sep 17 00:00:00 2001 From: Morten Sorvig Date: Tue, 6 Dec 2011 12:59:21 +0100 Subject: Make QCocoaWindow independent of NSWindow. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit QCocoaWindow now gets resize events from QNSViev and does not require a NSWindow. QWindow instances can now be inserted in NSView hierarchies. This is useful for Qt-as-a-plugin use cases and is needed to implement QMacNativeWidget for Qt 5. Change-Id: Ia95ea9c22a15a3e62d1e6543466cff07390c70a2 Reviewed-by: Morten Johan Sørvig --- .../platforms/cocoa/qcocoanativeinterface.mm | 7 + src/plugins/platforms/cocoa/qcocoawindow.h | 28 ++- src/plugins/platforms/cocoa/qcocoawindow.mm | 18 +- src/plugins/platforms/cocoa/qnsview.h | 4 +- src/plugins/platforms/cocoa/qnsview.mm | 27 ++- tests/manual/cocoa/qt_on_cocoa/main.mm | 213 +++++++++++++++++++++ tests/manual/cocoa/qt_on_cocoa/qt_on_cocoa.pro | 12 ++ tests/manual/cocoa/qt_on_cocoa/window.cpp | 203 ++++++++++++++++++++ tests/manual/cocoa/qt_on_cocoa/window.h | 74 +++++++ 9 files changed, 570 insertions(+), 16 deletions(-) create mode 100644 tests/manual/cocoa/qt_on_cocoa/main.mm create mode 100644 tests/manual/cocoa/qt_on_cocoa/qt_on_cocoa.pro create mode 100644 tests/manual/cocoa/qt_on_cocoa/window.cpp create mode 100644 tests/manual/cocoa/qt_on_cocoa/window.h diff --git a/src/plugins/platforms/cocoa/qcocoanativeinterface.mm b/src/plugins/platforms/cocoa/qcocoanativeinterface.mm index c6aa0d39e6..e48d588e5a 100644 --- a/src/plugins/platforms/cocoa/qcocoanativeinterface.mm +++ b/src/plugins/platforms/cocoa/qcocoanativeinterface.mm @@ -52,8 +52,15 @@ void *QCocoaNativeInterface::nativeResourceForWindow(const QByteArray &resourceString, QWindow *window) { + if (!window->handle()) { + qWarning("QCocoaNativeInterface::nativeResourceForWindow: Native window has not been created."); + return 0; + } + if (resourceString == "nsopenglcontext") { return static_cast(window->handle())->currentContext()->nsOpenGLContext(); + } else if (resourceString == "nsview") { + return static_cast(window->handle())->m_contentView; } return 0; } diff --git a/src/plugins/platforms/cocoa/qcocoawindow.h b/src/plugins/platforms/cocoa/qcocoawindow.h index 9fa04a0ca2..2c5f6b5db0 100644 --- a/src/plugins/platforms/cocoa/qcocoawindow.h +++ b/src/plugins/platforms/cocoa/qcocoawindow.h @@ -65,6 +65,25 @@ @end QT_BEGIN_NAMESPACE +// QCocoaWindow +// +// QCocoaWindow is an NSView (not an NSWindow!) in the sense +// that it relies on a NSView for all event handling and +// graphics output and does not require a NSWindow, except for +// for the window-related functions like setWindowTitle. +// +// As a consequence of this it is possible to embed the QCocoaWindow +// in an NSView hierarchy by getting a pointer to the "backing" +// NSView and not calling QCocoaWindow::show(): +// +// QWindow *qtWindow = new MyWindow(); +// qtWindow->create(); +// QPlatformNativeInterface *platformNativeInterface = QGuiApplication::platformNativeInterface(); +// NSView *qtView = (NSView *)platformNativeInterface->nativeResourceForWindow("nsview", qtWindow); +// [parentView addSubview:qtView]; +// +// See the qt_on_cocoa manual tests for a working example, located +// in tests/manual/cocoa at the time of writing. class QCocoaWindow : public QPlatformWindow { @@ -97,12 +116,17 @@ protected: QRect windowGeometry() const; QCocoaWindow *parentCocoaWindow() const; -private: +// private: +public: // for QNSView friend class QCocoaBackingStore; - NSWindow *m_nsWindow; + friend class QCocoaNativeInterface; + QNSView *m_contentView; + QNSWindow *m_nsWindow; + quint32 m_windowAttributes; quint32 m_windowClass; + bool m_inConstructor; QCocoaGLContext *m_glContext; }; diff --git a/src/plugins/platforms/cocoa/qcocoawindow.mm b/src/plugins/platforms/cocoa/qcocoawindow.mm index 859aa87cce..27e8e9a2c9 100644 --- a/src/plugins/platforms/cocoa/qcocoawindow.mm +++ b/src/plugins/platforms/cocoa/qcocoawindow.mm @@ -81,6 +81,7 @@ QCocoaWindow::QCocoaWindow(QWindow *tlw) , m_windowAttributes(0) , m_windowClass(0) , m_glContext(0) + , m_inConstructor(true) { QCocoaAutoReleasePool pool; @@ -97,7 +98,7 @@ QCocoaWindow::QCocoaWindow(QWindow *tlw) // QCocoaWindow is deleted by Qt. [m_nsWindow setReleasedWhenClosed : NO]; - m_contentView = [[QNSView alloc] initWithQWindow:tlw]; + m_contentView = [[QNSView alloc] initWithQWindow:tlw platformWindow:this]; // ### Accept touch events by default. // Beware that enabling touch events has a negative impact on the overall performance. @@ -107,6 +108,7 @@ QCocoaWindow::QCocoaWindow(QWindow *tlw) setGeometry(tlw->geometry()); [m_nsWindow setContentView:m_contentView]; + m_inConstructor = false; } QCocoaWindow::~QCocoaWindow() @@ -124,8 +126,6 @@ void QCocoaWindow::setGeometry(const QRect &rect) QPlatformWindow::setGeometry(rect); NSRect bounds = qt_mac_flipRect(rect, window()); - - [[m_nsWindow contentView] setFrameSize:bounds.size]; [m_nsWindow setContentSize : bounds.size]; [m_nsWindow setFrameOrigin : bounds.origin]; } @@ -232,23 +232,17 @@ void QCocoaWindow::windowDidMove() { NSRect rect = [[m_nsWindow contentView]frame]; NSRect windowRect = [m_nsWindow frame]; - - QRect geo(windowRect.origin.x, qt_mac_flipYCoordinate(windowRect.origin.y + rect.size.height), rect.size.width, rect.size.height); - setGeometry(geo); - QWindowSystemInterface::handleSynchronousGeometryChange(window(), geo); + [[m_nsWindow contentView] setFrameSize:rect.size]; } void QCocoaWindow::windowDidResize() { NSRect rect = [[m_nsWindow contentView]frame]; NSRect windowRect = [m_nsWindow frame]; - - QRect geo(windowRect.origin.x, qt_mac_flipYCoordinate(windowRect.origin.y + rect.size.height), rect.size.width, rect.size.height); - setGeometry(geo); - QWindowSystemInterface::handleSynchronousGeometryChange(window(), geo); + // Call setFrameSize which will trigger a frameDidChangeNotificatio on QNSView. + [[m_nsWindow contentView] setFrameSize:rect.size]; } - void QCocoaWindow::windowWillClose() { QWindowSystemInterface::handleSynchronousCloseEvent(window()); diff --git a/src/plugins/platforms/cocoa/qnsview.h b/src/plugins/platforms/cocoa/qnsview.h index eddc1aa7e9..571449492d 100644 --- a/src/plugins/platforms/cocoa/qnsview.h +++ b/src/plugins/platforms/cocoa/qnsview.h @@ -47,15 +47,17 @@ #include #include +class QCocoaWindow; @interface QNSView : NSView { CGImageRef m_cgImage; QWindow *m_window; + QCocoaWindow *m_platformWindow; Qt::MouseButtons m_buttons; QAccessibleInterface *m_accessibleRoot; } - (id)init; -- (id)initWithQWindow:(QWindow *)window; +- (id)initWithQWindow:(QWindow *)window platformWindow:(QCocoaWindow *) platformWindow; - (void)setImage:(QImage *)image; - (void)drawRect:(NSRect)dirtyRect; diff --git a/src/plugins/platforms/cocoa/qnsview.mm b/src/plugins/platforms/cocoa/qnsview.mm index 82b4e54deb..1a1e02d2fd 100644 --- a/src/plugins/platforms/cocoa/qnsview.mm +++ b/src/plugins/platforms/cocoa/qnsview.mm @@ -44,6 +44,7 @@ #include #include "qnsview.h" +#include "qcocoawindow.h" #include "qcocoahelpers.h" #include "qmultitouch_mac_p.h" @@ -81,12 +82,14 @@ static QTouchDevice *touchDevice = 0; return self; } -- (id)initWithQWindow:(QWindow *)window { +- (id)initWithQWindow:(QWindow *)window platformWindow:(QCocoaWindow *) platformWindow +{ self = [self init]; if (!self) return 0; m_window = window; + m_platformWindow = platformWindow; m_accessibleRoot = 0; #ifdef QT_COCOA_ENABLE_ACCESSIBILITY_INSPECTOR @@ -106,9 +109,31 @@ static QTouchDevice *touchDevice = 0; m_accessibleRoot = window->accessibleRoot(); #endif + [self setPostsFrameChangedNotifications : YES]; + [[NSNotificationCenter defaultCenter] addObserver:self + selector:@selector(frameDidChangeNotification:) + name:NSViewFrameDidChangeNotification + object:self]; + return self; } +- (void) frameDidChangeNotification: (NSNotification *) notification +{ + NSRect rect = [self frame]; + NSRect windowRect = [[self window] frame]; + QRect geo(windowRect.origin.x, qt_mac_flipYCoordinate(windowRect.origin.y + rect.size.height), rect.size.width, rect.size.height); + + // Call setGeometry on QPlatformWindow. (not on QCocoaWindow, + // doing that will initiate a geometry change it and possibly create + // an infinite loop when this notification is triggered again.) + m_platformWindow->QPlatformWindow::setGeometry(geo); + + // Send a geometry change event to Qt, if it's ready to handle events + if (!m_platformWindow->m_inConstructor) + QWindowSystemInterface::handleSynchronousGeometryChange(m_window, geo); +} + - (void) setImage:(QImage *)image { CGImageRelease(m_cgImage); diff --git a/tests/manual/cocoa/qt_on_cocoa/main.mm b/tests/manual/cocoa/qt_on_cocoa/main.mm new file mode 100644 index 0000000000..0f3d6800b3 --- /dev/null +++ b/tests/manual/cocoa/qt_on_cocoa/main.mm @@ -0,0 +1,213 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include +#include + +#include +#include +#include + +#include + +#include "window.h" + +#include + + +@interface FilledView : NSView +{ + +} +@end + + +@implementation FilledView + +- (void)drawRect:(NSRect)dirtyRect { + // set any NSColor for filling, say white: + [[NSColor redColor] setFill]; + NSRectFill(dirtyRect); +} + +@end + +@interface QtMacToolbarDelegate : NSObject +{ +@public + NSToolbar *toolbar; +} + +- (id)init; +- (NSToolbarItem *) toolbar: (NSToolbar *)toolbar itemForItemIdentifier: (NSString *) itemIdent willBeInsertedIntoToolbar:(BOOL) willBeInserted; +- (NSArray *)toolbarDefaultItemIdentifiers:(NSToolbar*)tb; +- (NSArray *)toolbarAllowedItemIdentifiers:(NSToolbar*)toolbar; +- (NSArray *)toolbarSelectableItemIdentifiers:(NSToolbar *)toolbar; +@end + +@implementation QtMacToolbarDelegate + +- (id)init +{ + self = [super init]; + if (self) { + } + return self; +} + +- (void)dealloc +{ + [super dealloc]; +} + +- (NSArray *)toolbarDefaultItemIdentifiers:(NSToolbar*)tb +{ + Q_UNUSED(tb); + NSMutableArray *array = [[[NSMutableArray alloc] init] autorelease]; +// [array addObject : NSToolbarPrintItemIdentifier]; +// [array addObject : NSToolbarShowColorsItemIdentifier]; + [array addObject : @"filledView"]; + return array; +} + +- (NSArray *)toolbarAllowedItemIdentifiers:(NSToolbar*)tb +{ + Q_UNUSED(tb); + NSMutableArray *array = [[[NSMutableArray alloc] init] autorelease]; +// [array addObject : NSToolbarPrintItemIdentifier]; +// [array addObject : NSToolbarShowColorsItemIdentifier]; + [array addObject : @"filledView"]; + return array; +} + +- (NSArray *)toolbarSelectableItemIdentifiers: (NSToolbar *)tb +{ + Q_UNUSED(tb); + NSMutableArray *array = [[[NSMutableArray alloc] init] autorelease]; + return array; +} + +- (IBAction)itemClicked:(id)sender +{ + +} + +- (NSToolbarItem *) toolbar: (NSToolbar *)tb itemForItemIdentifier: (NSString *) itemIdentifier willBeInsertedIntoToolbar:(BOOL) willBeInserted +{ + Q_UNUSED(tb); + Q_UNUSED(willBeInserted); + //const QString identifier = toQString(itemIdentifier); + //NSToolbarItem *toolbarItem = [[[NSToolbarItem alloc] initWithItemIdentifier: itemIdentifier] autorelease]; + //return toolbarItem; + + //NSToolbarItem *toolbarItem = [[[NSToolbarItem alloc] initWithItemIdentifier: itemIdentifier] autorelease]; + NSToolbarItem *toolbarItem = [[[NSToolbarItem alloc] initWithItemIdentifier: itemIdentifier] autorelease]; + FilledView *theView = [[FilledView alloc] init]; + [toolbarItem setView : theView]; + [toolbarItem setMinSize : NSMakeSize(400, 40)]; + [toolbarItem setMaxSize : NSMakeSize(4000, 40)]; + return toolbarItem; +} +@end + +@interface WindowAndViewAndQtCreator : NSObject {} +- (void)createWindowAndViewAndQt; +@end + +@implementation WindowAndViewAndQtCreator +- (void)createWindowAndViewAndQt { + + // Create the window + NSRect frame = NSMakeRect(500, 500, 500, 500); + NSWindow* window = [[NSWindow alloc] initWithContentRect:frame + styleMask:NSTitledWindowMask | NSClosableWindowMask | NSMiniaturizableWindowMask | NSResizableWindowMask + backing:NSBackingStoreBuffered + defer:NO]; + + NSString *title = @"This the NSWindow window"; + [window setTitle:title]; + + [window setBackgroundColor:[NSColor blueColor]]; + + // Create a tool bar, set Qt delegate + NSToolbar *toolbar = [[NSToolbar alloc] initWithIdentifier : @"foobartoolbar"]; + QtMacToolbarDelegate *delegate = [[QtMacToolbarDelegate alloc] init]; + [toolbar setDelegate : delegate]; + [window setToolbar : toolbar]; + + // Create the QWindow, don't show it. + Window *qtWindow = new Window(); + qtWindow->create(); + + //QSGView *qtWindow = new QSGView(); + //qtWindow->setSource(QUrl::fromLocalFile("/Users/msorvig/code/qt5/qtdeclarative/examples/declarative/samegame/samegame.qml")); + // qtWindow->setWindowFlags(Qt::WindowType(13)); // 13: NativeEmbeddedWindow + + // Get the nsview from the QWindow, set it as the content view + // on the NSWindow created above. + QPlatformNativeInterface *platformNativeInterface = QGuiApplication::platformNativeInterface(); + NSView *qtView = (NSView *)platformNativeInterface->nativeResourceForWindow("nsview", qtWindow); + [window setContentView:qtView]; + [window makeKeyAndOrderFront:NSApp]; +} +@end + +int main(int argc, char *argv[]) +{ + QGuiApplication app(argc, argv); + + // fake NSApplicationMain() implementation follows: + NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init]; + [NSApplication sharedApplication]; + + // schedule call to create the UI. + WindowAndViewAndQtCreator *windowAndViewAndQtCreator= [WindowAndViewAndQtCreator alloc]; + [NSTimer scheduledTimerWithTimeInterval:0 target:windowAndViewAndQtCreator selector:@selector(createWindowAndViewAndQt) userInfo:nil repeats:NO]; + + [(NSApplication *)NSApp run]; + [NSApp release]; + [pool release]; + exit(0); + return 0; +} + + + diff --git a/tests/manual/cocoa/qt_on_cocoa/qt_on_cocoa.pro b/tests/manual/cocoa/qt_on_cocoa/qt_on_cocoa.pro new file mode 100644 index 0000000000..d5399b543a --- /dev/null +++ b/tests/manual/cocoa/qt_on_cocoa/qt_on_cocoa.pro @@ -0,0 +1,12 @@ +TEMPLATE = app + +OBJECTIVE_SOURCES += main.mm +HEADERS += window.h +SOURCES += window.cpp +LIBS += -framework Cocoa + +QMAKE_INFO_PLIST = Info_mac.plist +OTHER_FILES = Info_mac.plist +QT += gui widgets widgets-private gui-private core-private + +QT += declarative diff --git a/tests/manual/cocoa/qt_on_cocoa/window.cpp b/tests/manual/cocoa/qt_on_cocoa/window.cpp new file mode 100644 index 0000000000..b7b263333b --- /dev/null +++ b/tests/manual/cocoa/qt_on_cocoa/window.cpp @@ -0,0 +1,203 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include "window.h" + +#include + +#include +#include +#include + +static int colorIndexId = 0; + +QColor colorTable[] = +{ + QColor("#f09f8f"), + QColor("#a2bff2"), + QColor("#c0ef8f") +}; + +Window::Window(QScreen *screen) + : QWindow(screen) + , m_backgroundColorIndex(colorIndexId++) +{ + initialize(); +} + +Window::Window(QWindow *parent) + : QWindow(parent) + , m_backgroundColorIndex(colorIndexId++) +{ + initialize(); +} + +void Window::initialize() +{ + if (parent()) + setGeometry(QRect(160, 120, 320, 240)); + else { + setGeometry(QRect(10, 10, 640, 480)); + + setSizeIncrement(QSize(10, 10)); + setBaseSize(QSize(640, 480)); + setMinimumSize(QSize(240, 160)); + setMaximumSize(QSize(800, 600)); + } + + create(); + m_backingStore = new QBackingStore(this); + + m_image = QImage(geometry().size(), QImage::Format_RGB32); + m_image.fill(colorTable[m_backgroundColorIndex % (sizeof(colorTable) / sizeof(colorTable[0]))].rgba()); + + m_lastPos = QPoint(-1, -1); + m_renderTimer = 0; +} + +void Window::mousePressEvent(QMouseEvent *event) +{ + m_lastPos = event->pos(); +} + +void Window::mouseMoveEvent(QMouseEvent *event) +{ + if (m_lastPos != QPoint(-1, -1)) { + QPainter p(&m_image); + p.setRenderHint(QPainter::Antialiasing); + p.drawLine(m_lastPos, event->pos()); + m_lastPos = event->pos(); + } + + scheduleRender(); +} + +void Window::mouseReleaseEvent(QMouseEvent *event) +{ + if (m_lastPos != QPoint(-1, -1)) { + QPainter p(&m_image); + p.setRenderHint(QPainter::Antialiasing); + p.drawLine(m_lastPos, event->pos()); + m_lastPos = QPoint(-1, -1); + } + + scheduleRender(); +} + +void Window::exposeEvent(QExposeEvent *) +{ + scheduleRender(); +} + +void Window::resizeEvent(QResizeEvent *) +{ + QImage old = m_image; + + //qDebug() << "Window::resizeEvent" << width << height; + + int width = qMax(geometry().width(), old.width()); + int height = qMax(geometry().height(), old.height()); + + if (width > old.width() || height > old.height()) { + m_image = QImage(width, height, QImage::Format_RGB32); + m_image.fill(colorTable[(m_backgroundColorIndex) % (sizeof(colorTable) / sizeof(colorTable[0]))].rgba()); + + QPainter p(&m_image); + p.drawImage(0, 0, old); + } + + render(); +} + +void Window::keyPressEvent(QKeyEvent *event) +{ + switch (event->key()) { + case Qt::Key_Backspace: + m_text.chop(1); + break; + case Qt::Key_Enter: + case Qt::Key_Return: + m_text.append('\n'); + break; + default: + m_text.append(event->text()); + break; + } + scheduleRender(); +} + +void Window::scheduleRender() +{ + if (!m_renderTimer) + m_renderTimer = startTimer(1); +} + +void Window::timerEvent(QTimerEvent *) +{ + render(); + killTimer(m_renderTimer); + m_renderTimer = 0; +} + +void Window::render() +{ + QRect rect(QPoint(), geometry().size()); + + m_backingStore->resize(rect.size()); + + m_backingStore->beginPaint(rect); + + QPaintDevice *device = m_backingStore->paintDevice(); + + QPainter p(device); + p.drawImage(0, 0, m_image); + + QFont font; + font.setPixelSize(32); + + p.setFont(font); + p.drawText(rect, 0, m_text); + + m_backingStore->endPaint(); + m_backingStore->flush(rect); +} + + diff --git a/tests/manual/cocoa/qt_on_cocoa/window.h b/tests/manual/cocoa/qt_on_cocoa/window.h new file mode 100644 index 0000000000..462451c429 --- /dev/null +++ b/tests/manual/cocoa/qt_on_cocoa/window.h @@ -0,0 +1,74 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include +#include + +class Window : public QWindow +{ +public: + Window(QWindow *parent = 0); + Window(QScreen *screen); + +protected: + void mousePressEvent(QMouseEvent *); + void mouseMoveEvent(QMouseEvent *); + void mouseReleaseEvent(QMouseEvent *); + + void keyPressEvent(QKeyEvent *); + + void exposeEvent(QExposeEvent *); + void resizeEvent(QResizeEvent *); + + void timerEvent(QTimerEvent *); + +private: + void render(); + void scheduleRender(); + void initialize(); + + QString m_text; + QImage m_image; + QPoint m_lastPos; + int m_backgroundColorIndex; + QBackingStore *m_backingStore; + int m_renderTimer; +}; -- cgit v1.2.3 From c4e36728bc00339070f8107d5880d4af5de93a28 Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Mon, 12 Dec 2011 12:48:49 +0100 Subject: Disable warnings when building mkv8snapshot MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Like in commit 5341cf783102dfab9e1ee2c13aae063d1ab2e75b, do not enable warnings when building V8 code. Change-Id: I447db52d546b50aea1c3afc88db7ce6923a5e310 Reviewed-by: JÄ™drzej Nowacki --- src/tools/mkv8snapshot/mkv8snapshot.pro | 1 + 1 file changed, 1 insertion(+) diff --git a/src/tools/mkv8snapshot/mkv8snapshot.pro b/src/tools/mkv8snapshot/mkv8snapshot.pro index cd2b20456a..41fa5df11b 100644 --- a/src/tools/mkv8snapshot/mkv8snapshot.pro +++ b/src/tools/mkv8snapshot/mkv8snapshot.pro @@ -4,6 +4,7 @@ QT = CONFIG -= app_bundle CONFIG -= qt CONFIG += console +CONFIG += warn_off DESTDIR = ../../../bin INCLUDEPATH += . -- cgit v1.2.3 From f54916697a361549256330b35029d5251d3e1407 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Mon, 12 Dec 2011 16:54:09 +0100 Subject: QThread-test: Fix test on Windows (timer inaccuracy). - Tolerate WaitTime - 1 (799ms when expecting 800ms). - Remove commented-out code. Reviewed-by: Rohan McGovern Change-Id: Ibe246d47ab7667692386b0f9333150c195948282 Reviewed-by: Friedemann Kleint --- tests/auto/corelib/thread/qthread/tst_qthread.cpp | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/tests/auto/corelib/thread/qthread/tst_qthread.cpp b/tests/auto/corelib/thread/qthread/tst_qthread.cpp index a8e04db2a0..7fc8710ccf 100644 --- a/tests/auto/corelib/thread/qthread/tst_qthread.cpp +++ b/tests/auto/corelib/thread/qthread/tst_qthread.cpp @@ -1074,17 +1074,14 @@ void tst_QThread::wait2() thread.start(); timer.start(); QVERIFY(!thread.wait(Waiting_Thread::WaitTime)); - qint64 elapsed = timer.elapsed(); - - QVERIFY(elapsed >= Waiting_Thread::WaitTime); - //QVERIFY(elapsed < Waiting_Thread::WaitTime * 1.4); + qint64 elapsed = timer.elapsed(); // On Windows, we sometimes get (WaitTime - 1). + QVERIFY2(elapsed >= Waiting_Thread::WaitTime - 1, qPrintable(QString::fromLatin1("elapsed: %1").arg(elapsed))); timer.start(); thread.cond1.wakeOne(); QVERIFY(thread.wait(/*Waiting_Thread::WaitTime * 1.4*/)); elapsed = timer.elapsed(); - QVERIFY(elapsed >= Waiting_Thread::WaitTime); - //QVERIFY(elapsed < Waiting_Thread::WaitTime * 1.4); + QVERIFY2(elapsed - Waiting_Thread::WaitTime >= -1, qPrintable(QString::fromLatin1("elapsed: %1").arg(elapsed))); } @@ -1116,9 +1113,7 @@ void tst_QThread::wait3_slowDestructor() timer.start(); QVERIFY(!thread.wait(Waiting_Thread::WaitTime)); qint64 elapsed = timer.elapsed(); - - QVERIFY(elapsed >= Waiting_Thread::WaitTime); - //QVERIFY(elapsed < Waiting_Thread::WaitTime * 1.4); + QVERIFY2(elapsed >= Waiting_Thread::WaitTime - 1, qPrintable(QString::fromLatin1("elapsed: %1").arg(elapsed))); slow.cond.wakeOne(); //now the thread should finish quickly -- cgit v1.2.3 From c45f9c7761a9016ff20c8c427cb5c84aba56bc57 Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Wed, 14 Dec 2011 16:36:10 +1000 Subject: Improve QCOMPARE for QStringList After establishing that both lists are the same size, there is no need to calculate the minimum of the list sizes. Also, use sizeof() instead of hard-coded values when calling qsnprintf(). Change-Id: I2396cf3f941770229e1cef6422aeddbe549c51fc Reviewed-by: Rohan McGovern --- src/testlib/qtest.h | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/testlib/qtest.h b/src/testlib/qtest.h index 6bce44686d..e4b5a21a7f 100644 --- a/src/testlib/qtest.h +++ b/src/testlib/qtest.h @@ -194,16 +194,17 @@ inline bool qCompare(QStringList const &t1, QStringList const &t2, char msg[1024]; msg[0] = '\0'; bool isOk = true; - if (t1.count() != t2.count()) { - qsnprintf(msg, 1024, "Compared QStringLists have different sizes.\n" + const int actualSize = t1.count(); + const int expectedSize = t2.count(); + if (actualSize != expectedSize) { + qsnprintf(msg, sizeof(msg), "Compared QStringLists have different sizes.\n" " Actual (%s) size : '%d'\n" - " Expected (%s) size: '%d'", actual, t1.count(), expected, t2.count()); + " Expected (%s) size: '%d'", actual, actualSize, expected, expectedSize); isOk = false; } - const int min = qMin(t1.count(), t2.count()); - for (int i = 0; isOk && i < min; ++i) { + for (int i = 0; isOk && i < actualSize; ++i) { if (t1.at(i) != t2.at(i)) { - qsnprintf(msg, 1024, "Compared QStringLists differ at index %d.\n" + qsnprintf(msg, sizeof(msg), "Compared QStringLists differ at index %d.\n" " Actual (%s) : '%s'\n" " Expected (%s) : '%s'", i, actual, t1.at(i).toLatin1().constData(), expected, t2.at(i).toLatin1().constData()); -- cgit v1.2.3 From 5b413852ddf3304876d3685558f8ec73ab9af96b Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Wed, 14 Dec 2011 17:31:15 +1000 Subject: Update documentation of QTEST_MAIN macro. Update the docs to describe the behaviour that resulted from moving the traditional Qt widgets into a separate library from the rest of GUI classes. Change-Id: Ibd0ef05cc871b8f5a6700e421aa41bdf64c1210b Reviewed-by: Rohan McGovern --- src/testlib/qtestcase.cpp | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/testlib/qtestcase.cpp b/src/testlib/qtestcase.cpp index aee225742a..54bd1bb7f0 100644 --- a/src/testlib/qtestcase.cpp +++ b/src/testlib/qtestcase.cpp @@ -389,14 +389,19 @@ QT_BEGIN_NAMESPACE the \a TestClass, and executes all tests in the order they were defined. Use this macro to build stand-alone executables. - If \c QT_GUI_LIB is defined, the application object will be a QApplication, + If \c QT_WIDGETS_LIB is defined, the application object will be a QApplication, + if \c QT_GUI_LIB is defined, the application object will be a QGuiApplication, otherwise it will be a QCoreApplication. If qmake is used and the configuration - includes \c{QT += gui}, then \c QT_GUI_LIB will be defined automatically. - - \bold {Note:} On platforms that have keypad navigation enabled by default (eg: Symbian), - this macro will forcfully disable it to simplify the usage of key events when writing - autotests. If you wish to write a test case that uses keypad navigation, you should - enable it either in the \c {initTestCase()} or \c {init()} functions of your test case. + includes \c{QT += widgets}, then \c QT_WIDGETS_LIB will be defined automatically. + Similarly, if qmake is used and the configuration includes \c{QT += gui}, then + \c QT_GUI_LIB will be defined automatically. + + \bold {Note:} On platforms that have keypad navigation enabled by default, + this macro will forcefully disable it if \c QT_WIDGETS_LIB is defined. This is done + to simplify the usage of key events when writing autotests. If you wish to write a + test case that uses keypad navigation, you should enable it either in the + \c {initTestCase()} or \c {init()} functions of your test case by calling + \l {QApplication::setNavigationMode()}. Example: \snippet doc/src/snippets/code/src_qtestlib_qtestcase.cpp 11 -- cgit v1.2.3 From dc98d585624d5f1de529dab86bbc061f6b64f89d Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Wed, 14 Dec 2011 17:54:13 +1000 Subject: Improve QTest::keyClick documentation. Make it clear that the delay is applied before each key-click is simulated. Change-Id: Id100f1f2db1a5b1651c3046905719d7eb06ec1a0 Reviewed-by: Rohan McGovern --- src/testlib/qtestcase.cpp | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/testlib/qtestcase.cpp b/src/testlib/qtestcase.cpp index 54bd1bb7f0..202d53eada 100644 --- a/src/testlib/qtestcase.cpp +++ b/src/testlib/qtestcase.cpp @@ -514,7 +514,8 @@ QT_BEGIN_NAMESPACE \overload Simulates clicking of \a key with an optional \a modifier on a \a widget. - If \a delay is larger than 0, the test will wait for \a delay milliseconds. + If \a delay is larger than 0, the test will wait for \a delay milliseconds + before clicking the key. Example: \snippet doc/src/snippets/code/src_qtestlib_qtestcase.cpp 13 @@ -528,7 +529,8 @@ QT_BEGIN_NAMESPACE /*! \fn void QTest::keyClick(QWidget *widget, Qt::Key key, Qt::KeyboardModifiers modifier = Qt::NoModifier, int delay=-1) Simulates clicking of \a key with an optional \a modifier on a \a widget. - If \a delay is larger than 0, the test will wait for \a delay milliseconds. + If \a delay is larger than 0, the test will wait for \a delay milliseconds + before clicking the key. Examples: \snippet doc/src/snippets/code/src_qtestlib_qtestcase.cpp 14 @@ -536,7 +538,7 @@ QT_BEGIN_NAMESPACE The first example above simulates clicking the \c escape key on \c myWidget without any keyboard modifiers and without delay. The second example simulates clicking \c shift-escape on \c myWidget - with a following 200 ms delay of the test. + following a 200 ms delay of the test. \sa QTest::keyClicks() */ @@ -561,7 +563,7 @@ QT_BEGIN_NAMESPACE /*! \fn void QTest::keyPress(QWidget *widget, Qt::Key key, Qt::KeyboardModifiers modifier = Qt::NoModifier, int delay=-1) Simulates pressing a \a key with an optional \a modifier on a \a widget. If \a delay - is larger than 0, the test will wait for \a delay milliseconds. + is larger than 0, the test will wait for \a delay milliseconds before pressing the key. \bold {Note:} At some point you should release the key using \l keyRelease(). @@ -573,7 +575,8 @@ QT_BEGIN_NAMESPACE \overload Simulates pressing a \a key with an optional \a modifier on a \a widget. - If \a delay is larger than 0, the test will wait for \a delay milliseconds. + If \a delay is larger than 0, the test will wait for \a delay milliseconds + before pressing the key. \bold {Note:} At some point you should release the key using \l keyRelease(). @@ -583,7 +586,8 @@ QT_BEGIN_NAMESPACE /*! \fn void QTest::keyRelease(QWidget *widget, Qt::Key key, Qt::KeyboardModifiers modifier = Qt::NoModifier, int delay=-1) Simulates releasing a \a key with an optional \a modifier on a \a widget. - If \a delay is larger than 0, the test will wait for \a delay milliseconds. + If \a delay is larger than 0, the test will wait for \a delay milliseconds + before releasing the key. \sa QTest::keyPress(), QTest::keyClick() */ @@ -593,7 +597,8 @@ QT_BEGIN_NAMESPACE \overload Simulates releasing a \a key with an optional \a modifier on a \a widget. - If \a delay is larger than 0, the test will wait for \a delay milliseconds. + If \a delay is larger than 0, the test will wait for \a delay milliseconds + before releasing the key. \sa QTest::keyClick() */ -- cgit v1.2.3 From 2163f05942a9e13264fcfc52666c451e9c77f5f0 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Wed, 14 Dec 2011 09:27:33 +0100 Subject: Application-test: Fix location of sub-executables. Use QFINDTESTDATA to set the working directory and change the profiles accordingly (as in the qprocess-test). Change-Id: I332038728c64214f73ced448e1466ad96c11b3b3 Reviewed-by: Rohan McGovern --- .../desktopsettingsaware/desktopsettingsaware.pro | 6 ++- .../widgets/kernel/qapplication/modal/modal.pro | 6 ++- .../kernel/qapplication/tst_qapplication.cpp | 63 +++++++++++++--------- .../kernel/qapplication/wincmdline/wincmdline.pro | 6 ++- 4 files changed, 53 insertions(+), 28 deletions(-) diff --git a/tests/auto/widgets/kernel/qapplication/desktopsettingsaware/desktopsettingsaware.pro b/tests/auto/widgets/kernel/qapplication/desktopsettingsaware/desktopsettingsaware.pro index 216a9710c7..3aa363d796 100644 --- a/tests/auto/widgets/kernel/qapplication/desktopsettingsaware/desktopsettingsaware.pro +++ b/tests/auto/widgets/kernel/qapplication/desktopsettingsaware/desktopsettingsaware.pro @@ -5,10 +5,14 @@ TEMPLATE = app DEPENDPATH += . INCLUDEPATH += . -wince*:TARGET = ../desktopsettingsaware +DESTDIR = ./ # Input QT += widgets SOURCES += main.cpp CONFIG += qt warn_on create_prl link_prl CONFIG -= app_bundle + +# This app is testdata for tst_qapplication +target.path = $$[QT_INSTALL_TESTS]/tst_qapplication/$$TARGET +INSTALLS += target diff --git a/tests/auto/widgets/kernel/qapplication/modal/modal.pro b/tests/auto/widgets/kernel/qapplication/modal/modal.pro index 9ed69769bb..b13165bcda 100644 --- a/tests/auto/widgets/kernel/qapplication/modal/modal.pro +++ b/tests/auto/widgets/kernel/qapplication/modal/modal.pro @@ -1,9 +1,13 @@ TEMPLATE = app QT += widgets -TARGET = DEPENDPATH += . INCLUDEPATH += . SOURCES += main.cpp \ base.cpp DESTDIR = ./ +CONFIG -= app_bundle HEADERS += base.h + +# This app is testdata for tst_qapplication +target.path = $$[QT_INSTALL_TESTS]/tst_qapplication/$$TARGET +INSTALLS += target diff --git a/tests/auto/widgets/kernel/qapplication/tst_qapplication.cpp b/tests/auto/widgets/kernel/qapplication/tst_qapplication.cpp index 4de05e1b98..23536ec6db 100644 --- a/tests/auto/widgets/kernel/qapplication/tst_qapplication.cpp +++ b/tests/auto/widgets/kernel/qapplication/tst_qapplication.cpp @@ -45,12 +45,26 @@ #include -#include "qabstracteventdispatcher.h" -#include -#include +#include +#include +#include +#include + +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include -#include "private/qapplication_p.h" -#include "private/qstylesheetstyle_p.h" #ifdef Q_OS_WINCE #include #endif @@ -64,6 +78,7 @@ public: virtual ~tst_QApplication(); public slots: + void initTestCase(); void init(); void cleanup(); private slots: @@ -140,6 +155,13 @@ public: } }; +void tst_QApplication::initTestCase() +{ + // chdir to our testdata path and execute helper apps relative to that. + const QString testdataDir = QFileInfo(QFINDTESTDATA("desktopsettingsaware")).absolutePath(); + QVERIFY2(QDir::setCurrent(testdataDir), qPrintable("Could not chdir to " + testdataDir)); +} + void tst_QApplication::sendEventsOnProcessEvents() { int argc = 0; @@ -1463,19 +1485,14 @@ void tst_QApplication::desktopSettingsAware() { #ifndef QT_NO_PROCESS QProcess testProcess; + const QString path = QStringLiteral("desktopsettingsaware/desktopsettingsaware"); #ifdef Q_OS_WINCE int argc = 0; QApplication tmpApp(argc, 0, QApplication::GuiServer); - testProcess.start("desktopsettingsaware/desktopsettingsaware"); -#else -#if defined(Q_OS_WIN) && defined(QT_DEBUG) - testProcess.start("desktopsettingsaware/debug/desktopsettingsaware"); -#elif defined(Q_OS_WIN) - testProcess.start("desktopsettingsaware/release/desktopsettingsaware"); -#else - testProcess.start("desktopsettingsaware/desktopsettingsaware"); -#endif #endif + testProcess.start(path); + QVERIFY2(testProcess.waitForStarted(), + qPrintable(QString::fromLatin1("Cannot start '%1': %2").arg(path, testProcess.errorString()))); QVERIFY(testProcess.waitForFinished(10000)); QCOMPARE(int(testProcess.state()), int(QProcess::NotRunning)); QVERIFY(int(testProcess.error()) != int(QProcess::Crashed)); @@ -1866,11 +1883,10 @@ void tst_QApplication::windowsCommandLine() QFETCH(QString, expected); QProcess testProcess; -#if defined(QT_DEBUG) - testProcess.start("wincmdline/debug/wincmdline", QStringList(args)); -#else - testProcess.start("wincmdline/release/wincmdline", QStringList(args)); -#endif + const QString path = QStringLiteral("wincmdline/wincmdline"); + testProcess.start(path, QStringList(args)); + QVERIFY2(testProcess.waitForStarted(), + qPrintable(QString::fromLatin1("Cannot start '%1': %2").arg(path, testProcess.errorString()))); QVERIFY(testProcess.waitForFinished(10000)); QByteArray error = testProcess.readAllStandardError(); QString procError(error); @@ -2126,11 +2142,10 @@ void tst_QApplication::qtbug_12673() { QProcess testProcess; QStringList arguments; -#ifdef Q_OS_MAC - testProcess.start("modal/modal.app", arguments); -#else - testProcess.start("modal/modal", arguments); -#endif + const QString path = QStringLiteral("modal/modal"); + testProcess.start(path, arguments); + QVERIFY2(testProcess.waitForStarted(), + qPrintable(QString::fromLatin1("Cannot start '%1': %2").arg(path, testProcess.errorString()))); QVERIFY(testProcess.waitForFinished(20000)); QCOMPARE(testProcess.exitStatus(), QProcess::NormalExit); } diff --git a/tests/auto/widgets/kernel/qapplication/wincmdline/wincmdline.pro b/tests/auto/widgets/kernel/qapplication/wincmdline/wincmdline.pro index 3ba8f48167..9abeb1cc83 100644 --- a/tests/auto/widgets/kernel/qapplication/wincmdline/wincmdline.pro +++ b/tests/auto/widgets/kernel/qapplication/wincmdline/wincmdline.pro @@ -1,8 +1,10 @@ TEMPLATE = app -TARGET = DEPENDPATH += . INCLUDEPATH += . QT += widgets SOURCES += main.cpp +DESTDIR = ./ - +# This app is testdata for tst_qapplication +target.path = $$[QT_INSTALL_TESTS]/tst_qapplication/$$TARGET +INSTALLS += target -- cgit v1.2.3 From d936fe085894f58451a6f36c46377ac507f09170 Mon Sep 17 00:00:00 2001 From: Kurt Korbatits Date: Thu, 15 Dec 2011 09:34:50 +1000 Subject: Fix qimagereader, qmovie and qmake unittest to work in shadow build. Changed to use QFINDTESTDATA and TESTDATA. Change-Id: I8684bc191cf8ffb8b531456e32047d582ebc018c Reviewed-by: Rohan McGovern --- tests/auto/gui/image/qimagereader/qimagereader.pro | 12 +----------- .../gui/image/qimagereader/tst_qimagereader.cpp | 4 ++-- tests/auto/gui/image/qmovie/qmovie.pro | 8 +------- tests/auto/gui/image/qmovie/tst_qmovie.cpp | 2 +- tests/auto/tools/qmake/qmake.pro | 2 ++ tests/auto/tools/qmake/tst_qmake.cpp | 22 +++++++++++----------- 6 files changed, 18 insertions(+), 32 deletions(-) diff --git a/tests/auto/gui/image/qimagereader/qimagereader.pro b/tests/auto/gui/image/qimagereader/qimagereader.pro index fc2b97267c..14d23f05ba 100644 --- a/tests/auto/gui/image/qimagereader/qimagereader.pro +++ b/tests/auto/gui/image/qimagereader/qimagereader.pro @@ -4,20 +4,10 @@ SOURCES += tst_qimagereader.cpp MOC_DIR=tmp QT += widgets widgets-private core-private gui-private network testlib RESOURCES += qimagereader.qrc -DEFINES += SRCDIR=\\\"$$PWD\\\" win32-msvc:QMAKE_CXXFLAGS -= -Zm200 win32-msvc:QMAKE_CXXFLAGS += -Zm800 win32-msvc.net:QMAKE_CXXFLAGS -= -Zm300 win32-msvc.net:QMAKE_CXXFLAGS += -Zm1100 -wince*: { - images.files = images - images.path = . - - imagePlugins.files = $$QT_BUILD_TREE/plugins/imageformats/*.dll - imagePlugins.path = imageformats - - DEPLOYMENT += images imagePlugins - DEFINES += SRCDIR=\\\".\\\" -} +TESTDATA += images/* baseline/* diff --git a/tests/auto/gui/image/qimagereader/tst_qimagereader.cpp b/tests/auto/gui/image/qimagereader/tst_qimagereader.cpp index 2ce4d01e8e..d0be14c65d 100644 --- a/tests/auto/gui/image/qimagereader/tst_qimagereader.cpp +++ b/tests/auto/gui/image/qimagereader/tst_qimagereader.cpp @@ -179,11 +179,10 @@ private slots: void preserveTexts(); private: + QString prefix; QTemporaryDir m_temporaryDir; }; -static const QLatin1String prefix(SRCDIR "/images/"); - // helper to skip an autotest when the given image format is not supported #define SKIP_IF_UNSUPPORTED(format) do { \ if (!QByteArray(format).isEmpty() && !QImageReader::supportedImageFormats().contains(format)) \ @@ -220,6 +219,7 @@ tst_QImageReader::~tst_QImageReader() void tst_QImageReader::init() { + prefix = QFINDTESTDATA("images/"); QVERIFY(m_temporaryDir.isValid()); } diff --git a/tests/auto/gui/image/qmovie/qmovie.pro b/tests/auto/gui/image/qmovie/qmovie.pro index d565418d6d..5da0b80670 100644 --- a/tests/auto/gui/image/qmovie/qmovie.pro +++ b/tests/auto/gui/image/qmovie/qmovie.pro @@ -8,11 +8,5 @@ MOC_DIR=tmp !contains(QT_CONFIG, no-jpeg):DEFINES += QTEST_HAVE_JPEG !contains(QT_CONFIG, no-mng):DEFINES += QTEST_HAVE_MNG -wince*: { - addFiles.files = animations\\* - addFiles.path = animations - DEPLOYMENT += addFiles -} - RESOURCES += resources.qrc - +TESTDATA += animations/* diff --git a/tests/auto/gui/image/qmovie/tst_qmovie.cpp b/tests/auto/gui/image/qmovie/tst_qmovie.cpp index b2d0360e33..a94e39a10c 100644 --- a/tests/auto/gui/image/qmovie/tst_qmovie.cpp +++ b/tests/auto/gui/image/qmovie/tst_qmovie.cpp @@ -152,7 +152,7 @@ void tst_QMovie::playMovie() QFETCH(QString, fileName); QFETCH(int, frameCount); - QMovie movie(fileName); + QMovie movie(QFINDTESTDATA(fileName)); QCOMPARE(movie.state(), QMovie::NotRunning); movie.setSpeed(1000); diff --git a/tests/auto/tools/qmake/qmake.pro b/tests/auto/tools/qmake/qmake.pro index d535c9c0b8..1d9c5bec6e 100644 --- a/tests/auto/tools/qmake/qmake.pro +++ b/tests/auto/tools/qmake/qmake.pro @@ -5,3 +5,5 @@ SOURCES += tst_qmake.cpp testcompiler.cpp QT = core testlib cross_compile: DEFINES += QMAKE_CROSS_COMPILED + +TESTDATA += testdata/* diff --git a/tests/auto/tools/qmake/tst_qmake.cpp b/tests/auto/tools/qmake/tst_qmake.cpp index 8de822b47a..dbb845ba81 100644 --- a/tests/auto/tools/qmake/tst_qmake.cpp +++ b/tests/auto/tools/qmake/tst_qmake.cpp @@ -97,6 +97,15 @@ private: }; tst_qmake::tst_qmake() +{ +} + +tst_qmake::~tst_qmake() +{ + +} + +void tst_qmake::initTestCase() { QString binpath = QLibraryInfo::location(QLibraryInfo::BinariesPath); QString cmd = QString("%2/qmake \"QT_VERSION=%1\"").arg(QT_VERSION).arg(binpath); @@ -109,17 +118,8 @@ tst_qmake::tst_qmake() #else test_compiler.setBaseCommands( "make", cmd ); #endif - QDir dir; - base_path = dir.currentPath(); -} - -tst_qmake::~tst_qmake() -{ - -} - -void tst_qmake::initTestCase() -{ + QString tmpFile = QFINDTESTDATA("testdata"); + base_path = tmpFile.left(tmpFile.lastIndexOf('/')); } void tst_qmake::cleanupTestCase() -- cgit v1.2.3 From be6b29f001eb56f1f8c963e9fcd1ad17d92eb0d7 Mon Sep 17 00:00:00 2001 From: Giuseppe D'Angelo Date: Wed, 14 Dec 2011 23:35:12 +0000 Subject: Fix typos in QObject::(dis)connect warnings For some strange reason "Object::method ..." was printed, without the leading Q. Change-Id: I10b99e8aa8730e4020d15b3e04a01004bade76c3 Reviewed-by: Olivier Goffart --- src/corelib/kernel/qobject.cpp | 22 +++++++++++----------- tests/auto/corelib/kernel/qobject/tst_qobject.cpp | 2 +- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/src/corelib/kernel/qobject.cpp b/src/corelib/kernel/qobject.cpp index da06fc6433..7c1b340e80 100644 --- a/src/corelib/kernel/qobject.cpp +++ b/src/corelib/kernel/qobject.cpp @@ -1947,10 +1947,10 @@ static bool check_signal_macro(const QObject *sender, const char *signal, int sigcode = extract_code(signal); if (sigcode != QSIGNAL_CODE) { if (sigcode == QSLOT_CODE) - qWarning("Object::%s: Attempt to %s non-signal %s::%s", + qWarning("QObject::%s: Attempt to %s non-signal %s::%s", func, op, sender->metaObject()->className(), signal+1); else - qWarning("Object::%s: Use the SIGNAL macro to %s %s::%s", + qWarning("QObject::%s: Use the SIGNAL macro to %s %s::%s", func, op, sender->metaObject()->className(), signal); return false; } @@ -1961,7 +1961,7 @@ static bool check_method_code(int code, const QObject *object, const char *method, const char *func) { if (code != QSLOT_CODE && code != QSIGNAL_CODE) { - qWarning("Object::%s: Use the SLOT or SIGNAL macro to " + qWarning("QObject::%s: Use the SLOT or SIGNAL macro to " "%s %s::%s", func, func, object->metaObject()->className(), method); return false; } @@ -1978,11 +1978,11 @@ static void err_method_notfound(const QObject *object, } const char *loc = extract_location(method); if (strchr(method,')') == 0) // common typing mistake - qWarning("Object::%s: Parentheses expected, %s %s::%s%s%s", + qWarning("QObject::%s: Parentheses expected, %s %s::%s%s%s", func, type, object->metaObject()->className(), method+1, loc ? " in ": "", loc ? loc : ""); else - qWarning("Object::%s: No such %s %s::%s%s%s", + qWarning("QObject::%s: No such %s %s::%s%s%s", func, type, object->metaObject()->className(), method+1, loc ? " in ": "", loc ? loc : ""); @@ -1996,9 +1996,9 @@ static void err_info_about_objects(const char * func, QString a = sender ? sender->objectName() : QString(); QString b = receiver ? receiver->objectName() : QString(); if (!a.isEmpty()) - qWarning("Object::%s: (sender name: '%s')", func, a.toLocal8Bit().data()); + qWarning("QObject::%s: (sender name: '%s')", func, a.toLocal8Bit().data()); if (!b.isEmpty()) - qWarning("Object::%s: (receiver name: '%s')", func, b.toLocal8Bit().data()); + qWarning("QObject::%s: (receiver name: '%s')", func, b.toLocal8Bit().data()); } /*! @@ -2578,7 +2578,7 @@ bool QObject::disconnect(const QObject *sender, const char *signal, const QObject *receiver, const char *method) { if (sender == 0 || (receiver == 0 && method != 0)) { - qWarning("Object::disconnect: Unexpected null parameter"); + qWarning("QObject::disconnect: Unexpected null parameter"); return false; } @@ -2703,12 +2703,12 @@ bool QObject::disconnect(const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method) { if (sender == 0 || (receiver == 0 && method.mobj != 0)) { - qWarning("Object::disconnect: Unexpected null parameter"); + qWarning("QObject::disconnect: Unexpected null parameter"); return false; } if (signal.mobj) { if(signal.methodType() != QMetaMethod::Signal) { - qWarning("Object::%s: Attempt to %s non-signal %s::%s", + qWarning("QObject::%s: Attempt to %s non-signal %s::%s", "disconnect","unbind", sender->metaObject()->className(), signal.signature()); return false; @@ -4160,7 +4160,7 @@ bool QObject::disconnect(const QMetaObject::Connection &connection) bool QObject::disconnectImpl(const QObject *sender, void **signal, const QObject *receiver, void **slot, const QMetaObject *senderMetaObject) { if (sender == 0 || (receiver == 0 && slot != 0)) { - qWarning("Object::disconnect: Unexpected null parameter"); + qWarning("QObject::disconnect: Unexpected null parameter"); return false; } diff --git a/tests/auto/corelib/kernel/qobject/tst_qobject.cpp b/tests/auto/corelib/kernel/qobject/tst_qobject.cpp index 05b9229c3d..225e06a552 100644 --- a/tests/auto/corelib/kernel/qobject/tst_qobject.cpp +++ b/tests/auto/corelib/kernel/qobject/tst_qobject.cpp @@ -3999,7 +3999,7 @@ void tst_QObject::disconnectNotSignalMetaMethod() QMetaMethod slot = s.metaObject()->method( s.metaObject()->indexOfMethod("aPublicSlot()")); - QTest::ignoreMessage(QtWarningMsg,"Object::disconnect: Attempt to unbind non-signal SenderObject::aPublicSlot()"); + QTest::ignoreMessage(QtWarningMsg,"QObject::disconnect: Attempt to unbind non-signal SenderObject::aPublicSlot()"); QVERIFY(!QObject::disconnect(&s, slot, &r, QMetaMethod())); } -- cgit v1.2.3 From a3109c8b0b75cbddd895d203fa71ee30db5de21e Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Mon, 12 Dec 2011 12:43:18 +1000 Subject: Remove QTest::qt_snprintf() from testlib API. This was an internal function that used to act like qsnprintf() but also filtered unprintable characters out of the test output. The filtering has been moved somewhere more appropriate and this function is no longer used by testlib. Unfortunately, the function was exposed in the public API due to its former use in the implementation of a public macro. In the unlikely event that any code outside testlib calls this function, the call should be replaced by calling qsnprintf(), which comes from the QtCore/QByteArray header. Change-Id: Iddc17b4361d16ebddd19346ae7d1064951dd7738 Reviewed-by: Rohan McGovern Reviewed-by: Lars Knoll --- dist/changes-5.0.0 | 4 ++++ src/testlib/qtest_global.h | 2 -- src/testlib/qtestcase.cpp | 15 --------------- 3 files changed, 4 insertions(+), 17 deletions(-) diff --git a/dist/changes-5.0.0 b/dist/changes-5.0.0 index 8dbda70212..fe159c4ad9 100644 --- a/dist/changes-5.0.0 +++ b/dist/changes-5.0.0 @@ -53,6 +53,10 @@ information about a particular change. * The DEPENDS_ON macro has been removed from the API. This macro did nothing and misled some users to believe that they could make test functions depend on each other or impose an execution order on test functions. + * The QTest::qt_snprintf function has been removed from the API. This was an + internal testlib function that was exposed in the public API due to its use + in a public macro. Any calls to this function should be replaced by a call + to qsnprintf(), which comes from the header. * The QSKIP macro no longer has the "mode" parameter, which caused problems for calculating test metrics, as the SkipAll mode hid information about what test data was skipped. Calling QSKIP in a test function now behaves diff --git a/src/testlib/qtest_global.h b/src/testlib/qtest_global.h index 6a40f47f30..31ab940474 100644 --- a/src/testlib/qtest_global.h +++ b/src/testlib/qtest_global.h @@ -78,8 +78,6 @@ QT_MODULE(Test) namespace QTest { enum TestFailMode { Abort = 1, Continue = 2 }; - - int Q_TESTLIB_EXPORT qt_snprintf(char *str, int size, const char *format, ...); } QT_END_NAMESPACE diff --git a/src/testlib/qtestcase.cpp b/src/testlib/qtestcase.cpp index 202d53eada..0e384b8dc1 100644 --- a/src/testlib/qtestcase.cpp +++ b/src/testlib/qtestcase.cpp @@ -986,21 +986,6 @@ namespace QTest static bool noCrashHandler = false; #endif -/*! \internal - */ -int qt_snprintf(char *str, int size, const char *format, ...) -{ - va_list ap; - int res = 0; - - va_start(ap, format); - qvsnprintf(str, size, format, ap); - va_end(ap); - str[size - 1] = '\0'; - - return res; -} - /*! \internal Invoke a method of the object without generating warning if the method does not exist */ -- cgit v1.2.3 From 95cb93dc590697242bf26ea59db050a7b0b1656d Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Thu, 15 Dec 2011 13:52:56 +1000 Subject: Fix incorrect function name in assertion. Change-Id: I3eb8e7afe3f7ca514dd4839e603612b56c7d8082 Reviewed-by: Rohan McGovern --- src/testlib/qtestcase.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/testlib/qtestcase.cpp b/src/testlib/qtestcase.cpp index 0e384b8dc1..8cde1118e6 100644 --- a/src/testlib/qtestcase.cpp +++ b/src/testlib/qtestcase.cpp @@ -2243,7 +2243,7 @@ QTestData &QTest::newRow(const char *dataTag) { QTEST_ASSERT_X(dataTag, "QTest::newRow()", "Data tag can not be null"); QTestTable *tbl = QTestTable::currentTestTable(); - QTEST_ASSERT_X(tbl, "QTest::addColumn()", "Cannot add testdata outside of a _data slot."); + QTEST_ASSERT_X(tbl, "QTest::newRow()", "Cannot add testdata outside of a _data slot."); return *tbl->newData(dataTag); } -- cgit v1.2.3 From a925226d447a2a020ee1a5ce964be435c702c515 Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Thu, 15 Dec 2011 14:04:50 +1000 Subject: Remove Qt5 comment from qsignalspy.h. The removed comment refers to a task in a bug tracker that no longer exists. The comment also mentions making (part of) testlib use Qt's regular binary compatibility mechanisms, which is desirable in the long term but not in scope for Qt 5. Change-Id: I6f23a9a2c8a84e30afe2aeb5c53ea93c25ba6f11 Reviewed-by: Rohan McGovern --- src/testlib/qsignalspy.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/testlib/qsignalspy.h b/src/testlib/qsignalspy.h index 61ce12a3a4..38a718d2a2 100644 --- a/src/testlib/qsignalspy.h +++ b/src/testlib/qsignalspy.h @@ -56,8 +56,6 @@ QT_MODULE(Test) class QVariant; -/* ### Qt5: change the class to use regular BC mechanisms, such that we can - * implement things like suggested in task 160192. */ class QSignalSpy: public QObject, public QList > { public: -- cgit v1.2.3 From 0501c9d8f16183de2857fd58750a3876283ca8c5 Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Tue, 13 Dec 2011 12:51:06 +0100 Subject: Correct sizeof(QObjectData) after out-of-order cherry-picks by Gerrit Commits a6ae75f92a8628c727a9c5a9961fa91c583c008e and 6f0f9f69288925ef423c542ef5eb7302a5431867 were cherry-picked in the wrong order (despite the dependencies shown in Gerrit), causing the QObjectData::unused bitfield to be too large. Change-Id: I65acaa8b507f7f6f2c5735f45bd0ad8343abea54 Reviewed-by: Olivier Goffart --- src/corelib/kernel/qobject.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/corelib/kernel/qobject.h b/src/corelib/kernel/qobject.h index a0d8076b73..3729dc8c0d 100644 --- a/src/corelib/kernel/qobject.h +++ b/src/corelib/kernel/qobject.h @@ -106,7 +106,7 @@ public: uint inEventHandler : 1; //only used if QT_JAMBI_BUILD uint inThreadChangeEvent : 1; uint isWindow : 1; //for QWindow - uint unused : 22; + uint unused : 21; int postedEvents; QMetaObject *metaObject; // assert dynamic }; -- cgit v1.2.3 From 2561ab5841d49398729a283b70f8c70832b82d2f Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Tue, 13 Dec 2011 13:15:28 +0100 Subject: Remove QT_JAMBI_BUILD code Change-Id: Ic9231b11293af4352f11cf075893175f0c9a471f Reviewed-by: Thiago Macieira --- src/corelib/global/qnamespace.h | 4 +-- src/corelib/kernel/qcoreapplication.cpp | 21 +------------- src/corelib/kernel/qobject.cpp | 51 --------------------------------- src/corelib/kernel/qobject.h | 3 +- src/corelib/kernel/qobject_p.h | 7 ----- 5 files changed, 4 insertions(+), 82 deletions(-) diff --git a/src/corelib/global/qnamespace.h b/src/corelib/global/qnamespace.h index 357c31930c..2e4bc0efbf 100644 --- a/src/corelib/global/qnamespace.h +++ b/src/corelib/global/qnamespace.h @@ -61,7 +61,7 @@ Qt { Q_OBJECT #endif -#if (defined(Q_MOC_RUN) || defined(QT_JAMBI_RUN)) +#if defined(Q_MOC_RUN) // NOTE: Generally, do not add Q_ENUMS if a corresponding Q_FLAGS exists. Q_ENUMS(ScrollBarPolicy FocusPolicy ContextMenuPolicy) Q_ENUMS(ArrowType ToolButtonStyle PenStyle PenCapStyle PenJoinStyle BrushStyle) @@ -97,7 +97,7 @@ Qt { Q_ENUMS(GestureType) #endif Q_ENUMS(CursorMoveStyle) -#endif // (defined(Q_MOC_RUN) || defined(QT_JAMBI_RUN)) +#endif // defined(Q_MOC_RUN) #if defined(Q_MOC_RUN) public: diff --git a/src/corelib/kernel/qcoreapplication.cpp b/src/corelib/kernel/qcoreapplication.cpp index 7523963485..42c5bd80a3 100644 --- a/src/corelib/kernel/qcoreapplication.cpp +++ b/src/corelib/kernel/qcoreapplication.cpp @@ -802,26 +802,7 @@ bool QCoreApplication::notifyInternal(QObject *receiver, QEvent *event) QObjectPrivate *d = receiver->d_func(); QThreadData *threadData = d->threadData; QScopedLoopLevelCounter loopLevelCounter(threadData); - -#ifdef QT_JAMBI_BUILD - int deleteWatch = 0; - int *oldDeleteWatch = QObjectPrivate::setDeleteWatch(d, &deleteWatch); - - bool inEvent = d->inEventHandler; - d->inEventHandler = true; -#endif - - bool returnValue; - returnValue = notify(receiver, event); - -#ifdef QT_JAMBI_BUILD - // Restore the previous state if the object was not deleted.. - if (!deleteWatch) { - d->inEventHandler = inEvent; - } - QObjectPrivate::resetDeleteWatch(d, oldDeleteWatch, deleteWatch); -#endif - return returnValue; + return notify(receiver, event); } diff --git a/src/corelib/kernel/qobject.cpp b/src/corelib/kernel/qobject.cpp index 7c1b340e80..295322551f 100644 --- a/src/corelib/kernel/qobject.cpp +++ b/src/corelib/kernel/qobject.cpp @@ -172,10 +172,6 @@ QObjectPrivate::QObjectPrivate(int version) extraData = 0; connectedSignals[0] = connectedSignals[1] = 0; inThreadChangeEvent = false; -#ifdef QT_JAMBI_BUILD - inEventHandler = false; - deleteWatch = 0; -#endif metaObject = 0; isWindow = false; } @@ -194,10 +190,6 @@ QObjectPrivate::~QObjectPrivate() threadData->deref(); delete static_cast(metaObject); -#ifdef QT_JAMBI_BUILD - if (deleteWatch) - *deleteWatch = 1; -#endif #ifndef QT_NO_USERDATA if (extraData) qDeleteAll(extraData->userData); @@ -205,25 +197,6 @@ QObjectPrivate::~QObjectPrivate() #endif } - -#ifdef QT_JAMBI_BUILD -int *QObjectPrivate::setDeleteWatch(QObjectPrivate *d, int *w) { - int *old = d->deleteWatch; - d->deleteWatch = w; - return old; -} - - -void QObjectPrivate::resetDeleteWatch(QObjectPrivate *d, int *oldWatch, int deleteWatch) { - if (!deleteWatch) - d->deleteWatch = oldWatch; - - if (oldWatch) - *oldWatch = deleteWatch; -} -#endif - - /*!\internal For a given metaobject, compute the signal offset, and the method offset (including signals) */ @@ -837,13 +810,6 @@ QObject::~QObject() if (d->parent) // remove it from parent object d->setParent_helper(0); - -#ifdef QT_JAMBI_BUILD - if (d->inEventHandler) { - qWarning("QObject: Do not delete object, '%s', during its event handler!", - objectName().isNull() ? "unnamed" : qPrintable(objectName())); - } -#endif } QObjectPrivate::Connection::~Connection() @@ -1031,9 +997,6 @@ bool QObject::event(QEvent *e) case QEvent::MetaCall: { -#ifdef QT_JAMBI_BUILD - d_func()->inEventHandler = false; -#endif QMetaCallEvent *mce = static_cast(e); QConnectionSenderSwitcher sw(this, const_cast(mce->sender()), mce->signalId()); @@ -1338,15 +1301,6 @@ void QObjectPrivate::setThreadData_helper(QThreadData *currentData, QThreadData currentSender->ref = 0; currentSender = 0; -#ifdef QT_JAMBI_BUILD - // the current event thread also shouldn't restore the delete watch - inEventHandler = false; - - if (deleteWatch) - *deleteWatch = 1; - deleteWatch = 0; -#endif - // set new thread data targetData->ref(); threadData->deref(); @@ -3891,11 +3845,6 @@ QDebug operator<<(QDebug dbg, const QObject *o) { void qDeleteInEventHandler(QObject *o) { -#ifdef QT_JAMBI_BUILD - if (!o) - return; - QObjectPrivate::get(o)->inEventHandler = false; -#endif delete o; } diff --git a/src/corelib/kernel/qobject.h b/src/corelib/kernel/qobject.h index 3729dc8c0d..3c00bf510d 100644 --- a/src/corelib/kernel/qobject.h +++ b/src/corelib/kernel/qobject.h @@ -103,10 +103,9 @@ public: uint ownObjectName : 1; uint sendChildEvents : 1; uint receiveChildEvents : 1; - uint inEventHandler : 1; //only used if QT_JAMBI_BUILD uint inThreadChangeEvent : 1; uint isWindow : 1; //for QWindow - uint unused : 21; + uint unused : 22; int postedEvents; QMetaObject *metaObject; // assert dynamic }; diff --git a/src/corelib/kernel/qobject_p.h b/src/corelib/kernel/qobject_p.h index a9cac3917a..882ec9b45e 100644 --- a/src/corelib/kernel/qobject_p.h +++ b/src/corelib/kernel/qobject_p.h @@ -179,10 +179,6 @@ public: static inline void resetCurrentSender(QObject *receiver, Sender *currentSender, Sender *previousSender); -#ifdef QT_JAMBI_BUILD - static int *setDeleteWatch(QObjectPrivate *d, int *newWatch); - static void resetDeleteWatch(QObjectPrivate *d, int *oldWatch, int deleteWatch); -#endif static QObjectPrivate *get(QObject *o) { return o->d_func(); @@ -211,9 +207,6 @@ public: // these objects are all used to indicate that a QObject was deleted // plus QPointer, which keeps a separate list QAtomicPointer sharedRefcount; -#ifdef QT_JAMBI_BUILD - int *deleteWatch; -#endif }; -- cgit v1.2.3 From 317ee62d447374b059526174952cea44108ec284 Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Tue, 13 Dec 2011 13:16:09 +0100 Subject: Remove unused ownObjectName field from QObjectData This field isn't used at all in qtbase, nor in any of the qt5 submodules. Change-Id: If57d389935593f797818506a220c6a3cc04b6078 Reviewed-by: Robin Burchell Reviewed-by: Olivier Goffart Reviewed-by: Thiago Macieira --- src/corelib/kernel/qobject.h | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/corelib/kernel/qobject.h b/src/corelib/kernel/qobject.h index 3c00bf510d..dbe5fc02a4 100644 --- a/src/corelib/kernel/qobject.h +++ b/src/corelib/kernel/qobject.h @@ -100,12 +100,11 @@ public: uint blockSig : 1; uint wasDeleted : 1; uint isDeletingChildren : 1; - uint ownObjectName : 1; uint sendChildEvents : 1; uint receiveChildEvents : 1; uint inThreadChangeEvent : 1; uint isWindow : 1; //for QWindow - uint unused : 22; + uint unused : 23; int postedEvents; QMetaObject *metaObject; // assert dynamic }; -- cgit v1.2.3 From f9516e4c8e90995a01ab3b5b892c98ca9c4880fd Mon Sep 17 00:00:00 2001 From: Robin Burchell Date: Tue, 25 Oct 2011 09:51:19 +0200 Subject: Split timer handling out of QEventDispatcherUnix. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This makes it easier to see the guts of the unix event dispatcher, and to experiment with it. Change-Id: I715bb68c4de6798e10bc55304a128b88e0249c63 Reviewed-by: João Abecasis --- src/corelib/kernel/kernel.pri | 45 ++-- src/corelib/kernel/qeventdispatcher_unix.cpp | 322 ----------------------- src/corelib/kernel/qeventdispatcher_unix_p.h | 45 +--- src/corelib/kernel/qtimerinfo_unix.cpp | 376 +++++++++++++++++++++++++++ src/corelib/kernel/qtimerinfo_unix_p.h | 110 ++++++++ 5 files changed, 511 insertions(+), 387 deletions(-) create mode 100644 src/corelib/kernel/qtimerinfo_unix.cpp create mode 100644 src/corelib/kernel/qtimerinfo_unix_p.h diff --git a/src/corelib/kernel/kernel.pri b/src/corelib/kernel/kernel.pri index b67d60bfff..4dbb669ffd 100644 --- a/src/corelib/kernel/kernel.pri +++ b/src/corelib/kernel/kernel.pri @@ -100,27 +100,28 @@ nacl { } unix:!symbian { + SOURCES += \ + kernel/qcore_unix.cpp \ + kernel/qcrashhandler.cpp \ + kernel/qsharedmemory_unix.cpp \ + kernel/qsystemsemaphore_unix.cpp \ + kernel/qeventdispatcher_unix.cpp \ + kernel/qtimerinfo_unix.cpp + + HEADERS += \ + kernel/qcore_unix_p.h \ + kernel/qcrashhandler_p.h \ + kernel/qeventdispatcher_unix_p.h \ + kernel/qtimerinfo_unix_p.h + + contains(QT_CONFIG, glib) { SOURCES += \ - kernel/qcore_unix.cpp \ - kernel/qcrashhandler.cpp \ - kernel/qsharedmemory_unix.cpp \ - kernel/qsystemsemaphore_unix.cpp + kernel/qeventdispatcher_glib.cpp HEADERS += \ - kernel/qcore_unix_p.h \ - kernel/qcrashhandler_p.h - - contains(QT_CONFIG, glib) { - SOURCES += \ - kernel/qeventdispatcher_glib.cpp - HEADERS += \ - kernel/qeventdispatcher_glib_p.h - QMAKE_CXXFLAGS += $$QT_CFLAGS_GLIB - LIBS_PRIVATE +=$$QT_LIBS_GLIB - } - SOURCES += \ - kernel/qeventdispatcher_unix.cpp - HEADERS += \ - kernel/qeventdispatcher_unix_p.h + kernel/qeventdispatcher_glib_p.h + QMAKE_CXXFLAGS += $$QT_CFLAGS_GLIB + LIBS_PRIVATE +=$$QT_LIBS_GLIB + } contains(QT_CONFIG, clock-gettime):include($$QT_SOURCE_TREE/config.tests/unix/clock-gettime/clock-gettime.pri) } @@ -155,11 +156,13 @@ integrity { kernel/qcrashhandler.cpp \ kernel/qsharedmemory_unix.cpp \ kernel/qsystemsemaphore_unix.cpp \ - kernel/qeventdispatcher_unix.cpp + kernel/qeventdispatcher_unix.cpp \ + kernel/qtimerinfo_unix.cpp HEADERS += \ kernel/qcore_unix_p.h \ kernel/qcrashhandler_p.h \ - kernel/qeventdispatcher_unix_p.h + kernel/qeventdispatcher_unix_p.h \ + kernel/qtimerinfo_unix_p.h contains(QT_CONFIG, clock-gettime):include($$QT_SOURCE_TREE/config.tests/unix/clock-gettime/clock-gettime.pri) } diff --git a/src/corelib/kernel/qeventdispatcher_unix.cpp b/src/corelib/kernel/qeventdispatcher_unix.cpp index 27efac6985..3420990969 100644 --- a/src/corelib/kernel/qeventdispatcher_unix.cpp +++ b/src/corelib/kernel/qeventdispatcher_unix.cpp @@ -72,8 +72,6 @@ QT_BEGIN_NAMESPACE -Q_CORE_EXPORT bool qt_disable_lowpriority_timers=false; - /***************************************************************************** UNIX signal handling *****************************************************************************/ @@ -309,326 +307,6 @@ int QEventDispatcherUNIXPrivate::doSelect(QEventLoop::ProcessEventsFlags flags, return (nevents + q->activateSocketNotifiers()); } -/* - * Internal functions for manipulating timer data structures. The - * timerBitVec array is used for keeping track of timer identifiers. - */ - -QTimerInfoList::QTimerInfoList() -{ -#if (_POSIX_MONOTONIC_CLOCK-0 <= 0) && !defined(Q_OS_MAC) && !defined(Q_OS_NACL) - if (!QElapsedTimer::isMonotonic()) { - // not using monotonic timers, initialize the timeChanged() machinery - previousTime = qt_gettime(); - - tms unused; - previousTicks = times(&unused); - - ticksPerSecond = sysconf(_SC_CLK_TCK); - msPerTick = 1000/ticksPerSecond; - } else { - // detected monotonic timers - previousTime.tv_sec = previousTime.tv_usec = 0; - previousTicks = 0; - ticksPerSecond = 0; - msPerTick = 0; - } -#endif - - firstTimerInfo = 0; -} - -timeval QTimerInfoList::updateCurrentTime() -{ - return (currentTime = qt_gettime()); -} - -#if ((_POSIX_MONOTONIC_CLOCK-0 <= 0) && !defined(Q_OS_MAC) && !defined(Q_OS_INTEGRITY)) || defined(QT_BOOTSTRAPPED) - -template <> -timeval qAbs(const timeval &t) -{ - timeval tmp = t; - if (tmp.tv_sec < 0) { - tmp.tv_sec = -tmp.tv_sec - 1; - tmp.tv_usec -= 1000000; - } - if (tmp.tv_sec == 0 && tmp.tv_usec < 0) { - tmp.tv_usec = -tmp.tv_usec; - } - return normalizedTimeval(tmp); -} - -/* - Returns true if the real time clock has changed by more than 10% - relative to the processor time since the last time this function was - called. This presumably means that the system time has been changed. - - If /a delta is nonzero, delta is set to our best guess at how much the system clock was changed. -*/ -bool QTimerInfoList::timeChanged(timeval *delta) -{ -#ifdef Q_OS_NACL - Q_UNUSED(delta) - return false; // Calling "times" crashes. -#endif - struct tms unused; - clock_t currentTicks = times(&unused); - - clock_t elapsedTicks = currentTicks - previousTicks; - timeval elapsedTime = currentTime - previousTime; - - timeval elapsedTimeTicks; - elapsedTimeTicks.tv_sec = elapsedTicks / ticksPerSecond; - elapsedTimeTicks.tv_usec = (((elapsedTicks * 1000) / ticksPerSecond) % 1000) * 1000; - - timeval dummy; - if (!delta) - delta = &dummy; - *delta = elapsedTime - elapsedTimeTicks; - - previousTicks = currentTicks; - previousTime = currentTime; - - // If tick drift is more than 10% off compared to realtime, we assume that the clock has - // been set. Of course, we have to allow for the tick granularity as well. - timeval tickGranularity; - tickGranularity.tv_sec = 0; - tickGranularity.tv_usec = msPerTick * 1000; - return elapsedTimeTicks < ((qAbs(*delta) - tickGranularity) * 10); -} - -void QTimerInfoList::repairTimersIfNeeded() -{ - if (QElapsedTimer::isMonotonic()) - return; - timeval delta; - if (timeChanged(&delta)) - timerRepair(delta); -} - -#else // !(_POSIX_MONOTONIC_CLOCK-0 <= 0) && !defined(QT_BOOTSTRAPPED) - -void QTimerInfoList::repairTimersIfNeeded() -{ -} - -#endif - -/* - insert timer info into list -*/ -void QTimerInfoList::timerInsert(QTimerInfo *ti) -{ - int index = size(); - while (index--) { - register const QTimerInfo * const t = at(index); - if (!(ti->timeout < t->timeout)) - break; - } - insert(index+1, ti); -} - -/* - repair broken timer -*/ -void QTimerInfoList::timerRepair(const timeval &diff) -{ - // repair all timers - for (int i = 0; i < size(); ++i) { - register QTimerInfo *t = at(i); - t->timeout = t->timeout + diff; - } -} - -static timeval roundToMillisecond(timeval val) -{ - // always round up - // worst case scenario is that the first trigger of a 1-ms timer is 0.999 ms late - - int us = val.tv_usec % 1000; - val.tv_usec += 1000 - us; - return normalizedTimeval(val); -} - -/* - Returns the time to wait for the next timer, or null if no timers - are waiting. -*/ -bool QTimerInfoList::timerWait(timeval &tm) -{ - timeval currentTime = updateCurrentTime(); - repairTimersIfNeeded(); - - // Find first waiting timer not already active - QTimerInfo *t = 0; - for (QTimerInfoList::const_iterator it = constBegin(); it != constEnd(); ++it) { - if (!(*it)->activateRef) { - t = *it; - break; - } - } - - if (!t) - return false; - - if (currentTime < t->timeout) { - // time to wait - tm = roundToMillisecond(t->timeout - currentTime); - } else { - // no time to wait - tm.tv_sec = 0; - tm.tv_usec = 0; - } - - return true; -} - -void QTimerInfoList::registerTimer(int timerId, int interval, QObject *object) -{ - QTimerInfo *t = new QTimerInfo; - t->id = timerId; - t->interval.tv_sec = interval / 1000; - t->interval.tv_usec = (interval % 1000) * 1000; - t->timeout = updateCurrentTime() + t->interval; - t->obj = object; - t->activateRef = 0; - - timerInsert(t); -} - -bool QTimerInfoList::unregisterTimer(int timerId) -{ - // set timer inactive - for (int i = 0; i < count(); ++i) { - register QTimerInfo *t = at(i); - if (t->id == timerId) { - // found it - removeAt(i); - if (t == firstTimerInfo) - firstTimerInfo = 0; - if (t->activateRef) - *(t->activateRef) = 0; - - // release the timer id - if (!QObjectPrivate::get(t->obj)->inThreadChangeEvent) - QAbstractEventDispatcherPrivate::releaseTimerId(timerId); - - delete t; - return true; - } - } - // id not found - return false; -} - -bool QTimerInfoList::unregisterTimers(QObject *object) -{ - if (isEmpty()) - return false; - for (int i = 0; i < count(); ++i) { - register QTimerInfo *t = at(i); - if (t->obj == object) { - // object found - removeAt(i); - if (t == firstTimerInfo) - firstTimerInfo = 0; - if (t->activateRef) - *(t->activateRef) = 0; - - // release the timer id - if (!QObjectPrivate::get(t->obj)->inThreadChangeEvent) - QAbstractEventDispatcherPrivate::releaseTimerId(t->id); - - delete t; - // move back one so that we don't skip the new current item - --i; - } - } - return true; -} - -QList > QTimerInfoList::registeredTimers(QObject *object) const -{ - QList > list; - for (int i = 0; i < count(); ++i) { - register const QTimerInfo * const t = at(i); - if (t->obj == object) - list << QPair(t->id, t->interval.tv_sec * 1000 + t->interval.tv_usec / 1000); - } - return list; -} - -/* - Activate pending timers, returning how many where activated. -*/ -int QTimerInfoList::activateTimers() -{ - if (qt_disable_lowpriority_timers || isEmpty()) - return 0; // nothing to do - - int n_act = 0, maxCount = 0; - firstTimerInfo = 0; - - timeval currentTime = updateCurrentTime(); - repairTimersIfNeeded(); - - - // Find out how many timer have expired - for (QTimerInfoList::const_iterator it = constBegin(); it != constEnd(); ++it) { - if (currentTime < (*it)->timeout) - break; - maxCount++; - } - - //fire the timers. - while (maxCount--) { - if (isEmpty()) - break; - - QTimerInfo *currentTimerInfo = first(); - if (currentTime < currentTimerInfo->timeout) - break; // no timer has expired - - if (!firstTimerInfo) { - firstTimerInfo = currentTimerInfo; - } else if (firstTimerInfo == currentTimerInfo) { - // avoid sending the same timer multiple times - break; - } else if (currentTimerInfo->interval < firstTimerInfo->interval - || currentTimerInfo->interval == firstTimerInfo->interval) { - firstTimerInfo = currentTimerInfo; - } - - // remove from list - removeFirst(); - - // determine next timeout time - currentTimerInfo->timeout += currentTimerInfo->interval; - if (currentTimerInfo->timeout < currentTime) - currentTimerInfo->timeout = currentTime + currentTimerInfo->interval; - - // reinsert timer - timerInsert(currentTimerInfo); - if (currentTimerInfo->interval.tv_usec > 0 || currentTimerInfo->interval.tv_sec > 0) - n_act++; - - if (!currentTimerInfo->activateRef) { - // send event, but don't allow it to recurse - currentTimerInfo->activateRef = ¤tTimerInfo; - - QTimerEvent e(currentTimerInfo->id); - QCoreApplication::sendEvent(currentTimerInfo->obj, &e); - - if (currentTimerInfo) - currentTimerInfo->activateRef = 0; - } - } - - firstTimerInfo = 0; - return n_act; -} - QEventDispatcherUNIX::QEventDispatcherUNIX(QObject *parent) : QAbstractEventDispatcher(*new QEventDispatcherUNIXPrivate, parent) { } diff --git a/src/corelib/kernel/qeventdispatcher_unix_p.h b/src/corelib/kernel/qeventdispatcher_unix_p.h index 122f17f9e9..e96be68db8 100644 --- a/src/corelib/kernel/qeventdispatcher_unix_p.h +++ b/src/corelib/kernel/qeventdispatcher_unix_p.h @@ -59,6 +59,7 @@ #include "private/qcore_unix_p.h" #include "private/qpodlist_p.h" #include "QtCore/qvarlengtharray.h" +#include "private/qtimerinfo_unix_p.h" #if defined(Q_OS_VXWORKS) # include @@ -71,50 +72,6 @@ QT_BEGIN_NAMESPACE -// internal timer info -struct QTimerInfo { - int id; // - timer identifier - timeval interval; // - timer interval - timeval timeout; // - when to sent event - QObject *obj; // - object to receive event - QTimerInfo **activateRef; // - ref from activateTimers -}; - -class QTimerInfoList : public QList -{ -#if ((_POSIX_MONOTONIC_CLOCK-0 <= 0) && !defined(Q_OS_MAC)) || defined(QT_BOOTSTRAPPED) - timeval previousTime; - clock_t previousTicks; - int ticksPerSecond; - int msPerTick; - - bool timeChanged(timeval *delta); -#endif - - // state variables used by activateTimers() - QTimerInfo *firstTimerInfo; - -public: - QTimerInfoList(); - - timeval currentTime; - timeval updateCurrentTime(); - - // must call updateCurrentTime() first! - void repairTimersIfNeeded(); - - bool timerWait(timeval &); - void timerInsert(QTimerInfo *); - void timerRepair(const timeval &); - - void registerTimer(int timerId, int interval, QObject *object); - bool unregisterTimer(int timerId); - bool unregisterTimers(QObject *object); - QList > registeredTimers(QObject *object) const; - - int activateTimers(); -}; - struct QSockNot { QSocketNotifier *obj; diff --git a/src/corelib/kernel/qtimerinfo_unix.cpp b/src/corelib/kernel/qtimerinfo_unix.cpp new file mode 100644 index 0000000000..0bb61de02e --- /dev/null +++ b/src/corelib/kernel/qtimerinfo_unix.cpp @@ -0,0 +1,376 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtCore module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include +#include + +#include "private/qcore_unix_p.h" +#include "private/qtimerinfo_unix_p.h" +#include "private/qobject_p.h" +#include "private/qabstracteventdispatcher_p.h" + +#include + +QT_BEGIN_NAMESPACE + +Q_CORE_EXPORT bool qt_disable_lowpriority_timers=false; + +/* + * Internal functions for manipulating timer data structures. The + * timerBitVec array is used for keeping track of timer identifiers. + */ + +QTimerInfoList::QTimerInfoList() +{ +#if (_POSIX_MONOTONIC_CLOCK-0 <= 0) && !defined(Q_OS_MAC) && !defined(Q_OS_NACL) + if (!QElapsedTimer::isMonotonic()) { + // not using monotonic timers, initialize the timeChanged() machinery + previousTime = qt_gettime(); + + tms unused; + previousTicks = times(&unused); + + ticksPerSecond = sysconf(_SC_CLK_TCK); + msPerTick = 1000/ticksPerSecond; + } else { + // detected monotonic timers + previousTime.tv_sec = previousTime.tv_usec = 0; + previousTicks = 0; + ticksPerSecond = 0; + msPerTick = 0; + } +#endif + + firstTimerInfo = 0; +} + +timeval QTimerInfoList::updateCurrentTime() +{ + return (currentTime = qt_gettime()); +} + +#if ((_POSIX_MONOTONIC_CLOCK-0 <= 0) && !defined(Q_OS_MAC) && !defined(Q_OS_INTEGRITY)) || defined(QT_BOOTSTRAPPED) + +template <> +timeval qAbs(const timeval &t) +{ + timeval tmp = t; + if (tmp.tv_sec < 0) { + tmp.tv_sec = -tmp.tv_sec - 1; + tmp.tv_usec -= 1000000; + } + if (tmp.tv_sec == 0 && tmp.tv_usec < 0) { + tmp.tv_usec = -tmp.tv_usec; + } + return normalizedTimeval(tmp); +} + +/* + Returns true if the real time clock has changed by more than 10% + relative to the processor time since the last time this function was + called. This presumably means that the system time has been changed. + + If /a delta is nonzero, delta is set to our best guess at how much the system clock was changed. +*/ +bool QTimerInfoList::timeChanged(timeval *delta) +{ +#ifdef Q_OS_NACL + Q_UNUSED(delta) + return false; // Calling "times" crashes. +#endif + struct tms unused; + clock_t currentTicks = times(&unused); + + clock_t elapsedTicks = currentTicks - previousTicks; + timeval elapsedTime = currentTime - previousTime; + + timeval elapsedTimeTicks; + elapsedTimeTicks.tv_sec = elapsedTicks / ticksPerSecond; + elapsedTimeTicks.tv_usec = (((elapsedTicks * 1000) / ticksPerSecond) % 1000) * 1000; + + timeval dummy; + if (!delta) + delta = &dummy; + *delta = elapsedTime - elapsedTimeTicks; + + previousTicks = currentTicks; + previousTime = currentTime; + + // If tick drift is more than 10% off compared to realtime, we assume that the clock has + // been set. Of course, we have to allow for the tick granularity as well. + timeval tickGranularity; + tickGranularity.tv_sec = 0; + tickGranularity.tv_usec = msPerTick * 1000; + return elapsedTimeTicks < ((qAbs(*delta) - tickGranularity) * 10); +} + +void QTimerInfoList::repairTimersIfNeeded() +{ + if (QElapsedTimer::isMonotonic()) + return; + timeval delta; + if (timeChanged(&delta)) + timerRepair(delta); +} + +#else // !(_POSIX_MONOTONIC_CLOCK-0 <= 0) && !defined(QT_BOOTSTRAPPED) + +void QTimerInfoList::repairTimersIfNeeded() +{ +} + +#endif + +/* + insert timer info into list +*/ +void QTimerInfoList::timerInsert(QTimerInfo *ti) +{ + int index = size(); + while (index--) { + register const QTimerInfo * const t = at(index); + if (!(ti->timeout < t->timeout)) + break; + } + insert(index+1, ti); +} + +/* + repair broken timer +*/ +void QTimerInfoList::timerRepair(const timeval &diff) +{ + // repair all timers + for (int i = 0; i < size(); ++i) { + register QTimerInfo *t = at(i); + t->timeout = t->timeout + diff; + } +} + +static timeval roundToMillisecond(timeval val) +{ + // always round up + // worst case scenario is that the first trigger of a 1-ms timer is 0.999 ms late + + int us = val.tv_usec % 1000; + val.tv_usec += 1000 - us; + return normalizedTimeval(val); +} + +/* + Returns the time to wait for the next timer, or null if no timers + are waiting. +*/ +bool QTimerInfoList::timerWait(timeval &tm) +{ + timeval currentTime = updateCurrentTime(); + repairTimersIfNeeded(); + + // Find first waiting timer not already active + QTimerInfo *t = 0; + for (QTimerInfoList::const_iterator it = constBegin(); it != constEnd(); ++it) { + if (!(*it)->activateRef) { + t = *it; + break; + } + } + + if (!t) + return false; + + if (currentTime < t->timeout) { + // time to wait + tm = roundToMillisecond(t->timeout - currentTime); + } else { + // no time to wait + tm.tv_sec = 0; + tm.tv_usec = 0; + } + + return true; +} + +void QTimerInfoList::registerTimer(int timerId, int interval, QObject *object) +{ + QTimerInfo *t = new QTimerInfo; + t->id = timerId; + t->interval.tv_sec = interval / 1000; + t->interval.tv_usec = (interval % 1000) * 1000; + t->timeout = updateCurrentTime() + t->interval; + t->obj = object; + t->activateRef = 0; + + timerInsert(t); +} + +bool QTimerInfoList::unregisterTimer(int timerId) +{ + // set timer inactive + for (int i = 0; i < count(); ++i) { + register QTimerInfo *t = at(i); + if (t->id == timerId) { + // found it + removeAt(i); + if (t == firstTimerInfo) + firstTimerInfo = 0; + if (t->activateRef) + *(t->activateRef) = 0; + + // release the timer id + if (!QObjectPrivate::get(t->obj)->inThreadChangeEvent) + QAbstractEventDispatcherPrivate::releaseTimerId(timerId); + + delete t; + return true; + } + } + // id not found + return false; +} + +bool QTimerInfoList::unregisterTimers(QObject *object) +{ + if (isEmpty()) + return false; + for (int i = 0; i < count(); ++i) { + register QTimerInfo *t = at(i); + if (t->obj == object) { + // object found + removeAt(i); + if (t == firstTimerInfo) + firstTimerInfo = 0; + if (t->activateRef) + *(t->activateRef) = 0; + + // release the timer id + if (!QObjectPrivate::get(t->obj)->inThreadChangeEvent) + QAbstractEventDispatcherPrivate::releaseTimerId(t->id); + + delete t; + // move back one so that we don't skip the new current item + --i; + } + } + return true; +} + +QList > QTimerInfoList::registeredTimers(QObject *object) const +{ + QList > list; + for (int i = 0; i < count(); ++i) { + register const QTimerInfo * const t = at(i); + if (t->obj == object) + list << QPair(t->id, t->interval.tv_sec * 1000 + t->interval.tv_usec / 1000); + } + return list; +} + +/* + Activate pending timers, returning how many where activated. +*/ +int QTimerInfoList::activateTimers() +{ + if (qt_disable_lowpriority_timers || isEmpty()) + return 0; // nothing to do + + int n_act = 0, maxCount = 0; + firstTimerInfo = 0; + + timeval currentTime = updateCurrentTime(); + repairTimersIfNeeded(); + + + // Find out how many timer have expired + for (QTimerInfoList::const_iterator it = constBegin(); it != constEnd(); ++it) { + if (currentTime < (*it)->timeout) + break; + maxCount++; + } + + //fire the timers. + while (maxCount--) { + if (isEmpty()) + break; + + QTimerInfo *currentTimerInfo = first(); + if (currentTime < currentTimerInfo->timeout) + break; // no timer has expired + + if (!firstTimerInfo) { + firstTimerInfo = currentTimerInfo; + } else if (firstTimerInfo == currentTimerInfo) { + // avoid sending the same timer multiple times + break; + } else if (currentTimerInfo->interval < firstTimerInfo->interval + || currentTimerInfo->interval == firstTimerInfo->interval) { + firstTimerInfo = currentTimerInfo; + } + + // remove from list + removeFirst(); + + // determine next timeout time + currentTimerInfo->timeout += currentTimerInfo->interval; + if (currentTimerInfo->timeout < currentTime) + currentTimerInfo->timeout = currentTime + currentTimerInfo->interval; + + // reinsert timer + timerInsert(currentTimerInfo); + if (currentTimerInfo->interval.tv_usec > 0 || currentTimerInfo->interval.tv_sec > 0) + n_act++; + + if (!currentTimerInfo->activateRef) { + // send event, but don't allow it to recurse + currentTimerInfo->activateRef = ¤tTimerInfo; + + QTimerEvent e(currentTimerInfo->id); + QCoreApplication::sendEvent(currentTimerInfo->obj, &e); + + if (currentTimerInfo) + currentTimerInfo->activateRef = 0; + } + } + + firstTimerInfo = 0; + return n_act; +} + +QT_END_NAMESPACE diff --git a/src/corelib/kernel/qtimerinfo_unix_p.h b/src/corelib/kernel/qtimerinfo_unix_p.h new file mode 100644 index 0000000000..d464a146e3 --- /dev/null +++ b/src/corelib/kernel/qtimerinfo_unix_p.h @@ -0,0 +1,110 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtCore module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QTIMERINFO_UNIX_P_H +#define QTIMERINFO_UNIX_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +#include // struct timeval + +QT_BEGIN_NAMESPACE + +// internal timer info +struct QTimerInfo { + int id; // - timer identifier + timeval interval; // - timer interval + timeval timeout; // - when to sent event + QObject *obj; // - object to receive event + QTimerInfo **activateRef; // - ref from activateTimers +}; + +class QTimerInfoList : public QList +{ +#if ((_POSIX_MONOTONIC_CLOCK-0 <= 0) && !defined(Q_OS_MAC)) || defined(QT_BOOTSTRAPPED) + timeval previousTime; + clock_t previousTicks; + int ticksPerSecond; + int msPerTick; + + bool timeChanged(timeval *delta); +#endif + + // state variables used by activateTimers() + QTimerInfo *firstTimerInfo; + +public: + QTimerInfoList(); + + timeval currentTime; + timeval updateCurrentTime(); + + // must call updateCurrentTime() first! + void repairTimersIfNeeded(); + + bool timerWait(timeval &); + void timerInsert(QTimerInfo *); + void timerRepair(const timeval &); + + void registerTimer(int timerId, int interval, QObject *object); + bool unregisterTimer(int timerId); + bool unregisterTimers(QObject *object); + QList > registeredTimers(QObject *object) const; + + int activateTimers(); +}; + +QT_END_NAMESPACE + +#endif // QTIMERINFO_UNIX_P_H -- cgit v1.2.3 From 3bb0c88de8894fc05ad1558b96ae05ceeff64b78 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thorbj=C3=B8rn=20Lund=20Martsum?= Date: Wed, 14 Dec 2011 21:26:49 +0100 Subject: QHeaderView - no big update work if updates are disabled There is no reason to find out where to update the headerview if updates aren't enabled. Another approch I considered to skip the whole calculation and just call update. I seriosly doubt that this calculation and update of a particular QHeaderView rect will normally(*) be faster than just updating everything. However to be safe I have done the conservative fix. (*) Normally but with many/fragmented spans in the headerview. Change-Id: Ia812a747ee825653db0345cdc34f9d2f7155ea01 Reviewed-by: Stephen Kelly --- src/widgets/itemviews/qheaderview.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/widgets/itemviews/qheaderview.cpp b/src/widgets/itemviews/qheaderview.cpp index 8ecbdeb8bd..76529fcda3 100644 --- a/src/widgets/itemviews/qheaderview.cpp +++ b/src/widgets/itemviews/qheaderview.cpp @@ -887,6 +887,11 @@ void QHeaderView::resizeSection(int logical, int size) if (size != oldSize) d->createSectionSpan(visual, visual, size, d->headerSectionResizeMode(visual)); + if (!updatesEnabled()) { + emit sectionResized(logical, oldSize, size); + return; + } + int w = d->viewport->width(); int h = d->viewport->height(); int pos = sectionViewportPosition(logical); -- cgit v1.2.3 From 81a825ea9b124e5b35a3aeac9a738bff0a4da923 Mon Sep 17 00:00:00 2001 From: Joerg Bornemann Date: Tue, 13 Dec 2011 17:04:32 +0100 Subject: fix QMutex warning in tst_QLocalSocket::threadedConnection Change-Id: I5728af1944e44bd976e51d4f0c0a923deacbeea0 Reviewed-by: Oswald Buddenhagen --- tests/auto/network/socket/qlocalsocket/tst_qlocalsocket.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/auto/network/socket/qlocalsocket/tst_qlocalsocket.cpp b/tests/auto/network/socket/qlocalsocket/tst_qlocalsocket.cpp index b4449df86c..47697b1940 100644 --- a/tests/auto/network/socket/qlocalsocket/tst_qlocalsocket.cpp +++ b/tests/auto/network/socket/qlocalsocket/tst_qlocalsocket.cpp @@ -717,6 +717,7 @@ void tst_QLocalSocket::threadedConnection() server.mutex.lock(); server.start(); server.wc.wait(&server.mutex); + server.mutex.unlock(); QList clients; for (int i = 0; i < threads; ++i) { -- cgit v1.2.3 From f405a57fa147d36dc2ac161800eb4339ee748e37 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thorbj=C3=B8rn=20Lund=20Martsum?= Date: Thu, 15 Dec 2011 07:32:15 +0100 Subject: QHeaderView - remove stupid if Not only is this extra if unnecesary - it is confusing. oldSize is different from size. (otherwise we would have returned less than 10 lines above) Change-Id: Ie911414f679df2be7b5c8bc2670225d46e986b32 Reviewed-by: Stephen Kelly --- src/widgets/itemviews/qheaderview.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/widgets/itemviews/qheaderview.cpp b/src/widgets/itemviews/qheaderview.cpp index 76529fcda3..e35f9ba0f8 100644 --- a/src/widgets/itemviews/qheaderview.cpp +++ b/src/widgets/itemviews/qheaderview.cpp @@ -884,8 +884,7 @@ void QHeaderView::resizeSection(int logical, int size) if (stretchLastSection() && visual == d->lastVisibleVisualIndex()) d->lastSectionSize = size; - if (size != oldSize) - d->createSectionSpan(visual, visual, size, d->headerSectionResizeMode(visual)); + d->createSectionSpan(visual, visual, size, d->headerSectionResizeMode(visual)); if (!updatesEnabled()) { emit sectionResized(logical, oldSize, size); -- cgit v1.2.3 From 1431679fb589cb5e652a40957a5d2868dc0a9080 Mon Sep 17 00:00:00 2001 From: Robin Burchell Date: Sat, 10 Dec 2011 16:00:15 +0100 Subject: Remove Symbian support from /src/corelib/kernel/. Change-Id: Ic4a1b4f074d2ffd4cdfcb44e47c9bfccc2378760 Reviewed-by: Lars Knoll Reviewed-by: Olivier Goffart Reviewed-by: Marius Storm-Olsen --- src/corelib/kernel/kernel.pri | 18 +- src/corelib/kernel/qcore_symbian_p.cpp | 317 ------ src/corelib/kernel/qcore_symbian_p.h | 282 ----- src/corelib/kernel/qeventdispatcher_symbian.cpp | 1316 ----------------------- src/corelib/kernel/qeventdispatcher_symbian_p.h | 327 ------ src/corelib/kernel/qsharedmemory_symbian.cpp | 173 --- src/corelib/kernel/qsystemsemaphore_symbian.cpp | 138 --- 7 files changed, 1 insertion(+), 2570 deletions(-) delete mode 100644 src/corelib/kernel/qcore_symbian_p.cpp delete mode 100644 src/corelib/kernel/qcore_symbian_p.h delete mode 100644 src/corelib/kernel/qeventdispatcher_symbian.cpp delete mode 100644 src/corelib/kernel/qeventdispatcher_symbian_p.h delete mode 100644 src/corelib/kernel/qsharedmemory_symbian.cpp delete mode 100644 src/corelib/kernel/qsystemsemaphore_symbian.cpp diff --git a/src/corelib/kernel/kernel.pri b/src/corelib/kernel/kernel.pri index 4dbb669ffd..147f20aaa3 100644 --- a/src/corelib/kernel/kernel.pri +++ b/src/corelib/kernel/kernel.pri @@ -99,7 +99,7 @@ nacl { kernel/qfunctions_nacl.h } -unix:!symbian { +unix { SOURCES += \ kernel/qcore_unix.cpp \ kernel/qcrashhandler.cpp \ @@ -126,22 +126,6 @@ unix:!symbian { contains(QT_CONFIG, clock-gettime):include($$QT_SOURCE_TREE/config.tests/unix/clock-gettime/clock-gettime.pri) } -symbian { - SOURCES += \ - kernel/qcore_unix.cpp \ - kernel/qcrashhandler.cpp \ - kernel/qeventdispatcher_symbian.cpp \ - kernel/qcore_symbian_p.cpp \ - kernel/qsharedmemory_symbian.cpp \ - kernel/qsystemsemaphore_symbian.cpp - - HEADERS += \ - kernel/qcore_unix_p.h \ - kernel/qcrashhandler_p.h \ - kernel/qeventdispatcher_symbian_p.h \ - kernel/qcore_symbian_p.h -} - vxworks { SOURCES += \ kernel/qfunctions_vxworks.cpp diff --git a/src/corelib/kernel/qcore_symbian_p.cpp b/src/corelib/kernel/qcore_symbian_p.cpp deleted file mode 100644 index 5b52ec22a1..0000000000 --- a/src/corelib/kernel/qcore_symbian_p.cpp +++ /dev/null @@ -1,317 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtCore module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include -#include -#include -#include "qcore_symbian_p.h" -#include -#include - -QT_BEGIN_NAMESPACE - -/* - Helper function for calling into Symbian classes that expect a TDes&. - This function converts a QString to a TDes by allocating memory that - must be deleted by the caller. -*/ - -Q_CORE_EXPORT HBufC* qt_QString2HBufC(const QString& aString) -{ - HBufC *buffer; -#ifdef QT_NO_UNICODE - TPtrC8 ptr(reinterpret_cast(aString.toLocal8Bit().constData())); -#else - TPtrC16 ptr(qt_QString2TPtrC(aString)); -#endif - buffer = HBufC::New(ptr.Length()); - Q_CHECK_PTR(buffer); - buffer->Des().Copy(ptr); - return buffer; -} - -Q_CORE_EXPORT QString qt_TDesC2QString(const TDesC& aDescriptor) -{ -#ifdef QT_NO_UNICODE - return QString::fromLocal8Bit(aDescriptor.Ptr(), aDescriptor.Length()); -#else - return QString(reinterpret_cast(aDescriptor.Ptr()), aDescriptor.Length()); -#endif -} - -QHBufC::QHBufC() - : m_hBufC(0) -{ -} - -QHBufC::QHBufC(const QHBufC &src) - : m_hBufC(src.m_hBufC->Alloc()) -{ - Q_CHECK_PTR(m_hBufC); -} - -/*! - \internal - Constructs a QHBufC from an HBufC. Note that the QHBufC instance takes - ownership of the HBufC. -*/ -QHBufC::QHBufC(HBufC *src) - : m_hBufC(src) -{ -} - -QHBufC::QHBufC(const QString &src) -{ - m_hBufC = qt_QString2HBufC(src); -} - -QHBufC::~QHBufC() -{ - if (m_hBufC) - delete m_hBufC; -} - -class QS60PluginResolver -{ -public: - QS60PluginResolver() - : initTried(false) {} - - ~QS60PluginResolver() { - lib.Close(); - } - - TLibraryFunction resolve(int ordinal) { - if (!initTried) { - init(); - initTried = true; - } - - if (lib.Handle()) - return lib.Lookup(ordinal); - else - return reinterpret_cast(NULL); - } - -private: - void init() - { - _LIT(KLibName_3_1, "qts60plugin_3_1" QT_LIBINFIX_UNICODE L".dll"); - _LIT(KLibName_3_2, "qts60plugin_3_2" QT_LIBINFIX_UNICODE L".dll"); - _LIT(KLibName_5_0, "qts60plugin_5_0" QT_LIBINFIX_UNICODE L".dll"); - - TPtrC libName; - TInt uidValue; - switch (QSysInfo::s60Version()) { - case QSysInfo::SV_S60_3_1: - libName.Set(KLibName_3_1); - uidValue = 0x2001E620; - break; - case QSysInfo::SV_S60_3_2: - libName.Set(KLibName_3_2); - uidValue = 0x2001E621; - break; - case QSysInfo::SV_S60_5_0: // Fall through to default - default: - // Default to 5.0 version, as any unknown platform is likely to be newer than that - libName.Set(KLibName_5_0); - uidValue = 0x2001E622; - break; - } - - TUidType libUid(KDynamicLibraryUid, KSharedLibraryUid, TUid::Uid(uidValue)); - lib.Load(libName, libUid); - - // Duplicate lib handle to enable process wide access to it. Since Duplicate overwrites - // existing handle without closing it, store original for subsequent closing. - RLibrary origHandleCloser = lib; - lib.Duplicate(RThread(), EOwnerProcess); - origHandleCloser.Close(); - } - - RLibrary lib; - bool initTried; -}; - -Q_GLOBAL_STATIC(QS60PluginResolver, qt_s60_plugin_resolver); - -/*! - \internal - Resolves a platform version specific function from S60 plugin. - If plugin is missing or resolving fails for another reason, NULL is returned. -*/ -Q_CORE_EXPORT TLibraryFunction qt_resolveS60PluginFunc(int ordinal) -{ - return qt_s60_plugin_resolver()->resolve(ordinal); -} - -class QS60RFsSession -{ -public: - QS60RFsSession() { - qt_symbian_throwIfError(iFs.Connect()); - qt_symbian_throwIfError(iFs.ShareProtected()); - } - - ~QS60RFsSession() { - iFs.Close(); - } - - RFs& GetRFs() { - return iFs; - } - -private: - - RFs iFs; -}; - -uint qHash(const RSubSessionBase& key) -{ - return qHash(key.SubSessionHandle()); -} - -Q_GLOBAL_STATIC(QS60RFsSession, qt_s60_RFsSession); - -Q_CORE_EXPORT RFs& qt_s60GetRFs() -{ - return qt_s60_RFsSession()->GetRFs(); -} - -QSymbianSocketManager::QSymbianSocketManager() : - iNextSocket(0), iDefaultConnection(0) -{ - TSessionPref preferences; - // ### In future this could be changed to KAfInet6 when that is more common than IPv4 - preferences.iAddrFamily = KAfInet; - preferences.iProtocol = KProtocolInetIp; - //use global message pool, as we do not know how many sockets app will use - //TODO: is this the right choice? - qt_symbian_throwIfError(iSocketServ.Connect(preferences, -1)); - qt_symbian_throwIfError(iSocketServ.ShareAuto()); -} - -QSymbianSocketManager::~QSymbianSocketManager() -{ - iSocketServ.Close(); - if(!socketMap.isEmpty()) { - qWarning("leaked %d sockets on exit", socketMap.count()); - } -} - -RSocketServ& QSymbianSocketManager::getSocketServer() { - return iSocketServ; -} - -int QSymbianSocketManager::addSocket(const RSocket& socket) { - QHashableSocket sock(static_cast(socket)); - QMutexLocker l(&iMutex); - Q_ASSERT(!socketMap.contains(sock)); - if(socketMap.contains(sock)) - return socketMap.value(sock); - // allocate socket number - int guard = 0; - while(reverseSocketMap.contains(iNextSocket)) { - iNextSocket++; - iNextSocket %= max_sockets; - guard++; - if(guard > max_sockets) - return -1; - } - int id = iNextSocket; - - socketMap[sock] = id; - reverseSocketMap[id] = sock; - return id + socket_offset; -} - -bool QSymbianSocketManager::removeSocket(const RSocket &socket) { - QHashableSocket sock(static_cast(socket)); - QMutexLocker l(&iMutex); - if(!socketMap.contains(sock)) - return false; - int id = socketMap.value(sock); - socketMap.remove(sock); - reverseSocketMap.remove(id); - return true; -} - -int QSymbianSocketManager::lookupSocket(const RSocket& socket) const { - QHashableSocket sock(static_cast(socket)); - QMutexLocker l(&iMutex); - if(!socketMap.contains(sock)) - return -1; - int id = socketMap.value(sock); - return id + socket_offset; -} - -bool QSymbianSocketManager::lookupSocket(int fd, RSocket& socket) const { - QMutexLocker l(&iMutex); - int id = fd - socket_offset; - if(!reverseSocketMap.contains(id)) - return false; - socket = reverseSocketMap.value(id); - return true; -} - -void QSymbianSocketManager::setDefaultConnection(RConnection* con) -{ - iDefaultConnection = con; -} - -RConnection* QSymbianSocketManager::defaultConnection() const -{ - return iDefaultConnection; -} - -Q_GLOBAL_STATIC(QSymbianSocketManager, qt_symbianSocketManager); - -QSymbianSocketManager& QSymbianSocketManager::instance() -{ - return *(qt_symbianSocketManager()); -} - -Q_CORE_EXPORT RSocketServ& qt_symbianGetSocketServer() -{ - return QSymbianSocketManager::instance().getSocketServer(); -} - -QT_END_NAMESPACE diff --git a/src/corelib/kernel/qcore_symbian_p.h b/src/corelib/kernel/qcore_symbian_p.h deleted file mode 100644 index 84c6fed4db..0000000000 --- a/src/corelib/kernel/qcore_symbian_p.h +++ /dev/null @@ -1,282 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtCore module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef QCORE_SYMBIAN_P_H -#define QCORE_SYMBIAN_P_H - -// -// W A R N I N G -// ------------- -// -// This file is not part of the Qt API. It exists for the convenience -// of other Qt classes. This header file may change from version to -// version without notice, or even be removed. -// -// We mean it. -// - -#include -#include -#include -#include -#include -#include -#include -#include - -#define QT_LSTRING2(x) L##x -#define QT_LSTRING(x) QT_LSTRING2(x) - -#if defined(QT_LIBINFIX) -# define QT_LIBINFIX_UNICODE QT_LSTRING(QT_LIBINFIX) -#else -# define QT_LIBINFIX_UNICODE L"" -#endif - -QT_BEGIN_HEADER - -QT_BEGIN_NAMESPACE - -Q_CORE_EXPORT HBufC* qt_QString2HBufC(const QString& aString); - -Q_CORE_EXPORT QString qt_TDesC2QString(const TDesC& aDescriptor); -inline QString qt_TDes2QString(const TDes& aDescriptor) { return qt_TDesC2QString(aDescriptor); } - -static inline QSize qt_TSize2QSize(const TSize& ts) -{ - return QSize(ts.iWidth, ts.iHeight); -} - -static inline TSize qt_QSize2TSize(const QSize& qs) -{ - return TSize(qs.width(), qs.height()); -} - -static inline QRect qt_TRect2QRect(const TRect& tr) -{ - return QRect(tr.iTl.iX, tr.iTl.iY, tr.Width(), tr.Height()); -} - -static inline TRect qt_QRect2TRect(const QRect& qr) -{ - return TRect(TPoint(qr.left(), qr.top()), TSize(qr.width(), qr.height())); -} - -// Returned TPtrC is valid as long as the given parameter is valid and unmodified -static inline TPtrC qt_QString2TPtrC( const QString& string ) -{ - return TPtrC16(static_cast(string.utf16()), string.length()); -} - -/*! - \internal - This class is a wrapper around the Symbian HBufC descriptor class. - It makes sure that the heap allocated HBufC class is freed when it is - destroyed. -*/ -class Q_CORE_EXPORT QHBufC -{ -public: - QHBufC(); - QHBufC(const QHBufC &src); - QHBufC(HBufC *src); - QHBufC(const QString &src); - ~QHBufC(); - - inline operator HBufC *() { return m_hBufC; } - inline operator const HBufC *() const { return m_hBufC; } - inline HBufC *data() { return m_hBufC; } - inline const HBufC *data() const { return m_hBufC; } - inline HBufC & operator*() { return *m_hBufC; } - inline const HBufC & operator*() const { return *m_hBufC; } - inline HBufC * operator->() { return m_hBufC; } - inline const HBufC * operator->() const { return m_hBufC; } - - inline bool operator==(const QHBufC ¶m) const { return data() == param.data(); } - inline bool operator!=(const QHBufC ¶m) const { return data() != param.data(); } - -private: - HBufC *m_hBufC; -}; - -inline uint qHash(TUid uid) -{ - return qHash(uid.iUid); -} - -// S60 version specific function ordinals that can be resolved -enum S60PluginFuncOrdinals -{ - S60Plugin_TimeFormatL = 1, - S60Plugin_GetTimeFormatSpec = 2, - S60Plugin_GetLongDateFormatSpec = 3, - S60Plugin_GetShortDateFormatSpec = 4, - S60Plugin_LocalizedDirectoryName = 5, - S60Plugin_GetSystemDrive = 6 -}; - -Q_CORE_EXPORT TLibraryFunction qt_resolveS60PluginFunc(int ordinal); - -Q_CORE_EXPORT RFs& qt_s60GetRFs(); -Q_CORE_EXPORT RSocketServ& qt_symbianGetSocketServer(); - -// Defined in qlocale_symbian.cpp. -Q_CORE_EXPORT QByteArray qt_symbianLocaleName(int code); - -template -struct QScopedPointerRCloser -{ - static inline void cleanup(R *rPointer) - { - // Enforce a complete type. - // If you get a compile error here, read the section on forward declared - // classes in the QScopedPointer documentation. - typedef char IsIncompleteType[ sizeof(R) ? 1 : -1 ]; - (void) sizeof(IsIncompleteType); - - if (rPointer) - rPointer->Close(); - } -}; - -//Wrapper for RSocket so it can be used as a key in QHash or QMap -class QHashableSocket : public RSocket -{ -public: - bool operator==(const QHashableSocket &other) const - { - return SubSessionHandle() == other.SubSessionHandle() - && Session().Handle() == other.Session().Handle(); - } - bool operator<(const QHashableSocket &other) const - { - if (Session().Handle() == other.Session().Handle()) - return SubSessionHandle() < other.SubSessionHandle(); - return Session().Handle() < other.Session().Handle(); - } -}; - -uint qHash(const RSubSessionBase& key); - -/*! - \internal - This class exists in QtCore for the benefit of QSocketNotifier, which uses integer - file descriptors in its public API. - So we need a way to map between int and RSocket. - Additionally, it is used to host the global RSocketServ session -*/ -class Q_CORE_EXPORT QSymbianSocketManager -{ -public: - QSymbianSocketManager(); - ~QSymbianSocketManager(); - - /*! - \internal - \return handle to the socket server - */ - RSocketServ& getSocketServer(); - /*! - \internal - Adds a symbian socket to the global map - \param an open socket - \return pseudo file descriptor, -1 if out of resources - */ - int addSocket(const RSocket &sock); - /*! - \internal - Removes a symbian socket from the global map - \param an open socket - \return true if the socket was in the map - */ - bool removeSocket(const RSocket &sock); - /*! - \internal - Get pseudo file descriptor for a socket - \param an open socket - \return integer handle, or -1 if not in map - */ - int lookupSocket(const RSocket &sock) const; - /*! - \internal - Get socket for a pseudo file descriptor - \param an open socket fd - \param sock (out) socket handle - \return true on success or false if not in map - */ - bool lookupSocket(int fd, RSocket& sock) const; - - /*! - \internal - Set the default connection to use for new sockets - \param an open connection - */ - void setDefaultConnection(RConnection* con); - /*! - \internal - Get the default connection to use for new sockets - \return the connection, or null pointer if there is none set - */ - RConnection *defaultConnection() const; - - /*! - \internal - Gets a reference to the singleton socket manager - */ - static QSymbianSocketManager& instance(); -private: - int allocateSocket(); - - const static int max_sockets = 0x20000; //covers all TCP and UDP ports, probably run out of memory first - const static int socket_offset = 0x40000000; //hacky way of separating sockets from file descriptors - int iNextSocket; - QHash socketMap; - QHash reverseSocketMap; - mutable QMutex iMutex; - RSocketServ iSocketServ; - RConnection *iDefaultConnection; -}; - -QT_END_NAMESPACE - -QT_END_HEADER - -#endif //QCORE_SYMBIAN_P_H diff --git a/src/corelib/kernel/qeventdispatcher_symbian.cpp b/src/corelib/kernel/qeventdispatcher_symbian.cpp deleted file mode 100644 index 1d7ecce9ae..0000000000 --- a/src/corelib/kernel/qeventdispatcher_symbian.cpp +++ /dev/null @@ -1,1316 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtCore module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "qeventdispatcher_symbian_p.h" -#include -#include -#include -#include - -#include -#include - -QT_BEGIN_NAMESPACE - -#ifdef SYMBIAN_GRAPHICS_WSERV_QT_EFFECTS -// when the system UI is Qt based, priority drop is not needed as CPU starved processes will not be killed. -#undef QT_SYMBIAN_PRIORITY_DROP -#else -#define QT_SYMBIAN_PRIORITY_DROP -#endif - -#define WAKE_UP_PRIORITY CActive::EPriorityStandard -#define TIMER_PRIORITY CActive::EPriorityHigh -#define NULLTIMER_PRIORITY CActive::EPriorityLow -#define COMPLETE_DEFERRED_ACTIVE_OBJECTS_PRIORITY CActive::EPriorityIdle - -static inline int qt_pipe_write(int socket, const char *data, qint64 len) -{ - return ::write(socket, data, len); -} -#if defined(write) -# undef write -#endif - -static inline int qt_pipe_close(int socket) -{ - return ::close(socket); -} -#if defined(close) -# undef close -#endif - -static inline int qt_pipe_fcntl(int socket, int command) -{ - return ::fcntl(socket, command); -} -static inline int qt_pipe2_fcntl(int socket, int command, int option) -{ - return ::fcntl(socket, command, option); -} -#if defined(fcntl) -# undef fcntl -#endif - -static inline int qt_socket_select(int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout) -{ - return ::select(nfds, readfds, writefds, exceptfds, timeout); -} - -// This simply interrupts the select and locks the mutex until destroyed. -class QSelectMutexGrabber -{ -public: - QSelectMutexGrabber(int writeFd, int readFd, QMutex *mutex) - : m_mutex(mutex) - { - if (m_mutex->tryLock()) - return; - - char dummy = 0; - qt_pipe_write(writeFd, &dummy, 1); - - m_mutex->lock(); - - char buffer; - while (::read(readFd, &buffer, 1) > 0) {} - } - - ~QSelectMutexGrabber() - { - m_mutex->unlock(); - } - -private: - QMutex *m_mutex; -}; - -/* - * This class is designed to aid in implementing event handling in a more round robin fashion. We - * cannot change active objects that we do not own, but the active objects that Qt owns will use - * this as a base class with convenience functions. - * - * Here is how it works: On every RunL, the deriving class should call maybeQueueForLater(). - * This will return whether the active object has been queued, or whether it should run immediately. - * Queued objects will run again after other events have been processed. - * - * The QCompleteDeferredAOs class is a special object that runs after all others, which will - * reactivate the objects that were previously not run. - */ -QActiveObject::QActiveObject(TInt priority, QEventDispatcherSymbian *dispatcher) - : CActive(priority), - m_dispatcher(dispatcher), - m_hasAlreadyRun(false), - m_hasRunAgain(false), - m_iterationCount(1) -{ -} - -QActiveObject::~QActiveObject() -{ - if (m_hasRunAgain) - m_dispatcher->removeDeferredActiveObject(this); -} - -bool QActiveObject::maybeQueueForLater() -{ - Q_ASSERT(!m_hasRunAgain); - - if (!m_hasAlreadyRun || m_dispatcher->iterationCount() != m_iterationCount) { - // First occurrence of this event in this iteration. - m_hasAlreadyRun = true; - m_iterationCount = m_dispatcher->iterationCount(); - return false; - } else { - // The event has already occurred. - m_dispatcher->addDeferredActiveObject(this); - m_hasRunAgain = true; - return true; - } -} - -bool QActiveObject::maybeDeferSocketEvent() -{ - Q_ASSERT(!m_hasRunAgain); - Q_ASSERT(m_dispatcher); - if (!m_dispatcher->areSocketEventsBlocked()) { - return false; - } - m_hasRunAgain = true; - m_dispatcher->addDeferredSocketActiveObject(this); - return true; -} - -void QActiveObject::reactivateAndComplete() -{ - TInt error = iStatus.Int(); - iStatus = KRequestPending; - SetActive(); - TRequestStatus *status = &iStatus; - QEventDispatcherSymbian::RequestComplete(status, error); - - m_hasRunAgain = false; - m_hasAlreadyRun = false; -} - -QWakeUpActiveObject::QWakeUpActiveObject(QEventDispatcherSymbian *dispatcher) - : QActiveObject(WAKE_UP_PRIORITY, dispatcher) -{ - m_hostThreadId = RThread().Id(); - CActiveScheduler::Add(this); - iStatus = KRequestPending; - SetActive(); -} - -QWakeUpActiveObject::~QWakeUpActiveObject() -{ - Cancel(); -} - -void QWakeUpActiveObject::DoCancel() -{ - if (iStatus.Int() == KRequestPending) { - TRequestStatus *status = &iStatus; - QEventDispatcherSymbian::RequestComplete(status, KErrNone); - } else if (IsActive() && m_hostThreadId != RThread().Id()) { - // This is being cancelled in the adopted monitor thread, which can happen if an adopted thread with - // an event loop has exited. The event loop creates an event dispatcher with this active object, which may be complete but not run on exit. - // We force a cancellation in this thread, because a) the object cannot be deleted while active and b) without a cancellation - // the thread semaphore will be one count down. - // It is possible for this problem to affect other active objects. They symptom would be that finished signals - // from adopted threads are not sent, or they arrive much later than they should. - TRequestStatus *status = &iStatus; - User::RequestComplete(status, KErrNone); - } -} - -void QWakeUpActiveObject::RunL() -{ - if (maybeQueueForLater()) - return; - - iStatus = KRequestPending; - SetActive(); - QT_TRYCATCH_LEAVING(m_dispatcher->wakeUpWasCalled()); -} - -QTimerActiveObject::QTimerActiveObject(QEventDispatcherSymbian *dispatcher, SymbianTimerInfo *timerInfo) - : QActiveObject((timerInfo->interval) ? TIMER_PRIORITY : NULLTIMER_PRIORITY , dispatcher), - m_timerInfo(timerInfo), m_expectedTimeSinceLastEvent(0) -{ - // start the timeout timer to ensure initialisation - m_timeoutTimer.start(); -} - -QTimerActiveObject::~QTimerActiveObject() -{ - Cancel(); - m_rTimer.Close(); //close of null handle is safe -} - -void QTimerActiveObject::DoCancel() -{ - if (m_timerInfo->interval > 0) { - m_rTimer.Cancel(); - } else { - if (iStatus.Int() == KRequestPending) { - TRequestStatus *status = &iStatus; - QEventDispatcherSymbian::RequestComplete(status, KErrNone); - } - } -} - -void QTimerActiveObject::RunL() -{ - int error = KErrNone; - if (iStatus == KErrNone) { - QT_TRYCATCH_ERROR(error, Run()); - } else { - error = iStatus.Int(); - } - // All Symbian error codes are negative. - if (error < 0) { - CActiveScheduler::Current()->Error(error); // stop and report here, as this timer will be deleted on scope exit - } -} - -#define MAX_SYMBIAN_TIMEOUT_MS 2000000 -void QTimerActiveObject::StartTimer() -{ - if (m_timerInfo->msLeft > MAX_SYMBIAN_TIMEOUT_MS) { - //There is loss of accuracy anyway due to needing to restart the timer every 33 minutes, - //so the 1/64s res of After() is acceptable for these very long timers. - m_rTimer.After(iStatus, MAX_SYMBIAN_TIMEOUT_MS * 1000); - m_timerInfo->msLeft -= MAX_SYMBIAN_TIMEOUT_MS; - } else { - // this algorithm implements drift correction for repeating timers - // calculate how late we are for this event - int timeSinceLastEvent = m_timeoutTimer.restart(); - int overshoot = timeSinceLastEvent - m_expectedTimeSinceLastEvent; - if (overshoot > m_timerInfo->msLeft) { - // we skipped a whole timeout, restart from here - overshoot = 0; - } - // calculate when the next event should happen - int waitTime = m_timerInfo->msLeft - overshoot; - m_expectedTimeSinceLastEvent = waitTime; - // limit the actual ms wait time to avoid wild corrections - // this will cause the real event time to slowly drift back to the expected event time - // measurements show that Symbian timers always fire 1 or 2 ms late - const int limit = 4; - waitTime = qMax(m_timerInfo->msLeft - limit, waitTime); - m_rTimer.HighRes(iStatus, waitTime * 1000); - m_timerInfo->msLeft = 0; - } - SetActive(); -} - -void QTimerActiveObject::Run() -{ - //restart timer immediately, if the timeout has been split because it overflows max for platform. - if (m_timerInfo->msLeft > 0) { - StartTimer(); - return; - } - - if (maybeQueueForLater()) - return; - - if (m_timerInfo->interval > 0) { - // Start a new timer immediately so that we don't lose time. - m_timerInfo->msLeft = m_timerInfo->interval; - StartTimer(); - - m_timerInfo->dispatcher->timerFired(m_timerInfo->timerId); - } else { - // However, we only complete zero timers after the event has finished, - // in order to prevent busy looping when doing nested loops. - - // Keep the refpointer around in order to avoid deletion until the end of this function. - SymbianTimerInfoPtr timerInfoPtr(m_timerInfo); - - m_timerInfo->dispatcher->timerFired(m_timerInfo->timerId); - - iStatus = KRequestPending; - SetActive(); - TRequestStatus *status = &iStatus; - QEventDispatcherSymbian::RequestComplete(status, KErrNone); - } -} - -void QTimerActiveObject::Start() -{ - CActiveScheduler::Add(this); - m_timerInfo->msLeft = m_timerInfo->interval; - if (m_timerInfo->interval > 0) { - if (!m_rTimer.Handle()) { - qt_symbian_throwIfError(m_rTimer.CreateLocal()); - } - m_timeoutTimer.start(); - m_expectedTimeSinceLastEvent = 0; - StartTimer(); - } else { - iStatus = KRequestPending; - SetActive(); - TRequestStatus *status = &iStatus; - QEventDispatcherSymbian::RequestComplete(status, KErrNone); - } -} - -SymbianTimerInfo::SymbianTimerInfo() - : timerAO(0) -{ -} - -SymbianTimerInfo::~SymbianTimerInfo() -{ - delete timerAO; -} - -QCompleteDeferredAOs::QCompleteDeferredAOs(QEventDispatcherSymbian *dispatcher) - : CActive(COMPLETE_DEFERRED_ACTIVE_OBJECTS_PRIORITY), - m_dispatcher(dispatcher) -{ - CActiveScheduler::Add(this); - iStatus = KRequestPending; - SetActive(); -} - -QCompleteDeferredAOs::~QCompleteDeferredAOs() -{ - Cancel(); -} - -void QCompleteDeferredAOs::complete() -{ - if (iStatus.Int() == KRequestPending) { - TRequestStatus *status = &iStatus; - QEventDispatcherSymbian::RequestComplete(status, KErrNone); - } -} - -void QCompleteDeferredAOs::DoCancel() -{ - if (iStatus.Int() == KRequestPending) { - TRequestStatus *status = &iStatus; - QEventDispatcherSymbian::RequestComplete(status, KErrNone); - } -} - -void QCompleteDeferredAOs::RunL() -{ - iStatus = KRequestPending; - SetActive(); - - QT_TRYCATCH_LEAVING(m_dispatcher->reactivateDeferredActiveObjects()); -} - -QSelectThread::QSelectThread() - : m_quit(false) -{ - if (::pipe(m_pipeEnds) != 0) { - qWarning("Select thread was unable to open a pipe, errno: %i", errno); - } else { - int flags0 = qt_pipe_fcntl(m_pipeEnds[0], F_GETFL); - int flags1 = qt_pipe_fcntl(m_pipeEnds[1], F_GETFL); - // We should check the error code here, but Open C has a bug that returns - // failure even though the operation was successful. - qt_pipe2_fcntl(m_pipeEnds[0], F_SETFL, flags0 | O_NONBLOCK); - qt_pipe2_fcntl(m_pipeEnds[1], F_SETFL, flags1 | O_NONBLOCK); - } -} - -QSelectThread::~QSelectThread() -{ - qt_pipe_close(m_pipeEnds[1]); - qt_pipe_close(m_pipeEnds[0]); -} - -void QSelectThread::run() -{ - Q_D(QThread); - - m_mutex.lock(); - - while (!m_quit) { - fd_set readfds; - fd_set writefds; - fd_set exceptionfds; - - FD_ZERO(&readfds); - FD_ZERO(&writefds); - FD_ZERO(&exceptionfds); - - int maxfd = 0; - maxfd = qMax(maxfd, updateSocketSet(QSocketNotifier::Read, &readfds)); - maxfd = qMax(maxfd, updateSocketSet(QSocketNotifier::Write, &writefds)); - maxfd = qMax(maxfd, updateSocketSet(QSocketNotifier::Exception, &exceptionfds)); - maxfd = qMax(maxfd, m_pipeEnds[0]); - maxfd++; - - FD_SET(m_pipeEnds[0], &readfds); - - int ret; - int savedSelectErrno; - ret = qt_socket_select(maxfd, &readfds, &writefds, &exceptionfds, 0); - savedSelectErrno = errno; - - if(ret == 0) { - // do nothing - } else if (ret < 0) { - switch (savedSelectErrno) { - case EBADF: - case EINVAL: - case ENOMEM: - case EFAULT: - qWarning("::select() returned an error: %i", savedSelectErrno); - break; - case ECONNREFUSED: - case EPIPE: - qWarning("::select() returned an error: %i (go through sockets)", savedSelectErrno); - // prepare to go through all sockets - // mark in fd sets both: - // good ones - // ones that return -1 in select - // after loop update notifiers for all of them - - // as we don't have "exception" notifier type - // we should force monitoring fd_set of this - // type as well - - // clean @ start - FD_ZERO(&readfds); - FD_ZERO(&writefds); - FD_ZERO(&exceptionfds); - for (QHash::const_iterator i = m_AOStatuses.begin(); - i != m_AOStatuses.end(); ++i) { - - fd_set onefds; - FD_ZERO(&onefds); - FD_SET(i.key()->socket(), &onefds); - - fd_set excfds; - FD_ZERO(&excfds); - FD_SET(i.key()->socket(), &excfds); - - maxfd = i.key()->socket() + 1; - - struct timeval timeout; - timeout.tv_sec = 0; - timeout.tv_usec = 0; - - ret = 0; - - if(i.key()->type() == QSocketNotifier::Read) { - ret = ::select(maxfd, &onefds, 0, &excfds, &timeout); - if(ret != 0) FD_SET(i.key()->socket(), &readfds); - } else if(i.key()->type() == QSocketNotifier::Write) { - ret = ::select(maxfd, 0, &onefds, &excfds, &timeout); - if(ret != 0) FD_SET(i.key()->socket(), &writefds); - } - - } // end for - - // traversed all, so update - updateActivatedNotifiers(QSocketNotifier::Exception, &exceptionfds); - updateActivatedNotifiers(QSocketNotifier::Read, &readfds); - updateActivatedNotifiers(QSocketNotifier::Write, &writefds); - - break; - case EINTR: // Should never occur on Symbian, but this is future proof! - default: - qWarning("::select() returned an unknown error: %i", savedSelectErrno); - - break; - } - } else { - updateActivatedNotifiers(QSocketNotifier::Exception, &exceptionfds); - updateActivatedNotifiers(QSocketNotifier::Read, &readfds); - updateActivatedNotifiers(QSocketNotifier::Write, &writefds); - } - - if (FD_ISSET(m_pipeEnds[0], &readfds)) - m_waitCond.wait(&m_mutex); - } - - m_mutex.unlock(); -} - -void QSelectThread::requestSocketEvents ( QSocketNotifier *notifier, TRequestStatus *status ) -{ - Q_D(QThread); - - if (!isRunning()) { - start(); - } - - Q_ASSERT(QThread::currentThread() == this->thread()); - - QSelectMutexGrabber lock(m_pipeEnds[1], m_pipeEnds[0], &m_mutex); - - Q_ASSERT(!m_AOStatuses.contains(notifier)); - - m_AOStatuses.insert(notifier, status); - - m_waitCond.wakeAll(); -} - -void QSelectThread::cancelSocketEvents ( QSocketNotifier *notifier ) -{ - Q_ASSERT(QThread::currentThread() == this->thread()); - - QSelectMutexGrabber lock(m_pipeEnds[1], m_pipeEnds[0], &m_mutex); - - m_AOStatuses.remove(notifier); - - m_waitCond.wakeAll(); -} - -void QSelectThread::restart() -{ - Q_ASSERT(QThread::currentThread() == this->thread()); - - QSelectMutexGrabber lock(m_pipeEnds[1], m_pipeEnds[0], &m_mutex); - - m_waitCond.wakeAll(); -} - -int QSelectThread::updateSocketSet(QSocketNotifier::Type type, fd_set *fds) -{ - int maxfd = 0; - if(m_AOStatuses.isEmpty()) { - /* - * Wonder if should return -1 - * to signal that no descriptors - * added to fds - */ - return maxfd; - } - for ( QHash::const_iterator i = m_AOStatuses.begin(); - i != m_AOStatuses.end(); ++i) { - if (i.key()->type() == type) { - FD_SET(i.key()->socket(), fds); - maxfd = qMax(maxfd, i.key()->socket()); - } else if(type == QSocketNotifier::Exception) { - /* - * We are registering existing sockets - * always to exception set - * - * Doing double FD_SET shouldn't - * matter - */ - FD_SET(i.key()->socket(), fds); - maxfd = qMax(maxfd, i.key()->socket()); - } - } - - return maxfd; -} - -void QSelectThread::updateActivatedNotifiers(QSocketNotifier::Type type, fd_set *fds) -{ - Q_D(QThread); - if(m_AOStatuses.isEmpty()) { - return; - } - QList toRemove; - for (QHash::const_iterator i = m_AOStatuses.begin(); - i != m_AOStatuses.end(); ++i) { - if (i.key()->type() == type && FD_ISSET(i.key()->socket(), fds)) { - toRemove.append(i.key()); - TRequestStatus *status = i.value(); - // Thread data is still owned by the main thread. - QEventDispatcherSymbian::RequestComplete(d->threadData->symbian_thread_handle, status, KErrNone); - } else if(type == QSocketNotifier::Exception && FD_ISSET(i.key()->socket(), fds)) { - /* - * check if socket is in exception set - * then signal RequestComplete for it - */ - qWarning("exception on %d [will close the socket handle - hack]", i.key()->socket()); - // quick fix; there is a bug - // when doing read on socket - // errors not preoperly mapped - // after offline-ing the device - // on some devices we do get exception - ::close(i.key()->socket()); - toRemove.append(i.key()); - TRequestStatus *status = i.value(); - QEventDispatcherSymbian::RequestComplete(d->threadData->symbian_thread_handle, status, KErrNone); - } - } - - for (int c = 0; c < toRemove.size(); ++c) { - m_AOStatuses.remove(toRemove[c]); - } -} - -void QSelectThread::stop() -{ - m_quit = true; - restart(); - wait(); -} - -QSocketActiveObject::QSocketActiveObject(QEventDispatcherSymbian *dispatcher, QSocketNotifier *notifier) - : QActiveObject(CActive::EPriorityStandard, dispatcher), - m_notifier(notifier), - m_inSocketEvent(false), - m_deleteLater(false) -{ - CActiveScheduler::Add(this); - iStatus = KRequestPending; - SetActive(); -} - -QSocketActiveObject::~QSocketActiveObject() -{ - Cancel(); -} - -void QSocketActiveObject::DoCancel() -{ - if (iStatus.Int() == KRequestPending) { - TRequestStatus *status = &iStatus; - QEventDispatcherSymbian::RequestComplete(status, KErrNone); - } -} - -void QSocketActiveObject::RunL() -{ - if (maybeDeferSocketEvent()) - return; - if (maybeQueueForLater()) - return; - - QT_TRYCATCH_LEAVING(run()); -} - -void QSocketActiveObject::run() -{ - QEvent e(QEvent::SockAct); - m_inSocketEvent = true; - QCoreApplication::sendEvent(m_notifier, &e); - m_inSocketEvent = false; - - if (m_deleteLater) { - delete this; - } else { - iStatus = KRequestPending; - SetActive(); - m_dispatcher->reactivateSocketNotifier(m_notifier); - } -} - -void QSocketActiveObject::deleteLater() -{ - if (m_inSocketEvent) { - m_deleteLater = true; - } else { - delete this; - } -} - -#ifdef QT_SYMBIAN_PRIORITY_DROP -class QIdleDetectorThread -{ -public: - QIdleDetectorThread() - : m_state(STATE_RUN), m_stop(false), m_running(false) - { - start(); - } - - ~QIdleDetectorThread() - { - stop(); - } - - void start() - { - QMutexLocker lock(&m_mutex); - if (m_running) - return; - m_stop = false; - m_state = STATE_RUN; - TInt err = m_idleDetectorThread.Create(KNullDesC(), &idleDetectorThreadFunc, 1024, &User::Allocator(), this); - if (err != KErrNone) - return; // Fail silently on error. Next kick will try again. Exception might stop the event being processed - m_idleDetectorThread.SetPriority(EPriorityAbsoluteBackgroundNormal); - m_idleDetectorThread.Resume(); - m_running = true; - // get a callback from QCoreApplication destruction to stop this thread - qAddPostRoutine(StopIdleDetectorThread); - } - - void stop() - { - QMutexLocker lock(&m_mutex); - if (!m_running) - return; - // close down the idle thread because if corelib is loaded temporarily, this would leak threads into the host process - m_stop = true; - m_kick.release(); - m_idleDetectorThread.SetPriority(EPriorityNormal); - TRequestStatus s; - m_idleDetectorThread.Logon(s); - User::WaitForRequest(s); - m_idleDetectorThread.Close(); - m_running = false; - } - - void kick() - { - start(); - m_state = STATE_KICKED; - m_kick.release(); - } - - bool hasRun() - { - return m_state == STATE_RUN; - } - -private: - static TInt idleDetectorThreadFunc(TAny* self) - { - User::RenameThread(_L("IdleDetectorThread")); - static_cast(self)->IdleLoop(); - return KErrNone; - } - - void IdleLoop() - { - while (!m_stop) { - m_kick.acquire(); - m_state = STATE_RUN; - } - } - - static void StopIdleDetectorThread(); - -private: - enum IdleStates {STATE_KICKED, STATE_RUN} m_state; - bool m_stop; - bool m_running; - RThread m_idleDetectorThread; - QSemaphore m_kick; - QMutex m_mutex; -}; - -Q_GLOBAL_STATIC(QIdleDetectorThread, idleDetectorThread); - -void QIdleDetectorThread::StopIdleDetectorThread() -{ - idleDetectorThread()->stop(); -} - -const int maxBusyTime = 2000; // maximum time we allow idle detector to be blocked before worrying, in milliseconds -const int baseDelay = 1000; // minimum delay time used when backing off to allow idling, in microseconds -#endif - -QEventDispatcherSymbian::QEventDispatcherSymbian(QObject *parent) - : QAbstractEventDispatcher(parent), - m_selectThread(0), - m_activeScheduler(0), - m_wakeUpAO(0), - m_completeDeferredAOs(0), - m_interrupt(false), - m_wakeUpDone(0), - m_iterationCount(0), - m_insideTimerEvent(false), - m_noSocketEvents(false) -{ -#ifdef QT_SYMBIAN_PRIORITY_DROP - m_delay = baseDelay; - m_avgEventTime = 0; - idleDetectorThread(); -#endif -} - -QEventDispatcherSymbian::~QEventDispatcherSymbian() -{ -} - -void QEventDispatcherSymbian::startingUp() -{ - if( !CActiveScheduler::Current() ) { - m_activeScheduler = q_check_ptr(new CQtActiveScheduler()); // CBase derived class needs to be checked on new - CActiveScheduler::Install(m_activeScheduler); - } - m_wakeUpAO = q_check_ptr(new QWakeUpActiveObject(this)); - m_completeDeferredAOs = q_check_ptr(new QCompleteDeferredAOs(this)); - // We already might have posted events, wakeup once to process them - wakeUp(); -} - -QSelectThread& QEventDispatcherSymbian::selectThread() { - if (!m_selectThread) - m_selectThread = new QSelectThread; - return *m_selectThread; -} - -void QEventDispatcherSymbian::closingDown() -{ - if (m_selectThread && m_selectThread->isRunning()) { - m_selectThread->stop(); - } - delete m_selectThread; - m_selectThread = 0; - - delete m_completeDeferredAOs; - delete m_wakeUpAO; - if (m_activeScheduler) { - delete m_activeScheduler; - } -} - -bool QEventDispatcherSymbian::processEvents ( QEventLoop::ProcessEventsFlags flags ) -{ - bool handledAnyEvent = false; - bool oldNoSocketEventsValue = m_noSocketEvents; - bool oldInsideTimerEventValue = m_insideTimerEvent; - - m_insideTimerEvent = false; - - QT_TRY { - Q_D(QAbstractEventDispatcher); - - // It is safe if this counter overflows. The main importance is that each - // iteration count is different from the last. - m_iterationCount++; - - RThread &thread = d->threadData->symbian_thread_handle; - - bool block; - if (flags & QEventLoop::WaitForMoreEvents) { - block = true; - emit aboutToBlock(); - } else { - block = false; - } - - if (flags & QEventLoop::ExcludeSocketNotifiers) { - m_noSocketEvents = true; - } else { - m_noSocketEvents = false; - handledAnyEvent = sendDeferredSocketEvents(); - } - - bool handledSymbianEvent = false; - m_interrupt = false; - -#ifdef QT_SYMBIAN_PRIORITY_DROP - QElapsedTimer eventTimer; -#endif - - while (1) { - if (block) { - // This is where Qt will spend most of its time. - CActiveScheduler::Current()->WaitForAnyRequest(); - } else { - if (thread.RequestCount() == 0) { -#ifdef QT_SYMBIAN_PRIORITY_DROP - if (idleDetectorThread()->hasRun()) { - m_lastIdleRequestTimer.start(); - idleDetectorThread()->kick(); - } else if (m_lastIdleRequestTimer.elapsed() > maxBusyTime) { - User::AfterHighRes(m_delay); - } -#endif - break; - } - // This one should return without delay. - CActiveScheduler::Current()->WaitForAnyRequest(); - } - -#ifdef QT_SYMBIAN_PRIORITY_DROP - if (idleDetectorThread()->hasRun()) { - if (m_delay > baseDelay) - m_delay -= baseDelay; - m_lastIdleRequestTimer.start(); - idleDetectorThread()->kick(); - } else if (m_lastIdleRequestTimer.elapsed() > maxBusyTime) { - User::AfterHighRes(m_delay); - // allow delay to be up to 1/4 of execution time - if (!idleDetectorThread()->hasRun() && m_delay*3 < m_avgEventTime) - m_delay += baseDelay; - } - eventTimer.start(); -#endif - - TInt error; - handledSymbianEvent = CActiveScheduler::RunIfReady(error, KMinTInt); - if (error) { - qWarning("CActiveScheduler::RunIfReady() returned error: %i\n", error); - CActiveScheduler::Current()->Error(error); - } - -#ifdef QT_SYMBIAN_PRIORITY_DROP - int eventDur = eventTimer.elapsed()*1000; - // average is calcualted as a 5% decaying exponential average - m_avgEventTime = (m_avgEventTime * 95 + eventDur * 5) / 100; -#endif - - if (!handledSymbianEvent) { - qFatal("QEventDispatcherSymbian::processEvents(): Caught Symbian stray signal"); - } - handledAnyEvent = true; - if (m_interrupt) { - break; - } - block = false; - }; - - emit awake(); - } QT_CATCH (const std::exception& ex) { -#ifndef QT_NO_EXCEPTIONS - CActiveScheduler::Current()->Error(qt_symbian_exception2Error(ex)); -#endif - } - - m_noSocketEvents = oldNoSocketEventsValue; - m_insideTimerEvent = oldInsideTimerEventValue; - - return handledAnyEvent; -} - -void QEventDispatcherSymbian::timerFired(int timerId) -{ - QHash::iterator i = m_timerList.find(timerId); - if (i == m_timerList.end()) { - // The timer has been deleted. Ignore this event. - return; - } - - SymbianTimerInfoPtr timerInfo = *i; - - // Prevent infinite timer recursion. - if (timerInfo->inTimerEvent) { - return; - } - - timerInfo->inTimerEvent = true; - bool oldInsideTimerEventValue = m_insideTimerEvent; - m_insideTimerEvent = true; - - QTimerEvent event(timerInfo->timerId); - QCoreApplication::sendEvent(timerInfo->receiver, &event); - - m_insideTimerEvent = oldInsideTimerEventValue; - timerInfo->inTimerEvent = false; - - return; -} - -void QEventDispatcherSymbian::wakeUpWasCalled() -{ - // The reactivation should happen in RunL, right before the call to this function. - // This is because m_wakeUpDone is the "signal" that the object can be completed - // once more. - // Also, by dispatching the posted events after resetting m_wakeUpDone, we guarantee - // that no posted event notification will be lost. If we did it the other way - // around, it would be possible for another thread to post an event right after - // the sendPostedEvents was done, but before the object was ready to be completed - // again. This could deadlock the application if there are no other posted events. - m_wakeUpDone.fetchAndStoreOrdered(0); - sendPostedEvents(); -} - -void QEventDispatcherSymbian::interrupt() -{ - m_interrupt = true; - wakeUp(); -} - -void QEventDispatcherSymbian::wakeUp() -{ - Q_D(QAbstractEventDispatcher); - - if (m_wakeUpAO && m_wakeUpDone.testAndSetAcquire(0, 1)) { - TRequestStatus *status = &m_wakeUpAO->iStatus; - QEventDispatcherSymbian::RequestComplete(d->threadData->symbian_thread_handle, status, KErrNone); - } -} - -bool QEventDispatcherSymbian::sendPostedEvents() -{ - Q_D(QAbstractEventDispatcher); - - // moveToThread calls this and canWait == true -> Events will never get processed - // if we check for d->threadData->canWait - // - // QCoreApplication::postEvent sets canWait = false, but after the object and events - // are moved to a new thread, the canWait in new thread is true i.e. not changed to reflect - // the flag on old thread. That's why events in a new thread will not get processed. - // This migth be actually bug in moveToThread functionality, but because other platforms - // do not check canWait in wakeUp (where we essentially are now) - decided to remove it from - // here as well. - - //if (!d->threadData->canWait) { - QCoreApplicationPrivate::sendPostedEvents(0, 0, d->threadData); - return true; - //} - //return false; -} - -inline void QEventDispatcherSymbian::addDeferredActiveObject(QActiveObject *object) -{ - queueDeferredActiveObjectsCompletion(); - m_deferredActiveObjects.append(object); -} - -inline void QEventDispatcherSymbian::removeDeferredActiveObject(QActiveObject *object) -{ - m_deferredActiveObjects.removeAll(object); - m_deferredSocketEvents.removeAll(object); -} - -inline void QEventDispatcherSymbian::addDeferredSocketActiveObject(QActiveObject *object) -{ - m_deferredSocketEvents.append(object); -} - -void QEventDispatcherSymbian::queueDeferredActiveObjectsCompletion() -{ - m_completeDeferredAOs->complete(); -} - -void QEventDispatcherSymbian::reactivateDeferredActiveObjects() -{ - while (!m_deferredActiveObjects.isEmpty()) { - QActiveObject *object = m_deferredActiveObjects.takeFirst(); - object->reactivateAndComplete(); - } - - // We do this because we want to return from processEvents. This is because - // each invocation of processEvents should only run each active object once. - // The active scheduler should run them continously, however. - m_interrupt = true; -} - -bool QEventDispatcherSymbian::sendDeferredSocketEvents() -{ - bool sentAnyEvents = false; - while (!m_deferredSocketEvents.isEmpty()) { - sentAnyEvents = true; - QActiveObject *object = m_deferredSocketEvents.takeFirst(); - object->reactivateAndComplete(); - } - - return sentAnyEvents; -} - -void QEventDispatcherSymbian::flush() -{ -} - -bool QEventDispatcherSymbian::hasPendingEvents() -{ - Q_D(QAbstractEventDispatcher); - return (d->threadData->symbian_thread_handle.RequestCount() != 0 - || !d->threadData->canWait || !m_deferredSocketEvents.isEmpty()); -} - -void QEventDispatcherSymbian::registerSocketNotifier ( QSocketNotifier * notifier ) -{ - //check socket descriptor is usable - if (notifier->socket() >= FD_SETSIZE || notifier->socket() < 0) { - //same warning message as the unix event dispatcher for easy testing - qWarning("QSocketNotifier: Internal error"); - return; - } - //note - this is only for "open C" file descriptors - //for native sockets, an active object in the symbian socket engine handles this - QSocketActiveObject *socketAO = new QSocketActiveObject(this, notifier); - Q_CHECK_PTR(socketAO); - m_notifiers.insert(notifier, socketAO); - selectThread().requestSocketEvents(notifier, &socketAO->iStatus); -} - -void QEventDispatcherSymbian::unregisterSocketNotifier ( QSocketNotifier * notifier ) -{ - //note - this is only for "open C" file descriptors - //for native sockets, an active object in the symbian socket engine handles this - if (m_selectThread) - m_selectThread->cancelSocketEvents(notifier); - if (m_notifiers.contains(notifier)) { - QSocketActiveObject *sockObj = *m_notifiers.find(notifier); - m_deferredSocketEvents.removeAll(sockObj); - sockObj->deleteLater(); - m_notifiers.remove(notifier); - } -} - -void QEventDispatcherSymbian::reactivateSocketNotifier(QSocketNotifier *notifier) -{ - selectThread().requestSocketEvents(notifier, &m_notifiers[notifier]->iStatus); -} - -void QEventDispatcherSymbian::registerTimer ( int timerId, int interval, QObject * object ) -{ - if (interval < 0) { - qWarning("Timer interval < 0"); - interval = 0; - } - - SymbianTimerInfoPtr timer(new SymbianTimerInfo); - timer->timerId = timerId; - timer->interval = interval; - timer->inTimerEvent = false; - timer->receiver = object; - timer->dispatcher = this; - timer->timerAO = q_check_ptr(new QTimerActiveObject(this, timer.data())); - m_timerList.insert(timerId, timer); - - timer->timerAO->Start(); - - if (m_insideTimerEvent) - // If we are inside a timer event, we need to prevent event starvation - // by preventing newly created timers from running in the same event processing - // iteration. Do this by calling the maybeQueueForLater() function to "fake" that we have - // already run once. This will cause the next run to be added to the deferred - // queue instead. - timer->timerAO->maybeQueueForLater(); -} - -bool QEventDispatcherSymbian::unregisterTimer ( int timerId ) -{ - if (!m_timerList.contains(timerId)) { - return false; - } - - SymbianTimerInfoPtr timerInfo = m_timerList.take(timerId); - - if (!QObjectPrivate::get(timerInfo->receiver)->inThreadChangeEvent) - QAbstractEventDispatcherPrivate::releaseTimerId(timerId); - - return true; -} - -bool QEventDispatcherSymbian::unregisterTimers ( QObject * object ) -{ - if (m_timerList.isEmpty()) - return false; - - bool unregistered = false; - for (QHash::iterator i = m_timerList.begin(); i != m_timerList.end(); ) { - if ((*i)->receiver == object) { - i = m_timerList.erase(i); - unregistered = true; - } else { - ++i; - } - } - - return unregistered; -} - -QList QEventDispatcherSymbian::registeredTimers ( QObject * object ) const -{ - QList list; - for (QHash::const_iterator i = m_timerList.begin(); i != m_timerList.end(); ++i) { - if ((*i)->receiver == object) { - list.push_back(TimerInfo((*i)->timerId, (*i)->interval)); - } - } - - return list; -} - -/* - * This active scheduler class implements a simple report and continue policy, for Symbian OS leaves - * or exceptions from Qt that fall back to the scheduler. - * It will be used in cases where there is no existing active scheduler installed. - * Apps which link to qts60main.lib will have the UI active scheduler installed in the main thread - * instead of this one. But this would be used in other threads in the UI. - * An app could replace this behaviour by installing an alternative active scheduler. - */ -void CQtActiveScheduler::Error(TInt aError) const -{ - QT_TRY { - qWarning("Error from active scheduler %d", aError); - } - QT_CATCH (const std::bad_alloc&) {} // ignore alloc fails, nothing more can be done -} - -bool QActiveObject::wait(CActive* ao, int ms) -{ - if (!ao->IsActive()) - return true; //request already complete - bool timedout = false; - if (ms > 0) { - TRequestStatus tstat; - RTimer t; - if (KErrNone != t.CreateLocal()) - return false; - t.HighRes(tstat, ms*1000); - User::WaitForRequest(tstat, ao->iStatus); - if (tstat != KRequestPending) { - timedout = true; - } else { - t.Cancel(); - //balance thread semaphore - User::WaitForRequest(tstat); - } - t.Close(); - } else { - User::WaitForRequest(ao->iStatus); - } - if (timedout) - return false; - - //evil cast to allow calling of protected virtual - ((QActiveObject*)ao)->RunL(); - - //clear active & pending flags - ao->iStatus = TRequestStatus(); - - return true; -} - -bool QActiveObject::wait(QList aos, int ms) -{ - QVector stati; - stati.reserve(aos.count() + 1); - foreach (CActive* ao, aos) { - if (!ao->IsActive()) - return true; //request already complete - stati.append(&(ao->iStatus)); - } - bool timedout = false; - TRequestStatus tstat; - RTimer t; - if (ms > 0) { - if (KErrNone != t.CreateLocal()) - return false; - t.HighRes(tstat, ms*1000); - stati.append(&tstat); - } - User::WaitForNRequest(stati.data(), stati.count()); - if (ms > 0) { - if (tstat != KRequestPending) { - timedout = true; - } else { - t.Cancel(); - //balance thread semaphore - User::WaitForRequest(tstat); - } - t.Close(); - } - if (timedout) - return false; - - foreach (CActive* ao, aos) { - if (ao->iStatus != KRequestPending) { - //evil cast to allow calling of protected virtual - ((QActiveObject*)ao)->RunL(); - - //clear active & pending flags - ao->iStatus = TRequestStatus(); - break; //only call one - } - } - return true; -} - -QT_END_NAMESPACE - -#include "moc_qeventdispatcher_symbian_p.cpp" diff --git a/src/corelib/kernel/qeventdispatcher_symbian_p.h b/src/corelib/kernel/qeventdispatcher_symbian_p.h deleted file mode 100644 index e327a9cdc5..0000000000 --- a/src/corelib/kernel/qeventdispatcher_symbian_p.h +++ /dev/null @@ -1,327 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtCore module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef QEVENTDISPATCHER_SYMBIAN_P_H -#define QEVENTDISPATCHER_SYMBIAN_P_H - -// -// W A R N I N G -// ------------- -// -// This file is not part of the Qt API. It exists purely as an -// implementation detail. This header file may change from version to -// version without notice, or even be removed. -// -// We mean it. -// - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include - -#include -#include -#include - -QT_BEGIN_NAMESPACE - - -class QEventDispatcherSymbian; -class QTimerActiveObject; - -class Q_CORE_EXPORT QActiveObject : public CActive -{ -public: - QActiveObject(TInt priority, QEventDispatcherSymbian *dispatcher); - ~QActiveObject(); - - bool maybeQueueForLater(); - bool maybeDeferSocketEvent(); - - void reactivateAndComplete(); - - static bool wait(CActive* ao, int ms); - static bool wait(QList aos, int ms); -protected: - QEventDispatcherSymbian *m_dispatcher; - -private: - bool m_hasAlreadyRun : 1; - bool m_hasRunAgain : 1; - int m_iterationCount; -}; - -class QWakeUpActiveObject : public QActiveObject -{ -public: - QWakeUpActiveObject(QEventDispatcherSymbian *dispatcher); - ~QWakeUpActiveObject(); - - void Complete(); - -protected: - void DoCancel(); - void RunL(); - -private: - TThreadId m_hostThreadId; -}; - -struct SymbianTimerInfo : public QSharedData -{ - SymbianTimerInfo(); - ~SymbianTimerInfo(); - - int timerId; - int interval; - int msLeft; - bool inTimerEvent; - QObject *receiver; - QTimerActiveObject *timerAO; - QEventDispatcherSymbian *dispatcher; -}; - -typedef QExplicitlySharedDataPointer SymbianTimerInfoPtr; - -// This is a bit of a proxy class. See comments in SetActive and Start for details. -class QTimerActiveObject : public QActiveObject -{ -public: - QTimerActiveObject(QEventDispatcherSymbian *dispatcher, SymbianTimerInfo *timerInfo); - ~QTimerActiveObject(); - - void Start(); - -protected: - void DoCancel(); - void RunL(); - -private: - void Run(); - void StartTimer(); - -private: - SymbianTimerInfo *m_timerInfo; - QElapsedTimer m_timeoutTimer; - int m_expectedTimeSinceLastEvent; - RTimer m_rTimer; -}; - -class QCompleteDeferredAOs : public CActive -{ -public: - QCompleteDeferredAOs(QEventDispatcherSymbian *dispatcher); - ~QCompleteDeferredAOs(); - - void complete(); - -protected: - void DoCancel(); - void RunL(); - -private: - QEventDispatcherSymbian *m_dispatcher; -}; - -class QSocketActiveObject : public QActiveObject -{ -public: - QSocketActiveObject(QEventDispatcherSymbian *dispatcher, QSocketNotifier *notifier); - ~QSocketActiveObject(); - - void deleteLater(); - -protected: - void DoCancel(); - void RunL(); - void run(); - -private: - QSocketNotifier *m_notifier; - bool m_inSocketEvent; - bool m_deleteLater; - - friend class QEventDispatcherSymbian; -}; - -class QSelectThread : public QThread -{ - Q_DECLARE_PRIVATE(QThread) - -public: - QSelectThread(); - ~QSelectThread(); - - void requestSocketEvents ( QSocketNotifier *notifier, TRequestStatus *status ); - void cancelSocketEvents ( QSocketNotifier *notifier ); - void restart(); - void stop(); - -protected: - void run(); - -private: - int updateSocketSet(QSocketNotifier::Type type, fd_set *fds); - void updateActivatedNotifiers(QSocketNotifier::Type type, fd_set *fds); - -private: - int m_pipeEnds[2]; - QHash m_AOStatuses; - QMutex m_mutex; - QWaitCondition m_waitCond; - bool m_quit; -}; - -class Q_CORE_EXPORT CQtActiveScheduler : public CActiveScheduler -{ -public: // from CActiveScheduler - virtual void Error(TInt aError) const; -}; - -class Q_CORE_EXPORT QEventDispatcherSymbian : public QAbstractEventDispatcher -{ - Q_OBJECT - Q_DECLARE_PRIVATE(QAbstractEventDispatcher) - -public: - QEventDispatcherSymbian(QObject *parent = 0); - ~QEventDispatcherSymbian(); - - void flush(); - bool hasPendingEvents(); - void interrupt(); - bool processEvents ( QEventLoop::ProcessEventsFlags flags ); - void registerSocketNotifier ( QSocketNotifier * notifier ); - void registerTimer ( int timerId, int interval, QObject * object ); - QList registeredTimers ( QObject * object ) const; - void unregisterSocketNotifier ( QSocketNotifier * notifier ); - bool unregisterTimer ( int timerId ); - bool unregisterTimers ( QObject * object ); - void wakeUp(); - - void startingUp(); - void closingDown(); - - void timerFired(int timerId); - void wakeUpWasCalled(); - void reactivateSocketNotifier(QSocketNotifier *notifier); - - void addDeferredActiveObject(QActiveObject *object); - void removeDeferredActiveObject(QActiveObject *object); - void queueDeferredActiveObjectsCompletion(); - // Can be overridden to activate local active objects too, but do call baseclass! - virtual void reactivateDeferredActiveObjects(); - - inline int iterationCount() const { return m_iterationCount; } - - void addDeferredSocketActiveObject(QActiveObject *object); - inline bool areSocketEventsBlocked() const { return m_noSocketEvents; } - - static void RequestComplete(TRequestStatus *&status, TInt reason); - static void RequestComplete(RThread &threadHandle, TRequestStatus *&status, TInt reason); - -private: - bool sendPostedEvents(); - bool sendDeferredSocketEvents(); - - QSelectThread& selectThread(); -private: - QSelectThread *m_selectThread; - - CQtActiveScheduler *m_activeScheduler; - - QHash m_timerList; - QHash m_notifiers; - - QWakeUpActiveObject *m_wakeUpAO; - QCompleteDeferredAOs *m_completeDeferredAOs; - - volatile bool m_interrupt; - QAtomicInt m_wakeUpDone; - - unsigned char m_iterationCount; - bool m_insideTimerEvent; - bool m_noSocketEvents; - //deferred until socket events are enabled - QList m_deferredSocketEvents; - //deferred until idle - QList m_deferredActiveObjects; - - int m_delay; - int m_avgEventTime; - QElapsedTimer m_lastIdleRequestTimer; -}; - -#ifdef QT_DEBUG -# define VERIFY_PENDING_REQUEST_STATUS \ - Q_ASSERT(status->Int() == KRequestPending); -#else -# define VERIFY_PENDING_REQUEST_STATUS -#endif - -// Convenience functions for doing some sanity checking on our own complete code. -// Unless QT_DEBUG is defined, it is exactly equivalent to the Symbian version. -inline void QEventDispatcherSymbian::RequestComplete(TRequestStatus *&status, TInt reason) -{ - VERIFY_PENDING_REQUEST_STATUS - User::RequestComplete(status, reason); -} -inline void QEventDispatcherSymbian::RequestComplete(RThread &threadHandle, TRequestStatus *&status, TInt reason) -{ - VERIFY_PENDING_REQUEST_STATUS - threadHandle.RequestComplete(status, reason); -} - -#undef VERIFY_PENDING_REQUEST_STATUS - -QT_END_NAMESPACE - -#endif // QEVENTDISPATCHER_SYMBIAN_P_H diff --git a/src/corelib/kernel/qsharedmemory_symbian.cpp b/src/corelib/kernel/qsharedmemory_symbian.cpp deleted file mode 100644 index fdd513a475..0000000000 --- a/src/corelib/kernel/qsharedmemory_symbian.cpp +++ /dev/null @@ -1,173 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtCore module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "qsharedmemory.h" -#include "qsharedmemory_p.h" -#include "qsystemsemaphore.h" -#include "qcore_symbian_p.h" -#include - -QT_BEGIN_NAMESPACE - -#ifndef QT_NO_SHAREDMEMORY - -#define QSHAREDMEMORY_DEBUG - -QSharedMemoryPrivate::QSharedMemoryPrivate() : QObjectPrivate(), - memory(0), size(0), error(QSharedMemory::NoError), - systemSemaphore(QString()), lockedByMe(false) -{ -} - -void QSharedMemoryPrivate::setErrorString(const QString &function, TInt errorCode) -{ - if (errorCode == KErrNone) - return; - switch (errorCode) { - case KErrAlreadyExists: - error = QSharedMemory::AlreadyExists; - errorString = QSharedMemory::tr("%1: already exists").arg(function); - break; - case KErrNotFound: - error = QSharedMemory::NotFound; - errorString = QSharedMemory::tr("%1: doesn't exists").arg(function); - break; - case KErrArgument: - error = QSharedMemory::InvalidSize; - errorString = QSharedMemory::tr("%1: invalid size").arg(function); - break; - case KErrNoMemory: - error = QSharedMemory::OutOfResources; - errorString = QSharedMemory::tr("%1: out of resources").arg(function); - break; - case KErrPermissionDenied: - error = QSharedMemory::PermissionDenied; - errorString = QSharedMemory::tr("%1: permission denied").arg(function); - break; - default: - errorString = QSharedMemory::tr("%1: unknown error %2").arg(function).arg(errorCode); - error = QSharedMemory::UnknownError; -#if defined QSHAREDMEMORY_DEBUG - qDebug() << errorString << "key" << key; -#endif - } -} - -key_t QSharedMemoryPrivate::handle() -{ - // Not really cost effective to check here if shared memory is attachable, as it requires - // exactly the same call as attaching, so always assume handle is valid and return failure - // from attach. - return 1; -} - -bool QSharedMemoryPrivate::cleanHandle() -{ - chunk.Close(); - return true; -} - -bool QSharedMemoryPrivate::create(int size) -{ - QString function = QLatin1String("QSharedMemory::create"); - if (nativeKey.isEmpty()) { - error = QSharedMemory::KeyError; - errorString = QSharedMemory::tr("%1: key error").arg(function); - return false; - } - - TPtrC ptr(qt_QString2TPtrC(nativeKey)); - - TInt err = chunk.CreateGlobal(ptr, size, size); - - setErrorString(function, err); - - if (err != KErrNone) - return false; - - // Zero out the created chunk - Mem::FillZ(chunk.Base(), chunk.Size()); - - return true; -} - -bool QSharedMemoryPrivate::attach(QSharedMemory::AccessMode /* mode */) -{ - // Grab a pointer to the memory block - if (!chunk.Handle()) { - QString function = QLatin1String("QSharedMemory::handle"); - if (nativeKey.isEmpty()) { - error = QSharedMemory::KeyError; - errorString = QSharedMemory::tr("%1: unable to make key").arg(function); - return false; - } - - TPtrC ptr(qt_QString2TPtrC(nativeKey)); - - TInt err = KErrNoMemory; - - err = chunk.OpenGlobal(ptr, false); - - if (err != KErrNone) { - setErrorString(function, err); - return false; - } - } - - size = chunk.Size(); - memory = chunk.Base(); - - return true; -} - -bool QSharedMemoryPrivate::detach() -{ - chunk.Close(); - - memory = 0; - size = 0; - - return true; -} - -#endif //QT_NO_SHAREDMEMORY - -QT_END_NAMESPACE diff --git a/src/corelib/kernel/qsystemsemaphore_symbian.cpp b/src/corelib/kernel/qsystemsemaphore_symbian.cpp deleted file mode 100644 index 96c19afcfc..0000000000 --- a/src/corelib/kernel/qsystemsemaphore_symbian.cpp +++ /dev/null @@ -1,138 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtCore module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "qsystemsemaphore.h" -#include "qsystemsemaphore_p.h" -#include "qcoreapplication.h" -#include - -#include "qcore_symbian_p.h" -#include -QT_BEGIN_NAMESPACE - -#ifndef QT_NO_SYSTEMSEMAPHORE - -QSystemSemaphorePrivate::QSystemSemaphorePrivate() : - error(QSystemSemaphore::NoError) -{ -} - -void QSystemSemaphorePrivate::setErrorString(const QString &function, int err) -{ - if (err == KErrNone){ - return; - } - switch(err){ - case KErrAlreadyExists: - errorString = QCoreApplication::tr("%1: already exists", "QSystemSemaphore").arg(function); - error = QSystemSemaphore::AlreadyExists; - break; - case KErrNotFound: - errorString = QCoreApplication::tr("%1: does not exist", "QSystemSemaphore").arg(function); - error = QSystemSemaphore::NotFound; - break; - case KErrNoMemory: - case KErrInUse: - errorString = QCoreApplication::tr("%1: out of resources", "QSystemSemaphore").arg(function); - error = QSystemSemaphore::OutOfResources; - break; - case KErrPermissionDenied: - errorString = QCoreApplication::tr("%1: permission denied", "QSystemSemaphore").arg(function); - error = QSystemSemaphore::PermissionDenied; - break; -default: - errorString = QCoreApplication::tr("%1: unknown error %2", "QSystemSemaphore").arg(function).arg(err); - error = QSystemSemaphore::UnknownError; - } - -#if defined QSYSTEMSEMAPHORE_DEBUG - qDebug() << errorString << "key" << key; -#endif -} - -int QSystemSemaphorePrivate::handle(QSystemSemaphore::AccessMode) -{ - if (semaphore.Handle()) { - return semaphore.Handle(); - } - - // don't allow making handles on empty keys - if (key.isEmpty()) - return 0; - - TPtrC name(qt_QString2TPtrC(fileName)); - int err = KErrAlreadyExists; - int tryCount = 10; - // Sort out race conditions by retrying several times until existing handle is acquired. - // Sometimes opening can fail inexplicably with KErrPermissionDenied many times in a row. - while (err != KErrNoMemory && err != KErrNone && tryCount-- >= 0) { - err = semaphore.CreateGlobal(name, initialValue, EOwnerProcess); - if (err != KErrNoMemory && err != KErrNone) - err = semaphore.OpenGlobal(name,EOwnerProcess); - } - if (err){ - setErrorString(QLatin1String("QSystemSemaphore::handle"),err); - return 0; - } - return semaphore.Handle(); -} - -void QSystemSemaphorePrivate::cleanHandle() -{ - semaphore.Close(); -} - -bool QSystemSemaphorePrivate::modifySemaphore(int count) -{ - if (0 == handle()) - return false; - - if (count > 0) { - semaphore.Signal(count); - } else { - semaphore.Wait(); - } - return true; -} - -#endif //QT_NO_SYSTEMSEMAPHORE - -QT_END_NAMESPACE -- cgit v1.2.3 From abccefa4a8fffda13d3873b8e0c60259d75a75e9 Mon Sep 17 00:00:00 2001 From: Joerg Bornemann Date: Wed, 14 Dec 2011 14:44:08 +0100 Subject: QLocalSocket/Win: fix behaviour on broken pipe We must not close the QIODevice, if we detect a broken pipe. We still can have data in our read buffer that can be read by the user. Autotest: tst_QLocalSocket::threadedConnection Change-Id: Ibe823c006516acb27f51a06ca0bbe5555dbd88f5 Reviewed-by: Oswald Buddenhagen --- src/network/socket/qlocalsocket_win.cpp | 77 +++++++++++++++++---------------- 1 file changed, 39 insertions(+), 38 deletions(-) diff --git a/src/network/socket/qlocalsocket_win.cpp b/src/network/socket/qlocalsocket_win.cpp index f595ba72ae..5d64479106 100644 --- a/src/network/socket/qlocalsocket_win.cpp +++ b/src/network/socket/qlocalsocket_win.cpp @@ -220,10 +220,7 @@ qint64 QLocalSocket::readData(char *data, qint64 maxSize) } } - if (d->pipeClosed) { - if (d->actualReadBufferSize == 0) - QTimer::singleShot(0, this, SLOT(_q_pipeClosed())); - } else { + if (!d->pipeClosed) { if (!d->readSequenceStarted) d->startAsyncRead(); d->checkReadyRead(); @@ -297,7 +294,7 @@ void QLocalSocketPrivate::startAsyncRead() // after writing data. Then we must set the appropriate socket state. pipeClosed = true; Q_Q(QLocalSocket); - emit q->readChannelFinished(); + QTimer::singleShot(0, q, SLOT(_q_pipeClosed())); return; } default: @@ -375,9 +372,7 @@ DWORD QLocalSocketPrivate::checkPipeState() } else { if (!pipeClosed) { pipeClosed = true; - emit q->readChannelFinished(); - if (actualReadBufferSize == 0) - QTimer::singleShot(0, q, SLOT(_q_pipeClosed())); + QTimer::singleShot(0, q, SLOT(_q_pipeClosed())); } } return 0; @@ -386,7 +381,29 @@ DWORD QLocalSocketPrivate::checkPipeState() void QLocalSocketPrivate::_q_pipeClosed() { Q_Q(QLocalSocket); - q->close(); + if (state == QLocalSocket::UnconnectedState) + return; + + emit q->readChannelFinished(); + if (state != QLocalSocket::ClosingState) { + state = QLocalSocket::ClosingState; + emit q->stateChanged(state); + if (state != QLocalSocket::ClosingState) + return; + } + state = QLocalSocket::UnconnectedState; + emit q->stateChanged(state); + emit q->disconnected(); + + readSequenceStarted = false; + destroyPipeHandles(); + handle = INVALID_HANDLE_VALUE; + ResetEvent(overlapped.hEvent); + + if (pipeWriter) { + delete pipeWriter; + pipeWriter = 0; + } } qint64 QLocalSocket::bytesAvailable() const @@ -406,8 +423,6 @@ qint64 QLocalSocket::bytesToWrite() const bool QLocalSocket::canReadLine() const { Q_D(const QLocalSocket); - if (state() != ConnectedState) - return false; return (QIODevice::canReadLine() || d->readBuffer.indexOf('\n', d->actualReadBufferSize) != -1); } @@ -415,33 +430,20 @@ bool QLocalSocket::canReadLine() const void QLocalSocket::close() { Q_D(QLocalSocket); - if (state() == UnconnectedState) + if (openMode() == NotOpen) return; QIODevice::close(); - d->state = ClosingState; - emit stateChanged(d->state); - if (!d->pipeClosed) - emit readChannelFinished(); d->serverName = QString(); d->fullServerName = QString(); - if (state() != UnconnectedState && bytesToWrite() > 0) { - disconnectFromServer(); - return; - } - d->readSequenceStarted = false; - d->pendingReadyRead = false; - d->pipeClosed = false; - d->destroyPipeHandles(); - d->handle = INVALID_HANDLE_VALUE; - ResetEvent(d->overlapped.hEvent); - d->state = UnconnectedState; - emit stateChanged(d->state); - emit disconnected(); - if (d->pipeWriter) { - delete d->pipeWriter; - d->pipeWriter = 0; + if (state() != UnconnectedState) { + if (bytesToWrite() > 0) { + disconnectFromServer(); + return; + } + + d->_q_pipeClosed(); } } @@ -489,6 +491,7 @@ bool QLocalSocket::setSocketDescriptor(quintptr socketDescriptor, QIODevice::open(openMode); d->handle = (int*)socketDescriptor; d->state = socketState; + d->pipeClosed = false; emit stateChanged(d->state); if (d->state == ConnectedState && openMode.testFlag(QIODevice::ReadOnly)) { d->startAsyncRead(); @@ -509,9 +512,7 @@ void QLocalSocketPrivate::_q_notified() Q_Q(QLocalSocket); if (!completeAsyncRead()) { pipeClosed = true; - emit q->readChannelFinished(); - if (actualReadBufferSize == 0) - QTimer::singleShot(0, q, SLOT(_q_pipeClosed())); + QTimer::singleShot(0, q, SLOT(_q_pipeClosed())); return; } startAsyncRead(); @@ -565,7 +566,7 @@ bool QLocalSocket::waitForDisconnected(int msecs) forever { d->checkPipeState(); if (d->pipeClosed) - close(); + d->_q_pipeClosed(); if (state() == UnconnectedState) return true; Sleep(timer.nextSleepTime()); @@ -594,7 +595,7 @@ bool QLocalSocket::waitForReadyRead(int msecs) // We already know that the pipe is gone, but did not enter the event loop yet. if (d->pipeClosed) { - close(); + d->_q_pipeClosed(); return false; } @@ -605,7 +606,7 @@ bool QLocalSocket::waitForReadyRead(int msecs) d->_q_notified(); // We just noticed that the pipe is gone. if (d->pipeClosed) { - close(); + d->_q_pipeClosed(); return false; } return true; -- cgit v1.2.3 From 3ccd6264296a3d5b1652964c758cbd1063c8c8f2 Mon Sep 17 00:00:00 2001 From: Joerg Bornemann Date: Tue, 13 Dec 2011 12:09:45 +0100 Subject: QLocalSocket/Win: make emitReadyRead timer persistent This saves us from creating a single shot timer every time we emit readyRead and eliminates the parallel pendingReadyRead flag. Done-with: ossi Change-Id: I1de7f07b83b583b9d60dd8862d6a9f7865b5b891 Reviewed-by: Oswald Buddenhagen --- src/network/socket/qlocalsocket.h | 1 - src/network/socket/qlocalsocket_p.h | 3 +-- src/network/socket/qlocalsocket_win.cpp | 25 ++++++++----------------- 3 files changed, 9 insertions(+), 20 deletions(-) diff --git a/src/network/socket/qlocalsocket.h b/src/network/socket/qlocalsocket.h index 698c06377b..a30f37011a 100644 --- a/src/network/socket/qlocalsocket.h +++ b/src/network/socket/qlocalsocket.h @@ -134,7 +134,6 @@ private: Q_PRIVATE_SLOT(d_func(), void _q_notified()) Q_PRIVATE_SLOT(d_func(), void _q_canWrite()) Q_PRIVATE_SLOT(d_func(), void _q_pipeClosed()) - Q_PRIVATE_SLOT(d_func(), void _q_emitReadyRead()) #else Q_PRIVATE_SLOT(d_func(), void _q_stateChanged(QAbstractSocket::SocketState)) Q_PRIVATE_SLOT(d_func(), void _q_error(QAbstractSocket::SocketError)) diff --git a/src/network/socket/qlocalsocket_p.h b/src/network/socket/qlocalsocket_p.h index a0749fd35f..32781789b0 100644 --- a/src/network/socket/qlocalsocket_p.h +++ b/src/network/socket/qlocalsocket_p.h @@ -134,7 +134,6 @@ public: void _q_notified(); void _q_canWrite(); void _q_pipeClosed(); - void _q_emitReadyRead(); DWORD checkPipeState(); void startAsyncRead(); bool completeAsyncRead(); @@ -148,7 +147,7 @@ public: QWinEventNotifier *dataReadNotifier; QLocalSocket::LocalSocketError error; bool readSequenceStarted; - bool pendingReadyRead; + QTimer *emitReadyReadTimer; bool pipeClosed; static const qint64 initialReadBufferSize = 4096; #else diff --git a/src/network/socket/qlocalsocket_win.cpp b/src/network/socket/qlocalsocket_win.cpp index 5d64479106..cb4d50d658 100644 --- a/src/network/socket/qlocalsocket_win.cpp +++ b/src/network/socket/qlocalsocket_win.cpp @@ -50,6 +50,9 @@ QT_BEGIN_NAMESPACE void QLocalSocketPrivate::init() { Q_Q(QLocalSocket); + emitReadyReadTimer = new QTimer(q); + emitReadyReadTimer->setSingleShot(true); + QObject::connect(emitReadyReadTimer, SIGNAL(timeout()), q, SIGNAL(readyRead())); memset(&overlapped, 0, sizeof(overlapped)); overlapped.hEvent = CreateEvent(NULL, TRUE, FALSE, NULL); dataReadNotifier = new QWinEventNotifier(overlapped.hEvent, q); @@ -108,7 +111,7 @@ QLocalSocketPrivate::QLocalSocketPrivate() : QIODevicePrivate(), actualReadBufferSize(0), error(QLocalSocket::UnknownSocketError), readSequenceStarted(false), - pendingReadyRead(false), + emitReadyReadTimer(0), pipeClosed(false), state(QLocalSocket::UnconnectedState) { @@ -236,13 +239,10 @@ qint64 QLocalSocket::readData(char *data, qint64 maxSize) void QLocalSocketPrivate::checkReadyRead() { if (actualReadBufferSize > 0) { - if (!pendingReadyRead) { - Q_Q(QLocalSocket); - QTimer::singleShot(0, q, SLOT(_q_emitReadyRead())); - pendingReadyRead = true; - } + if (!emitReadyReadTimer->isActive()) + emitReadyReadTimer->start(); } else { - pendingReadyRead = false; + emitReadyReadTimer->stop(); } } @@ -516,19 +516,10 @@ void QLocalSocketPrivate::_q_notified() return; } startAsyncRead(); - pendingReadyRead = false; + emitReadyReadTimer->stop(); emit q->readyRead(); } -void QLocalSocketPrivate::_q_emitReadyRead() -{ - if (pendingReadyRead) { - Q_Q(QLocalSocket); - pendingReadyRead = false; - emit q->readyRead(); - } -} - quintptr QLocalSocket::socketDescriptor() const { Q_D(const QLocalSocket); -- cgit v1.2.3 From 033003663172fa6fd2eb5be7bef9e12effd49de6 Mon Sep 17 00:00:00 2001 From: Joerg Bornemann Date: Tue, 13 Dec 2011 12:22:40 +0100 Subject: QLocalSocket/Win: eliminate checkReadyRead() Change-Id: I459c0ba42d3e5b0da57884f5cdfc6f44a11600f7 Reviewed-by: Oswald Buddenhagen --- src/network/socket/qlocalsocket_win.cpp | 23 +++++------------------ 1 file changed, 5 insertions(+), 18 deletions(-) diff --git a/src/network/socket/qlocalsocket_win.cpp b/src/network/socket/qlocalsocket_win.cpp index cb4d50d658..9d7fb4ef42 100644 --- a/src/network/socket/qlocalsocket_win.cpp +++ b/src/network/socket/qlocalsocket_win.cpp @@ -224,28 +224,15 @@ qint64 QLocalSocket::readData(char *data, qint64 maxSize) } if (!d->pipeClosed) { + if (!d->actualReadBufferSize) + d->emitReadyReadTimer->stop(); if (!d->readSequenceStarted) d->startAsyncRead(); - d->checkReadyRead(); } return readSoFar; } -/*! - \internal - Schedules or cancels a readyRead() emission depending on actual data availability - */ -void QLocalSocketPrivate::checkReadyRead() -{ - if (actualReadBufferSize > 0) { - if (!emitReadyReadTimer->isActive()) - emitReadyReadTimer->start(); - } else { - emitReadyReadTimer->stop(); - } -} - /*! \internal Reads data from the socket into the readbuffer @@ -333,6 +320,8 @@ bool QLocalSocketPrivate::completeAsyncRead() actualReadBufferSize += bytesRead; readBuffer.truncate(actualReadBufferSize); + if (!emitReadyReadTimer->isActive()) + emitReadyReadTimer->start(); return true; } @@ -493,10 +482,8 @@ bool QLocalSocket::setSocketDescriptor(quintptr socketDescriptor, d->state = socketState; d->pipeClosed = false; emit stateChanged(d->state); - if (d->state == ConnectedState && openMode.testFlag(QIODevice::ReadOnly)) { + if (d->state == ConnectedState && openMode.testFlag(QIODevice::ReadOnly)) d->startAsyncRead(); - d->checkReadyRead(); - } return true; } -- cgit v1.2.3 From ec9ea7f3e819cb0c2da8c8977f9cc44688c9b6f6 Mon Sep 17 00:00:00 2001 From: Robin Burchell Date: Sat, 10 Dec 2011 16:01:05 +0100 Subject: Merge integrity support into unix. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Since integrity was pulling in all the same code (except the glib-in-QT_CONFIG branch), we can just merge this in. This shouldn't break integrity unless they somehow magically inject glib into QT_CONFIG without actually having glib, but the removal of redundancy makes this worthwhile. Change-Id: I527b5e60bea4452fdca5eedfe729214f16519234 Reviewed-by: Rolland Dudemaine Reviewed-by: João Abecasis --- src/corelib/kernel/kernel.pri | 20 +------------------- 1 file changed, 1 insertion(+), 19 deletions(-) diff --git a/src/corelib/kernel/kernel.pri b/src/corelib/kernel/kernel.pri index 147f20aaa3..1139e3074a 100644 --- a/src/corelib/kernel/kernel.pri +++ b/src/corelib/kernel/kernel.pri @@ -99,7 +99,7 @@ nacl { kernel/qfunctions_nacl.h } -unix { +unix|integrity { SOURCES += \ kernel/qcore_unix.cpp \ kernel/qcrashhandler.cpp \ @@ -133,21 +133,3 @@ vxworks { kernel/qfunctions_vxworks.h } - -integrity { - SOURCES += \ - kernel/qcore_unix.cpp \ - kernel/qcrashhandler.cpp \ - kernel/qsharedmemory_unix.cpp \ - kernel/qsystemsemaphore_unix.cpp \ - kernel/qeventdispatcher_unix.cpp \ - kernel/qtimerinfo_unix.cpp - HEADERS += \ - kernel/qcore_unix_p.h \ - kernel/qcrashhandler_p.h \ - kernel/qeventdispatcher_unix_p.h \ - kernel/qtimerinfo_unix_p.h - - contains(QT_CONFIG, clock-gettime):include($$QT_SOURCE_TREE/config.tests/unix/clock-gettime/clock-gettime.pri) -} - -- cgit v1.2.3 From 81d55783bb7649dd6fe71c01a18b64911fcea837 Mon Sep 17 00:00:00 2001 From: Robin Burchell Date: Sat, 10 Dec 2011 17:24:14 +0100 Subject: Rename QEventDispatcherQPA to QUnixEventDispatcherQPA. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This removes confusion when we add a Linux-specific QPA dispatcher, and is technically more accurate, as QEDQPA was not 'the' QPA event dispatcher in the first place. Change-Id: I2a41d425f284522ee76ef86782d5eb2bdd805120 Reviewed-by: Jørgen Lind --- .../eventdispatchers/eventdispatchers.pri | 4 +- .../eventdispatchers/qeventdispatcher_qpa.cpp | 91 ---------------------- .../eventdispatchers/qeventdispatcher_qpa_p.h | 80 ------------------- .../qgenericunixeventdispatcher.cpp | 4 +- .../eventdispatchers/qunixeventdispatcher_qpa.cpp | 91 ++++++++++++++++++++++ .../eventdispatchers/qunixeventdispatcher_qpa_p.h | 80 +++++++++++++++++++ 6 files changed, 175 insertions(+), 175 deletions(-) delete mode 100644 src/platformsupport/eventdispatchers/qeventdispatcher_qpa.cpp delete mode 100644 src/platformsupport/eventdispatchers/qeventdispatcher_qpa_p.h create mode 100644 src/platformsupport/eventdispatchers/qunixeventdispatcher_qpa.cpp create mode 100644 src/platformsupport/eventdispatchers/qunixeventdispatcher_qpa_p.h diff --git a/src/platformsupport/eventdispatchers/eventdispatchers.pri b/src/platformsupport/eventdispatchers/eventdispatchers.pri index 38aca26b42..9e6ff282ce 100644 --- a/src/platformsupport/eventdispatchers/eventdispatchers.pri +++ b/src/platformsupport/eventdispatchers/eventdispatchers.pri @@ -1,10 +1,10 @@ unix { SOURCES +=\ - $$PWD/qeventdispatcher_qpa.cpp\ + $$PWD/qunixeventdispatcher_qpa.cpp\ $$PWD/qgenericunixeventdispatcher.cpp\ HEADERS +=\ - $$PWD/qeventdispatcher_qpa_p.h\ + $$PWD/qunixeventdispatcher_qpa_p.h\ $$PWD/qgenericunixeventdispatcher_p.h\ } diff --git a/src/platformsupport/eventdispatchers/qeventdispatcher_qpa.cpp b/src/platformsupport/eventdispatchers/qeventdispatcher_qpa.cpp deleted file mode 100644 index 8ccb181365..0000000000 --- a/src/platformsupport/eventdispatchers/qeventdispatcher_qpa.cpp +++ /dev/null @@ -1,91 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the plugins of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "qplatformdefs.h" -#include "qcoreapplication.h" -#include "qeventdispatcher_qpa_p.h" -#include "private/qguiapplication_p.h" - -#include -#include -#include -#include - -#include - -#include - -QT_BEGIN_NAMESPACE - -QT_USE_NAMESPACE - - -QEventDispatcherQPA::QEventDispatcherQPA(QObject *parent) - : QEventDispatcherUNIX(parent) -{ } - -QEventDispatcherQPA::~QEventDispatcherQPA() -{ } - -bool QEventDispatcherQPA::processEvents(QEventLoop::ProcessEventsFlags flags) -{ - bool didSendEvents = QWindowSystemInterface::sendWindowSystemEvents(this, flags); - - if (QEventDispatcherUNIX::processEvents(flags)) { - return true; - } - - return didSendEvents; -} - -bool QEventDispatcherQPA::hasPendingEvents() -{ - extern uint qGlobalPostedEventsCount(); // from qapplication.cpp - return qGlobalPostedEventsCount() || QWindowSystemInterface::windowSystemEventsQueued(); -} - -void QEventDispatcherQPA::flush() -{ - if(qApp) - qApp->sendPostedEvents(); -} - -QT_END_NAMESPACE diff --git a/src/platformsupport/eventdispatchers/qeventdispatcher_qpa_p.h b/src/platformsupport/eventdispatchers/qeventdispatcher_qpa_p.h deleted file mode 100644 index 7aeb795742..0000000000 --- a/src/platformsupport/eventdispatchers/qeventdispatcher_qpa_p.h +++ /dev/null @@ -1,80 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the plugins of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef QEVENTDISPATCHER_QPA_H -#define QEVENTDISPATCHER_QPA_H - -// -// W A R N I N G -// ------------- -// -// This file is not part of the Qt API. It exists purely as an -// implementation detail. This header file may change from version to -// version without notice, or even be removed. -// -// We mean it. -// - -#include -#include - -QT_BEGIN_NAMESPACE - -class QEventDispatcherQPAPrivate; - -class Q_PLATFORMSUPPORT_EXPORT QEventDispatcherQPA : public QEventDispatcherUNIX -{ - Q_OBJECT - Q_DECLARE_PRIVATE(QEventDispatcherQPA) - -public: - explicit QEventDispatcherQPA(QObject *parent = 0); - ~QEventDispatcherQPA(); - - bool processEvents(QEventLoop::ProcessEventsFlags flags); - bool hasPendingEvents(); - - void flush(); -}; - -QT_END_NAMESPACE - -#endif // QEVENTDISPATCHER_QPA_H diff --git a/src/platformsupport/eventdispatchers/qgenericunixeventdispatcher.cpp b/src/platformsupport/eventdispatchers/qgenericunixeventdispatcher.cpp index ba783c547a..4f8784b068 100644 --- a/src/platformsupport/eventdispatchers/qgenericunixeventdispatcher.cpp +++ b/src/platformsupport/eventdispatchers/qgenericunixeventdispatcher.cpp @@ -40,7 +40,7 @@ ****************************************************************************/ #include "qgenericunixeventdispatcher_p.h" -#include "qeventdispatcher_qpa_p.h" +#include "qunixeventdispatcher_qpa_p.h" #include "qeventdispatcher_glib_p.h" QT_BEGIN_NAMESPACE @@ -52,7 +52,7 @@ class QAbstractEventDispatcher *createUnixEventDispatcher() return new QPAEventDispatcherGlib(); else #endif - return new QEventDispatcherQPA(); + return new QUnixEventDispatcherQPA(); } QT_END_NAMESPACE diff --git a/src/platformsupport/eventdispatchers/qunixeventdispatcher_qpa.cpp b/src/platformsupport/eventdispatchers/qunixeventdispatcher_qpa.cpp new file mode 100644 index 0000000000..018d843b8b --- /dev/null +++ b/src/platformsupport/eventdispatchers/qunixeventdispatcher_qpa.cpp @@ -0,0 +1,91 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the plugins of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include "qplatformdefs.h" +#include "qcoreapplication.h" +#include "qunixeventdispatcher_qpa_p.h" +#include "private/qguiapplication_p.h" + +#include +#include +#include +#include + +#include + +#include + +QT_BEGIN_NAMESPACE + +QT_USE_NAMESPACE + + +QUnixEventDispatcherQPA::QUnixEventDispatcherQPA(QObject *parent) + : QEventDispatcherUNIX(parent) +{ } + +QUnixEventDispatcherQPA::~QUnixEventDispatcherQPA() +{ } + +bool QUnixEventDispatcherQPA::processEvents(QEventLoop::ProcessEventsFlags flags) +{ + bool didSendEvents = QWindowSystemInterface::sendWindowSystemEvents(this, flags); + + if (QEventDispatcherUNIX::processEvents(flags)) { + return true; + } + + return didSendEvents; +} + +bool QUnixEventDispatcherQPA::hasPendingEvents() +{ + extern uint qGlobalPostedEventsCount(); // from qapplication.cpp + return qGlobalPostedEventsCount() || QWindowSystemInterface::windowSystemEventsQueued(); +} + +void QUnixEventDispatcherQPA::flush() +{ + if(qApp) + qApp->sendPostedEvents(); +} + +QT_END_NAMESPACE diff --git a/src/platformsupport/eventdispatchers/qunixeventdispatcher_qpa_p.h b/src/platformsupport/eventdispatchers/qunixeventdispatcher_qpa_p.h new file mode 100644 index 0000000000..f6f8364be3 --- /dev/null +++ b/src/platformsupport/eventdispatchers/qunixeventdispatcher_qpa_p.h @@ -0,0 +1,80 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the plugins of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QUNIXEVENTDISPATCHER_QPA_H +#define QUNIXEVENTDISPATCHER_QPA_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +class QUnixEventDispatcherQPAPrivate; + +class Q_PLATFORMSUPPORT_EXPORT QUnixEventDispatcherQPA : public QEventDispatcherUNIX +{ + Q_OBJECT + Q_DECLARE_PRIVATE(QUnixEventDispatcherQPA) + +public: + explicit QUnixEventDispatcherQPA(QObject *parent = 0); + ~QUnixEventDispatcherQPA(); + + bool processEvents(QEventLoop::ProcessEventsFlags flags); + bool hasPendingEvents(); + + void flush(); +}; + +QT_END_NAMESPACE + +#endif // QUNIXEVENTDISPATCHER_QPA_H -- cgit v1.2.3 From 92667d14a48cb8d32290d2845eb5519645109fdc Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Tue, 13 Dec 2011 17:08:45 +0100 Subject: QTestlib-Selftest: Add initTestCase() setting the directory. Required for launching the sub-processes. The test worked only when launched locally, not from 'make check'. Change-Id: I42c9202a7726c3135f94445fb336b2b8241535a4 Reviewed-by: Rohan McGovern Reviewed-by: Friedemann Kleint --- tests/auto/testlib/selftests/tst_selftests.cpp | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/tests/auto/testlib/selftests/tst_selftests.cpp b/tests/auto/testlib/selftests/tst_selftests.cpp index f3b47389e6..ea47678248 100644 --- a/tests/auto/testlib/selftests/tst_selftests.cpp +++ b/tests/auto/testlib/selftests/tst_selftests.cpp @@ -40,14 +40,18 @@ ****************************************************************************/ #include -#include #include +#include +#include +#include + #include class tst_Selftests: public QObject { Q_OBJECT private slots: + void initTestCase(); void runSubTest_data(); void runSubTest(); void cleanup(); @@ -285,6 +289,13 @@ static QList allLoggerSets() ; } +void tst_Selftests::initTestCase() +{ + // chdir to our testdata path and execute helper apps relative to that. + QString testdataDir = QFileInfo(QFINDTESTDATA("float")).absolutePath(); + QVERIFY2(QDir::setCurrent(testdataDir), qPrintable("Could not chdir to " + testdataDir)); +} + void tst_Selftests::runSubTest_data() { QTest::addColumn("subdir"); @@ -443,7 +454,9 @@ void tst_Selftests::doRunSubTest(QString const& subdir, QStringList const& logge QProcess proc; static const QProcessEnvironment environment = processEnvironment(); proc.setProcessEnvironment(environment); - proc.start(subdir + QLatin1Char('/') + subdir, arguments); + const QString path = subdir + QLatin1Char('/') + subdir; + proc.start(path, arguments); + QVERIFY2(proc.waitForStarted(), qPrintable(QString::fromLatin1("Cannot start '%1': %2").arg(path, proc.errorString()))); QVERIFY2(proc.waitForFinished(), qPrintable(proc.errorString())); QList actualOutputs; -- cgit v1.2.3 From c13b223979833327fc70f65ae6a847ef7142c847 Mon Sep 17 00:00:00 2001 From: Morten Johan Sorvig Date: Mon, 12 Dec 2011 10:32:03 +0100 Subject: Cocoa: Add version check for convertRectToScreen. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit convertRectToScreen was added in 10.7, use convertBaseToScreen on 10.6 Change-Id: Ica1ee0f62e1fc9b0d5ccf463419496684da779b7 Reviewed-by: Morten Johan Sørvig --- src/plugins/platforms/cocoa/qnsview.mm | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/plugins/platforms/cocoa/qnsview.mm b/src/plugins/platforms/cocoa/qnsview.mm index 1a1e02d2fd..567e893a55 100644 --- a/src/plugins/platforms/cocoa/qnsview.mm +++ b/src/plugins/platforms/cocoa/qnsview.mm @@ -229,14 +229,19 @@ static QTouchDevice *touchDevice = 0; QPoint qtWindowPoint(nsViewPoint.x, nsViewPoint.y); // NSView/QWindow coordinates QPoint qtScreenPoint; -#if MAC_OS_X_VERSION_MAX_ALLOWED > MAC_OS_X_VERSION_10_6 - NSRect screenRect = [[self window] convertRectToScreen : NSMakeRect(nsWindowPoint.x, nsWindowPoint.y, 0, 0)]; // OS X screen coordinates - qtScreenPoint = QPoint(screenRect.origin.x, qt_mac_flipYCoordinate(screenRect.origin.y)); // Qt screen coordinates -#else - NSPoint screenPoint = [[self window] convertBaseToScreen : NSMakePoint(nsWindowPoint.x, nsWindowPoint.y)]; - qtScreenPoint = QPoint(screenPoint.x, qt_mac_flipYCoordinate(screenPoint.y)); -#endif + NSWindow *window = [self window]; + // Use convertRectToScreen if available (added in 10.7). +#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_7 + if ([window respondsToSelector:@selector(convertRectToScreen:)]) { + NSRect screenRect = [window convertRectToScreen : NSMakeRect(nsWindowPoint.x, nsWindowPoint.y, 0, 0)]; // OS X screen coordinates + qtScreenPoint = QPoint(screenRect.origin.x, qt_mac_flipYCoordinate(screenRect.origin.y)); // Qt screen coordinates + } else +#endif + { + NSPoint screenPoint = [window convertBaseToScreen : NSMakePoint(nsWindowPoint.x, nsWindowPoint.y)]; + qtScreenPoint = QPoint(screenPoint.x, qt_mac_flipYCoordinate(screenPoint.y)); + } ulong timestamp = [theEvent timestamp] * 1000; QWindowSystemInterface::handleMouseEvent(m_window, timestamp, qtWindowPoint, qtScreenPoint, m_buttons); -- cgit v1.2.3 From 140579cb3ef676aa3a7c3fc322ddfcc6ec1b70f2 Mon Sep 17 00:00:00 2001 From: Morten Johan Sorvig Date: Wed, 14 Dec 2011 11:19:33 +0100 Subject: Cocoa: Don't set window size in propagateSizeHints MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Unless QWindow:baseSize returns a valid value. Setting the size caused lots of window geometry instability in Creator. Change-Id: Iab45e88b47207db900c7655c217959391d84a1bb Reviewed-by: Bradley T. Hughes Reviewed-by: Morten Johan Sørvig --- src/plugins/platforms/cocoa/qcocoawindow.mm | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/src/plugins/platforms/cocoa/qcocoawindow.mm b/src/plugins/platforms/cocoa/qcocoawindow.mm index 27e8e9a2c9..96dae74cb8 100644 --- a/src/plugins/platforms/cocoa/qcocoawindow.mm +++ b/src/plugins/platforms/cocoa/qcocoawindow.mm @@ -188,15 +188,9 @@ void QCocoaWindow::propagateSizeHints() if (!window()->sizeIncrement().isNull()) [m_nsWindow setResizeIncrements : qt_mac_toNSSize(window()->sizeIncrement())]; - // We must set the window frame after setting the minimum size to prevent the window - // from being resized to the minimum size. Use QWindow::baseSize if set, otherwise - // use the current size. QSize baseSize = window()->baseSize(); - QRect rect = geometry(); if (!baseSize.isNull()) { - [m_nsWindow setFrame : NSMakeRect(rect.x(), rect.y(), baseSize.width(), baseSize.height()) display : YES]; - } else { - [m_nsWindow setFrame : NSMakeRect(rect.x(), rect.y(), rect.width(), rect.height()) display : YES]; + [m_nsWindow setFrameSize : NSMakeSize(baseSize.width(), baseSize.height()) display : YES]; } } -- cgit v1.2.3 From 7b874b7fc4c56a039eaab7f8828379637fff8212 Mon Sep 17 00:00:00 2001 From: Morten Johan Sorvig Date: Wed, 14 Dec 2011 12:05:56 +0100 Subject: Cocoa: Update geometry on window move. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Call [QNSView updateGeometry] directly. We can't got through the frameDidChange notification since we are not actually changing the QNSView frame. Rename frameDidChangeNotification -> updateGeometry sine it now handles updates from two different sources. Change-Id: I848e558294093cd51d97778734b5cf872435266a Reviewed-by: Bradley T. Hughes Reviewed-by: Morten Johan Sørvig --- src/plugins/platforms/cocoa/qcocoawindow.mm | 7 ++----- src/plugins/platforms/cocoa/qnsview.h | 1 + src/plugins/platforms/cocoa/qnsview.mm | 8 ++++++-- 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/src/plugins/platforms/cocoa/qcocoawindow.mm b/src/plugins/platforms/cocoa/qcocoawindow.mm index 96dae74cb8..d200ed4038 100644 --- a/src/plugins/platforms/cocoa/qcocoawindow.mm +++ b/src/plugins/platforms/cocoa/qcocoawindow.mm @@ -224,16 +224,13 @@ NSView *QCocoaWindow::contentView() const void QCocoaWindow::windowDidMove() { - NSRect rect = [[m_nsWindow contentView]frame]; - NSRect windowRect = [m_nsWindow frame]; - [[m_nsWindow contentView] setFrameSize:rect.size]; + [m_contentView updateGeometry]; } void QCocoaWindow::windowDidResize() { NSRect rect = [[m_nsWindow contentView]frame]; - NSRect windowRect = [m_nsWindow frame]; - // Call setFrameSize which will trigger a frameDidChangeNotificatio on QNSView. + // Call setFrameSize which will trigger a frameDidChangeNotification on QNSView. [[m_nsWindow contentView] setFrameSize:rect.size]; } diff --git a/src/plugins/platforms/cocoa/qnsview.h b/src/plugins/platforms/cocoa/qnsview.h index 571449492d..f3d5c9bb43 100644 --- a/src/plugins/platforms/cocoa/qnsview.h +++ b/src/plugins/platforms/cocoa/qnsview.h @@ -61,6 +61,7 @@ class QCocoaWindow; - (void)setImage:(QImage *)image; - (void)drawRect:(NSRect)dirtyRect; +- (void)updateGeometry; - (BOOL)isFlipped; - (BOOL)acceptsFirstResponder; diff --git a/src/plugins/platforms/cocoa/qnsview.mm b/src/plugins/platforms/cocoa/qnsview.mm index 567e893a55..436069c420 100644 --- a/src/plugins/platforms/cocoa/qnsview.mm +++ b/src/plugins/platforms/cocoa/qnsview.mm @@ -111,19 +111,23 @@ static QTouchDevice *touchDevice = 0; [self setPostsFrameChangedNotifications : YES]; [[NSNotificationCenter defaultCenter] addObserver:self - selector:@selector(frameDidChangeNotification:) + selector:@selector(updateGeometry) name:NSViewFrameDidChangeNotification object:self]; return self; } -- (void) frameDidChangeNotification: (NSNotification *) notification +- (void)updateGeometry { NSRect rect = [self frame]; NSRect windowRect = [[self window] frame]; QRect geo(windowRect.origin.x, qt_mac_flipYCoordinate(windowRect.origin.y + rect.size.height), rect.size.width, rect.size.height); +#ifdef QT_COCOA_ENABLE_WINDOW_DEBUG + qDebug() << "QNSView::udpateGeometry" << geo; +#endif + // Call setGeometry on QPlatformWindow. (not on QCocoaWindow, // doing that will initiate a geometry change it and possibly create // an infinite loop when this notification is triggered again.) -- cgit v1.2.3 From 6506e0a6eec67985432427c630b148e825184c5d Mon Sep 17 00:00:00 2001 From: Kim Motoyoshi Kalland Date: Mon, 12 Dec 2011 12:57:08 +0100 Subject: Improved path filling performance in the raster paint engine. Convert bezier curves to polylines before rasterizing with gray raster. Change-Id: I353debd4338f2a3ce2fa1cfa1bff9dd2e36f05ab Reviewed-by: Gunnar Sletta --- src/gui/painting/qbezier.cpp | 32 +++++++++++++ src/gui/painting/qbezier_p.h | 2 + src/gui/painting/qoutlinemapper.cpp | 90 ++++++++++++++++++++----------------- src/gui/painting/qoutlinemapper_p.h | 24 ++++------ 4 files changed, 93 insertions(+), 55 deletions(-) diff --git a/src/gui/painting/qbezier.cpp b/src/gui/painting/qbezier.cpp index 9d204f9a39..bdba3f21ef 100644 --- a/src/gui/painting/qbezier.cpp +++ b/src/gui/painting/qbezier.cpp @@ -220,6 +220,38 @@ void QBezier::addToPolygon(QPolygonF *polygon, qreal bezier_flattening_threshold } } +void QBezier::addToPolygon(QDataBuffer &polygon, qreal bezier_flattening_threshold) const +{ + QBezier beziers[32]; + beziers[0] = *this; + QBezier *b = beziers; + + while (b >= beziers) { + // check if we can pop the top bezier curve from the stack + qreal y4y1 = b->y4 - b->y1; + qreal x4x1 = b->x4 - b->x1; + qreal l = qAbs(x4x1) + qAbs(y4y1); + qreal d; + if (l > 1.) { + d = qAbs( (x4x1)*(b->y1 - b->y2) - (y4y1)*(b->x1 - b->x2) ) + + qAbs( (x4x1)*(b->y1 - b->y3) - (y4y1)*(b->x1 - b->x3) ); + } else { + d = qAbs(b->x1 - b->x2) + qAbs(b->y1 - b->y2) + + qAbs(b->x1 - b->x3) + qAbs(b->y1 - b->y3); + l = 1.; + } + if (d < bezier_flattening_threshold*l || b == beziers + 31) { + // good enough, we pop it off and add the endpoint + polygon.add(QPointF(b->x4, b->y4)); + --b; + } else { + // split, second half of the polygon goes lower into the stack + b->split(b+1, b); + ++b; + } + } +} + QRectF QBezier::bounds() const { qreal xmin = x1; diff --git a/src/gui/painting/qbezier_p.h b/src/gui/painting/qbezier_p.h index f1f7eb155a..e8594ffa5a 100644 --- a/src/gui/painting/qbezier_p.h +++ b/src/gui/painting/qbezier_p.h @@ -60,6 +60,7 @@ #include "QtCore/qlist.h" #include "QtCore/qpair.h" #include "QtGui/qtransform.h" +#include QT_BEGIN_NAMESPACE @@ -81,6 +82,7 @@ public: QPolygonF toPolygon(qreal bezier_flattening_threshold = 0.5) const; void addToPolygon(QPolygonF *p, qreal bezier_flattening_threshold = 0.5) const; + void addToPolygon(QDataBuffer &polygon, qreal bezier_flattening_threshold) const; QRectF bounds() const; qreal length(qreal error = 0.01) const; diff --git a/src/gui/painting/qoutlinemapper.cpp b/src/gui/painting/qoutlinemapper.cpp index 8b607b28b8..1aa77592ae 100644 --- a/src/gui/painting/qoutlinemapper.cpp +++ b/src/gui/painting/qoutlinemapper.cpp @@ -42,6 +42,7 @@ #include "qoutlinemapper_p.h" #include #include "qmath.h" +#include #include @@ -74,6 +75,19 @@ static const QRectF boundingRect(const QPointF *points, int pointCount) return QRectF(QPointF(minx, miny), QPointF(maxx, maxy)); } +void QOutlineMapper::curveTo(const QPointF &cp1, const QPointF &cp2, const QPointF &ep) { +#ifdef QT_DEBUG_CONVERT + printf("QOutlineMapper::curveTo() (%f, %f)\n", ep.x(), ep.y()); +#endif + + QBezier bezier = QBezier::fromPoints(m_elements.last(), cp1, cp2, ep); + bezier.addToPolygon(m_elements, m_curve_threshold); + m_element_types.reserve(m_elements.size()); + for (int i = m_elements.size() - m_element_types.size(); i; --i) + m_element_types << QPainterPath::LineToElement; + Q_ASSERT(m_elements.size() == m_element_types.size()); +} + QT_FT_Outline *QOutlineMapper::convertPath(const QPainterPath &path) { @@ -169,51 +183,47 @@ void QOutlineMapper::endOutline() { closeSubpath(); - int element_count = m_elements.size(); - - if (element_count == 0) { + if (m_elements.isEmpty()) { memset(&m_outline, 0, sizeof(m_outline)); return; } - QPointF *elements; + QPointF *elements = m_elements.data(); // Transform the outline if (m_txop == QTransform::TxNone) { - elements = m_elements.data(); - } else { - if (m_txop == QTransform::TxTranslate) { - for (int i=0; i QT_RASTER_COORD_LIMIT)); if (do_clip) { - clipElements(elements, elementTypes(), element_count); + clipElements(elements, elementTypes(), m_elements.size()); } else { - convertElements(elements, elementTypes(), element_count); + convertElements(elements, elementTypes(), m_elements.size()); } } diff --git a/src/gui/painting/qoutlinemapper_p.h b/src/gui/painting/qoutlinemapper_p.h index 388858ca44..7bcf3166ca 100644 --- a/src/gui/painting/qoutlinemapper_p.h +++ b/src/gui/painting/qoutlinemapper_p.h @@ -73,6 +73,8 @@ const int QT_RASTER_COORD_LIMIT = 32767; //#define QT_DEBUG_CONVERT +Q_GUI_EXPORT bool qt_scaleForTransform(const QTransform &transform, qreal *scale); + /******************************************************************************** * class QOutlineMapper * @@ -90,11 +92,9 @@ public: QOutlineMapper() : m_element_types(0), m_elements(0), - m_elements_dev(0), m_points(0), m_tags(0), m_contours(0), - m_polygon_dev(0), m_in_clip_elements(false), m_round_coords(false) { @@ -117,6 +117,10 @@ public: m_dx = m.dx(); m_dy = m.dy(); m_txop = m.type(); + + qreal scale; + qt_scaleForTransform(m, &scale); + m_curve_threshold = scale == 0 ? qreal(0.25) : (qreal(0.25) / scale); } void beginOutline(Qt::FillRule fillRule) @@ -126,7 +130,6 @@ public: #endif m_valid = true; m_elements.reset(); - m_elements_dev.reset(); m_element_types.reset(); m_points.reset(); m_tags.reset(); @@ -161,15 +164,7 @@ public: m_element_types << QPainterPath::LineToElement; } - inline void curveTo(const QPointF &cp1, const QPointF &cp2, const QPointF &ep) { -#ifdef QT_DEBUG_CONVERT - printf("QOutlineMapper::curveTo() (%f, %f)\n", ep.x(), ep.y()); -#endif - m_elements << cp1 << cp2 << ep; - m_element_types << QPainterPath::CurveToElement - << QPainterPath::CurveToDataElement - << QPainterPath::CurveToDataElement; - } + void curveTo(const QPointF &cp1, const QPointF &cp2, const QPointF &ep); inline void closeSubpath() { int element_count = m_elements.size(); @@ -209,14 +204,11 @@ public: public: QDataBuffer m_element_types; QDataBuffer m_elements; - QDataBuffer m_elements_dev; QDataBuffer m_points; QDataBuffer m_tags; QDataBuffer m_contours; QRect m_clip_rect; - QDataBuffer m_polygon_dev; - QRectF controlPointRect; // only valid after endOutline() QT_FT_Outline m_outline; @@ -235,6 +227,8 @@ public: qreal m_dx; qreal m_dy; + qreal m_curve_threshold; + bool m_valid; bool m_in_clip_elements; -- cgit v1.2.3 From 8c2727ac182ccc6ef46054c4a09a1c7ad3c8374e Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Thu, 15 Dec 2011 15:03:08 +1000 Subject: Switch off signal dumper when testing is completed. Previously, if the signal dumper was switched on with the -vs command-line switch, it would never be switched off again. Change-Id: I192e188010471525723fad0844ff33e9482128ea Reviewed-by: Rohan McGovern --- src/testlib/qtestcase.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/testlib/qtestcase.cpp b/src/testlib/qtestcase.cpp index 8cde1118e6..2180dc4294 100644 --- a/src/testlib/qtestcase.cpp +++ b/src/testlib/qtestcase.cpp @@ -1991,6 +1991,9 @@ int QTest::qExec(QObject *testObject, int argc, char **argv) #endif currentTestObject = 0; + + QSignalDumper::endDump(); + #ifdef Q_WS_MAC if (macNeedsActivate) { IOPMAssertionRelease(powerID); -- cgit v1.2.3 From f4ccbc2868f0bef9e9a4cfb8dc8ce2023d221179 Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Thu, 15 Dec 2011 17:17:12 +1000 Subject: Avoid qDebug in verbose benchmark test output. Use QTestLog::info() rather than qDebug() to output informational messages from testlib. Source file and line are deliberately omitted as they would come from testlib rather than from a test program. Change-Id: I7b479bba4d3d553c6fa846d8d5ea2c29a8ef42b8 Reviewed-by: Robin Burchell Reviewed-by: Rohan McGovern --- src/testlib/qtestcase.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/testlib/qtestcase.cpp b/src/testlib/qtestcase.cpp index 2180dc4294..2b0182541e 100644 --- a/src/testlib/qtestcase.cpp +++ b/src/testlib/qtestcase.cpp @@ -1520,9 +1520,13 @@ static void qInvokeTestMethodDataEntry(char *slot) if (QBenchmarkTestMethodData::current->isBenchmark() && QBenchmarkGlobalData::current->verboseOutput) { if (i == -1) { - qDebug() << "warmup stage result :" << QBenchmarkTestMethodData::current->result.value; + QTestLog::info(qPrintable( + QString::fromLatin1("warmup stage result : %1") + .arg(QBenchmarkTestMethodData::current->result.value)), 0, 0); } else { - qDebug() << "accumulation stage result:" << QBenchmarkTestMethodData::current->result.value; + QTestLog::info(qPrintable( + QString::fromLatin1("accumulation stage result: %1") + .arg(QBenchmarkTestMethodData::current->result.value)), 0, 0); } } } while (QBenchmarkTestMethodData::current->isBenchmark() -- cgit v1.2.3 From 9bc4b56656a5acabba09093e3da145bf6a4bca62 Mon Sep 17 00:00:00 2001 From: Martin Petersson Date: Fri, 16 Dec 2011 10:44:24 +0100 Subject: QNetworkAccessManager: delay IPv4 connection with Happy Eyeballs Incase we have both IPv4 and IPv6 available after the host lookup we should delay the connection attempt to IPv4. Task-number: QTBUG-23066 Change-Id: I8c0177cf125c9daae314ada73cacef790a39b856 Reviewed-by: Peter Hartmann --- src/network/access/qhttpnetworkconnection.cpp | 26 +++++++++++++++++++++- src/network/access/qhttpnetworkconnection_p.h | 4 ++++ .../access/qhttpnetworkconnectionchannel.cpp | 2 ++ 3 files changed, 31 insertions(+), 1 deletion(-) diff --git a/src/network/access/qhttpnetworkconnection.cpp b/src/network/access/qhttpnetworkconnection.cpp index fca3d5999e..b43f2b9bcd 100644 --- a/src/network/access/qhttpnetworkconnection.cpp +++ b/src/network/access/qhttpnetworkconnection.cpp @@ -116,6 +116,7 @@ QHttpNetworkConnectionPrivate::~QHttpNetworkConnectionPrivate() void QHttpNetworkConnectionPrivate::init() { + Q_Q(QHttpNetworkConnection); for (int i = 0; i < channelCount; i++) { channels[i].setConnection(this->q_func()); channels[i].ssl = encrypt; @@ -125,6 +126,8 @@ void QHttpNetworkConnectionPrivate::init() #endif channels[i].init(); } + ipv4ConnectTimer.setSingleShot(true); + QObject::connect(&ipv4ConnectTimer, SIGNAL(timeout()), q, SLOT(_q_connectIPv4Channel())); } void QHttpNetworkConnectionPrivate::pauseConnection() @@ -185,6 +188,12 @@ bool QHttpNetworkConnectionPrivate::shouldEmitChannelError(QAbstractSocket *sock int i = indexOf(socket); int otherSocket = (i == 0 ? 1 : 0); + // If the IPv4 connection still isn't started we need to start it now. + if (ipv4ConnectTimer.isActive()) { + ipv4ConnectTimer.stop(); + channels[0].ensureConnection(); + } + if (channelCount == 1) { if (networkLayerState == QHttpNetworkConnectionPrivate::InProgress) networkLayerState = QHttpNetworkConnectionPrivate::Unknown; @@ -1010,7 +1019,18 @@ void QHttpNetworkConnectionPrivate::startNetworkLayerStateLookup() channels[0].networkLayerPreference = QAbstractSocket::IPv4Protocol; channels[1].networkLayerPreference = QAbstractSocket::IPv6Protocol; - channels[0].ensureConnection(); // Possibly delay this one.. + int timeout = 300; +#ifndef QT_NO_BEARERMANAGEMENT + if (networkSession->configuration().bearerType() == QNetworkConfiguration::Bearer2G) + timeout = 800; + else if (networkSession->configuration().bearerType() == QNetworkConfiguration::BearerCDMA2000) + timeout = 500; + else if (networkSession->configuration().bearerType() == QNetworkConfiguration::BearerWCDMA) + timeout = 500; + else if (networkSession->configuration().bearerType() == QNetworkConfiguration::BearerHSPA) + timeout = 400; +#endif + ipv4ConnectTimer.start(timeout); channels[1].ensureConnection(); } else { networkLayerState = InProgress; @@ -1019,6 +1039,10 @@ void QHttpNetworkConnectionPrivate::startNetworkLayerStateLookup() } } +void QHttpNetworkConnectionPrivate::_q_connectIPv4Channel() +{ + channels[0].ensureConnection(); +} #ifndef QT_NO_BEARERMANAGEMENT QHttpNetworkConnection::QHttpNetworkConnection(const QString &hostName, quint16 port, bool encrypt, QObject *parent, QSharedPointer networkSession) diff --git a/src/network/access/qhttpnetworkconnection_p.h b/src/network/access/qhttpnetworkconnection_p.h index 70b9cf3754..18ec92a07a 100644 --- a/src/network/access/qhttpnetworkconnection_p.h +++ b/src/network/access/qhttpnetworkconnection_p.h @@ -61,6 +61,7 @@ #include #include #include +#include #include #include @@ -134,6 +135,7 @@ private: Q_PRIVATE_SLOT(d_func(), void _q_startNextRequest()) Q_PRIVATE_SLOT(d_func(), void _q_hostLookupFinished(QHostInfo)) + Q_PRIVATE_SLOT(d_func(), void _q_connectIPv4Channel()) }; @@ -196,6 +198,7 @@ public: void _q_startNextRequest(); // send the next request from the queue void _q_hostLookupFinished(QHostInfo info); + void _q_connectIPv4Channel(); void createAuthorization(QAbstractSocket *socket, QHttpNetworkRequest &request); @@ -209,6 +212,7 @@ public: bool encrypt; const int channelCount; + QTimer ipv4ConnectTimer; QHttpNetworkConnectionChannel *channels; // parallel connections to the server bool shouldEmitChannelError(QAbstractSocket *socket); diff --git a/src/network/access/qhttpnetworkconnectionchannel.cpp b/src/network/access/qhttpnetworkconnectionchannel.cpp index 072648cf62..89873c086a 100644 --- a/src/network/access/qhttpnetworkconnectionchannel.cpp +++ b/src/network/access/qhttpnetworkconnectionchannel.cpp @@ -951,6 +951,8 @@ void QHttpNetworkConnectionChannel::_q_connected() // For the Happy Eyeballs we need to check if this is the first channel to connect. if (!pendingEncrypt) { if (connection->d_func()->networkLayerState == QHttpNetworkConnectionPrivate::InProgress) { + if (connection->d_func()->ipv4ConnectTimer.isActive()) + connection->d_func()->ipv4ConnectTimer.stop(); if (networkLayerPreference == QAbstractSocket::IPv4Protocol) connection->d_func()->networkLayerState = QHttpNetworkConnectionPrivate::IPv4; else if (networkLayerPreference == QAbstractSocket::IPv6Protocol) -- cgit v1.2.3 From 211e434a05c666e172b2f1e2f72c7695adac52a1 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Sat, 10 Dec 2011 19:13:51 +0100 Subject: Move proxy and selection models to QtCore. Change-Id: I71097855cb9e28105238e496778f29f99f7fc84e Reviewed-by: Thiago Macieira Reviewed-by: Lars Knoll --- src/corelib/itemmodels/itemmodels.pri | 16 +- src/corelib/itemmodels/qabstractproxymodel.cpp | 388 +++ src/corelib/itemmodels/qabstractproxymodel.h | 113 + src/corelib/itemmodels/qabstractproxymodel_p.h | 76 + src/corelib/itemmodels/qidentityproxymodel.cpp | 578 ++++ src/corelib/itemmodels/qidentityproxymodel.h | 120 + src/corelib/itemmodels/qitemselectionmodel.cpp | 1641 ++++++++++ src/corelib/itemmodels/qitemselectionmodel.h | 256 ++ src/corelib/itemmodels/qitemselectionmodel_p.h | 113 + src/corelib/itemmodels/qsortfilterproxymodel.cpp | 2703 +++++++++++++++ src/corelib/itemmodels/qsortfilterproxymodel.h | 205 ++ src/corelib/itemmodels/qstringlistmodel.cpp | 310 ++ src/corelib/itemmodels/qstringlistmodel.h | 91 + src/widgets/itemviews/itemviews.pri | 12 - src/widgets/itemviews/qabstractitemview.h | 2 +- src/widgets/itemviews/qabstractproxymodel.cpp | 388 --- src/widgets/itemviews/qabstractproxymodel.h | 113 - src/widgets/itemviews/qabstractproxymodel_p.h | 76 - src/widgets/itemviews/qidentityproxymodel.cpp | 578 ---- src/widgets/itemviews/qidentityproxymodel.h | 120 - src/widgets/itemviews/qitemselectionmodel.cpp | 1641 ---------- src/widgets/itemviews/qitemselectionmodel.h | 256 -- src/widgets/itemviews/qitemselectionmodel_p.h | 113 - src/widgets/itemviews/qlistwidget.h | 2 +- src/widgets/itemviews/qsortfilterproxymodel.cpp | 2703 --------------- src/widgets/itemviews/qsortfilterproxymodel.h | 205 -- src/widgets/itemviews/qstringlistmodel.cpp | 310 -- src/widgets/itemviews/qstringlistmodel.h | 91 - src/widgets/util/qcompleter.cpp | 2 +- src/widgets/util/qcompleter_p.h | 2 +- tests/auto/corelib/itemmodels/itemmodels.pro | 7 +- .../qabstractitemmodel/tst_qabstractitemmodel.cpp | 4 +- .../itemmodels/qabstractproxymodel/.gitignore | 1 + .../qabstractproxymodel/qabstractproxymodel.pro | 4 + .../tst_qabstractproxymodel.cpp | 449 +++ .../qidentityproxymodel/qidentityproxymodel.pro | 8 + .../tst_qidentityproxymodel.cpp | 330 ++ .../itemmodels/qitemselectionmodel/.gitignore | 1 + .../qitemselectionmodel/qitemselectionmodel.pro | 6 + .../tst_qitemselectionmodel.cpp | 2752 ++++++++++++++++ .../itemmodels/qsortfilterproxymodel/.gitignore | 1 + .../qsortfilterproxymodel.pro | 9 + .../tst_qsortfilterproxymodel.cpp | 3463 ++++++++++++++++++++ .../corelib/itemmodels/qstringlistmodel/.gitignore | 1 + .../itemmodels/qstringlistmodel/qmodellistener.h | 75 + .../qstringlistmodel/qstringlistmodel.pro | 9 + .../qstringlistmodel/tst_qstringlistmodel.cpp | 283 ++ tests/auto/widgets/itemviews/itemviews.pro | 5 - .../itemviews/qabstractproxymodel/.gitignore | 1 - .../qabstractproxymodel/qabstractproxymodel.pro | 4 - .../tst_qabstractproxymodel.cpp | 449 --- .../qidentityproxymodel/qidentityproxymodel.pro | 8 - .../tst_qidentityproxymodel.cpp | 330 -- .../itemviews/qitemselectionmodel/.gitignore | 1 - .../qitemselectionmodel/qitemselectionmodel.pro | 6 - .../tst_qitemselectionmodel.cpp | 2752 ---------------- .../itemviews/qsortfilterproxymodel/.gitignore | 1 - .../qsortfilterproxymodel.pro | 9 - .../tst_qsortfilterproxymodel.cpp | 3463 -------------------- .../widgets/itemviews/qstringlistmodel/.gitignore | 1 - .../itemviews/qstringlistmodel/qmodellistener.h | 75 - .../qstringlistmodel/qstringlistmodel.pro | 9 - .../qstringlistmodel/tst_qstringlistmodel.cpp | 283 -- 63 files changed, 14012 insertions(+), 14012 deletions(-) create mode 100644 src/corelib/itemmodels/qabstractproxymodel.cpp create mode 100644 src/corelib/itemmodels/qabstractproxymodel.h create mode 100644 src/corelib/itemmodels/qabstractproxymodel_p.h create mode 100644 src/corelib/itemmodels/qidentityproxymodel.cpp create mode 100644 src/corelib/itemmodels/qidentityproxymodel.h create mode 100644 src/corelib/itemmodels/qitemselectionmodel.cpp create mode 100644 src/corelib/itemmodels/qitemselectionmodel.h create mode 100644 src/corelib/itemmodels/qitemselectionmodel_p.h create mode 100644 src/corelib/itemmodels/qsortfilterproxymodel.cpp create mode 100644 src/corelib/itemmodels/qsortfilterproxymodel.h create mode 100644 src/corelib/itemmodels/qstringlistmodel.cpp create mode 100644 src/corelib/itemmodels/qstringlistmodel.h delete mode 100644 src/widgets/itemviews/qabstractproxymodel.cpp delete mode 100644 src/widgets/itemviews/qabstractproxymodel.h delete mode 100644 src/widgets/itemviews/qabstractproxymodel_p.h delete mode 100644 src/widgets/itemviews/qidentityproxymodel.cpp delete mode 100644 src/widgets/itemviews/qidentityproxymodel.h delete mode 100644 src/widgets/itemviews/qitemselectionmodel.cpp delete mode 100644 src/widgets/itemviews/qitemselectionmodel.h delete mode 100644 src/widgets/itemviews/qitemselectionmodel_p.h delete mode 100644 src/widgets/itemviews/qsortfilterproxymodel.cpp delete mode 100644 src/widgets/itemviews/qsortfilterproxymodel.h delete mode 100644 src/widgets/itemviews/qstringlistmodel.cpp delete mode 100644 src/widgets/itemviews/qstringlistmodel.h create mode 100644 tests/auto/corelib/itemmodels/qabstractproxymodel/.gitignore create mode 100644 tests/auto/corelib/itemmodels/qabstractproxymodel/qabstractproxymodel.pro create mode 100644 tests/auto/corelib/itemmodels/qabstractproxymodel/tst_qabstractproxymodel.cpp create mode 100644 tests/auto/corelib/itemmodels/qidentityproxymodel/qidentityproxymodel.pro create mode 100644 tests/auto/corelib/itemmodels/qidentityproxymodel/tst_qidentityproxymodel.cpp create mode 100644 tests/auto/corelib/itemmodels/qitemselectionmodel/.gitignore create mode 100644 tests/auto/corelib/itemmodels/qitemselectionmodel/qitemselectionmodel.pro create mode 100644 tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp create mode 100644 tests/auto/corelib/itemmodels/qsortfilterproxymodel/.gitignore create mode 100644 tests/auto/corelib/itemmodels/qsortfilterproxymodel/qsortfilterproxymodel.pro create mode 100644 tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp create mode 100644 tests/auto/corelib/itemmodels/qstringlistmodel/.gitignore create mode 100644 tests/auto/corelib/itemmodels/qstringlistmodel/qmodellistener.h create mode 100644 tests/auto/corelib/itemmodels/qstringlistmodel/qstringlistmodel.pro create mode 100644 tests/auto/corelib/itemmodels/qstringlistmodel/tst_qstringlistmodel.cpp delete mode 100644 tests/auto/widgets/itemviews/qabstractproxymodel/.gitignore delete mode 100644 tests/auto/widgets/itemviews/qabstractproxymodel/qabstractproxymodel.pro delete mode 100644 tests/auto/widgets/itemviews/qabstractproxymodel/tst_qabstractproxymodel.cpp delete mode 100644 tests/auto/widgets/itemviews/qidentityproxymodel/qidentityproxymodel.pro delete mode 100644 tests/auto/widgets/itemviews/qidentityproxymodel/tst_qidentityproxymodel.cpp delete mode 100644 tests/auto/widgets/itemviews/qitemselectionmodel/.gitignore delete mode 100644 tests/auto/widgets/itemviews/qitemselectionmodel/qitemselectionmodel.pro delete mode 100644 tests/auto/widgets/itemviews/qitemselectionmodel/tst_qitemselectionmodel.cpp delete mode 100644 tests/auto/widgets/itemviews/qsortfilterproxymodel/.gitignore delete mode 100644 tests/auto/widgets/itemviews/qsortfilterproxymodel/qsortfilterproxymodel.pro delete mode 100644 tests/auto/widgets/itemviews/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp delete mode 100644 tests/auto/widgets/itemviews/qstringlistmodel/.gitignore delete mode 100644 tests/auto/widgets/itemviews/qstringlistmodel/qmodellistener.h delete mode 100644 tests/auto/widgets/itemviews/qstringlistmodel/qstringlistmodel.pro delete mode 100644 tests/auto/widgets/itemviews/qstringlistmodel/tst_qstringlistmodel.cpp diff --git a/src/corelib/itemmodels/itemmodels.pri b/src/corelib/itemmodels/itemmodels.pri index 618c748612..83ec4c5dbf 100644 --- a/src/corelib/itemmodels/itemmodels.pri +++ b/src/corelib/itemmodels/itemmodels.pri @@ -2,7 +2,19 @@ HEADERS += \ itemmodels/qabstractitemmodel.h \ - itemmodels/qabstractitemmodel_p.h + itemmodels/qabstractitemmodel_p.h \ + itemmodels/qabstractproxymodel.h \ + itemmodels/qabstractproxymodel_p.h \ + itemmodels/qitemselectionmodel.h \ + itemmodels/qitemselectionmodel_p.h \ + itemmodels/qidentityproxymodel.h \ + itemmodels/qsortfilterproxymodel.h \ + itemmodels/qstringlistmodel.h SOURCES += \ - itemmodels/qabstractitemmodel.cpp + itemmodels/qabstractitemmodel.cpp \ + itemmodels/qabstractproxymodel.cpp \ + itemmodels/qitemselectionmodel.cpp \ + itemmodels/qidentityproxymodel.cpp \ + itemmodels/qsortfilterproxymodel.cpp \ + itemmodels/qstringlistmodel.cpp diff --git a/src/corelib/itemmodels/qabstractproxymodel.cpp b/src/corelib/itemmodels/qabstractproxymodel.cpp new file mode 100644 index 0000000000..4beea7b5d9 --- /dev/null +++ b/src/corelib/itemmodels/qabstractproxymodel.cpp @@ -0,0 +1,388 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtGui module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include "qabstractproxymodel.h" + +#ifndef QT_NO_PROXYMODEL + +#include "qitemselectionmodel.h" +#include +#include +#include + + +QT_BEGIN_NAMESPACE + +/*! + \since 4.1 + \class QAbstractProxyModel + \brief The QAbstractProxyModel class provides a base class for proxy item + models that can do sorting, filtering or other data processing tasks. + \ingroup model-view + \inmodule QtCore + + This class defines the standard interface that proxy models must use to be + able to interoperate correctly with other model/view components. It is not + supposed to be instantiated directly. + + All standard proxy models are derived from the QAbstractProxyModel class. + If you need to create a new proxy model class, it is usually better to + subclass an existing class that provides the closest behavior to the one + you want to provide. + + Proxy models that filter or sort items of data from a source model should + be created by using or subclassing QSortFilterProxyModel. + + To subclass QAbstractProxyModel, you need to implement mapFromSource() and + mapToSource(). The mapSelectionFromSource() and mapSelectionToSource() + functions only need to be reimplemented if you need a behavior different + from the default behavior. + + \note If the source model is deleted or no source model is specified, the + proxy model operates on a empty placeholder model. + + \sa QSortFilterProxyModel, QAbstractItemModel, {Model/View Programming} +*/ + +//detects the deletion of the source model +void QAbstractProxyModelPrivate::_q_sourceModelDestroyed() +{ + model = QAbstractItemModelPrivate::staticEmptyModel(); +} + +/*! + Constructs a proxy model with the given \a parent. +*/ + +QAbstractProxyModel::QAbstractProxyModel(QObject *parent) + :QAbstractItemModel(*new QAbstractProxyModelPrivate, parent) +{ + setSourceModel(QAbstractItemModelPrivate::staticEmptyModel()); +} + +/*! + \internal +*/ + +QAbstractProxyModel::QAbstractProxyModel(QAbstractProxyModelPrivate &dd, QObject *parent) + : QAbstractItemModel(dd, parent) +{ + setSourceModel(QAbstractItemModelPrivate::staticEmptyModel()); +} + +/*! + Destroys the proxy model. +*/ +QAbstractProxyModel::~QAbstractProxyModel() +{ + +} + +/*! + Sets the given \a sourceModel to be processed by the proxy model. +*/ +void QAbstractProxyModel::setSourceModel(QAbstractItemModel *sourceModel) +{ + Q_D(QAbstractProxyModel); + if (d->model) + disconnect(d->model, SIGNAL(destroyed()), this, SLOT(_q_sourceModelDestroyed())); + + if (sourceModel) { + d->model = sourceModel; + connect(d->model, SIGNAL(destroyed()), this, SLOT(_q_sourceModelDestroyed())); + } else { + d->model = QAbstractItemModelPrivate::staticEmptyModel(); + } + d->roleNames = d->model->roleNames(); +} + +/*! + Returns the model that contains the data that is available through the proxy model. +*/ +QAbstractItemModel *QAbstractProxyModel::sourceModel() const +{ + Q_D(const QAbstractProxyModel); + if (d->model == QAbstractItemModelPrivate::staticEmptyModel()) + return 0; + return d->model; +} + +/*! + \reimp + */ +bool QAbstractProxyModel::submit() +{ + Q_D(QAbstractProxyModel); + return d->model->submit(); +} + +/*! + \reimp + */ +void QAbstractProxyModel::revert() +{ + Q_D(QAbstractProxyModel); + d->model->revert(); +} + + +/*! + \fn QModelIndex QAbstractProxyModel::mapToSource(const QModelIndex &proxyIndex) const + + Reimplement this function to return the model index in the source model that + corresponds to the \a proxyIndex in the proxy model. + + \sa mapFromSource() +*/ + +/*! + \fn QModelIndex QAbstractProxyModel::mapFromSource(const QModelIndex &sourceIndex) const + + Reimplement this function to return the model index in the proxy model that + corresponds to the \a sourceIndex from the source model. + + \sa mapToSource() +*/ + +/*! + Returns a source selection mapped from the specified \a proxySelection. + + Reimplement this method to map proxy selections to source selections. + */ +QItemSelection QAbstractProxyModel::mapSelectionToSource(const QItemSelection &proxySelection) const +{ + QModelIndexList proxyIndexes = proxySelection.indexes(); + QItemSelection sourceSelection; + for (int i = 0; i < proxyIndexes.size(); ++i) { + const QModelIndex proxyIdx = mapToSource(proxyIndexes.at(i)); + if (!proxyIdx.isValid()) + continue; + sourceSelection << QItemSelectionRange(proxyIdx); + } + return sourceSelection; +} + +/*! + Returns a proxy selection mapped from the specified \a sourceSelection. + + Reimplement this method to map source selections to proxy selections. +*/ +QItemSelection QAbstractProxyModel::mapSelectionFromSource(const QItemSelection &sourceSelection) const +{ + QModelIndexList sourceIndexes = sourceSelection.indexes(); + QItemSelection proxySelection; + for (int i = 0; i < sourceIndexes.size(); ++i) { + const QModelIndex srcIdx = mapFromSource(sourceIndexes.at(i)); + if (!srcIdx.isValid()) + continue; + proxySelection << QItemSelectionRange(srcIdx); + } + return proxySelection; +} + +/*! + \reimp + */ +QVariant QAbstractProxyModel::data(const QModelIndex &proxyIndex, int role) const +{ + Q_D(const QAbstractProxyModel); + return d->model->data(mapToSource(proxyIndex), role); +} + +/*! + \reimp + */ +QVariant QAbstractProxyModel::headerData(int section, Qt::Orientation orientation, int role) const +{ + Q_D(const QAbstractProxyModel); + int sourceSection; + if (orientation == Qt::Horizontal) { + const QModelIndex proxyIndex = index(0, section); + sourceSection = mapToSource(proxyIndex).column(); + } else { + const QModelIndex proxyIndex = index(section, 0); + sourceSection = mapToSource(proxyIndex).row(); + } + return d->model->headerData(sourceSection, orientation, role); +} + +/*! + \reimp + */ +QMap QAbstractProxyModel::itemData(const QModelIndex &proxyIndex) const +{ + Q_D(const QAbstractProxyModel); + return d->model->itemData(mapToSource(proxyIndex)); +} + +/*! + \reimp + */ +Qt::ItemFlags QAbstractProxyModel::flags(const QModelIndex &index) const +{ + Q_D(const QAbstractProxyModel); + return d->model->flags(mapToSource(index)); +} + +/*! + \reimp + */ +bool QAbstractProxyModel::setData(const QModelIndex &index, const QVariant &value, int role) +{ + Q_D(QAbstractProxyModel); + return d->model->setData(mapToSource(index), value, role); +} + +/*! + \reimp + */ +bool QAbstractProxyModel::setItemData(const QModelIndex &index, const QMap< int, QVariant >& roles) +{ + Q_D(QAbstractProxyModel); + return d->model->setItemData(mapToSource(index), roles); +} + +/*! + \reimp + */ +bool QAbstractProxyModel::setHeaderData(int section, Qt::Orientation orientation, const QVariant &value, int role) +{ + Q_D(QAbstractProxyModel); + int sourceSection; + if (orientation == Qt::Horizontal) { + const QModelIndex proxyIndex = index(0, section); + sourceSection = mapToSource(proxyIndex).column(); + } else { + const QModelIndex proxyIndex = index(section, 0); + sourceSection = mapToSource(proxyIndex).row(); + } + return d->model->setHeaderData(sourceSection, orientation, value, role); +} + +/*! + \reimp + */ +QModelIndex QAbstractProxyModel::buddy(const QModelIndex &index) const +{ + Q_D(const QAbstractProxyModel); + return mapFromSource(d->model->buddy(mapToSource(index))); +} + +/*! + \reimp + */ +bool QAbstractProxyModel::canFetchMore(const QModelIndex &parent) const +{ + Q_D(const QAbstractProxyModel); + return d->model->canFetchMore(mapToSource(parent)); +} + +/*! + \reimp + */ +void QAbstractProxyModel::fetchMore(const QModelIndex &parent) +{ + Q_D(QAbstractProxyModel); + d->model->fetchMore(mapToSource(parent)); +} + +/*! + \reimp + */ +void QAbstractProxyModel::sort(int column, Qt::SortOrder order) +{ + Q_D(QAbstractProxyModel); + d->model->sort(column, order); +} + +/*! + \reimp + */ +QSize QAbstractProxyModel::span(const QModelIndex &index) const +{ + Q_D(const QAbstractProxyModel); + return d->model->span(mapToSource(index)); +} + +/*! + \reimp + */ +bool QAbstractProxyModel::hasChildren(const QModelIndex &parent) const +{ + Q_D(const QAbstractProxyModel); + return d->model->hasChildren(mapToSource(parent)); +} + +/*! + \reimp + */ +QMimeData* QAbstractProxyModel::mimeData(const QModelIndexList &indexes) const +{ + Q_D(const QAbstractProxyModel); + QModelIndexList list; + foreach(const QModelIndex &index, indexes) + list << mapToSource(index); + return d->model->mimeData(list); +} + +/*! + \reimp + */ +QStringList QAbstractProxyModel::mimeTypes() const +{ + Q_D(const QAbstractProxyModel); + return d->model->mimeTypes(); +} + +/*! + \reimp + */ +Qt::DropActions QAbstractProxyModel::supportedDropActions() const +{ + Q_D(const QAbstractProxyModel); + return d->model->supportedDropActions(); +} + +QT_END_NAMESPACE + +#include "moc_qabstractproxymodel.cpp" + +#endif // QT_NO_PROXYMODEL diff --git a/src/corelib/itemmodels/qabstractproxymodel.h b/src/corelib/itemmodels/qabstractproxymodel.h new file mode 100644 index 0000000000..655ea1db02 --- /dev/null +++ b/src/corelib/itemmodels/qabstractproxymodel.h @@ -0,0 +1,113 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtGui module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QABSTRACTPROXYMODEL_H +#define QABSTRACTPROXYMODEL_H + +#include + +QT_BEGIN_HEADER + +QT_BEGIN_NAMESPACE + +QT_MODULE(Core) + +#ifndef QT_NO_PROXYMODEL + +class QAbstractProxyModelPrivate; +class QItemSelection; + +class Q_CORE_EXPORT QAbstractProxyModel : public QAbstractItemModel +{ + Q_OBJECT + +public: + QAbstractProxyModel(QObject *parent = 0); + ~QAbstractProxyModel(); + + virtual void setSourceModel(QAbstractItemModel *sourceModel); + QAbstractItemModel *sourceModel() const; + + virtual QModelIndex mapToSource(const QModelIndex &proxyIndex) const = 0; + virtual QModelIndex mapFromSource(const QModelIndex &sourceIndex) const = 0; + + virtual QItemSelection mapSelectionToSource(const QItemSelection &selection) const; + virtual QItemSelection mapSelectionFromSource(const QItemSelection &selection) const; + + bool submit(); + void revert(); + + QVariant data(const QModelIndex &proxyIndex, int role = Qt::DisplayRole) const; + QVariant headerData(int section, Qt::Orientation orientation, int role) const; + QMap itemData(const QModelIndex &index) const; + Qt::ItemFlags flags(const QModelIndex &index) const; + + bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole); + bool setItemData(const QModelIndex& index, const QMap &roles); + bool setHeaderData(int section, Qt::Orientation orientation, const QVariant &value, int role = Qt::EditRole); + + QModelIndex buddy(const QModelIndex &index) const; + bool canFetchMore(const QModelIndex &parent) const; + void fetchMore(const QModelIndex &parent); + void sort(int column, Qt::SortOrder order = Qt::AscendingOrder); + QSize span(const QModelIndex &index) const; + bool hasChildren(const QModelIndex &parent = QModelIndex()) const; + + QMimeData* mimeData(const QModelIndexList &indexes) const; + QStringList mimeTypes() const; + Qt::DropActions supportedDropActions() const; + +protected: + QAbstractProxyModel(QAbstractProxyModelPrivate &, QObject *parent); + +private: + Q_DECLARE_PRIVATE(QAbstractProxyModel) + Q_DISABLE_COPY(QAbstractProxyModel) + Q_PRIVATE_SLOT(d_func(), void _q_sourceModelDestroyed()) +}; + +#endif // QT_NO_PROXYMODEL + +QT_END_NAMESPACE + +QT_END_HEADER + +#endif // QABSTRACTPROXYMODEL_H diff --git a/src/corelib/itemmodels/qabstractproxymodel_p.h b/src/corelib/itemmodels/qabstractproxymodel_p.h new file mode 100644 index 0000000000..cb798e0439 --- /dev/null +++ b/src/corelib/itemmodels/qabstractproxymodel_p.h @@ -0,0 +1,76 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtGui module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QABSTRACTPROXYMODEL_P_H +#define QABSTRACTPROXYMODEL_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of QAbstractItemModel*. This header file may change from version +// to version without notice, or even be removed. +// +// We mean it. +// +// + +#include "private/qabstractitemmodel_p.h" + +#ifndef QT_NO_PROXYMODEL + +QT_BEGIN_NAMESPACE + +class Q_CORE_EXPORT QAbstractProxyModelPrivate : public QAbstractItemModelPrivate +{ + Q_DECLARE_PUBLIC(QAbstractProxyModel) +public: + QAbstractProxyModelPrivate() : QAbstractItemModelPrivate(), model(0) {} + QAbstractItemModel *model; + virtual void _q_sourceModelDestroyed(); +}; + +QT_END_NAMESPACE + +#endif // QT_NO_PROXYMODEL + +#endif // QABSTRACTPROXYMODEL_P_H diff --git a/src/corelib/itemmodels/qidentityproxymodel.cpp b/src/corelib/itemmodels/qidentityproxymodel.cpp new file mode 100644 index 0000000000..6edb5df0fb --- /dev/null +++ b/src/corelib/itemmodels/qidentityproxymodel.cpp @@ -0,0 +1,578 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Klarälvdalens Datakonsult AB, a KDAB Group company, info@kdab.com, author Stephen Kelly +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtGui module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include "qidentityproxymodel.h" + +#ifndef QT_NO_IDENTITYPROXYMODEL + +#include "qitemselectionmodel.h" +#include + +QT_BEGIN_NAMESPACE + +class QIdentityProxyModelPrivate : public QAbstractProxyModelPrivate +{ + QIdentityProxyModelPrivate() + { + + } + + Q_DECLARE_PUBLIC(QIdentityProxyModel) + + QList layoutChangePersistentIndexes; + QModelIndexList proxyIndexes; + + void _q_sourceRowsAboutToBeInserted(const QModelIndex &parent, int start, int end); + void _q_sourceRowsInserted(const QModelIndex &parent, int start, int end); + void _q_sourceRowsAboutToBeRemoved(const QModelIndex &parent, int start, int end); + void _q_sourceRowsRemoved(const QModelIndex &parent, int start, int end); + void _q_sourceRowsAboutToBeMoved(const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destParent, int dest); + void _q_sourceRowsMoved(const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destParent, int dest); + + void _q_sourceColumnsAboutToBeInserted(const QModelIndex &parent, int start, int end); + void _q_sourceColumnsInserted(const QModelIndex &parent, int start, int end); + void _q_sourceColumnsAboutToBeRemoved(const QModelIndex &parent, int start, int end); + void _q_sourceColumnsRemoved(const QModelIndex &parent, int start, int end); + void _q_sourceColumnsAboutToBeMoved(const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destParent, int dest); + void _q_sourceColumnsMoved(const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destParent, int dest); + + void _q_sourceDataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight); + void _q_sourceHeaderDataChanged(Qt::Orientation orientation, int first, int last); + + void _q_sourceLayoutAboutToBeChanged(); + void _q_sourceLayoutChanged(); + void _q_sourceModelAboutToBeReset(); + void _q_sourceModelReset(); + +}; + +/*! + \since 4.8 + \class QIdentityProxyModel + \brief The QIdentityProxyModel class proxies its source model unmodified + + \ingroup model-view + \inmodule QtCore + + QIdentityProxyModel can be used to forward the structure of a source model exactly, with no sorting, filtering or other transformation. + This is similar in concept to an identity matrix where A.I = A. + + Because it does no sorting or filtering, this class is most suitable to proxy models which transform the data() of the source model. + For example, a proxy model could be created to define the font used, or the background colour, or the tooltip etc. This removes the + need to implement all data handling in the same class that creates the structure of the model, and can also be used to create + re-usable components. + + This also provides a way to change the data in the case where a source model is supplied by a third party which can not be modified. + + \snippet doc/src/snippets/code/src_gui_itemviews_qidentityproxymodel.cpp 0 + + \sa QAbstractProxyModel, {Model/View Programming}, QAbstractItemModel + +*/ + +/*! + Constructs an identity model with the given \a parent. +*/ +QIdentityProxyModel::QIdentityProxyModel(QObject* parent) + : QAbstractProxyModel(*new QIdentityProxyModelPrivate, parent) +{ + +} + +/*! \internal + */ +QIdentityProxyModel::QIdentityProxyModel(QIdentityProxyModelPrivate &dd, QObject* parent) + : QAbstractProxyModel(dd, parent) +{ + +} + +/*! + Destroys this identity model. +*/ +QIdentityProxyModel::~QIdentityProxyModel() +{ +} + +/*! + \reimp + */ +int QIdentityProxyModel::columnCount(const QModelIndex& parent) const +{ + Q_ASSERT(parent.isValid() ? parent.model() == this : true); + Q_D(const QIdentityProxyModel); + return d->model->columnCount(mapToSource(parent)); +} + +/*! + \reimp + */ +bool QIdentityProxyModel::dropMimeData(const QMimeData* data, Qt::DropAction action, int row, int column, const QModelIndex& parent) +{ + Q_ASSERT(parent.isValid() ? parent.model() == this : true); + Q_D(QIdentityProxyModel); + return d->model->dropMimeData(data, action, row, column, mapToSource(parent)); +} + +/*! + \reimp + */ +QModelIndex QIdentityProxyModel::index(int row, int column, const QModelIndex& parent) const +{ + Q_ASSERT(parent.isValid() ? parent.model() == this : true); + Q_D(const QIdentityProxyModel); + if (!hasIndex(row, column, parent)) + return QModelIndex(); + const QModelIndex sourceParent = mapToSource(parent); + const QModelIndex sourceIndex = d->model->index(row, column, sourceParent); + Q_ASSERT(sourceIndex.isValid()); + return mapFromSource(sourceIndex); +} + +/*! + \reimp + */ +bool QIdentityProxyModel::insertColumns(int column, int count, const QModelIndex& parent) +{ + Q_ASSERT(parent.isValid() ? parent.model() == this : true); + Q_D(QIdentityProxyModel); + return d->model->insertColumns(column, count, mapToSource(parent)); +} + +/*! + \reimp + */ +bool QIdentityProxyModel::insertRows(int row, int count, const QModelIndex& parent) +{ + Q_ASSERT(parent.isValid() ? parent.model() == this : true); + Q_D(QIdentityProxyModel); + return d->model->insertRows(row, count, mapToSource(parent)); +} + +/*! + \reimp + */ +QModelIndex QIdentityProxyModel::mapFromSource(const QModelIndex& sourceIndex) const +{ + Q_D(const QIdentityProxyModel); + if (!d->model || !sourceIndex.isValid()) + return QModelIndex(); + + Q_ASSERT(sourceIndex.model() == d->model); + return createIndex(sourceIndex.row(), sourceIndex.column(), sourceIndex.internalPointer()); +} + +/*! + \reimp + */ +QItemSelection QIdentityProxyModel::mapSelectionFromSource(const QItemSelection& selection) const +{ + Q_D(const QIdentityProxyModel); + QItemSelection proxySelection; + + if (!d->model) + return proxySelection; + + QItemSelection::const_iterator it = selection.constBegin(); + const QItemSelection::const_iterator end = selection.constEnd(); + for ( ; it != end; ++it) { + Q_ASSERT(it->model() == d->model); + const QItemSelectionRange range(mapFromSource(it->topLeft()), mapFromSource(it->bottomRight())); + proxySelection.append(range); + } + + return proxySelection; +} + +/*! + \reimp + */ +QItemSelection QIdentityProxyModel::mapSelectionToSource(const QItemSelection& selection) const +{ + Q_D(const QIdentityProxyModel); + QItemSelection sourceSelection; + + if (!d->model) + return sourceSelection; + + QItemSelection::const_iterator it = selection.constBegin(); + const QItemSelection::const_iterator end = selection.constEnd(); + for ( ; it != end; ++it) { + Q_ASSERT(it->model() == this); + const QItemSelectionRange range(mapToSource(it->topLeft()), mapToSource(it->bottomRight())); + sourceSelection.append(range); + } + + return sourceSelection; +} + +/*! + \reimp + */ +QModelIndex QIdentityProxyModel::mapToSource(const QModelIndex& proxyIndex) const +{ + Q_D(const QIdentityProxyModel); + if (!d->model || !proxyIndex.isValid()) + return QModelIndex(); + Q_ASSERT(proxyIndex.model() == this); + return d->model->createIndex(proxyIndex.row(), proxyIndex.column(), proxyIndex.internalPointer()); +} + +/*! + \reimp + */ +QModelIndexList QIdentityProxyModel::match(const QModelIndex& start, int role, const QVariant& value, int hits, Qt::MatchFlags flags) const +{ + Q_D(const QIdentityProxyModel); + Q_ASSERT(start.isValid() ? start.model() == this : true); + if (!d->model) + return QModelIndexList(); + + const QModelIndexList sourceList = d->model->match(mapToSource(start), role, value, hits, flags); + QModelIndexList::const_iterator it = sourceList.constBegin(); + const QModelIndexList::const_iterator end = sourceList.constEnd(); + QModelIndexList proxyList; + for ( ; it != end; ++it) + proxyList.append(mapFromSource(*it)); + return proxyList; +} + +/*! + \reimp + */ +QModelIndex QIdentityProxyModel::parent(const QModelIndex& child) const +{ + Q_ASSERT(child.isValid() ? child.model() == this : true); + const QModelIndex sourceIndex = mapToSource(child); + const QModelIndex sourceParent = sourceIndex.parent(); + return mapFromSource(sourceParent); +} + +/*! + \reimp + */ +bool QIdentityProxyModel::removeColumns(int column, int count, const QModelIndex& parent) +{ + Q_ASSERT(parent.isValid() ? parent.model() == this : true); + Q_D(QIdentityProxyModel); + return d->model->removeColumns(column, count, mapToSource(parent)); +} + +/*! + \reimp + */ +bool QIdentityProxyModel::removeRows(int row, int count, const QModelIndex& parent) +{ + Q_ASSERT(parent.isValid() ? parent.model() == this : true); + Q_D(QIdentityProxyModel); + return d->model->removeRows(row, count, mapToSource(parent)); +} + +/*! + \reimp + */ +int QIdentityProxyModel::rowCount(const QModelIndex& parent) const +{ + Q_ASSERT(parent.isValid() ? parent.model() == this : true); + Q_D(const QIdentityProxyModel); + return d->model->rowCount(mapToSource(parent)); +} + +/*! + \reimp + */ +void QIdentityProxyModel::setSourceModel(QAbstractItemModel* sourceModel) +{ + beginResetModel(); + + if (sourceModel) { + disconnect(sourceModel, SIGNAL(rowsAboutToBeInserted(const QModelIndex &, int, int)), + this, SLOT(_q_sourceRowsAboutToBeInserted(const QModelIndex &, int, int))); + disconnect(sourceModel, SIGNAL(rowsInserted(const QModelIndex &, int, int)), + this, SLOT(_q_sourceRowsInserted(const QModelIndex &, int, int))); + disconnect(sourceModel, SIGNAL(rowsAboutToBeRemoved(const QModelIndex &, int, int)), + this, SLOT(_q_sourceRowsAboutToBeRemoved(const QModelIndex &, int, int))); + disconnect(sourceModel, SIGNAL(rowsRemoved(const QModelIndex &, int, int)), + this, SLOT(_q_sourceRowsRemoved(const QModelIndex &, int, int))); + disconnect(sourceModel, SIGNAL(rowsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int)), + this, SLOT(_q_sourceRowsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int))); + disconnect(sourceModel, SIGNAL(rowsMoved(const QModelIndex &, int, int, const QModelIndex &, int)), + this, SLOT(_q_sourceRowsMoved(const QModelIndex &, int, int, const QModelIndex &, int))); + disconnect(sourceModel, SIGNAL(columnsAboutToBeInserted(const QModelIndex &, int, int)), + this, SLOT(_q_sourceColumnsAboutToBeInserted(const QModelIndex &, int, int))); + disconnect(sourceModel, SIGNAL(columnsInserted(const QModelIndex &, int, int)), + this, SLOT(_q_sourceColumnsInserted(const QModelIndex &, int, int))); + disconnect(sourceModel, SIGNAL(columnsAboutToBeRemoved(const QModelIndex &, int, int)), + this, SLOT(_q_sourceColumnsAboutToBeRemoved(const QModelIndex &, int, int))); + disconnect(sourceModel, SIGNAL(columnsRemoved(const QModelIndex &, int, int)), + this, SLOT(_q_sourceColumnsRemoved(const QModelIndex &, int, int))); + disconnect(sourceModel, SIGNAL(columnsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int)), + this, SLOT(_q_sourceColumnsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int))); + disconnect(sourceModel, SIGNAL(columnsMoved(const QModelIndex &, int, int, const QModelIndex &, int)), + this, SLOT(_q_sourceColumnsMoved(const QModelIndex &, int, int, const QModelIndex &, int))); + disconnect(sourceModel, SIGNAL(modelAboutToBeReset()), + this, SLOT(_q_sourceModelAboutToBeReset())); + disconnect(sourceModel, SIGNAL(modelReset()), + this, SLOT(_q_sourceModelReset())); + disconnect(sourceModel, SIGNAL(dataChanged(const QModelIndex &, const QModelIndex &)), + this, SLOT(_q_sourceDataChanged(const QModelIndex &, const QModelIndex &))); + disconnect(sourceModel, SIGNAL(headerDataChanged(Qt::Orientation,int,int)), + this, SLOT(_q_sourceHeaderDataChanged(Qt::Orientation,int,int))); + disconnect(sourceModel, SIGNAL(layoutAboutToBeChanged()), + this, SLOT(_q_sourceLayoutAboutToBeChanged())); + disconnect(sourceModel, SIGNAL(layoutChanged()), + this, SLOT(_q_sourceLayoutChanged())); + } + + QAbstractProxyModel::setSourceModel(sourceModel); + + if (sourceModel) { + connect(sourceModel, SIGNAL(rowsAboutToBeInserted(const QModelIndex &, int, int)), + SLOT(_q_sourceRowsAboutToBeInserted(const QModelIndex &, int, int))); + connect(sourceModel, SIGNAL(rowsInserted(const QModelIndex &, int, int)), + SLOT(_q_sourceRowsInserted(const QModelIndex &, int, int))); + connect(sourceModel, SIGNAL(rowsAboutToBeRemoved(const QModelIndex &, int, int)), + SLOT(_q_sourceRowsAboutToBeRemoved(const QModelIndex &, int, int))); + connect(sourceModel, SIGNAL(rowsRemoved(const QModelIndex &, int, int)), + SLOT(_q_sourceRowsRemoved(const QModelIndex &, int, int))); + connect(sourceModel, SIGNAL(rowsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int)), + SLOT(_q_sourceRowsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int))); + connect(sourceModel, SIGNAL(rowsMoved(const QModelIndex &, int, int, const QModelIndex &, int)), + SLOT(_q_sourceRowsMoved(const QModelIndex &, int, int, const QModelIndex &, int))); + connect(sourceModel, SIGNAL(columnsAboutToBeInserted(const QModelIndex &, int, int)), + SLOT(_q_sourceColumnsAboutToBeInserted(const QModelIndex &, int, int))); + connect(sourceModel, SIGNAL(columnsInserted(const QModelIndex &, int, int)), + SLOT(_q_sourceColumnsInserted(const QModelIndex &, int, int))); + connect(sourceModel, SIGNAL(columnsAboutToBeRemoved(const QModelIndex &, int, int)), + SLOT(_q_sourceColumnsAboutToBeRemoved(const QModelIndex &, int, int))); + connect(sourceModel, SIGNAL(columnsRemoved(const QModelIndex &, int, int)), + SLOT(_q_sourceColumnsRemoved(const QModelIndex &, int, int))); + connect(sourceModel, SIGNAL(columnsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int)), + SLOT(_q_sourceColumnsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int))); + connect(sourceModel, SIGNAL(columnsMoved(const QModelIndex &, int, int, const QModelIndex &, int)), + SLOT(_q_sourceColumnsMoved(const QModelIndex &, int, int, const QModelIndex &, int))); + connect(sourceModel, SIGNAL(modelAboutToBeReset()), + SLOT(_q_sourceModelAboutToBeReset())); + connect(sourceModel, SIGNAL(modelReset()), + SLOT(_q_sourceModelReset())); + connect(sourceModel, SIGNAL(dataChanged(const QModelIndex &, const QModelIndex &)), + SLOT(_q_sourceDataChanged(const QModelIndex &, const QModelIndex &))); + connect(sourceModel, SIGNAL(headerDataChanged(Qt::Orientation,int,int)), + SLOT(_q_sourceHeaderDataChanged(Qt::Orientation,int,int))); + connect(sourceModel, SIGNAL(layoutAboutToBeChanged()), + SLOT(_q_sourceLayoutAboutToBeChanged())); + connect(sourceModel, SIGNAL(layoutChanged()), + SLOT(_q_sourceLayoutChanged())); + } + + endResetModel(); +} + +void QIdentityProxyModelPrivate::_q_sourceColumnsAboutToBeInserted(const QModelIndex &parent, int start, int end) +{ + Q_ASSERT(parent.isValid() ? parent.model() == model : true); + Q_Q(QIdentityProxyModel); + q->beginInsertColumns(q->mapFromSource(parent), start, end); +} + +void QIdentityProxyModelPrivate::_q_sourceColumnsAboutToBeMoved(const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destParent, int dest) +{ + Q_ASSERT(sourceParent.isValid() ? sourceParent.model() == model : true); + Q_ASSERT(destParent.isValid() ? destParent.model() == model : true); + Q_Q(QIdentityProxyModel); + q->beginMoveColumns(q->mapFromSource(sourceParent), sourceStart, sourceEnd, q->mapFromSource(destParent), dest); +} + +void QIdentityProxyModelPrivate::_q_sourceColumnsAboutToBeRemoved(const QModelIndex &parent, int start, int end) +{ + Q_ASSERT(parent.isValid() ? parent.model() == model : true); + Q_Q(QIdentityProxyModel); + q->beginRemoveColumns(q->mapFromSource(parent), start, end); +} + +void QIdentityProxyModelPrivate::_q_sourceColumnsInserted(const QModelIndex &parent, int start, int end) +{ + Q_ASSERT(parent.isValid() ? parent.model() == model : true); + Q_Q(QIdentityProxyModel); + Q_UNUSED(parent) + Q_UNUSED(start) + Q_UNUSED(end) + q->endInsertColumns(); +} + +void QIdentityProxyModelPrivate::_q_sourceColumnsMoved(const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destParent, int dest) +{ + Q_ASSERT(sourceParent.isValid() ? sourceParent.model() == model : true); + Q_ASSERT(destParent.isValid() ? destParent.model() == model : true); + Q_Q(QIdentityProxyModel); + Q_UNUSED(sourceParent) + Q_UNUSED(sourceStart) + Q_UNUSED(sourceEnd) + Q_UNUSED(destParent) + Q_UNUSED(dest) + q->endMoveColumns(); +} + +void QIdentityProxyModelPrivate::_q_sourceColumnsRemoved(const QModelIndex &parent, int start, int end) +{ + Q_ASSERT(parent.isValid() ? parent.model() == model : true); + Q_Q(QIdentityProxyModel); + Q_UNUSED(parent) + Q_UNUSED(start) + Q_UNUSED(end) + q->endRemoveColumns(); +} + +void QIdentityProxyModelPrivate::_q_sourceDataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight) +{ + Q_ASSERT(topLeft.isValid() ? topLeft.model() == model : true); + Q_ASSERT(bottomRight.isValid() ? bottomRight.model() == model : true); + Q_Q(QIdentityProxyModel); + q->dataChanged(q->mapFromSource(topLeft), q->mapFromSource(bottomRight)); +} + +void QIdentityProxyModelPrivate::_q_sourceHeaderDataChanged(Qt::Orientation orientation, int first, int last) +{ + Q_Q(QIdentityProxyModel); + q->headerDataChanged(orientation, first, last); +} + +void QIdentityProxyModelPrivate::_q_sourceLayoutAboutToBeChanged() +{ + Q_Q(QIdentityProxyModel); + + foreach(const QPersistentModelIndex &proxyPersistentIndex, q->persistentIndexList()) { + proxyIndexes << proxyPersistentIndex; + Q_ASSERT(proxyPersistentIndex.isValid()); + const QPersistentModelIndex srcPersistentIndex = q->mapToSource(proxyPersistentIndex); + Q_ASSERT(srcPersistentIndex.isValid()); + layoutChangePersistentIndexes << srcPersistentIndex; + } + + q->layoutAboutToBeChanged(); +} + +void QIdentityProxyModelPrivate::_q_sourceLayoutChanged() +{ + Q_Q(QIdentityProxyModel); + + for (int i = 0; i < proxyIndexes.size(); ++i) { + q->changePersistentIndex(proxyIndexes.at(i), q->mapFromSource(layoutChangePersistentIndexes.at(i))); + } + + layoutChangePersistentIndexes.clear(); + proxyIndexes.clear(); + + q->layoutChanged(); +} + +void QIdentityProxyModelPrivate::_q_sourceModelAboutToBeReset() +{ + Q_Q(QIdentityProxyModel); + q->beginResetModel(); +} + +void QIdentityProxyModelPrivate::_q_sourceModelReset() +{ + Q_Q(QIdentityProxyModel); + q->endResetModel(); +} + +void QIdentityProxyModelPrivate::_q_sourceRowsAboutToBeInserted(const QModelIndex &parent, int start, int end) +{ + Q_ASSERT(parent.isValid() ? parent.model() == model : true); + Q_Q(QIdentityProxyModel); + q->beginInsertRows(q->mapFromSource(parent), start, end); +} + +void QIdentityProxyModelPrivate::_q_sourceRowsAboutToBeMoved(const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destParent, int dest) +{ + Q_ASSERT(sourceParent.isValid() ? sourceParent.model() == model : true); + Q_ASSERT(destParent.isValid() ? destParent.model() == model : true); + Q_Q(QIdentityProxyModel); + q->beginMoveRows(q->mapFromSource(sourceParent), sourceStart, sourceEnd, q->mapFromSource(destParent), dest); +} + +void QIdentityProxyModelPrivate::_q_sourceRowsAboutToBeRemoved(const QModelIndex &parent, int start, int end) +{ + Q_ASSERT(parent.isValid() ? parent.model() == model : true); + Q_Q(QIdentityProxyModel); + q->beginRemoveRows(q->mapFromSource(parent), start, end); +} + +void QIdentityProxyModelPrivate::_q_sourceRowsInserted(const QModelIndex &parent, int start, int end) +{ + Q_ASSERT(parent.isValid() ? parent.model() == model : true); + Q_Q(QIdentityProxyModel); + Q_UNUSED(parent) + Q_UNUSED(start) + Q_UNUSED(end) + q->endInsertRows(); +} + +void QIdentityProxyModelPrivate::_q_sourceRowsMoved(const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destParent, int dest) +{ + Q_ASSERT(sourceParent.isValid() ? sourceParent.model() == model : true); + Q_ASSERT(destParent.isValid() ? destParent.model() == model : true); + Q_Q(QIdentityProxyModel); + Q_UNUSED(sourceParent) + Q_UNUSED(sourceStart) + Q_UNUSED(sourceEnd) + Q_UNUSED(destParent) + Q_UNUSED(dest) + q->endMoveRows(); +} + +void QIdentityProxyModelPrivate::_q_sourceRowsRemoved(const QModelIndex &parent, int start, int end) +{ + Q_ASSERT(parent.isValid() ? parent.model() == model : true); + Q_Q(QIdentityProxyModel); + Q_UNUSED(parent) + Q_UNUSED(start) + Q_UNUSED(end) + q->endRemoveRows(); +} + +QT_END_NAMESPACE + +#include "moc_qidentityproxymodel.cpp" + +#endif // QT_NO_IDENTITYPROXYMODEL diff --git a/src/corelib/itemmodels/qidentityproxymodel.h b/src/corelib/itemmodels/qidentityproxymodel.h new file mode 100644 index 0000000000..9d3c085829 --- /dev/null +++ b/src/corelib/itemmodels/qidentityproxymodel.h @@ -0,0 +1,120 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Klarälvdalens Datakonsult AB, a KDAB Group company, info@kdab.com, author Stephen Kelly +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtGui module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + + +#ifndef QIDENTITYPROXYMODEL_H +#define QIDENTITYPROXYMODEL_H + +#include + +#ifndef QT_NO_IDENTITYPROXYMODEL + +QT_BEGIN_HEADER + +QT_BEGIN_NAMESPACE + +QT_MODULE(Core) + +class QIdentityProxyModelPrivate; + +class Q_CORE_EXPORT QIdentityProxyModel : public QAbstractProxyModel +{ + Q_OBJECT +public: + explicit QIdentityProxyModel(QObject* parent = 0); + ~QIdentityProxyModel(); + + int columnCount(const QModelIndex& parent = QModelIndex()) const; + QModelIndex index(int row, int column, const QModelIndex& parent = QModelIndex()) const; + QModelIndex mapFromSource(const QModelIndex& sourceIndex) const; + QModelIndex mapToSource(const QModelIndex& proxyIndex) const; + QModelIndex parent(const QModelIndex& child) const; + int rowCount(const QModelIndex& parent = QModelIndex()) const; + bool dropMimeData(const QMimeData* data, Qt::DropAction action, int row, int column, const QModelIndex& parent); + + QItemSelection mapSelectionFromSource(const QItemSelection& selection) const; + QItemSelection mapSelectionToSource(const QItemSelection& selection) const; + QModelIndexList match(const QModelIndex& start, int role, const QVariant& value, int hits = 1, Qt::MatchFlags flags = Qt::MatchFlags(Qt::MatchStartsWith|Qt::MatchWrap)) const; + void setSourceModel(QAbstractItemModel* sourceModel); + + bool insertColumns(int column, int count, const QModelIndex& parent = QModelIndex()); + bool insertRows(int row, int count, const QModelIndex& parent = QModelIndex()); + bool removeColumns(int column, int count, const QModelIndex& parent = QModelIndex()); + bool removeRows(int row, int count, const QModelIndex& parent = QModelIndex()); + +protected: + QIdentityProxyModel(QIdentityProxyModelPrivate &dd, QObject* parent); + +private: + Q_DECLARE_PRIVATE(QIdentityProxyModel) + Q_DISABLE_COPY(QIdentityProxyModel) + + Q_PRIVATE_SLOT(d_func(), void _q_sourceRowsAboutToBeInserted(QModelIndex,int,int)) + Q_PRIVATE_SLOT(d_func(), void _q_sourceRowsInserted(QModelIndex,int,int)) + Q_PRIVATE_SLOT(d_func(), void _q_sourceRowsAboutToBeRemoved(QModelIndex,int,int)) + Q_PRIVATE_SLOT(d_func(), void _q_sourceRowsRemoved(QModelIndex,int,int)) + Q_PRIVATE_SLOT(d_func(), void _q_sourceRowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)) + Q_PRIVATE_SLOT(d_func(), void _q_sourceRowsMoved(QModelIndex,int,int,QModelIndex,int)) + + Q_PRIVATE_SLOT(d_func(), void _q_sourceColumnsAboutToBeInserted(QModelIndex,int,int)) + Q_PRIVATE_SLOT(d_func(), void _q_sourceColumnsInserted(QModelIndex,int,int)) + Q_PRIVATE_SLOT(d_func(), void _q_sourceColumnsAboutToBeRemoved(QModelIndex,int,int)) + Q_PRIVATE_SLOT(d_func(), void _q_sourceColumnsRemoved(QModelIndex,int,int)) + Q_PRIVATE_SLOT(d_func(), void _q_sourceColumnsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)) + Q_PRIVATE_SLOT(d_func(), void _q_sourceColumnsMoved(QModelIndex,int,int,QModelIndex,int)) + + Q_PRIVATE_SLOT(d_func(), void _q_sourceDataChanged(QModelIndex,QModelIndex)) + Q_PRIVATE_SLOT(d_func(), void _q_sourceHeaderDataChanged(Qt::Orientation orientation, int first, int last)) + + Q_PRIVATE_SLOT(d_func(), void _q_sourceLayoutAboutToBeChanged()) + Q_PRIVATE_SLOT(d_func(), void _q_sourceLayoutChanged()) + Q_PRIVATE_SLOT(d_func(), void _q_sourceModelAboutToBeReset()) + Q_PRIVATE_SLOT(d_func(), void _q_sourceModelReset()) +}; + +QT_END_NAMESPACE + +QT_END_HEADER + +#endif // QT_NO_IDENTITYPROXYMODEL + +#endif // QIDENTITYPROXYMODEL_H + diff --git a/src/corelib/itemmodels/qitemselectionmodel.cpp b/src/corelib/itemmodels/qitemselectionmodel.cpp new file mode 100644 index 0000000000..d4a2efd35f --- /dev/null +++ b/src/corelib/itemmodels/qitemselectionmodel.cpp @@ -0,0 +1,1641 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtGui module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include "qitemselectionmodel.h" +#include +#include + +#ifndef QT_NO_ITEMVIEWS + +QT_BEGIN_NAMESPACE + +/*! + \class QItemSelectionRange + + \brief The QItemSelectionRange class manages information about a + range of selected items in a model. + + \ingroup model-view + \inmodule QtCore + + A QItemSelectionRange contains information about a range of + selected items in a model. A range of items is a contiguous array + of model items, extending to cover a number of adjacent rows and + columns with a common parent item; this can be visualized as a + two-dimensional block of cells in a table. A selection range has a + top(), left() a bottom(), right() and a parent(). + + The QItemSelectionRange class is one of the \l{Model/View Classes} + and is part of Qt's \l{Model/View Programming}{model/view framework}. + + The model items contained in the selection range can be obtained + using the indexes() function. Use QItemSelectionModel::selectedIndexes() + to get a list of all selected items for a view. + + You can determine whether a given model item lies within a + particular range by using the contains() function. Ranges can also + be compared using the overloaded operators for equality and + inequality, and the intersects() function allows you to determine + whether two ranges overlap. + + \sa {Model/View Programming}, QAbstractItemModel, QItemSelection, + QItemSelectionModel +*/ + +/*! + \fn QItemSelectionRange::QItemSelectionRange() + + Constructs an empty selection range. +*/ + +/*! + \fn QItemSelectionRange::QItemSelectionRange(const QItemSelectionRange &other) + + Copy constructor. Constructs a new selection range with the same contents + as the \a other range given. + +*/ + +/*! + \fn QItemSelectionRange::QItemSelectionRange(const QModelIndex &topLeft, const QModelIndex &bottomRight) + + Constructs a new selection range containing only the index specified + by the \a topLeft and the index \a bottomRight. + +*/ + +/*! + \fn QItemSelectionRange::QItemSelectionRange(const QModelIndex &index) + + Constructs a new selection range containing only the model item specified + by the model index \a index. +*/ + +/*! + \fn int QItemSelectionRange::top() const + + Returns the row index corresponding to the uppermost selected row in the + selection range. + +*/ + +/*! + \fn int QItemSelectionRange::left() const + + Returns the column index corresponding to the leftmost selected column in the + selection range. +*/ + +/*! + \fn int QItemSelectionRange::bottom() const + + Returns the row index corresponding to the lowermost selected row in the + selection range. + +*/ + +/*! + \fn int QItemSelectionRange::right() const + + Returns the column index corresponding to the rightmost selected column in + the selection range. + +*/ + +/*! + \fn int QItemSelectionRange::width() const + + Returns the number of selected columns in the selection range. + +*/ + +/*! + \fn int QItemSelectionRange::height() const + + Returns the number of selected rows in the selection range. + +*/ + +/*! + \fn const QAbstractItemModel *QItemSelectionRange::model() const + + Returns the model that the items in the selection range belong to. +*/ + +/*! + \fn QModelIndex QItemSelectionRange::topLeft() const + + Returns the index for the item located at the top-left corner of + the selection range. + + \sa top(), left(), bottomRight() +*/ + +/*! + \fn QModelIndex QItemSelectionRange::bottomRight() const + + Returns the index for the item located at the bottom-right corner + of the selection range. + + \sa bottom(), right(), topLeft() +*/ + +/*! + \fn QModelIndex QItemSelectionRange::parent() const + + Returns the parent model item index of the items in the selection range. + +*/ + +/*! + \fn bool QItemSelectionRange::contains(const QModelIndex &index) const + + Returns true if the model item specified by the \a index lies within the + range of selected items; otherwise returns false. +*/ + +/*! + \fn bool QItemSelectionRange::contains(int row, int column, + const QModelIndex &parentIndex) const + \overload + + Returns true if the model item specified by (\a row, \a column) + and with \a parentIndex as the parent item lies within the range + of selected items; otherwise returns false. +*/ + +/*! + \fn bool QItemSelectionRange::intersects(const QItemSelectionRange &other) const + + Returns true if this selection range intersects (overlaps with) the \a other + range given; otherwise returns false. + +*/ +bool QItemSelectionRange::intersects(const QItemSelectionRange &other) const +{ + return (isValid() && other.isValid() + && parent() == other.parent() + && model() == other.model() + && ((top() <= other.top() && bottom() >= other.top()) + || (top() >= other.top() && top() <= other.bottom())) + && ((left() <= other.left() && right() >= other.left()) + || (left() >= other.left() && left() <= other.right()))); +} + +/*! + \fn QItemSelectionRange QItemSelectionRange::intersect(const QItemSelectionRange &other) const + \obsolete + + Use intersected(\a other) instead. +*/ + +/*! + \fn QItemSelectionRange QItemSelectionRange::intersected(const QItemSelectionRange &other) const + \since 4.2 + + Returns a new selection range containing only the items that are found in + both the selection range and the \a other selection range. +*/ + +QItemSelectionRange QItemSelectionRange::intersect(const QItemSelectionRange &other) const +{ + if (model() == other.model() && parent() == other.parent()) { + QModelIndex topLeft = model()->index(qMax(top(), other.top()), + qMax(left(), other.left()), + other.parent()); + QModelIndex bottomRight = model()->index(qMin(bottom(), other.bottom()), + qMin(right(), other.right()), + other.parent()); + return QItemSelectionRange(topLeft, bottomRight); + } + return QItemSelectionRange(); +} + +/*! + \fn bool QItemSelectionRange::operator==(const QItemSelectionRange &other) const + + Returns true if the selection range is exactly the same as the \a other + range given; otherwise returns false. + +*/ + +/*! + \fn bool QItemSelectionRange::operator!=(const QItemSelectionRange &other) const + + Returns true if the selection range differs from the \a other range given; + otherwise returns false. + +*/ + +/*! + \fn bool QItemSelectionRange::isValid() const + + Returns true if the selection range is valid; otherwise returns false. + +*/ + +/* + \internal + + utility function for getting the indexes from a range + it avoid concatenating list and works on one + */ + +static void indexesFromRange(const QItemSelectionRange &range, QModelIndexList &result) +{ + if (range.isValid() && range.model()) { + for (int column = range.left(); column <= range.right(); ++column) { + for (int row = range.top(); row <= range.bottom(); ++row) { + QModelIndex index = range.model()->index(row, column, range.parent()); + Qt::ItemFlags flags = range.model()->flags(index); + if ((flags & Qt::ItemIsSelectable) && (flags & Qt::ItemIsEnabled)) + result.append(index); + } + } + } +} + +/*! + Returns true if the selection range contains no selectable item + \since 4.7 +*/ + +bool QItemSelectionRange::isEmpty() const +{ + if (!isValid() || !model()) + return true; + + for (int column = left(); column <= right(); ++column) { + for (int row = top(); row <= bottom(); ++row) { + QModelIndex index = model()->index(row, column, parent()); + Qt::ItemFlags flags = model()->flags(index); + if ((flags & Qt::ItemIsSelectable) && (flags & Qt::ItemIsEnabled)) + return false; + } + } + return true; +} + +/*! + Returns the list of model index items stored in the selection. +*/ + +QModelIndexList QItemSelectionRange::indexes() const +{ + QModelIndexList result; + indexesFromRange(*this, result); + return result; +} + +/*! + \class QItemSelection + + \brief The QItemSelection class manages information about selected items in a model. + + \ingroup model-view + \inmodule QtCore + + A QItemSelection describes the items in a model that have been + selected by the user. A QItemSelection is basically a list of + selection ranges, see QItemSelectionRange. It provides functions for + creating and manipulating selections, and selecting a range of items + from a model. + + The QItemSelection class is one of the \l{Model/View Classes} + and is part of Qt's \l{Model/View Programming}{model/view framework}. + + An item selection can be constructed and initialized to contain a + range of items from an existing model. The following example constructs + a selection that contains a range of items from the given \c model, + beginning at the \c topLeft, and ending at the \c bottomRight. + + \snippet doc/src/snippets/code/src_gui_itemviews_qitemselectionmodel.cpp 0 + + An empty item selection can be constructed, and later populated as + required. So, if the model is going to be unavailable when we construct + the item selection, we can rewrite the above code in the following way: + + \snippet doc/src/snippets/code/src_gui_itemviews_qitemselectionmodel.cpp 1 + + QItemSelection saves memory, and avoids unnecessary work, by working with + selection ranges rather than recording the model item index for each + item in the selection. Generally, an instance of this class will contain + a list of non-overlapping selection ranges. + + Use merge() to merge one item selection into another without making + overlapping ranges. Use split() to split one selection range into + smaller ranges based on a another selection range. + + \sa {Model/View Programming}, QItemSelectionModel +*/ + +/*! + \fn QItemSelection::QItemSelection() + + Constructs an empty selection. +*/ + +/*! + Constructs an item selection that extends from the top-left model item, + specified by the \a topLeft index, to the bottom-right item, specified + by \a bottomRight. +*/ +QItemSelection::QItemSelection(const QModelIndex &topLeft, const QModelIndex &bottomRight) +{ + select(topLeft, bottomRight); +} + +/*! + Adds the items in the range that extends from the top-left model + item, specified by the \a topLeft index, to the bottom-right item, + specified by \a bottomRight to the list. + + \note \a topLeft and \a bottomRight must have the same parent. +*/ +void QItemSelection::select(const QModelIndex &topLeft, const QModelIndex &bottomRight) +{ + if (!topLeft.isValid() || !bottomRight.isValid()) + return; + + if ((topLeft.model() != bottomRight.model()) + || topLeft.parent() != bottomRight.parent()) { + qWarning("Can't select indexes from different model or with different parents"); + return; + } + if (topLeft.row() > bottomRight.row() || topLeft.column() > bottomRight.column()) { + int top = qMin(topLeft.row(), bottomRight.row()); + int bottom = qMax(topLeft.row(), bottomRight.row()); + int left = qMin(topLeft.column(), bottomRight.column()); + int right = qMax(topLeft.column(), bottomRight.column()); + QModelIndex tl = topLeft.sibling(top, left); + QModelIndex br = bottomRight.sibling(bottom, right); + append(QItemSelectionRange(tl, br)); + return; + } + append(QItemSelectionRange(topLeft, bottomRight)); +} + +/*! + Returns true if the selection contains the given \a index; otherwise + returns false. +*/ + +bool QItemSelection::contains(const QModelIndex &index) const +{ + if (index.flags() & Qt::ItemIsSelectable) { + QList::const_iterator it = begin(); + for (; it != end(); ++it) + if ((*it).contains(index)) + return true; + } + return false; +} + +/*! + Returns a list of model indexes that correspond to the selected items. +*/ + +QModelIndexList QItemSelection::indexes() const +{ + QModelIndexList result; + QList::const_iterator it = begin(); + for (; it != end(); ++it) + indexesFromRange(*it, result); + return result; +} + +/*! + Merges the \a other selection with this QItemSelection using the + \a command given. This method guarantees that no ranges are overlapping. + + Note that only QItemSelectionModel::Select, + QItemSelectionModel::Deselect, and QItemSelectionModel::Toggle are + supported. + + \sa split() +*/ +void QItemSelection::merge(const QItemSelection &other, QItemSelectionModel::SelectionFlags command) +{ + if (other.isEmpty() || + !(command & QItemSelectionModel::Select || + command & QItemSelectionModel::Deselect || + command & QItemSelectionModel::Toggle)) + return; + + QItemSelection newSelection = other; + // Collect intersections + QItemSelection intersections; + QItemSelection::iterator it = newSelection.begin(); + while (it != newSelection.end()) { + if (!(*it).isValid()) { + it = newSelection.erase(it); + continue; + } + for (int t = 0; t < count(); ++t) { + if ((*it).intersects(at(t))) + intersections.append(at(t).intersected(*it)); + } + ++it; + } + + // Split the old (and new) ranges using the intersections + for (int i = 0; i < intersections.count(); ++i) { // for each intersection + for (int t = 0; t < count();) { // splitt each old range + if (at(t).intersects(intersections.at(i))) { + split(at(t), intersections.at(i), this); + removeAt(t); + } else { + ++t; + } + } + // only split newSelection if Toggle is specified + for (int n = 0; (command & QItemSelectionModel::Toggle) && n < newSelection.count();) { + if (newSelection.at(n).intersects(intersections.at(i))) { + split(newSelection.at(n), intersections.at(i), &newSelection); + newSelection.removeAt(n); + } else { + ++n; + } + } + } + // do not add newSelection for Deselect + if (!(command & QItemSelectionModel::Deselect)) + operator+=(newSelection); +} + +/*! + Splits the selection \a range using the selection \a other range. + Removes all items in \a other from \a range and puts the result in \a result. + This can be compared with the semantics of the \e subtract operation of a set. + \sa merge() +*/ + +void QItemSelection::split(const QItemSelectionRange &range, + const QItemSelectionRange &other, QItemSelection *result) +{ + if (range.parent() != other.parent() || range.model() != other.model()) + return; + + QModelIndex parent = other.parent(); + int top = range.top(); + int left = range.left(); + int bottom = range.bottom(); + int right = range.right(); + int other_top = other.top(); + int other_left = other.left(); + int other_bottom = other.bottom(); + int other_right = other.right(); + const QAbstractItemModel *model = range.model(); + Q_ASSERT(model); + if (other_top > top) { + QModelIndex tl = model->index(top, left, parent); + QModelIndex br = model->index(other_top - 1, right, parent); + result->append(QItemSelectionRange(tl, br)); + top = other_top; + } + if (other_bottom < bottom) { + QModelIndex tl = model->index(other_bottom + 1, left, parent); + QModelIndex br = model->index(bottom, right, parent); + result->append(QItemSelectionRange(tl, br)); + bottom = other_bottom; + } + if (other_left > left) { + QModelIndex tl = model->index(top, left, parent); + QModelIndex br = model->index(bottom, other_left - 1, parent); + result->append(QItemSelectionRange(tl, br)); + left = other_left; + } + if (other_right < right) { + QModelIndex tl = model->index(top, other_right + 1, parent); + QModelIndex br = model->index(bottom, right, parent); + result->append(QItemSelectionRange(tl, br)); + right = other_right; + } +} + + +void QItemSelectionModelPrivate::initModel(QAbstractItemModel *model) +{ + this->model = model; + if (model) { + Q_Q(QItemSelectionModel); + QObject::connect(model, SIGNAL(rowsAboutToBeRemoved(QModelIndex,int,int)), + q, SLOT(_q_rowsAboutToBeRemoved(QModelIndex,int,int))); + QObject::connect(model, SIGNAL(columnsAboutToBeRemoved(QModelIndex,int,int)), + q, SLOT(_q_columnsAboutToBeRemoved(QModelIndex,int,int))); + QObject::connect(model, SIGNAL(rowsAboutToBeInserted(QModelIndex,int,int)), + q, SLOT(_q_rowsAboutToBeInserted(QModelIndex,int,int))); + QObject::connect(model, SIGNAL(columnsAboutToBeInserted(QModelIndex,int,int)), + q, SLOT(_q_columnsAboutToBeInserted(QModelIndex,int,int))); + QObject::connect(model, SIGNAL(rowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)), + q, SLOT(_q_layoutAboutToBeChanged())); + QObject::connect(model, SIGNAL(columnsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)), + q, SLOT(_q_layoutAboutToBeChanged())); + QObject::connect(model, SIGNAL(rowsMoved(QModelIndex,int,int,QModelIndex,int)), + q, SLOT(_q_layoutChanged())); + QObject::connect(model, SIGNAL(columnsMoved(QModelIndex,int,int,QModelIndex,int)), + q, SLOT(_q_layoutChanged())); + QObject::connect(model, SIGNAL(layoutAboutToBeChanged()), + q, SLOT(_q_layoutAboutToBeChanged())); + QObject::connect(model, SIGNAL(layoutChanged()), + q, SLOT(_q_layoutChanged())); + } +} + +/*! + \internal + + returns a QItemSelection where all ranges have been expanded to: + Rows: left: 0 and right: columnCount()-1 + Columns: top: 0 and bottom: rowCount()-1 +*/ + +QItemSelection QItemSelectionModelPrivate::expandSelection(const QItemSelection &selection, + QItemSelectionModel::SelectionFlags command) const +{ + if (selection.isEmpty() && !((command & QItemSelectionModel::Rows) || + (command & QItemSelectionModel::Columns))) + return selection; + + QItemSelection expanded; + if (command & QItemSelectionModel::Rows) { + for (int i = 0; i < selection.count(); ++i) { + QModelIndex parent = selection.at(i).parent(); + int colCount = model->columnCount(parent); + QModelIndex tl = model->index(selection.at(i).top(), 0, parent); + QModelIndex br = model->index(selection.at(i).bottom(), colCount - 1, parent); + //we need to merge because the same row could have already been inserted + expanded.merge(QItemSelection(tl, br), QItemSelectionModel::Select); + } + } + if (command & QItemSelectionModel::Columns) { + for (int i = 0; i < selection.count(); ++i) { + QModelIndex parent = selection.at(i).parent(); + int rowCount = model->rowCount(parent); + QModelIndex tl = model->index(0, selection.at(i).left(), parent); + QModelIndex br = model->index(rowCount - 1, selection.at(i).right(), parent); + //we need to merge because the same column could have already been inserted + expanded.merge(QItemSelection(tl, br), QItemSelectionModel::Select); + } + } + return expanded; +} + +/*! + \internal +*/ +void QItemSelectionModelPrivate::_q_rowsAboutToBeRemoved(const QModelIndex &parent, + int start, int end) +{ + Q_Q(QItemSelectionModel); + finalize(); + + // update current index + if (currentIndex.isValid() && parent == currentIndex.parent() + && currentIndex.row() >= start && currentIndex.row() <= end) { + QModelIndex old = currentIndex; + if (start > 0) // there are rows left above the change + currentIndex = model->index(start - 1, old.column(), parent); + else if (model && end < model->rowCount(parent) - 1) // there are rows left below the change + currentIndex = model->index(end + 1, old.column(), parent); + else // there are no rows left in the table + currentIndex = QModelIndex(); + emit q->currentChanged(currentIndex, old); + emit q->currentRowChanged(currentIndex, old); + if (currentIndex.column() != old.column()) + emit q->currentColumnChanged(currentIndex, old); + } + + QItemSelection deselected; + QItemSelection newParts; + QItemSelection::iterator it = ranges.begin(); + while (it != ranges.end()) { + if (it->topLeft().parent() != parent) { // Check parents until reaching root or contained in range + QModelIndex itParent = it->topLeft().parent(); + while (itParent.isValid() && itParent.parent() != parent) + itParent = itParent.parent(); + + if (itParent.isValid() && start <= itParent.row() && itParent.row() <= end) { + deselected.append(*it); + it = ranges.erase(it); + } else { + ++it; + } + } else if (start <= it->bottom() && it->bottom() <= end // Full inclusion + && start <= it->top() && it->top() <= end) { + deselected.append(*it); + it = ranges.erase(it); + } else if (start <= it->top() && it->top() <= end) { // Top intersection + deselected.append(QItemSelectionRange(it->topLeft(), model->index(end, it->left(), it->parent()))); + *it = QItemSelectionRange(model->index(end + 1, it->left(), it->parent()), it->bottomRight()); + ++it; + } else if (start <= it->bottom() && it->bottom() <= end) { // Bottom intersection + deselected.append(QItemSelectionRange(model->index(start, it->right(), it->parent()), it->bottomRight())); + *it = QItemSelectionRange(it->topLeft(), model->index(start - 1, it->right(), it->parent())); + ++it; + } else if (it->top() < start && end < it->bottom()) { // Middle intersection + // If the parent contains (1, 2, 3, 4, 5, 6, 7, 8) and [3, 4, 5, 6] is selected, + // and [4, 5] is removed, we need to split [3, 4, 5, 6] into [3], [4, 5] and [6]. + // [4, 5] is appended to deselected, and [3] and [6] remain part of the selection + // in ranges. + const QItemSelectionRange removedRange(model->index(start, it->right(), it->parent()), + model->index(end, it->left(), it->parent())); + deselected.append(removedRange); + QItemSelection::split(*it, removedRange, &newParts); + it = ranges.erase(it); + } else + ++it; + } + ranges.append(newParts); + + if (!deselected.isEmpty()) + emit q->selectionChanged(QItemSelection(), deselected); +} + +/*! + \internal +*/ +void QItemSelectionModelPrivate::_q_columnsAboutToBeRemoved(const QModelIndex &parent, + int start, int end) +{ + Q_Q(QItemSelectionModel); + + // update current index + if (currentIndex.isValid() && parent == currentIndex.parent() + && currentIndex.column() >= start && currentIndex.column() <= end) { + QModelIndex old = currentIndex; + if (start > 0) // there are columns to the left of the change + currentIndex = model->index(old.row(), start - 1, parent); + else if (model && end < model->columnCount() - 1) // there are columns to the right of the change + currentIndex = model->index(old.row(), end + 1, parent); + else // there are no columns left in the table + currentIndex = QModelIndex(); + emit q->currentChanged(currentIndex, old); + if (currentIndex.row() != old.row()) + emit q->currentRowChanged(currentIndex, old); + emit q->currentColumnChanged(currentIndex, old); + } + + // update selections + QModelIndex tl = model->index(0, start, parent); + QModelIndex br = model->index(model->rowCount(parent) - 1, end, parent); + q->select(QItemSelection(tl, br), QItemSelectionModel::Deselect); + finalize(); +} + +/*! + \internal + + Split selection ranges if columns are about to be inserted in the middle. +*/ +void QItemSelectionModelPrivate::_q_columnsAboutToBeInserted(const QModelIndex &parent, + int start, int end) +{ + Q_UNUSED(end); + finalize(); + QList split; + QList::iterator it = ranges.begin(); + for (; it != ranges.end(); ) { + if ((*it).isValid() && (*it).parent() == parent + && (*it).left() < start && (*it).right() >= start) { + QModelIndex bottomMiddle = model->index((*it).bottom(), start - 1, (*it).parent()); + QItemSelectionRange left((*it).topLeft(), bottomMiddle); + QModelIndex topMiddle = model->index((*it).top(), start, (*it).parent()); + QItemSelectionRange right(topMiddle, (*it).bottomRight()); + it = ranges.erase(it); + split.append(left); + split.append(right); + } else { + ++it; + } + } + ranges += split; +} + +/*! + \internal + + Split selection ranges if rows are about to be inserted in the middle. +*/ +void QItemSelectionModelPrivate::_q_rowsAboutToBeInserted(const QModelIndex &parent, + int start, int end) +{ + Q_UNUSED(end); + finalize(); + QList split; + QList::iterator it = ranges.begin(); + for (; it != ranges.end(); ) { + if ((*it).isValid() && (*it).parent() == parent + && (*it).top() < start && (*it).bottom() >= start) { + QModelIndex middleRight = model->index(start - 1, (*it).right(), (*it).parent()); + QItemSelectionRange top((*it).topLeft(), middleRight); + QModelIndex middleLeft = model->index(start, (*it).left(), (*it).parent()); + QItemSelectionRange bottom(middleLeft, (*it).bottomRight()); + it = ranges.erase(it); + split.append(top); + split.append(bottom); + } else { + ++it; + } + } + ranges += split; +} + +/*! + \internal + + Split selection into individual (persistent) indexes. This is done in + preparation for the layoutChanged() signal, where the indexes can be + merged again. +*/ +void QItemSelectionModelPrivate::_q_layoutAboutToBeChanged() +{ + savedPersistentIndexes.clear(); + savedPersistentCurrentIndexes.clear(); + + // optimization for when all indexes are selected + // (only if there is lots of items (1000) because this is not entirely correct) + if (ranges.isEmpty() && currentSelection.count() == 1) { + QItemSelectionRange range = currentSelection.first(); + QModelIndex parent = range.parent(); + tableRowCount = model->rowCount(parent); + tableColCount = model->columnCount(parent); + if (tableRowCount * tableColCount > 1000 + && range.top() == 0 + && range.left() == 0 + && range.bottom() == tableRowCount - 1 + && range.right() == tableColCount - 1) { + tableSelected = true; + tableParent = parent; + return; + } + } + tableSelected = false; + + QModelIndexList indexes = ranges.indexes(); + QModelIndexList::const_iterator it; + for (it = indexes.constBegin(); it != indexes.constEnd(); ++it) + savedPersistentIndexes.append(QPersistentModelIndex(*it)); + indexes = currentSelection.indexes(); + for (it = indexes.constBegin(); it != indexes.constEnd(); ++it) + savedPersistentCurrentIndexes.append(QPersistentModelIndex(*it)); +} + +/*! + \internal + + Merges \a indexes into an item selection made up of ranges. + Assumes that the indexes are sorted. +*/ +static QItemSelection mergeIndexes(const QList &indexes) +{ + QItemSelection colSpans; + // merge columns + int i = 0; + while (i < indexes.count()) { + QModelIndex tl = indexes.at(i); + QModelIndex br = tl; + while (++i < indexes.count()) { + QModelIndex next = indexes.at(i); + if ((next.parent() == br.parent()) + && (next.row() == br.row()) + && (next.column() == br.column() + 1)) + br = next; + else + break; + } + colSpans.append(QItemSelectionRange(tl, br)); + } + // merge rows + QItemSelection rowSpans; + i = 0; + while (i < colSpans.count()) { + QModelIndex tl = colSpans.at(i).topLeft(); + QModelIndex br = colSpans.at(i).bottomRight(); + QModelIndex prevTl = tl; + while (++i < colSpans.count()) { + QModelIndex nextTl = colSpans.at(i).topLeft(); + QModelIndex nextBr = colSpans.at(i).bottomRight(); + + if (nextTl.parent() != tl.parent()) + break; // we can't merge selection ranges from different parents + + if ((nextTl.column() == prevTl.column()) && (nextBr.column() == br.column()) + && (nextTl.row() == prevTl.row() + 1) && (nextBr.row() == br.row() + 1)) { + br = nextBr; + prevTl = nextTl; + } else { + break; + } + } + rowSpans.append(QItemSelectionRange(tl, br)); + } + return rowSpans; +} + +/*! + \internal + + Merge the selected indexes into selection ranges again. +*/ +void QItemSelectionModelPrivate::_q_layoutChanged() +{ + // special case for when all indexes are selected + if (tableSelected && tableColCount == model->columnCount(tableParent) + && tableRowCount == model->rowCount(tableParent)) { + ranges.clear(); + currentSelection.clear(); + int bottom = tableRowCount - 1; + int right = tableColCount - 1; + QModelIndex tl = model->index(0, 0, tableParent); + QModelIndex br = model->index(bottom, right, tableParent); + currentSelection << QItemSelectionRange(tl, br); + tableParent = QModelIndex(); + tableSelected = false; + return; + } + + if (savedPersistentCurrentIndexes.isEmpty() && savedPersistentIndexes.isEmpty()) { + // either the selection was actually empty, or we + // didn't get the layoutAboutToBeChanged() signal + return; + } + // clear the "old" selection + ranges.clear(); + currentSelection.clear(); + + // sort the "new" selection, as preparation for merging + qStableSort(savedPersistentIndexes.begin(), savedPersistentIndexes.end()); + qStableSort(savedPersistentCurrentIndexes.begin(), savedPersistentCurrentIndexes.end()); + + // update the selection by merging the individual indexes + ranges = mergeIndexes(savedPersistentIndexes); + currentSelection = mergeIndexes(savedPersistentCurrentIndexes); + + // release the persistent indexes + savedPersistentIndexes.clear(); + savedPersistentCurrentIndexes.clear(); +} + +/*! + \class QItemSelectionModel + + \brief The QItemSelectionModel class keeps track of a view's selected items. + + \ingroup model-view + \inmodule QtCore + + A QItemSelectionModel keeps track of the selected items in a view, or + in several views onto the same model. It also keeps track of the + currently selected item in a view. + + The QItemSelectionModel class is one of the \l{Model/View Classes} + and is part of Qt's \l{Model/View Programming}{model/view framework}. + + The selected items are stored using ranges. Whenever you want to + modify the selected items use select() and provide either a + QItemSelection, or a QModelIndex and a QItemSelectionModel::SelectionFlag. + + The QItemSelectionModel takes a two layer approach to selection + management, dealing with both selected items that have been committed + and items that are part of the current selection. The current + selected items are part of the current interactive selection (for + example with rubber-band selection or keyboard-shift selections). + + To update the currently selected items, use the bitwise OR of + QItemSelectionModel::Current and any of the other SelectionFlags. + If you omit the QItemSelectionModel::Current command, a new current + selection will be created, and the previous one added to the whole + selection. All functions operate on both layers; for example, + selectedItems() will return items from both layers. + + \sa {Model/View Programming}, QAbstractItemModel, {Chart Example} +*/ + +/*! + Constructs a selection model that operates on the specified item \a model. +*/ +QItemSelectionModel::QItemSelectionModel(QAbstractItemModel *model) + : QObject(*new QItemSelectionModelPrivate, model) +{ + d_func()->initModel(model); +} + +/*! + Constructs a selection model that operates on the specified item \a model with \a parent. +*/ +QItemSelectionModel::QItemSelectionModel(QAbstractItemModel *model, QObject *parent) + : QObject(*new QItemSelectionModelPrivate, parent) +{ + d_func()->initModel(model); +} + +/*! + \internal +*/ +QItemSelectionModel::QItemSelectionModel(QItemSelectionModelPrivate &dd, QAbstractItemModel *model) + : QObject(dd, model) +{ + dd.initModel(model); +} + +/*! + Destroys the selection model. +*/ +QItemSelectionModel::~QItemSelectionModel() +{ +} + +/*! + Selects the model item \a index using the specified \a command, and emits + selectionChanged(). + + \sa QItemSelectionModel::SelectionFlags +*/ +void QItemSelectionModel::select(const QModelIndex &index, QItemSelectionModel::SelectionFlags command) +{ + QItemSelection selection(index, index); + select(selection, command); +} + +/*! + \fn void QItemSelectionModel::currentChanged(const QModelIndex ¤t, const QModelIndex &previous) + + This signal is emitted whenever the current item changes. The \a previous + model item index is replaced by the \a current index as the selection's + current item. + + Note that this signal will not be emitted when the item model is reset. + + \sa currentIndex() setCurrentIndex() selectionChanged() +*/ + +/*! + \fn void QItemSelectionModel::currentColumnChanged(const QModelIndex ¤t, const QModelIndex &previous) + + This signal is emitted if the \a current item changes and its column is + different to the column of the \a previous current item. + + Note that this signal will not be emitted when the item model is reset. + + \sa currentChanged() currentRowChanged() currentIndex() setCurrentIndex() +*/ + +/*! + \fn void QItemSelectionModel::currentRowChanged(const QModelIndex ¤t, const QModelIndex &previous) + + This signal is emitted if the \a current item changes and its row is + different to the row of the \a previous current item. + + Note that this signal will not be emitted when the item model is reset. + + \sa currentChanged() currentColumnChanged() currentIndex() setCurrentIndex() +*/ + +/*! + \fn void QItemSelectionModel::selectionChanged(const QItemSelection &selected, const QItemSelection &deselected) + + This signal is emitted whenever the selection changes. The change in the + selection is represented as an item selection of \a deselected items and + an item selection of \a selected items. + + Note the that the current index changes independently from the selection. + Also note that this signal will not be emitted when the item model is reset. + + \sa select() currentChanged() +*/ + +/*! + \enum QItemSelectionModel::SelectionFlag + + This enum describes the way the selection model will be updated. + + \value NoUpdate No selection will be made. + \value Clear The complete selection will be cleared. + \value Select All specified indexes will be selected. + \value Deselect All specified indexes will be deselected. + \value Toggle All specified indexes will be selected or + deselected depending on their current state. + \value Current The current selection will be updated. + \value Rows All indexes will be expanded to span rows. + \value Columns All indexes will be expanded to span columns. + \value SelectCurrent A combination of Select and Current, provided for + convenience. + \value ToggleCurrent A combination of Toggle and Current, provided for + convenience. + \value ClearAndSelect A combination of Clear and Select, provided for + convenience. +*/ + +/*! + Selects the item \a selection using the specified \a command, and emits + selectionChanged(). + + \sa QItemSelectionModel::SelectionFlag +*/ +void QItemSelectionModel::select(const QItemSelection &selection, QItemSelectionModel::SelectionFlags command) +{ + Q_D(QItemSelectionModel); + if (command == NoUpdate) + return; + + // store old selection + QItemSelection sel = selection; + // If d->ranges is non-empty when the source model is reset the persistent indexes + // it contains will be invalid. We can't clear them in a modelReset slot because that might already + // be too late if another model observer is connected to the same modelReset slot and is invoked first + // it might call select() on this selection model before any such QItemSelectionModelPrivate::_q_modelReset() slot + // is invoked, so it would not be cleared yet. We clear it invalid ranges in it here. + QItemSelection::iterator it = d->ranges.begin(); + while (it != d->ranges.end()) { + if (!it->isValid()) + it = d->ranges.erase(it); + else + ++it; + } + + QItemSelection old = d->ranges; + old.merge(d->currentSelection, d->currentCommand); + + // expand selection according to SelectionBehavior + if (command & Rows || command & Columns) + sel = d->expandSelection(sel, command); + + // clear ranges and currentSelection + if (command & Clear) { + d->ranges.clear(); + d->currentSelection.clear(); + } + + // merge and clear currentSelection if Current was not set (ie. start new currentSelection) + if (!(command & Current)) + d->finalize(); + + // update currentSelection + if (command & Toggle || command & Select || command & Deselect) { + d->currentCommand = command; + d->currentSelection = sel; + } + + // generate new selection, compare with old and emit selectionChanged() + QItemSelection newSelection = d->ranges; + newSelection.merge(d->currentSelection, d->currentCommand); + emitSelectionChanged(newSelection, old); +} + +/*! + Clears the selection model. Emits selectionChanged() and currentChanged(). +*/ +void QItemSelectionModel::clear() +{ + clearSelection(); + clearCurrentIndex(); +} + +/*! + Clears the current index. Emits currentChanged(). + */ +void QItemSelectionModel::clearCurrentIndex() +{ + Q_D(QItemSelectionModel); + QModelIndex previous = d->currentIndex; + d->currentIndex = QModelIndex(); + if (previous.isValid()) { + emit currentChanged(d->currentIndex, previous); + emit currentRowChanged(d->currentIndex, previous); + emit currentColumnChanged(d->currentIndex, previous); + } +} + +/*! + Clears the selection model. Does not emit any signals. +*/ +void QItemSelectionModel::reset() +{ + bool block = blockSignals(true); + clear(); + blockSignals(block); +} + +/*! + \since 4.2 + Clears the selection in the selection model. Emits selectionChanged(). +*/ +void QItemSelectionModel::clearSelection() +{ + Q_D(QItemSelectionModel); + if (d->ranges.count() == 0 && d->currentSelection.count() == 0) + return; + + select(QItemSelection(), Clear); +} + + +/*! + Sets the model item \a index to be the current item, and emits + currentChanged(). The current item is used for keyboard navigation and + focus indication; it is independent of any selected items, although a + selected item can also be the current item. + + Depending on the specified \a command, the \a index can also become part + of the current selection. + \sa select() +*/ +void QItemSelectionModel::setCurrentIndex(const QModelIndex &index, QItemSelectionModel::SelectionFlags command) +{ + Q_D(QItemSelectionModel); + if (index == d->currentIndex) { + if (command != NoUpdate) + select(index, command); // select item + return; + } + QPersistentModelIndex previous = d->currentIndex; + d->currentIndex = index; // set current before emitting selection changed below + if (command != NoUpdate) + select(d->currentIndex, command); // select item + emit currentChanged(d->currentIndex, previous); + if (d->currentIndex.row() != previous.row() || + d->currentIndex.parent() != previous.parent()) + emit currentRowChanged(d->currentIndex, previous); + if (d->currentIndex.column() != previous.column() || + d->currentIndex.parent() != previous.parent()) + emit currentColumnChanged(d->currentIndex, previous); +} + +/*! + Returns the model item index for the current item, or an invalid index + if there is no current item. +*/ +QModelIndex QItemSelectionModel::currentIndex() const +{ + return static_cast(d_func()->currentIndex); +} + +/*! + Returns true if the given model item \a index is selected. +*/ +bool QItemSelectionModel::isSelected(const QModelIndex &index) const +{ + Q_D(const QItemSelectionModel); + if (d->model != index.model() || !index.isValid()) + return false; + + bool selected = false; + // search model ranges + QList::const_iterator it = d->ranges.begin(); + for (; it != d->ranges.end(); ++it) { + if ((*it).isValid() && (*it).contains(index)) { + selected = true; + break; + } + } + + // check currentSelection + if (d->currentSelection.count()) { + if ((d->currentCommand & Deselect) && selected) + selected = !d->currentSelection.contains(index); + else if (d->currentCommand & Toggle) + selected ^= d->currentSelection.contains(index); + else if ((d->currentCommand & Select) && !selected) + selected = d->currentSelection.contains(index); + } + + if (selected) { + Qt::ItemFlags flags = d->model->flags(index); + return (flags & Qt::ItemIsSelectable); + } + + return false; +} + +/*! + Returns true if all items are selected in the \a row with the given + \a parent. + + Note that this function is usually faster than calling isSelected() + on all items in the same row and that unselectable items are + ignored. +*/ +bool QItemSelectionModel::isRowSelected(int row, const QModelIndex &parent) const +{ + Q_D(const QItemSelectionModel); + if (parent.isValid() && d->model != parent.model()) + return false; + + // return false if row exist in currentSelection (Deselect) + if (d->currentCommand & Deselect && d->currentSelection.count()) { + for (int i=0; icurrentSelection.count(); ++i) { + if (d->currentSelection.at(i).parent() == parent && + row >= d->currentSelection.at(i).top() && + row <= d->currentSelection.at(i).bottom()) + return false; + } + } + // return false if ranges in both currentSelection and ranges + // intersect and have the same row contained + if (d->currentCommand & Toggle && d->currentSelection.count()) { + for (int i=0; icurrentSelection.count(); ++i) + if (d->currentSelection.at(i).top() <= row && + d->currentSelection.at(i).bottom() >= row) + for (int j=0; jranges.count(); ++j) + if (d->ranges.at(j).top() <= row && d->ranges.at(j).bottom() >= row + && d->currentSelection.at(i).intersected(d->ranges.at(j)).isValid()) + return false; + } + // add ranges and currentSelection and check through them all + QList::const_iterator it; + QList joined = d->ranges; + if (d->currentSelection.count()) + joined += d->currentSelection; + int colCount = d->model->columnCount(parent); + for (int column = 0; column < colCount; ++column) { + for (it = joined.constBegin(); it != joined.constEnd(); ++it) { + if ((*it).contains(row, column, parent)) { + bool selectable = false; + for (int i = column; !selectable && i <= (*it).right(); ++i) { + Qt::ItemFlags flags = d->model->index(row, i, parent).flags(); + selectable = flags & Qt::ItemIsSelectable; + } + if (selectable){ + column = qMax(column, (*it).right()); + break; + } + } + } + if (it == joined.constEnd()) + return false; + } + return colCount > 0; // no columns means no selected items +} + +/*! + Returns true if all items are selected in the \a column with the given + \a parent. + + Note that this function is usually faster than calling isSelected() + on all items in the same column and that unselectable items are + ignored. +*/ +bool QItemSelectionModel::isColumnSelected(int column, const QModelIndex &parent) const +{ + Q_D(const QItemSelectionModel); + if (parent.isValid() && d->model != parent.model()) + return false; + + // return false if column exist in currentSelection (Deselect) + if (d->currentCommand & Deselect && d->currentSelection.count()) { + for (int i = 0; i < d->currentSelection.count(); ++i) { + if (d->currentSelection.at(i).parent() == parent && + column >= d->currentSelection.at(i).left() && + column <= d->currentSelection.at(i).right()) + return false; + } + } + // return false if ranges in both currentSelection and the selection model + // intersect and have the same column contained + if (d->currentCommand & Toggle && d->currentSelection.count()) { + for (int i = 0; i < d->currentSelection.count(); ++i) { + if (d->currentSelection.at(i).left() <= column && + d->currentSelection.at(i).right() >= column) { + for (int j = 0; j < d->ranges.count(); ++j) { + if (d->ranges.at(j).left() <= column && d->ranges.at(j).right() >= column + && d->currentSelection.at(i).intersected(d->ranges.at(j)).isValid()) { + return false; + } + } + } + } + } + // add ranges and currentSelection and check through them all + QList::const_iterator it; + QList joined = d->ranges; + if (d->currentSelection.count()) + joined += d->currentSelection; + int rowCount = d->model->rowCount(parent); + for (int row = 0; row < rowCount; ++row) { + for (it = joined.constBegin(); it != joined.constEnd(); ++it) { + if ((*it).contains(row, column, parent)) { + Qt::ItemFlags flags = d->model->index(row, column, parent).flags(); + if ((flags & Qt::ItemIsSelectable) && (flags & Qt::ItemIsEnabled)) { + row = qMax(row, (*it).bottom()); + break; + } + } + } + if (it == joined.constEnd()) + return false; + } + return rowCount > 0; // no rows means no selected items +} + +/*! + Returns true if there are any items selected in the \a row with the given + \a parent. +*/ +bool QItemSelectionModel::rowIntersectsSelection(int row, const QModelIndex &parent) const +{ + Q_D(const QItemSelectionModel); + if (parent.isValid() && d->model != parent.model()) + return false; + + QItemSelection sel = d->ranges; + sel.merge(d->currentSelection, d->currentCommand); + for (int i = 0; i < sel.count(); ++i) { + int top = sel.at(i).top(); + int bottom = sel.at(i).bottom(); + int left = sel.at(i).left(); + int right = sel.at(i).right(); + if (top <= row && bottom >= row) { + for (int j = left; j <= right; j++) { + const Qt::ItemFlags flags = d->model->index(row, j, parent).flags(); + if ((flags & Qt::ItemIsSelectable) && (flags & Qt::ItemIsEnabled)) + return true; + } + } + } + + return false; +} + +/*! + Returns true if there are any items selected in the \a column with the given + \a parent. +*/ +bool QItemSelectionModel::columnIntersectsSelection(int column, const QModelIndex &parent) const +{ + Q_D(const QItemSelectionModel); + if (parent.isValid() && d->model != parent.model()) + return false; + + QItemSelection sel = d->ranges; + sel.merge(d->currentSelection, d->currentCommand); + for (int i = 0; i < sel.count(); ++i) { + int left = sel.at(i).left(); + int right = sel.at(i).right(); + int top = sel.at(i).top(); + int bottom = sel.at(i).bottom(); + if (left <= column && right >= column) { + for (int j = top; j <= bottom; j++) { + const Qt::ItemFlags flags = d->model->index(j, column, parent).flags(); + if ((flags & Qt::ItemIsSelectable) && (flags & Qt::ItemIsEnabled)) + return true; + } + } + } + + return false; +} + +/*! + \since 4.2 + + Returns true if the selection model contains any selection ranges; + otherwise returns false. +*/ +bool QItemSelectionModel::hasSelection() const +{ + Q_D(const QItemSelectionModel); + if (d->currentCommand & (Toggle | Deselect)) { + QItemSelection sel = d->ranges; + sel.merge(d->currentSelection, d->currentCommand); + return !sel.isEmpty(); + } else { + return !(d->ranges.isEmpty() && d->currentSelection.isEmpty()); + } +} + +/*! + Returns a list of all selected model item indexes. The list contains no + duplicates, and is not sorted. +*/ +QModelIndexList QItemSelectionModel::selectedIndexes() const +{ + Q_D(const QItemSelectionModel); + QItemSelection selected = d->ranges; + selected.merge(d->currentSelection, d->currentCommand); + return selected.indexes(); +} + +/*! + \since 4.2 + Returns the indexes in the given \a column for the rows where all columns are selected. + + \sa selectedIndexes(), selectedColumns() +*/ + +QModelIndexList QItemSelectionModel::selectedRows(int column) const +{ + QModelIndexList indexes; + //the QSet contains pairs of parent modelIndex + //and row number + QSet< QPair > rowsSeen; + + const QItemSelection ranges = selection(); + for (int i = 0; i < ranges.count(); ++i) { + const QItemSelectionRange &range = ranges.at(i); + QModelIndex parent = range.parent(); + for (int row = range.top(); row <= range.bottom(); row++) { + QPair rowDef = qMakePair(parent, row); + if (!rowsSeen.contains(rowDef)) { + rowsSeen << rowDef; + if (isRowSelected(row, parent)) { + indexes.append(model()->index(row, column, parent)); + } + } + } + } + + return indexes; +} + +/*! + \since 4.2 + Returns the indexes in the given \a row for columns where all rows are selected. + + \sa selectedIndexes(), selectedRows() +*/ + +QModelIndexList QItemSelectionModel::selectedColumns(int row) const +{ + QModelIndexList indexes; + //the QSet contains pairs of parent modelIndex + //and column number + QSet< QPair > columnsSeen; + + const QItemSelection ranges = selection(); + for (int i = 0; i < ranges.count(); ++i) { + const QItemSelectionRange &range = ranges.at(i); + QModelIndex parent = range.parent(); + for (int column = range.left(); column <= range.right(); column++) { + QPair columnDef = qMakePair(parent, column); + if (!columnsSeen.contains(columnDef)) { + columnsSeen << columnDef; + if (isColumnSelected(column, parent)) { + indexes.append(model()->index(row, column, parent)); + } + } + } + } + + return indexes; +} + +/*! + Returns the selection ranges stored in the selection model. +*/ +const QItemSelection QItemSelectionModel::selection() const +{ + Q_D(const QItemSelectionModel); + QItemSelection selected = d->ranges; + selected.merge(d->currentSelection, d->currentCommand); + int i = 0; + // make sure we have no invalid ranges + // ### should probably be handled more generic somewhere else + while (imodel; +} + +/*! + Compares the two selections \a newSelection and \a oldSelection + and emits selectionChanged() with the deselected and selected items. +*/ +void QItemSelectionModel::emitSelectionChanged(const QItemSelection &newSelection, + const QItemSelection &oldSelection) +{ + // if both selections are empty or equal we return + if ((oldSelection.isEmpty() && newSelection.isEmpty()) || + oldSelection == newSelection) + return; + + // if either selection is empty we do not need to compare + if (oldSelection.isEmpty() || newSelection.isEmpty()) { + emit selectionChanged(newSelection, oldSelection); + return; + } + + QItemSelection deselected = oldSelection; + QItemSelection selected = newSelection; + + // remove equal ranges + bool advance; + for (int o = 0; o < deselected.count(); ++o) { + advance = true; + for (int s = 0; s < selected.count() && o < deselected.count();) { + if (deselected.at(o) == selected.at(s)) { + deselected.removeAt(o); + selected.removeAt(s); + advance = false; + } else { + ++s; + } + } + if (advance) + ++o; + } + + // find intersections + QItemSelection intersections; + for (int o = 0; o < deselected.count(); ++o) { + for (int s = 0; s < selected.count(); ++s) { + if (deselected.at(o).intersects(selected.at(s))) + intersections.append(deselected.at(o).intersected(selected.at(s))); + } + } + + // compare remaining ranges with intersections and split them to find deselected and selected + for (int i = 0; i < intersections.count(); ++i) { + // split deselected + for (int o = 0; o < deselected.count();) { + if (deselected.at(o).intersects(intersections.at(i))) { + QItemSelection::split(deselected.at(o), intersections.at(i), &deselected); + deselected.removeAt(o); + } else { + ++o; + } + } + // split selected + for (int s = 0; s < selected.count();) { + if (selected.at(s).intersects(intersections.at(i))) { + QItemSelection::split(selected.at(s), intersections.at(i), &selected); + selected.removeAt(s); + } else { + ++s; + } + } + } + + if (!selected.isEmpty() || !deselected.isEmpty()) + emit selectionChanged(selected, deselected); +} + +#ifndef QT_NO_DEBUG_STREAM +QDebug operator<<(QDebug dbg, const QItemSelectionRange &range) +{ +#ifndef Q_BROKEN_DEBUG_STREAM + dbg.nospace() << "QItemSelectionRange(" << range.topLeft() + << ',' << range.bottomRight() << ')'; + return dbg.space(); +#else + qWarning("This compiler doesn't support streaming QItemSelectionRange to QDebug"); + return dbg; + Q_UNUSED(range); +#endif +} +#endif + +QT_END_NAMESPACE + +#include "moc_qitemselectionmodel.cpp" + +#endif // QT_NO_ITEMVIEWS diff --git a/src/corelib/itemmodels/qitemselectionmodel.h b/src/corelib/itemmodels/qitemselectionmodel.h new file mode 100644 index 0000000000..be1f34f9a2 --- /dev/null +++ b/src/corelib/itemmodels/qitemselectionmodel.h @@ -0,0 +1,256 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtGui module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QITEMSELECTIONMODEL_H +#define QITEMSELECTIONMODEL_H + +#include +#include +#include +#include + +QT_BEGIN_HEADER + +QT_BEGIN_NAMESPACE + +QT_MODULE(Core) + +#ifndef QT_NO_ITEMVIEWS + +class Q_CORE_EXPORT QItemSelectionRange +{ + +public: + inline QItemSelectionRange() {} + inline QItemSelectionRange(const QItemSelectionRange &other) + : tl(other.tl), br(other.br) {} + inline QItemSelectionRange(const QModelIndex &topLeft, const QModelIndex &bottomRight); + explicit inline QItemSelectionRange(const QModelIndex &index) + { tl = index; br = tl; } + + inline int top() const { return tl.row(); } + inline int left() const { return tl.column(); } + inline int bottom() const { return br.row(); } + inline int right() const { return br.column(); } + inline int width() const { return br.column() - tl.column() + 1; } + inline int height() const { return br.row() - tl.row() + 1; } + + inline QModelIndex topLeft() const { return QModelIndex(tl); } + inline QModelIndex bottomRight() const { return QModelIndex(br); } + inline QModelIndex parent() const { return tl.parent(); } + inline const QAbstractItemModel *model() const { return tl.model(); } + + inline bool contains(const QModelIndex &index) const + { + return (parent() == index.parent() + && tl.row() <= index.row() && tl.column() <= index.column() + && br.row() >= index.row() && br.column() >= index.column()); + } + + inline bool contains(int row, int column, const QModelIndex &parentIndex) const + { + return (parent() == parentIndex + && tl.row() <= row && tl.column() <= column + && br.row() >= row && br.column() >= column); + } + + bool intersects(const QItemSelectionRange &other) const; + QItemSelectionRange intersect(const QItemSelectionRange &other) const; // ### Qt 5: make QT4_SUPPORT + inline QItemSelectionRange intersected(const QItemSelectionRange &other) const + { return intersect(other); } + + inline bool operator==(const QItemSelectionRange &other) const + { return (tl == other.tl && br == other.br); } + inline bool operator!=(const QItemSelectionRange &other) const + { return !operator==(other); } + inline bool operator<(const QItemSelectionRange &other) const + { + // Comparing parents will compare the models, but if two equivalent ranges + // in two different models have invalid parents, they would appear the same + if (other.tl.model() == tl.model()) { + // parent has to be calculated, so we only do so once. + const QModelIndex topLeftParent = tl.parent(); + const QModelIndex otherTopLeftParent = other.tl.parent(); + if (topLeftParent == otherTopLeftParent) { + if (other.tl.row() == tl.row()) { + if (other.tl.column() == tl.column()) { + if (other.br.row() == br.row()) { + return br.column() < other.br.column(); + } + return br.row() < other.br.row(); + } + return tl.column() < other.tl.column(); + } + return tl.row() < other.tl.row(); + } + return topLeftParent < otherTopLeftParent; + } + return tl.model() < other.tl.model(); + } + + inline bool isValid() const + { + return (tl.isValid() && br.isValid() && tl.parent() == br.parent() + && top() <= bottom() && left() <= right()); + } + + bool isEmpty() const; + + QModelIndexList indexes() const; + +private: + QPersistentModelIndex tl, br; +}; +Q_DECLARE_TYPEINFO(QItemSelectionRange, Q_MOVABLE_TYPE); + +inline QItemSelectionRange::QItemSelectionRange(const QModelIndex &atopLeft, + const QModelIndex &abottomRight) +{ tl = atopLeft; br = abottomRight; } + +class QItemSelection; +class QItemSelectionModelPrivate; + +class Q_CORE_EXPORT QItemSelectionModel : public QObject +{ + Q_OBJECT + Q_DECLARE_PRIVATE(QItemSelectionModel) + Q_FLAGS(SelectionFlags) + +public: + + enum SelectionFlag { + NoUpdate = 0x0000, + Clear = 0x0001, + Select = 0x0002, + Deselect = 0x0004, + Toggle = 0x0008, + Current = 0x0010, + Rows = 0x0020, + Columns = 0x0040, + SelectCurrent = Select | Current, + ToggleCurrent = Toggle | Current, + ClearAndSelect = Clear | Select + }; + + Q_DECLARE_FLAGS(SelectionFlags, SelectionFlag) + + explicit QItemSelectionModel(QAbstractItemModel *model); + explicit QItemSelectionModel(QAbstractItemModel *model, QObject *parent); + virtual ~QItemSelectionModel(); + + QModelIndex currentIndex() const; + + bool isSelected(const QModelIndex &index) const; + bool isRowSelected(int row, const QModelIndex &parent) const; + bool isColumnSelected(int column, const QModelIndex &parent) const; + + bool rowIntersectsSelection(int row, const QModelIndex &parent) const; + bool columnIntersectsSelection(int column, const QModelIndex &parent) const; + + bool hasSelection() const; + + QModelIndexList selectedIndexes() const; + QModelIndexList selectedRows(int column = 0) const; + QModelIndexList selectedColumns(int row = 0) const; + const QItemSelection selection() const; + + const QAbstractItemModel *model() const; + +public Q_SLOTS: + virtual void setCurrentIndex(const QModelIndex &index, QItemSelectionModel::SelectionFlags command); + virtual void select(const QModelIndex &index, QItemSelectionModel::SelectionFlags command); + virtual void select(const QItemSelection &selection, QItemSelectionModel::SelectionFlags command); + virtual void clear(); + virtual void reset(); + + void clearSelection(); + virtual void clearCurrentIndex(); + +Q_SIGNALS: + void selectionChanged(const QItemSelection &selected, const QItemSelection &deselected); + void currentChanged(const QModelIndex ¤t, const QModelIndex &previous); + void currentRowChanged(const QModelIndex ¤t, const QModelIndex &previous); + void currentColumnChanged(const QModelIndex ¤t, const QModelIndex &previous); + +protected: + QItemSelectionModel(QItemSelectionModelPrivate &dd, QAbstractItemModel *model); + void emitSelectionChanged(const QItemSelection &newSelection, const QItemSelection &oldSelection); + +private: + Q_DISABLE_COPY(QItemSelectionModel) + Q_PRIVATE_SLOT(d_func(), void _q_columnsAboutToBeRemoved(const QModelIndex&, int, int)) + Q_PRIVATE_SLOT(d_func(), void _q_rowsAboutToBeRemoved(const QModelIndex&, int, int)) + Q_PRIVATE_SLOT(d_func(), void _q_columnsAboutToBeInserted(const QModelIndex&, int, int)) + Q_PRIVATE_SLOT(d_func(), void _q_rowsAboutToBeInserted(const QModelIndex&, int, int)) + Q_PRIVATE_SLOT(d_func(), void _q_layoutAboutToBeChanged()) + Q_PRIVATE_SLOT(d_func(), void _q_layoutChanged()) +}; + +Q_DECLARE_OPERATORS_FOR_FLAGS(QItemSelectionModel::SelectionFlags) + +// dummy implentation of qHash() necessary for instantiating QList::toSet() with MSVC +inline uint qHash(const QItemSelectionRange &) { return 0; } + +class Q_CORE_EXPORT QItemSelection : public QList +{ +public: + QItemSelection() {} + QItemSelection(const QModelIndex &topLeft, const QModelIndex &bottomRight); + void select(const QModelIndex &topLeft, const QModelIndex &bottomRight); + bool contains(const QModelIndex &index) const; + QModelIndexList indexes() const; + void merge(const QItemSelection &other, QItemSelectionModel::SelectionFlags command); + static void split(const QItemSelectionRange &range, + const QItemSelectionRange &other, + QItemSelection *result); +}; + +#ifndef QT_NO_DEBUG_STREAM +Q_CORE_EXPORT QDebug operator<<(QDebug, const QItemSelectionRange &); +#endif + +#endif // QT_NO_ITEMVIEWS + +QT_END_NAMESPACE + +QT_END_HEADER + +#endif // QITEMSELECTIONMODEL_H diff --git a/src/corelib/itemmodels/qitemselectionmodel_p.h b/src/corelib/itemmodels/qitemselectionmodel_p.h new file mode 100644 index 0000000000..5eb9ecccda --- /dev/null +++ b/src/corelib/itemmodels/qitemselectionmodel_p.h @@ -0,0 +1,113 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtGui module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QITEMSELECTIONMODEL_P_H +#define QITEMSELECTIONMODEL_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "private/qobject_p.h" + +QT_BEGIN_NAMESPACE + +#ifndef QT_NO_ITEMVIEWS +class QItemSelectionModelPrivate: public QObjectPrivate +{ + Q_DECLARE_PUBLIC(QItemSelectionModel) +public: + QItemSelectionModelPrivate() + : model(0), + currentCommand(QItemSelectionModel::NoUpdate), + tableSelected(false), tableColCount(0), tableRowCount(0) {} + + QItemSelection expandSelection(const QItemSelection &selection, + QItemSelectionModel::SelectionFlags command) const; + + void initModel(QAbstractItemModel *model); + + void _q_rowsAboutToBeRemoved(const QModelIndex &parent, int start, int end); + void _q_columnsAboutToBeRemoved(const QModelIndex &parent, int start, int end); + void _q_rowsAboutToBeInserted(const QModelIndex &parent, int start, int end); + void _q_columnsAboutToBeInserted(const QModelIndex &parent, int start, int end); + void _q_layoutAboutToBeChanged(); + void _q_layoutChanged(); + + inline void remove(QList &r) + { + QList::const_iterator it = r.constBegin(); + for (; it != r.constEnd(); ++it) + ranges.removeAll(*it); + } + + inline void finalize() + { + ranges.merge(currentSelection, currentCommand); + if (!currentSelection.isEmpty()) // ### perhaps this should be in QList + currentSelection.clear(); + } + + QPointer model; + QItemSelection ranges; + QItemSelection currentSelection; + QPersistentModelIndex currentIndex; + QItemSelectionModel::SelectionFlags currentCommand; + QList savedPersistentIndexes; + QList savedPersistentCurrentIndexes; + // optimization when all indexes are selected + bool tableSelected; + QPersistentModelIndex tableParent; + int tableColCount, tableRowCount; +}; + +#endif // QT_NO_ITEMVIEWS + +QT_END_NAMESPACE + +#endif // QITEMSELECTIONMODEL_P_H diff --git a/src/corelib/itemmodels/qsortfilterproxymodel.cpp b/src/corelib/itemmodels/qsortfilterproxymodel.cpp new file mode 100644 index 0000000000..71f68f2409 --- /dev/null +++ b/src/corelib/itemmodels/qsortfilterproxymodel.cpp @@ -0,0 +1,2703 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtGui module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include "qsortfilterproxymodel.h" + +#ifndef QT_NO_SORTFILTERPROXYMODEL + +#include "qitemselectionmodel.h" +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +typedef QList > QModelIndexPairList; + +static inline QSet qVectorToSet(const QVector &vector) +{ + QSet set; + set.reserve(vector.size()); + for(int i=0; i < vector.size(); ++i) + set << vector.at(i); + return set; +} + +class QSortFilterProxyModelLessThan +{ +public: + inline QSortFilterProxyModelLessThan(int column, const QModelIndex &parent, + const QAbstractItemModel *source, + const QSortFilterProxyModel *proxy) + : sort_column(column), source_parent(parent), source_model(source), proxy_model(proxy) {} + + inline bool operator()(int r1, int r2) const + { + QModelIndex i1 = source_model->index(r1, sort_column, source_parent); + QModelIndex i2 = source_model->index(r2, sort_column, source_parent); + return proxy_model->lessThan(i1, i2); + } + +private: + int sort_column; + QModelIndex source_parent; + const QAbstractItemModel *source_model; + const QSortFilterProxyModel *proxy_model; +}; + +class QSortFilterProxyModelGreaterThan +{ +public: + inline QSortFilterProxyModelGreaterThan(int column, const QModelIndex &parent, + const QAbstractItemModel *source, + const QSortFilterProxyModel *proxy) + : sort_column(column), source_parent(parent), + source_model(source), proxy_model(proxy) {} + + inline bool operator()(int r1, int r2) const + { + QModelIndex i1 = source_model->index(r1, sort_column, source_parent); + QModelIndex i2 = source_model->index(r2, sort_column, source_parent); + return proxy_model->lessThan(i2, i1); + } + +private: + int sort_column; + QModelIndex source_parent; + const QAbstractItemModel *source_model; + const QSortFilterProxyModel *proxy_model; +}; + + +//this struct is used to store what are the rows that are removed +//between a call to rowsAboutToBeRemoved and rowsRemoved +//it avoids readding rows to the mapping that are currently being removed +struct QRowsRemoval +{ + QRowsRemoval(const QModelIndex &parent_source, int start, int end) : parent_source(parent_source), start(start), end(end) + { + } + + QRowsRemoval() : start(-1), end(-1) + { + } + + bool contains(QModelIndex parent, int row) + { + do { + if (parent == parent_source) + return row >= start && row <= end; + row = parent.row(); + parent = parent.parent(); + } while (row >= 0); + return false; + } +private: + QModelIndex parent_source; + int start; + int end; +}; + +class QSortFilterProxyModelPrivate : public QAbstractProxyModelPrivate +{ + Q_DECLARE_PUBLIC(QSortFilterProxyModel) + +public: + struct Mapping { + QVector source_rows; + QVector source_columns; + QVector proxy_rows; + QVector proxy_columns; + QVector mapped_children; + QHash::const_iterator map_iter; + }; + + mutable QHash source_index_mapping; + + int source_sort_column; + int proxy_sort_column; + Qt::SortOrder sort_order; + Qt::CaseSensitivity sort_casesensitivity; + int sort_role; + bool sort_localeaware; + + int filter_column; + QRegExp filter_regexp; + int filter_role; + + bool dynamic_sortfilter; + QRowsRemoval itemsBeingRemoved; + + QModelIndexPairList saved_persistent_indexes; + + QHash::const_iterator create_mapping( + const QModelIndex &source_parent) const; + QModelIndex proxy_to_source(const QModelIndex &proxyIndex) const; + QModelIndex source_to_proxy(const QModelIndex &sourceIndex) const; + bool can_create_mapping(const QModelIndex &source_parent) const; + + void remove_from_mapping(const QModelIndex &source_parent); + + inline QHash::const_iterator index_to_iterator( + const QModelIndex &proxy_index) const + { + Q_ASSERT(proxy_index.isValid()); + Q_ASSERT(proxy_index.model() == q_func()); + const void *p = proxy_index.internalPointer(); + Q_ASSERT(p); + QHash::const_iterator it = + static_cast(p)->map_iter; + Q_ASSERT(it != source_index_mapping.constEnd()); + Q_ASSERT(it.value()); + return it; + } + + inline QModelIndex create_index(int row, int column, + QHash::const_iterator it) const + { + return q_func()->createIndex(row, column, *it); + } + + void _q_sourceDataChanged(const QModelIndex &source_top_left, + const QModelIndex &source_bottom_right); + void _q_sourceHeaderDataChanged(Qt::Orientation orientation, int start, int end); + + void _q_sourceAboutToBeReset(); + void _q_sourceReset(); + + void _q_sourceLayoutAboutToBeChanged(const QList &sourceParents); + void _q_sourceLayoutChanged(const QList &sourceParents); + + void _q_sourceRowsAboutToBeInserted(const QModelIndex &source_parent, + int start, int end); + void _q_sourceRowsInserted(const QModelIndex &source_parent, + int start, int end); + void _q_sourceRowsAboutToBeRemoved(const QModelIndex &source_parent, + int start, int end); + void _q_sourceRowsRemoved(const QModelIndex &source_parent, + int start, int end); + void _q_sourceRowsAboutToBeMoved(const QModelIndex &sourceParent, + int sourceStart, int sourceEnd, + const QModelIndex &destParent, int dest); + void _q_sourceRowsMoved(const QModelIndex &sourceParent, + int sourceStart, int sourceEnd, + const QModelIndex &destParent, int dest); + void _q_sourceColumnsAboutToBeInserted(const QModelIndex &source_parent, + int start, int end); + void _q_sourceColumnsInserted(const QModelIndex &source_parent, + int start, int end); + void _q_sourceColumnsAboutToBeRemoved(const QModelIndex &source_parent, + int start, int end); + void _q_sourceColumnsRemoved(const QModelIndex &source_parent, + int start, int end); + void _q_sourceColumnsAboutToBeMoved(const QModelIndex &sourceParent, + int sourceStart, int sourceEnd, + const QModelIndex &destParent, int dest); + void _q_sourceColumnsMoved(const QModelIndex &sourceParent, + int sourceStart, int sourceEnd, + const QModelIndex &destParent, int dest); + + void _q_clearMapping(); + + void sort(); + bool update_source_sort_column(); + void sort_source_rows(QVector &source_rows, + const QModelIndex &source_parent) const; + QVector > > proxy_intervals_for_source_items_to_add( + const QVector &proxy_to_source, const QVector &source_items, + const QModelIndex &source_parent, Qt::Orientation orient) const; + QVector > proxy_intervals_for_source_items( + const QVector &source_to_proxy, const QVector &source_items) const; + void insert_source_items( + QVector &source_to_proxy, QVector &proxy_to_source, + const QVector &source_items, const QModelIndex &source_parent, + Qt::Orientation orient, bool emit_signal = true); + void remove_source_items( + QVector &source_to_proxy, QVector &proxy_to_source, + const QVector &source_items, const QModelIndex &source_parent, + Qt::Orientation orient, bool emit_signal = true); + void remove_proxy_interval( + QVector &source_to_proxy, QVector &proxy_to_source, + int proxy_start, int proxy_end, const QModelIndex &proxy_parent, + Qt::Orientation orient, bool emit_signal = true); + void build_source_to_proxy_mapping( + const QVector &proxy_to_source, QVector &source_to_proxy) const; + void source_items_inserted(const QModelIndex &source_parent, + int start, int end, Qt::Orientation orient); + void source_items_about_to_be_removed(const QModelIndex &source_parent, + int start, int end, Qt::Orientation orient); + void source_items_removed(const QModelIndex &source_parent, + int start, int end, Qt::Orientation orient); + void proxy_item_range( + const QVector &source_to_proxy, const QVector &source_items, + int &proxy_low, int &proxy_high) const; + + QModelIndexPairList store_persistent_indexes(); + void update_persistent_indexes(const QModelIndexPairList &source_indexes); + + void filter_changed(const QModelIndex &source_parent = QModelIndex()); + QSet handle_filter_changed( + QVector &source_to_proxy, QVector &proxy_to_source, + const QModelIndex &source_parent, Qt::Orientation orient); + + void updateChildrenMapping(const QModelIndex &source_parent, Mapping *parent_mapping, + Qt::Orientation orient, int start, int end, int delta_item_count, bool remove); + + virtual void _q_sourceModelDestroyed(); +}; + +typedef QHash IndexMap; + +void QSortFilterProxyModelPrivate::_q_sourceModelDestroyed() +{ + QAbstractProxyModelPrivate::_q_sourceModelDestroyed(); + _q_clearMapping(); +} + +void QSortFilterProxyModelPrivate::remove_from_mapping(const QModelIndex &source_parent) +{ + if (Mapping *m = source_index_mapping.take(source_parent)) { + for (int i = 0; i < m->mapped_children.size(); ++i) + remove_from_mapping(m->mapped_children.at(i)); + delete m; + } +} + +void QSortFilterProxyModelPrivate::_q_clearMapping() +{ + // store the persistent indexes + QModelIndexPairList source_indexes = store_persistent_indexes(); + + qDeleteAll(source_index_mapping); + source_index_mapping.clear(); + if (dynamic_sortfilter && update_source_sort_column()) { + //update_source_sort_column might have created wrong mapping so we have to clear it again + qDeleteAll(source_index_mapping); + source_index_mapping.clear(); + } + + // update the persistent indexes + update_persistent_indexes(source_indexes); +} + +IndexMap::const_iterator QSortFilterProxyModelPrivate::create_mapping( + const QModelIndex &source_parent) const +{ + Q_Q(const QSortFilterProxyModel); + + IndexMap::const_iterator it = source_index_mapping.constFind(source_parent); + if (it != source_index_mapping.constEnd()) // was mapped already + return it; + + Mapping *m = new Mapping; + + int source_rows = model->rowCount(source_parent); + m->source_rows.reserve(source_rows); + for (int i = 0; i < source_rows; ++i) { + if (q->filterAcceptsRow(i, source_parent)) + m->source_rows.append(i); + } + int source_cols = model->columnCount(source_parent); + m->source_columns.reserve(source_cols); + for (int i = 0; i < source_cols; ++i) { + if (q->filterAcceptsColumn(i, source_parent)) + m->source_columns.append(i); + } + + sort_source_rows(m->source_rows, source_parent); + m->proxy_rows.resize(source_rows); + build_source_to_proxy_mapping(m->source_rows, m->proxy_rows); + m->proxy_columns.resize(source_cols); + build_source_to_proxy_mapping(m->source_columns, m->proxy_columns); + + it = IndexMap::const_iterator(source_index_mapping.insert(source_parent, m)); + m->map_iter = it; + + if (source_parent.isValid()) { + QModelIndex source_grand_parent = source_parent.parent(); + IndexMap::const_iterator it2 = create_mapping(source_grand_parent); + Q_ASSERT(it2 != source_index_mapping.constEnd()); + it2.value()->mapped_children.append(source_parent); + } + + Q_ASSERT(it != source_index_mapping.constEnd()); + Q_ASSERT(it.value()); + + return it; +} + +QModelIndex QSortFilterProxyModelPrivate::proxy_to_source(const QModelIndex &proxy_index) const +{ + if (!proxy_index.isValid()) + return QModelIndex(); // for now; we may want to be able to set a root index later + if (proxy_index.model() != q_func()) { + qWarning() << "QSortFilterProxyModel: index from wrong model passed to mapToSource"; + Q_ASSERT(!"QSortFilterProxyModel: index from wrong model passed to mapToSource"); + return QModelIndex(); + } + IndexMap::const_iterator it = index_to_iterator(proxy_index); + Mapping *m = it.value(); + if ((proxy_index.row() >= m->source_rows.size()) || (proxy_index.column() >= m->source_columns.size())) + return QModelIndex(); + int source_row = m->source_rows.at(proxy_index.row()); + int source_col = m->source_columns.at(proxy_index.column()); + return model->index(source_row, source_col, it.key()); +} + +QModelIndex QSortFilterProxyModelPrivate::source_to_proxy(const QModelIndex &source_index) const +{ + if (!source_index.isValid()) + return QModelIndex(); // for now; we may want to be able to set a root index later + if (source_index.model() != model) { + qWarning() << "QSortFilterProxyModel: index from wrong model passed to mapFromSource"; + Q_ASSERT(!"QSortFilterProxyModel: index from wrong model passed to mapFromSource"); + return QModelIndex(); + } + QModelIndex source_parent = source_index.parent(); + IndexMap::const_iterator it = create_mapping(source_parent); + Mapping *m = it.value(); + if ((source_index.row() >= m->proxy_rows.size()) || (source_index.column() >= m->proxy_columns.size())) + return QModelIndex(); + int proxy_row = m->proxy_rows.at(source_index.row()); + int proxy_column = m->proxy_columns.at(source_index.column()); + if (proxy_row == -1 || proxy_column == -1) + return QModelIndex(); + return create_index(proxy_row, proxy_column, it); +} + +bool QSortFilterProxyModelPrivate::can_create_mapping(const QModelIndex &source_parent) const +{ + if (source_parent.isValid()) { + QModelIndex source_grand_parent = source_parent.parent(); + IndexMap::const_iterator it = source_index_mapping.constFind(source_grand_parent); + if (it == source_index_mapping.constEnd()) { + // Don't care, since we don't have mapping for the grand parent + return false; + } + Mapping *gm = it.value(); + if (gm->proxy_rows.at(source_parent.row()) == -1 || + gm->proxy_columns.at(source_parent.column()) == -1) { + // Don't care, since parent is filtered + return false; + } + } + return true; +} + +/*! + \internal + + Sorts the existing mappings. +*/ +void QSortFilterProxyModelPrivate::sort() +{ + Q_Q(QSortFilterProxyModel); + emit q->layoutAboutToBeChanged(); + QModelIndexPairList source_indexes = store_persistent_indexes(); + IndexMap::const_iterator it = source_index_mapping.constBegin(); + for (; it != source_index_mapping.constEnd(); ++it) { + QModelIndex source_parent = it.key(); + Mapping *m = it.value(); + sort_source_rows(m->source_rows, source_parent); + build_source_to_proxy_mapping(m->source_rows, m->proxy_rows); + } + update_persistent_indexes(source_indexes); + emit q->layoutChanged(); +} + +/*! + \internal + + update the source_sort_column according to the proxy_sort_column + return true if the column was changed +*/ +bool QSortFilterProxyModelPrivate::update_source_sort_column() +{ + Q_Q(QSortFilterProxyModel); + QModelIndex proxy_index = q->index(0, proxy_sort_column, QModelIndex()); + int old_source_sort_colum = source_sort_column; + source_sort_column = q->mapToSource(proxy_index).column(); + return old_source_sort_colum != source_sort_column; +} + + +/*! + \internal + + Sorts the given \a source_rows according to current sort column and order. +*/ +void QSortFilterProxyModelPrivate::sort_source_rows( + QVector &source_rows, const QModelIndex &source_parent) const +{ + Q_Q(const QSortFilterProxyModel); + if (source_sort_column >= 0) { + if (sort_order == Qt::AscendingOrder) { + QSortFilterProxyModelLessThan lt(source_sort_column, source_parent, model, q); + qStableSort(source_rows.begin(), source_rows.end(), lt); + } else { + QSortFilterProxyModelGreaterThan gt(source_sort_column, source_parent, model, q); + qStableSort(source_rows.begin(), source_rows.end(), gt); + } + } else { // restore the source model order + qStableSort(source_rows.begin(), source_rows.end()); + } +} + +/*! + \internal + + Given source-to-proxy mapping \a source_to_proxy and the set of + source items \a source_items (which are part of that mapping), + determines the corresponding proxy item intervals that should + be removed from the proxy model. + + The result is a vector of pairs, where each pair represents a + (start, end) tuple, sorted in ascending order. +*/ +QVector > QSortFilterProxyModelPrivate::proxy_intervals_for_source_items( + const QVector &source_to_proxy, const QVector &source_items) const +{ + QVector > proxy_intervals; + if (source_items.isEmpty()) + return proxy_intervals; + + int source_items_index = 0; + while (source_items_index < source_items.size()) { + int first_proxy_item = source_to_proxy.at(source_items.at(source_items_index)); + Q_ASSERT(first_proxy_item != -1); + int last_proxy_item = first_proxy_item; + ++source_items_index; + // Find end of interval + while ((source_items_index < source_items.size()) + && (source_to_proxy.at(source_items.at(source_items_index)) == last_proxy_item + 1)) { + ++last_proxy_item; + ++source_items_index; + } + // Add interval to result + proxy_intervals.append(QPair(first_proxy_item, last_proxy_item)); + } + qStableSort(proxy_intervals.begin(), proxy_intervals.end()); + return proxy_intervals; +} + +/*! + \internal + + Given source-to-proxy mapping \a src_to_proxy and proxy-to-source mapping + \a proxy_to_source, removes \a source_items from this proxy model. + The corresponding proxy items are removed in intervals, so that the proper + rows/columnsRemoved(start, end) signals will be generated. +*/ +void QSortFilterProxyModelPrivate::remove_source_items( + QVector &source_to_proxy, QVector &proxy_to_source, + const QVector &source_items, const QModelIndex &source_parent, + Qt::Orientation orient, bool emit_signal) +{ + Q_Q(QSortFilterProxyModel); + QModelIndex proxy_parent = q->mapFromSource(source_parent); + if (!proxy_parent.isValid() && source_parent.isValid()) + return; // nothing to do (already removed) + + QVector > proxy_intervals; + proxy_intervals = proxy_intervals_for_source_items(source_to_proxy, source_items); + + for (int i = proxy_intervals.size()-1; i >= 0; --i) { + QPair interval = proxy_intervals.at(i); + int proxy_start = interval.first; + int proxy_end = interval.second; + remove_proxy_interval(source_to_proxy, proxy_to_source, proxy_start, proxy_end, + proxy_parent, orient, emit_signal); + } +} + +/*! + \internal + + Given source-to-proxy mapping \a source_to_proxy and proxy-to-source mapping + \a proxy_to_source, removes items from \a proxy_start to \a proxy_end + (inclusive) from this proxy model. +*/ +void QSortFilterProxyModelPrivate::remove_proxy_interval( + QVector &source_to_proxy, QVector &proxy_to_source, int proxy_start, int proxy_end, + const QModelIndex &proxy_parent, Qt::Orientation orient, bool emit_signal) +{ + Q_Q(QSortFilterProxyModel); + if (emit_signal) { + if (orient == Qt::Vertical) + q->beginRemoveRows(proxy_parent, proxy_start, proxy_end); + else + q->beginRemoveColumns(proxy_parent, proxy_start, proxy_end); + } + + // Remove items from proxy-to-source mapping + proxy_to_source.remove(proxy_start, proxy_end - proxy_start + 1); + + build_source_to_proxy_mapping(proxy_to_source, source_to_proxy); + + if (emit_signal) { + if (orient == Qt::Vertical) + q->endRemoveRows(); + else + q->endRemoveColumns(); + } +} + +/*! + \internal + + Given proxy-to-source mapping \a proxy_to_source and a set of + unmapped source items \a source_items, determines the proxy item + intervals at which the subsets of source items should be inserted + (but does not actually add them to the mapping). + + The result is a vector of pairs, each pair representing a tuple (start, + items), where items is a vector containing the (sorted) source items that + should be inserted at that proxy model location. +*/ +QVector > > QSortFilterProxyModelPrivate::proxy_intervals_for_source_items_to_add( + const QVector &proxy_to_source, const QVector &source_items, + const QModelIndex &source_parent, Qt::Orientation orient) const +{ + Q_Q(const QSortFilterProxyModel); + QVector > > proxy_intervals; + if (source_items.isEmpty()) + return proxy_intervals; + + int proxy_low = 0; + int proxy_item = 0; + int source_items_index = 0; + QVector source_items_in_interval; + bool compare = (orient == Qt::Vertical && source_sort_column >= 0 && dynamic_sortfilter); + while (source_items_index < source_items.size()) { + source_items_in_interval.clear(); + int first_new_source_item = source_items.at(source_items_index); + source_items_in_interval.append(first_new_source_item); + ++source_items_index; + + // Find proxy item at which insertion should be started + int proxy_high = proxy_to_source.size() - 1; + QModelIndex i1 = compare ? model->index(first_new_source_item, source_sort_column, source_parent) : QModelIndex(); + while (proxy_low <= proxy_high) { + proxy_item = (proxy_low + proxy_high) / 2; + if (compare) { + QModelIndex i2 = model->index(proxy_to_source.at(proxy_item), source_sort_column, source_parent); + if ((sort_order == Qt::AscendingOrder) ? q->lessThan(i1, i2) : q->lessThan(i2, i1)) + proxy_high = proxy_item - 1; + else + proxy_low = proxy_item + 1; + } else { + if (first_new_source_item < proxy_to_source.at(proxy_item)) + proxy_high = proxy_item - 1; + else + proxy_low = proxy_item + 1; + } + } + proxy_item = proxy_low; + + // Find the sequence of new source items that should be inserted here + if (proxy_item >= proxy_to_source.size()) { + for ( ; source_items_index < source_items.size(); ++source_items_index) + source_items_in_interval.append(source_items.at(source_items_index)); + } else { + i1 = compare ? model->index(proxy_to_source.at(proxy_item), source_sort_column, source_parent) : QModelIndex(); + for ( ; source_items_index < source_items.size(); ++source_items_index) { + int new_source_item = source_items.at(source_items_index); + if (compare) { + QModelIndex i2 = model->index(new_source_item, source_sort_column, source_parent); + if ((sort_order == Qt::AscendingOrder) ? q->lessThan(i1, i2) : q->lessThan(i2, i1)) + break; + } else { + if (proxy_to_source.at(proxy_item) < new_source_item) + break; + } + source_items_in_interval.append(new_source_item); + } + } + + // Add interval to result + proxy_intervals.append(QPair >(proxy_item, source_items_in_interval)); + } + return proxy_intervals; +} + +/*! + \internal + + Given source-to-proxy mapping \a source_to_proxy and proxy-to-source mapping + \a proxy_to_source, inserts the given \a source_items into this proxy model. + The source items are inserted in intervals (based on some sorted order), so + that the proper rows/columnsInserted(start, end) signals will be generated. +*/ +void QSortFilterProxyModelPrivate::insert_source_items( + QVector &source_to_proxy, QVector &proxy_to_source, + const QVector &source_items, const QModelIndex &source_parent, + Qt::Orientation orient, bool emit_signal) +{ + Q_Q(QSortFilterProxyModel); + QModelIndex proxy_parent = q->mapFromSource(source_parent); + if (!proxy_parent.isValid() && source_parent.isValid()) + return; // nothing to do (source_parent is not mapped) + + QVector > > proxy_intervals; + proxy_intervals = proxy_intervals_for_source_items_to_add( + proxy_to_source, source_items, source_parent, orient); + + for (int i = proxy_intervals.size()-1; i >= 0; --i) { + QPair > interval = proxy_intervals.at(i); + int proxy_start = interval.first; + QVector source_items = interval.second; + int proxy_end = proxy_start + source_items.size() - 1; + + if (emit_signal) { + if (orient == Qt::Vertical) + q->beginInsertRows(proxy_parent, proxy_start, proxy_end); + else + q->beginInsertColumns(proxy_parent, proxy_start, proxy_end); + } + + for (int i = 0; i < source_items.size(); ++i) + proxy_to_source.insert(proxy_start + i, source_items.at(i)); + + build_source_to_proxy_mapping(proxy_to_source, source_to_proxy); + + if (emit_signal) { + if (orient == Qt::Vertical) + q->endInsertRows(); + else + q->endInsertColumns(); + } + } +} + +/*! + \internal + + Handles source model items insertion (columnsInserted(), rowsInserted()). + Determines + 1) which of the inserted items to also insert into proxy model (filtering), + 2) where to insert the items into the proxy model (sorting), + then inserts those items. + The items are inserted into the proxy model in intervals (based on + sorted order), so that the proper rows/columnsInserted(start, end) + signals will be generated. +*/ +void QSortFilterProxyModelPrivate::source_items_inserted( + const QModelIndex &source_parent, int start, int end, Qt::Orientation orient) +{ + Q_Q(QSortFilterProxyModel); + if ((start < 0) || (end < 0)) + return; + IndexMap::const_iterator it = source_index_mapping.constFind(source_parent); + if (it == source_index_mapping.constEnd()) { + if (!can_create_mapping(source_parent)) + return; + it = create_mapping(source_parent); + Mapping *m = it.value(); + QModelIndex proxy_parent = q->mapFromSource(source_parent); + if (m->source_rows.count() > 0) { + q->beginInsertRows(proxy_parent, 0, m->source_rows.count() - 1); + q->endInsertRows(); + } + if (m->source_columns.count() > 0) { + q->beginInsertColumns(proxy_parent, 0, m->source_columns.count() - 1); + q->endInsertColumns(); + } + return; + } + + Mapping *m = it.value(); + QVector &source_to_proxy = (orient == Qt::Vertical) ? m->proxy_rows : m->proxy_columns; + QVector &proxy_to_source = (orient == Qt::Vertical) ? m->source_rows : m->source_columns; + + int delta_item_count = end - start + 1; + int old_item_count = source_to_proxy.size(); + + updateChildrenMapping(source_parent, m, orient, start, end, delta_item_count, false); + + // Expand source-to-proxy mapping to account for new items + if (start < 0 || start > source_to_proxy.size()) { + qWarning("QSortFilterProxyModel: invalid inserted rows reported by source model"); + remove_from_mapping(source_parent); + return; + } + source_to_proxy.insert(start, delta_item_count, -1); + + if (start < old_item_count) { + // Adjust existing "stale" indexes in proxy-to-source mapping + int proxy_count = proxy_to_source.size(); + for (int proxy_item = 0; proxy_item < proxy_count; ++proxy_item) { + int source_item = proxy_to_source.at(proxy_item); + if (source_item >= start) + proxy_to_source.replace(proxy_item, source_item + delta_item_count); + } + build_source_to_proxy_mapping(proxy_to_source, source_to_proxy); + } + + // Figure out which items to add to mapping based on filter + QVector source_items; + for (int i = start; i <= end; ++i) { + if ((orient == Qt::Vertical) + ? q->filterAcceptsRow(i, source_parent) + : q->filterAcceptsColumn(i, source_parent)) { + source_items.append(i); + } + } + + if (model->rowCount(source_parent) == delta_item_count) { + // Items were inserted where there were none before. + // If it was new rows make sure to create mappings for columns so that a + // valid mapping can be retrieved later and vice-versa. + + QVector &orthogonal_proxy_to_source = (orient == Qt::Horizontal) ? m->source_rows : m->source_columns; + QVector &orthogonal_source_to_proxy = (orient == Qt::Horizontal) ? m->proxy_rows : m->proxy_columns; + + if (orthogonal_source_to_proxy.isEmpty()) { + const int ortho_end = (orient == Qt::Horizontal) ? model->rowCount(source_parent) : model->columnCount(source_parent); + + orthogonal_source_to_proxy.resize(ortho_end); + + for (int ortho_item = 0; ortho_item < ortho_end; ++ortho_item) { + if ((orient == Qt::Horizontal) ? q->filterAcceptsRow(ortho_item, source_parent) + : q->filterAcceptsColumn(ortho_item, source_parent)) { + orthogonal_proxy_to_source.append(ortho_item); + } + } + if (orient == Qt::Horizontal) { + // We're reacting to columnsInserted, but we've just inserted new rows. Sort them. + sort_source_rows(orthogonal_proxy_to_source, source_parent); + } + build_source_to_proxy_mapping(orthogonal_proxy_to_source, orthogonal_source_to_proxy); + } + } + + // Sort and insert the items + if (orient == Qt::Vertical) // Only sort rows + sort_source_rows(source_items, source_parent); + insert_source_items(source_to_proxy, proxy_to_source, source_items, source_parent, orient); +} + +/*! + \internal + + Handles source model items removal + (columnsAboutToBeRemoved(), rowsAboutToBeRemoved()). +*/ +void QSortFilterProxyModelPrivate::source_items_about_to_be_removed( + const QModelIndex &source_parent, int start, int end, Qt::Orientation orient) +{ + if ((start < 0) || (end < 0)) + return; + IndexMap::const_iterator it = source_index_mapping.constFind(source_parent); + if (it == source_index_mapping.constEnd()) { + // Don't care, since we don't have mapping for this index + return; + } + + Mapping *m = it.value(); + QVector &source_to_proxy = (orient == Qt::Vertical) ? m->proxy_rows : m->proxy_columns; + QVector &proxy_to_source = (orient == Qt::Vertical) ? m->source_rows : m->source_columns; + + // figure out which items to remove + QVector source_items_to_remove; + int proxy_count = proxy_to_source.size(); + for (int proxy_item = 0; proxy_item < proxy_count; ++proxy_item) { + int source_item = proxy_to_source.at(proxy_item); + if ((source_item >= start) && (source_item <= end)) + source_items_to_remove.append(source_item); + } + + remove_source_items(source_to_proxy, proxy_to_source, source_items_to_remove, + source_parent, orient); +} + +/*! + \internal + + Handles source model items removal (columnsRemoved(), rowsRemoved()). +*/ +void QSortFilterProxyModelPrivate::source_items_removed( + const QModelIndex &source_parent, int start, int end, Qt::Orientation orient) +{ + if ((start < 0) || (end < 0)) + return; + IndexMap::const_iterator it = source_index_mapping.constFind(source_parent); + if (it == source_index_mapping.constEnd()) { + // Don't care, since we don't have mapping for this index + return; + } + + Mapping *m = it.value(); + QVector &source_to_proxy = (orient == Qt::Vertical) ? m->proxy_rows : m->proxy_columns; + QVector &proxy_to_source = (orient == Qt::Vertical) ? m->source_rows : m->source_columns; + + if (end >= source_to_proxy.size()) + end = source_to_proxy.size() - 1; + + // Shrink the source-to-proxy mapping to reflect the new item count + int delta_item_count = end - start + 1; + source_to_proxy.remove(start, delta_item_count); + + int proxy_count = proxy_to_source.size(); + if (proxy_count > source_to_proxy.size()) { + // mapping is in an inconsistent state -- redo the whole mapping + qWarning("QSortFilterProxyModel: inconsistent changes reported by source model"); + remove_from_mapping(source_parent); + Q_Q(QSortFilterProxyModel); + q->reset(); + return; + } + + // Adjust "stale" indexes in proxy-to-source mapping + for (int proxy_item = 0; proxy_item < proxy_count; ++proxy_item) { + int source_item = proxy_to_source.at(proxy_item); + if (source_item >= start) { + Q_ASSERT(source_item - delta_item_count >= 0); + proxy_to_source.replace(proxy_item, source_item - delta_item_count); + } + } + build_source_to_proxy_mapping(proxy_to_source, source_to_proxy); + + updateChildrenMapping(source_parent, m, orient, start, end, delta_item_count, true); + +} + + +/*! + \internal + updates the mapping of the children when inserting or removing items +*/ +void QSortFilterProxyModelPrivate::updateChildrenMapping(const QModelIndex &source_parent, Mapping *parent_mapping, + Qt::Orientation orient, int start, int end, int delta_item_count, bool remove) +{ + // see if any mapped children should be (re)moved + QVector > moved_source_index_mappings; + QVector::iterator it2 = parent_mapping->mapped_children.begin(); + for ( ; it2 != parent_mapping->mapped_children.end();) { + const QModelIndex source_child_index = *it2; + const int pos = (orient == Qt::Vertical) + ? source_child_index.row() + : source_child_index.column(); + if (pos < start) { + // not affected + ++it2; + } else if (remove && pos <= end) { + // in the removed interval + it2 = parent_mapping->mapped_children.erase(it2); + remove_from_mapping(source_child_index); + } else { + // below the removed items -- recompute the index + QModelIndex new_index; + const int newpos = remove ? pos - delta_item_count : pos + delta_item_count; + if (orient == Qt::Vertical) { + new_index = model->index(newpos, + source_child_index.column(), + source_parent); + } else { + new_index = model->index(source_child_index.row(), + newpos, + source_parent); + } + *it2 = new_index; + ++it2; + + // update mapping + Mapping *cm = source_index_mapping.take(source_child_index); + Q_ASSERT(cm); + // we do not reinsert right away, because the new index might be identical with another, old index + moved_source_index_mappings.append(QPair(new_index, cm)); + } + } + + // reinsert moved, mapped indexes + QVector >::iterator it = moved_source_index_mappings.begin(); + for (; it != moved_source_index_mappings.end(); ++it) { +#ifdef QT_STRICT_ITERATORS + source_index_mapping.insert((*it).first, (*it).second); + (*it).second->map_iter = source_index_mapping.constFind((*it).first); +#else + (*it).second->map_iter = source_index_mapping.insert((*it).first, (*it).second); +#endif + } +} + +/*! + \internal +*/ +void QSortFilterProxyModelPrivate::proxy_item_range( + const QVector &source_to_proxy, const QVector &source_items, + int &proxy_low, int &proxy_high) const +{ + proxy_low = INT_MAX; + proxy_high = INT_MIN; + for (int i = 0; i < source_items.count(); ++i) { + int proxy_item = source_to_proxy.at(source_items.at(i)); + Q_ASSERT(proxy_item != -1); + if (proxy_item < proxy_low) + proxy_low = proxy_item; + if (proxy_item > proxy_high) + proxy_high = proxy_item; + } +} + +/*! + \internal +*/ +void QSortFilterProxyModelPrivate::build_source_to_proxy_mapping( + const QVector &proxy_to_source, QVector &source_to_proxy) const +{ + source_to_proxy.fill(-1); + int proxy_count = proxy_to_source.size(); + for (int i = 0; i < proxy_count; ++i) + source_to_proxy[proxy_to_source.at(i)] = i; +} + +/*! + \internal + + Maps the persistent proxy indexes to source indexes and + returns the list of source indexes. +*/ +QModelIndexPairList QSortFilterProxyModelPrivate::store_persistent_indexes() +{ + Q_Q(QSortFilterProxyModel); + QModelIndexPairList source_indexes; + foreach (QPersistentModelIndexData *data, persistent.indexes) { + QModelIndex proxy_index = data->index; + QModelIndex source_index = q->mapToSource(proxy_index); + source_indexes.append(qMakePair(proxy_index, QPersistentModelIndex(source_index))); + } + return source_indexes; +} + +/*! + \internal + + Maps \a source_indexes to proxy indexes and stores those + as persistent indexes. +*/ +void QSortFilterProxyModelPrivate::update_persistent_indexes( + const QModelIndexPairList &source_indexes) +{ + Q_Q(QSortFilterProxyModel); + QModelIndexList from, to; + for (int i = 0; i < source_indexes.count(); ++i) { + QModelIndex source_index = source_indexes.at(i).second; + QModelIndex old_proxy_index = source_indexes.at(i).first; + create_mapping(source_index.parent()); + QModelIndex proxy_index = q->mapFromSource(source_index); + from << old_proxy_index; + to << proxy_index; + } + q->changePersistentIndexList(from, to); +} + + +/*! + \internal + + Updates the proxy model (adds/removes rows) based on the + new filter. +*/ +void QSortFilterProxyModelPrivate::filter_changed(const QModelIndex &source_parent) +{ + IndexMap::const_iterator it = source_index_mapping.constFind(source_parent); + if (it == source_index_mapping.constEnd()) + return; + Mapping *m = it.value(); + QSet rows_removed = handle_filter_changed(m->proxy_rows, m->source_rows, source_parent, Qt::Vertical); + QSet columns_removed = handle_filter_changed(m->proxy_columns, m->source_columns, source_parent, Qt::Horizontal); + QVector::iterator it2 = m->mapped_children.end(); + while (it2 != m->mapped_children.begin()) { + --it2; + const QModelIndex source_child_index = *it2; + if (rows_removed.contains(source_child_index.row()) || columns_removed.contains(source_child_index.column())) { + it2 = m->mapped_children.erase(it2); + remove_from_mapping(source_child_index); + } else { + filter_changed(source_child_index); + } + } +} + +/*! + \internal + returns the removed items indexes +*/ +QSet QSortFilterProxyModelPrivate::handle_filter_changed( + QVector &source_to_proxy, QVector &proxy_to_source, + const QModelIndex &source_parent, Qt::Orientation orient) +{ + Q_Q(QSortFilterProxyModel); + // Figure out which mapped items to remove + QVector source_items_remove; + for (int i = 0; i < proxy_to_source.count(); ++i) { + const int source_item = proxy_to_source.at(i); + if ((orient == Qt::Vertical) + ? !q->filterAcceptsRow(source_item, source_parent) + : !q->filterAcceptsColumn(source_item, source_parent)) { + // This source item does not satisfy the filter, so it must be removed + source_items_remove.append(source_item); + } + } + // Figure out which non-mapped items to insert + QVector source_items_insert; + int source_count = source_to_proxy.size(); + for (int source_item = 0; source_item < source_count; ++source_item) { + if (source_to_proxy.at(source_item) == -1) { + if ((orient == Qt::Vertical) + ? q->filterAcceptsRow(source_item, source_parent) + : q->filterAcceptsColumn(source_item, source_parent)) { + // This source item satisfies the filter, so it must be added + source_items_insert.append(source_item); + } + } + } + if (!source_items_remove.isEmpty() || !source_items_insert.isEmpty()) { + // Do item removal and insertion + remove_source_items(source_to_proxy, proxy_to_source, + source_items_remove, source_parent, orient); + if (orient == Qt::Vertical) + sort_source_rows(source_items_insert, source_parent); + insert_source_items(source_to_proxy, proxy_to_source, + source_items_insert, source_parent, orient); + } + return qVectorToSet(source_items_remove); +} + +void QSortFilterProxyModelPrivate::_q_sourceDataChanged(const QModelIndex &source_top_left, + const QModelIndex &source_bottom_right) +{ + Q_Q(QSortFilterProxyModel); + if (!source_top_left.isValid() || !source_bottom_right.isValid()) + return; + QModelIndex source_parent = source_top_left.parent(); + IndexMap::const_iterator it = source_index_mapping.find(source_parent); + if (it == source_index_mapping.constEnd()) { + // Don't care, since we don't have mapping for this index + return; + } + Mapping *m = it.value(); + + // Figure out how the source changes affect us + QVector source_rows_remove; + QVector source_rows_insert; + QVector source_rows_change; + QVector source_rows_resort; + int end = qMin(source_bottom_right.row(), m->proxy_rows.count() - 1); + for (int source_row = source_top_left.row(); source_row <= end; ++source_row) { + if (dynamic_sortfilter) { + if (m->proxy_rows.at(source_row) != -1) { + if (!q->filterAcceptsRow(source_row, source_parent)) { + // This source row no longer satisfies the filter, so it must be removed + source_rows_remove.append(source_row); + } else if (source_sort_column >= source_top_left.column() && source_sort_column <= source_bottom_right.column()) { + // This source row has changed in a way that may affect sorted order + source_rows_resort.append(source_row); + } else { + // This row has simply changed, without affecting filtering nor sorting + source_rows_change.append(source_row); + } + } else { + if (!itemsBeingRemoved.contains(source_parent, source_row) && q->filterAcceptsRow(source_row, source_parent)) { + // This source row now satisfies the filter, so it must be added + source_rows_insert.append(source_row); + } + } + } else { + if (m->proxy_rows.at(source_row) != -1) + source_rows_change.append(source_row); + } + } + + if (!source_rows_remove.isEmpty()) { + remove_source_items(m->proxy_rows, m->source_rows, + source_rows_remove, source_parent, Qt::Vertical); + QSet source_rows_remove_set = qVectorToSet(source_rows_remove); + QVector::iterator it = m->mapped_children.end(); + while (it != m->mapped_children.begin()) { + --it; + const QModelIndex source_child_index = *it; + if (source_rows_remove_set.contains(source_child_index.row())) { + it = m->mapped_children.erase(it); + remove_from_mapping(source_child_index); + } + } + } + + if (!source_rows_resort.isEmpty()) { + // Re-sort the rows of this level + QList parents; + parents << q->mapFromSource(source_parent); + emit q->layoutAboutToBeChanged(parents); + QModelIndexPairList source_indexes = store_persistent_indexes(); + remove_source_items(m->proxy_rows, m->source_rows, source_rows_resort, + source_parent, Qt::Vertical, false); + sort_source_rows(source_rows_resort, source_parent); + insert_source_items(m->proxy_rows, m->source_rows, source_rows_resort, + source_parent, Qt::Vertical, false); + update_persistent_indexes(source_indexes); + emit q->layoutChanged(parents); + // Make sure we also emit dataChanged for the rows + source_rows_change += source_rows_resort; + } + + if (!source_rows_change.isEmpty()) { + // Find the proxy row range + int proxy_start_row; + int proxy_end_row; + proxy_item_range(m->proxy_rows, source_rows_change, + proxy_start_row, proxy_end_row); + // ### Find the proxy column range also + if (proxy_end_row >= 0) { + // the row was accepted, but some columns might still be filtered out + int source_left_column = source_top_left.column(); + while (source_left_column < source_bottom_right.column() + && m->proxy_columns.at(source_left_column) == -1) + ++source_left_column; + const QModelIndex proxy_top_left = create_index( + proxy_start_row, m->proxy_columns.at(source_left_column), it); + int source_right_column = source_bottom_right.column(); + while (source_right_column > source_top_left.column() + && m->proxy_columns.at(source_right_column) == -1) + --source_right_column; + const QModelIndex proxy_bottom_right = create_index( + proxy_end_row, m->proxy_columns.at(source_right_column), it); + emit q->dataChanged(proxy_top_left, proxy_bottom_right); + } + } + + if (!source_rows_insert.isEmpty()) { + sort_source_rows(source_rows_insert, source_parent); + insert_source_items(m->proxy_rows, m->source_rows, + source_rows_insert, source_parent, Qt::Vertical); + } +} + +void QSortFilterProxyModelPrivate::_q_sourceHeaderDataChanged(Qt::Orientation orientation, + int start, int end) +{ + Q_Q(QSortFilterProxyModel); + Mapping *m = create_mapping(QModelIndex()).value(); + int proxy_start = (orientation == Qt::Vertical + ? m->proxy_rows.at(start) + : m->proxy_columns.at(start)); + int proxy_end = (orientation == Qt::Vertical + ? m->proxy_rows.at(end) + : m->proxy_columns.at(end)); + emit q->headerDataChanged(orientation, proxy_start, proxy_end); +} + +void QSortFilterProxyModelPrivate::_q_sourceAboutToBeReset() +{ + Q_Q(QSortFilterProxyModel); + q->beginResetModel(); +} + +void QSortFilterProxyModelPrivate::_q_sourceReset() +{ + Q_Q(QSortFilterProxyModel); + invalidatePersistentIndexes(); + _q_clearMapping(); + // All internal structures are deleted in clear() + q->endResetModel(); + update_source_sort_column(); + if (dynamic_sortfilter) + sort(); +} + +void QSortFilterProxyModelPrivate::_q_sourceLayoutAboutToBeChanged(const QList &sourceParents) +{ + Q_Q(QSortFilterProxyModel); + saved_persistent_indexes.clear(); + + QList parents; + foreach (const QPersistentModelIndex &parent, sourceParents) { + if (!parent.isValid()) { + parents << QModelIndex(); + continue; + } + const QModelIndex mappedParent = q->mapFromSource(parent); + // Might be filtered out. + if (mappedParent.isValid()) + parents << mappedParent; + } + + // All parents filtered out. + if (!sourceParents.isEmpty() && parents.isEmpty()) + return; + + emit q->layoutAboutToBeChanged(parents); + if (persistent.indexes.isEmpty()) + return; + + saved_persistent_indexes = store_persistent_indexes(); +} + +void QSortFilterProxyModelPrivate::_q_sourceLayoutChanged(const QList &sourceParents) +{ + Q_Q(QSortFilterProxyModel); + + // Optimize: We only actually have to clear the mapping related to the contents of + // sourceParents, not everything. + qDeleteAll(source_index_mapping); + source_index_mapping.clear(); + + update_persistent_indexes(saved_persistent_indexes); + saved_persistent_indexes.clear(); + + if (dynamic_sortfilter && update_source_sort_column()) { + //update_source_sort_column might have created wrong mapping so we have to clear it again + qDeleteAll(source_index_mapping); + source_index_mapping.clear(); + } + + QList parents; + foreach (const QPersistentModelIndex &parent, sourceParents) { + if (!parent.isValid()) { + parents << QModelIndex(); + continue; + } + const QModelIndex mappedParent = q->mapFromSource(parent); + if (mappedParent.isValid()) + parents << mappedParent; + } + + if (!sourceParents.isEmpty() && parents.isEmpty()) + return; + + emit q->layoutChanged(parents); +} + +void QSortFilterProxyModelPrivate::_q_sourceRowsAboutToBeInserted( + const QModelIndex &source_parent, int start, int end) +{ + Q_UNUSED(start); + Q_UNUSED(end); + //Force the creation of a mapping now, even if its empty. + //We need it because the proxy can be acessed at the moment it emits rowsAboutToBeInserted in insert_source_items + if (can_create_mapping(source_parent)) + create_mapping(source_parent); +} + +void QSortFilterProxyModelPrivate::_q_sourceRowsInserted( + const QModelIndex &source_parent, int start, int end) +{ + source_items_inserted(source_parent, start, end, Qt::Vertical); + if (update_source_sort_column() && dynamic_sortfilter) //previous call to update_source_sort_column may fail if the model has no column. + sort(); // now it should succeed so we need to make sure to sort again +} + +void QSortFilterProxyModelPrivate::_q_sourceRowsAboutToBeRemoved( + const QModelIndex &source_parent, int start, int end) +{ + itemsBeingRemoved = QRowsRemoval(source_parent, start, end); + source_items_about_to_be_removed(source_parent, start, end, + Qt::Vertical); +} + +void QSortFilterProxyModelPrivate::_q_sourceRowsRemoved( + const QModelIndex &source_parent, int start, int end) +{ + itemsBeingRemoved = QRowsRemoval(); + source_items_removed(source_parent, start, end, Qt::Vertical); +} + +void QSortFilterProxyModelPrivate::_q_sourceRowsAboutToBeMoved( + const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destParent, int dest) +{ + Q_Q(QSortFilterProxyModel); + // Because rows which are contiguous in the source model might not be contiguous + // in the proxy due to sorting, the best thing we can do here is be specific about what + // parents are having their children changed. + // Optimize: Emit move signals if the proxy is not sorted. Will need to account for rows + // being filtered out though. + + saved_persistent_indexes.clear(); + + QList parents; + parents << q->mapFromSource(sourceParent); + if (sourceParent != destParent) + parents << q->mapFromSource(destParent); + emit q->layoutAboutToBeChanged(parents); + if (persistent.indexes.isEmpty()) + return; + saved_persistent_indexes = store_persistent_indexes(); +} + +void QSortFilterProxyModelPrivate::_q_sourceRowsMoved( + const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destParent, int dest) +{ + Q_Q(QSortFilterProxyModel); + + // Optimize: We only need to clear and update the persistent indexes which are children of + // sourceParent or destParent + qDeleteAll(source_index_mapping); + source_index_mapping.clear(); + + update_persistent_indexes(saved_persistent_indexes); + saved_persistent_indexes.clear(); + + if (dynamic_sortfilter && update_source_sort_column()) { + //update_source_sort_column might have created wrong mapping so we have to clear it again + qDeleteAll(source_index_mapping); + source_index_mapping.clear(); + } + + QList parents; + parents << q->mapFromSource(sourceParent); + if (sourceParent != destParent) + parents << q->mapFromSource(destParent); + emit q->layoutChanged(parents); +} + +void QSortFilterProxyModelPrivate::_q_sourceColumnsAboutToBeInserted( + const QModelIndex &source_parent, int start, int end) +{ + Q_UNUSED(start); + Q_UNUSED(end); + //Force the creation of a mapping now, even if its empty. + //We need it because the proxy can be acessed at the moment it emits columnsAboutToBeInserted in insert_source_items + if (can_create_mapping(source_parent)) + create_mapping(source_parent); +} + +void QSortFilterProxyModelPrivate::_q_sourceColumnsInserted( + const QModelIndex &source_parent, int start, int end) +{ + Q_Q(const QSortFilterProxyModel); + source_items_inserted(source_parent, start, end, Qt::Horizontal); + + if (source_parent.isValid()) + return; //we sort according to the root column only + if (source_sort_column == -1) { + //we update the source_sort_column depending on the proxy_sort_column + if (update_source_sort_column() && dynamic_sortfilter) + sort(); + } else { + if (start <= source_sort_column) + source_sort_column += end - start + 1; + + proxy_sort_column = q->mapFromSource(model->index(0,source_sort_column, source_parent)).column(); + } +} + +void QSortFilterProxyModelPrivate::_q_sourceColumnsAboutToBeRemoved( + const QModelIndex &source_parent, int start, int end) +{ + source_items_about_to_be_removed(source_parent, start, end, + Qt::Horizontal); +} + +void QSortFilterProxyModelPrivate::_q_sourceColumnsRemoved( + const QModelIndex &source_parent, int start, int end) +{ + Q_Q(const QSortFilterProxyModel); + source_items_removed(source_parent, start, end, Qt::Horizontal); + + if (source_parent.isValid()) + return; //we sort according to the root column only + if (start <= source_sort_column) { + if (end < source_sort_column) + source_sort_column -= end - start + 1; + else + source_sort_column = -1; + } + + proxy_sort_column = q->mapFromSource(model->index(0,source_sort_column, source_parent)).column(); +} + +void QSortFilterProxyModelPrivate::_q_sourceColumnsAboutToBeMoved( + const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destParent, int dest) +{ + Q_Q(QSortFilterProxyModel); + + saved_persistent_indexes.clear(); + + QList parents; + parents << q->mapFromSource(sourceParent); + if (sourceParent != destParent) + parents << q->mapFromSource(destParent); + emit q->layoutAboutToBeChanged(parents); + + if (persistent.indexes.isEmpty()) + return; + saved_persistent_indexes = store_persistent_indexes(); +} + +void QSortFilterProxyModelPrivate::_q_sourceColumnsMoved( + const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destParent, int dest) +{ + Q_Q(QSortFilterProxyModel); + + qDeleteAll(source_index_mapping); + source_index_mapping.clear(); + + update_persistent_indexes(saved_persistent_indexes); + saved_persistent_indexes.clear(); + + if (dynamic_sortfilter && update_source_sort_column()) { + qDeleteAll(source_index_mapping); + source_index_mapping.clear(); + } + + QList parents; + parents << q->mapFromSource(sourceParent); + if (sourceParent != destParent) + parents << q->mapFromSource(destParent); + emit q->layoutChanged(parents); +} + +/*! + \since 4.1 + \class QSortFilterProxyModel + \brief The QSortFilterProxyModel class provides support for sorting and + filtering data passed between another model and a view. + + \ingroup model-view + \inmodule QtCore + + QSortFilterProxyModel can be used for sorting items, filtering out items, + or both. The model transforms the structure of a source model by mapping + the model indexes it supplies to new indexes, corresponding to different + locations, for views to use. This approach allows a given source model to + be restructured as far as views are concerned without requiring any + transformations on the underlying data, and without duplicating the data in + memory. + + Let's assume that we want to sort and filter the items provided by a custom + model. The code to set up the model and the view, \e without sorting and + filtering, would look like this: + + \snippet doc/src/snippets/qsortfilterproxymodel-details/main.cpp 1 + + To add sorting and filtering support to \c MyItemModel, we need to create + a QSortFilterProxyModel, call setSourceModel() with the \c MyItemModel as + argument, and install the QSortFilterProxyModel on the view: + + \snippet doc/src/snippets/qsortfilterproxymodel-details/main.cpp 0 + \snippet doc/src/snippets/qsortfilterproxymodel-details/main.cpp 2 + + At this point, neither sorting nor filtering is enabled; the original data + is displayed in the view. Any changes made through the + QSortFilterProxyModel are applied to the original model. + + The QSortFilterProxyModel acts as a wrapper for the original model. If you + need to convert source \l{QModelIndex}es to sorted/filtered model indexes + or vice versa, use mapToSource(), mapFromSource(), mapSelectionToSource(), + and mapSelectionFromSource(). + + \note By default, the model does not dynamically re-sort and re-filter data + whenever the original model changes. This behavior can be changed by + setting the \l{QSortFilterProxyModel::dynamicSortFilter}{dynamicSortFilter} + property. + + The \l{itemviews/basicsortfiltermodel}{Basic Sort/Filter Model} and + \l{itemviews/customsortfiltermodel}{Custom Sort/Filter Model} examples + illustrate how to use QSortFilterProxyModel to perform basic sorting and + filtering and how to subclass it to implement custom behavior. + + \section1 Sorting + + QTableView and QTreeView have a + \l{QTreeView::sortingEnabled}{sortingEnabled} property that controls + whether the user can sort the view by clicking the view's horizontal + header. For example: + + \snippet doc/src/snippets/qsortfilterproxymodel-details/main.cpp 3 + + When this feature is on (the default is off), clicking on a header section + sorts the items according to that column. By clicking repeatedly, the user + can alternate between ascending and descending order. + + \image qsortfilterproxymodel-sorting.png A sorted QTreeView + + Behind the scene, the view calls the sort() virtual function on the model + to reorder the data in the model. To make your data sortable, you can + either implement sort() in your model, or use a QSortFilterProxyModel to + wrap your model -- QSortFilterProxyModel provides a generic sort() + reimplementation that operates on the sortRole() (Qt::DisplayRole by + default) of the items and that understands several data types, including + \c int, QString, and QDateTime. For hierarchical models, sorting is applied + recursively to all child items. String comparisons are case sensitive by + default; this can be changed by setting the \l{QSortFilterProxyModel::} + {sortCaseSensitivity} property. + + Custom sorting behavior is achieved by subclassing + QSortFilterProxyModel and reimplementing lessThan(), which is + used to compare items. For example: + + \snippet examples/itemviews/customsortfiltermodel/mysortfilterproxymodel.cpp 5 + + (This code snippet comes from the + \l{itemviews/customsortfiltermodel}{Custom Sort/Filter Model} + example.) + + An alternative approach to sorting is to disable sorting on the view and to + impose a certain order to the user. This is done by explicitly calling + sort() with the desired column and order as arguments on the + QSortFilterProxyModel (or on the original model if it implements sort()). + For example: + + \snippet doc/src/snippets/qsortfilterproxymodel-details/main.cpp 4 + + QSortFilterProxyModel can be sorted by column -1, in which case it returns + to the sort order of the underlying source model. + + \section1 Filtering + + In addition to sorting, QSortFilterProxyModel can be used to hide items + that do not match a certain filter. The filter is specified using a QRegExp + object and is applied to the filterRole() (Qt::DisplayRole by default) of + each item, for a given column. The QRegExp object can be used to match a + regular expression, a wildcard pattern, or a fixed string. For example: + + \snippet doc/src/snippets/qsortfilterproxymodel-details/main.cpp 5 + + For hierarchical models, the filter is applied recursively to all children. + If a parent item doesn't match the filter, none of its children will be + shown. + + A common use case is to let the user specify the filter regexp, wildcard + pattern, or fixed string in a QLineEdit and to connect the + \l{QLineEdit::textChanged()}{textChanged()} signal to setFilterRegExp(), + setFilterWildcard(), or setFilterFixedString() to reapply the filter. + + Custom filtering behavior can be achieved by reimplementing the + filterAcceptsRow() and filterAcceptsColumn() functions. For + example (from the \l{itemviews/customsortfiltermodel} + {Custom Sort/Filter Model} example), the following implementation ignores + the \l{QSortFilterProxyModel::filterKeyColumn}{filterKeyColumn} property + and performs filtering on columns 0, 1, and 2: + + \snippet examples/itemviews/customsortfiltermodel/mysortfilterproxymodel.cpp 3 + + (This code snippet comes from the + \l{itemviews/customsortfiltermodel}{Custom Sort/Filter Model} + example.) + + If you are working with large amounts of filtering and have to invoke + invalidateFilter() repeatedly, using reset() may be more efficient, + depending on the implementation of your model. However, reset() returns the + proxy model to its original state, losing selection information, and will + cause the proxy model to be repopulated. + + \section1 Subclassing + + Since QAbstractProxyModel and its subclasses are derived from + QAbstractItemModel, much of the same advice about subclassing normal models + also applies to proxy models. In addition, it is worth noting that many of + the default implementations of functions in this class are written so that + they call the equivalent functions in the relevant source model. This + simple proxying mechanism may need to be overridden for source models with + more complex behavior; for example, if the source model provides a custom + hasChildren() implementation, you should also provide one in the proxy + model. + + \note Some general guidelines for subclassing models are available in the + \l{Model Subclassing Reference}. + + \sa QAbstractProxyModel, QAbstractItemModel, {Model/View Programming}, + {Basic Sort/Filter Model Example}, {Custom Sort/Filter Model Example}, QIdentityProxyModel +*/ + +/*! + Constructs a sorting filter model with the given \a parent. +*/ + +QSortFilterProxyModel::QSortFilterProxyModel(QObject *parent) + : QAbstractProxyModel(*new QSortFilterProxyModelPrivate, parent) +{ + Q_D(QSortFilterProxyModel); + d->proxy_sort_column = d->source_sort_column = -1; + d->sort_order = Qt::AscendingOrder; + d->sort_casesensitivity = Qt::CaseSensitive; + d->sort_role = Qt::DisplayRole; + d->sort_localeaware = false; + d->filter_column = 0; + d->filter_role = Qt::DisplayRole; + d->dynamic_sortfilter = false; + connect(this, SIGNAL(modelReset()), this, SLOT(_q_clearMapping())); +} + +/*! + Destroys this sorting filter model. +*/ +QSortFilterProxyModel::~QSortFilterProxyModel() +{ + Q_D(QSortFilterProxyModel); + qDeleteAll(d->source_index_mapping); + d->source_index_mapping.clear(); +} + +/*! + \reimp +*/ +void QSortFilterProxyModel::setSourceModel(QAbstractItemModel *sourceModel) +{ + Q_D(QSortFilterProxyModel); + + beginResetModel(); + + disconnect(d->model, SIGNAL(dataChanged(QModelIndex,QModelIndex)), + this, SLOT(_q_sourceDataChanged(QModelIndex,QModelIndex))); + + disconnect(d->model, SIGNAL(headerDataChanged(Qt::Orientation,int,int)), + this, SLOT(_q_sourceHeaderDataChanged(Qt::Orientation,int,int))); + + disconnect(d->model, SIGNAL(rowsAboutToBeInserted(QModelIndex,int,int)), + this, SLOT(_q_sourceRowsAboutToBeInserted(QModelIndex,int,int))); + + disconnect(d->model, SIGNAL(rowsInserted(QModelIndex,int,int)), + this, SLOT(_q_sourceRowsInserted(QModelIndex,int,int))); + + disconnect(d->model, SIGNAL(columnsAboutToBeInserted(QModelIndex,int,int)), + this, SLOT(_q_sourceColumnsAboutToBeInserted(QModelIndex,int,int))); + + disconnect(d->model, SIGNAL(columnsInserted(QModelIndex,int,int)), + this, SLOT(_q_sourceColumnsInserted(QModelIndex,int,int))); + + disconnect(d->model, SIGNAL(rowsAboutToBeRemoved(QModelIndex,int,int)), + this, SLOT(_q_sourceRowsAboutToBeRemoved(QModelIndex,int,int))); + + disconnect(d->model, SIGNAL(rowsRemoved(QModelIndex,int,int)), + this, SLOT(_q_sourceRowsRemoved(QModelIndex,int,int))); + + disconnect(d->model, SIGNAL(columnsAboutToBeRemoved(QModelIndex,int,int)), + this, SLOT(_q_sourceColumnsAboutToBeRemoved(QModelIndex,int,int))); + + disconnect(d->model, SIGNAL(columnsRemoved(QModelIndex,int,int)), + this, SLOT(_q_sourceColumnsRemoved(QModelIndex,int,int))); + + disconnect(d->model, SIGNAL(rowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)), + this, SLOT(_q_sourceRowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int))); + + disconnect(d->model, SIGNAL(rowsMoved(QModelIndex,int,int,QModelIndex,int)), + this, SLOT(_q_sourceRowsMoved(QModelIndex,int,int,QModelIndex,int))); + + disconnect(d->model, SIGNAL(columnsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)), + this, SLOT(_q_sourceColumnsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int))); + + disconnect(d->model, SIGNAL(columnsMoved(QModelIndex,int,int,QModelIndex,int)), + this, SLOT(_q_sourceColumnsMoved(QModelIndex,int,int,QModelIndex,int))); + + disconnect(d->model, SIGNAL(layoutAboutToBeChanged(QList)), + this, SLOT(_q_sourceLayoutAboutToBeChanged(QList))); + + disconnect(d->model, SIGNAL(layoutChanged(QList)), + this, SLOT(_q_sourceLayoutChanged(QList))); + + disconnect(d->model, SIGNAL(modelAboutToBeReset()), this, SLOT(_q_sourceAboutToBeReset())); + disconnect(d->model, SIGNAL(modelReset()), this, SLOT(_q_sourceReset())); + + QAbstractProxyModel::setSourceModel(sourceModel); + + connect(d->model, SIGNAL(dataChanged(QModelIndex,QModelIndex)), + this, SLOT(_q_sourceDataChanged(QModelIndex,QModelIndex))); + + connect(d->model, SIGNAL(headerDataChanged(Qt::Orientation,int,int)), + this, SLOT(_q_sourceHeaderDataChanged(Qt::Orientation,int,int))); + + connect(d->model, SIGNAL(rowsAboutToBeInserted(QModelIndex,int,int)), + this, SLOT(_q_sourceRowsAboutToBeInserted(QModelIndex,int,int))); + + connect(d->model, SIGNAL(rowsInserted(QModelIndex,int,int)), + this, SLOT(_q_sourceRowsInserted(QModelIndex,int,int))); + + connect(d->model, SIGNAL(columnsAboutToBeInserted(QModelIndex,int,int)), + this, SLOT(_q_sourceColumnsAboutToBeInserted(QModelIndex,int,int))); + + connect(d->model, SIGNAL(columnsInserted(QModelIndex,int,int)), + this, SLOT(_q_sourceColumnsInserted(QModelIndex,int,int))); + + connect(d->model, SIGNAL(rowsAboutToBeRemoved(QModelIndex,int,int)), + this, SLOT(_q_sourceRowsAboutToBeRemoved(QModelIndex,int,int))); + + connect(d->model, SIGNAL(rowsRemoved(QModelIndex,int,int)), + this, SLOT(_q_sourceRowsRemoved(QModelIndex,int,int))); + + connect(d->model, SIGNAL(columnsAboutToBeRemoved(QModelIndex,int,int)), + this, SLOT(_q_sourceColumnsAboutToBeRemoved(QModelIndex,int,int))); + + connect(d->model, SIGNAL(columnsRemoved(QModelIndex,int,int)), + this, SLOT(_q_sourceColumnsRemoved(QModelIndex,int,int))); + + connect(d->model, SIGNAL(rowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)), + this, SLOT(_q_sourceRowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int))); + + connect(d->model, SIGNAL(rowsMoved(QModelIndex,int,int,QModelIndex,int)), + this, SLOT(_q_sourceRowsMoved(QModelIndex,int,int,QModelIndex,int))); + + connect(d->model, SIGNAL(columnsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)), + this, SLOT(_q_sourceColumnsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int))); + + connect(d->model, SIGNAL(columnsMoved(QModelIndex,int,int,QModelIndex,int)), + this, SLOT(_q_sourceColumnsMoved(QModelIndex,int,int,QModelIndex,int))); + + connect(d->model, SIGNAL(layoutAboutToBeChanged(QList)), + this, SLOT(_q_sourceLayoutAboutToBeChanged(QList))); + + connect(d->model, SIGNAL(layoutChanged(QList)), + this, SLOT(_q_sourceLayoutChanged(QList))); + + connect(d->model, SIGNAL(modelAboutToBeReset()), this, SLOT(_q_sourceAboutToBeReset())); + connect(d->model, SIGNAL(modelReset()), this, SLOT(_q_sourceReset())); + + d->_q_clearMapping(); + endResetModel(); + if (d->update_source_sort_column() && d->dynamic_sortfilter) + d->sort(); +} + +/*! + \reimp +*/ +QModelIndex QSortFilterProxyModel::index(int row, int column, const QModelIndex &parent) const +{ + Q_D(const QSortFilterProxyModel); + if (row < 0 || column < 0) + return QModelIndex(); + + QModelIndex source_parent = mapToSource(parent); // parent is already mapped at this point + IndexMap::const_iterator it = d->create_mapping(source_parent); // but make sure that the children are mapped + if (it.value()->source_rows.count() <= row || it.value()->source_columns.count() <= column) + return QModelIndex(); + + return d->create_index(row, column, it); +} + +/*! + \reimp +*/ +QModelIndex QSortFilterProxyModel::parent(const QModelIndex &child) const +{ + Q_D(const QSortFilterProxyModel); + if (!d->indexValid(child)) + return QModelIndex(); + IndexMap::const_iterator it = d->index_to_iterator(child); + Q_ASSERT(it != d->source_index_mapping.constEnd()); + QModelIndex source_parent = it.key(); + QModelIndex proxy_parent = mapFromSource(source_parent); + return proxy_parent; +} + +/*! + \reimp +*/ +int QSortFilterProxyModel::rowCount(const QModelIndex &parent) const +{ + Q_D(const QSortFilterProxyModel); + QModelIndex source_parent = mapToSource(parent); + if (parent.isValid() && !source_parent.isValid()) + return 0; + IndexMap::const_iterator it = d->create_mapping(source_parent); + return it.value()->source_rows.count(); +} + +/*! + \reimp +*/ +int QSortFilterProxyModel::columnCount(const QModelIndex &parent) const +{ + Q_D(const QSortFilterProxyModel); + QModelIndex source_parent = mapToSource(parent); + if (parent.isValid() && !source_parent.isValid()) + return 0; + IndexMap::const_iterator it = d->create_mapping(source_parent); + return it.value()->source_columns.count(); +} + +/*! + \reimp +*/ +bool QSortFilterProxyModel::hasChildren(const QModelIndex &parent) const +{ + Q_D(const QSortFilterProxyModel); + QModelIndex source_parent = mapToSource(parent); + if (parent.isValid() && !source_parent.isValid()) + return false; + if (!d->model->hasChildren(source_parent)) + return false; + + if (d->model->canFetchMore(source_parent)) + return true; //we assume we might have children that can be fetched + + QSortFilterProxyModelPrivate::Mapping *m = d->create_mapping(source_parent).value(); + return m->source_rows.count() != 0 && m->source_columns.count() != 0; +} + +/*! + \reimp +*/ +QVariant QSortFilterProxyModel::data(const QModelIndex &index, int role) const +{ + Q_D(const QSortFilterProxyModel); + QModelIndex source_index = mapToSource(index); + if (index.isValid() && !source_index.isValid()) + return QVariant(); + return d->model->data(source_index, role); +} + +/*! + \reimp +*/ +bool QSortFilterProxyModel::setData(const QModelIndex &index, const QVariant &value, int role) +{ + Q_D(QSortFilterProxyModel); + QModelIndex source_index = mapToSource(index); + if (index.isValid() && !source_index.isValid()) + return false; + return d->model->setData(source_index, value, role); +} + +/*! + \reimp +*/ +QVariant QSortFilterProxyModel::headerData(int section, Qt::Orientation orientation, int role) const +{ + Q_D(const QSortFilterProxyModel); + IndexMap::const_iterator it = d->create_mapping(QModelIndex()); + if (it.value()->source_rows.count() * it.value()->source_columns.count() > 0) + return QAbstractProxyModel::headerData(section, orientation, role); + int source_section; + if (orientation == Qt::Vertical) { + if (section < 0 || section >= it.value()->source_rows.count()) + return QVariant(); + source_section = it.value()->source_rows.at(section); + } else { + if (section < 0 || section >= it.value()->source_columns.count()) + return QVariant(); + source_section = it.value()->source_columns.at(section); + } + return d->model->headerData(source_section, orientation, role); +} + +/*! + \reimp +*/ +bool QSortFilterProxyModel::setHeaderData(int section, Qt::Orientation orientation, + const QVariant &value, int role) +{ + Q_D(QSortFilterProxyModel); + IndexMap::const_iterator it = d->create_mapping(QModelIndex()); + if (it.value()->source_rows.count() * it.value()->source_columns.count() > 0) + return QAbstractProxyModel::setHeaderData(section, orientation, value, role); + int source_section; + if (orientation == Qt::Vertical) { + if (section < 0 || section >= it.value()->source_rows.count()) + return false; + source_section = it.value()->source_rows.at(section); + } else { + if (section < 0 || section >= it.value()->source_columns.count()) + return false; + source_section = it.value()->source_columns.at(section); + } + return d->model->setHeaderData(source_section, orientation, value, role); +} + +/*! + \reimp +*/ +QMimeData *QSortFilterProxyModel::mimeData(const QModelIndexList &indexes) const +{ + Q_D(const QSortFilterProxyModel); + QModelIndexList source_indexes; + for (int i = 0; i < indexes.count(); ++i) + source_indexes << mapToSource(indexes.at(i)); + return d->model->mimeData(source_indexes); +} + +/*! + \reimp +*/ +QStringList QSortFilterProxyModel::mimeTypes() const +{ + Q_D(const QSortFilterProxyModel); + return d->model->mimeTypes(); +} + +/*! + \reimp +*/ +Qt::DropActions QSortFilterProxyModel::supportedDropActions() const +{ + Q_D(const QSortFilterProxyModel); + return d->model->supportedDropActions(); +} + +/*! + \reimp +*/ +bool QSortFilterProxyModel::dropMimeData(const QMimeData *data, Qt::DropAction action, + int row, int column, const QModelIndex &parent) +{ + Q_D(QSortFilterProxyModel); + if ((row == -1) && (column == -1)) + return d->model->dropMimeData(data, action, -1, -1, mapToSource(parent)); + int source_destination_row = -1; + int source_destination_column = -1; + QModelIndex source_parent; + if (row == rowCount(parent)) { + source_parent = mapToSource(parent); + source_destination_row = d->model->rowCount(source_parent); + } else { + QModelIndex proxy_index = index(row, column, parent); + QModelIndex source_index = mapToSource(proxy_index); + source_destination_row = source_index.row(); + source_destination_column = source_index.column(); + source_parent = source_index.parent(); + } + return d->model->dropMimeData(data, action, source_destination_row, + source_destination_column, source_parent); +} + +/*! + \reimp +*/ +bool QSortFilterProxyModel::insertRows(int row, int count, const QModelIndex &parent) +{ + Q_D(QSortFilterProxyModel); + if (row < 0 || count <= 0) + return false; + QModelIndex source_parent = mapToSource(parent); + if (parent.isValid() && !source_parent.isValid()) + return false; + QSortFilterProxyModelPrivate::Mapping *m = d->create_mapping(source_parent).value(); + if (row > m->source_rows.count()) + return false; + int source_row = (row >= m->source_rows.count() + ? m->source_rows.count() + : m->source_rows.at(row)); + return d->model->insertRows(source_row, count, source_parent); +} + +/*! + \reimp +*/ +bool QSortFilterProxyModel::insertColumns(int column, int count, const QModelIndex &parent) +{ + Q_D(QSortFilterProxyModel); + if (column < 0|| count <= 0) + return false; + QModelIndex source_parent = mapToSource(parent); + if (parent.isValid() && !source_parent.isValid()) + return false; + QSortFilterProxyModelPrivate::Mapping *m = d->create_mapping(source_parent).value(); + if (column > m->source_columns.count()) + return false; + int source_column = (column >= m->source_columns.count() + ? m->source_columns.count() + : m->source_columns.at(column)); + return d->model->insertColumns(source_column, count, source_parent); +} + +/*! + \reimp +*/ +bool QSortFilterProxyModel::removeRows(int row, int count, const QModelIndex &parent) +{ + Q_D(QSortFilterProxyModel); + if (row < 0 || count <= 0) + return false; + QModelIndex source_parent = mapToSource(parent); + if (parent.isValid() && !source_parent.isValid()) + return false; + QSortFilterProxyModelPrivate::Mapping *m = d->create_mapping(source_parent).value(); + if (row + count > m->source_rows.count()) + return false; + if ((count == 1) + || ((d->source_sort_column < 0) && (m->proxy_rows.count() == m->source_rows.count()))) { + int source_row = m->source_rows.at(row); + return d->model->removeRows(source_row, count, source_parent); + } + // remove corresponding source intervals + // ### if this proves to be slow, we can switch to single-row removal + QVector rows; + for (int i = row; i < row + count; ++i) + rows.append(m->source_rows.at(i)); + qSort(rows.begin(), rows.end()); + + int pos = rows.count() - 1; + bool ok = true; + while (pos >= 0) { + const int source_end = rows.at(pos--); + int source_start = source_end; + while ((pos >= 0) && (rows.at(pos) == (source_start - 1))) { + --source_start; + --pos; + } + ok = ok && d->model->removeRows(source_start, source_end - source_start + 1, + source_parent); + } + return ok; +} + +/*! + \reimp +*/ +bool QSortFilterProxyModel::removeColumns(int column, int count, const QModelIndex &parent) +{ + Q_D(QSortFilterProxyModel); + if (column < 0 || count <= 0) + return false; + QModelIndex source_parent = mapToSource(parent); + if (parent.isValid() && !source_parent.isValid()) + return false; + QSortFilterProxyModelPrivate::Mapping *m = d->create_mapping(source_parent).value(); + if (column + count > m->source_columns.count()) + return false; + if ((count == 1) || (m->proxy_columns.count() == m->source_columns.count())) { + int source_column = m->source_columns.at(column); + return d->model->removeColumns(source_column, count, source_parent); + } + // remove corresponding source intervals + QVector columns; + for (int i = column; i < column + count; ++i) + columns.append(m->source_columns.at(i)); + + int pos = columns.count() - 1; + bool ok = true; + while (pos >= 0) { + const int source_end = columns.at(pos--); + int source_start = source_end; + while ((pos >= 0) && (columns.at(pos) == (source_start - 1))) { + --source_start; + --pos; + } + ok = ok && d->model->removeColumns(source_start, source_end - source_start + 1, + source_parent); + } + return ok; +} + +/*! + \reimp +*/ +void QSortFilterProxyModel::fetchMore(const QModelIndex &parent) +{ + Q_D(QSortFilterProxyModel); + QModelIndex source_parent; + if (d->indexValid(parent)) + source_parent = mapToSource(parent); + d->model->fetchMore(source_parent); +} + +/*! + \reimp +*/ +bool QSortFilterProxyModel::canFetchMore(const QModelIndex &parent) const +{ + Q_D(const QSortFilterProxyModel); + QModelIndex source_parent; + if (d->indexValid(parent)) + source_parent = mapToSource(parent); + return d->model->canFetchMore(source_parent); +} + +/*! + \reimp +*/ +Qt::ItemFlags QSortFilterProxyModel::flags(const QModelIndex &index) const +{ + Q_D(const QSortFilterProxyModel); + QModelIndex source_index; + if (d->indexValid(index)) + source_index = mapToSource(index); + return d->model->flags(source_index); +} + +/*! + \reimp +*/ +QModelIndex QSortFilterProxyModel::buddy(const QModelIndex &index) const +{ + Q_D(const QSortFilterProxyModel); + if (!d->indexValid(index)) + return QModelIndex(); + QModelIndex source_index = mapToSource(index); + QModelIndex source_buddy = d->model->buddy(source_index); + if (source_index == source_buddy) + return index; + return mapFromSource(source_buddy); +} + +/*! + \reimp +*/ +QModelIndexList QSortFilterProxyModel::match(const QModelIndex &start, int role, + const QVariant &value, int hits, + Qt::MatchFlags flags) const +{ + return QAbstractProxyModel::match(start, role, value, hits, flags); +} + +/*! + \reimp +*/ +QSize QSortFilterProxyModel::span(const QModelIndex &index) const +{ + Q_D(const QSortFilterProxyModel); + QModelIndex source_index = mapToSource(index); + if (index.isValid() && !source_index.isValid()) + return QSize(); + return d->model->span(source_index); +} + +/*! + \reimp +*/ +void QSortFilterProxyModel::sort(int column, Qt::SortOrder order) +{ + Q_D(QSortFilterProxyModel); + if (d->dynamic_sortfilter && d->proxy_sort_column == column && d->sort_order == order) + return; + d->sort_order = order; + d->proxy_sort_column = column; + d->update_source_sort_column(); + d->sort(); +} + +/*! + \since 4.5 + \brief the column currently used for sorting + + This returns the most recently used sort column. +*/ +int QSortFilterProxyModel::sortColumn() const +{ + Q_D(const QSortFilterProxyModel); + return d->proxy_sort_column; +} + +/*! + \since 4.5 + \brief the order currently used for sorting + + This returns the most recently used sort order. +*/ +Qt::SortOrder QSortFilterProxyModel::sortOrder() const +{ + Q_D(const QSortFilterProxyModel); + return d->sort_order; +} + +/*! + \property QSortFilterProxyModel::filterRegExp + \brief the QRegExp used to filter the contents of the source model + + Setting this property overwrites the current + \l{QSortFilterProxyModel::filterCaseSensitivity}{filterCaseSensitivity}. + By default, the QRegExp is an empty string matching all contents. + + If no QRegExp or an empty string is set, everything in the source model + will be accepted. + + \sa filterCaseSensitivity, setFilterWildcard(), setFilterFixedString() +*/ +QRegExp QSortFilterProxyModel::filterRegExp() const +{ + Q_D(const QSortFilterProxyModel); + return d->filter_regexp; +} + +void QSortFilterProxyModel::setFilterRegExp(const QRegExp ®Exp) +{ + Q_D(QSortFilterProxyModel); + d->filter_regexp = regExp; + d->filter_changed(); +} + +/*! + \property QSortFilterProxyModel::filterKeyColumn + \brief the column where the key used to filter the contents of the + source model is read from. + + The default value is 0. If the value is -1, the keys will be read + from all columns. +*/ +int QSortFilterProxyModel::filterKeyColumn() const +{ + Q_D(const QSortFilterProxyModel); + return d->filter_column; +} + +void QSortFilterProxyModel::setFilterKeyColumn(int column) +{ + Q_D(QSortFilterProxyModel); + d->filter_column = column; + d->filter_changed(); +} + +/*! + \property QSortFilterProxyModel::filterCaseSensitivity + + \brief the case sensitivity of the QRegExp pattern used to filter the + contents of the source model + + By default, the filter is case sensitive. + + \sa filterRegExp, sortCaseSensitivity +*/ +Qt::CaseSensitivity QSortFilterProxyModel::filterCaseSensitivity() const +{ + Q_D(const QSortFilterProxyModel); + return d->filter_regexp.caseSensitivity(); +} + +void QSortFilterProxyModel::setFilterCaseSensitivity(Qt::CaseSensitivity cs) +{ + Q_D(QSortFilterProxyModel); + if (cs == d->filter_regexp.caseSensitivity()) + return; + d->filter_regexp.setCaseSensitivity(cs); + d->filter_changed(); +} + +/*! + \since 4.2 + \property QSortFilterProxyModel::sortCaseSensitivity + \brief the case sensitivity setting used for comparing strings when sorting + + By default, sorting is case sensitive. + + \sa filterCaseSensitivity, lessThan() +*/ +Qt::CaseSensitivity QSortFilterProxyModel::sortCaseSensitivity() const +{ + Q_D(const QSortFilterProxyModel); + return d->sort_casesensitivity; +} + +void QSortFilterProxyModel::setSortCaseSensitivity(Qt::CaseSensitivity cs) +{ + Q_D(QSortFilterProxyModel); + if (d->sort_casesensitivity == cs) + return; + + d->sort_casesensitivity = cs; + d->sort(); +} + +/*! + \since 4.3 + \property QSortFilterProxyModel::isSortLocaleAware + \brief the local aware setting used for comparing strings when sorting + + By default, sorting is not local aware. + + \sa sortCaseSensitivity, lessThan() +*/ +bool QSortFilterProxyModel::isSortLocaleAware() const +{ + Q_D(const QSortFilterProxyModel); + return d->sort_localeaware; +} + +void QSortFilterProxyModel::setSortLocaleAware(bool on) +{ + Q_D(QSortFilterProxyModel); + if (d->sort_localeaware == on) + return; + + d->sort_localeaware = on; + d->sort(); +} + +/*! + \overload + + Sets the regular expression used to filter the contents + of the source model to \a pattern. + + \sa setFilterCaseSensitivity(), setFilterWildcard(), setFilterFixedString(), filterRegExp() +*/ +void QSortFilterProxyModel::setFilterRegExp(const QString &pattern) +{ + Q_D(QSortFilterProxyModel); + d->filter_regexp.setPatternSyntax(QRegExp::RegExp); + d->filter_regexp.setPattern(pattern); + d->filter_changed(); +} + +/*! + Sets the wildcard expression used to filter the contents + of the source model to the given \a pattern. + + \sa setFilterCaseSensitivity(), setFilterRegExp(), setFilterFixedString(), filterRegExp() +*/ +void QSortFilterProxyModel::setFilterWildcard(const QString &pattern) +{ + Q_D(QSortFilterProxyModel); + d->filter_regexp.setPatternSyntax(QRegExp::Wildcard); + d->filter_regexp.setPattern(pattern); + d->filter_changed(); +} + +/*! + Sets the fixed string used to filter the contents + of the source model to the given \a pattern. + + \sa setFilterCaseSensitivity(), setFilterRegExp(), setFilterWildcard(), filterRegExp() +*/ +void QSortFilterProxyModel::setFilterFixedString(const QString &pattern) +{ + Q_D(QSortFilterProxyModel); + d->filter_regexp.setPatternSyntax(QRegExp::FixedString); + d->filter_regexp.setPattern(pattern); + d->filter_changed(); +} + +/*! + \since 4.2 + \property QSortFilterProxyModel::dynamicSortFilter + \brief whether the proxy model is dynamically sorted and filtered + whenever the contents of the source model change + + Note that you should not update the source model through the proxy + model when dynamicSortFilter is true. For instance, if you set the + proxy model on a QComboBox, then using functions that update the + model, e.g., \l{QComboBox::}{addItem()}, will not work as + expected. An alternative is to set dynamicSortFilter to false and + call \l{QSortFilterProxyModel::}{sort()} after adding items to the + QComboBox. + + The default value is false. +*/ +bool QSortFilterProxyModel::dynamicSortFilter() const +{ + Q_D(const QSortFilterProxyModel); + return d->dynamic_sortfilter; +} + +void QSortFilterProxyModel::setDynamicSortFilter(bool enable) +{ + Q_D(QSortFilterProxyModel); + d->dynamic_sortfilter = enable; + if (enable) + d->sort(); +} + +/*! + \since 4.2 + \property QSortFilterProxyModel::sortRole + \brief the item role that is used to query the source model's data when sorting items + + The default value is Qt::DisplayRole. + + \sa lessThan() +*/ +int QSortFilterProxyModel::sortRole() const +{ + Q_D(const QSortFilterProxyModel); + return d->sort_role; +} + +void QSortFilterProxyModel::setSortRole(int role) +{ + Q_D(QSortFilterProxyModel); + if (d->sort_role == role) + return; + d->sort_role = role; + d->sort(); +} + +/*! + \since 4.2 + \property QSortFilterProxyModel::filterRole + \brief the item role that is used to query the source model's data when filtering items + + The default value is Qt::DisplayRole. + + \sa filterAcceptsRow() +*/ +int QSortFilterProxyModel::filterRole() const +{ + Q_D(const QSortFilterProxyModel); + return d->filter_role; +} + +void QSortFilterProxyModel::setFilterRole(int role) +{ + Q_D(QSortFilterProxyModel); + if (d->filter_role == role) + return; + d->filter_role = role; + d->filter_changed(); +} + +/*! + \obsolete + + This function is obsolete. Use invalidate() instead. +*/ +void QSortFilterProxyModel::clear() +{ + Q_D(QSortFilterProxyModel); + emit layoutAboutToBeChanged(); + d->_q_clearMapping(); + emit layoutChanged(); +} + +/*! + \since 4.3 + + Invalidates the current sorting and filtering. + + \sa invalidateFilter() +*/ +void QSortFilterProxyModel::invalidate() +{ + Q_D(QSortFilterProxyModel); + emit layoutAboutToBeChanged(); + d->_q_clearMapping(); + emit layoutChanged(); +} + +/*! + \obsolete + + This function is obsolete. Use invalidateFilter() instead. +*/ +void QSortFilterProxyModel::filterChanged() +{ + Q_D(QSortFilterProxyModel); + d->filter_changed(); +} + +/*! + \since 4.3 + + Invalidates the current filtering. + + This function should be called if you are implementing custom filtering + (e.g. filterAcceptsRow()), and your filter parameters have changed. + + \sa invalidate() +*/ +void QSortFilterProxyModel::invalidateFilter() +{ + Q_D(QSortFilterProxyModel); + d->filter_changed(); +} + +/*! + Returns true if the value of the item referred to by the given + index \a left is less than the value of the item referred to by + the given index \a right, otherwise returns false. + + This function is used as the < operator when sorting, and handles + the following QVariant types: + + \list + \o QVariant::Int + \o QVariant::UInt + \o QVariant::LongLong + \o QVariant::ULongLong + \o QVariant::Double + \o QVariant::Char + \o QVariant::Date + \o QVariant::Time + \o QVariant::DateTime + \o QVariant::String + \endlist + + Any other type will be converted to a QString using + QVariant::toString(). + + Comparison of \l{QString}s is case sensitive by default; this can + be changed using the \l {QSortFilterProxyModel::sortCaseSensitivity} + {sortCaseSensitivity} property. + + By default, the Qt::DisplayRole associated with the + \l{QModelIndex}es is used for comparisons. This can be changed by + setting the \l {QSortFilterProxyModel::sortRole} {sortRole} property. + + \note The indices passed in correspond to the source model. + + \sa sortRole, sortCaseSensitivity, dynamicSortFilter +*/ +bool QSortFilterProxyModel::lessThan(const QModelIndex &left, const QModelIndex &right) const +{ + Q_D(const QSortFilterProxyModel); + QVariant l = (left.model() ? left.model()->data(left, d->sort_role) : QVariant()); + QVariant r = (right.model() ? right.model()->data(right, d->sort_role) : QVariant()); + switch (l.userType()) { + case QVariant::Invalid: + return (r.type() != QVariant::Invalid); + case QVariant::Int: + return l.toInt() < r.toInt(); + case QVariant::UInt: + return l.toUInt() < r.toUInt(); + case QVariant::LongLong: + return l.toLongLong() < r.toLongLong(); + case QVariant::ULongLong: + return l.toULongLong() < r.toULongLong(); + case QMetaType::Float: + return l.toFloat() < r.toFloat(); + case QVariant::Double: + return l.toDouble() < r.toDouble(); + case QVariant::Char: + return l.toChar() < r.toChar(); + case QVariant::Date: + return l.toDate() < r.toDate(); + case QVariant::Time: + return l.toTime() < r.toTime(); + case QVariant::DateTime: + return l.toDateTime() < r.toDateTime(); + case QVariant::String: + default: + if (d->sort_localeaware) + return l.toString().localeAwareCompare(r.toString()) < 0; + else + return l.toString().compare(r.toString(), d->sort_casesensitivity) < 0; + } + return false; +} + +/*! + Returns true if the item in the row indicated by the given \a source_row + and \a source_parent should be included in the model; otherwise returns + false. + + The default implementation returns true if the value held by the relevant item + matches the filter string, wildcard string or regular expression. + + \note By default, the Qt::DisplayRole is used to determine if the row + should be accepted or not. This can be changed by setting the + \l{QSortFilterProxyModel::filterRole}{filterRole} property. + + \sa filterAcceptsColumn(), setFilterFixedString(), setFilterRegExp(), setFilterWildcard() +*/ +bool QSortFilterProxyModel::filterAcceptsRow(int source_row, const QModelIndex &source_parent) const +{ + Q_D(const QSortFilterProxyModel); + if (d->filter_regexp.isEmpty()) + return true; + if (d->filter_column == -1) { + int column_count = d->model->columnCount(source_parent); + for (int column = 0; column < column_count; ++column) { + QModelIndex source_index = d->model->index(source_row, column, source_parent); + QString key = d->model->data(source_index, d->filter_role).toString(); + if (key.contains(d->filter_regexp)) + return true; + } + return false; + } + QModelIndex source_index = d->model->index(source_row, d->filter_column, source_parent); + if (!source_index.isValid()) // the column may not exist + return true; + QString key = d->model->data(source_index, d->filter_role).toString(); + return key.contains(d->filter_regexp); +} + +/*! + Returns true if the item in the column indicated by the given \a source_column + and \a source_parent should be included in the model; otherwise returns false. + + The default implementation returns true if the value held by the relevant item + matches the filter string, wildcard string or regular expression. + + \note By default, the Qt::DisplayRole is used to determine if the row + should be accepted or not. This can be changed by setting the \l + filterRole property. + + \sa filterAcceptsRow(), setFilterFixedString(), setFilterRegExp(), setFilterWildcard() +*/ +bool QSortFilterProxyModel::filterAcceptsColumn(int source_column, const QModelIndex &source_parent) const +{ + Q_UNUSED(source_column); + Q_UNUSED(source_parent); + return true; +} + +/*! + Returns the source model index corresponding to the given \a + proxyIndex from the sorting filter model. + + \sa mapFromSource() +*/ +QModelIndex QSortFilterProxyModel::mapToSource(const QModelIndex &proxyIndex) const +{ + Q_D(const QSortFilterProxyModel); + return d->proxy_to_source(proxyIndex); +} + +/*! + Returns the model index in the QSortFilterProxyModel given the \a + sourceIndex from the source model. + + \sa mapToSource() +*/ +QModelIndex QSortFilterProxyModel::mapFromSource(const QModelIndex &sourceIndex) const +{ + Q_D(const QSortFilterProxyModel); + return d->source_to_proxy(sourceIndex); +} + +/*! + \reimp +*/ +QItemSelection QSortFilterProxyModel::mapSelectionToSource(const QItemSelection &proxySelection) const +{ + return QAbstractProxyModel::mapSelectionToSource(proxySelection); +} + +/*! + \reimp +*/ +QItemSelection QSortFilterProxyModel::mapSelectionFromSource(const QItemSelection &sourceSelection) const +{ + return QAbstractProxyModel::mapSelectionFromSource(sourceSelection); +} + +/*! + \fn QObject *QSortFilterProxyModel::parent() const + \internal +*/ + +QT_END_NAMESPACE + +#include "moc_qsortfilterproxymodel.cpp" + +#endif // QT_NO_SORTFILTERPROXYMODEL diff --git a/src/corelib/itemmodels/qsortfilterproxymodel.h b/src/corelib/itemmodels/qsortfilterproxymodel.h new file mode 100644 index 0000000000..80f49e405a --- /dev/null +++ b/src/corelib/itemmodels/qsortfilterproxymodel.h @@ -0,0 +1,205 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtGui module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QSORTFILTERPROXYMODEL_H +#define QSORTFILTERPROXYMODEL_H + +#include + +#ifndef QT_NO_SORTFILTERPROXYMODEL + +#include + +QT_BEGIN_HEADER + +QT_BEGIN_NAMESPACE + +QT_MODULE(Core) + +class QSortFilterProxyModelPrivate; +class QSortFilterProxyModelLessThan; +class QSortFilterProxyModelGreaterThan; + +class Q_CORE_EXPORT QSortFilterProxyModel : public QAbstractProxyModel +{ + friend class QSortFilterProxyModelLessThan; + friend class QSortFilterProxyModelGreaterThan; + + Q_OBJECT + Q_PROPERTY(QRegExp filterRegExp READ filterRegExp WRITE setFilterRegExp) + Q_PROPERTY(int filterKeyColumn READ filterKeyColumn WRITE setFilterKeyColumn) + Q_PROPERTY(bool dynamicSortFilter READ dynamicSortFilter WRITE setDynamicSortFilter) + Q_PROPERTY(Qt::CaseSensitivity filterCaseSensitivity READ filterCaseSensitivity WRITE setFilterCaseSensitivity) + Q_PROPERTY(Qt::CaseSensitivity sortCaseSensitivity READ sortCaseSensitivity WRITE setSortCaseSensitivity) + Q_PROPERTY(bool isSortLocaleAware READ isSortLocaleAware WRITE setSortLocaleAware) + Q_PROPERTY(int sortRole READ sortRole WRITE setSortRole) + Q_PROPERTY(int filterRole READ filterRole WRITE setFilterRole) + +public: + QSortFilterProxyModel(QObject *parent = 0); + ~QSortFilterProxyModel(); + + void setSourceModel(QAbstractItemModel *sourceModel); + + QModelIndex mapToSource(const QModelIndex &proxyIndex) const; + QModelIndex mapFromSource(const QModelIndex &sourceIndex) const; + + QItemSelection mapSelectionToSource(const QItemSelection &proxySelection) const; + QItemSelection mapSelectionFromSource(const QItemSelection &sourceSelection) const; + + QRegExp filterRegExp() const; + void setFilterRegExp(const QRegExp ®Exp); + + int filterKeyColumn() const; + void setFilterKeyColumn(int column); + + Qt::CaseSensitivity filterCaseSensitivity() const; + void setFilterCaseSensitivity(Qt::CaseSensitivity cs); + + Qt::CaseSensitivity sortCaseSensitivity() const; + void setSortCaseSensitivity(Qt::CaseSensitivity cs); + + bool isSortLocaleAware() const; + void setSortLocaleAware(bool on); + + int sortColumn() const; + Qt::SortOrder sortOrder() const; + + bool dynamicSortFilter() const; + void setDynamicSortFilter(bool enable); + + int sortRole() const; + void setSortRole(int role); + + int filterRole() const; + void setFilterRole(int role); + +public Q_SLOTS: + void setFilterRegExp(const QString &pattern); + void setFilterWildcard(const QString &pattern); + void setFilterFixedString(const QString &pattern); + void clear(); + void invalidate(); + +protected: + virtual bool filterAcceptsRow(int source_row, const QModelIndex &source_parent) const; + virtual bool filterAcceptsColumn(int source_column, const QModelIndex &source_parent) const; + virtual bool lessThan(const QModelIndex &left, const QModelIndex &right) const; + + void filterChanged(); + void invalidateFilter(); + +public: +#ifdef Q_NO_USING_KEYWORD + inline QObject *parent() const { return QObject::parent(); } +#else + using QObject::parent; +#endif + + QModelIndex index(int row, int column, const QModelIndex &parent = QModelIndex()) const; + QModelIndex parent(const QModelIndex &child) const; + + int rowCount(const QModelIndex &parent = QModelIndex()) const; + int columnCount(const QModelIndex &parent = QModelIndex()) const; + bool hasChildren(const QModelIndex &parent = QModelIndex()) const; + + QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const; + bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole); + + QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const; + bool setHeaderData(int section, Qt::Orientation orientation, + const QVariant &value, int role = Qt::EditRole); + + QMimeData *mimeData(const QModelIndexList &indexes) const; + bool dropMimeData(const QMimeData *data, Qt::DropAction action, + int row, int column, const QModelIndex &parent); + + bool insertRows(int row, int count, const QModelIndex &parent = QModelIndex()); + bool insertColumns(int column, int count, const QModelIndex &parent = QModelIndex()); + bool removeRows(int row, int count, const QModelIndex &parent = QModelIndex()); + bool removeColumns(int column, int count, const QModelIndex &parent = QModelIndex()); + + void fetchMore(const QModelIndex &parent); + bool canFetchMore(const QModelIndex &parent) const; + Qt::ItemFlags flags(const QModelIndex &index) const; + + QModelIndex buddy(const QModelIndex &index) const; + QModelIndexList match(const QModelIndex &start, int role, + const QVariant &value, int hits = 1, + Qt::MatchFlags flags = + Qt::MatchFlags(Qt::MatchStartsWith|Qt::MatchWrap)) const; + QSize span(const QModelIndex &index) const; + void sort(int column, Qt::SortOrder order = Qt::AscendingOrder); + + QStringList mimeTypes() const; + Qt::DropActions supportedDropActions() const; +private: + Q_DECLARE_PRIVATE(QSortFilterProxyModel) + Q_DISABLE_COPY(QSortFilterProxyModel) + + Q_PRIVATE_SLOT(d_func(), void _q_sourceDataChanged(const QModelIndex &source_top_left, const QModelIndex &source_bottom_right)) + Q_PRIVATE_SLOT(d_func(), void _q_sourceHeaderDataChanged(Qt::Orientation orientation, int start, int end)) + Q_PRIVATE_SLOT(d_func(), void _q_sourceAboutToBeReset()) + Q_PRIVATE_SLOT(d_func(), void _q_sourceReset()) + Q_PRIVATE_SLOT(d_func(), void _q_sourceLayoutAboutToBeChanged(const QList &sourceParents)) + Q_PRIVATE_SLOT(d_func(), void _q_sourceLayoutChanged(const QList &sourceParents)) + Q_PRIVATE_SLOT(d_func(), void _q_sourceRowsAboutToBeInserted(const QModelIndex &source_parent, int start, int end)) + Q_PRIVATE_SLOT(d_func(), void _q_sourceRowsInserted(const QModelIndex &source_parent, int start, int end)) + Q_PRIVATE_SLOT(d_func(), void _q_sourceRowsAboutToBeRemoved(const QModelIndex &source_parent, int start, int end)) + Q_PRIVATE_SLOT(d_func(), void _q_sourceRowsRemoved(const QModelIndex &source_parent, int start, int end)) + Q_PRIVATE_SLOT(d_func(), void _q_sourceRowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)) + Q_PRIVATE_SLOT(d_func(), void _q_sourceRowsMoved(QModelIndex,int,int,QModelIndex,int)) + Q_PRIVATE_SLOT(d_func(), void _q_sourceColumnsAboutToBeInserted(const QModelIndex &source_parent, int start, int end)) + Q_PRIVATE_SLOT(d_func(), void _q_sourceColumnsInserted(const QModelIndex &source_parent, int start, int end)) + Q_PRIVATE_SLOT(d_func(), void _q_sourceColumnsAboutToBeRemoved(const QModelIndex &source_parent, int start, int end)) + Q_PRIVATE_SLOT(d_func(), void _q_sourceColumnsRemoved(const QModelIndex &source_parent, int start, int end)) + Q_PRIVATE_SLOT(d_func(), void _q_sourceColumnsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)) + Q_PRIVATE_SLOT(d_func(), void _q_sourceColumnsMoved(QModelIndex,int,int,QModelIndex,int)) + Q_PRIVATE_SLOT(d_func(), void _q_clearMapping()) +}; + +QT_END_NAMESPACE + +QT_END_HEADER + +#endif // QT_NO_SORTFILTERPROXYMODEL + +#endif // QSORTFILTERPROXYMODEL_H diff --git a/src/corelib/itemmodels/qstringlistmodel.cpp b/src/corelib/itemmodels/qstringlistmodel.cpp new file mode 100644 index 0000000000..434f790890 --- /dev/null +++ b/src/corelib/itemmodels/qstringlistmodel.cpp @@ -0,0 +1,310 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtGui module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +/* + A simple model that uses a QStringList as its data source. +*/ + +#include "qstringlistmodel.h" + +#include + +#ifndef QT_NO_STRINGLISTMODEL + +QT_BEGIN_NAMESPACE + +/*! + \class QStringListModel + \brief The QStringListModel class provides a model that supplies strings to views. + + \ingroup model-view + \inmodule QtCore + + QStringListModel is an editable model that can be used for simple + cases where you need to display a number of strings in a view + widget, such as a QListView or a QComboBox. + + The model provides all the standard functions of an editable + model, representing the data in the string list as a model with + one column and a number of rows equal to the number of items in + the list. + + Model indexes corresponding to items are obtained with the + \l{QAbstractListModel::index()}{index()} function, and item flags + are obtained with flags(). Item data is read with the data() + function and written with setData(). The number of rows (and + number of items in the string list) can be found with the + rowCount() function. + + The model can be constructed with an existing string list, or + strings can be set later with the setStringList() convenience + function. Strings can also be inserted in the usual way with the + insertRows() function, and removed with removeRows(). The contents + of the string list can be retrieved with the stringList() + convenience function. + + An example usage of QStringListModel: + + \snippet doc/src/snippets/qstringlistmodel/main.cpp 0 + + \sa QAbstractListModel, QAbstractItemModel, {Model Classes} +*/ + +/*! + Constructs a string list model with the given \a parent. +*/ + +QStringListModel::QStringListModel(QObject *parent) + : QAbstractListModel(parent) +{ +} + +/*! + Constructs a string list model containing the specified \a strings + with the given \a parent. +*/ + +QStringListModel::QStringListModel(const QStringList &strings, QObject *parent) + : QAbstractListModel(parent), lst(strings) +{ +} + +/*! + Returns the number of rows in the model. This value corresponds to the + number of items in the model's internal string list. + + The optional \a parent argument is in most models used to specify + the parent of the rows to be counted. Because this is a list if a + valid parent is specified, the result will always be 0. + + \sa insertRows(), removeRows(), QAbstractItemModel::rowCount() +*/ + +int QStringListModel::rowCount(const QModelIndex &parent) const +{ + if (parent.isValid()) + return 0; + + return lst.count(); +} + +/*! + Returns data for the specified \a role, from the item with the + given \a index. + + If the view requests an invalid index, an invalid variant is returned. + + \sa setData() +*/ + +QVariant QStringListModel::data(const QModelIndex &index, int role) const +{ + if (index.row() < 0 || index.row() >= lst.size()) + return QVariant(); + + if (role == Qt::DisplayRole || role == Qt::EditRole) + return lst.at(index.row()); + + return QVariant(); +} + +/*! + Returns the flags for the item with the given \a index. + + Valid items are enabled, selectable, editable, drag enabled and drop enabled. + + \sa QAbstractItemModel::flags() +*/ + +Qt::ItemFlags QStringListModel::flags(const QModelIndex &index) const +{ + if (!index.isValid()) + return QAbstractItemModel::flags(index) | Qt::ItemIsDropEnabled; + + return QAbstractItemModel::flags(index) | Qt::ItemIsEditable | Qt::ItemIsDragEnabled | Qt::ItemIsDropEnabled; +} + +/*! + Sets the data for the specified \a role in the item with the given + \a index in the model, to the provided \a value. + + The dataChanged() signal is emitted if the item is changed. + + \sa Qt::ItemDataRole, data() +*/ + +bool QStringListModel::setData(const QModelIndex &index, const QVariant &value, int role) +{ + if (index.row() >= 0 && index.row() < lst.size() + && (role == Qt::EditRole || role == Qt::DisplayRole)) { + lst.replace(index.row(), value.toString()); + emit dataChanged(index, index); + return true; + } + return false; +} + +/*! + Inserts \a count rows into the model, beginning at the given \a row. + + The \a parent index of the rows is optional and is only used for + consistency with QAbstractItemModel. By default, a null index is + specified, indicating that the rows are inserted in the top level of + the model. + + \sa QAbstractItemModel::insertRows() +*/ + +bool QStringListModel::insertRows(int row, int count, const QModelIndex &parent) +{ + if (count < 1 || row < 0 || row > rowCount(parent)) + return false; + + beginInsertRows(QModelIndex(), row, row + count - 1); + + for (int r = 0; r < count; ++r) + lst.insert(row, QString()); + + endInsertRows(); + + return true; +} + +/*! + Removes \a count rows from the model, beginning at the given \a row. + + The \a parent index of the rows is optional and is only used for + consistency with QAbstractItemModel. By default, a null index is + specified, indicating that the rows are removed in the top level of + the model. + + \sa QAbstractItemModel::removeRows() +*/ + +bool QStringListModel::removeRows(int row, int count, const QModelIndex &parent) +{ + if (count <= 0 || row < 0 || (row + count) > rowCount(parent)) + return false; + + beginRemoveRows(QModelIndex(), row, row + count - 1); + + for (int r = 0; r < count; ++r) + lst.removeAt(row); + + endRemoveRows(); + + return true; +} + +static bool ascendingLessThan(const QPair &s1, const QPair &s2) +{ + return s1.first < s2.first; +} + +static bool decendingLessThan(const QPair &s1, const QPair &s2) +{ + return s1.first > s2.first; +} + +/*! + \reimp +*/ +void QStringListModel::sort(int, Qt::SortOrder order) +{ + emit layoutAboutToBeChanged(); + + QList > list; + for (int i = 0; i < lst.count(); ++i) + list.append(QPair(lst.at(i), i)); + + if (order == Qt::AscendingOrder) + qSort(list.begin(), list.end(), ascendingLessThan); + else + qSort(list.begin(), list.end(), decendingLessThan); + + lst.clear(); + QVector forwarding(list.count()); + for (int i = 0; i < list.count(); ++i) { + lst.append(list.at(i).first); + forwarding[list.at(i).second] = i; + } + + QModelIndexList oldList = persistentIndexList(); + QModelIndexList newList; + for (int i = 0; i < oldList.count(); ++i) + newList.append(index(forwarding.at(oldList.at(i).row()), 0)); + changePersistentIndexList(oldList, newList); + + emit layoutChanged(); +} + +/*! + Returns the string list used by the model to store data. +*/ +QStringList QStringListModel::stringList() const +{ + return lst; +} + +/*! + Sets the model's internal string list to \a strings. The model will + notify any attached views that its underlying data has changed. + + \sa dataChanged() +*/ +void QStringListModel::setStringList(const QStringList &strings) +{ + emit beginResetModel(); + lst = strings; + emit endResetModel(); +} + +/*! + \reimp +*/ +Qt::DropActions QStringListModel::supportedDropActions() const +{ + return QAbstractItemModel::supportedDropActions() | Qt::MoveAction; +} + +QT_END_NAMESPACE + +#endif // QT_NO_STRINGLISTMODEL diff --git a/src/corelib/itemmodels/qstringlistmodel.h b/src/corelib/itemmodels/qstringlistmodel.h new file mode 100644 index 0000000000..3d1331403f --- /dev/null +++ b/src/corelib/itemmodels/qstringlistmodel.h @@ -0,0 +1,91 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtGui module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QSTRINGLISTMODEL_H +#define QSTRINGLISTMODEL_H + +#include +#include + +QT_BEGIN_HEADER + +QT_BEGIN_NAMESPACE + +QT_MODULE(Core) + +#ifndef QT_NO_STRINGLISTMODEL + +class Q_CORE_EXPORT QStringListModel : public QAbstractListModel +{ + Q_OBJECT +public: + explicit QStringListModel(QObject *parent = 0); + QStringListModel(const QStringList &strings, QObject *parent = 0); + + int rowCount(const QModelIndex &parent = QModelIndex()) const; + + QVariant data(const QModelIndex &index, int role) const; + bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole); + + Qt::ItemFlags flags(const QModelIndex &index) const; + + bool insertRows(int row, int count, const QModelIndex &parent = QModelIndex()); + bool removeRows(int row, int count, const QModelIndex &parent = QModelIndex()); + + void sort(int column, Qt::SortOrder order = Qt::AscendingOrder); + + QStringList stringList() const; + void setStringList(const QStringList &strings); + + Qt::DropActions supportedDropActions() const; + +private: + Q_DISABLE_COPY(QStringListModel) + QStringList lst; +}; + +#endif // QT_NO_STRINGLISTMODEL + +QT_END_NAMESPACE + +QT_END_HEADER + +#endif // QSTRINGLISTMODEL_H diff --git a/src/widgets/itemviews/itemviews.pri b/src/widgets/itemviews/itemviews.pri index 7ef704546e..d5a5012f83 100644 --- a/src/widgets/itemviews/itemviews.pri +++ b/src/widgets/itemviews/itemviews.pri @@ -4,7 +4,6 @@ HEADERS += \ itemviews/qabstractitemview.h \ itemviews/qabstractitemview_p.h \ itemviews/qheaderview.h \ - itemviews/qidentityproxymodel.h \ itemviews/qlistview.h \ itemviews/qlistview_p.h \ itemviews/qbsptree_p.h \ @@ -14,8 +13,6 @@ HEADERS += \ itemviews/qtreeview_p.h \ itemviews/qabstractitemdelegate.h \ itemviews/qitemdelegate.h \ - itemviews/qitemselectionmodel.h \ - itemviews/qitemselectionmodel_p.h \ itemviews/qdirmodel.h \ itemviews/qlistwidget.h \ itemviews/qlistwidget_p.h \ @@ -26,14 +23,10 @@ HEADERS += \ itemviews/qwidgetitemdata_p.h \ itemviews/qproxymodel.h \ itemviews/qproxymodel_p.h \ - itemviews/qabstractproxymodel.h \ - itemviews/qabstractproxymodel_p.h \ - itemviews/qsortfilterproxymodel.h \ itemviews/qitemeditorfactory.h \ itemviews/qitemeditorfactory_p.h \ itemviews/qstandarditemmodel.h \ itemviews/qstandarditemmodel_p.h \ - itemviews/qstringlistmodel.h \ itemviews/qtreewidgetitemiterator.h \ itemviews/qdatawidgetmapper.h \ itemviews/qfileiconprovider.h \ @@ -45,24 +38,19 @@ HEADERS += \ SOURCES += \ itemviews/qabstractitemview.cpp \ itemviews/qheaderview.cpp \ - itemviews/qidentityproxymodel.cpp \ itemviews/qlistview.cpp \ itemviews/qbsptree.cpp \ itemviews/qtableview.cpp \ itemviews/qtreeview.cpp \ itemviews/qabstractitemdelegate.cpp \ itemviews/qitemdelegate.cpp \ - itemviews/qitemselectionmodel.cpp \ itemviews/qdirmodel.cpp \ itemviews/qlistwidget.cpp \ itemviews/qtablewidget.cpp \ itemviews/qtreewidget.cpp \ itemviews/qproxymodel.cpp \ - itemviews/qabstractproxymodel.cpp \ - itemviews/qsortfilterproxymodel.cpp \ itemviews/qitemeditorfactory.cpp \ itemviews/qstandarditemmodel.cpp \ - itemviews/qstringlistmodel.cpp \ itemviews/qtreewidgetitemiterator.cpp \ itemviews/qdatawidgetmapper.cpp \ itemviews/qfileiconprovider.cpp \ diff --git a/src/widgets/itemviews/qabstractitemview.h b/src/widgets/itemviews/qabstractitemview.h index 25501e67c5..00b19cf0d1 100644 --- a/src/widgets/itemviews/qabstractitemview.h +++ b/src/widgets/itemviews/qabstractitemview.h @@ -44,7 +44,7 @@ #include #include -#include +#include #include QT_BEGIN_HEADER diff --git a/src/widgets/itemviews/qabstractproxymodel.cpp b/src/widgets/itemviews/qabstractproxymodel.cpp deleted file mode 100644 index 47810d6cc7..0000000000 --- a/src/widgets/itemviews/qabstractproxymodel.cpp +++ /dev/null @@ -1,388 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtGui module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "qabstractproxymodel.h" - -#ifndef QT_NO_PROXYMODEL - -#include "qitemselectionmodel.h" -#include -#include -#include - - -QT_BEGIN_NAMESPACE - -/*! - \since 4.1 - \class QAbstractProxyModel - \brief The QAbstractProxyModel class provides a base class for proxy item - models that can do sorting, filtering or other data processing tasks. - \ingroup model-view - \inmodule QtWidgets - - This class defines the standard interface that proxy models must use to be - able to interoperate correctly with other model/view components. It is not - supposed to be instantiated directly. - - All standard proxy models are derived from the QAbstractProxyModel class. - If you need to create a new proxy model class, it is usually better to - subclass an existing class that provides the closest behavior to the one - you want to provide. - - Proxy models that filter or sort items of data from a source model should - be created by using or subclassing QSortFilterProxyModel. - - To subclass QAbstractProxyModel, you need to implement mapFromSource() and - mapToSource(). The mapSelectionFromSource() and mapSelectionToSource() - functions only need to be reimplemented if you need a behavior different - from the default behavior. - - \note If the source model is deleted or no source model is specified, the - proxy model operates on a empty placeholder model. - - \sa QSortFilterProxyModel, QAbstractItemModel, {Model/View Programming} -*/ - -//detects the deletion of the source model -void QAbstractProxyModelPrivate::_q_sourceModelDestroyed() -{ - model = QAbstractItemModelPrivate::staticEmptyModel(); -} - -/*! - Constructs a proxy model with the given \a parent. -*/ - -QAbstractProxyModel::QAbstractProxyModel(QObject *parent) - :QAbstractItemModel(*new QAbstractProxyModelPrivate, parent) -{ - setSourceModel(QAbstractItemModelPrivate::staticEmptyModel()); -} - -/*! - \internal -*/ - -QAbstractProxyModel::QAbstractProxyModel(QAbstractProxyModelPrivate &dd, QObject *parent) - : QAbstractItemModel(dd, parent) -{ - setSourceModel(QAbstractItemModelPrivate::staticEmptyModel()); -} - -/*! - Destroys the proxy model. -*/ -QAbstractProxyModel::~QAbstractProxyModel() -{ - -} - -/*! - Sets the given \a sourceModel to be processed by the proxy model. -*/ -void QAbstractProxyModel::setSourceModel(QAbstractItemModel *sourceModel) -{ - Q_D(QAbstractProxyModel); - if (d->model) - disconnect(d->model, SIGNAL(destroyed()), this, SLOT(_q_sourceModelDestroyed())); - - if (sourceModel) { - d->model = sourceModel; - connect(d->model, SIGNAL(destroyed()), this, SLOT(_q_sourceModelDestroyed())); - } else { - d->model = QAbstractItemModelPrivate::staticEmptyModel(); - } - d->roleNames = d->model->roleNames(); -} - -/*! - Returns the model that contains the data that is available through the proxy model. -*/ -QAbstractItemModel *QAbstractProxyModel::sourceModel() const -{ - Q_D(const QAbstractProxyModel); - if (d->model == QAbstractItemModelPrivate::staticEmptyModel()) - return 0; - return d->model; -} - -/*! - \reimp - */ -bool QAbstractProxyModel::submit() -{ - Q_D(QAbstractProxyModel); - return d->model->submit(); -} - -/*! - \reimp - */ -void QAbstractProxyModel::revert() -{ - Q_D(QAbstractProxyModel); - d->model->revert(); -} - - -/*! - \fn QModelIndex QAbstractProxyModel::mapToSource(const QModelIndex &proxyIndex) const - - Reimplement this function to return the model index in the source model that - corresponds to the \a proxyIndex in the proxy model. - - \sa mapFromSource() -*/ - -/*! - \fn QModelIndex QAbstractProxyModel::mapFromSource(const QModelIndex &sourceIndex) const - - Reimplement this function to return the model index in the proxy model that - corresponds to the \a sourceIndex from the source model. - - \sa mapToSource() -*/ - -/*! - Returns a source selection mapped from the specified \a proxySelection. - - Reimplement this method to map proxy selections to source selections. - */ -QItemSelection QAbstractProxyModel::mapSelectionToSource(const QItemSelection &proxySelection) const -{ - QModelIndexList proxyIndexes = proxySelection.indexes(); - QItemSelection sourceSelection; - for (int i = 0; i < proxyIndexes.size(); ++i) { - const QModelIndex proxyIdx = mapToSource(proxyIndexes.at(i)); - if (!proxyIdx.isValid()) - continue; - sourceSelection << QItemSelectionRange(proxyIdx); - } - return sourceSelection; -} - -/*! - Returns a proxy selection mapped from the specified \a sourceSelection. - - Reimplement this method to map source selections to proxy selections. -*/ -QItemSelection QAbstractProxyModel::mapSelectionFromSource(const QItemSelection &sourceSelection) const -{ - QModelIndexList sourceIndexes = sourceSelection.indexes(); - QItemSelection proxySelection; - for (int i = 0; i < sourceIndexes.size(); ++i) { - const QModelIndex srcIdx = mapFromSource(sourceIndexes.at(i)); - if (!srcIdx.isValid()) - continue; - proxySelection << QItemSelectionRange(srcIdx); - } - return proxySelection; -} - -/*! - \reimp - */ -QVariant QAbstractProxyModel::data(const QModelIndex &proxyIndex, int role) const -{ - Q_D(const QAbstractProxyModel); - return d->model->data(mapToSource(proxyIndex), role); -} - -/*! - \reimp - */ -QVariant QAbstractProxyModel::headerData(int section, Qt::Orientation orientation, int role) const -{ - Q_D(const QAbstractProxyModel); - int sourceSection; - if (orientation == Qt::Horizontal) { - const QModelIndex proxyIndex = index(0, section); - sourceSection = mapToSource(proxyIndex).column(); - } else { - const QModelIndex proxyIndex = index(section, 0); - sourceSection = mapToSource(proxyIndex).row(); - } - return d->model->headerData(sourceSection, orientation, role); -} - -/*! - \reimp - */ -QMap QAbstractProxyModel::itemData(const QModelIndex &proxyIndex) const -{ - Q_D(const QAbstractProxyModel); - return d->model->itemData(mapToSource(proxyIndex)); -} - -/*! - \reimp - */ -Qt::ItemFlags QAbstractProxyModel::flags(const QModelIndex &index) const -{ - Q_D(const QAbstractProxyModel); - return d->model->flags(mapToSource(index)); -} - -/*! - \reimp - */ -bool QAbstractProxyModel::setData(const QModelIndex &index, const QVariant &value, int role) -{ - Q_D(QAbstractProxyModel); - return d->model->setData(mapToSource(index), value, role); -} - -/*! - \reimp - */ -bool QAbstractProxyModel::setItemData(const QModelIndex &index, const QMap< int, QVariant >& roles) -{ - Q_D(QAbstractProxyModel); - return d->model->setItemData(mapToSource(index), roles); -} - -/*! - \reimp - */ -bool QAbstractProxyModel::setHeaderData(int section, Qt::Orientation orientation, const QVariant &value, int role) -{ - Q_D(QAbstractProxyModel); - int sourceSection; - if (orientation == Qt::Horizontal) { - const QModelIndex proxyIndex = index(0, section); - sourceSection = mapToSource(proxyIndex).column(); - } else { - const QModelIndex proxyIndex = index(section, 0); - sourceSection = mapToSource(proxyIndex).row(); - } - return d->model->setHeaderData(sourceSection, orientation, value, role); -} - -/*! - \reimp - */ -QModelIndex QAbstractProxyModel::buddy(const QModelIndex &index) const -{ - Q_D(const QAbstractProxyModel); - return mapFromSource(d->model->buddy(mapToSource(index))); -} - -/*! - \reimp - */ -bool QAbstractProxyModel::canFetchMore(const QModelIndex &parent) const -{ - Q_D(const QAbstractProxyModel); - return d->model->canFetchMore(mapToSource(parent)); -} - -/*! - \reimp - */ -void QAbstractProxyModel::fetchMore(const QModelIndex &parent) -{ - Q_D(QAbstractProxyModel); - d->model->fetchMore(mapToSource(parent)); -} - -/*! - \reimp - */ -void QAbstractProxyModel::sort(int column, Qt::SortOrder order) -{ - Q_D(QAbstractProxyModel); - d->model->sort(column, order); -} - -/*! - \reimp - */ -QSize QAbstractProxyModel::span(const QModelIndex &index) const -{ - Q_D(const QAbstractProxyModel); - return d->model->span(mapToSource(index)); -} - -/*! - \reimp - */ -bool QAbstractProxyModel::hasChildren(const QModelIndex &parent) const -{ - Q_D(const QAbstractProxyModel); - return d->model->hasChildren(mapToSource(parent)); -} - -/*! - \reimp - */ -QMimeData* QAbstractProxyModel::mimeData(const QModelIndexList &indexes) const -{ - Q_D(const QAbstractProxyModel); - QModelIndexList list; - foreach(const QModelIndex &index, indexes) - list << mapToSource(index); - return d->model->mimeData(list); -} - -/*! - \reimp - */ -QStringList QAbstractProxyModel::mimeTypes() const -{ - Q_D(const QAbstractProxyModel); - return d->model->mimeTypes(); -} - -/*! - \reimp - */ -Qt::DropActions QAbstractProxyModel::supportedDropActions() const -{ - Q_D(const QAbstractProxyModel); - return d->model->supportedDropActions(); -} - -QT_END_NAMESPACE - -#include "moc_qabstractproxymodel.cpp" - -#endif // QT_NO_PROXYMODEL diff --git a/src/widgets/itemviews/qabstractproxymodel.h b/src/widgets/itemviews/qabstractproxymodel.h deleted file mode 100644 index a24755b556..0000000000 --- a/src/widgets/itemviews/qabstractproxymodel.h +++ /dev/null @@ -1,113 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtGui module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef QABSTRACTPROXYMODEL_H -#define QABSTRACTPROXYMODEL_H - -#include - -QT_BEGIN_HEADER - -QT_BEGIN_NAMESPACE - -QT_MODULE(Gui) - -#ifndef QT_NO_PROXYMODEL - -class QAbstractProxyModelPrivate; -class QItemSelection; - -class Q_WIDGETS_EXPORT QAbstractProxyModel : public QAbstractItemModel -{ - Q_OBJECT - -public: - QAbstractProxyModel(QObject *parent = 0); - ~QAbstractProxyModel(); - - virtual void setSourceModel(QAbstractItemModel *sourceModel); - QAbstractItemModel *sourceModel() const; - - virtual QModelIndex mapToSource(const QModelIndex &proxyIndex) const = 0; - virtual QModelIndex mapFromSource(const QModelIndex &sourceIndex) const = 0; - - virtual QItemSelection mapSelectionToSource(const QItemSelection &selection) const; - virtual QItemSelection mapSelectionFromSource(const QItemSelection &selection) const; - - bool submit(); - void revert(); - - QVariant data(const QModelIndex &proxyIndex, int role = Qt::DisplayRole) const; - QVariant headerData(int section, Qt::Orientation orientation, int role) const; - QMap itemData(const QModelIndex &index) const; - Qt::ItemFlags flags(const QModelIndex &index) const; - - bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole); - bool setItemData(const QModelIndex& index, const QMap &roles); - bool setHeaderData(int section, Qt::Orientation orientation, const QVariant &value, int role = Qt::EditRole); - - QModelIndex buddy(const QModelIndex &index) const; - bool canFetchMore(const QModelIndex &parent) const; - void fetchMore(const QModelIndex &parent); - void sort(int column, Qt::SortOrder order = Qt::AscendingOrder); - QSize span(const QModelIndex &index) const; - bool hasChildren(const QModelIndex &parent = QModelIndex()) const; - - QMimeData* mimeData(const QModelIndexList &indexes) const; - QStringList mimeTypes() const; - Qt::DropActions supportedDropActions() const; - -protected: - QAbstractProxyModel(QAbstractProxyModelPrivate &, QObject *parent); - -private: - Q_DECLARE_PRIVATE(QAbstractProxyModel) - Q_DISABLE_COPY(QAbstractProxyModel) - Q_PRIVATE_SLOT(d_func(), void _q_sourceModelDestroyed()) -}; - -#endif // QT_NO_PROXYMODEL - -QT_END_NAMESPACE - -QT_END_HEADER - -#endif // QABSTRACTPROXYMODEL_H diff --git a/src/widgets/itemviews/qabstractproxymodel_p.h b/src/widgets/itemviews/qabstractproxymodel_p.h deleted file mode 100644 index 9bd38d1cdc..0000000000 --- a/src/widgets/itemviews/qabstractproxymodel_p.h +++ /dev/null @@ -1,76 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtGui module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef QABSTRACTPROXYMODEL_P_H -#define QABSTRACTPROXYMODEL_P_H - -// -// W A R N I N G -// ------------- -// -// This file is not part of the Qt API. It exists for the convenience -// of QAbstractItemModel*. This header file may change from version -// to version without notice, or even be removed. -// -// We mean it. -// -// - -#include "private/qabstractitemmodel_p.h" - -#ifndef QT_NO_PROXYMODEL - -QT_BEGIN_NAMESPACE - -class QAbstractProxyModelPrivate : public QAbstractItemModelPrivate -{ - Q_DECLARE_PUBLIC(QAbstractProxyModel) -public: - QAbstractProxyModelPrivate() : QAbstractItemModelPrivate(), model(0) {} - QAbstractItemModel *model; - virtual void _q_sourceModelDestroyed(); -}; - -QT_END_NAMESPACE - -#endif // QT_NO_PROXYMODEL - -#endif // QABSTRACTPROXYMODEL_P_H diff --git a/src/widgets/itemviews/qidentityproxymodel.cpp b/src/widgets/itemviews/qidentityproxymodel.cpp deleted file mode 100644 index c891565794..0000000000 --- a/src/widgets/itemviews/qidentityproxymodel.cpp +++ /dev/null @@ -1,578 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Klarälvdalens Datakonsult AB, a KDAB Group company, info@kdab.com, author Stephen Kelly -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtGui module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "qidentityproxymodel.h" - -#ifndef QT_NO_IDENTITYPROXYMODEL - -#include "qitemselectionmodel.h" -#include - -QT_BEGIN_NAMESPACE - -class QIdentityProxyModelPrivate : public QAbstractProxyModelPrivate -{ - QIdentityProxyModelPrivate() - { - - } - - Q_DECLARE_PUBLIC(QIdentityProxyModel) - - QList layoutChangePersistentIndexes; - QModelIndexList proxyIndexes; - - void _q_sourceRowsAboutToBeInserted(const QModelIndex &parent, int start, int end); - void _q_sourceRowsInserted(const QModelIndex &parent, int start, int end); - void _q_sourceRowsAboutToBeRemoved(const QModelIndex &parent, int start, int end); - void _q_sourceRowsRemoved(const QModelIndex &parent, int start, int end); - void _q_sourceRowsAboutToBeMoved(const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destParent, int dest); - void _q_sourceRowsMoved(const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destParent, int dest); - - void _q_sourceColumnsAboutToBeInserted(const QModelIndex &parent, int start, int end); - void _q_sourceColumnsInserted(const QModelIndex &parent, int start, int end); - void _q_sourceColumnsAboutToBeRemoved(const QModelIndex &parent, int start, int end); - void _q_sourceColumnsRemoved(const QModelIndex &parent, int start, int end); - void _q_sourceColumnsAboutToBeMoved(const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destParent, int dest); - void _q_sourceColumnsMoved(const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destParent, int dest); - - void _q_sourceDataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight); - void _q_sourceHeaderDataChanged(Qt::Orientation orientation, int first, int last); - - void _q_sourceLayoutAboutToBeChanged(); - void _q_sourceLayoutChanged(); - void _q_sourceModelAboutToBeReset(); - void _q_sourceModelReset(); - -}; - -/*! - \since 4.8 - \class QIdentityProxyModel - \brief The QIdentityProxyModel class proxies its source model unmodified - - \ingroup model-view - \inmodule QtWidgets - - QIdentityProxyModel can be used to forward the structure of a source model exactly, with no sorting, filtering or other transformation. - This is similar in concept to an identity matrix where A.I = A. - - Because it does no sorting or filtering, this class is most suitable to proxy models which transform the data() of the source model. - For example, a proxy model could be created to define the font used, or the background colour, or the tooltip etc. This removes the - need to implement all data handling in the same class that creates the structure of the model, and can also be used to create - re-usable components. - - This also provides a way to change the data in the case where a source model is supplied by a third party which can not be modified. - - \snippet doc/src/snippets/code/src_gui_itemviews_qidentityproxymodel.cpp 0 - - \sa QAbstractProxyModel, {Model/View Programming}, QAbstractItemModel - -*/ - -/*! - Constructs an identity model with the given \a parent. -*/ -QIdentityProxyModel::QIdentityProxyModel(QObject* parent) - : QAbstractProxyModel(*new QIdentityProxyModelPrivate, parent) -{ - -} - -/*! \internal - */ -QIdentityProxyModel::QIdentityProxyModel(QIdentityProxyModelPrivate &dd, QObject* parent) - : QAbstractProxyModel(dd, parent) -{ - -} - -/*! - Destroys this identity model. -*/ -QIdentityProxyModel::~QIdentityProxyModel() -{ -} - -/*! - \reimp - */ -int QIdentityProxyModel::columnCount(const QModelIndex& parent) const -{ - Q_ASSERT(parent.isValid() ? parent.model() == this : true); - Q_D(const QIdentityProxyModel); - return d->model->columnCount(mapToSource(parent)); -} - -/*! - \reimp - */ -bool QIdentityProxyModel::dropMimeData(const QMimeData* data, Qt::DropAction action, int row, int column, const QModelIndex& parent) -{ - Q_ASSERT(parent.isValid() ? parent.model() == this : true); - Q_D(QIdentityProxyModel); - return d->model->dropMimeData(data, action, row, column, mapToSource(parent)); -} - -/*! - \reimp - */ -QModelIndex QIdentityProxyModel::index(int row, int column, const QModelIndex& parent) const -{ - Q_ASSERT(parent.isValid() ? parent.model() == this : true); - Q_D(const QIdentityProxyModel); - if (!hasIndex(row, column, parent)) - return QModelIndex(); - const QModelIndex sourceParent = mapToSource(parent); - const QModelIndex sourceIndex = d->model->index(row, column, sourceParent); - Q_ASSERT(sourceIndex.isValid()); - return mapFromSource(sourceIndex); -} - -/*! - \reimp - */ -bool QIdentityProxyModel::insertColumns(int column, int count, const QModelIndex& parent) -{ - Q_ASSERT(parent.isValid() ? parent.model() == this : true); - Q_D(QIdentityProxyModel); - return d->model->insertColumns(column, count, mapToSource(parent)); -} - -/*! - \reimp - */ -bool QIdentityProxyModel::insertRows(int row, int count, const QModelIndex& parent) -{ - Q_ASSERT(parent.isValid() ? parent.model() == this : true); - Q_D(QIdentityProxyModel); - return d->model->insertRows(row, count, mapToSource(parent)); -} - -/*! - \reimp - */ -QModelIndex QIdentityProxyModel::mapFromSource(const QModelIndex& sourceIndex) const -{ - Q_D(const QIdentityProxyModel); - if (!d->model || !sourceIndex.isValid()) - return QModelIndex(); - - Q_ASSERT(sourceIndex.model() == d->model); - return createIndex(sourceIndex.row(), sourceIndex.column(), sourceIndex.internalPointer()); -} - -/*! - \reimp - */ -QItemSelection QIdentityProxyModel::mapSelectionFromSource(const QItemSelection& selection) const -{ - Q_D(const QIdentityProxyModel); - QItemSelection proxySelection; - - if (!d->model) - return proxySelection; - - QItemSelection::const_iterator it = selection.constBegin(); - const QItemSelection::const_iterator end = selection.constEnd(); - for ( ; it != end; ++it) { - Q_ASSERT(it->model() == d->model); - const QItemSelectionRange range(mapFromSource(it->topLeft()), mapFromSource(it->bottomRight())); - proxySelection.append(range); - } - - return proxySelection; -} - -/*! - \reimp - */ -QItemSelection QIdentityProxyModel::mapSelectionToSource(const QItemSelection& selection) const -{ - Q_D(const QIdentityProxyModel); - QItemSelection sourceSelection; - - if (!d->model) - return sourceSelection; - - QItemSelection::const_iterator it = selection.constBegin(); - const QItemSelection::const_iterator end = selection.constEnd(); - for ( ; it != end; ++it) { - Q_ASSERT(it->model() == this); - const QItemSelectionRange range(mapToSource(it->topLeft()), mapToSource(it->bottomRight())); - sourceSelection.append(range); - } - - return sourceSelection; -} - -/*! - \reimp - */ -QModelIndex QIdentityProxyModel::mapToSource(const QModelIndex& proxyIndex) const -{ - Q_D(const QIdentityProxyModel); - if (!d->model || !proxyIndex.isValid()) - return QModelIndex(); - Q_ASSERT(proxyIndex.model() == this); - return d->model->createIndex(proxyIndex.row(), proxyIndex.column(), proxyIndex.internalPointer()); -} - -/*! - \reimp - */ -QModelIndexList QIdentityProxyModel::match(const QModelIndex& start, int role, const QVariant& value, int hits, Qt::MatchFlags flags) const -{ - Q_D(const QIdentityProxyModel); - Q_ASSERT(start.isValid() ? start.model() == this : true); - if (!d->model) - return QModelIndexList(); - - const QModelIndexList sourceList = d->model->match(mapToSource(start), role, value, hits, flags); - QModelIndexList::const_iterator it = sourceList.constBegin(); - const QModelIndexList::const_iterator end = sourceList.constEnd(); - QModelIndexList proxyList; - for ( ; it != end; ++it) - proxyList.append(mapFromSource(*it)); - return proxyList; -} - -/*! - \reimp - */ -QModelIndex QIdentityProxyModel::parent(const QModelIndex& child) const -{ - Q_ASSERT(child.isValid() ? child.model() == this : true); - const QModelIndex sourceIndex = mapToSource(child); - const QModelIndex sourceParent = sourceIndex.parent(); - return mapFromSource(sourceParent); -} - -/*! - \reimp - */ -bool QIdentityProxyModel::removeColumns(int column, int count, const QModelIndex& parent) -{ - Q_ASSERT(parent.isValid() ? parent.model() == this : true); - Q_D(QIdentityProxyModel); - return d->model->removeColumns(column, count, mapToSource(parent)); -} - -/*! - \reimp - */ -bool QIdentityProxyModel::removeRows(int row, int count, const QModelIndex& parent) -{ - Q_ASSERT(parent.isValid() ? parent.model() == this : true); - Q_D(QIdentityProxyModel); - return d->model->removeRows(row, count, mapToSource(parent)); -} - -/*! - \reimp - */ -int QIdentityProxyModel::rowCount(const QModelIndex& parent) const -{ - Q_ASSERT(parent.isValid() ? parent.model() == this : true); - Q_D(const QIdentityProxyModel); - return d->model->rowCount(mapToSource(parent)); -} - -/*! - \reimp - */ -void QIdentityProxyModel::setSourceModel(QAbstractItemModel* sourceModel) -{ - beginResetModel(); - - if (sourceModel) { - disconnect(sourceModel, SIGNAL(rowsAboutToBeInserted(const QModelIndex &, int, int)), - this, SLOT(_q_sourceRowsAboutToBeInserted(const QModelIndex &, int, int))); - disconnect(sourceModel, SIGNAL(rowsInserted(const QModelIndex &, int, int)), - this, SLOT(_q_sourceRowsInserted(const QModelIndex &, int, int))); - disconnect(sourceModel, SIGNAL(rowsAboutToBeRemoved(const QModelIndex &, int, int)), - this, SLOT(_q_sourceRowsAboutToBeRemoved(const QModelIndex &, int, int))); - disconnect(sourceModel, SIGNAL(rowsRemoved(const QModelIndex &, int, int)), - this, SLOT(_q_sourceRowsRemoved(const QModelIndex &, int, int))); - disconnect(sourceModel, SIGNAL(rowsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int)), - this, SLOT(_q_sourceRowsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int))); - disconnect(sourceModel, SIGNAL(rowsMoved(const QModelIndex &, int, int, const QModelIndex &, int)), - this, SLOT(_q_sourceRowsMoved(const QModelIndex &, int, int, const QModelIndex &, int))); - disconnect(sourceModel, SIGNAL(columnsAboutToBeInserted(const QModelIndex &, int, int)), - this, SLOT(_q_sourceColumnsAboutToBeInserted(const QModelIndex &, int, int))); - disconnect(sourceModel, SIGNAL(columnsInserted(const QModelIndex &, int, int)), - this, SLOT(_q_sourceColumnsInserted(const QModelIndex &, int, int))); - disconnect(sourceModel, SIGNAL(columnsAboutToBeRemoved(const QModelIndex &, int, int)), - this, SLOT(_q_sourceColumnsAboutToBeRemoved(const QModelIndex &, int, int))); - disconnect(sourceModel, SIGNAL(columnsRemoved(const QModelIndex &, int, int)), - this, SLOT(_q_sourceColumnsRemoved(const QModelIndex &, int, int))); - disconnect(sourceModel, SIGNAL(columnsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int)), - this, SLOT(_q_sourceColumnsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int))); - disconnect(sourceModel, SIGNAL(columnsMoved(const QModelIndex &, int, int, const QModelIndex &, int)), - this, SLOT(_q_sourceColumnsMoved(const QModelIndex &, int, int, const QModelIndex &, int))); - disconnect(sourceModel, SIGNAL(modelAboutToBeReset()), - this, SLOT(_q_sourceModelAboutToBeReset())); - disconnect(sourceModel, SIGNAL(modelReset()), - this, SLOT(_q_sourceModelReset())); - disconnect(sourceModel, SIGNAL(dataChanged(const QModelIndex &, const QModelIndex &)), - this, SLOT(_q_sourceDataChanged(const QModelIndex &, const QModelIndex &))); - disconnect(sourceModel, SIGNAL(headerDataChanged(Qt::Orientation,int,int)), - this, SLOT(_q_sourceHeaderDataChanged(Qt::Orientation,int,int))); - disconnect(sourceModel, SIGNAL(layoutAboutToBeChanged()), - this, SLOT(_q_sourceLayoutAboutToBeChanged())); - disconnect(sourceModel, SIGNAL(layoutChanged()), - this, SLOT(_q_sourceLayoutChanged())); - } - - QAbstractProxyModel::setSourceModel(sourceModel); - - if (sourceModel) { - connect(sourceModel, SIGNAL(rowsAboutToBeInserted(const QModelIndex &, int, int)), - SLOT(_q_sourceRowsAboutToBeInserted(const QModelIndex &, int, int))); - connect(sourceModel, SIGNAL(rowsInserted(const QModelIndex &, int, int)), - SLOT(_q_sourceRowsInserted(const QModelIndex &, int, int))); - connect(sourceModel, SIGNAL(rowsAboutToBeRemoved(const QModelIndex &, int, int)), - SLOT(_q_sourceRowsAboutToBeRemoved(const QModelIndex &, int, int))); - connect(sourceModel, SIGNAL(rowsRemoved(const QModelIndex &, int, int)), - SLOT(_q_sourceRowsRemoved(const QModelIndex &, int, int))); - connect(sourceModel, SIGNAL(rowsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int)), - SLOT(_q_sourceRowsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int))); - connect(sourceModel, SIGNAL(rowsMoved(const QModelIndex &, int, int, const QModelIndex &, int)), - SLOT(_q_sourceRowsMoved(const QModelIndex &, int, int, const QModelIndex &, int))); - connect(sourceModel, SIGNAL(columnsAboutToBeInserted(const QModelIndex &, int, int)), - SLOT(_q_sourceColumnsAboutToBeInserted(const QModelIndex &, int, int))); - connect(sourceModel, SIGNAL(columnsInserted(const QModelIndex &, int, int)), - SLOT(_q_sourceColumnsInserted(const QModelIndex &, int, int))); - connect(sourceModel, SIGNAL(columnsAboutToBeRemoved(const QModelIndex &, int, int)), - SLOT(_q_sourceColumnsAboutToBeRemoved(const QModelIndex &, int, int))); - connect(sourceModel, SIGNAL(columnsRemoved(const QModelIndex &, int, int)), - SLOT(_q_sourceColumnsRemoved(const QModelIndex &, int, int))); - connect(sourceModel, SIGNAL(columnsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int)), - SLOT(_q_sourceColumnsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int))); - connect(sourceModel, SIGNAL(columnsMoved(const QModelIndex &, int, int, const QModelIndex &, int)), - SLOT(_q_sourceColumnsMoved(const QModelIndex &, int, int, const QModelIndex &, int))); - connect(sourceModel, SIGNAL(modelAboutToBeReset()), - SLOT(_q_sourceModelAboutToBeReset())); - connect(sourceModel, SIGNAL(modelReset()), - SLOT(_q_sourceModelReset())); - connect(sourceModel, SIGNAL(dataChanged(const QModelIndex &, const QModelIndex &)), - SLOT(_q_sourceDataChanged(const QModelIndex &, const QModelIndex &))); - connect(sourceModel, SIGNAL(headerDataChanged(Qt::Orientation,int,int)), - SLOT(_q_sourceHeaderDataChanged(Qt::Orientation,int,int))); - connect(sourceModel, SIGNAL(layoutAboutToBeChanged()), - SLOT(_q_sourceLayoutAboutToBeChanged())); - connect(sourceModel, SIGNAL(layoutChanged()), - SLOT(_q_sourceLayoutChanged())); - } - - endResetModel(); -} - -void QIdentityProxyModelPrivate::_q_sourceColumnsAboutToBeInserted(const QModelIndex &parent, int start, int end) -{ - Q_ASSERT(parent.isValid() ? parent.model() == model : true); - Q_Q(QIdentityProxyModel); - q->beginInsertColumns(q->mapFromSource(parent), start, end); -} - -void QIdentityProxyModelPrivate::_q_sourceColumnsAboutToBeMoved(const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destParent, int dest) -{ - Q_ASSERT(sourceParent.isValid() ? sourceParent.model() == model : true); - Q_ASSERT(destParent.isValid() ? destParent.model() == model : true); - Q_Q(QIdentityProxyModel); - q->beginMoveColumns(q->mapFromSource(sourceParent), sourceStart, sourceEnd, q->mapFromSource(destParent), dest); -} - -void QIdentityProxyModelPrivate::_q_sourceColumnsAboutToBeRemoved(const QModelIndex &parent, int start, int end) -{ - Q_ASSERT(parent.isValid() ? parent.model() == model : true); - Q_Q(QIdentityProxyModel); - q->beginRemoveColumns(q->mapFromSource(parent), start, end); -} - -void QIdentityProxyModelPrivate::_q_sourceColumnsInserted(const QModelIndex &parent, int start, int end) -{ - Q_ASSERT(parent.isValid() ? parent.model() == model : true); - Q_Q(QIdentityProxyModel); - Q_UNUSED(parent) - Q_UNUSED(start) - Q_UNUSED(end) - q->endInsertColumns(); -} - -void QIdentityProxyModelPrivate::_q_sourceColumnsMoved(const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destParent, int dest) -{ - Q_ASSERT(sourceParent.isValid() ? sourceParent.model() == model : true); - Q_ASSERT(destParent.isValid() ? destParent.model() == model : true); - Q_Q(QIdentityProxyModel); - Q_UNUSED(sourceParent) - Q_UNUSED(sourceStart) - Q_UNUSED(sourceEnd) - Q_UNUSED(destParent) - Q_UNUSED(dest) - q->endMoveColumns(); -} - -void QIdentityProxyModelPrivate::_q_sourceColumnsRemoved(const QModelIndex &parent, int start, int end) -{ - Q_ASSERT(parent.isValid() ? parent.model() == model : true); - Q_Q(QIdentityProxyModel); - Q_UNUSED(parent) - Q_UNUSED(start) - Q_UNUSED(end) - q->endRemoveColumns(); -} - -void QIdentityProxyModelPrivate::_q_sourceDataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight) -{ - Q_ASSERT(topLeft.isValid() ? topLeft.model() == model : true); - Q_ASSERT(bottomRight.isValid() ? bottomRight.model() == model : true); - Q_Q(QIdentityProxyModel); - q->dataChanged(q->mapFromSource(topLeft), q->mapFromSource(bottomRight)); -} - -void QIdentityProxyModelPrivate::_q_sourceHeaderDataChanged(Qt::Orientation orientation, int first, int last) -{ - Q_Q(QIdentityProxyModel); - q->headerDataChanged(orientation, first, last); -} - -void QIdentityProxyModelPrivate::_q_sourceLayoutAboutToBeChanged() -{ - Q_Q(QIdentityProxyModel); - - foreach(const QPersistentModelIndex &proxyPersistentIndex, q->persistentIndexList()) { - proxyIndexes << proxyPersistentIndex; - Q_ASSERT(proxyPersistentIndex.isValid()); - const QPersistentModelIndex srcPersistentIndex = q->mapToSource(proxyPersistentIndex); - Q_ASSERT(srcPersistentIndex.isValid()); - layoutChangePersistentIndexes << srcPersistentIndex; - } - - q->layoutAboutToBeChanged(); -} - -void QIdentityProxyModelPrivate::_q_sourceLayoutChanged() -{ - Q_Q(QIdentityProxyModel); - - for (int i = 0; i < proxyIndexes.size(); ++i) { - q->changePersistentIndex(proxyIndexes.at(i), q->mapFromSource(layoutChangePersistentIndexes.at(i))); - } - - layoutChangePersistentIndexes.clear(); - proxyIndexes.clear(); - - q->layoutChanged(); -} - -void QIdentityProxyModelPrivate::_q_sourceModelAboutToBeReset() -{ - Q_Q(QIdentityProxyModel); - q->beginResetModel(); -} - -void QIdentityProxyModelPrivate::_q_sourceModelReset() -{ - Q_Q(QIdentityProxyModel); - q->endResetModel(); -} - -void QIdentityProxyModelPrivate::_q_sourceRowsAboutToBeInserted(const QModelIndex &parent, int start, int end) -{ - Q_ASSERT(parent.isValid() ? parent.model() == model : true); - Q_Q(QIdentityProxyModel); - q->beginInsertRows(q->mapFromSource(parent), start, end); -} - -void QIdentityProxyModelPrivate::_q_sourceRowsAboutToBeMoved(const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destParent, int dest) -{ - Q_ASSERT(sourceParent.isValid() ? sourceParent.model() == model : true); - Q_ASSERT(destParent.isValid() ? destParent.model() == model : true); - Q_Q(QIdentityProxyModel); - q->beginMoveRows(q->mapFromSource(sourceParent), sourceStart, sourceEnd, q->mapFromSource(destParent), dest); -} - -void QIdentityProxyModelPrivate::_q_sourceRowsAboutToBeRemoved(const QModelIndex &parent, int start, int end) -{ - Q_ASSERT(parent.isValid() ? parent.model() == model : true); - Q_Q(QIdentityProxyModel); - q->beginRemoveRows(q->mapFromSource(parent), start, end); -} - -void QIdentityProxyModelPrivate::_q_sourceRowsInserted(const QModelIndex &parent, int start, int end) -{ - Q_ASSERT(parent.isValid() ? parent.model() == model : true); - Q_Q(QIdentityProxyModel); - Q_UNUSED(parent) - Q_UNUSED(start) - Q_UNUSED(end) - q->endInsertRows(); -} - -void QIdentityProxyModelPrivate::_q_sourceRowsMoved(const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destParent, int dest) -{ - Q_ASSERT(sourceParent.isValid() ? sourceParent.model() == model : true); - Q_ASSERT(destParent.isValid() ? destParent.model() == model : true); - Q_Q(QIdentityProxyModel); - Q_UNUSED(sourceParent) - Q_UNUSED(sourceStart) - Q_UNUSED(sourceEnd) - Q_UNUSED(destParent) - Q_UNUSED(dest) - q->endMoveRows(); -} - -void QIdentityProxyModelPrivate::_q_sourceRowsRemoved(const QModelIndex &parent, int start, int end) -{ - Q_ASSERT(parent.isValid() ? parent.model() == model : true); - Q_Q(QIdentityProxyModel); - Q_UNUSED(parent) - Q_UNUSED(start) - Q_UNUSED(end) - q->endRemoveRows(); -} - -QT_END_NAMESPACE - -#include "moc_qidentityproxymodel.cpp" - -#endif // QT_NO_IDENTITYPROXYMODEL diff --git a/src/widgets/itemviews/qidentityproxymodel.h b/src/widgets/itemviews/qidentityproxymodel.h deleted file mode 100644 index 8a8422244f..0000000000 --- a/src/widgets/itemviews/qidentityproxymodel.h +++ /dev/null @@ -1,120 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Klarälvdalens Datakonsult AB, a KDAB Group company, info@kdab.com, author Stephen Kelly -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtGui module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - - -#ifndef QIDENTITYPROXYMODEL_H -#define QIDENTITYPROXYMODEL_H - -#include - -#ifndef QT_NO_IDENTITYPROXYMODEL - -QT_BEGIN_HEADER - -QT_BEGIN_NAMESPACE - -QT_MODULE(Gui) - -class QIdentityProxyModelPrivate; - -class Q_WIDGETS_EXPORT QIdentityProxyModel : public QAbstractProxyModel -{ - Q_OBJECT -public: - explicit QIdentityProxyModel(QObject* parent = 0); - ~QIdentityProxyModel(); - - int columnCount(const QModelIndex& parent = QModelIndex()) const; - QModelIndex index(int row, int column, const QModelIndex& parent = QModelIndex()) const; - QModelIndex mapFromSource(const QModelIndex& sourceIndex) const; - QModelIndex mapToSource(const QModelIndex& proxyIndex) const; - QModelIndex parent(const QModelIndex& child) const; - int rowCount(const QModelIndex& parent = QModelIndex()) const; - bool dropMimeData(const QMimeData* data, Qt::DropAction action, int row, int column, const QModelIndex& parent); - - QItemSelection mapSelectionFromSource(const QItemSelection& selection) const; - QItemSelection mapSelectionToSource(const QItemSelection& selection) const; - QModelIndexList match(const QModelIndex& start, int role, const QVariant& value, int hits = 1, Qt::MatchFlags flags = Qt::MatchFlags(Qt::MatchStartsWith|Qt::MatchWrap)) const; - void setSourceModel(QAbstractItemModel* sourceModel); - - bool insertColumns(int column, int count, const QModelIndex& parent = QModelIndex()); - bool insertRows(int row, int count, const QModelIndex& parent = QModelIndex()); - bool removeColumns(int column, int count, const QModelIndex& parent = QModelIndex()); - bool removeRows(int row, int count, const QModelIndex& parent = QModelIndex()); - -protected: - QIdentityProxyModel(QIdentityProxyModelPrivate &dd, QObject* parent); - -private: - Q_DECLARE_PRIVATE(QIdentityProxyModel) - Q_DISABLE_COPY(QIdentityProxyModel) - - Q_PRIVATE_SLOT(d_func(), void _q_sourceRowsAboutToBeInserted(QModelIndex,int,int)) - Q_PRIVATE_SLOT(d_func(), void _q_sourceRowsInserted(QModelIndex,int,int)) - Q_PRIVATE_SLOT(d_func(), void _q_sourceRowsAboutToBeRemoved(QModelIndex,int,int)) - Q_PRIVATE_SLOT(d_func(), void _q_sourceRowsRemoved(QModelIndex,int,int)) - Q_PRIVATE_SLOT(d_func(), void _q_sourceRowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)) - Q_PRIVATE_SLOT(d_func(), void _q_sourceRowsMoved(QModelIndex,int,int,QModelIndex,int)) - - Q_PRIVATE_SLOT(d_func(), void _q_sourceColumnsAboutToBeInserted(QModelIndex,int,int)) - Q_PRIVATE_SLOT(d_func(), void _q_sourceColumnsInserted(QModelIndex,int,int)) - Q_PRIVATE_SLOT(d_func(), void _q_sourceColumnsAboutToBeRemoved(QModelIndex,int,int)) - Q_PRIVATE_SLOT(d_func(), void _q_sourceColumnsRemoved(QModelIndex,int,int)) - Q_PRIVATE_SLOT(d_func(), void _q_sourceColumnsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)) - Q_PRIVATE_SLOT(d_func(), void _q_sourceColumnsMoved(QModelIndex,int,int,QModelIndex,int)) - - Q_PRIVATE_SLOT(d_func(), void _q_sourceDataChanged(QModelIndex,QModelIndex)) - Q_PRIVATE_SLOT(d_func(), void _q_sourceHeaderDataChanged(Qt::Orientation orientation, int first, int last)) - - Q_PRIVATE_SLOT(d_func(), void _q_sourceLayoutAboutToBeChanged()) - Q_PRIVATE_SLOT(d_func(), void _q_sourceLayoutChanged()) - Q_PRIVATE_SLOT(d_func(), void _q_sourceModelAboutToBeReset()) - Q_PRIVATE_SLOT(d_func(), void _q_sourceModelReset()) -}; - -QT_END_NAMESPACE - -QT_END_HEADER - -#endif // QT_NO_IDENTITYPROXYMODEL - -#endif // QIDENTITYPROXYMODEL_H - diff --git a/src/widgets/itemviews/qitemselectionmodel.cpp b/src/widgets/itemviews/qitemselectionmodel.cpp deleted file mode 100644 index 08470a4300..0000000000 --- a/src/widgets/itemviews/qitemselectionmodel.cpp +++ /dev/null @@ -1,1641 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtGui module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "qitemselectionmodel.h" -#include -#include - -#ifndef QT_NO_ITEMVIEWS - -QT_BEGIN_NAMESPACE - -/*! - \class QItemSelectionRange - - \brief The QItemSelectionRange class manages information about a - range of selected items in a model. - - \ingroup model-view - \inmodule QtWidgets - - A QItemSelectionRange contains information about a range of - selected items in a model. A range of items is a contiguous array - of model items, extending to cover a number of adjacent rows and - columns with a common parent item; this can be visualized as a - two-dimensional block of cells in a table. A selection range has a - top(), left() a bottom(), right() and a parent(). - - The QItemSelectionRange class is one of the \l{Model/View Classes} - and is part of Qt's \l{Model/View Programming}{model/view framework}. - - The model items contained in the selection range can be obtained - using the indexes() function. Use QItemSelectionModel::selectedIndexes() - to get a list of all selected items for a view. - - You can determine whether a given model item lies within a - particular range by using the contains() function. Ranges can also - be compared using the overloaded operators for equality and - inequality, and the intersects() function allows you to determine - whether two ranges overlap. - - \sa {Model/View Programming}, QAbstractItemModel, QItemSelection, - QItemSelectionModel -*/ - -/*! - \fn QItemSelectionRange::QItemSelectionRange() - - Constructs an empty selection range. -*/ - -/*! - \fn QItemSelectionRange::QItemSelectionRange(const QItemSelectionRange &other) - - Copy constructor. Constructs a new selection range with the same contents - as the \a other range given. - -*/ - -/*! - \fn QItemSelectionRange::QItemSelectionRange(const QModelIndex &topLeft, const QModelIndex &bottomRight) - - Constructs a new selection range containing only the index specified - by the \a topLeft and the index \a bottomRight. - -*/ - -/*! - \fn QItemSelectionRange::QItemSelectionRange(const QModelIndex &index) - - Constructs a new selection range containing only the model item specified - by the model index \a index. -*/ - -/*! - \fn int QItemSelectionRange::top() const - - Returns the row index corresponding to the uppermost selected row in the - selection range. - -*/ - -/*! - \fn int QItemSelectionRange::left() const - - Returns the column index corresponding to the leftmost selected column in the - selection range. -*/ - -/*! - \fn int QItemSelectionRange::bottom() const - - Returns the row index corresponding to the lowermost selected row in the - selection range. - -*/ - -/*! - \fn int QItemSelectionRange::right() const - - Returns the column index corresponding to the rightmost selected column in - the selection range. - -*/ - -/*! - \fn int QItemSelectionRange::width() const - - Returns the number of selected columns in the selection range. - -*/ - -/*! - \fn int QItemSelectionRange::height() const - - Returns the number of selected rows in the selection range. - -*/ - -/*! - \fn const QAbstractItemModel *QItemSelectionRange::model() const - - Returns the model that the items in the selection range belong to. -*/ - -/*! - \fn QModelIndex QItemSelectionRange::topLeft() const - - Returns the index for the item located at the top-left corner of - the selection range. - - \sa top(), left(), bottomRight() -*/ - -/*! - \fn QModelIndex QItemSelectionRange::bottomRight() const - - Returns the index for the item located at the bottom-right corner - of the selection range. - - \sa bottom(), right(), topLeft() -*/ - -/*! - \fn QModelIndex QItemSelectionRange::parent() const - - Returns the parent model item index of the items in the selection range. - -*/ - -/*! - \fn bool QItemSelectionRange::contains(const QModelIndex &index) const - - Returns true if the model item specified by the \a index lies within the - range of selected items; otherwise returns false. -*/ - -/*! - \fn bool QItemSelectionRange::contains(int row, int column, - const QModelIndex &parentIndex) const - \overload - - Returns true if the model item specified by (\a row, \a column) - and with \a parentIndex as the parent item lies within the range - of selected items; otherwise returns false. -*/ - -/*! - \fn bool QItemSelectionRange::intersects(const QItemSelectionRange &other) const - - Returns true if this selection range intersects (overlaps with) the \a other - range given; otherwise returns false. - -*/ -bool QItemSelectionRange::intersects(const QItemSelectionRange &other) const -{ - return (isValid() && other.isValid() - && parent() == other.parent() - && model() == other.model() - && ((top() <= other.top() && bottom() >= other.top()) - || (top() >= other.top() && top() <= other.bottom())) - && ((left() <= other.left() && right() >= other.left()) - || (left() >= other.left() && left() <= other.right()))); -} - -/*! - \fn QItemSelectionRange QItemSelectionRange::intersect(const QItemSelectionRange &other) const - \obsolete - - Use intersected(\a other) instead. -*/ - -/*! - \fn QItemSelectionRange QItemSelectionRange::intersected(const QItemSelectionRange &other) const - \since 4.2 - - Returns a new selection range containing only the items that are found in - both the selection range and the \a other selection range. -*/ - -QItemSelectionRange QItemSelectionRange::intersect(const QItemSelectionRange &other) const -{ - if (model() == other.model() && parent() == other.parent()) { - QModelIndex topLeft = model()->index(qMax(top(), other.top()), - qMax(left(), other.left()), - other.parent()); - QModelIndex bottomRight = model()->index(qMin(bottom(), other.bottom()), - qMin(right(), other.right()), - other.parent()); - return QItemSelectionRange(topLeft, bottomRight); - } - return QItemSelectionRange(); -} - -/*! - \fn bool QItemSelectionRange::operator==(const QItemSelectionRange &other) const - - Returns true if the selection range is exactly the same as the \a other - range given; otherwise returns false. - -*/ - -/*! - \fn bool QItemSelectionRange::operator!=(const QItemSelectionRange &other) const - - Returns true if the selection range differs from the \a other range given; - otherwise returns false. - -*/ - -/*! - \fn bool QItemSelectionRange::isValid() const - - Returns true if the selection range is valid; otherwise returns false. - -*/ - -/* - \internal - - utility function for getting the indexes from a range - it avoid concatenating list and works on one - */ - -static void indexesFromRange(const QItemSelectionRange &range, QModelIndexList &result) -{ - if (range.isValid() && range.model()) { - for (int column = range.left(); column <= range.right(); ++column) { - for (int row = range.top(); row <= range.bottom(); ++row) { - QModelIndex index = range.model()->index(row, column, range.parent()); - Qt::ItemFlags flags = range.model()->flags(index); - if ((flags & Qt::ItemIsSelectable) && (flags & Qt::ItemIsEnabled)) - result.append(index); - } - } - } -} - -/*! - Returns true if the selection range contains no selectable item - \since 4.7 -*/ - -bool QItemSelectionRange::isEmpty() const -{ - if (!isValid() || !model()) - return true; - - for (int column = left(); column <= right(); ++column) { - for (int row = top(); row <= bottom(); ++row) { - QModelIndex index = model()->index(row, column, parent()); - Qt::ItemFlags flags = model()->flags(index); - if ((flags & Qt::ItemIsSelectable) && (flags & Qt::ItemIsEnabled)) - return false; - } - } - return true; -} - -/*! - Returns the list of model index items stored in the selection. -*/ - -QModelIndexList QItemSelectionRange::indexes() const -{ - QModelIndexList result; - indexesFromRange(*this, result); - return result; -} - -/*! - \class QItemSelection - - \brief The QItemSelection class manages information about selected items in a model. - - \ingroup model-view - \inmodule QtWidgets - - A QItemSelection describes the items in a model that have been - selected by the user. A QItemSelection is basically a list of - selection ranges, see QItemSelectionRange. It provides functions for - creating and manipulating selections, and selecting a range of items - from a model. - - The QItemSelection class is one of the \l{Model/View Classes} - and is part of Qt's \l{Model/View Programming}{model/view framework}. - - An item selection can be constructed and initialized to contain a - range of items from an existing model. The following example constructs - a selection that contains a range of items from the given \c model, - beginning at the \c topLeft, and ending at the \c bottomRight. - - \snippet doc/src/snippets/code/src_gui_itemviews_qitemselectionmodel.cpp 0 - - An empty item selection can be constructed, and later populated as - required. So, if the model is going to be unavailable when we construct - the item selection, we can rewrite the above code in the following way: - - \snippet doc/src/snippets/code/src_gui_itemviews_qitemselectionmodel.cpp 1 - - QItemSelection saves memory, and avoids unnecessary work, by working with - selection ranges rather than recording the model item index for each - item in the selection. Generally, an instance of this class will contain - a list of non-overlapping selection ranges. - - Use merge() to merge one item selection into another without making - overlapping ranges. Use split() to split one selection range into - smaller ranges based on a another selection range. - - \sa {Model/View Programming}, QItemSelectionModel -*/ - -/*! - \fn QItemSelection::QItemSelection() - - Constructs an empty selection. -*/ - -/*! - Constructs an item selection that extends from the top-left model item, - specified by the \a topLeft index, to the bottom-right item, specified - by \a bottomRight. -*/ -QItemSelection::QItemSelection(const QModelIndex &topLeft, const QModelIndex &bottomRight) -{ - select(topLeft, bottomRight); -} - -/*! - Adds the items in the range that extends from the top-left model - item, specified by the \a topLeft index, to the bottom-right item, - specified by \a bottomRight to the list. - - \note \a topLeft and \a bottomRight must have the same parent. -*/ -void QItemSelection::select(const QModelIndex &topLeft, const QModelIndex &bottomRight) -{ - if (!topLeft.isValid() || !bottomRight.isValid()) - return; - - if ((topLeft.model() != bottomRight.model()) - || topLeft.parent() != bottomRight.parent()) { - qWarning("Can't select indexes from different model or with different parents"); - return; - } - if (topLeft.row() > bottomRight.row() || topLeft.column() > bottomRight.column()) { - int top = qMin(topLeft.row(), bottomRight.row()); - int bottom = qMax(topLeft.row(), bottomRight.row()); - int left = qMin(topLeft.column(), bottomRight.column()); - int right = qMax(topLeft.column(), bottomRight.column()); - QModelIndex tl = topLeft.sibling(top, left); - QModelIndex br = bottomRight.sibling(bottom, right); - append(QItemSelectionRange(tl, br)); - return; - } - append(QItemSelectionRange(topLeft, bottomRight)); -} - -/*! - Returns true if the selection contains the given \a index; otherwise - returns false. -*/ - -bool QItemSelection::contains(const QModelIndex &index) const -{ - if (index.flags() & Qt::ItemIsSelectable) { - QList::const_iterator it = begin(); - for (; it != end(); ++it) - if ((*it).contains(index)) - return true; - } - return false; -} - -/*! - Returns a list of model indexes that correspond to the selected items. -*/ - -QModelIndexList QItemSelection::indexes() const -{ - QModelIndexList result; - QList::const_iterator it = begin(); - for (; it != end(); ++it) - indexesFromRange(*it, result); - return result; -} - -/*! - Merges the \a other selection with this QItemSelection using the - \a command given. This method guarantees that no ranges are overlapping. - - Note that only QItemSelectionModel::Select, - QItemSelectionModel::Deselect, and QItemSelectionModel::Toggle are - supported. - - \sa split() -*/ -void QItemSelection::merge(const QItemSelection &other, QItemSelectionModel::SelectionFlags command) -{ - if (other.isEmpty() || - !(command & QItemSelectionModel::Select || - command & QItemSelectionModel::Deselect || - command & QItemSelectionModel::Toggle)) - return; - - QItemSelection newSelection = other; - // Collect intersections - QItemSelection intersections; - QItemSelection::iterator it = newSelection.begin(); - while (it != newSelection.end()) { - if (!(*it).isValid()) { - it = newSelection.erase(it); - continue; - } - for (int t = 0; t < count(); ++t) { - if ((*it).intersects(at(t))) - intersections.append(at(t).intersected(*it)); - } - ++it; - } - - // Split the old (and new) ranges using the intersections - for (int i = 0; i < intersections.count(); ++i) { // for each intersection - for (int t = 0; t < count();) { // splitt each old range - if (at(t).intersects(intersections.at(i))) { - split(at(t), intersections.at(i), this); - removeAt(t); - } else { - ++t; - } - } - // only split newSelection if Toggle is specified - for (int n = 0; (command & QItemSelectionModel::Toggle) && n < newSelection.count();) { - if (newSelection.at(n).intersects(intersections.at(i))) { - split(newSelection.at(n), intersections.at(i), &newSelection); - newSelection.removeAt(n); - } else { - ++n; - } - } - } - // do not add newSelection for Deselect - if (!(command & QItemSelectionModel::Deselect)) - operator+=(newSelection); -} - -/*! - Splits the selection \a range using the selection \a other range. - Removes all items in \a other from \a range and puts the result in \a result. - This can be compared with the semantics of the \e subtract operation of a set. - \sa merge() -*/ - -void QItemSelection::split(const QItemSelectionRange &range, - const QItemSelectionRange &other, QItemSelection *result) -{ - if (range.parent() != other.parent() || range.model() != other.model()) - return; - - QModelIndex parent = other.parent(); - int top = range.top(); - int left = range.left(); - int bottom = range.bottom(); - int right = range.right(); - int other_top = other.top(); - int other_left = other.left(); - int other_bottom = other.bottom(); - int other_right = other.right(); - const QAbstractItemModel *model = range.model(); - Q_ASSERT(model); - if (other_top > top) { - QModelIndex tl = model->index(top, left, parent); - QModelIndex br = model->index(other_top - 1, right, parent); - result->append(QItemSelectionRange(tl, br)); - top = other_top; - } - if (other_bottom < bottom) { - QModelIndex tl = model->index(other_bottom + 1, left, parent); - QModelIndex br = model->index(bottom, right, parent); - result->append(QItemSelectionRange(tl, br)); - bottom = other_bottom; - } - if (other_left > left) { - QModelIndex tl = model->index(top, left, parent); - QModelIndex br = model->index(bottom, other_left - 1, parent); - result->append(QItemSelectionRange(tl, br)); - left = other_left; - } - if (other_right < right) { - QModelIndex tl = model->index(top, other_right + 1, parent); - QModelIndex br = model->index(bottom, right, parent); - result->append(QItemSelectionRange(tl, br)); - right = other_right; - } -} - - -void QItemSelectionModelPrivate::initModel(QAbstractItemModel *model) -{ - this->model = model; - if (model) { - Q_Q(QItemSelectionModel); - QObject::connect(model, SIGNAL(rowsAboutToBeRemoved(QModelIndex,int,int)), - q, SLOT(_q_rowsAboutToBeRemoved(QModelIndex,int,int))); - QObject::connect(model, SIGNAL(columnsAboutToBeRemoved(QModelIndex,int,int)), - q, SLOT(_q_columnsAboutToBeRemoved(QModelIndex,int,int))); - QObject::connect(model, SIGNAL(rowsAboutToBeInserted(QModelIndex,int,int)), - q, SLOT(_q_rowsAboutToBeInserted(QModelIndex,int,int))); - QObject::connect(model, SIGNAL(columnsAboutToBeInserted(QModelIndex,int,int)), - q, SLOT(_q_columnsAboutToBeInserted(QModelIndex,int,int))); - QObject::connect(model, SIGNAL(rowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)), - q, SLOT(_q_layoutAboutToBeChanged())); - QObject::connect(model, SIGNAL(columnsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)), - q, SLOT(_q_layoutAboutToBeChanged())); - QObject::connect(model, SIGNAL(rowsMoved(QModelIndex,int,int,QModelIndex,int)), - q, SLOT(_q_layoutChanged())); - QObject::connect(model, SIGNAL(columnsMoved(QModelIndex,int,int,QModelIndex,int)), - q, SLOT(_q_layoutChanged())); - QObject::connect(model, SIGNAL(layoutAboutToBeChanged()), - q, SLOT(_q_layoutAboutToBeChanged())); - QObject::connect(model, SIGNAL(layoutChanged()), - q, SLOT(_q_layoutChanged())); - } -} - -/*! - \internal - - returns a QItemSelection where all ranges have been expanded to: - Rows: left: 0 and right: columnCount()-1 - Columns: top: 0 and bottom: rowCount()-1 -*/ - -QItemSelection QItemSelectionModelPrivate::expandSelection(const QItemSelection &selection, - QItemSelectionModel::SelectionFlags command) const -{ - if (selection.isEmpty() && !((command & QItemSelectionModel::Rows) || - (command & QItemSelectionModel::Columns))) - return selection; - - QItemSelection expanded; - if (command & QItemSelectionModel::Rows) { - for (int i = 0; i < selection.count(); ++i) { - QModelIndex parent = selection.at(i).parent(); - int colCount = model->columnCount(parent); - QModelIndex tl = model->index(selection.at(i).top(), 0, parent); - QModelIndex br = model->index(selection.at(i).bottom(), colCount - 1, parent); - //we need to merge because the same row could have already been inserted - expanded.merge(QItemSelection(tl, br), QItemSelectionModel::Select); - } - } - if (command & QItemSelectionModel::Columns) { - for (int i = 0; i < selection.count(); ++i) { - QModelIndex parent = selection.at(i).parent(); - int rowCount = model->rowCount(parent); - QModelIndex tl = model->index(0, selection.at(i).left(), parent); - QModelIndex br = model->index(rowCount - 1, selection.at(i).right(), parent); - //we need to merge because the same column could have already been inserted - expanded.merge(QItemSelection(tl, br), QItemSelectionModel::Select); - } - } - return expanded; -} - -/*! - \internal -*/ -void QItemSelectionModelPrivate::_q_rowsAboutToBeRemoved(const QModelIndex &parent, - int start, int end) -{ - Q_Q(QItemSelectionModel); - finalize(); - - // update current index - if (currentIndex.isValid() && parent == currentIndex.parent() - && currentIndex.row() >= start && currentIndex.row() <= end) { - QModelIndex old = currentIndex; - if (start > 0) // there are rows left above the change - currentIndex = model->index(start - 1, old.column(), parent); - else if (model && end < model->rowCount(parent) - 1) // there are rows left below the change - currentIndex = model->index(end + 1, old.column(), parent); - else // there are no rows left in the table - currentIndex = QModelIndex(); - emit q->currentChanged(currentIndex, old); - emit q->currentRowChanged(currentIndex, old); - if (currentIndex.column() != old.column()) - emit q->currentColumnChanged(currentIndex, old); - } - - QItemSelection deselected; - QItemSelection newParts; - QItemSelection::iterator it = ranges.begin(); - while (it != ranges.end()) { - if (it->topLeft().parent() != parent) { // Check parents until reaching root or contained in range - QModelIndex itParent = it->topLeft().parent(); - while (itParent.isValid() && itParent.parent() != parent) - itParent = itParent.parent(); - - if (itParent.isValid() && start <= itParent.row() && itParent.row() <= end) { - deselected.append(*it); - it = ranges.erase(it); - } else { - ++it; - } - } else if (start <= it->bottom() && it->bottom() <= end // Full inclusion - && start <= it->top() && it->top() <= end) { - deselected.append(*it); - it = ranges.erase(it); - } else if (start <= it->top() && it->top() <= end) { // Top intersection - deselected.append(QItemSelectionRange(it->topLeft(), model->index(end, it->left(), it->parent()))); - *it = QItemSelectionRange(model->index(end + 1, it->left(), it->parent()), it->bottomRight()); - ++it; - } else if (start <= it->bottom() && it->bottom() <= end) { // Bottom intersection - deselected.append(QItemSelectionRange(model->index(start, it->right(), it->parent()), it->bottomRight())); - *it = QItemSelectionRange(it->topLeft(), model->index(start - 1, it->right(), it->parent())); - ++it; - } else if (it->top() < start && end < it->bottom()) { // Middle intersection - // If the parent contains (1, 2, 3, 4, 5, 6, 7, 8) and [3, 4, 5, 6] is selected, - // and [4, 5] is removed, we need to split [3, 4, 5, 6] into [3], [4, 5] and [6]. - // [4, 5] is appended to deselected, and [3] and [6] remain part of the selection - // in ranges. - const QItemSelectionRange removedRange(model->index(start, it->right(), it->parent()), - model->index(end, it->left(), it->parent())); - deselected.append(removedRange); - QItemSelection::split(*it, removedRange, &newParts); - it = ranges.erase(it); - } else - ++it; - } - ranges.append(newParts); - - if (!deselected.isEmpty()) - emit q->selectionChanged(QItemSelection(), deselected); -} - -/*! - \internal -*/ -void QItemSelectionModelPrivate::_q_columnsAboutToBeRemoved(const QModelIndex &parent, - int start, int end) -{ - Q_Q(QItemSelectionModel); - - // update current index - if (currentIndex.isValid() && parent == currentIndex.parent() - && currentIndex.column() >= start && currentIndex.column() <= end) { - QModelIndex old = currentIndex; - if (start > 0) // there are columns to the left of the change - currentIndex = model->index(old.row(), start - 1, parent); - else if (model && end < model->columnCount() - 1) // there are columns to the right of the change - currentIndex = model->index(old.row(), end + 1, parent); - else // there are no columns left in the table - currentIndex = QModelIndex(); - emit q->currentChanged(currentIndex, old); - if (currentIndex.row() != old.row()) - emit q->currentRowChanged(currentIndex, old); - emit q->currentColumnChanged(currentIndex, old); - } - - // update selections - QModelIndex tl = model->index(0, start, parent); - QModelIndex br = model->index(model->rowCount(parent) - 1, end, parent); - q->select(QItemSelection(tl, br), QItemSelectionModel::Deselect); - finalize(); -} - -/*! - \internal - - Split selection ranges if columns are about to be inserted in the middle. -*/ -void QItemSelectionModelPrivate::_q_columnsAboutToBeInserted(const QModelIndex &parent, - int start, int end) -{ - Q_UNUSED(end); - finalize(); - QList split; - QList::iterator it = ranges.begin(); - for (; it != ranges.end(); ) { - if ((*it).isValid() && (*it).parent() == parent - && (*it).left() < start && (*it).right() >= start) { - QModelIndex bottomMiddle = model->index((*it).bottom(), start - 1, (*it).parent()); - QItemSelectionRange left((*it).topLeft(), bottomMiddle); - QModelIndex topMiddle = model->index((*it).top(), start, (*it).parent()); - QItemSelectionRange right(topMiddle, (*it).bottomRight()); - it = ranges.erase(it); - split.append(left); - split.append(right); - } else { - ++it; - } - } - ranges += split; -} - -/*! - \internal - - Split selection ranges if rows are about to be inserted in the middle. -*/ -void QItemSelectionModelPrivate::_q_rowsAboutToBeInserted(const QModelIndex &parent, - int start, int end) -{ - Q_UNUSED(end); - finalize(); - QList split; - QList::iterator it = ranges.begin(); - for (; it != ranges.end(); ) { - if ((*it).isValid() && (*it).parent() == parent - && (*it).top() < start && (*it).bottom() >= start) { - QModelIndex middleRight = model->index(start - 1, (*it).right(), (*it).parent()); - QItemSelectionRange top((*it).topLeft(), middleRight); - QModelIndex middleLeft = model->index(start, (*it).left(), (*it).parent()); - QItemSelectionRange bottom(middleLeft, (*it).bottomRight()); - it = ranges.erase(it); - split.append(top); - split.append(bottom); - } else { - ++it; - } - } - ranges += split; -} - -/*! - \internal - - Split selection into individual (persistent) indexes. This is done in - preparation for the layoutChanged() signal, where the indexes can be - merged again. -*/ -void QItemSelectionModelPrivate::_q_layoutAboutToBeChanged() -{ - savedPersistentIndexes.clear(); - savedPersistentCurrentIndexes.clear(); - - // optimization for when all indexes are selected - // (only if there is lots of items (1000) because this is not entirely correct) - if (ranges.isEmpty() && currentSelection.count() == 1) { - QItemSelectionRange range = currentSelection.first(); - QModelIndex parent = range.parent(); - tableRowCount = model->rowCount(parent); - tableColCount = model->columnCount(parent); - if (tableRowCount * tableColCount > 1000 - && range.top() == 0 - && range.left() == 0 - && range.bottom() == tableRowCount - 1 - && range.right() == tableColCount - 1) { - tableSelected = true; - tableParent = parent; - return; - } - } - tableSelected = false; - - QModelIndexList indexes = ranges.indexes(); - QModelIndexList::const_iterator it; - for (it = indexes.constBegin(); it != indexes.constEnd(); ++it) - savedPersistentIndexes.append(QPersistentModelIndex(*it)); - indexes = currentSelection.indexes(); - for (it = indexes.constBegin(); it != indexes.constEnd(); ++it) - savedPersistentCurrentIndexes.append(QPersistentModelIndex(*it)); -} - -/*! - \internal - - Merges \a indexes into an item selection made up of ranges. - Assumes that the indexes are sorted. -*/ -static QItemSelection mergeIndexes(const QList &indexes) -{ - QItemSelection colSpans; - // merge columns - int i = 0; - while (i < indexes.count()) { - QModelIndex tl = indexes.at(i); - QModelIndex br = tl; - while (++i < indexes.count()) { - QModelIndex next = indexes.at(i); - if ((next.parent() == br.parent()) - && (next.row() == br.row()) - && (next.column() == br.column() + 1)) - br = next; - else - break; - } - colSpans.append(QItemSelectionRange(tl, br)); - } - // merge rows - QItemSelection rowSpans; - i = 0; - while (i < colSpans.count()) { - QModelIndex tl = colSpans.at(i).topLeft(); - QModelIndex br = colSpans.at(i).bottomRight(); - QModelIndex prevTl = tl; - while (++i < colSpans.count()) { - QModelIndex nextTl = colSpans.at(i).topLeft(); - QModelIndex nextBr = colSpans.at(i).bottomRight(); - - if (nextTl.parent() != tl.parent()) - break; // we can't merge selection ranges from different parents - - if ((nextTl.column() == prevTl.column()) && (nextBr.column() == br.column()) - && (nextTl.row() == prevTl.row() + 1) && (nextBr.row() == br.row() + 1)) { - br = nextBr; - prevTl = nextTl; - } else { - break; - } - } - rowSpans.append(QItemSelectionRange(tl, br)); - } - return rowSpans; -} - -/*! - \internal - - Merge the selected indexes into selection ranges again. -*/ -void QItemSelectionModelPrivate::_q_layoutChanged() -{ - // special case for when all indexes are selected - if (tableSelected && tableColCount == model->columnCount(tableParent) - && tableRowCount == model->rowCount(tableParent)) { - ranges.clear(); - currentSelection.clear(); - int bottom = tableRowCount - 1; - int right = tableColCount - 1; - QModelIndex tl = model->index(0, 0, tableParent); - QModelIndex br = model->index(bottom, right, tableParent); - currentSelection << QItemSelectionRange(tl, br); - tableParent = QModelIndex(); - tableSelected = false; - return; - } - - if (savedPersistentCurrentIndexes.isEmpty() && savedPersistentIndexes.isEmpty()) { - // either the selection was actually empty, or we - // didn't get the layoutAboutToBeChanged() signal - return; - } - // clear the "old" selection - ranges.clear(); - currentSelection.clear(); - - // sort the "new" selection, as preparation for merging - qStableSort(savedPersistentIndexes.begin(), savedPersistentIndexes.end()); - qStableSort(savedPersistentCurrentIndexes.begin(), savedPersistentCurrentIndexes.end()); - - // update the selection by merging the individual indexes - ranges = mergeIndexes(savedPersistentIndexes); - currentSelection = mergeIndexes(savedPersistentCurrentIndexes); - - // release the persistent indexes - savedPersistentIndexes.clear(); - savedPersistentCurrentIndexes.clear(); -} - -/*! - \class QItemSelectionModel - - \brief The QItemSelectionModel class keeps track of a view's selected items. - - \ingroup model-view - \inmodule QtWidgets - - A QItemSelectionModel keeps track of the selected items in a view, or - in several views onto the same model. It also keeps track of the - currently selected item in a view. - - The QItemSelectionModel class is one of the \l{Model/View Classes} - and is part of Qt's \l{Model/View Programming}{model/view framework}. - - The selected items are stored using ranges. Whenever you want to - modify the selected items use select() and provide either a - QItemSelection, or a QModelIndex and a QItemSelectionModel::SelectionFlag. - - The QItemSelectionModel takes a two layer approach to selection - management, dealing with both selected items that have been committed - and items that are part of the current selection. The current - selected items are part of the current interactive selection (for - example with rubber-band selection or keyboard-shift selections). - - To update the currently selected items, use the bitwise OR of - QItemSelectionModel::Current and any of the other SelectionFlags. - If you omit the QItemSelectionModel::Current command, a new current - selection will be created, and the previous one added to the whole - selection. All functions operate on both layers; for example, - selectedItems() will return items from both layers. - - \sa {Model/View Programming}, QAbstractItemModel, {Chart Example} -*/ - -/*! - Constructs a selection model that operates on the specified item \a model. -*/ -QItemSelectionModel::QItemSelectionModel(QAbstractItemModel *model) - : QObject(*new QItemSelectionModelPrivate, model) -{ - d_func()->initModel(model); -} - -/*! - Constructs a selection model that operates on the specified item \a model with \a parent. -*/ -QItemSelectionModel::QItemSelectionModel(QAbstractItemModel *model, QObject *parent) - : QObject(*new QItemSelectionModelPrivate, parent) -{ - d_func()->initModel(model); -} - -/*! - \internal -*/ -QItemSelectionModel::QItemSelectionModel(QItemSelectionModelPrivate &dd, QAbstractItemModel *model) - : QObject(dd, model) -{ - dd.initModel(model); -} - -/*! - Destroys the selection model. -*/ -QItemSelectionModel::~QItemSelectionModel() -{ -} - -/*! - Selects the model item \a index using the specified \a command, and emits - selectionChanged(). - - \sa QItemSelectionModel::SelectionFlags -*/ -void QItemSelectionModel::select(const QModelIndex &index, QItemSelectionModel::SelectionFlags command) -{ - QItemSelection selection(index, index); - select(selection, command); -} - -/*! - \fn void QItemSelectionModel::currentChanged(const QModelIndex ¤t, const QModelIndex &previous) - - This signal is emitted whenever the current item changes. The \a previous - model item index is replaced by the \a current index as the selection's - current item. - - Note that this signal will not be emitted when the item model is reset. - - \sa currentIndex() setCurrentIndex() selectionChanged() -*/ - -/*! - \fn void QItemSelectionModel::currentColumnChanged(const QModelIndex ¤t, const QModelIndex &previous) - - This signal is emitted if the \a current item changes and its column is - different to the column of the \a previous current item. - - Note that this signal will not be emitted when the item model is reset. - - \sa currentChanged() currentRowChanged() currentIndex() setCurrentIndex() -*/ - -/*! - \fn void QItemSelectionModel::currentRowChanged(const QModelIndex ¤t, const QModelIndex &previous) - - This signal is emitted if the \a current item changes and its row is - different to the row of the \a previous current item. - - Note that this signal will not be emitted when the item model is reset. - - \sa currentChanged() currentColumnChanged() currentIndex() setCurrentIndex() -*/ - -/*! - \fn void QItemSelectionModel::selectionChanged(const QItemSelection &selected, const QItemSelection &deselected) - - This signal is emitted whenever the selection changes. The change in the - selection is represented as an item selection of \a deselected items and - an item selection of \a selected items. - - Note the that the current index changes independently from the selection. - Also note that this signal will not be emitted when the item model is reset. - - \sa select() currentChanged() -*/ - -/*! - \enum QItemSelectionModel::SelectionFlag - - This enum describes the way the selection model will be updated. - - \value NoUpdate No selection will be made. - \value Clear The complete selection will be cleared. - \value Select All specified indexes will be selected. - \value Deselect All specified indexes will be deselected. - \value Toggle All specified indexes will be selected or - deselected depending on their current state. - \value Current The current selection will be updated. - \value Rows All indexes will be expanded to span rows. - \value Columns All indexes will be expanded to span columns. - \value SelectCurrent A combination of Select and Current, provided for - convenience. - \value ToggleCurrent A combination of Toggle and Current, provided for - convenience. - \value ClearAndSelect A combination of Clear and Select, provided for - convenience. -*/ - -/*! - Selects the item \a selection using the specified \a command, and emits - selectionChanged(). - - \sa QItemSelectionModel::SelectionFlag -*/ -void QItemSelectionModel::select(const QItemSelection &selection, QItemSelectionModel::SelectionFlags command) -{ - Q_D(QItemSelectionModel); - if (command == NoUpdate) - return; - - // store old selection - QItemSelection sel = selection; - // If d->ranges is non-empty when the source model is reset the persistent indexes - // it contains will be invalid. We can't clear them in a modelReset slot because that might already - // be too late if another model observer is connected to the same modelReset slot and is invoked first - // it might call select() on this selection model before any such QItemSelectionModelPrivate::_q_modelReset() slot - // is invoked, so it would not be cleared yet. We clear it invalid ranges in it here. - QItemSelection::iterator it = d->ranges.begin(); - while (it != d->ranges.end()) { - if (!it->isValid()) - it = d->ranges.erase(it); - else - ++it; - } - - QItemSelection old = d->ranges; - old.merge(d->currentSelection, d->currentCommand); - - // expand selection according to SelectionBehavior - if (command & Rows || command & Columns) - sel = d->expandSelection(sel, command); - - // clear ranges and currentSelection - if (command & Clear) { - d->ranges.clear(); - d->currentSelection.clear(); - } - - // merge and clear currentSelection if Current was not set (ie. start new currentSelection) - if (!(command & Current)) - d->finalize(); - - // update currentSelection - if (command & Toggle || command & Select || command & Deselect) { - d->currentCommand = command; - d->currentSelection = sel; - } - - // generate new selection, compare with old and emit selectionChanged() - QItemSelection newSelection = d->ranges; - newSelection.merge(d->currentSelection, d->currentCommand); - emitSelectionChanged(newSelection, old); -} - -/*! - Clears the selection model. Emits selectionChanged() and currentChanged(). -*/ -void QItemSelectionModel::clear() -{ - clearSelection(); - clearCurrentIndex(); -} - -/*! - Clears the current index. Emits currentChanged(). - */ -void QItemSelectionModel::clearCurrentIndex() -{ - Q_D(QItemSelectionModel); - QModelIndex previous = d->currentIndex; - d->currentIndex = QModelIndex(); - if (previous.isValid()) { - emit currentChanged(d->currentIndex, previous); - emit currentRowChanged(d->currentIndex, previous); - emit currentColumnChanged(d->currentIndex, previous); - } -} - -/*! - Clears the selection model. Does not emit any signals. -*/ -void QItemSelectionModel::reset() -{ - bool block = blockSignals(true); - clear(); - blockSignals(block); -} - -/*! - \since 4.2 - Clears the selection in the selection model. Emits selectionChanged(). -*/ -void QItemSelectionModel::clearSelection() -{ - Q_D(QItemSelectionModel); - if (d->ranges.count() == 0 && d->currentSelection.count() == 0) - return; - - select(QItemSelection(), Clear); -} - - -/*! - Sets the model item \a index to be the current item, and emits - currentChanged(). The current item is used for keyboard navigation and - focus indication; it is independent of any selected items, although a - selected item can also be the current item. - - Depending on the specified \a command, the \a index can also become part - of the current selection. - \sa select() -*/ -void QItemSelectionModel::setCurrentIndex(const QModelIndex &index, QItemSelectionModel::SelectionFlags command) -{ - Q_D(QItemSelectionModel); - if (index == d->currentIndex) { - if (command != NoUpdate) - select(index, command); // select item - return; - } - QPersistentModelIndex previous = d->currentIndex; - d->currentIndex = index; // set current before emitting selection changed below - if (command != NoUpdate) - select(d->currentIndex, command); // select item - emit currentChanged(d->currentIndex, previous); - if (d->currentIndex.row() != previous.row() || - d->currentIndex.parent() != previous.parent()) - emit currentRowChanged(d->currentIndex, previous); - if (d->currentIndex.column() != previous.column() || - d->currentIndex.parent() != previous.parent()) - emit currentColumnChanged(d->currentIndex, previous); -} - -/*! - Returns the model item index for the current item, or an invalid index - if there is no current item. -*/ -QModelIndex QItemSelectionModel::currentIndex() const -{ - return static_cast(d_func()->currentIndex); -} - -/*! - Returns true if the given model item \a index is selected. -*/ -bool QItemSelectionModel::isSelected(const QModelIndex &index) const -{ - Q_D(const QItemSelectionModel); - if (d->model != index.model() || !index.isValid()) - return false; - - bool selected = false; - // search model ranges - QList::const_iterator it = d->ranges.begin(); - for (; it != d->ranges.end(); ++it) { - if ((*it).isValid() && (*it).contains(index)) { - selected = true; - break; - } - } - - // check currentSelection - if (d->currentSelection.count()) { - if ((d->currentCommand & Deselect) && selected) - selected = !d->currentSelection.contains(index); - else if (d->currentCommand & Toggle) - selected ^= d->currentSelection.contains(index); - else if ((d->currentCommand & Select) && !selected) - selected = d->currentSelection.contains(index); - } - - if (selected) { - Qt::ItemFlags flags = d->model->flags(index); - return (flags & Qt::ItemIsSelectable); - } - - return false; -} - -/*! - Returns true if all items are selected in the \a row with the given - \a parent. - - Note that this function is usually faster than calling isSelected() - on all items in the same row and that unselectable items are - ignored. -*/ -bool QItemSelectionModel::isRowSelected(int row, const QModelIndex &parent) const -{ - Q_D(const QItemSelectionModel); - if (parent.isValid() && d->model != parent.model()) - return false; - - // return false if row exist in currentSelection (Deselect) - if (d->currentCommand & Deselect && d->currentSelection.count()) { - for (int i=0; icurrentSelection.count(); ++i) { - if (d->currentSelection.at(i).parent() == parent && - row >= d->currentSelection.at(i).top() && - row <= d->currentSelection.at(i).bottom()) - return false; - } - } - // return false if ranges in both currentSelection and ranges - // intersect and have the same row contained - if (d->currentCommand & Toggle && d->currentSelection.count()) { - for (int i=0; icurrentSelection.count(); ++i) - if (d->currentSelection.at(i).top() <= row && - d->currentSelection.at(i).bottom() >= row) - for (int j=0; jranges.count(); ++j) - if (d->ranges.at(j).top() <= row && d->ranges.at(j).bottom() >= row - && d->currentSelection.at(i).intersected(d->ranges.at(j)).isValid()) - return false; - } - // add ranges and currentSelection and check through them all - QList::const_iterator it; - QList joined = d->ranges; - if (d->currentSelection.count()) - joined += d->currentSelection; - int colCount = d->model->columnCount(parent); - for (int column = 0; column < colCount; ++column) { - for (it = joined.constBegin(); it != joined.constEnd(); ++it) { - if ((*it).contains(row, column, parent)) { - bool selectable = false; - for (int i = column; !selectable && i <= (*it).right(); ++i) { - Qt::ItemFlags flags = d->model->index(row, i, parent).flags(); - selectable = flags & Qt::ItemIsSelectable; - } - if (selectable){ - column = qMax(column, (*it).right()); - break; - } - } - } - if (it == joined.constEnd()) - return false; - } - return colCount > 0; // no columns means no selected items -} - -/*! - Returns true if all items are selected in the \a column with the given - \a parent. - - Note that this function is usually faster than calling isSelected() - on all items in the same column and that unselectable items are - ignored. -*/ -bool QItemSelectionModel::isColumnSelected(int column, const QModelIndex &parent) const -{ - Q_D(const QItemSelectionModel); - if (parent.isValid() && d->model != parent.model()) - return false; - - // return false if column exist in currentSelection (Deselect) - if (d->currentCommand & Deselect && d->currentSelection.count()) { - for (int i = 0; i < d->currentSelection.count(); ++i) { - if (d->currentSelection.at(i).parent() == parent && - column >= d->currentSelection.at(i).left() && - column <= d->currentSelection.at(i).right()) - return false; - } - } - // return false if ranges in both currentSelection and the selection model - // intersect and have the same column contained - if (d->currentCommand & Toggle && d->currentSelection.count()) { - for (int i = 0; i < d->currentSelection.count(); ++i) { - if (d->currentSelection.at(i).left() <= column && - d->currentSelection.at(i).right() >= column) { - for (int j = 0; j < d->ranges.count(); ++j) { - if (d->ranges.at(j).left() <= column && d->ranges.at(j).right() >= column - && d->currentSelection.at(i).intersected(d->ranges.at(j)).isValid()) { - return false; - } - } - } - } - } - // add ranges and currentSelection and check through them all - QList::const_iterator it; - QList joined = d->ranges; - if (d->currentSelection.count()) - joined += d->currentSelection; - int rowCount = d->model->rowCount(parent); - for (int row = 0; row < rowCount; ++row) { - for (it = joined.constBegin(); it != joined.constEnd(); ++it) { - if ((*it).contains(row, column, parent)) { - Qt::ItemFlags flags = d->model->index(row, column, parent).flags(); - if ((flags & Qt::ItemIsSelectable) && (flags & Qt::ItemIsEnabled)) { - row = qMax(row, (*it).bottom()); - break; - } - } - } - if (it == joined.constEnd()) - return false; - } - return rowCount > 0; // no rows means no selected items -} - -/*! - Returns true if there are any items selected in the \a row with the given - \a parent. -*/ -bool QItemSelectionModel::rowIntersectsSelection(int row, const QModelIndex &parent) const -{ - Q_D(const QItemSelectionModel); - if (parent.isValid() && d->model != parent.model()) - return false; - - QItemSelection sel = d->ranges; - sel.merge(d->currentSelection, d->currentCommand); - for (int i = 0; i < sel.count(); ++i) { - int top = sel.at(i).top(); - int bottom = sel.at(i).bottom(); - int left = sel.at(i).left(); - int right = sel.at(i).right(); - if (top <= row && bottom >= row) { - for (int j = left; j <= right; j++) { - const Qt::ItemFlags flags = d->model->index(row, j, parent).flags(); - if ((flags & Qt::ItemIsSelectable) && (flags & Qt::ItemIsEnabled)) - return true; - } - } - } - - return false; -} - -/*! - Returns true if there are any items selected in the \a column with the given - \a parent. -*/ -bool QItemSelectionModel::columnIntersectsSelection(int column, const QModelIndex &parent) const -{ - Q_D(const QItemSelectionModel); - if (parent.isValid() && d->model != parent.model()) - return false; - - QItemSelection sel = d->ranges; - sel.merge(d->currentSelection, d->currentCommand); - for (int i = 0; i < sel.count(); ++i) { - int left = sel.at(i).left(); - int right = sel.at(i).right(); - int top = sel.at(i).top(); - int bottom = sel.at(i).bottom(); - if (left <= column && right >= column) { - for (int j = top; j <= bottom; j++) { - const Qt::ItemFlags flags = d->model->index(j, column, parent).flags(); - if ((flags & Qt::ItemIsSelectable) && (flags & Qt::ItemIsEnabled)) - return true; - } - } - } - - return false; -} - -/*! - \since 4.2 - - Returns true if the selection model contains any selection ranges; - otherwise returns false. -*/ -bool QItemSelectionModel::hasSelection() const -{ - Q_D(const QItemSelectionModel); - if (d->currentCommand & (Toggle | Deselect)) { - QItemSelection sel = d->ranges; - sel.merge(d->currentSelection, d->currentCommand); - return !sel.isEmpty(); - } else { - return !(d->ranges.isEmpty() && d->currentSelection.isEmpty()); - } -} - -/*! - Returns a list of all selected model item indexes. The list contains no - duplicates, and is not sorted. -*/ -QModelIndexList QItemSelectionModel::selectedIndexes() const -{ - Q_D(const QItemSelectionModel); - QItemSelection selected = d->ranges; - selected.merge(d->currentSelection, d->currentCommand); - return selected.indexes(); -} - -/*! - \since 4.2 - Returns the indexes in the given \a column for the rows where all columns are selected. - - \sa selectedIndexes(), selectedColumns() -*/ - -QModelIndexList QItemSelectionModel::selectedRows(int column) const -{ - QModelIndexList indexes; - //the QSet contains pairs of parent modelIndex - //and row number - QSet< QPair > rowsSeen; - - const QItemSelection ranges = selection(); - for (int i = 0; i < ranges.count(); ++i) { - const QItemSelectionRange &range = ranges.at(i); - QModelIndex parent = range.parent(); - for (int row = range.top(); row <= range.bottom(); row++) { - QPair rowDef = qMakePair(parent, row); - if (!rowsSeen.contains(rowDef)) { - rowsSeen << rowDef; - if (isRowSelected(row, parent)) { - indexes.append(model()->index(row, column, parent)); - } - } - } - } - - return indexes; -} - -/*! - \since 4.2 - Returns the indexes in the given \a row for columns where all rows are selected. - - \sa selectedIndexes(), selectedRows() -*/ - -QModelIndexList QItemSelectionModel::selectedColumns(int row) const -{ - QModelIndexList indexes; - //the QSet contains pairs of parent modelIndex - //and column number - QSet< QPair > columnsSeen; - - const QItemSelection ranges = selection(); - for (int i = 0; i < ranges.count(); ++i) { - const QItemSelectionRange &range = ranges.at(i); - QModelIndex parent = range.parent(); - for (int column = range.left(); column <= range.right(); column++) { - QPair columnDef = qMakePair(parent, column); - if (!columnsSeen.contains(columnDef)) { - columnsSeen << columnDef; - if (isColumnSelected(column, parent)) { - indexes.append(model()->index(row, column, parent)); - } - } - } - } - - return indexes; -} - -/*! - Returns the selection ranges stored in the selection model. -*/ -const QItemSelection QItemSelectionModel::selection() const -{ - Q_D(const QItemSelectionModel); - QItemSelection selected = d->ranges; - selected.merge(d->currentSelection, d->currentCommand); - int i = 0; - // make sure we have no invalid ranges - // ### should probably be handled more generic somewhere else - while (imodel; -} - -/*! - Compares the two selections \a newSelection and \a oldSelection - and emits selectionChanged() with the deselected and selected items. -*/ -void QItemSelectionModel::emitSelectionChanged(const QItemSelection &newSelection, - const QItemSelection &oldSelection) -{ - // if both selections are empty or equal we return - if ((oldSelection.isEmpty() && newSelection.isEmpty()) || - oldSelection == newSelection) - return; - - // if either selection is empty we do not need to compare - if (oldSelection.isEmpty() || newSelection.isEmpty()) { - emit selectionChanged(newSelection, oldSelection); - return; - } - - QItemSelection deselected = oldSelection; - QItemSelection selected = newSelection; - - // remove equal ranges - bool advance; - for (int o = 0; o < deselected.count(); ++o) { - advance = true; - for (int s = 0; s < selected.count() && o < deselected.count();) { - if (deselected.at(o) == selected.at(s)) { - deselected.removeAt(o); - selected.removeAt(s); - advance = false; - } else { - ++s; - } - } - if (advance) - ++o; - } - - // find intersections - QItemSelection intersections; - for (int o = 0; o < deselected.count(); ++o) { - for (int s = 0; s < selected.count(); ++s) { - if (deselected.at(o).intersects(selected.at(s))) - intersections.append(deselected.at(o).intersected(selected.at(s))); - } - } - - // compare remaining ranges with intersections and split them to find deselected and selected - for (int i = 0; i < intersections.count(); ++i) { - // split deselected - for (int o = 0; o < deselected.count();) { - if (deselected.at(o).intersects(intersections.at(i))) { - QItemSelection::split(deselected.at(o), intersections.at(i), &deselected); - deselected.removeAt(o); - } else { - ++o; - } - } - // split selected - for (int s = 0; s < selected.count();) { - if (selected.at(s).intersects(intersections.at(i))) { - QItemSelection::split(selected.at(s), intersections.at(i), &selected); - selected.removeAt(s); - } else { - ++s; - } - } - } - - if (!selected.isEmpty() || !deselected.isEmpty()) - emit selectionChanged(selected, deselected); -} - -#ifndef QT_NO_DEBUG_STREAM -QDebug operator<<(QDebug dbg, const QItemSelectionRange &range) -{ -#ifndef Q_BROKEN_DEBUG_STREAM - dbg.nospace() << "QItemSelectionRange(" << range.topLeft() - << ',' << range.bottomRight() << ')'; - return dbg.space(); -#else - qWarning("This compiler doesn't support streaming QItemSelectionRange to QDebug"); - return dbg; - Q_UNUSED(range); -#endif -} -#endif - -QT_END_NAMESPACE - -#include "moc_qitemselectionmodel.cpp" - -#endif // QT_NO_ITEMVIEWS diff --git a/src/widgets/itemviews/qitemselectionmodel.h b/src/widgets/itemviews/qitemselectionmodel.h deleted file mode 100644 index ea0528a590..0000000000 --- a/src/widgets/itemviews/qitemselectionmodel.h +++ /dev/null @@ -1,256 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtGui module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef QITEMSELECTIONMODEL_H -#define QITEMSELECTIONMODEL_H - -#include -#include -#include -#include - -QT_BEGIN_HEADER - -QT_BEGIN_NAMESPACE - -QT_MODULE(Gui) - -#ifndef QT_NO_ITEMVIEWS - -class Q_WIDGETS_EXPORT QItemSelectionRange -{ - -public: - inline QItemSelectionRange() {} - inline QItemSelectionRange(const QItemSelectionRange &other) - : tl(other.tl), br(other.br) {} - inline QItemSelectionRange(const QModelIndex &topLeft, const QModelIndex &bottomRight); - explicit inline QItemSelectionRange(const QModelIndex &index) - { tl = index; br = tl; } - - inline int top() const { return tl.row(); } - inline int left() const { return tl.column(); } - inline int bottom() const { return br.row(); } - inline int right() const { return br.column(); } - inline int width() const { return br.column() - tl.column() + 1; } - inline int height() const { return br.row() - tl.row() + 1; } - - inline QModelIndex topLeft() const { return QModelIndex(tl); } - inline QModelIndex bottomRight() const { return QModelIndex(br); } - inline QModelIndex parent() const { return tl.parent(); } - inline const QAbstractItemModel *model() const { return tl.model(); } - - inline bool contains(const QModelIndex &index) const - { - return (parent() == index.parent() - && tl.row() <= index.row() && tl.column() <= index.column() - && br.row() >= index.row() && br.column() >= index.column()); - } - - inline bool contains(int row, int column, const QModelIndex &parentIndex) const - { - return (parent() == parentIndex - && tl.row() <= row && tl.column() <= column - && br.row() >= row && br.column() >= column); - } - - bool intersects(const QItemSelectionRange &other) const; - QItemSelectionRange intersect(const QItemSelectionRange &other) const; // ### Qt 5: make QT4_SUPPORT - inline QItemSelectionRange intersected(const QItemSelectionRange &other) const - { return intersect(other); } - - inline bool operator==(const QItemSelectionRange &other) const - { return (tl == other.tl && br == other.br); } - inline bool operator!=(const QItemSelectionRange &other) const - { return !operator==(other); } - inline bool operator<(const QItemSelectionRange &other) const - { - // Comparing parents will compare the models, but if two equivalent ranges - // in two different models have invalid parents, they would appear the same - if (other.tl.model() == tl.model()) { - // parent has to be calculated, so we only do so once. - const QModelIndex topLeftParent = tl.parent(); - const QModelIndex otherTopLeftParent = other.tl.parent(); - if (topLeftParent == otherTopLeftParent) { - if (other.tl.row() == tl.row()) { - if (other.tl.column() == tl.column()) { - if (other.br.row() == br.row()) { - return br.column() < other.br.column(); - } - return br.row() < other.br.row(); - } - return tl.column() < other.tl.column(); - } - return tl.row() < other.tl.row(); - } - return topLeftParent < otherTopLeftParent; - } - return tl.model() < other.tl.model(); - } - - inline bool isValid() const - { - return (tl.isValid() && br.isValid() && tl.parent() == br.parent() - && top() <= bottom() && left() <= right()); - } - - bool isEmpty() const; - - QModelIndexList indexes() const; - -private: - QPersistentModelIndex tl, br; -}; -Q_DECLARE_TYPEINFO(QItemSelectionRange, Q_MOVABLE_TYPE); - -inline QItemSelectionRange::QItemSelectionRange(const QModelIndex &atopLeft, - const QModelIndex &abottomRight) -{ tl = atopLeft; br = abottomRight; } - -class QItemSelection; -class QItemSelectionModelPrivate; - -class Q_WIDGETS_EXPORT QItemSelectionModel : public QObject -{ - Q_OBJECT - Q_DECLARE_PRIVATE(QItemSelectionModel) - Q_FLAGS(SelectionFlags) - -public: - - enum SelectionFlag { - NoUpdate = 0x0000, - Clear = 0x0001, - Select = 0x0002, - Deselect = 0x0004, - Toggle = 0x0008, - Current = 0x0010, - Rows = 0x0020, - Columns = 0x0040, - SelectCurrent = Select | Current, - ToggleCurrent = Toggle | Current, - ClearAndSelect = Clear | Select - }; - - Q_DECLARE_FLAGS(SelectionFlags, SelectionFlag) - - explicit QItemSelectionModel(QAbstractItemModel *model); - explicit QItemSelectionModel(QAbstractItemModel *model, QObject *parent); - virtual ~QItemSelectionModel(); - - QModelIndex currentIndex() const; - - bool isSelected(const QModelIndex &index) const; - bool isRowSelected(int row, const QModelIndex &parent) const; - bool isColumnSelected(int column, const QModelIndex &parent) const; - - bool rowIntersectsSelection(int row, const QModelIndex &parent) const; - bool columnIntersectsSelection(int column, const QModelIndex &parent) const; - - bool hasSelection() const; - - QModelIndexList selectedIndexes() const; - QModelIndexList selectedRows(int column = 0) const; - QModelIndexList selectedColumns(int row = 0) const; - const QItemSelection selection() const; - - const QAbstractItemModel *model() const; - -public Q_SLOTS: - virtual void setCurrentIndex(const QModelIndex &index, QItemSelectionModel::SelectionFlags command); - virtual void select(const QModelIndex &index, QItemSelectionModel::SelectionFlags command); - virtual void select(const QItemSelection &selection, QItemSelectionModel::SelectionFlags command); - virtual void clear(); - virtual void reset(); - - void clearSelection(); - virtual void clearCurrentIndex(); - -Q_SIGNALS: - void selectionChanged(const QItemSelection &selected, const QItemSelection &deselected); - void currentChanged(const QModelIndex ¤t, const QModelIndex &previous); - void currentRowChanged(const QModelIndex ¤t, const QModelIndex &previous); - void currentColumnChanged(const QModelIndex ¤t, const QModelIndex &previous); - -protected: - QItemSelectionModel(QItemSelectionModelPrivate &dd, QAbstractItemModel *model); - void emitSelectionChanged(const QItemSelection &newSelection, const QItemSelection &oldSelection); - -private: - Q_DISABLE_COPY(QItemSelectionModel) - Q_PRIVATE_SLOT(d_func(), void _q_columnsAboutToBeRemoved(const QModelIndex&, int, int)) - Q_PRIVATE_SLOT(d_func(), void _q_rowsAboutToBeRemoved(const QModelIndex&, int, int)) - Q_PRIVATE_SLOT(d_func(), void _q_columnsAboutToBeInserted(const QModelIndex&, int, int)) - Q_PRIVATE_SLOT(d_func(), void _q_rowsAboutToBeInserted(const QModelIndex&, int, int)) - Q_PRIVATE_SLOT(d_func(), void _q_layoutAboutToBeChanged()) - Q_PRIVATE_SLOT(d_func(), void _q_layoutChanged()) -}; - -Q_DECLARE_OPERATORS_FOR_FLAGS(QItemSelectionModel::SelectionFlags) - -// dummy implentation of qHash() necessary for instantiating QList::toSet() with MSVC -inline uint qHash(const QItemSelectionRange &) { return 0; } - -class Q_WIDGETS_EXPORT QItemSelection : public QList -{ -public: - QItemSelection() {} - QItemSelection(const QModelIndex &topLeft, const QModelIndex &bottomRight); - void select(const QModelIndex &topLeft, const QModelIndex &bottomRight); - bool contains(const QModelIndex &index) const; - QModelIndexList indexes() const; - void merge(const QItemSelection &other, QItemSelectionModel::SelectionFlags command); - static void split(const QItemSelectionRange &range, - const QItemSelectionRange &other, - QItemSelection *result); -}; - -#ifndef QT_NO_DEBUG_STREAM -Q_WIDGETS_EXPORT QDebug operator<<(QDebug, const QItemSelectionRange &); -#endif - -#endif // QT_NO_ITEMVIEWS - -QT_END_NAMESPACE - -QT_END_HEADER - -#endif // QITEMSELECTIONMODEL_H diff --git a/src/widgets/itemviews/qitemselectionmodel_p.h b/src/widgets/itemviews/qitemselectionmodel_p.h deleted file mode 100644 index 5eb9ecccda..0000000000 --- a/src/widgets/itemviews/qitemselectionmodel_p.h +++ /dev/null @@ -1,113 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtGui module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef QITEMSELECTIONMODEL_P_H -#define QITEMSELECTIONMODEL_P_H - -// -// W A R N I N G -// ------------- -// -// This file is not part of the Qt API. It exists purely as an -// implementation detail. This header file may change from version to -// version without notice, or even be removed. -// -// We mean it. -// - -#include "private/qobject_p.h" - -QT_BEGIN_NAMESPACE - -#ifndef QT_NO_ITEMVIEWS -class QItemSelectionModelPrivate: public QObjectPrivate -{ - Q_DECLARE_PUBLIC(QItemSelectionModel) -public: - QItemSelectionModelPrivate() - : model(0), - currentCommand(QItemSelectionModel::NoUpdate), - tableSelected(false), tableColCount(0), tableRowCount(0) {} - - QItemSelection expandSelection(const QItemSelection &selection, - QItemSelectionModel::SelectionFlags command) const; - - void initModel(QAbstractItemModel *model); - - void _q_rowsAboutToBeRemoved(const QModelIndex &parent, int start, int end); - void _q_columnsAboutToBeRemoved(const QModelIndex &parent, int start, int end); - void _q_rowsAboutToBeInserted(const QModelIndex &parent, int start, int end); - void _q_columnsAboutToBeInserted(const QModelIndex &parent, int start, int end); - void _q_layoutAboutToBeChanged(); - void _q_layoutChanged(); - - inline void remove(QList &r) - { - QList::const_iterator it = r.constBegin(); - for (; it != r.constEnd(); ++it) - ranges.removeAll(*it); - } - - inline void finalize() - { - ranges.merge(currentSelection, currentCommand); - if (!currentSelection.isEmpty()) // ### perhaps this should be in QList - currentSelection.clear(); - } - - QPointer model; - QItemSelection ranges; - QItemSelection currentSelection; - QPersistentModelIndex currentIndex; - QItemSelectionModel::SelectionFlags currentCommand; - QList savedPersistentIndexes; - QList savedPersistentCurrentIndexes; - // optimization when all indexes are selected - bool tableSelected; - QPersistentModelIndex tableParent; - int tableColCount, tableRowCount; -}; - -#endif // QT_NO_ITEMVIEWS - -QT_END_NAMESPACE - -#endif // QITEMSELECTIONMODEL_P_H diff --git a/src/widgets/itemviews/qlistwidget.h b/src/widgets/itemviews/qlistwidget.h index 750b85b4c1..6eb2ab78fd 100644 --- a/src/widgets/itemviews/qlistwidget.h +++ b/src/widgets/itemviews/qlistwidget.h @@ -45,7 +45,7 @@ #include #include #include -#include +#include QT_BEGIN_HEADER diff --git a/src/widgets/itemviews/qsortfilterproxymodel.cpp b/src/widgets/itemviews/qsortfilterproxymodel.cpp deleted file mode 100644 index f29ad7bc57..0000000000 --- a/src/widgets/itemviews/qsortfilterproxymodel.cpp +++ /dev/null @@ -1,2703 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtGui module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "qsortfilterproxymodel.h" - -#ifndef QT_NO_SORTFILTERPROXYMODEL - -#include "qitemselectionmodel.h" -#include -#include -#include -#include -#include -#include -#include - -QT_BEGIN_NAMESPACE - -typedef QList > QModelIndexPairList; - -static inline QSet qVectorToSet(const QVector &vector) -{ - QSet set; - set.reserve(vector.size()); - for(int i=0; i < vector.size(); ++i) - set << vector.at(i); - return set; -} - -class QSortFilterProxyModelLessThan -{ -public: - inline QSortFilterProxyModelLessThan(int column, const QModelIndex &parent, - const QAbstractItemModel *source, - const QSortFilterProxyModel *proxy) - : sort_column(column), source_parent(parent), source_model(source), proxy_model(proxy) {} - - inline bool operator()(int r1, int r2) const - { - QModelIndex i1 = source_model->index(r1, sort_column, source_parent); - QModelIndex i2 = source_model->index(r2, sort_column, source_parent); - return proxy_model->lessThan(i1, i2); - } - -private: - int sort_column; - QModelIndex source_parent; - const QAbstractItemModel *source_model; - const QSortFilterProxyModel *proxy_model; -}; - -class QSortFilterProxyModelGreaterThan -{ -public: - inline QSortFilterProxyModelGreaterThan(int column, const QModelIndex &parent, - const QAbstractItemModel *source, - const QSortFilterProxyModel *proxy) - : sort_column(column), source_parent(parent), - source_model(source), proxy_model(proxy) {} - - inline bool operator()(int r1, int r2) const - { - QModelIndex i1 = source_model->index(r1, sort_column, source_parent); - QModelIndex i2 = source_model->index(r2, sort_column, source_parent); - return proxy_model->lessThan(i2, i1); - } - -private: - int sort_column; - QModelIndex source_parent; - const QAbstractItemModel *source_model; - const QSortFilterProxyModel *proxy_model; -}; - - -//this struct is used to store what are the rows that are removed -//between a call to rowsAboutToBeRemoved and rowsRemoved -//it avoids readding rows to the mapping that are currently being removed -struct QRowsRemoval -{ - QRowsRemoval(const QModelIndex &parent_source, int start, int end) : parent_source(parent_source), start(start), end(end) - { - } - - QRowsRemoval() : start(-1), end(-1) - { - } - - bool contains(QModelIndex parent, int row) - { - do { - if (parent == parent_source) - return row >= start && row <= end; - row = parent.row(); - parent = parent.parent(); - } while (row >= 0); - return false; - } -private: - QModelIndex parent_source; - int start; - int end; -}; - -class QSortFilterProxyModelPrivate : public QAbstractProxyModelPrivate -{ - Q_DECLARE_PUBLIC(QSortFilterProxyModel) - -public: - struct Mapping { - QVector source_rows; - QVector source_columns; - QVector proxy_rows; - QVector proxy_columns; - QVector mapped_children; - QHash::const_iterator map_iter; - }; - - mutable QHash source_index_mapping; - - int source_sort_column; - int proxy_sort_column; - Qt::SortOrder sort_order; - Qt::CaseSensitivity sort_casesensitivity; - int sort_role; - bool sort_localeaware; - - int filter_column; - QRegExp filter_regexp; - int filter_role; - - bool dynamic_sortfilter; - QRowsRemoval itemsBeingRemoved; - - QModelIndexPairList saved_persistent_indexes; - - QHash::const_iterator create_mapping( - const QModelIndex &source_parent) const; - QModelIndex proxy_to_source(const QModelIndex &proxyIndex) const; - QModelIndex source_to_proxy(const QModelIndex &sourceIndex) const; - bool can_create_mapping(const QModelIndex &source_parent) const; - - void remove_from_mapping(const QModelIndex &source_parent); - - inline QHash::const_iterator index_to_iterator( - const QModelIndex &proxy_index) const - { - Q_ASSERT(proxy_index.isValid()); - Q_ASSERT(proxy_index.model() == q_func()); - const void *p = proxy_index.internalPointer(); - Q_ASSERT(p); - QHash::const_iterator it = - static_cast(p)->map_iter; - Q_ASSERT(it != source_index_mapping.constEnd()); - Q_ASSERT(it.value()); - return it; - } - - inline QModelIndex create_index(int row, int column, - QHash::const_iterator it) const - { - return q_func()->createIndex(row, column, *it); - } - - void _q_sourceDataChanged(const QModelIndex &source_top_left, - const QModelIndex &source_bottom_right); - void _q_sourceHeaderDataChanged(Qt::Orientation orientation, int start, int end); - - void _q_sourceAboutToBeReset(); - void _q_sourceReset(); - - void _q_sourceLayoutAboutToBeChanged(const QList &sourceParents); - void _q_sourceLayoutChanged(const QList &sourceParents); - - void _q_sourceRowsAboutToBeInserted(const QModelIndex &source_parent, - int start, int end); - void _q_sourceRowsInserted(const QModelIndex &source_parent, - int start, int end); - void _q_sourceRowsAboutToBeRemoved(const QModelIndex &source_parent, - int start, int end); - void _q_sourceRowsRemoved(const QModelIndex &source_parent, - int start, int end); - void _q_sourceRowsAboutToBeMoved(const QModelIndex &sourceParent, - int sourceStart, int sourceEnd, - const QModelIndex &destParent, int dest); - void _q_sourceRowsMoved(const QModelIndex &sourceParent, - int sourceStart, int sourceEnd, - const QModelIndex &destParent, int dest); - void _q_sourceColumnsAboutToBeInserted(const QModelIndex &source_parent, - int start, int end); - void _q_sourceColumnsInserted(const QModelIndex &source_parent, - int start, int end); - void _q_sourceColumnsAboutToBeRemoved(const QModelIndex &source_parent, - int start, int end); - void _q_sourceColumnsRemoved(const QModelIndex &source_parent, - int start, int end); - void _q_sourceColumnsAboutToBeMoved(const QModelIndex &sourceParent, - int sourceStart, int sourceEnd, - const QModelIndex &destParent, int dest); - void _q_sourceColumnsMoved(const QModelIndex &sourceParent, - int sourceStart, int sourceEnd, - const QModelIndex &destParent, int dest); - - void _q_clearMapping(); - - void sort(); - bool update_source_sort_column(); - void sort_source_rows(QVector &source_rows, - const QModelIndex &source_parent) const; - QVector > > proxy_intervals_for_source_items_to_add( - const QVector &proxy_to_source, const QVector &source_items, - const QModelIndex &source_parent, Qt::Orientation orient) const; - QVector > proxy_intervals_for_source_items( - const QVector &source_to_proxy, const QVector &source_items) const; - void insert_source_items( - QVector &source_to_proxy, QVector &proxy_to_source, - const QVector &source_items, const QModelIndex &source_parent, - Qt::Orientation orient, bool emit_signal = true); - void remove_source_items( - QVector &source_to_proxy, QVector &proxy_to_source, - const QVector &source_items, const QModelIndex &source_parent, - Qt::Orientation orient, bool emit_signal = true); - void remove_proxy_interval( - QVector &source_to_proxy, QVector &proxy_to_source, - int proxy_start, int proxy_end, const QModelIndex &proxy_parent, - Qt::Orientation orient, bool emit_signal = true); - void build_source_to_proxy_mapping( - const QVector &proxy_to_source, QVector &source_to_proxy) const; - void source_items_inserted(const QModelIndex &source_parent, - int start, int end, Qt::Orientation orient); - void source_items_about_to_be_removed(const QModelIndex &source_parent, - int start, int end, Qt::Orientation orient); - void source_items_removed(const QModelIndex &source_parent, - int start, int end, Qt::Orientation orient); - void proxy_item_range( - const QVector &source_to_proxy, const QVector &source_items, - int &proxy_low, int &proxy_high) const; - - QModelIndexPairList store_persistent_indexes(); - void update_persistent_indexes(const QModelIndexPairList &source_indexes); - - void filter_changed(const QModelIndex &source_parent = QModelIndex()); - QSet handle_filter_changed( - QVector &source_to_proxy, QVector &proxy_to_source, - const QModelIndex &source_parent, Qt::Orientation orient); - - void updateChildrenMapping(const QModelIndex &source_parent, Mapping *parent_mapping, - Qt::Orientation orient, int start, int end, int delta_item_count, bool remove); - - virtual void _q_sourceModelDestroyed(); -}; - -typedef QHash IndexMap; - -void QSortFilterProxyModelPrivate::_q_sourceModelDestroyed() -{ - QAbstractProxyModelPrivate::_q_sourceModelDestroyed(); - _q_clearMapping(); -} - -void QSortFilterProxyModelPrivate::remove_from_mapping(const QModelIndex &source_parent) -{ - if (Mapping *m = source_index_mapping.take(source_parent)) { - for (int i = 0; i < m->mapped_children.size(); ++i) - remove_from_mapping(m->mapped_children.at(i)); - delete m; - } -} - -void QSortFilterProxyModelPrivate::_q_clearMapping() -{ - // store the persistent indexes - QModelIndexPairList source_indexes = store_persistent_indexes(); - - qDeleteAll(source_index_mapping); - source_index_mapping.clear(); - if (dynamic_sortfilter && update_source_sort_column()) { - //update_source_sort_column might have created wrong mapping so we have to clear it again - qDeleteAll(source_index_mapping); - source_index_mapping.clear(); - } - - // update the persistent indexes - update_persistent_indexes(source_indexes); -} - -IndexMap::const_iterator QSortFilterProxyModelPrivate::create_mapping( - const QModelIndex &source_parent) const -{ - Q_Q(const QSortFilterProxyModel); - - IndexMap::const_iterator it = source_index_mapping.constFind(source_parent); - if (it != source_index_mapping.constEnd()) // was mapped already - return it; - - Mapping *m = new Mapping; - - int source_rows = model->rowCount(source_parent); - m->source_rows.reserve(source_rows); - for (int i = 0; i < source_rows; ++i) { - if (q->filterAcceptsRow(i, source_parent)) - m->source_rows.append(i); - } - int source_cols = model->columnCount(source_parent); - m->source_columns.reserve(source_cols); - for (int i = 0; i < source_cols; ++i) { - if (q->filterAcceptsColumn(i, source_parent)) - m->source_columns.append(i); - } - - sort_source_rows(m->source_rows, source_parent); - m->proxy_rows.resize(source_rows); - build_source_to_proxy_mapping(m->source_rows, m->proxy_rows); - m->proxy_columns.resize(source_cols); - build_source_to_proxy_mapping(m->source_columns, m->proxy_columns); - - it = IndexMap::const_iterator(source_index_mapping.insert(source_parent, m)); - m->map_iter = it; - - if (source_parent.isValid()) { - QModelIndex source_grand_parent = source_parent.parent(); - IndexMap::const_iterator it2 = create_mapping(source_grand_parent); - Q_ASSERT(it2 != source_index_mapping.constEnd()); - it2.value()->mapped_children.append(source_parent); - } - - Q_ASSERT(it != source_index_mapping.constEnd()); - Q_ASSERT(it.value()); - - return it; -} - -QModelIndex QSortFilterProxyModelPrivate::proxy_to_source(const QModelIndex &proxy_index) const -{ - if (!proxy_index.isValid()) - return QModelIndex(); // for now; we may want to be able to set a root index later - if (proxy_index.model() != q_func()) { - qWarning() << "QSortFilterProxyModel: index from wrong model passed to mapToSource"; - Q_ASSERT(!"QSortFilterProxyModel: index from wrong model passed to mapToSource"); - return QModelIndex(); - } - IndexMap::const_iterator it = index_to_iterator(proxy_index); - Mapping *m = it.value(); - if ((proxy_index.row() >= m->source_rows.size()) || (proxy_index.column() >= m->source_columns.size())) - return QModelIndex(); - int source_row = m->source_rows.at(proxy_index.row()); - int source_col = m->source_columns.at(proxy_index.column()); - return model->index(source_row, source_col, it.key()); -} - -QModelIndex QSortFilterProxyModelPrivate::source_to_proxy(const QModelIndex &source_index) const -{ - if (!source_index.isValid()) - return QModelIndex(); // for now; we may want to be able to set a root index later - if (source_index.model() != model) { - qWarning() << "QSortFilterProxyModel: index from wrong model passed to mapFromSource"; - Q_ASSERT(!"QSortFilterProxyModel: index from wrong model passed to mapFromSource"); - return QModelIndex(); - } - QModelIndex source_parent = source_index.parent(); - IndexMap::const_iterator it = create_mapping(source_parent); - Mapping *m = it.value(); - if ((source_index.row() >= m->proxy_rows.size()) || (source_index.column() >= m->proxy_columns.size())) - return QModelIndex(); - int proxy_row = m->proxy_rows.at(source_index.row()); - int proxy_column = m->proxy_columns.at(source_index.column()); - if (proxy_row == -1 || proxy_column == -1) - return QModelIndex(); - return create_index(proxy_row, proxy_column, it); -} - -bool QSortFilterProxyModelPrivate::can_create_mapping(const QModelIndex &source_parent) const -{ - if (source_parent.isValid()) { - QModelIndex source_grand_parent = source_parent.parent(); - IndexMap::const_iterator it = source_index_mapping.constFind(source_grand_parent); - if (it == source_index_mapping.constEnd()) { - // Don't care, since we don't have mapping for the grand parent - return false; - } - Mapping *gm = it.value(); - if (gm->proxy_rows.at(source_parent.row()) == -1 || - gm->proxy_columns.at(source_parent.column()) == -1) { - // Don't care, since parent is filtered - return false; - } - } - return true; -} - -/*! - \internal - - Sorts the existing mappings. -*/ -void QSortFilterProxyModelPrivate::sort() -{ - Q_Q(QSortFilterProxyModel); - emit q->layoutAboutToBeChanged(); - QModelIndexPairList source_indexes = store_persistent_indexes(); - IndexMap::const_iterator it = source_index_mapping.constBegin(); - for (; it != source_index_mapping.constEnd(); ++it) { - QModelIndex source_parent = it.key(); - Mapping *m = it.value(); - sort_source_rows(m->source_rows, source_parent); - build_source_to_proxy_mapping(m->source_rows, m->proxy_rows); - } - update_persistent_indexes(source_indexes); - emit q->layoutChanged(); -} - -/*! - \internal - - update the source_sort_column according to the proxy_sort_column - return true if the column was changed -*/ -bool QSortFilterProxyModelPrivate::update_source_sort_column() -{ - Q_Q(QSortFilterProxyModel); - QModelIndex proxy_index = q->index(0, proxy_sort_column, QModelIndex()); - int old_source_sort_colum = source_sort_column; - source_sort_column = q->mapToSource(proxy_index).column(); - return old_source_sort_colum != source_sort_column; -} - - -/*! - \internal - - Sorts the given \a source_rows according to current sort column and order. -*/ -void QSortFilterProxyModelPrivate::sort_source_rows( - QVector &source_rows, const QModelIndex &source_parent) const -{ - Q_Q(const QSortFilterProxyModel); - if (source_sort_column >= 0) { - if (sort_order == Qt::AscendingOrder) { - QSortFilterProxyModelLessThan lt(source_sort_column, source_parent, model, q); - qStableSort(source_rows.begin(), source_rows.end(), lt); - } else { - QSortFilterProxyModelGreaterThan gt(source_sort_column, source_parent, model, q); - qStableSort(source_rows.begin(), source_rows.end(), gt); - } - } else { // restore the source model order - qStableSort(source_rows.begin(), source_rows.end()); - } -} - -/*! - \internal - - Given source-to-proxy mapping \a source_to_proxy and the set of - source items \a source_items (which are part of that mapping), - determines the corresponding proxy item intervals that should - be removed from the proxy model. - - The result is a vector of pairs, where each pair represents a - (start, end) tuple, sorted in ascending order. -*/ -QVector > QSortFilterProxyModelPrivate::proxy_intervals_for_source_items( - const QVector &source_to_proxy, const QVector &source_items) const -{ - QVector > proxy_intervals; - if (source_items.isEmpty()) - return proxy_intervals; - - int source_items_index = 0; - while (source_items_index < source_items.size()) { - int first_proxy_item = source_to_proxy.at(source_items.at(source_items_index)); - Q_ASSERT(first_proxy_item != -1); - int last_proxy_item = first_proxy_item; - ++source_items_index; - // Find end of interval - while ((source_items_index < source_items.size()) - && (source_to_proxy.at(source_items.at(source_items_index)) == last_proxy_item + 1)) { - ++last_proxy_item; - ++source_items_index; - } - // Add interval to result - proxy_intervals.append(QPair(first_proxy_item, last_proxy_item)); - } - qStableSort(proxy_intervals.begin(), proxy_intervals.end()); - return proxy_intervals; -} - -/*! - \internal - - Given source-to-proxy mapping \a src_to_proxy and proxy-to-source mapping - \a proxy_to_source, removes \a source_items from this proxy model. - The corresponding proxy items are removed in intervals, so that the proper - rows/columnsRemoved(start, end) signals will be generated. -*/ -void QSortFilterProxyModelPrivate::remove_source_items( - QVector &source_to_proxy, QVector &proxy_to_source, - const QVector &source_items, const QModelIndex &source_parent, - Qt::Orientation orient, bool emit_signal) -{ - Q_Q(QSortFilterProxyModel); - QModelIndex proxy_parent = q->mapFromSource(source_parent); - if (!proxy_parent.isValid() && source_parent.isValid()) - return; // nothing to do (already removed) - - QVector > proxy_intervals; - proxy_intervals = proxy_intervals_for_source_items(source_to_proxy, source_items); - - for (int i = proxy_intervals.size()-1; i >= 0; --i) { - QPair interval = proxy_intervals.at(i); - int proxy_start = interval.first; - int proxy_end = interval.second; - remove_proxy_interval(source_to_proxy, proxy_to_source, proxy_start, proxy_end, - proxy_parent, orient, emit_signal); - } -} - -/*! - \internal - - Given source-to-proxy mapping \a source_to_proxy and proxy-to-source mapping - \a proxy_to_source, removes items from \a proxy_start to \a proxy_end - (inclusive) from this proxy model. -*/ -void QSortFilterProxyModelPrivate::remove_proxy_interval( - QVector &source_to_proxy, QVector &proxy_to_source, int proxy_start, int proxy_end, - const QModelIndex &proxy_parent, Qt::Orientation orient, bool emit_signal) -{ - Q_Q(QSortFilterProxyModel); - if (emit_signal) { - if (orient == Qt::Vertical) - q->beginRemoveRows(proxy_parent, proxy_start, proxy_end); - else - q->beginRemoveColumns(proxy_parent, proxy_start, proxy_end); - } - - // Remove items from proxy-to-source mapping - proxy_to_source.remove(proxy_start, proxy_end - proxy_start + 1); - - build_source_to_proxy_mapping(proxy_to_source, source_to_proxy); - - if (emit_signal) { - if (orient == Qt::Vertical) - q->endRemoveRows(); - else - q->endRemoveColumns(); - } -} - -/*! - \internal - - Given proxy-to-source mapping \a proxy_to_source and a set of - unmapped source items \a source_items, determines the proxy item - intervals at which the subsets of source items should be inserted - (but does not actually add them to the mapping). - - The result is a vector of pairs, each pair representing a tuple (start, - items), where items is a vector containing the (sorted) source items that - should be inserted at that proxy model location. -*/ -QVector > > QSortFilterProxyModelPrivate::proxy_intervals_for_source_items_to_add( - const QVector &proxy_to_source, const QVector &source_items, - const QModelIndex &source_parent, Qt::Orientation orient) const -{ - Q_Q(const QSortFilterProxyModel); - QVector > > proxy_intervals; - if (source_items.isEmpty()) - return proxy_intervals; - - int proxy_low = 0; - int proxy_item = 0; - int source_items_index = 0; - QVector source_items_in_interval; - bool compare = (orient == Qt::Vertical && source_sort_column >= 0 && dynamic_sortfilter); - while (source_items_index < source_items.size()) { - source_items_in_interval.clear(); - int first_new_source_item = source_items.at(source_items_index); - source_items_in_interval.append(first_new_source_item); - ++source_items_index; - - // Find proxy item at which insertion should be started - int proxy_high = proxy_to_source.size() - 1; - QModelIndex i1 = compare ? model->index(first_new_source_item, source_sort_column, source_parent) : QModelIndex(); - while (proxy_low <= proxy_high) { - proxy_item = (proxy_low + proxy_high) / 2; - if (compare) { - QModelIndex i2 = model->index(proxy_to_source.at(proxy_item), source_sort_column, source_parent); - if ((sort_order == Qt::AscendingOrder) ? q->lessThan(i1, i2) : q->lessThan(i2, i1)) - proxy_high = proxy_item - 1; - else - proxy_low = proxy_item + 1; - } else { - if (first_new_source_item < proxy_to_source.at(proxy_item)) - proxy_high = proxy_item - 1; - else - proxy_low = proxy_item + 1; - } - } - proxy_item = proxy_low; - - // Find the sequence of new source items that should be inserted here - if (proxy_item >= proxy_to_source.size()) { - for ( ; source_items_index < source_items.size(); ++source_items_index) - source_items_in_interval.append(source_items.at(source_items_index)); - } else { - i1 = compare ? model->index(proxy_to_source.at(proxy_item), source_sort_column, source_parent) : QModelIndex(); - for ( ; source_items_index < source_items.size(); ++source_items_index) { - int new_source_item = source_items.at(source_items_index); - if (compare) { - QModelIndex i2 = model->index(new_source_item, source_sort_column, source_parent); - if ((sort_order == Qt::AscendingOrder) ? q->lessThan(i1, i2) : q->lessThan(i2, i1)) - break; - } else { - if (proxy_to_source.at(proxy_item) < new_source_item) - break; - } - source_items_in_interval.append(new_source_item); - } - } - - // Add interval to result - proxy_intervals.append(QPair >(proxy_item, source_items_in_interval)); - } - return proxy_intervals; -} - -/*! - \internal - - Given source-to-proxy mapping \a source_to_proxy and proxy-to-source mapping - \a proxy_to_source, inserts the given \a source_items into this proxy model. - The source items are inserted in intervals (based on some sorted order), so - that the proper rows/columnsInserted(start, end) signals will be generated. -*/ -void QSortFilterProxyModelPrivate::insert_source_items( - QVector &source_to_proxy, QVector &proxy_to_source, - const QVector &source_items, const QModelIndex &source_parent, - Qt::Orientation orient, bool emit_signal) -{ - Q_Q(QSortFilterProxyModel); - QModelIndex proxy_parent = q->mapFromSource(source_parent); - if (!proxy_parent.isValid() && source_parent.isValid()) - return; // nothing to do (source_parent is not mapped) - - QVector > > proxy_intervals; - proxy_intervals = proxy_intervals_for_source_items_to_add( - proxy_to_source, source_items, source_parent, orient); - - for (int i = proxy_intervals.size()-1; i >= 0; --i) { - QPair > interval = proxy_intervals.at(i); - int proxy_start = interval.first; - QVector source_items = interval.second; - int proxy_end = proxy_start + source_items.size() - 1; - - if (emit_signal) { - if (orient == Qt::Vertical) - q->beginInsertRows(proxy_parent, proxy_start, proxy_end); - else - q->beginInsertColumns(proxy_parent, proxy_start, proxy_end); - } - - for (int i = 0; i < source_items.size(); ++i) - proxy_to_source.insert(proxy_start + i, source_items.at(i)); - - build_source_to_proxy_mapping(proxy_to_source, source_to_proxy); - - if (emit_signal) { - if (orient == Qt::Vertical) - q->endInsertRows(); - else - q->endInsertColumns(); - } - } -} - -/*! - \internal - - Handles source model items insertion (columnsInserted(), rowsInserted()). - Determines - 1) which of the inserted items to also insert into proxy model (filtering), - 2) where to insert the items into the proxy model (sorting), - then inserts those items. - The items are inserted into the proxy model in intervals (based on - sorted order), so that the proper rows/columnsInserted(start, end) - signals will be generated. -*/ -void QSortFilterProxyModelPrivate::source_items_inserted( - const QModelIndex &source_parent, int start, int end, Qt::Orientation orient) -{ - Q_Q(QSortFilterProxyModel); - if ((start < 0) || (end < 0)) - return; - IndexMap::const_iterator it = source_index_mapping.constFind(source_parent); - if (it == source_index_mapping.constEnd()) { - if (!can_create_mapping(source_parent)) - return; - it = create_mapping(source_parent); - Mapping *m = it.value(); - QModelIndex proxy_parent = q->mapFromSource(source_parent); - if (m->source_rows.count() > 0) { - q->beginInsertRows(proxy_parent, 0, m->source_rows.count() - 1); - q->endInsertRows(); - } - if (m->source_columns.count() > 0) { - q->beginInsertColumns(proxy_parent, 0, m->source_columns.count() - 1); - q->endInsertColumns(); - } - return; - } - - Mapping *m = it.value(); - QVector &source_to_proxy = (orient == Qt::Vertical) ? m->proxy_rows : m->proxy_columns; - QVector &proxy_to_source = (orient == Qt::Vertical) ? m->source_rows : m->source_columns; - - int delta_item_count = end - start + 1; - int old_item_count = source_to_proxy.size(); - - updateChildrenMapping(source_parent, m, orient, start, end, delta_item_count, false); - - // Expand source-to-proxy mapping to account for new items - if (start < 0 || start > source_to_proxy.size()) { - qWarning("QSortFilterProxyModel: invalid inserted rows reported by source model"); - remove_from_mapping(source_parent); - return; - } - source_to_proxy.insert(start, delta_item_count, -1); - - if (start < old_item_count) { - // Adjust existing "stale" indexes in proxy-to-source mapping - int proxy_count = proxy_to_source.size(); - for (int proxy_item = 0; proxy_item < proxy_count; ++proxy_item) { - int source_item = proxy_to_source.at(proxy_item); - if (source_item >= start) - proxy_to_source.replace(proxy_item, source_item + delta_item_count); - } - build_source_to_proxy_mapping(proxy_to_source, source_to_proxy); - } - - // Figure out which items to add to mapping based on filter - QVector source_items; - for (int i = start; i <= end; ++i) { - if ((orient == Qt::Vertical) - ? q->filterAcceptsRow(i, source_parent) - : q->filterAcceptsColumn(i, source_parent)) { - source_items.append(i); - } - } - - if (model->rowCount(source_parent) == delta_item_count) { - // Items were inserted where there were none before. - // If it was new rows make sure to create mappings for columns so that a - // valid mapping can be retrieved later and vice-versa. - - QVector &orthogonal_proxy_to_source = (orient == Qt::Horizontal) ? m->source_rows : m->source_columns; - QVector &orthogonal_source_to_proxy = (orient == Qt::Horizontal) ? m->proxy_rows : m->proxy_columns; - - if (orthogonal_source_to_proxy.isEmpty()) { - const int ortho_end = (orient == Qt::Horizontal) ? model->rowCount(source_parent) : model->columnCount(source_parent); - - orthogonal_source_to_proxy.resize(ortho_end); - - for (int ortho_item = 0; ortho_item < ortho_end; ++ortho_item) { - if ((orient == Qt::Horizontal) ? q->filterAcceptsRow(ortho_item, source_parent) - : q->filterAcceptsColumn(ortho_item, source_parent)) { - orthogonal_proxy_to_source.append(ortho_item); - } - } - if (orient == Qt::Horizontal) { - // We're reacting to columnsInserted, but we've just inserted new rows. Sort them. - sort_source_rows(orthogonal_proxy_to_source, source_parent); - } - build_source_to_proxy_mapping(orthogonal_proxy_to_source, orthogonal_source_to_proxy); - } - } - - // Sort and insert the items - if (orient == Qt::Vertical) // Only sort rows - sort_source_rows(source_items, source_parent); - insert_source_items(source_to_proxy, proxy_to_source, source_items, source_parent, orient); -} - -/*! - \internal - - Handles source model items removal - (columnsAboutToBeRemoved(), rowsAboutToBeRemoved()). -*/ -void QSortFilterProxyModelPrivate::source_items_about_to_be_removed( - const QModelIndex &source_parent, int start, int end, Qt::Orientation orient) -{ - if ((start < 0) || (end < 0)) - return; - IndexMap::const_iterator it = source_index_mapping.constFind(source_parent); - if (it == source_index_mapping.constEnd()) { - // Don't care, since we don't have mapping for this index - return; - } - - Mapping *m = it.value(); - QVector &source_to_proxy = (orient == Qt::Vertical) ? m->proxy_rows : m->proxy_columns; - QVector &proxy_to_source = (orient == Qt::Vertical) ? m->source_rows : m->source_columns; - - // figure out which items to remove - QVector source_items_to_remove; - int proxy_count = proxy_to_source.size(); - for (int proxy_item = 0; proxy_item < proxy_count; ++proxy_item) { - int source_item = proxy_to_source.at(proxy_item); - if ((source_item >= start) && (source_item <= end)) - source_items_to_remove.append(source_item); - } - - remove_source_items(source_to_proxy, proxy_to_source, source_items_to_remove, - source_parent, orient); -} - -/*! - \internal - - Handles source model items removal (columnsRemoved(), rowsRemoved()). -*/ -void QSortFilterProxyModelPrivate::source_items_removed( - const QModelIndex &source_parent, int start, int end, Qt::Orientation orient) -{ - if ((start < 0) || (end < 0)) - return; - IndexMap::const_iterator it = source_index_mapping.constFind(source_parent); - if (it == source_index_mapping.constEnd()) { - // Don't care, since we don't have mapping for this index - return; - } - - Mapping *m = it.value(); - QVector &source_to_proxy = (orient == Qt::Vertical) ? m->proxy_rows : m->proxy_columns; - QVector &proxy_to_source = (orient == Qt::Vertical) ? m->source_rows : m->source_columns; - - if (end >= source_to_proxy.size()) - end = source_to_proxy.size() - 1; - - // Shrink the source-to-proxy mapping to reflect the new item count - int delta_item_count = end - start + 1; - source_to_proxy.remove(start, delta_item_count); - - int proxy_count = proxy_to_source.size(); - if (proxy_count > source_to_proxy.size()) { - // mapping is in an inconsistent state -- redo the whole mapping - qWarning("QSortFilterProxyModel: inconsistent changes reported by source model"); - remove_from_mapping(source_parent); - Q_Q(QSortFilterProxyModel); - q->reset(); - return; - } - - // Adjust "stale" indexes in proxy-to-source mapping - for (int proxy_item = 0; proxy_item < proxy_count; ++proxy_item) { - int source_item = proxy_to_source.at(proxy_item); - if (source_item >= start) { - Q_ASSERT(source_item - delta_item_count >= 0); - proxy_to_source.replace(proxy_item, source_item - delta_item_count); - } - } - build_source_to_proxy_mapping(proxy_to_source, source_to_proxy); - - updateChildrenMapping(source_parent, m, orient, start, end, delta_item_count, true); - -} - - -/*! - \internal - updates the mapping of the children when inserting or removing items -*/ -void QSortFilterProxyModelPrivate::updateChildrenMapping(const QModelIndex &source_parent, Mapping *parent_mapping, - Qt::Orientation orient, int start, int end, int delta_item_count, bool remove) -{ - // see if any mapped children should be (re)moved - QVector > moved_source_index_mappings; - QVector::iterator it2 = parent_mapping->mapped_children.begin(); - for ( ; it2 != parent_mapping->mapped_children.end();) { - const QModelIndex source_child_index = *it2; - const int pos = (orient == Qt::Vertical) - ? source_child_index.row() - : source_child_index.column(); - if (pos < start) { - // not affected - ++it2; - } else if (remove && pos <= end) { - // in the removed interval - it2 = parent_mapping->mapped_children.erase(it2); - remove_from_mapping(source_child_index); - } else { - // below the removed items -- recompute the index - QModelIndex new_index; - const int newpos = remove ? pos - delta_item_count : pos + delta_item_count; - if (orient == Qt::Vertical) { - new_index = model->index(newpos, - source_child_index.column(), - source_parent); - } else { - new_index = model->index(source_child_index.row(), - newpos, - source_parent); - } - *it2 = new_index; - ++it2; - - // update mapping - Mapping *cm = source_index_mapping.take(source_child_index); - Q_ASSERT(cm); - // we do not reinsert right away, because the new index might be identical with another, old index - moved_source_index_mappings.append(QPair(new_index, cm)); - } - } - - // reinsert moved, mapped indexes - QVector >::iterator it = moved_source_index_mappings.begin(); - for (; it != moved_source_index_mappings.end(); ++it) { -#ifdef QT_STRICT_ITERATORS - source_index_mapping.insert((*it).first, (*it).second); - (*it).second->map_iter = source_index_mapping.constFind((*it).first); -#else - (*it).second->map_iter = source_index_mapping.insert((*it).first, (*it).second); -#endif - } -} - -/*! - \internal -*/ -void QSortFilterProxyModelPrivate::proxy_item_range( - const QVector &source_to_proxy, const QVector &source_items, - int &proxy_low, int &proxy_high) const -{ - proxy_low = INT_MAX; - proxy_high = INT_MIN; - for (int i = 0; i < source_items.count(); ++i) { - int proxy_item = source_to_proxy.at(source_items.at(i)); - Q_ASSERT(proxy_item != -1); - if (proxy_item < proxy_low) - proxy_low = proxy_item; - if (proxy_item > proxy_high) - proxy_high = proxy_item; - } -} - -/*! - \internal -*/ -void QSortFilterProxyModelPrivate::build_source_to_proxy_mapping( - const QVector &proxy_to_source, QVector &source_to_proxy) const -{ - source_to_proxy.fill(-1); - int proxy_count = proxy_to_source.size(); - for (int i = 0; i < proxy_count; ++i) - source_to_proxy[proxy_to_source.at(i)] = i; -} - -/*! - \internal - - Maps the persistent proxy indexes to source indexes and - returns the list of source indexes. -*/ -QModelIndexPairList QSortFilterProxyModelPrivate::store_persistent_indexes() -{ - Q_Q(QSortFilterProxyModel); - QModelIndexPairList source_indexes; - foreach (QPersistentModelIndexData *data, persistent.indexes) { - QModelIndex proxy_index = data->index; - QModelIndex source_index = q->mapToSource(proxy_index); - source_indexes.append(qMakePair(proxy_index, QPersistentModelIndex(source_index))); - } - return source_indexes; -} - -/*! - \internal - - Maps \a source_indexes to proxy indexes and stores those - as persistent indexes. -*/ -void QSortFilterProxyModelPrivate::update_persistent_indexes( - const QModelIndexPairList &source_indexes) -{ - Q_Q(QSortFilterProxyModel); - QModelIndexList from, to; - for (int i = 0; i < source_indexes.count(); ++i) { - QModelIndex source_index = source_indexes.at(i).second; - QModelIndex old_proxy_index = source_indexes.at(i).first; - create_mapping(source_index.parent()); - QModelIndex proxy_index = q->mapFromSource(source_index); - from << old_proxy_index; - to << proxy_index; - } - q->changePersistentIndexList(from, to); -} - - -/*! - \internal - - Updates the proxy model (adds/removes rows) based on the - new filter. -*/ -void QSortFilterProxyModelPrivate::filter_changed(const QModelIndex &source_parent) -{ - IndexMap::const_iterator it = source_index_mapping.constFind(source_parent); - if (it == source_index_mapping.constEnd()) - return; - Mapping *m = it.value(); - QSet rows_removed = handle_filter_changed(m->proxy_rows, m->source_rows, source_parent, Qt::Vertical); - QSet columns_removed = handle_filter_changed(m->proxy_columns, m->source_columns, source_parent, Qt::Horizontal); - QVector::iterator it2 = m->mapped_children.end(); - while (it2 != m->mapped_children.begin()) { - --it2; - const QModelIndex source_child_index = *it2; - if (rows_removed.contains(source_child_index.row()) || columns_removed.contains(source_child_index.column())) { - it2 = m->mapped_children.erase(it2); - remove_from_mapping(source_child_index); - } else { - filter_changed(source_child_index); - } - } -} - -/*! - \internal - returns the removed items indexes -*/ -QSet QSortFilterProxyModelPrivate::handle_filter_changed( - QVector &source_to_proxy, QVector &proxy_to_source, - const QModelIndex &source_parent, Qt::Orientation orient) -{ - Q_Q(QSortFilterProxyModel); - // Figure out which mapped items to remove - QVector source_items_remove; - for (int i = 0; i < proxy_to_source.count(); ++i) { - const int source_item = proxy_to_source.at(i); - if ((orient == Qt::Vertical) - ? !q->filterAcceptsRow(source_item, source_parent) - : !q->filterAcceptsColumn(source_item, source_parent)) { - // This source item does not satisfy the filter, so it must be removed - source_items_remove.append(source_item); - } - } - // Figure out which non-mapped items to insert - QVector source_items_insert; - int source_count = source_to_proxy.size(); - for (int source_item = 0; source_item < source_count; ++source_item) { - if (source_to_proxy.at(source_item) == -1) { - if ((orient == Qt::Vertical) - ? q->filterAcceptsRow(source_item, source_parent) - : q->filterAcceptsColumn(source_item, source_parent)) { - // This source item satisfies the filter, so it must be added - source_items_insert.append(source_item); - } - } - } - if (!source_items_remove.isEmpty() || !source_items_insert.isEmpty()) { - // Do item removal and insertion - remove_source_items(source_to_proxy, proxy_to_source, - source_items_remove, source_parent, orient); - if (orient == Qt::Vertical) - sort_source_rows(source_items_insert, source_parent); - insert_source_items(source_to_proxy, proxy_to_source, - source_items_insert, source_parent, orient); - } - return qVectorToSet(source_items_remove); -} - -void QSortFilterProxyModelPrivate::_q_sourceDataChanged(const QModelIndex &source_top_left, - const QModelIndex &source_bottom_right) -{ - Q_Q(QSortFilterProxyModel); - if (!source_top_left.isValid() || !source_bottom_right.isValid()) - return; - QModelIndex source_parent = source_top_left.parent(); - IndexMap::const_iterator it = source_index_mapping.find(source_parent); - if (it == source_index_mapping.constEnd()) { - // Don't care, since we don't have mapping for this index - return; - } - Mapping *m = it.value(); - - // Figure out how the source changes affect us - QVector source_rows_remove; - QVector source_rows_insert; - QVector source_rows_change; - QVector source_rows_resort; - int end = qMin(source_bottom_right.row(), m->proxy_rows.count() - 1); - for (int source_row = source_top_left.row(); source_row <= end; ++source_row) { - if (dynamic_sortfilter) { - if (m->proxy_rows.at(source_row) != -1) { - if (!q->filterAcceptsRow(source_row, source_parent)) { - // This source row no longer satisfies the filter, so it must be removed - source_rows_remove.append(source_row); - } else if (source_sort_column >= source_top_left.column() && source_sort_column <= source_bottom_right.column()) { - // This source row has changed in a way that may affect sorted order - source_rows_resort.append(source_row); - } else { - // This row has simply changed, without affecting filtering nor sorting - source_rows_change.append(source_row); - } - } else { - if (!itemsBeingRemoved.contains(source_parent, source_row) && q->filterAcceptsRow(source_row, source_parent)) { - // This source row now satisfies the filter, so it must be added - source_rows_insert.append(source_row); - } - } - } else { - if (m->proxy_rows.at(source_row) != -1) - source_rows_change.append(source_row); - } - } - - if (!source_rows_remove.isEmpty()) { - remove_source_items(m->proxy_rows, m->source_rows, - source_rows_remove, source_parent, Qt::Vertical); - QSet source_rows_remove_set = qVectorToSet(source_rows_remove); - QVector::iterator it = m->mapped_children.end(); - while (it != m->mapped_children.begin()) { - --it; - const QModelIndex source_child_index = *it; - if (source_rows_remove_set.contains(source_child_index.row())) { - it = m->mapped_children.erase(it); - remove_from_mapping(source_child_index); - } - } - } - - if (!source_rows_resort.isEmpty()) { - // Re-sort the rows of this level - QList parents; - parents << q->mapFromSource(source_parent); - emit q->layoutAboutToBeChanged(parents); - QModelIndexPairList source_indexes = store_persistent_indexes(); - remove_source_items(m->proxy_rows, m->source_rows, source_rows_resort, - source_parent, Qt::Vertical, false); - sort_source_rows(source_rows_resort, source_parent); - insert_source_items(m->proxy_rows, m->source_rows, source_rows_resort, - source_parent, Qt::Vertical, false); - update_persistent_indexes(source_indexes); - emit q->layoutChanged(parents); - // Make sure we also emit dataChanged for the rows - source_rows_change += source_rows_resort; - } - - if (!source_rows_change.isEmpty()) { - // Find the proxy row range - int proxy_start_row; - int proxy_end_row; - proxy_item_range(m->proxy_rows, source_rows_change, - proxy_start_row, proxy_end_row); - // ### Find the proxy column range also - if (proxy_end_row >= 0) { - // the row was accepted, but some columns might still be filtered out - int source_left_column = source_top_left.column(); - while (source_left_column < source_bottom_right.column() - && m->proxy_columns.at(source_left_column) == -1) - ++source_left_column; - const QModelIndex proxy_top_left = create_index( - proxy_start_row, m->proxy_columns.at(source_left_column), it); - int source_right_column = source_bottom_right.column(); - while (source_right_column > source_top_left.column() - && m->proxy_columns.at(source_right_column) == -1) - --source_right_column; - const QModelIndex proxy_bottom_right = create_index( - proxy_end_row, m->proxy_columns.at(source_right_column), it); - emit q->dataChanged(proxy_top_left, proxy_bottom_right); - } - } - - if (!source_rows_insert.isEmpty()) { - sort_source_rows(source_rows_insert, source_parent); - insert_source_items(m->proxy_rows, m->source_rows, - source_rows_insert, source_parent, Qt::Vertical); - } -} - -void QSortFilterProxyModelPrivate::_q_sourceHeaderDataChanged(Qt::Orientation orientation, - int start, int end) -{ - Q_Q(QSortFilterProxyModel); - Mapping *m = create_mapping(QModelIndex()).value(); - int proxy_start = (orientation == Qt::Vertical - ? m->proxy_rows.at(start) - : m->proxy_columns.at(start)); - int proxy_end = (orientation == Qt::Vertical - ? m->proxy_rows.at(end) - : m->proxy_columns.at(end)); - emit q->headerDataChanged(orientation, proxy_start, proxy_end); -} - -void QSortFilterProxyModelPrivate::_q_sourceAboutToBeReset() -{ - Q_Q(QSortFilterProxyModel); - q->beginResetModel(); -} - -void QSortFilterProxyModelPrivate::_q_sourceReset() -{ - Q_Q(QSortFilterProxyModel); - invalidatePersistentIndexes(); - _q_clearMapping(); - // All internal structures are deleted in clear() - q->endResetModel(); - update_source_sort_column(); - if (dynamic_sortfilter) - sort(); -} - -void QSortFilterProxyModelPrivate::_q_sourceLayoutAboutToBeChanged(const QList &sourceParents) -{ - Q_Q(QSortFilterProxyModel); - saved_persistent_indexes.clear(); - - QList parents; - foreach (const QPersistentModelIndex &parent, sourceParents) { - if (!parent.isValid()) { - parents << QModelIndex(); - continue; - } - const QModelIndex mappedParent = q->mapFromSource(parent); - // Might be filtered out. - if (mappedParent.isValid()) - parents << mappedParent; - } - - // All parents filtered out. - if (!sourceParents.isEmpty() && parents.isEmpty()) - return; - - emit q->layoutAboutToBeChanged(parents); - if (persistent.indexes.isEmpty()) - return; - - saved_persistent_indexes = store_persistent_indexes(); -} - -void QSortFilterProxyModelPrivate::_q_sourceLayoutChanged(const QList &sourceParents) -{ - Q_Q(QSortFilterProxyModel); - - // Optimize: We only actually have to clear the mapping related to the contents of - // sourceParents, not everything. - qDeleteAll(source_index_mapping); - source_index_mapping.clear(); - - update_persistent_indexes(saved_persistent_indexes); - saved_persistent_indexes.clear(); - - if (dynamic_sortfilter && update_source_sort_column()) { - //update_source_sort_column might have created wrong mapping so we have to clear it again - qDeleteAll(source_index_mapping); - source_index_mapping.clear(); - } - - QList parents; - foreach (const QPersistentModelIndex &parent, sourceParents) { - if (!parent.isValid()) { - parents << QModelIndex(); - continue; - } - const QModelIndex mappedParent = q->mapFromSource(parent); - if (mappedParent.isValid()) - parents << mappedParent; - } - - if (!sourceParents.isEmpty() && parents.isEmpty()) - return; - - emit q->layoutChanged(parents); -} - -void QSortFilterProxyModelPrivate::_q_sourceRowsAboutToBeInserted( - const QModelIndex &source_parent, int start, int end) -{ - Q_UNUSED(start); - Q_UNUSED(end); - //Force the creation of a mapping now, even if its empty. - //We need it because the proxy can be acessed at the moment it emits rowsAboutToBeInserted in insert_source_items - if (can_create_mapping(source_parent)) - create_mapping(source_parent); -} - -void QSortFilterProxyModelPrivate::_q_sourceRowsInserted( - const QModelIndex &source_parent, int start, int end) -{ - source_items_inserted(source_parent, start, end, Qt::Vertical); - if (update_source_sort_column() && dynamic_sortfilter) //previous call to update_source_sort_column may fail if the model has no column. - sort(); // now it should succeed so we need to make sure to sort again -} - -void QSortFilterProxyModelPrivate::_q_sourceRowsAboutToBeRemoved( - const QModelIndex &source_parent, int start, int end) -{ - itemsBeingRemoved = QRowsRemoval(source_parent, start, end); - source_items_about_to_be_removed(source_parent, start, end, - Qt::Vertical); -} - -void QSortFilterProxyModelPrivate::_q_sourceRowsRemoved( - const QModelIndex &source_parent, int start, int end) -{ - itemsBeingRemoved = QRowsRemoval(); - source_items_removed(source_parent, start, end, Qt::Vertical); -} - -void QSortFilterProxyModelPrivate::_q_sourceRowsAboutToBeMoved( - const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destParent, int dest) -{ - Q_Q(QSortFilterProxyModel); - // Because rows which are contiguous in the source model might not be contiguous - // in the proxy due to sorting, the best thing we can do here is be specific about what - // parents are having their children changed. - // Optimize: Emit move signals if the proxy is not sorted. Will need to account for rows - // being filtered out though. - - saved_persistent_indexes.clear(); - - QList parents; - parents << q->mapFromSource(sourceParent); - if (sourceParent != destParent) - parents << q->mapFromSource(destParent); - emit q->layoutAboutToBeChanged(parents); - if (persistent.indexes.isEmpty()) - return; - saved_persistent_indexes = store_persistent_indexes(); -} - -void QSortFilterProxyModelPrivate::_q_sourceRowsMoved( - const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destParent, int dest) -{ - Q_Q(QSortFilterProxyModel); - - // Optimize: We only need to clear and update the persistent indexes which are children of - // sourceParent or destParent - qDeleteAll(source_index_mapping); - source_index_mapping.clear(); - - update_persistent_indexes(saved_persistent_indexes); - saved_persistent_indexes.clear(); - - if (dynamic_sortfilter && update_source_sort_column()) { - //update_source_sort_column might have created wrong mapping so we have to clear it again - qDeleteAll(source_index_mapping); - source_index_mapping.clear(); - } - - QList parents; - parents << q->mapFromSource(sourceParent); - if (sourceParent != destParent) - parents << q->mapFromSource(destParent); - emit q->layoutChanged(parents); -} - -void QSortFilterProxyModelPrivate::_q_sourceColumnsAboutToBeInserted( - const QModelIndex &source_parent, int start, int end) -{ - Q_UNUSED(start); - Q_UNUSED(end); - //Force the creation of a mapping now, even if its empty. - //We need it because the proxy can be acessed at the moment it emits columnsAboutToBeInserted in insert_source_items - if (can_create_mapping(source_parent)) - create_mapping(source_parent); -} - -void QSortFilterProxyModelPrivate::_q_sourceColumnsInserted( - const QModelIndex &source_parent, int start, int end) -{ - Q_Q(const QSortFilterProxyModel); - source_items_inserted(source_parent, start, end, Qt::Horizontal); - - if (source_parent.isValid()) - return; //we sort according to the root column only - if (source_sort_column == -1) { - //we update the source_sort_column depending on the proxy_sort_column - if (update_source_sort_column() && dynamic_sortfilter) - sort(); - } else { - if (start <= source_sort_column) - source_sort_column += end - start + 1; - - proxy_sort_column = q->mapFromSource(model->index(0,source_sort_column, source_parent)).column(); - } -} - -void QSortFilterProxyModelPrivate::_q_sourceColumnsAboutToBeRemoved( - const QModelIndex &source_parent, int start, int end) -{ - source_items_about_to_be_removed(source_parent, start, end, - Qt::Horizontal); -} - -void QSortFilterProxyModelPrivate::_q_sourceColumnsRemoved( - const QModelIndex &source_parent, int start, int end) -{ - Q_Q(const QSortFilterProxyModel); - source_items_removed(source_parent, start, end, Qt::Horizontal); - - if (source_parent.isValid()) - return; //we sort according to the root column only - if (start <= source_sort_column) { - if (end < source_sort_column) - source_sort_column -= end - start + 1; - else - source_sort_column = -1; - } - - proxy_sort_column = q->mapFromSource(model->index(0,source_sort_column, source_parent)).column(); -} - -void QSortFilterProxyModelPrivate::_q_sourceColumnsAboutToBeMoved( - const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destParent, int dest) -{ - Q_Q(QSortFilterProxyModel); - - saved_persistent_indexes.clear(); - - QList parents; - parents << q->mapFromSource(sourceParent); - if (sourceParent != destParent) - parents << q->mapFromSource(destParent); - emit q->layoutAboutToBeChanged(parents); - - if (persistent.indexes.isEmpty()) - return; - saved_persistent_indexes = store_persistent_indexes(); -} - -void QSortFilterProxyModelPrivate::_q_sourceColumnsMoved( - const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destParent, int dest) -{ - Q_Q(QSortFilterProxyModel); - - qDeleteAll(source_index_mapping); - source_index_mapping.clear(); - - update_persistent_indexes(saved_persistent_indexes); - saved_persistent_indexes.clear(); - - if (dynamic_sortfilter && update_source_sort_column()) { - qDeleteAll(source_index_mapping); - source_index_mapping.clear(); - } - - QList parents; - parents << q->mapFromSource(sourceParent); - if (sourceParent != destParent) - parents << q->mapFromSource(destParent); - emit q->layoutChanged(parents); -} - -/*! - \since 4.1 - \class QSortFilterProxyModel - \brief The QSortFilterProxyModel class provides support for sorting and - filtering data passed between another model and a view. - - \ingroup model-view - \inmodule QtWidgets - - QSortFilterProxyModel can be used for sorting items, filtering out items, - or both. The model transforms the structure of a source model by mapping - the model indexes it supplies to new indexes, corresponding to different - locations, for views to use. This approach allows a given source model to - be restructured as far as views are concerned without requiring any - transformations on the underlying data, and without duplicating the data in - memory. - - Let's assume that we want to sort and filter the items provided by a custom - model. The code to set up the model and the view, \e without sorting and - filtering, would look like this: - - \snippet doc/src/snippets/qsortfilterproxymodel-details/main.cpp 1 - - To add sorting and filtering support to \c MyItemModel, we need to create - a QSortFilterProxyModel, call setSourceModel() with the \c MyItemModel as - argument, and install the QSortFilterProxyModel on the view: - - \snippet doc/src/snippets/qsortfilterproxymodel-details/main.cpp 0 - \snippet doc/src/snippets/qsortfilterproxymodel-details/main.cpp 2 - - At this point, neither sorting nor filtering is enabled; the original data - is displayed in the view. Any changes made through the - QSortFilterProxyModel are applied to the original model. - - The QSortFilterProxyModel acts as a wrapper for the original model. If you - need to convert source \l{QModelIndex}es to sorted/filtered model indexes - or vice versa, use mapToSource(), mapFromSource(), mapSelectionToSource(), - and mapSelectionFromSource(). - - \note By default, the model does not dynamically re-sort and re-filter data - whenever the original model changes. This behavior can be changed by - setting the \l{QSortFilterProxyModel::dynamicSortFilter}{dynamicSortFilter} - property. - - The \l{itemviews/basicsortfiltermodel}{Basic Sort/Filter Model} and - \l{itemviews/customsortfiltermodel}{Custom Sort/Filter Model} examples - illustrate how to use QSortFilterProxyModel to perform basic sorting and - filtering and how to subclass it to implement custom behavior. - - \section1 Sorting - - QTableView and QTreeView have a - \l{QTreeView::sortingEnabled}{sortingEnabled} property that controls - whether the user can sort the view by clicking the view's horizontal - header. For example: - - \snippet doc/src/snippets/qsortfilterproxymodel-details/main.cpp 3 - - When this feature is on (the default is off), clicking on a header section - sorts the items according to that column. By clicking repeatedly, the user - can alternate between ascending and descending order. - - \image qsortfilterproxymodel-sorting.png A sorted QTreeView - - Behind the scene, the view calls the sort() virtual function on the model - to reorder the data in the model. To make your data sortable, you can - either implement sort() in your model, or use a QSortFilterProxyModel to - wrap your model -- QSortFilterProxyModel provides a generic sort() - reimplementation that operates on the sortRole() (Qt::DisplayRole by - default) of the items and that understands several data types, including - \c int, QString, and QDateTime. For hierarchical models, sorting is applied - recursively to all child items. String comparisons are case sensitive by - default; this can be changed by setting the \l{QSortFilterProxyModel::} - {sortCaseSensitivity} property. - - Custom sorting behavior is achieved by subclassing - QSortFilterProxyModel and reimplementing lessThan(), which is - used to compare items. For example: - - \snippet examples/itemviews/customsortfiltermodel/mysortfilterproxymodel.cpp 5 - - (This code snippet comes from the - \l{itemviews/customsortfiltermodel}{Custom Sort/Filter Model} - example.) - - An alternative approach to sorting is to disable sorting on the view and to - impose a certain order to the user. This is done by explicitly calling - sort() with the desired column and order as arguments on the - QSortFilterProxyModel (or on the original model if it implements sort()). - For example: - - \snippet doc/src/snippets/qsortfilterproxymodel-details/main.cpp 4 - - QSortFilterProxyModel can be sorted by column -1, in which case it returns - to the sort order of the underlying source model. - - \section1 Filtering - - In addition to sorting, QSortFilterProxyModel can be used to hide items - that do not match a certain filter. The filter is specified using a QRegExp - object and is applied to the filterRole() (Qt::DisplayRole by default) of - each item, for a given column. The QRegExp object can be used to match a - regular expression, a wildcard pattern, or a fixed string. For example: - - \snippet doc/src/snippets/qsortfilterproxymodel-details/main.cpp 5 - - For hierarchical models, the filter is applied recursively to all children. - If a parent item doesn't match the filter, none of its children will be - shown. - - A common use case is to let the user specify the filter regexp, wildcard - pattern, or fixed string in a QLineEdit and to connect the - \l{QLineEdit::textChanged()}{textChanged()} signal to setFilterRegExp(), - setFilterWildcard(), or setFilterFixedString() to reapply the filter. - - Custom filtering behavior can be achieved by reimplementing the - filterAcceptsRow() and filterAcceptsColumn() functions. For - example (from the \l{itemviews/customsortfiltermodel} - {Custom Sort/Filter Model} example), the following implementation ignores - the \l{QSortFilterProxyModel::filterKeyColumn}{filterKeyColumn} property - and performs filtering on columns 0, 1, and 2: - - \snippet examples/itemviews/customsortfiltermodel/mysortfilterproxymodel.cpp 3 - - (This code snippet comes from the - \l{itemviews/customsortfiltermodel}{Custom Sort/Filter Model} - example.) - - If you are working with large amounts of filtering and have to invoke - invalidateFilter() repeatedly, using reset() may be more efficient, - depending on the implementation of your model. However, reset() returns the - proxy model to its original state, losing selection information, and will - cause the proxy model to be repopulated. - - \section1 Subclassing - - Since QAbstractProxyModel and its subclasses are derived from - QAbstractItemModel, much of the same advice about subclassing normal models - also applies to proxy models. In addition, it is worth noting that many of - the default implementations of functions in this class are written so that - they call the equivalent functions in the relevant source model. This - simple proxying mechanism may need to be overridden for source models with - more complex behavior; for example, if the source model provides a custom - hasChildren() implementation, you should also provide one in the proxy - model. - - \note Some general guidelines for subclassing models are available in the - \l{Model Subclassing Reference}. - - \sa QAbstractProxyModel, QAbstractItemModel, {Model/View Programming}, - {Basic Sort/Filter Model Example}, {Custom Sort/Filter Model Example}, QIdentityProxyModel -*/ - -/*! - Constructs a sorting filter model with the given \a parent. -*/ - -QSortFilterProxyModel::QSortFilterProxyModel(QObject *parent) - : QAbstractProxyModel(*new QSortFilterProxyModelPrivate, parent) -{ - Q_D(QSortFilterProxyModel); - d->proxy_sort_column = d->source_sort_column = -1; - d->sort_order = Qt::AscendingOrder; - d->sort_casesensitivity = Qt::CaseSensitive; - d->sort_role = Qt::DisplayRole; - d->sort_localeaware = false; - d->filter_column = 0; - d->filter_role = Qt::DisplayRole; - d->dynamic_sortfilter = false; - connect(this, SIGNAL(modelReset()), this, SLOT(_q_clearMapping())); -} - -/*! - Destroys this sorting filter model. -*/ -QSortFilterProxyModel::~QSortFilterProxyModel() -{ - Q_D(QSortFilterProxyModel); - qDeleteAll(d->source_index_mapping); - d->source_index_mapping.clear(); -} - -/*! - \reimp -*/ -void QSortFilterProxyModel::setSourceModel(QAbstractItemModel *sourceModel) -{ - Q_D(QSortFilterProxyModel); - - beginResetModel(); - - disconnect(d->model, SIGNAL(dataChanged(QModelIndex,QModelIndex)), - this, SLOT(_q_sourceDataChanged(QModelIndex,QModelIndex))); - - disconnect(d->model, SIGNAL(headerDataChanged(Qt::Orientation,int,int)), - this, SLOT(_q_sourceHeaderDataChanged(Qt::Orientation,int,int))); - - disconnect(d->model, SIGNAL(rowsAboutToBeInserted(QModelIndex,int,int)), - this, SLOT(_q_sourceRowsAboutToBeInserted(QModelIndex,int,int))); - - disconnect(d->model, SIGNAL(rowsInserted(QModelIndex,int,int)), - this, SLOT(_q_sourceRowsInserted(QModelIndex,int,int))); - - disconnect(d->model, SIGNAL(columnsAboutToBeInserted(QModelIndex,int,int)), - this, SLOT(_q_sourceColumnsAboutToBeInserted(QModelIndex,int,int))); - - disconnect(d->model, SIGNAL(columnsInserted(QModelIndex,int,int)), - this, SLOT(_q_sourceColumnsInserted(QModelIndex,int,int))); - - disconnect(d->model, SIGNAL(rowsAboutToBeRemoved(QModelIndex,int,int)), - this, SLOT(_q_sourceRowsAboutToBeRemoved(QModelIndex,int,int))); - - disconnect(d->model, SIGNAL(rowsRemoved(QModelIndex,int,int)), - this, SLOT(_q_sourceRowsRemoved(QModelIndex,int,int))); - - disconnect(d->model, SIGNAL(columnsAboutToBeRemoved(QModelIndex,int,int)), - this, SLOT(_q_sourceColumnsAboutToBeRemoved(QModelIndex,int,int))); - - disconnect(d->model, SIGNAL(columnsRemoved(QModelIndex,int,int)), - this, SLOT(_q_sourceColumnsRemoved(QModelIndex,int,int))); - - disconnect(d->model, SIGNAL(rowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)), - this, SLOT(_q_sourceRowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int))); - - disconnect(d->model, SIGNAL(rowsMoved(QModelIndex,int,int,QModelIndex,int)), - this, SLOT(_q_sourceRowsMoved(QModelIndex,int,int,QModelIndex,int))); - - disconnect(d->model, SIGNAL(columnsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)), - this, SLOT(_q_sourceColumnsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int))); - - disconnect(d->model, SIGNAL(columnsMoved(QModelIndex,int,int,QModelIndex,int)), - this, SLOT(_q_sourceColumnsMoved(QModelIndex,int,int,QModelIndex,int))); - - disconnect(d->model, SIGNAL(layoutAboutToBeChanged(QList)), - this, SLOT(_q_sourceLayoutAboutToBeChanged(QList))); - - disconnect(d->model, SIGNAL(layoutChanged(QList)), - this, SLOT(_q_sourceLayoutChanged(QList))); - - disconnect(d->model, SIGNAL(modelAboutToBeReset()), this, SLOT(_q_sourceAboutToBeReset())); - disconnect(d->model, SIGNAL(modelReset()), this, SLOT(_q_sourceReset())); - - QAbstractProxyModel::setSourceModel(sourceModel); - - connect(d->model, SIGNAL(dataChanged(QModelIndex,QModelIndex)), - this, SLOT(_q_sourceDataChanged(QModelIndex,QModelIndex))); - - connect(d->model, SIGNAL(headerDataChanged(Qt::Orientation,int,int)), - this, SLOT(_q_sourceHeaderDataChanged(Qt::Orientation,int,int))); - - connect(d->model, SIGNAL(rowsAboutToBeInserted(QModelIndex,int,int)), - this, SLOT(_q_sourceRowsAboutToBeInserted(QModelIndex,int,int))); - - connect(d->model, SIGNAL(rowsInserted(QModelIndex,int,int)), - this, SLOT(_q_sourceRowsInserted(QModelIndex,int,int))); - - connect(d->model, SIGNAL(columnsAboutToBeInserted(QModelIndex,int,int)), - this, SLOT(_q_sourceColumnsAboutToBeInserted(QModelIndex,int,int))); - - connect(d->model, SIGNAL(columnsInserted(QModelIndex,int,int)), - this, SLOT(_q_sourceColumnsInserted(QModelIndex,int,int))); - - connect(d->model, SIGNAL(rowsAboutToBeRemoved(QModelIndex,int,int)), - this, SLOT(_q_sourceRowsAboutToBeRemoved(QModelIndex,int,int))); - - connect(d->model, SIGNAL(rowsRemoved(QModelIndex,int,int)), - this, SLOT(_q_sourceRowsRemoved(QModelIndex,int,int))); - - connect(d->model, SIGNAL(columnsAboutToBeRemoved(QModelIndex,int,int)), - this, SLOT(_q_sourceColumnsAboutToBeRemoved(QModelIndex,int,int))); - - connect(d->model, SIGNAL(columnsRemoved(QModelIndex,int,int)), - this, SLOT(_q_sourceColumnsRemoved(QModelIndex,int,int))); - - connect(d->model, SIGNAL(rowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)), - this, SLOT(_q_sourceRowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int))); - - connect(d->model, SIGNAL(rowsMoved(QModelIndex,int,int,QModelIndex,int)), - this, SLOT(_q_sourceRowsMoved(QModelIndex,int,int,QModelIndex,int))); - - connect(d->model, SIGNAL(columnsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)), - this, SLOT(_q_sourceColumnsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int))); - - connect(d->model, SIGNAL(columnsMoved(QModelIndex,int,int,QModelIndex,int)), - this, SLOT(_q_sourceColumnsMoved(QModelIndex,int,int,QModelIndex,int))); - - connect(d->model, SIGNAL(layoutAboutToBeChanged(QList)), - this, SLOT(_q_sourceLayoutAboutToBeChanged(QList))); - - connect(d->model, SIGNAL(layoutChanged(QList)), - this, SLOT(_q_sourceLayoutChanged(QList))); - - connect(d->model, SIGNAL(modelAboutToBeReset()), this, SLOT(_q_sourceAboutToBeReset())); - connect(d->model, SIGNAL(modelReset()), this, SLOT(_q_sourceReset())); - - d->_q_clearMapping(); - endResetModel(); - if (d->update_source_sort_column() && d->dynamic_sortfilter) - d->sort(); -} - -/*! - \reimp -*/ -QModelIndex QSortFilterProxyModel::index(int row, int column, const QModelIndex &parent) const -{ - Q_D(const QSortFilterProxyModel); - if (row < 0 || column < 0) - return QModelIndex(); - - QModelIndex source_parent = mapToSource(parent); // parent is already mapped at this point - IndexMap::const_iterator it = d->create_mapping(source_parent); // but make sure that the children are mapped - if (it.value()->source_rows.count() <= row || it.value()->source_columns.count() <= column) - return QModelIndex(); - - return d->create_index(row, column, it); -} - -/*! - \reimp -*/ -QModelIndex QSortFilterProxyModel::parent(const QModelIndex &child) const -{ - Q_D(const QSortFilterProxyModel); - if (!d->indexValid(child)) - return QModelIndex(); - IndexMap::const_iterator it = d->index_to_iterator(child); - Q_ASSERT(it != d->source_index_mapping.constEnd()); - QModelIndex source_parent = it.key(); - QModelIndex proxy_parent = mapFromSource(source_parent); - return proxy_parent; -} - -/*! - \reimp -*/ -int QSortFilterProxyModel::rowCount(const QModelIndex &parent) const -{ - Q_D(const QSortFilterProxyModel); - QModelIndex source_parent = mapToSource(parent); - if (parent.isValid() && !source_parent.isValid()) - return 0; - IndexMap::const_iterator it = d->create_mapping(source_parent); - return it.value()->source_rows.count(); -} - -/*! - \reimp -*/ -int QSortFilterProxyModel::columnCount(const QModelIndex &parent) const -{ - Q_D(const QSortFilterProxyModel); - QModelIndex source_parent = mapToSource(parent); - if (parent.isValid() && !source_parent.isValid()) - return 0; - IndexMap::const_iterator it = d->create_mapping(source_parent); - return it.value()->source_columns.count(); -} - -/*! - \reimp -*/ -bool QSortFilterProxyModel::hasChildren(const QModelIndex &parent) const -{ - Q_D(const QSortFilterProxyModel); - QModelIndex source_parent = mapToSource(parent); - if (parent.isValid() && !source_parent.isValid()) - return false; - if (!d->model->hasChildren(source_parent)) - return false; - - if (d->model->canFetchMore(source_parent)) - return true; //we assume we might have children that can be fetched - - QSortFilterProxyModelPrivate::Mapping *m = d->create_mapping(source_parent).value(); - return m->source_rows.count() != 0 && m->source_columns.count() != 0; -} - -/*! - \reimp -*/ -QVariant QSortFilterProxyModel::data(const QModelIndex &index, int role) const -{ - Q_D(const QSortFilterProxyModel); - QModelIndex source_index = mapToSource(index); - if (index.isValid() && !source_index.isValid()) - return QVariant(); - return d->model->data(source_index, role); -} - -/*! - \reimp -*/ -bool QSortFilterProxyModel::setData(const QModelIndex &index, const QVariant &value, int role) -{ - Q_D(QSortFilterProxyModel); - QModelIndex source_index = mapToSource(index); - if (index.isValid() && !source_index.isValid()) - return false; - return d->model->setData(source_index, value, role); -} - -/*! - \reimp -*/ -QVariant QSortFilterProxyModel::headerData(int section, Qt::Orientation orientation, int role) const -{ - Q_D(const QSortFilterProxyModel); - IndexMap::const_iterator it = d->create_mapping(QModelIndex()); - if (it.value()->source_rows.count() * it.value()->source_columns.count() > 0) - return QAbstractProxyModel::headerData(section, orientation, role); - int source_section; - if (orientation == Qt::Vertical) { - if (section < 0 || section >= it.value()->source_rows.count()) - return QVariant(); - source_section = it.value()->source_rows.at(section); - } else { - if (section < 0 || section >= it.value()->source_columns.count()) - return QVariant(); - source_section = it.value()->source_columns.at(section); - } - return d->model->headerData(source_section, orientation, role); -} - -/*! - \reimp -*/ -bool QSortFilterProxyModel::setHeaderData(int section, Qt::Orientation orientation, - const QVariant &value, int role) -{ - Q_D(QSortFilterProxyModel); - IndexMap::const_iterator it = d->create_mapping(QModelIndex()); - if (it.value()->source_rows.count() * it.value()->source_columns.count() > 0) - return QAbstractProxyModel::setHeaderData(section, orientation, value, role); - int source_section; - if (orientation == Qt::Vertical) { - if (section < 0 || section >= it.value()->source_rows.count()) - return false; - source_section = it.value()->source_rows.at(section); - } else { - if (section < 0 || section >= it.value()->source_columns.count()) - return false; - source_section = it.value()->source_columns.at(section); - } - return d->model->setHeaderData(source_section, orientation, value, role); -} - -/*! - \reimp -*/ -QMimeData *QSortFilterProxyModel::mimeData(const QModelIndexList &indexes) const -{ - Q_D(const QSortFilterProxyModel); - QModelIndexList source_indexes; - for (int i = 0; i < indexes.count(); ++i) - source_indexes << mapToSource(indexes.at(i)); - return d->model->mimeData(source_indexes); -} - -/*! - \reimp -*/ -QStringList QSortFilterProxyModel::mimeTypes() const -{ - Q_D(const QSortFilterProxyModel); - return d->model->mimeTypes(); -} - -/*! - \reimp -*/ -Qt::DropActions QSortFilterProxyModel::supportedDropActions() const -{ - Q_D(const QSortFilterProxyModel); - return d->model->supportedDropActions(); -} - -/*! - \reimp -*/ -bool QSortFilterProxyModel::dropMimeData(const QMimeData *data, Qt::DropAction action, - int row, int column, const QModelIndex &parent) -{ - Q_D(QSortFilterProxyModel); - if ((row == -1) && (column == -1)) - return d->model->dropMimeData(data, action, -1, -1, mapToSource(parent)); - int source_destination_row = -1; - int source_destination_column = -1; - QModelIndex source_parent; - if (row == rowCount(parent)) { - source_parent = mapToSource(parent); - source_destination_row = d->model->rowCount(source_parent); - } else { - QModelIndex proxy_index = index(row, column, parent); - QModelIndex source_index = mapToSource(proxy_index); - source_destination_row = source_index.row(); - source_destination_column = source_index.column(); - source_parent = source_index.parent(); - } - return d->model->dropMimeData(data, action, source_destination_row, - source_destination_column, source_parent); -} - -/*! - \reimp -*/ -bool QSortFilterProxyModel::insertRows(int row, int count, const QModelIndex &parent) -{ - Q_D(QSortFilterProxyModel); - if (row < 0 || count <= 0) - return false; - QModelIndex source_parent = mapToSource(parent); - if (parent.isValid() && !source_parent.isValid()) - return false; - QSortFilterProxyModelPrivate::Mapping *m = d->create_mapping(source_parent).value(); - if (row > m->source_rows.count()) - return false; - int source_row = (row >= m->source_rows.count() - ? m->source_rows.count() - : m->source_rows.at(row)); - return d->model->insertRows(source_row, count, source_parent); -} - -/*! - \reimp -*/ -bool QSortFilterProxyModel::insertColumns(int column, int count, const QModelIndex &parent) -{ - Q_D(QSortFilterProxyModel); - if (column < 0|| count <= 0) - return false; - QModelIndex source_parent = mapToSource(parent); - if (parent.isValid() && !source_parent.isValid()) - return false; - QSortFilterProxyModelPrivate::Mapping *m = d->create_mapping(source_parent).value(); - if (column > m->source_columns.count()) - return false; - int source_column = (column >= m->source_columns.count() - ? m->source_columns.count() - : m->source_columns.at(column)); - return d->model->insertColumns(source_column, count, source_parent); -} - -/*! - \reimp -*/ -bool QSortFilterProxyModel::removeRows(int row, int count, const QModelIndex &parent) -{ - Q_D(QSortFilterProxyModel); - if (row < 0 || count <= 0) - return false; - QModelIndex source_parent = mapToSource(parent); - if (parent.isValid() && !source_parent.isValid()) - return false; - QSortFilterProxyModelPrivate::Mapping *m = d->create_mapping(source_parent).value(); - if (row + count > m->source_rows.count()) - return false; - if ((count == 1) - || ((d->source_sort_column < 0) && (m->proxy_rows.count() == m->source_rows.count()))) { - int source_row = m->source_rows.at(row); - return d->model->removeRows(source_row, count, source_parent); - } - // remove corresponding source intervals - // ### if this proves to be slow, we can switch to single-row removal - QVector rows; - for (int i = row; i < row + count; ++i) - rows.append(m->source_rows.at(i)); - qSort(rows.begin(), rows.end()); - - int pos = rows.count() - 1; - bool ok = true; - while (pos >= 0) { - const int source_end = rows.at(pos--); - int source_start = source_end; - while ((pos >= 0) && (rows.at(pos) == (source_start - 1))) { - --source_start; - --pos; - } - ok = ok && d->model->removeRows(source_start, source_end - source_start + 1, - source_parent); - } - return ok; -} - -/*! - \reimp -*/ -bool QSortFilterProxyModel::removeColumns(int column, int count, const QModelIndex &parent) -{ - Q_D(QSortFilterProxyModel); - if (column < 0 || count <= 0) - return false; - QModelIndex source_parent = mapToSource(parent); - if (parent.isValid() && !source_parent.isValid()) - return false; - QSortFilterProxyModelPrivate::Mapping *m = d->create_mapping(source_parent).value(); - if (column + count > m->source_columns.count()) - return false; - if ((count == 1) || (m->proxy_columns.count() == m->source_columns.count())) { - int source_column = m->source_columns.at(column); - return d->model->removeColumns(source_column, count, source_parent); - } - // remove corresponding source intervals - QVector columns; - for (int i = column; i < column + count; ++i) - columns.append(m->source_columns.at(i)); - - int pos = columns.count() - 1; - bool ok = true; - while (pos >= 0) { - const int source_end = columns.at(pos--); - int source_start = source_end; - while ((pos >= 0) && (columns.at(pos) == (source_start - 1))) { - --source_start; - --pos; - } - ok = ok && d->model->removeColumns(source_start, source_end - source_start + 1, - source_parent); - } - return ok; -} - -/*! - \reimp -*/ -void QSortFilterProxyModel::fetchMore(const QModelIndex &parent) -{ - Q_D(QSortFilterProxyModel); - QModelIndex source_parent; - if (d->indexValid(parent)) - source_parent = mapToSource(parent); - d->model->fetchMore(source_parent); -} - -/*! - \reimp -*/ -bool QSortFilterProxyModel::canFetchMore(const QModelIndex &parent) const -{ - Q_D(const QSortFilterProxyModel); - QModelIndex source_parent; - if (d->indexValid(parent)) - source_parent = mapToSource(parent); - return d->model->canFetchMore(source_parent); -} - -/*! - \reimp -*/ -Qt::ItemFlags QSortFilterProxyModel::flags(const QModelIndex &index) const -{ - Q_D(const QSortFilterProxyModel); - QModelIndex source_index; - if (d->indexValid(index)) - source_index = mapToSource(index); - return d->model->flags(source_index); -} - -/*! - \reimp -*/ -QModelIndex QSortFilterProxyModel::buddy(const QModelIndex &index) const -{ - Q_D(const QSortFilterProxyModel); - if (!d->indexValid(index)) - return QModelIndex(); - QModelIndex source_index = mapToSource(index); - QModelIndex source_buddy = d->model->buddy(source_index); - if (source_index == source_buddy) - return index; - return mapFromSource(source_buddy); -} - -/*! - \reimp -*/ -QModelIndexList QSortFilterProxyModel::match(const QModelIndex &start, int role, - const QVariant &value, int hits, - Qt::MatchFlags flags) const -{ - return QAbstractProxyModel::match(start, role, value, hits, flags); -} - -/*! - \reimp -*/ -QSize QSortFilterProxyModel::span(const QModelIndex &index) const -{ - Q_D(const QSortFilterProxyModel); - QModelIndex source_index = mapToSource(index); - if (index.isValid() && !source_index.isValid()) - return QSize(); - return d->model->span(source_index); -} - -/*! - \reimp -*/ -void QSortFilterProxyModel::sort(int column, Qt::SortOrder order) -{ - Q_D(QSortFilterProxyModel); - if (d->dynamic_sortfilter && d->proxy_sort_column == column && d->sort_order == order) - return; - d->sort_order = order; - d->proxy_sort_column = column; - d->update_source_sort_column(); - d->sort(); -} - -/*! - \since 4.5 - \brief the column currently used for sorting - - This returns the most recently used sort column. -*/ -int QSortFilterProxyModel::sortColumn() const -{ - Q_D(const QSortFilterProxyModel); - return d->proxy_sort_column; -} - -/*! - \since 4.5 - \brief the order currently used for sorting - - This returns the most recently used sort order. -*/ -Qt::SortOrder QSortFilterProxyModel::sortOrder() const -{ - Q_D(const QSortFilterProxyModel); - return d->sort_order; -} - -/*! - \property QSortFilterProxyModel::filterRegExp - \brief the QRegExp used to filter the contents of the source model - - Setting this property overwrites the current - \l{QSortFilterProxyModel::filterCaseSensitivity}{filterCaseSensitivity}. - By default, the QRegExp is an empty string matching all contents. - - If no QRegExp or an empty string is set, everything in the source model - will be accepted. - - \sa filterCaseSensitivity, setFilterWildcard(), setFilterFixedString() -*/ -QRegExp QSortFilterProxyModel::filterRegExp() const -{ - Q_D(const QSortFilterProxyModel); - return d->filter_regexp; -} - -void QSortFilterProxyModel::setFilterRegExp(const QRegExp ®Exp) -{ - Q_D(QSortFilterProxyModel); - d->filter_regexp = regExp; - d->filter_changed(); -} - -/*! - \property QSortFilterProxyModel::filterKeyColumn - \brief the column where the key used to filter the contents of the - source model is read from. - - The default value is 0. If the value is -1, the keys will be read - from all columns. -*/ -int QSortFilterProxyModel::filterKeyColumn() const -{ - Q_D(const QSortFilterProxyModel); - return d->filter_column; -} - -void QSortFilterProxyModel::setFilterKeyColumn(int column) -{ - Q_D(QSortFilterProxyModel); - d->filter_column = column; - d->filter_changed(); -} - -/*! - \property QSortFilterProxyModel::filterCaseSensitivity - - \brief the case sensitivity of the QRegExp pattern used to filter the - contents of the source model - - By default, the filter is case sensitive. - - \sa filterRegExp, sortCaseSensitivity -*/ -Qt::CaseSensitivity QSortFilterProxyModel::filterCaseSensitivity() const -{ - Q_D(const QSortFilterProxyModel); - return d->filter_regexp.caseSensitivity(); -} - -void QSortFilterProxyModel::setFilterCaseSensitivity(Qt::CaseSensitivity cs) -{ - Q_D(QSortFilterProxyModel); - if (cs == d->filter_regexp.caseSensitivity()) - return; - d->filter_regexp.setCaseSensitivity(cs); - d->filter_changed(); -} - -/*! - \since 4.2 - \property QSortFilterProxyModel::sortCaseSensitivity - \brief the case sensitivity setting used for comparing strings when sorting - - By default, sorting is case sensitive. - - \sa filterCaseSensitivity, lessThan() -*/ -Qt::CaseSensitivity QSortFilterProxyModel::sortCaseSensitivity() const -{ - Q_D(const QSortFilterProxyModel); - return d->sort_casesensitivity; -} - -void QSortFilterProxyModel::setSortCaseSensitivity(Qt::CaseSensitivity cs) -{ - Q_D(QSortFilterProxyModel); - if (d->sort_casesensitivity == cs) - return; - - d->sort_casesensitivity = cs; - d->sort(); -} - -/*! - \since 4.3 - \property QSortFilterProxyModel::isSortLocaleAware - \brief the local aware setting used for comparing strings when sorting - - By default, sorting is not local aware. - - \sa sortCaseSensitivity, lessThan() -*/ -bool QSortFilterProxyModel::isSortLocaleAware() const -{ - Q_D(const QSortFilterProxyModel); - return d->sort_localeaware; -} - -void QSortFilterProxyModel::setSortLocaleAware(bool on) -{ - Q_D(QSortFilterProxyModel); - if (d->sort_localeaware == on) - return; - - d->sort_localeaware = on; - d->sort(); -} - -/*! - \overload - - Sets the regular expression used to filter the contents - of the source model to \a pattern. - - \sa setFilterCaseSensitivity(), setFilterWildcard(), setFilterFixedString(), filterRegExp() -*/ -void QSortFilterProxyModel::setFilterRegExp(const QString &pattern) -{ - Q_D(QSortFilterProxyModel); - d->filter_regexp.setPatternSyntax(QRegExp::RegExp); - d->filter_regexp.setPattern(pattern); - d->filter_changed(); -} - -/*! - Sets the wildcard expression used to filter the contents - of the source model to the given \a pattern. - - \sa setFilterCaseSensitivity(), setFilterRegExp(), setFilterFixedString(), filterRegExp() -*/ -void QSortFilterProxyModel::setFilterWildcard(const QString &pattern) -{ - Q_D(QSortFilterProxyModel); - d->filter_regexp.setPatternSyntax(QRegExp::Wildcard); - d->filter_regexp.setPattern(pattern); - d->filter_changed(); -} - -/*! - Sets the fixed string used to filter the contents - of the source model to the given \a pattern. - - \sa setFilterCaseSensitivity(), setFilterRegExp(), setFilterWildcard(), filterRegExp() -*/ -void QSortFilterProxyModel::setFilterFixedString(const QString &pattern) -{ - Q_D(QSortFilterProxyModel); - d->filter_regexp.setPatternSyntax(QRegExp::FixedString); - d->filter_regexp.setPattern(pattern); - d->filter_changed(); -} - -/*! - \since 4.2 - \property QSortFilterProxyModel::dynamicSortFilter - \brief whether the proxy model is dynamically sorted and filtered - whenever the contents of the source model change - - Note that you should not update the source model through the proxy - model when dynamicSortFilter is true. For instance, if you set the - proxy model on a QComboBox, then using functions that update the - model, e.g., \l{QComboBox::}{addItem()}, will not work as - expected. An alternative is to set dynamicSortFilter to false and - call \l{QSortFilterProxyModel::}{sort()} after adding items to the - QComboBox. - - The default value is false. -*/ -bool QSortFilterProxyModel::dynamicSortFilter() const -{ - Q_D(const QSortFilterProxyModel); - return d->dynamic_sortfilter; -} - -void QSortFilterProxyModel::setDynamicSortFilter(bool enable) -{ - Q_D(QSortFilterProxyModel); - d->dynamic_sortfilter = enable; - if (enable) - d->sort(); -} - -/*! - \since 4.2 - \property QSortFilterProxyModel::sortRole - \brief the item role that is used to query the source model's data when sorting items - - The default value is Qt::DisplayRole. - - \sa lessThan() -*/ -int QSortFilterProxyModel::sortRole() const -{ - Q_D(const QSortFilterProxyModel); - return d->sort_role; -} - -void QSortFilterProxyModel::setSortRole(int role) -{ - Q_D(QSortFilterProxyModel); - if (d->sort_role == role) - return; - d->sort_role = role; - d->sort(); -} - -/*! - \since 4.2 - \property QSortFilterProxyModel::filterRole - \brief the item role that is used to query the source model's data when filtering items - - The default value is Qt::DisplayRole. - - \sa filterAcceptsRow() -*/ -int QSortFilterProxyModel::filterRole() const -{ - Q_D(const QSortFilterProxyModel); - return d->filter_role; -} - -void QSortFilterProxyModel::setFilterRole(int role) -{ - Q_D(QSortFilterProxyModel); - if (d->filter_role == role) - return; - d->filter_role = role; - d->filter_changed(); -} - -/*! - \obsolete - - This function is obsolete. Use invalidate() instead. -*/ -void QSortFilterProxyModel::clear() -{ - Q_D(QSortFilterProxyModel); - emit layoutAboutToBeChanged(); - d->_q_clearMapping(); - emit layoutChanged(); -} - -/*! - \since 4.3 - - Invalidates the current sorting and filtering. - - \sa invalidateFilter() -*/ -void QSortFilterProxyModel::invalidate() -{ - Q_D(QSortFilterProxyModel); - emit layoutAboutToBeChanged(); - d->_q_clearMapping(); - emit layoutChanged(); -} - -/*! - \obsolete - - This function is obsolete. Use invalidateFilter() instead. -*/ -void QSortFilterProxyModel::filterChanged() -{ - Q_D(QSortFilterProxyModel); - d->filter_changed(); -} - -/*! - \since 4.3 - - Invalidates the current filtering. - - This function should be called if you are implementing custom filtering - (e.g. filterAcceptsRow()), and your filter parameters have changed. - - \sa invalidate() -*/ -void QSortFilterProxyModel::invalidateFilter() -{ - Q_D(QSortFilterProxyModel); - d->filter_changed(); -} - -/*! - Returns true if the value of the item referred to by the given - index \a left is less than the value of the item referred to by - the given index \a right, otherwise returns false. - - This function is used as the < operator when sorting, and handles - the following QVariant types: - - \list - \o QVariant::Int - \o QVariant::UInt - \o QVariant::LongLong - \o QVariant::ULongLong - \o QVariant::Double - \o QVariant::Char - \o QVariant::Date - \o QVariant::Time - \o QVariant::DateTime - \o QVariant::String - \endlist - - Any other type will be converted to a QString using - QVariant::toString(). - - Comparison of \l{QString}s is case sensitive by default; this can - be changed using the \l {QSortFilterProxyModel::sortCaseSensitivity} - {sortCaseSensitivity} property. - - By default, the Qt::DisplayRole associated with the - \l{QModelIndex}es is used for comparisons. This can be changed by - setting the \l {QSortFilterProxyModel::sortRole} {sortRole} property. - - \note The indices passed in correspond to the source model. - - \sa sortRole, sortCaseSensitivity, dynamicSortFilter -*/ -bool QSortFilterProxyModel::lessThan(const QModelIndex &left, const QModelIndex &right) const -{ - Q_D(const QSortFilterProxyModel); - QVariant l = (left.model() ? left.model()->data(left, d->sort_role) : QVariant()); - QVariant r = (right.model() ? right.model()->data(right, d->sort_role) : QVariant()); - switch (l.userType()) { - case QVariant::Invalid: - return (r.type() != QVariant::Invalid); - case QVariant::Int: - return l.toInt() < r.toInt(); - case QVariant::UInt: - return l.toUInt() < r.toUInt(); - case QVariant::LongLong: - return l.toLongLong() < r.toLongLong(); - case QVariant::ULongLong: - return l.toULongLong() < r.toULongLong(); - case QMetaType::Float: - return l.toFloat() < r.toFloat(); - case QVariant::Double: - return l.toDouble() < r.toDouble(); - case QVariant::Char: - return l.toChar() < r.toChar(); - case QVariant::Date: - return l.toDate() < r.toDate(); - case QVariant::Time: - return l.toTime() < r.toTime(); - case QVariant::DateTime: - return l.toDateTime() < r.toDateTime(); - case QVariant::String: - default: - if (d->sort_localeaware) - return l.toString().localeAwareCompare(r.toString()) < 0; - else - return l.toString().compare(r.toString(), d->sort_casesensitivity) < 0; - } - return false; -} - -/*! - Returns true if the item in the row indicated by the given \a source_row - and \a source_parent should be included in the model; otherwise returns - false. - - The default implementation returns true if the value held by the relevant item - matches the filter string, wildcard string or regular expression. - - \note By default, the Qt::DisplayRole is used to determine if the row - should be accepted or not. This can be changed by setting the - \l{QSortFilterProxyModel::filterRole}{filterRole} property. - - \sa filterAcceptsColumn(), setFilterFixedString(), setFilterRegExp(), setFilterWildcard() -*/ -bool QSortFilterProxyModel::filterAcceptsRow(int source_row, const QModelIndex &source_parent) const -{ - Q_D(const QSortFilterProxyModel); - if (d->filter_regexp.isEmpty()) - return true; - if (d->filter_column == -1) { - int column_count = d->model->columnCount(source_parent); - for (int column = 0; column < column_count; ++column) { - QModelIndex source_index = d->model->index(source_row, column, source_parent); - QString key = d->model->data(source_index, d->filter_role).toString(); - if (key.contains(d->filter_regexp)) - return true; - } - return false; - } - QModelIndex source_index = d->model->index(source_row, d->filter_column, source_parent); - if (!source_index.isValid()) // the column may not exist - return true; - QString key = d->model->data(source_index, d->filter_role).toString(); - return key.contains(d->filter_regexp); -} - -/*! - Returns true if the item in the column indicated by the given \a source_column - and \a source_parent should be included in the model; otherwise returns false. - - The default implementation returns true if the value held by the relevant item - matches the filter string, wildcard string or regular expression. - - \note By default, the Qt::DisplayRole is used to determine if the row - should be accepted or not. This can be changed by setting the \l - filterRole property. - - \sa filterAcceptsRow(), setFilterFixedString(), setFilterRegExp(), setFilterWildcard() -*/ -bool QSortFilterProxyModel::filterAcceptsColumn(int source_column, const QModelIndex &source_parent) const -{ - Q_UNUSED(source_column); - Q_UNUSED(source_parent); - return true; -} - -/*! - Returns the source model index corresponding to the given \a - proxyIndex from the sorting filter model. - - \sa mapFromSource() -*/ -QModelIndex QSortFilterProxyModel::mapToSource(const QModelIndex &proxyIndex) const -{ - Q_D(const QSortFilterProxyModel); - return d->proxy_to_source(proxyIndex); -} - -/*! - Returns the model index in the QSortFilterProxyModel given the \a - sourceIndex from the source model. - - \sa mapToSource() -*/ -QModelIndex QSortFilterProxyModel::mapFromSource(const QModelIndex &sourceIndex) const -{ - Q_D(const QSortFilterProxyModel); - return d->source_to_proxy(sourceIndex); -} - -/*! - \reimp -*/ -QItemSelection QSortFilterProxyModel::mapSelectionToSource(const QItemSelection &proxySelection) const -{ - return QAbstractProxyModel::mapSelectionToSource(proxySelection); -} - -/*! - \reimp -*/ -QItemSelection QSortFilterProxyModel::mapSelectionFromSource(const QItemSelection &sourceSelection) const -{ - return QAbstractProxyModel::mapSelectionFromSource(sourceSelection); -} - -/*! - \fn QObject *QSortFilterProxyModel::parent() const - \internal -*/ - -QT_END_NAMESPACE - -#include "moc_qsortfilterproxymodel.cpp" - -#endif // QT_NO_SORTFILTERPROXYMODEL diff --git a/src/widgets/itemviews/qsortfilterproxymodel.h b/src/widgets/itemviews/qsortfilterproxymodel.h deleted file mode 100644 index bbeec1470c..0000000000 --- a/src/widgets/itemviews/qsortfilterproxymodel.h +++ /dev/null @@ -1,205 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtGui module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef QSORTFILTERPROXYMODEL_H -#define QSORTFILTERPROXYMODEL_H - -#include - -#ifndef QT_NO_SORTFILTERPROXYMODEL - -#include - -QT_BEGIN_HEADER - -QT_BEGIN_NAMESPACE - -QT_MODULE(Gui) - -class QSortFilterProxyModelPrivate; -class QSortFilterProxyModelLessThan; -class QSortFilterProxyModelGreaterThan; - -class Q_WIDGETS_EXPORT QSortFilterProxyModel : public QAbstractProxyModel -{ - friend class QSortFilterProxyModelLessThan; - friend class QSortFilterProxyModelGreaterThan; - - Q_OBJECT - Q_PROPERTY(QRegExp filterRegExp READ filterRegExp WRITE setFilterRegExp) - Q_PROPERTY(int filterKeyColumn READ filterKeyColumn WRITE setFilterKeyColumn) - Q_PROPERTY(bool dynamicSortFilter READ dynamicSortFilter WRITE setDynamicSortFilter) - Q_PROPERTY(Qt::CaseSensitivity filterCaseSensitivity READ filterCaseSensitivity WRITE setFilterCaseSensitivity) - Q_PROPERTY(Qt::CaseSensitivity sortCaseSensitivity READ sortCaseSensitivity WRITE setSortCaseSensitivity) - Q_PROPERTY(bool isSortLocaleAware READ isSortLocaleAware WRITE setSortLocaleAware) - Q_PROPERTY(int sortRole READ sortRole WRITE setSortRole) - Q_PROPERTY(int filterRole READ filterRole WRITE setFilterRole) - -public: - QSortFilterProxyModel(QObject *parent = 0); - ~QSortFilterProxyModel(); - - void setSourceModel(QAbstractItemModel *sourceModel); - - QModelIndex mapToSource(const QModelIndex &proxyIndex) const; - QModelIndex mapFromSource(const QModelIndex &sourceIndex) const; - - QItemSelection mapSelectionToSource(const QItemSelection &proxySelection) const; - QItemSelection mapSelectionFromSource(const QItemSelection &sourceSelection) const; - - QRegExp filterRegExp() const; - void setFilterRegExp(const QRegExp ®Exp); - - int filterKeyColumn() const; - void setFilterKeyColumn(int column); - - Qt::CaseSensitivity filterCaseSensitivity() const; - void setFilterCaseSensitivity(Qt::CaseSensitivity cs); - - Qt::CaseSensitivity sortCaseSensitivity() const; - void setSortCaseSensitivity(Qt::CaseSensitivity cs); - - bool isSortLocaleAware() const; - void setSortLocaleAware(bool on); - - int sortColumn() const; - Qt::SortOrder sortOrder() const; - - bool dynamicSortFilter() const; - void setDynamicSortFilter(bool enable); - - int sortRole() const; - void setSortRole(int role); - - int filterRole() const; - void setFilterRole(int role); - -public Q_SLOTS: - void setFilterRegExp(const QString &pattern); - void setFilterWildcard(const QString &pattern); - void setFilterFixedString(const QString &pattern); - void clear(); - void invalidate(); - -protected: - virtual bool filterAcceptsRow(int source_row, const QModelIndex &source_parent) const; - virtual bool filterAcceptsColumn(int source_column, const QModelIndex &source_parent) const; - virtual bool lessThan(const QModelIndex &left, const QModelIndex &right) const; - - void filterChanged(); - void invalidateFilter(); - -public: -#ifdef Q_NO_USING_KEYWORD - inline QObject *parent() const { return QObject::parent(); } -#else - using QObject::parent; -#endif - - QModelIndex index(int row, int column, const QModelIndex &parent = QModelIndex()) const; - QModelIndex parent(const QModelIndex &child) const; - - int rowCount(const QModelIndex &parent = QModelIndex()) const; - int columnCount(const QModelIndex &parent = QModelIndex()) const; - bool hasChildren(const QModelIndex &parent = QModelIndex()) const; - - QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const; - bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole); - - QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const; - bool setHeaderData(int section, Qt::Orientation orientation, - const QVariant &value, int role = Qt::EditRole); - - QMimeData *mimeData(const QModelIndexList &indexes) const; - bool dropMimeData(const QMimeData *data, Qt::DropAction action, - int row, int column, const QModelIndex &parent); - - bool insertRows(int row, int count, const QModelIndex &parent = QModelIndex()); - bool insertColumns(int column, int count, const QModelIndex &parent = QModelIndex()); - bool removeRows(int row, int count, const QModelIndex &parent = QModelIndex()); - bool removeColumns(int column, int count, const QModelIndex &parent = QModelIndex()); - - void fetchMore(const QModelIndex &parent); - bool canFetchMore(const QModelIndex &parent) const; - Qt::ItemFlags flags(const QModelIndex &index) const; - - QModelIndex buddy(const QModelIndex &index) const; - QModelIndexList match(const QModelIndex &start, int role, - const QVariant &value, int hits = 1, - Qt::MatchFlags flags = - Qt::MatchFlags(Qt::MatchStartsWith|Qt::MatchWrap)) const; - QSize span(const QModelIndex &index) const; - void sort(int column, Qt::SortOrder order = Qt::AscendingOrder); - - QStringList mimeTypes() const; - Qt::DropActions supportedDropActions() const; -private: - Q_DECLARE_PRIVATE(QSortFilterProxyModel) - Q_DISABLE_COPY(QSortFilterProxyModel) - - Q_PRIVATE_SLOT(d_func(), void _q_sourceDataChanged(const QModelIndex &source_top_left, const QModelIndex &source_bottom_right)) - Q_PRIVATE_SLOT(d_func(), void _q_sourceHeaderDataChanged(Qt::Orientation orientation, int start, int end)) - Q_PRIVATE_SLOT(d_func(), void _q_sourceAboutToBeReset()) - Q_PRIVATE_SLOT(d_func(), void _q_sourceReset()) - Q_PRIVATE_SLOT(d_func(), void _q_sourceLayoutAboutToBeChanged(const QList &sourceParents)) - Q_PRIVATE_SLOT(d_func(), void _q_sourceLayoutChanged(const QList &sourceParents)) - Q_PRIVATE_SLOT(d_func(), void _q_sourceRowsAboutToBeInserted(const QModelIndex &source_parent, int start, int end)) - Q_PRIVATE_SLOT(d_func(), void _q_sourceRowsInserted(const QModelIndex &source_parent, int start, int end)) - Q_PRIVATE_SLOT(d_func(), void _q_sourceRowsAboutToBeRemoved(const QModelIndex &source_parent, int start, int end)) - Q_PRIVATE_SLOT(d_func(), void _q_sourceRowsRemoved(const QModelIndex &source_parent, int start, int end)) - Q_PRIVATE_SLOT(d_func(), void _q_sourceRowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)) - Q_PRIVATE_SLOT(d_func(), void _q_sourceRowsMoved(QModelIndex,int,int,QModelIndex,int)) - Q_PRIVATE_SLOT(d_func(), void _q_sourceColumnsAboutToBeInserted(const QModelIndex &source_parent, int start, int end)) - Q_PRIVATE_SLOT(d_func(), void _q_sourceColumnsInserted(const QModelIndex &source_parent, int start, int end)) - Q_PRIVATE_SLOT(d_func(), void _q_sourceColumnsAboutToBeRemoved(const QModelIndex &source_parent, int start, int end)) - Q_PRIVATE_SLOT(d_func(), void _q_sourceColumnsRemoved(const QModelIndex &source_parent, int start, int end)) - Q_PRIVATE_SLOT(d_func(), void _q_sourceColumnsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)) - Q_PRIVATE_SLOT(d_func(), void _q_sourceColumnsMoved(QModelIndex,int,int,QModelIndex,int)) - Q_PRIVATE_SLOT(d_func(), void _q_clearMapping()) -}; - -QT_END_NAMESPACE - -QT_END_HEADER - -#endif // QT_NO_SORTFILTERPROXYMODEL - -#endif // QSORTFILTERPROXYMODEL_H diff --git a/src/widgets/itemviews/qstringlistmodel.cpp b/src/widgets/itemviews/qstringlistmodel.cpp deleted file mode 100644 index 95c0456765..0000000000 --- a/src/widgets/itemviews/qstringlistmodel.cpp +++ /dev/null @@ -1,310 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtGui module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -/* - A simple model that uses a QStringList as its data source. -*/ - -#include "qstringlistmodel.h" - -#include - -#ifndef QT_NO_STRINGLISTMODEL - -QT_BEGIN_NAMESPACE - -/*! - \class QStringListModel - \brief The QStringListModel class provides a model that supplies strings to views. - - \ingroup model-view - \inmodule QtWidgets - - QStringListModel is an editable model that can be used for simple - cases where you need to display a number of strings in a view - widget, such as a QListView or a QComboBox. - - The model provides all the standard functions of an editable - model, representing the data in the string list as a model with - one column and a number of rows equal to the number of items in - the list. - - Model indexes corresponding to items are obtained with the - \l{QAbstractListModel::index()}{index()} function, and item flags - are obtained with flags(). Item data is read with the data() - function and written with setData(). The number of rows (and - number of items in the string list) can be found with the - rowCount() function. - - The model can be constructed with an existing string list, or - strings can be set later with the setStringList() convenience - function. Strings can also be inserted in the usual way with the - insertRows() function, and removed with removeRows(). The contents - of the string list can be retrieved with the stringList() - convenience function. - - An example usage of QStringListModel: - - \snippet doc/src/snippets/qstringlistmodel/main.cpp 0 - - \sa QAbstractListModel, QAbstractItemModel, {Model Classes} -*/ - -/*! - Constructs a string list model with the given \a parent. -*/ - -QStringListModel::QStringListModel(QObject *parent) - : QAbstractListModel(parent) -{ -} - -/*! - Constructs a string list model containing the specified \a strings - with the given \a parent. -*/ - -QStringListModel::QStringListModel(const QStringList &strings, QObject *parent) - : QAbstractListModel(parent), lst(strings) -{ -} - -/*! - Returns the number of rows in the model. This value corresponds to the - number of items in the model's internal string list. - - The optional \a parent argument is in most models used to specify - the parent of the rows to be counted. Because this is a list if a - valid parent is specified, the result will always be 0. - - \sa insertRows(), removeRows(), QAbstractItemModel::rowCount() -*/ - -int QStringListModel::rowCount(const QModelIndex &parent) const -{ - if (parent.isValid()) - return 0; - - return lst.count(); -} - -/*! - Returns data for the specified \a role, from the item with the - given \a index. - - If the view requests an invalid index, an invalid variant is returned. - - \sa setData() -*/ - -QVariant QStringListModel::data(const QModelIndex &index, int role) const -{ - if (index.row() < 0 || index.row() >= lst.size()) - return QVariant(); - - if (role == Qt::DisplayRole || role == Qt::EditRole) - return lst.at(index.row()); - - return QVariant(); -} - -/*! - Returns the flags for the item with the given \a index. - - Valid items are enabled, selectable, editable, drag enabled and drop enabled. - - \sa QAbstractItemModel::flags() -*/ - -Qt::ItemFlags QStringListModel::flags(const QModelIndex &index) const -{ - if (!index.isValid()) - return QAbstractItemModel::flags(index) | Qt::ItemIsDropEnabled; - - return QAbstractItemModel::flags(index) | Qt::ItemIsEditable | Qt::ItemIsDragEnabled | Qt::ItemIsDropEnabled; -} - -/*! - Sets the data for the specified \a role in the item with the given - \a index in the model, to the provided \a value. - - The dataChanged() signal is emitted if the item is changed. - - \sa Qt::ItemDataRole, data() -*/ - -bool QStringListModel::setData(const QModelIndex &index, const QVariant &value, int role) -{ - if (index.row() >= 0 && index.row() < lst.size() - && (role == Qt::EditRole || role == Qt::DisplayRole)) { - lst.replace(index.row(), value.toString()); - emit dataChanged(index, index); - return true; - } - return false; -} - -/*! - Inserts \a count rows into the model, beginning at the given \a row. - - The \a parent index of the rows is optional and is only used for - consistency with QAbstractItemModel. By default, a null index is - specified, indicating that the rows are inserted in the top level of - the model. - - \sa QAbstractItemModel::insertRows() -*/ - -bool QStringListModel::insertRows(int row, int count, const QModelIndex &parent) -{ - if (count < 1 || row < 0 || row > rowCount(parent)) - return false; - - beginInsertRows(QModelIndex(), row, row + count - 1); - - for (int r = 0; r < count; ++r) - lst.insert(row, QString()); - - endInsertRows(); - - return true; -} - -/*! - Removes \a count rows from the model, beginning at the given \a row. - - The \a parent index of the rows is optional and is only used for - consistency with QAbstractItemModel. By default, a null index is - specified, indicating that the rows are removed in the top level of - the model. - - \sa QAbstractItemModel::removeRows() -*/ - -bool QStringListModel::removeRows(int row, int count, const QModelIndex &parent) -{ - if (count <= 0 || row < 0 || (row + count) > rowCount(parent)) - return false; - - beginRemoveRows(QModelIndex(), row, row + count - 1); - - for (int r = 0; r < count; ++r) - lst.removeAt(row); - - endRemoveRows(); - - return true; -} - -static bool ascendingLessThan(const QPair &s1, const QPair &s2) -{ - return s1.first < s2.first; -} - -static bool decendingLessThan(const QPair &s1, const QPair &s2) -{ - return s1.first > s2.first; -} - -/*! - \reimp -*/ -void QStringListModel::sort(int, Qt::SortOrder order) -{ - emit layoutAboutToBeChanged(); - - QList > list; - for (int i = 0; i < lst.count(); ++i) - list.append(QPair(lst.at(i), i)); - - if (order == Qt::AscendingOrder) - qSort(list.begin(), list.end(), ascendingLessThan); - else - qSort(list.begin(), list.end(), decendingLessThan); - - lst.clear(); - QVector forwarding(list.count()); - for (int i = 0; i < list.count(); ++i) { - lst.append(list.at(i).first); - forwarding[list.at(i).second] = i; - } - - QModelIndexList oldList = persistentIndexList(); - QModelIndexList newList; - for (int i = 0; i < oldList.count(); ++i) - newList.append(index(forwarding.at(oldList.at(i).row()), 0)); - changePersistentIndexList(oldList, newList); - - emit layoutChanged(); -} - -/*! - Returns the string list used by the model to store data. -*/ -QStringList QStringListModel::stringList() const -{ - return lst; -} - -/*! - Sets the model's internal string list to \a strings. The model will - notify any attached views that its underlying data has changed. - - \sa dataChanged() -*/ -void QStringListModel::setStringList(const QStringList &strings) -{ - emit beginResetModel(); - lst = strings; - emit endResetModel(); -} - -/*! - \reimp -*/ -Qt::DropActions QStringListModel::supportedDropActions() const -{ - return QAbstractItemModel::supportedDropActions() | Qt::MoveAction; -} - -QT_END_NAMESPACE - -#endif // QT_NO_STRINGLISTMODEL diff --git a/src/widgets/itemviews/qstringlistmodel.h b/src/widgets/itemviews/qstringlistmodel.h deleted file mode 100644 index c2b8042134..0000000000 --- a/src/widgets/itemviews/qstringlistmodel.h +++ /dev/null @@ -1,91 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtGui module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef QSTRINGLISTMODEL_H -#define QSTRINGLISTMODEL_H - -#include -#include - -QT_BEGIN_HEADER - -QT_BEGIN_NAMESPACE - -QT_MODULE(Gui) - -#ifndef QT_NO_STRINGLISTMODEL - -class Q_WIDGETS_EXPORT QStringListModel : public QAbstractListModel -{ - Q_OBJECT -public: - explicit QStringListModel(QObject *parent = 0); - QStringListModel(const QStringList &strings, QObject *parent = 0); - - int rowCount(const QModelIndex &parent = QModelIndex()) const; - - QVariant data(const QModelIndex &index, int role) const; - bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole); - - Qt::ItemFlags flags(const QModelIndex &index) const; - - bool insertRows(int row, int count, const QModelIndex &parent = QModelIndex()); - bool removeRows(int row, int count, const QModelIndex &parent = QModelIndex()); - - void sort(int column, Qt::SortOrder order = Qt::AscendingOrder); - - QStringList stringList() const; - void setStringList(const QStringList &strings); - - Qt::DropActions supportedDropActions() const; - -private: - Q_DISABLE_COPY(QStringListModel) - QStringList lst; -}; - -#endif // QT_NO_STRINGLISTMODEL - -QT_END_NAMESPACE - -QT_END_HEADER - -#endif // QSTRINGLISTMODEL_H diff --git a/src/widgets/util/qcompleter.cpp b/src/widgets/util/qcompleter.cpp index e99dd9ffc5..34db1b364b 100644 --- a/src/widgets/util/qcompleter.cpp +++ b/src/widgets/util/qcompleter.cpp @@ -147,7 +147,7 @@ #ifndef QT_NO_COMPLETER #include "QtWidgets/qscrollbar.h" -#include "QtWidgets/qstringlistmodel.h" +#include "QtCore/qstringlistmodel.h" #include "QtWidgets/qdirmodel.h" #include "QtWidgets/qfilesystemmodel.h" #include "QtWidgets/qheaderview.h" diff --git a/src/widgets/util/qcompleter_p.h b/src/widgets/util/qcompleter_p.h index 639c875568..78e201bd9e 100644 --- a/src/widgets/util/qcompleter_p.h +++ b/src/widgets/util/qcompleter_p.h @@ -59,7 +59,7 @@ #ifndef QT_NO_COMPLETER #include "QtWidgets/qtreeview.h" -#include "QtWidgets/qabstractproxymodel.h" +#include "QtCore/qabstractproxymodel.h" #include "qcompleter.h" #include "QtWidgets/qitemdelegate.h" #include "QtGui/qpainter.h" diff --git a/tests/auto/corelib/itemmodels/itemmodels.pro b/tests/auto/corelib/itemmodels/itemmodels.pro index c11a1f120b..c5124c3241 100644 --- a/tests/auto/corelib/itemmodels/itemmodels.pro +++ b/tests/auto/corelib/itemmodels/itemmodels.pro @@ -1,5 +1,10 @@ TEMPLATE=subdirs -SUBDIRS = qabstractitemmodel +SUBDIRS = qabstractitemmodel \ + qabstractproxymodel \ + qidentityproxymodel \ + qitemselectionmodel \ + qsortfilterproxymodel \ + qstringlistmodel mac: qabstractitemmodel.CONFIG = no_check_target # QTBUG-22748 diff --git a/tests/auto/corelib/itemmodels/qabstractitemmodel/tst_qabstractitemmodel.cpp b/tests/auto/corelib/itemmodels/qabstractitemmodel/tst_qabstractitemmodel.cpp index 2340c86207..199d96c0d1 100644 --- a/tests/auto/corelib/itemmodels/qabstractitemmodel/tst_qabstractitemmodel.cpp +++ b/tests/auto/corelib/itemmodels/qabstractitemmodel/tst_qabstractitemmodel.cpp @@ -42,8 +42,8 @@ #include #include -#include -#include +#include +#include #include "dynamictreemodel.h" diff --git a/tests/auto/corelib/itemmodels/qabstractproxymodel/.gitignore b/tests/auto/corelib/itemmodels/qabstractproxymodel/.gitignore new file mode 100644 index 0000000000..bffc04d632 --- /dev/null +++ b/tests/auto/corelib/itemmodels/qabstractproxymodel/.gitignore @@ -0,0 +1 @@ +tst_qabstractproxymodel diff --git a/tests/auto/corelib/itemmodels/qabstractproxymodel/qabstractproxymodel.pro b/tests/auto/corelib/itemmodels/qabstractproxymodel/qabstractproxymodel.pro new file mode 100644 index 0000000000..5ded15ad5c --- /dev/null +++ b/tests/auto/corelib/itemmodels/qabstractproxymodel/qabstractproxymodel.pro @@ -0,0 +1,4 @@ +CONFIG += testcase +TARGET = tst_qabstractproxymodel +QT += widgets testlib +SOURCES += tst_qabstractproxymodel.cpp diff --git a/tests/auto/corelib/itemmodels/qabstractproxymodel/tst_qabstractproxymodel.cpp b/tests/auto/corelib/itemmodels/qabstractproxymodel/tst_qabstractproxymodel.cpp new file mode 100644 index 0000000000..b6557c45ec --- /dev/null +++ b/tests/auto/corelib/itemmodels/qabstractproxymodel/tst_qabstractproxymodel.cpp @@ -0,0 +1,449 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + + +#include +#include +#include +#include + +class tst_QAbstractProxyModel : public QObject +{ + Q_OBJECT + +public slots: + void initTestCase(); + void cleanupTestCase(); + void init(); + void cleanup(); + +private slots: + void qabstractproxymodel_data(); + void qabstractproxymodel(); + void data_data(); + void data(); + void flags_data(); + void flags(); + void headerData_data(); + void headerData(); + void itemData_data(); + void itemData(); + void mapFromSource_data(); + void mapFromSource(); + void mapSelectionFromSource_data(); + void mapSelectionFromSource(); + void mapSelectionToSource_data(); + void mapSelectionToSource(); + void mapToSource_data(); + void mapToSource(); + void revert_data(); + void revert(); + void setSourceModel_data(); + void setSourceModel(); + void submit_data(); + void submit(); + void testRoleNames(); +}; + +// Subclass that exposes the protected functions. +class SubQAbstractProxyModel : public QAbstractProxyModel +{ +public: + // QAbstractProxyModel::mapFromSource is a pure virtual function. + QModelIndex mapFromSource(QModelIndex const& sourceIndex) const + { Q_UNUSED(sourceIndex); return QModelIndex(); } + + // QAbstractProxyModel::mapToSource is a pure virtual function. + QModelIndex mapToSource(QModelIndex const& proxyIndex) const + { Q_UNUSED(proxyIndex); return QModelIndex(); } + + QModelIndex index(int, int, const QModelIndex&) const + { + return QModelIndex(); + } + + QModelIndex parent(const QModelIndex&) const + { + return QModelIndex(); + } + + int rowCount(const QModelIndex&) const + { + return 0; + } + + int columnCount(const QModelIndex&) const + { + return 0; + } +}; + +// This will be called before the first test function is executed. +// It is only called once. +void tst_QAbstractProxyModel::initTestCase() +{ +} + +// This will be called after the last test function is executed. +// It is only called once. +void tst_QAbstractProxyModel::cleanupTestCase() +{ +} + +// This will be called before each test function is executed. +void tst_QAbstractProxyModel::init() +{ +} + +// This will be called after every test function. +void tst_QAbstractProxyModel::cleanup() +{ +} + +void tst_QAbstractProxyModel::qabstractproxymodel_data() +{ +} + +void tst_QAbstractProxyModel::qabstractproxymodel() +{ + SubQAbstractProxyModel model; + model.data(QModelIndex()); + model.flags(QModelIndex()); + model.headerData(0, Qt::Vertical, 0); + model.itemData(QModelIndex()); + model.mapFromSource(QModelIndex()); + model.mapSelectionFromSource(QItemSelection()); + model.mapSelectionToSource(QItemSelection()); + model.mapToSource(QModelIndex()); + model.revert(); + model.setSourceModel(0); + QCOMPARE(model.sourceModel(), (QAbstractItemModel*)0); + model.submit(); +} + +Q_DECLARE_METATYPE(QVariant) +Q_DECLARE_METATYPE(QModelIndex) +void tst_QAbstractProxyModel::data_data() +{ + QTest::addColumn("proxyIndex"); + QTest::addColumn("role"); + QTest::addColumn("data"); + QTest::newRow("null") << QModelIndex() << 0 << QVariant(); +} + +// public QVariant data(QModelIndex const& proxyIndex, int role = Qt::DisplayRole) const +void tst_QAbstractProxyModel::data() +{ + QFETCH(QModelIndex, proxyIndex); + QFETCH(int, role); + QFETCH(QVariant, data); + + SubQAbstractProxyModel model; + QCOMPARE(model.data(proxyIndex, role), data); +} + +Q_DECLARE_METATYPE(Qt::ItemFlags) +void tst_QAbstractProxyModel::flags_data() +{ + QTest::addColumn("index"); + QTest::addColumn("flags"); + QTest::newRow("null") << QModelIndex() << (Qt::ItemFlags)0; +} + +// public Qt::ItemFlags flags(QModelIndex const& index) const +void tst_QAbstractProxyModel::flags() +{ + QFETCH(QModelIndex, index); + QFETCH(Qt::ItemFlags, flags); + + SubQAbstractProxyModel model; + QCOMPARE(model.flags(index), flags); +} + +Q_DECLARE_METATYPE(Qt::Orientation) +Q_DECLARE_METATYPE(Qt::ItemDataRole) +void tst_QAbstractProxyModel::headerData_data() +{ + QTest::addColumn("section"); + QTest::addColumn("orientation"); + QTest::addColumn("role"); + QTest::addColumn("headerData"); + QTest::newRow("null") << 0 << Qt::Vertical << Qt::UserRole << QVariant(); +} + +// public QVariant headerData(int section, Qt::Orientation orientation, int role) const +void tst_QAbstractProxyModel::headerData() +{ + QFETCH(int, section); + QFETCH(Qt::Orientation, orientation); + QFETCH(Qt::ItemDataRole, role); + QFETCH(QVariant, headerData); + + SubQAbstractProxyModel model; + QCOMPARE(model.headerData(section, orientation, role), headerData); +} + +void tst_QAbstractProxyModel::itemData_data() +{ + QTest::addColumn("index"); + QTest::addColumn("count"); + + QTest::newRow("null") << QModelIndex() << 0; +} + +// public QMap itemData(QModelIndex const& index) const +void tst_QAbstractProxyModel::itemData() +{ + QFETCH(QModelIndex, index); + QFETCH(int, count); + SubQAbstractProxyModel model; + QCOMPARE(model.itemData(index).count(), count); +} + +void tst_QAbstractProxyModel::mapFromSource_data() +{ + QTest::addColumn("sourceIndex"); + QTest::addColumn("mapFromSource"); + QTest::newRow("null") << QModelIndex() << QModelIndex(); +} + +// public QModelIndex mapFromSource(QModelIndex const& sourceIndex) const +void tst_QAbstractProxyModel::mapFromSource() +{ + QFETCH(QModelIndex, sourceIndex); + QFETCH(QModelIndex, mapFromSource); + + SubQAbstractProxyModel model; + QCOMPARE(model.mapFromSource(sourceIndex), mapFromSource); +} + +Q_DECLARE_METATYPE(QItemSelection) +void tst_QAbstractProxyModel::mapSelectionFromSource_data() +{ + QTest::addColumn("selection"); + QTest::addColumn("mapSelectionFromSource"); + QTest::newRow("null") << QItemSelection() << QItemSelection(); + QTest::newRow("empty") << QItemSelection(QModelIndex(), QModelIndex()) << QItemSelection(QModelIndex(), QModelIndex()); +} + +// public QItemSelection mapSelectionFromSource(QItemSelection const& selection) const +void tst_QAbstractProxyModel::mapSelectionFromSource() +{ + QFETCH(QItemSelection, selection); + QFETCH(QItemSelection, mapSelectionFromSource); + + SubQAbstractProxyModel model; + QCOMPARE(model.mapSelectionFromSource(selection), mapSelectionFromSource); +} + +void tst_QAbstractProxyModel::mapSelectionToSource_data() +{ + QTest::addColumn("selection"); + QTest::addColumn("mapSelectionToSource"); + QTest::newRow("null") << QItemSelection() << QItemSelection(); + QTest::newRow("empty") << QItemSelection(QModelIndex(), QModelIndex()) << QItemSelection(QModelIndex(), QModelIndex()); +} + +// public QItemSelection mapSelectionToSource(QItemSelection const& selection) const +void tst_QAbstractProxyModel::mapSelectionToSource() +{ + QFETCH(QItemSelection, selection); + QFETCH(QItemSelection, mapSelectionToSource); + + SubQAbstractProxyModel model; + QCOMPARE(model.mapSelectionToSource(selection), mapSelectionToSource); +} + +void tst_QAbstractProxyModel::mapToSource_data() +{ + QTest::addColumn("proxyIndex"); + QTest::addColumn("mapToSource"); + QTest::newRow("null") << QModelIndex() << QModelIndex(); +} + +// public QModelIndex mapToSource(QModelIndex const& proxyIndex) const +void tst_QAbstractProxyModel::mapToSource() +{ + QFETCH(QModelIndex, proxyIndex); + QFETCH(QModelIndex, mapToSource); + + SubQAbstractProxyModel model; + QCOMPARE(model.mapToSource(proxyIndex), mapToSource); +} + +void tst_QAbstractProxyModel::revert_data() +{ + //QTest::addColumn("foo"); + //QTest::newRow("null") << 0; +} + +// public void revert() +void tst_QAbstractProxyModel::revert() +{ + //QFETCH(int, foo); + + SubQAbstractProxyModel model; + model.revert(); +} + +void tst_QAbstractProxyModel::setSourceModel_data() +{ + //QTest::addColumn("sourceModelCount"); + //QTest::newRow("null") << 0; +} + +// public void setSourceModel(QAbstractItemModel* sourceModel) +void tst_QAbstractProxyModel::setSourceModel() +{ + //QFETCH(int, sourceModelCount); + + SubQAbstractProxyModel model; + QStandardItemModel *sourceModel = new QStandardItemModel(&model); + model.setSourceModel(sourceModel); + QCOMPARE(model.sourceModel(), static_cast(sourceModel)); + + QStandardItemModel *sourceModel2 = new QStandardItemModel(&model); + model.setSourceModel(sourceModel2); + QCOMPARE(model.sourceModel(), static_cast(sourceModel2)); + + delete sourceModel2; + QCOMPARE(model.sourceModel(), static_cast(0)); +} + +void tst_QAbstractProxyModel::submit_data() +{ + QTest::addColumn("submit"); + QTest::newRow("null") << true; +} + +// public bool submit() +void tst_QAbstractProxyModel::submit() +{ + QFETCH(bool, submit); + + SubQAbstractProxyModel model; + QCOMPARE(model.submit(), submit); +} + +class StandardItemModelWithCustomRoleNames : public QStandardItemModel +{ +public: + enum CustomRole { + CustomRole1 = Qt::UserRole, + CustomRole2 + }; + + StandardItemModelWithCustomRoleNames() { + QHash _roleNames = roleNames(); + _roleNames.insert(CustomRole1, "custom1"); + _roleNames.insert(CustomRole2, "custom2"); + setRoleNames(_roleNames); + } +}; + +class AnotherStandardItemModelWithCustomRoleNames : public QStandardItemModel +{ + public: + enum CustomRole { + AnotherCustomRole1 = Qt::UserRole + 10, // Different to StandardItemModelWithCustomRoleNames::CustomRole1 + AnotherCustomRole2 + }; + + AnotherStandardItemModelWithCustomRoleNames() { + QHash _roleNames = roleNames(); + _roleNames.insert(AnotherCustomRole1, "another_custom1"); + _roleNames.insert(AnotherCustomRole2, "another_custom2"); + setRoleNames(_roleNames); + } +}; + +/** + Verifies that @p subSet is a subset of @p superSet. That is, all keys in @p subSet exist in @p superSet and have the same values. +*/ +static void verifySubSetOf(const QHash &superSet, const QHash &subSet) +{ + QHash::const_iterator it = subSet.constBegin(); + const QHash::const_iterator end = subSet.constEnd(); + for ( ; it != end; ++it ) { + QVERIFY(superSet.contains(it.key())); + QVERIFY(it.value() == superSet.value(it.key())); + } +} + +void tst_QAbstractProxyModel::testRoleNames() +{ + QStandardItemModel defaultModel; + StandardItemModelWithCustomRoleNames model; + QHash rootModelRoleNames = model.roleNames(); + QHash defaultModelRoleNames = defaultModel.roleNames(); + + verifySubSetOf( rootModelRoleNames, defaultModelRoleNames); + QVERIFY( rootModelRoleNames.size() == defaultModelRoleNames.size() + 2 ); + QVERIFY( rootModelRoleNames.contains(StandardItemModelWithCustomRoleNames::CustomRole1)); + QVERIFY( rootModelRoleNames.contains(StandardItemModelWithCustomRoleNames::CustomRole2)); + QVERIFY( rootModelRoleNames.value(StandardItemModelWithCustomRoleNames::CustomRole1) == "custom1" ); + QVERIFY( rootModelRoleNames.value(StandardItemModelWithCustomRoleNames::CustomRole2) == "custom2" ); + + SubQAbstractProxyModel proxy1; + proxy1.setSourceModel(&model); + QHash proxy1RoleNames = proxy1.roleNames(); + verifySubSetOf( proxy1RoleNames, defaultModelRoleNames ); + QVERIFY( proxy1RoleNames.size() == defaultModelRoleNames.size() + 2 ); + QVERIFY( proxy1RoleNames.contains(StandardItemModelWithCustomRoleNames::CustomRole1)); + QVERIFY( proxy1RoleNames.contains(StandardItemModelWithCustomRoleNames::CustomRole2)); + QVERIFY( proxy1RoleNames.value(StandardItemModelWithCustomRoleNames::CustomRole1) == "custom1" ); + QVERIFY( proxy1RoleNames.value(StandardItemModelWithCustomRoleNames::CustomRole2) == "custom2" ); + + SubQAbstractProxyModel proxy2; + proxy2.setSourceModel(&proxy1); + QHash proxy2RoleNames = proxy2.roleNames(); + verifySubSetOf( proxy2RoleNames, defaultModelRoleNames ); + QVERIFY( proxy2RoleNames.size() == defaultModelRoleNames.size() + 2 ); + QVERIFY( proxy2RoleNames.contains(StandardItemModelWithCustomRoleNames::CustomRole1)); + QVERIFY( proxy2RoleNames.contains(StandardItemModelWithCustomRoleNames::CustomRole2)); + QVERIFY( proxy2RoleNames.value(StandardItemModelWithCustomRoleNames::CustomRole1) == "custom1" ); + QVERIFY( proxy2RoleNames.value(StandardItemModelWithCustomRoleNames::CustomRole2) == "custom2" ); + +} + +QTEST_MAIN(tst_QAbstractProxyModel) +#include "tst_qabstractproxymodel.moc" + diff --git a/tests/auto/corelib/itemmodels/qidentityproxymodel/qidentityproxymodel.pro b/tests/auto/corelib/itemmodels/qidentityproxymodel/qidentityproxymodel.pro new file mode 100644 index 0000000000..4fb8c98fe7 --- /dev/null +++ b/tests/auto/corelib/itemmodels/qidentityproxymodel/qidentityproxymodel.pro @@ -0,0 +1,8 @@ +CONFIG += testcase +TARGET = tst_qidentityproxymodel + +mtdir = ../../../other/modeltest +INCLUDEPATH += $$PWD/$${mtdir} +QT += widgets testlib +SOURCES += tst_qidentityproxymodel.cpp $${mtdir}/dynamictreemodel.cpp $${mtdir}/modeltest.cpp +HEADERS += $${mtdir}/dynamictreemodel.h $${mtdir}/modeltest.h diff --git a/tests/auto/corelib/itemmodels/qidentityproxymodel/tst_qidentityproxymodel.cpp b/tests/auto/corelib/itemmodels/qidentityproxymodel/tst_qidentityproxymodel.cpp new file mode 100644 index 0000000000..86ff00f9d4 --- /dev/null +++ b/tests/auto/corelib/itemmodels/qidentityproxymodel/tst_qidentityproxymodel.cpp @@ -0,0 +1,330 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Klarälvdalens Datakonsult AB, a KDAB Group company, info@kdab.com, author Stephen Kelly +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtGui module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + + +#include +#include +#include +#include + +#include "dynamictreemodel.h" +#include "qidentityproxymodel.h" + +Q_DECLARE_METATYPE(QModelIndex) + +class tst_QIdentityProxyModel : public QObject +{ + Q_OBJECT + +public: + + tst_QIdentityProxyModel(); + virtual ~tst_QIdentityProxyModel(); + +public slots: + void initTestCase(); + void cleanupTestCase(); + void init(); + void cleanup(); + +private slots: + void insertRows(); + void removeRows(); + void moveRows(); + void reset(); + +protected: + void verifyIdentity(QAbstractItemModel *model, const QModelIndex &parent = QModelIndex()); + +private: + QStandardItemModel *m_model; + QIdentityProxyModel *m_proxy; +}; + +tst_QIdentityProxyModel::tst_QIdentityProxyModel() + : m_model(0), m_proxy(0) +{ + +} + +tst_QIdentityProxyModel::~tst_QIdentityProxyModel() +{ + +} + +void tst_QIdentityProxyModel::initTestCase() +{ + qRegisterMetaType("QModelIndex"); + + m_model = new QStandardItemModel(0, 1); + m_proxy = new QIdentityProxyModel(); +} + +void tst_QIdentityProxyModel::cleanupTestCase() +{ + delete m_proxy; + delete m_model; +} + +void tst_QIdentityProxyModel::init() +{ +} + +void tst_QIdentityProxyModel::cleanup() +{ + m_model->clear(); + m_model->insertColumns(0, 1); +} + +void tst_QIdentityProxyModel::verifyIdentity(QAbstractItemModel *model, const QModelIndex &parent) +{ + const int rows = model->rowCount(parent); + const int columns = model->columnCount(parent); + const QModelIndex proxyParent = m_proxy->mapFromSource(parent); + + QVERIFY(m_proxy->mapToSource(proxyParent) == parent); + QVERIFY(rows == m_proxy->rowCount(proxyParent)); + QVERIFY(columns == m_proxy->columnCount(proxyParent)); + + for (int row = 0; row < rows; ++row) { + for (int column = 0; column < columns; ++column) { + const QModelIndex idx = model->index(row, column, parent); + const QModelIndex proxyIdx = m_proxy->mapFromSource(idx); + QVERIFY(proxyIdx.model() == m_proxy); + QVERIFY(m_proxy->mapToSource(proxyIdx) == idx); + QVERIFY(proxyIdx.isValid()); + QVERIFY(proxyIdx.row() == row); + QVERIFY(proxyIdx.column() == column); + QVERIFY(proxyIdx.parent() == proxyParent); + QVERIFY(proxyIdx.data() == idx.data()); + QVERIFY(proxyIdx.flags() == idx.flags()); + const int childCount = m_proxy->rowCount(proxyIdx); + const bool hasChildren = m_proxy->hasChildren(proxyIdx); + QVERIFY(model->hasChildren(idx) == hasChildren); + QVERIFY((childCount > 0) == hasChildren); + + if (hasChildren) + verifyIdentity(model, idx); + } + } +} + +/* + tests +*/ + +void tst_QIdentityProxyModel::insertRows() +{ + QStandardItem *parentItem = m_model->invisibleRootItem(); + for (int i = 0; i < 4; ++i) { + QStandardItem *item = new QStandardItem(QString("item %0").arg(i)); + parentItem->appendRow(item); + parentItem = item; + } + + m_proxy->setSourceModel(m_model); + + verifyIdentity(m_model); + + QSignalSpy modelBeforeSpy(m_model, SIGNAL(rowsAboutToBeInserted(QModelIndex,int,int))); + QSignalSpy modelAfterSpy(m_model, SIGNAL(rowsInserted(QModelIndex,int,int))); + QSignalSpy proxyBeforeSpy(m_proxy, SIGNAL(rowsAboutToBeInserted(QModelIndex,int,int))); + QSignalSpy proxyAfterSpy(m_proxy, SIGNAL(rowsInserted(QModelIndex,int,int))); + + QStandardItem *item = new QStandardItem(QString("new item")); + parentItem->appendRow(item); + + QVERIFY(modelBeforeSpy.size() == 1 && 1 == proxyBeforeSpy.size()); + QVERIFY(modelAfterSpy.size() == 1 && 1 == proxyAfterSpy.size()); + + QVERIFY(modelBeforeSpy.first().first().value() == m_proxy->mapToSource(proxyBeforeSpy.first().first().value())); + QVERIFY(modelBeforeSpy.first().at(1) == proxyBeforeSpy.first().at(1)); + QVERIFY(modelBeforeSpy.first().at(2) == proxyBeforeSpy.first().at(2)); + + QVERIFY(modelAfterSpy.first().first().value() == m_proxy->mapToSource(proxyAfterSpy.first().first().value())); + QVERIFY(modelAfterSpy.first().at(1) == proxyAfterSpy.first().at(1)); + QVERIFY(modelAfterSpy.first().at(2) == proxyAfterSpy.first().at(2)); + + verifyIdentity(m_model); + +} + +void tst_QIdentityProxyModel::removeRows() +{ + QStandardItem *parentItem = m_model->invisibleRootItem(); + for (int i = 0; i < 4; ++i) { + QStandardItem *item = new QStandardItem(QString("item %0").arg(i)); + parentItem->appendRow(item); + parentItem = item; + } + + m_proxy->setSourceModel(m_model); + + verifyIdentity(m_model); + + QSignalSpy modelBeforeSpy(m_model, SIGNAL(rowsAboutToBeRemoved(QModelIndex,int,int))); + QSignalSpy modelAfterSpy(m_model, SIGNAL(rowsRemoved(QModelIndex,int,int))); + QSignalSpy proxyBeforeSpy(m_proxy, SIGNAL(rowsAboutToBeRemoved(QModelIndex,int,int))); + QSignalSpy proxyAfterSpy(m_proxy, SIGNAL(rowsRemoved(QModelIndex,int,int))); + + const QModelIndex topLevel = m_model->index(0, 0, QModelIndex()); + const QModelIndex secondLevel = m_model->index(0, 0, topLevel); + const QModelIndex thirdLevel = m_model->index(0, 0, secondLevel); + + QVERIFY(thirdLevel.isValid()); + + m_model->removeRow(0, secondLevel); + + QVERIFY(modelBeforeSpy.size() == 1 && 1 == proxyBeforeSpy.size()); + QVERIFY(modelAfterSpy.size() == 1 && 1 == proxyAfterSpy.size()); + + QVERIFY(modelBeforeSpy.first().first().value() == m_proxy->mapToSource(proxyBeforeSpy.first().first().value())); + QVERIFY(modelBeforeSpy.first().at(1) == proxyBeforeSpy.first().at(1)); + QVERIFY(modelBeforeSpy.first().at(2) == proxyBeforeSpy.first().at(2)); + + QVERIFY(modelAfterSpy.first().first().value() == m_proxy->mapToSource(proxyAfterSpy.first().first().value())); + QVERIFY(modelAfterSpy.first().at(1) == proxyAfterSpy.first().at(1)); + QVERIFY(modelAfterSpy.first().at(2) == proxyAfterSpy.first().at(2)); + + verifyIdentity(m_model); +} + +void tst_QIdentityProxyModel::moveRows() +{ + DynamicTreeModel model; + + { + ModelInsertCommand insertCommand(&model); + insertCommand.setStartRow(0); + insertCommand.setEndRow(9); + insertCommand.doCommand(); + } + { + ModelInsertCommand insertCommand(&model); + insertCommand.setAncestorRowNumbers(QList() << 5); + insertCommand.setStartRow(0); + insertCommand.setEndRow(9); + insertCommand.doCommand(); + } + + m_proxy->setSourceModel(&model); + + verifyIdentity(&model); + + QSignalSpy modelBeforeSpy(&model, SIGNAL(rowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int))); + QSignalSpy modelAfterSpy(&model, SIGNAL(rowsMoved(QModelIndex,int,int,QModelIndex,int))); + QSignalSpy proxyBeforeSpy(m_proxy, SIGNAL(rowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int))); + QSignalSpy proxyAfterSpy(m_proxy, SIGNAL(rowsMoved(QModelIndex,int,int,QModelIndex,int))); + + { + ModelMoveCommand moveCommand(&model, 0); + moveCommand.setAncestorRowNumbers(QList() << 5); + moveCommand.setStartRow(3); + moveCommand.setEndRow(4); + moveCommand.setDestRow(1); + moveCommand.doCommand(); + } + + QVERIFY(modelBeforeSpy.size() == 1 && 1 == proxyBeforeSpy.size()); + QVERIFY(modelAfterSpy.size() == 1 && 1 == proxyAfterSpy.size()); + + QVERIFY(modelBeforeSpy.first().first().value() == m_proxy->mapToSource(proxyBeforeSpy.first().first().value())); + QVERIFY(modelBeforeSpy.first().at(1) == proxyBeforeSpy.first().at(1)); + QVERIFY(modelBeforeSpy.first().at(2) == proxyBeforeSpy.first().at(2)); + QVERIFY(modelBeforeSpy.first().at(3).value() == m_proxy->mapToSource(proxyBeforeSpy.first().at(3).value())); + QVERIFY(modelBeforeSpy.first().at(4) == proxyBeforeSpy.first().at(4)); + + QVERIFY(modelAfterSpy.first().first().value() == m_proxy->mapToSource(proxyAfterSpy.first().first().value())); + QVERIFY(modelAfterSpy.first().at(1) == proxyAfterSpy.first().at(1)); + QVERIFY(modelAfterSpy.first().at(2) == proxyAfterSpy.first().at(2)); + QVERIFY(modelAfterSpy.first().at(3).value() == m_proxy->mapToSource(proxyAfterSpy.first().at(3).value())); + QVERIFY(modelAfterSpy.first().at(4) == proxyAfterSpy.first().at(4)); + + verifyIdentity(&model); + + m_proxy->setSourceModel(0); +} + +void tst_QIdentityProxyModel::reset() +{ + DynamicTreeModel model; + + { + ModelInsertCommand insertCommand(&model); + insertCommand.setStartRow(0); + insertCommand.setEndRow(9); + insertCommand.doCommand(); + } + { + ModelInsertCommand insertCommand(&model); + insertCommand.setAncestorRowNumbers(QList() << 5); + insertCommand.setStartRow(0); + insertCommand.setEndRow(9); + insertCommand.doCommand(); + } + + m_proxy->setSourceModel(&model); + + verifyIdentity(&model); + + QSignalSpy modelBeforeSpy(&model, SIGNAL(modelAboutToBeReset())); + QSignalSpy modelAfterSpy(&model, SIGNAL(modelReset())); + QSignalSpy proxyBeforeSpy(m_proxy, SIGNAL(modelAboutToBeReset())); + QSignalSpy proxyAfterSpy(m_proxy, SIGNAL(modelReset())); + + { + ModelResetCommandFixed resetCommand(&model, 0); + resetCommand.setAncestorRowNumbers(QList() << 5); + resetCommand.setStartRow(3); + resetCommand.setEndRow(4); + resetCommand.setDestRow(1); + resetCommand.doCommand(); + } + + QVERIFY(modelBeforeSpy.size() == 1 && 1 == proxyBeforeSpy.size()); + QVERIFY(modelAfterSpy.size() == 1 && 1 == proxyAfterSpy.size()); + + verifyIdentity(&model); + m_proxy->setSourceModel(0); +} + +QTEST_MAIN(tst_QIdentityProxyModel) +#include "tst_qidentityproxymodel.moc" diff --git a/tests/auto/corelib/itemmodels/qitemselectionmodel/.gitignore b/tests/auto/corelib/itemmodels/qitemselectionmodel/.gitignore new file mode 100644 index 0000000000..aa543a200a --- /dev/null +++ b/tests/auto/corelib/itemmodels/qitemselectionmodel/.gitignore @@ -0,0 +1 @@ +tst_qitemselectionmodel diff --git a/tests/auto/corelib/itemmodels/qitemselectionmodel/qitemselectionmodel.pro b/tests/auto/corelib/itemmodels/qitemselectionmodel/qitemselectionmodel.pro new file mode 100644 index 0000000000..a4c7ba3786 --- /dev/null +++ b/tests/auto/corelib/itemmodels/qitemselectionmodel/qitemselectionmodel.pro @@ -0,0 +1,6 @@ +CONFIG += testcase +TARGET = tst_qitemselectionmodel +QT += widgets testlib +SOURCES += tst_qitemselectionmodel.cpp + + diff --git a/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp b/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp new file mode 100644 index 0000000000..2097cb31ee --- /dev/null +++ b/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp @@ -0,0 +1,2752 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + + +#include + +#include +#include + +class tst_QItemSelectionModel : public QObject +{ + Q_OBJECT + +public: + tst_QItemSelectionModel(); + virtual ~tst_QItemSelectionModel(); + + +public slots: + void initTestCase(); + void cleanupTestCase(); + void init(); +private slots: + void clear_data(); + void clear(); + void clearAndSelect(); + void toggleSelection(); + void select_data(); + void select(); + void persistentselections_data(); + void persistentselections(); + void resetModel(); + void removeRows_data(); + void removeRows(); + void removeColumns_data(); + void removeColumns(); + void modelLayoutChanged_data(); + void modelLayoutChanged(); + void selectedRows_data(); + void selectedRows(); + void selectedColumns_data(); + void selectedColumns(); + void setCurrentIndex(); + void splitOnInsert(); + void task196285_rowIntersectsSelection(); + void unselectable(); + void task220420_selectedIndexes(); + void task240734_layoutChanged(); + void merge_data(); + void merge(); + void task119433_isRowSelected(); + void task252069_rowIntersectsSelection(); + void task232634_childrenDeselectionSignal(); + void task260134_layoutChangedWithAllSelected(); + void QTBUG5671_layoutChangedWithAllSelected(); + void QTBUG2804_layoutChangedTreeSelection(); + void deselectRemovedMiddleRange(); + void rangeOperatorLessThan_data(); + void rangeOperatorLessThan(); + + void testDifferentModels(); + + void testValidRangesInSelectionsAfterReset(); + void testChainedSelectionClear(); + void testClearCurrentIndex(); + +private: + QAbstractItemModel *model; + QItemSelectionModel *selection; +}; + +QDataStream &operator<<(QDataStream &, const QModelIndex &); +QDataStream &operator>>(QDataStream &, QModelIndex &); +QDataStream &operator<<(QDataStream &, const QModelIndexList &); +QDataStream &operator>>(QDataStream &, QModelIndexList &); + +typedef QList IntList; +typedef QPair IntPair; +typedef QList PairList; + + +Q_DECLARE_METATYPE(PairList) +Q_DECLARE_METATYPE(QModelIndex) +Q_DECLARE_METATYPE(QModelIndexList) +Q_DECLARE_METATYPE(IntList) +Q_DECLARE_METATYPE(QItemSelection) + +class QStreamHelper: public QAbstractItemModel +{ +public: + QStreamHelper() {} + static QModelIndex create(int row = -1, int column = -1, void *data = 0) + { + QStreamHelper helper; + return helper.QAbstractItemModel::createIndex(row, column, data); + } + + QModelIndex index(int, int, const QModelIndex&) const + { return QModelIndex(); } + QModelIndex parent(const QModelIndex&) const + { return QModelIndex(); } + int rowCount(const QModelIndex & = QModelIndex()) const + { return 0; } + int columnCount(const QModelIndex & = QModelIndex()) const + { return 0; } + QVariant data(const QModelIndex &, int = Qt::DisplayRole) const + { return QVariant(); } + bool hasChildren(const QModelIndex &) const + { return false; } +}; + +QDataStream &operator<<(QDataStream &s, const QModelIndex &input) +{ + s << input.row() + << input.column() + << reinterpret_cast(input.internalPointer()); + return s; +} + +QDataStream &operator>>(QDataStream &s, QModelIndex &output) +{ + int r, c; + qlonglong ptr; + s >> r; + s >> c; + s >> ptr; + output = QStreamHelper::create(r, c, reinterpret_cast(ptr)); + return s; +} + +QDataStream &operator<<(QDataStream &s, const QModelIndexList &input) +{ + s << input.count(); + for (int i=0; i>(QDataStream &s, QModelIndexList &output) +{ + QModelIndex tmpIndex; + int count; + s >> count; + for (int i=0; i> tmpIndex; + output << tmpIndex; + } + return s; +} + +tst_QItemSelectionModel::tst_QItemSelectionModel() : model(0), selection(0) +{ +} + +tst_QItemSelectionModel::~tst_QItemSelectionModel() +{ +} + +/* + This test usually uses a model with a 5x5 table + ------------------------------------------- + | 0,0 | 0,1 | 0,2 | 0,3 | 0,4 | + ------------------------------------------- + | 1,0 | 1,1 | 1,2 | 1,3 | 1,4 | + ------------------------------------------- + | 2,0 | 2,1 | 2,2 | 2,3 | 2,4 | + ------------------------------------------- + | 3,0 | 3,1 | 3,2 | 3,3 | 3,4 | + ------------------------------------------- + | 4,0 | 4,1 | 4,2 | 4,3 | 4,4 | + ------------------------------------------- + + ...that for each row has a children in a new 5x5 table ad infinitum. + +*/ +void tst_QItemSelectionModel::initTestCase() +{ + qRegisterMetaType("QItemSelection"); + + model = new QStandardItemModel(5, 5); + QModelIndex parent = model->index(0, 0, QModelIndex()); + model->insertRows(0, 5, parent); + model->insertColumns(0, 5, parent); + selection = new QItemSelectionModel(model); +} + +void tst_QItemSelectionModel::cleanupTestCase() +{ + delete selection; + delete model; +} + +void tst_QItemSelectionModel::init() +{ + selection->clear(); + while (model->rowCount(QModelIndex()) > 5) + model->removeRow(0, QModelIndex()); + while (model->rowCount(QModelIndex()) < 5) + model->insertRow(0, QModelIndex()); +} + +void tst_QItemSelectionModel::clear_data() +{ + QTest::addColumn("indexList"); + QTest::addColumn("commandList"); + { + QModelIndexList index; + IntList command; + index << model->index(0, 0, QModelIndex()); + command << (QItemSelectionModel::Select | QItemSelectionModel::Rows); + index << model->index(1, 0, QModelIndex()); + command << (QItemSelectionModel::Select | QItemSelectionModel::Rows); + QTest::newRow("(0, 0) and (1, 0): Select|Rows") + << index + << command; + } + { + QModelIndexList index; + IntList command; + index << model->index(0, 0, QModelIndex()); + command << (QItemSelectionModel::Select | QItemSelectionModel::Columns); + index << model->index(0, 1, QModelIndex()); + command << (QItemSelectionModel::Select | QItemSelectionModel::Columns); + QTest::newRow("(0, 0) and (1, 0): Select|Columns") + << index + << command; + } + { + QModelIndexList index; + IntList command; + index << model->index(0, 0, QModelIndex()); + command << QItemSelectionModel::Select; + index << model->index(1, 1, QModelIndex()); + command << QItemSelectionModel::Select; + index << model->index(2, 2, QModelIndex()); + command << QItemSelectionModel::SelectCurrent; + QTest::newRow("(0, 0), (1, 1) and (2, 2): Select, Select, SelectCurrent") + << index + << command; + } + { + QModelIndexList index; + IntList command; + index << model->index(0, 0, QModelIndex()); + command << QItemSelectionModel::Select; + index << model->index(1, 1, QModelIndex()); + command << QItemSelectionModel::Select; + index << model->index(1, 1, QModelIndex()); + command << QItemSelectionModel::Toggle; + QTest::newRow("(0, 0), (1, 1) and (1, 1): Select, Select, Toggle") + << index + << command; + } + { + QModelIndexList index; + IntList command; + index << model->index(0, 0, model->index(0, 0, QModelIndex())); + command << (QItemSelectionModel::Select | QItemSelectionModel::Rows); + QTest::newRow("child (0, 0) of (0, 0): Select|Rows") + << index + << command; + } +} + +void tst_QItemSelectionModel::clear() +{ + QFETCH(QModelIndexList, indexList); + QFETCH(IntList, commandList); + + // do selections + for (int i=0; iselect(indexList.at(i), (QItemSelectionModel::SelectionFlags)commandList.at(i)); + } + // test that we have selected items + QVERIFY(!selection->selectedIndexes().isEmpty()); + selection->clear(); + // test that they were all cleared + QVERIFY(selection->selectedIndexes().isEmpty()); +} + +void tst_QItemSelectionModel::clearAndSelect() +{ + // populate selectionmodel + selection->select(model->index(1, 1, QModelIndex()), QItemSelectionModel::Select); + QCOMPARE(selection->selectedIndexes().count(), 1); + QVERIFY(selection->hasSelection()); + + // ClearAndSelect with empty selection + QItemSelection emptySelection; + selection->select(emptySelection, QItemSelectionModel::ClearAndSelect); + + // verify the selectionmodel is empty + QVERIFY(selection->selectedIndexes().isEmpty()); + QVERIFY(selection->hasSelection()==false); +} + +void tst_QItemSelectionModel::toggleSelection() +{ + //test the toggle selection and checks whether selectedIndex + //and hasSelection returns the correct value + + selection->clearSelection(); + QCOMPARE(selection->selectedIndexes().count(), 0); + QVERIFY(selection->hasSelection()==false); + + QModelIndex index=model->index(1, 1, QModelIndex()); + // populate selectionmodel + selection->select(index, QItemSelectionModel::Toggle); + QCOMPARE(selection->selectedIndexes().count(), 1); + QVERIFY(selection->hasSelection()==true); + + selection->select(index, QItemSelectionModel::Toggle); + QCOMPARE(selection->selectedIndexes().count(), 0); + QVERIFY(selection->hasSelection()==false); + + // populate selectionmodel with rows + selection->select(index, QItemSelectionModel::Toggle | QItemSelectionModel::Rows); + QCOMPARE(selection->selectedIndexes().count(), model->columnCount()); + QVERIFY(selection->hasSelection()==true); + + selection->select(index, QItemSelectionModel::Toggle | QItemSelectionModel::Rows); + QCOMPARE(selection->selectedIndexes().count(), 0); + QVERIFY(selection->hasSelection()==false); + +} + + +void tst_QItemSelectionModel::select_data() +{ + QTest::addColumn("indexList"); + QTest::addColumn("useRanges"); + QTest::addColumn("commandList"); + QTest::addColumn("expectedList"); + + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 0, QModelIndex()); + command << QItemSelectionModel::Select; + expected << model->index(0, 0, QModelIndex()); + QTest::newRow("(0, 0): Select") + << index + << false + << command + << expected; + } + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 0, model->index(0, 0, QModelIndex())); + command << QItemSelectionModel::Select; + expected << model->index(0, 0, model->index(0, 0, QModelIndex())); + QTest::newRow("child (0, 0) of (0, 0): Select") + << index + << false + << command + << expected; + } + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 0, QModelIndex()); + command << QItemSelectionModel::Deselect; + QTest::newRow("(0, 0): Deselect") + << index + << false + << command + << expected; + } + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 0, QModelIndex()); + command << QItemSelectionModel::Toggle; + expected << model->index(0, 0, QModelIndex()); + QTest::newRow("(0, 0): Toggle") + << index + << false + << command + << expected; + } + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 0, QModelIndex()); + command << QItemSelectionModel::Select; + index << model->index(0, 0, QModelIndex()); + command << QItemSelectionModel::Toggle; + QTest::newRow("(0, 0) and (0, 0): Select and Toggle") + << index + << false + << command + << expected; + } + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 0, QModelIndex()); + command << QItemSelectionModel::Select; + index << model->index(0, 0, QModelIndex()); + command << QItemSelectionModel::Deselect; + QTest::newRow("(0, 0) and (0, 0): Select and Deselect") + << index + << false + << command + << expected; + } + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 0, QModelIndex()); + command << QItemSelectionModel::Select; + index << model->index(0, 0, model->index(0, 0, QModelIndex())); + command << QItemSelectionModel::ClearAndSelect; + expected << model->index(0, 0, model->index(0, 0, QModelIndex())); + QTest::newRow("(0, 0) and child (0, 0) of (0, 0): Select and ClearAndSelect") + << index + << false + << command + << expected; + } + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 0, QModelIndex()); + index << model->index(4, 0, QModelIndex()); + command << QItemSelectionModel::Select; + index << model->index(0, 1, QModelIndex()); + index << model->index(4, 1, QModelIndex()); + command << QItemSelectionModel::Select; + index << model->index(0, 0, QModelIndex()); + index << model->index(4, 1, QModelIndex()); + command << QItemSelectionModel::Deselect; + QTest::newRow("(0, 0 to 4, 0) and (0, 1 to 4, 1) and (0, 0 to 4, 1): Select and Select and Deselect") + << index + << true + << command + << expected; + } + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 0, QModelIndex()); + command << QItemSelectionModel::Select; + index << model->index(4, 4, QModelIndex()); + command << QItemSelectionModel::Select; + expected << model->index(0, 0, QModelIndex()) << model->index(4, 4, QModelIndex()); + QTest::newRow("(0, 0) and (4, 4): Select") + << index + << false + << command + << expected; + } + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 0, QModelIndex()); + command << QItemSelectionModel::Select; + index << model->index(4, 4, QModelIndex()); + command << QItemSelectionModel::ClearAndSelect; + expected << model->index(4, 4, QModelIndex()); + QTest::newRow("(0, 0) and (4, 4): Select and ClearAndSelect") + << index + << false + << command + << expected; + } + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 0, QModelIndex()); + command << (QItemSelectionModel::Select | QItemSelectionModel::Rows); + index << model->index(4, 4, QModelIndex()); + command << (QItemSelectionModel::Select | QItemSelectionModel::Rows); + expected << model->index(0, 0, QModelIndex()) + << model->index(0, 1, QModelIndex()) + << model->index(0, 2, QModelIndex()) + << model->index(0, 3, QModelIndex()) + << model->index(0, 4, QModelIndex()) + << model->index(4, 0, QModelIndex()) + << model->index(4, 1, QModelIndex()) + << model->index(4, 2, QModelIndex()) + << model->index(4, 3, QModelIndex()) + << model->index(4, 4, QModelIndex()); + QTest::newRow("(0, 0) and (4, 4): Select|Rows") + << index + << false + << command + << expected; + } + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 0, model->index(0, 0, QModelIndex())); + command << (QItemSelectionModel::Select | QItemSelectionModel::Rows); + index << model->index(4, 4, model->index(0, 0, QModelIndex())); + command << (QItemSelectionModel::Select | QItemSelectionModel::Rows); + QModelIndex parent = model->index(0, 0, QModelIndex()); + expected << model->index(0, 0, parent) + << model->index(0, 1, parent) + << model->index(0, 2, parent) + << model->index(0, 3, parent) + << model->index(0, 4, parent) + << model->index(4, 0, parent) + << model->index(4, 1, parent) + << model->index(4, 2, parent) + << model->index(4, 3, parent) + << model->index(4, 4, parent); + QTest::newRow("child (0, 0) and (4, 4) of (0, 0): Select|Rows") + << index + << false + << command + << expected; + } + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 0, QModelIndex()); + command << (QItemSelectionModel::Select | QItemSelectionModel::Columns); + index << model->index(4, 4, QModelIndex()); + command << (QItemSelectionModel::Select | QItemSelectionModel::Columns); + expected << model->index(0, 0, QModelIndex()) + << model->index(1, 0, QModelIndex()) + << model->index(2, 0, QModelIndex()) + << model->index(3, 0, QModelIndex()) + << model->index(4, 0, QModelIndex()) + << model->index(0, 4, QModelIndex()) + << model->index(1, 4, QModelIndex()) + << model->index(2, 4, QModelIndex()) + << model->index(3, 4, QModelIndex()) + << model->index(4, 4, QModelIndex()); + QTest::newRow("(0, 0) and (4, 4): Select|Columns") + << index + << false + << command + << expected; + } + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 0, model->index(0, 0, QModelIndex())); + command << (QItemSelectionModel::Select | QItemSelectionModel::Columns); + index << model->index(4, 4, model->index(0, 0, QModelIndex())); + command << (QItemSelectionModel::Select | QItemSelectionModel::Columns); + expected << model->index(0, 0, model->index(0, 0, QModelIndex())) + << model->index(1, 0, model->index(0, 0, QModelIndex())) + << model->index(2, 0, model->index(0, 0, QModelIndex())) + << model->index(3, 0, model->index(0, 0, QModelIndex())) + << model->index(4, 0, model->index(0, 0, QModelIndex())) + << model->index(0, 4, model->index(0, 0, QModelIndex())) + << model->index(1, 4, model->index(0, 0, QModelIndex())) + << model->index(2, 4, model->index(0, 0, QModelIndex())) + << model->index(3, 4, model->index(0, 0, QModelIndex())) + << model->index(4, 4, model->index(0, 0, QModelIndex())); + QTest::newRow("child (0, 0) and (4, 4) of (0, 0): Select|Columns") + << index + << false + << command + << expected; + } + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 0, QModelIndex()); + index << model->index(4, 0, QModelIndex()); + command << QItemSelectionModel::Select; + expected << model->index(0, 0, QModelIndex()) + << model->index(1, 0, QModelIndex()) + << model->index(2, 0, QModelIndex()) + << model->index(3, 0, QModelIndex()) + << model->index(4, 0, QModelIndex()); + QTest::newRow("(0, 0 to 4, 0): Select") + << index + << true + << command + << expected; + } + /* ### FAILS + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 0, QModelIndex()); + index << model->index(0, 0, model->index(0, 0, QModelIndex())); + command << QItemSelectionModel::Select; + QTest::newRow("(0, 0 to child 0, 0): Select") + << index + << true + << command + << expected; + } + */ + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 0, model->index(0, 0, QModelIndex())); + index << model->index(0, 0, model->index(1, 0, QModelIndex())); + command << QItemSelectionModel::Select; + QTest::newRow("child (0, 0) of (0, 0) to child (0, 0) of (1, 0): Select") + << index + << true + << command + << expected; + } + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 0, QModelIndex()); + index << model->index(4, 4, QModelIndex()); + command << QItemSelectionModel::Select; + expected << model->index(0, 0, QModelIndex()) + << model->index(0, 1, QModelIndex()) + << model->index(0, 2, QModelIndex()) + << model->index(0, 3, QModelIndex()) + << model->index(0, 4, QModelIndex()) + << model->index(1, 0, QModelIndex()) + << model->index(1, 1, QModelIndex()) + << model->index(1, 2, QModelIndex()) + << model->index(1, 3, QModelIndex()) + << model->index(1, 4, QModelIndex()) + << model->index(2, 0, QModelIndex()) + << model->index(2, 1, QModelIndex()) + << model->index(2, 2, QModelIndex()) + << model->index(2, 3, QModelIndex()) + << model->index(2, 4, QModelIndex()) + << model->index(3, 0, QModelIndex()) + << model->index(3, 1, QModelIndex()) + << model->index(3, 2, QModelIndex()) + << model->index(3, 3, QModelIndex()) + << model->index(3, 4, QModelIndex()) + << model->index(4, 0, QModelIndex()) + << model->index(4, 1, QModelIndex()) + << model->index(4, 2, QModelIndex()) + << model->index(4, 3, QModelIndex()) + << model->index(4, 4, QModelIndex()); + QTest::newRow("(0, 0 to 4, 4): Select") + << index + << true + << command + << expected; + } + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 0, QModelIndex()); + index << model->index(4, 0, QModelIndex()); + command << (QItemSelectionModel::Select | QItemSelectionModel::Rows); + expected << model->index(0, 0, QModelIndex()) + << model->index(0, 1, QModelIndex()) + << model->index(0, 2, QModelIndex()) + << model->index(0, 3, QModelIndex()) + << model->index(0, 4, QModelIndex()) + << model->index(1, 0, QModelIndex()) + << model->index(1, 1, QModelIndex()) + << model->index(1, 2, QModelIndex()) + << model->index(1, 3, QModelIndex()) + << model->index(1, 4, QModelIndex()) + << model->index(2, 0, QModelIndex()) + << model->index(2, 1, QModelIndex()) + << model->index(2, 2, QModelIndex()) + << model->index(2, 3, QModelIndex()) + << model->index(2, 4, QModelIndex()) + << model->index(3, 0, QModelIndex()) + << model->index(3, 1, QModelIndex()) + << model->index(3, 2, QModelIndex()) + << model->index(3, 3, QModelIndex()) + << model->index(3, 4, QModelIndex()) + << model->index(4, 0, QModelIndex()) + << model->index(4, 1, QModelIndex()) + << model->index(4, 2, QModelIndex()) + << model->index(4, 3, QModelIndex()) + << model->index(4, 4, QModelIndex()); + QTest::newRow("(0, 0 to 4, 0): Select|Rows") + << index + << true + << command + << expected; + } + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 0, QModelIndex()); + index << model->index(0, 4, QModelIndex()); + command << (QItemSelectionModel::Select | QItemSelectionModel::Columns); + expected << model->index(0, 0, QModelIndex()) + << model->index(0, 1, QModelIndex()) + << model->index(0, 2, QModelIndex()) + << model->index(0, 3, QModelIndex()) + << model->index(0, 4, QModelIndex()) + << model->index(1, 0, QModelIndex()) + << model->index(1, 1, QModelIndex()) + << model->index(1, 2, QModelIndex()) + << model->index(1, 3, QModelIndex()) + << model->index(1, 4, QModelIndex()) + << model->index(2, 0, QModelIndex()) + << model->index(2, 1, QModelIndex()) + << model->index(2, 2, QModelIndex()) + << model->index(2, 3, QModelIndex()) + << model->index(2, 4, QModelIndex()) + << model->index(3, 0, QModelIndex()) + << model->index(3, 1, QModelIndex()) + << model->index(3, 2, QModelIndex()) + << model->index(3, 3, QModelIndex()) + << model->index(3, 4, QModelIndex()) + << model->index(4, 0, QModelIndex()) + << model->index(4, 1, QModelIndex()) + << model->index(4, 2, QModelIndex()) + << model->index(4, 3, QModelIndex()) + << model->index(4, 4, QModelIndex()); + QTest::newRow("(0, 0 to 0, 4): Select|Columns") + << index + << true + << command + << expected; + } + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 0, QModelIndex()); + index << model->index(4, 4, QModelIndex()); + command << (QItemSelectionModel::Select | QItemSelectionModel::Rows); + expected << model->index(0, 0, QModelIndex()) + << model->index(0, 1, QModelIndex()) + << model->index(0, 2, QModelIndex()) + << model->index(0, 3, QModelIndex()) + << model->index(0, 4, QModelIndex()) + << model->index(1, 0, QModelIndex()) + << model->index(1, 1, QModelIndex()) + << model->index(1, 2, QModelIndex()) + << model->index(1, 3, QModelIndex()) + << model->index(1, 4, QModelIndex()) + << model->index(2, 0, QModelIndex()) + << model->index(2, 1, QModelIndex()) + << model->index(2, 2, QModelIndex()) + << model->index(2, 3, QModelIndex()) + << model->index(2, 4, QModelIndex()) + << model->index(3, 0, QModelIndex()) + << model->index(3, 1, QModelIndex()) + << model->index(3, 2, QModelIndex()) + << model->index(3, 3, QModelIndex()) + << model->index(3, 4, QModelIndex()) + << model->index(4, 0, QModelIndex()) + << model->index(4, 1, QModelIndex()) + << model->index(4, 2, QModelIndex()) + << model->index(4, 3, QModelIndex()) + << model->index(4, 4, QModelIndex()); + QTest::newRow("(0, 0 to 4, 4): Select|Rows") + << index + << true + << command + << expected; + } + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 0, QModelIndex()); + index << model->index(4, 4, QModelIndex()); + command << (QItemSelectionModel::Select | QItemSelectionModel::Columns); + expected << model->index(0, 0, QModelIndex()) + << model->index(0, 1, QModelIndex()) + << model->index(0, 2, QModelIndex()) + << model->index(0, 3, QModelIndex()) + << model->index(0, 4, QModelIndex()) + << model->index(1, 0, QModelIndex()) + << model->index(1, 1, QModelIndex()) + << model->index(1, 2, QModelIndex()) + << model->index(1, 3, QModelIndex()) + << model->index(1, 4, QModelIndex()) + << model->index(2, 0, QModelIndex()) + << model->index(2, 1, QModelIndex()) + << model->index(2, 2, QModelIndex()) + << model->index(2, 3, QModelIndex()) + << model->index(2, 4, QModelIndex()) + << model->index(3, 0, QModelIndex()) + << model->index(3, 1, QModelIndex()) + << model->index(3, 2, QModelIndex()) + << model->index(3, 3, QModelIndex()) + << model->index(3, 4, QModelIndex()) + << model->index(4, 0, QModelIndex()) + << model->index(4, 1, QModelIndex()) + << model->index(4, 2, QModelIndex()) + << model->index(4, 3, QModelIndex()) + << model->index(4, 4, QModelIndex()); + QTest::newRow("(0, 0 to 4, 4): Select|Columns") + << index + << true + << command + << expected; + } + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 2, QModelIndex()); + index << model->index(4, 2, QModelIndex()); + command << QItemSelectionModel::Select; + index << model->index(2, 0, QModelIndex()); + index << model->index(2, 4, QModelIndex()); + command << QItemSelectionModel::Select; + expected << model->index(0, 2, QModelIndex()) + << model->index(1, 2, QModelIndex()) + << model->index(2, 2, QModelIndex()) + << model->index(3, 2, QModelIndex()) + << model->index(4, 2, QModelIndex()) + << model->index(2, 0, QModelIndex()) + << model->index(2, 1, QModelIndex()) + << model->index(2, 3, QModelIndex()) + << model->index(2, 4, QModelIndex()); + QTest::newRow("(0, 2 to 4, 2) and (2, 0 to 2, 4): Select") + << index + << true + << command + << expected; + } + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 2, QModelIndex()); + index << model->index(4, 2, QModelIndex()); + command << QItemSelectionModel::Select; + index << model->index(2, 0, QModelIndex()); + index << model->index(2, 4, QModelIndex()); + command << QItemSelectionModel::SelectCurrent; + expected << model->index(2, 0, QModelIndex()) + << model->index(2, 1, QModelIndex()) + << model->index(2, 2, QModelIndex()) + << model->index(2, 3, QModelIndex()) + << model->index(2, 4, QModelIndex()); + QTest::newRow("(0, 2 to 4, 2) and (2, 0 to 2, 4): Select and SelectCurrent") + << index + << true + << command + << expected; + } + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 2, QModelIndex()); + index << model->index(4, 2, QModelIndex()); + command << QItemSelectionModel::Select; + index << model->index(2, 0, QModelIndex()); + index << model->index(2, 4, QModelIndex()); + command << QItemSelectionModel::Toggle; + expected << model->index(0, 2, QModelIndex()) + << model->index(1, 2, QModelIndex()) + << model->index(3, 2, QModelIndex()) + << model->index(4, 2, QModelIndex()) + << model->index(2, 0, QModelIndex()) + << model->index(2, 1, QModelIndex()) + << model->index(2, 3, QModelIndex()) + << model->index(2, 4, QModelIndex()); + QTest::newRow("(0, 2 to 4, 2) and (2, 0 to 2, 4): Select and Toggle") + << index + << true + << command + << expected; + } + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 2, QModelIndex()); + index << model->index(4, 2, QModelIndex()); + command << QItemSelectionModel::Select; + index << model->index(2, 0, QModelIndex()); + index << model->index(2, 4, QModelIndex()); + command << QItemSelectionModel::Deselect; + expected << model->index(0, 2, QModelIndex()) + << model->index(1, 2, QModelIndex()) + << model->index(3, 2, QModelIndex()) + << model->index(4, 2, QModelIndex()); + QTest::newRow("(0, 2 to 4, 2) and (2, 0 to 2, 4): Select and Deselect") + << index + << true + << command + << expected; + } + + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 0, QModelIndex()); + index << model->index(2, 2, QModelIndex()); + command << QItemSelectionModel::Select; + + index << model->index(0, 0, QModelIndex()); + index << model->index(0, 0, QModelIndex()); + command << QItemSelectionModel::Toggle; + + expected << model->index(0, 1, QModelIndex()) + << model->index(0, 2, QModelIndex()) + << model->index(1, 0, QModelIndex()) + << model->index(1, 1, QModelIndex()) + << model->index(1, 2, QModelIndex()) + << model->index(2, 0, QModelIndex()) + << model->index(2, 1, QModelIndex()) + << model->index(2, 2, QModelIndex()); + + QTest::newRow("(0, 0 to 2, 2) and (0, 0 to 0, 0): Select and Toggle at selection boundary") + << index + << true + << command + << expected; + } + + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 0, QModelIndex()); + index << model->index(2, 2, QModelIndex()); + command << QItemSelectionModel::Select; + + index << model->index(0, 1, QModelIndex()); + index << model->index(0, 1, QModelIndex()); + command << QItemSelectionModel::Toggle; + + expected << model->index(0, 0, QModelIndex()) + << model->index(0, 2, QModelIndex()) + << model->index(1, 0, QModelIndex()) + << model->index(1, 1, QModelIndex()) + << model->index(1, 2, QModelIndex()) + << model->index(2, 0, QModelIndex()) + << model->index(2, 1, QModelIndex()) + << model->index(2, 2, QModelIndex()); + + QTest::newRow("(0, 0 to 2, 2) and (0, 1 to 0, 1): Select and Toggle at selection boundary") + << index + << true + << command + << expected; + } + + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 0, QModelIndex()); + index << model->index(2, 2, QModelIndex()); + command << QItemSelectionModel::Select; + + index << model->index(0, 2, QModelIndex()); + index << model->index(0, 2, QModelIndex()); + command << QItemSelectionModel::Toggle; + + expected << model->index(0, 0, QModelIndex()) + << model->index(0, 1, QModelIndex()) + << model->index(1, 0, QModelIndex()) + << model->index(1, 1, QModelIndex()) + << model->index(1, 2, QModelIndex()) + << model->index(2, 0, QModelIndex()) + << model->index(2, 1, QModelIndex()) + << model->index(2, 2, QModelIndex()); + + QTest::newRow("(0, 0 to 2, 2) and (0, 2 to 0, 2): Select and Toggle at selection boundary") + << index + << true + << command + << expected; + } + + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 0, QModelIndex()); + index << model->index(2, 2, QModelIndex()); + command << QItemSelectionModel::Select; + + index << model->index(1, 0, QModelIndex()); + index << model->index(1, 0, QModelIndex()); + command << QItemSelectionModel::Toggle; + + expected << model->index(0, 0, QModelIndex()) + << model->index(0, 1, QModelIndex()) + << model->index(0, 2, QModelIndex()) + << model->index(1, 1, QModelIndex()) + << model->index(1, 2, QModelIndex()) + << model->index(2, 0, QModelIndex()) + << model->index(2, 1, QModelIndex()) + << model->index(2, 2, QModelIndex()); + + QTest::newRow("(0, 0 to 2, 2) and (1, 0 to 1, 0): Select and Toggle at selection boundary") + << index + << true + << command + << expected; + } + + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 0, QModelIndex()); + index << model->index(2, 2, QModelIndex()); + command << QItemSelectionModel::Select; + + index << model->index(1, 1, QModelIndex()); + index << model->index(1, 1, QModelIndex()); + command << QItemSelectionModel::Toggle; + + expected << model->index(0, 0, QModelIndex()) + << model->index(0, 1, QModelIndex()) + << model->index(0, 2, QModelIndex()) + << model->index(1, 0, QModelIndex()) + << model->index(1, 2, QModelIndex()) + << model->index(2, 0, QModelIndex()) + << model->index(2, 1, QModelIndex()) + << model->index(2, 2, QModelIndex()); + + QTest::newRow("(0, 0 to 2, 2) and (1, 1 to 1, 1): Select and Toggle at selection boundary") + << index + << true + << command + << expected; + } + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 0, QModelIndex()); + index << model->index(2, 2, QModelIndex()); + command << QItemSelectionModel::Select; + + index << model->index(1, 2, QModelIndex()); + index << model->index(1, 2, QModelIndex()); + command << QItemSelectionModel::Toggle; + + expected << model->index(0, 0, QModelIndex()) + << model->index(0, 1, QModelIndex()) + << model->index(0, 2, QModelIndex()) + << model->index(1, 0, QModelIndex()) + << model->index(1, 1, QModelIndex()) + << model->index(2, 0, QModelIndex()) + << model->index(2, 1, QModelIndex()) + << model->index(2, 2, QModelIndex()); + + QTest::newRow("(0, 0 to 2, 2) and (1, 2 to 1, 2): Select and Toggle at selection boundary") + << index + << true + << command + << expected; + } + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 0, QModelIndex()); + index << model->index(2, 2, QModelIndex()); + command << QItemSelectionModel::Select; + + index << model->index(2, 0, QModelIndex()); + index << model->index(2, 0, QModelIndex()); + command << QItemSelectionModel::Toggle; + + expected << model->index(0, 0, QModelIndex()) + << model->index(0, 1, QModelIndex()) + << model->index(0, 2, QModelIndex()) + << model->index(1, 0, QModelIndex()) + << model->index(1, 1, QModelIndex()) + << model->index(1, 2, QModelIndex()) + << model->index(2, 1, QModelIndex()) + << model->index(2, 2, QModelIndex()); + + QTest::newRow("(0, 0 to 2, 2) and (2, 0 to 2, 0): Select and Toggle at selection boundary") + << index + << true + << command + << expected; + } + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + index << model->index(0, 0, QModelIndex()); + index << model->index(2, 2, QModelIndex()); + command << QItemSelectionModel::Select; + + index << model->index(2, 1, QModelIndex()); + index << model->index(2, 1, QModelIndex()); + command << QItemSelectionModel::Toggle; + + expected << model->index(0, 0, QModelIndex()) + << model->index(0, 1, QModelIndex()) + << model->index(0, 2, QModelIndex()) + << model->index(1, 0, QModelIndex()) + << model->index(1, 1, QModelIndex()) + << model->index(1, 2, QModelIndex()) + << model->index(2, 0, QModelIndex()) + << model->index(2, 2, QModelIndex()); + + QTest::newRow("(0, 0 to 2, 2) and (2, 1 to 2, 1): Select and Toggle at selection boundary") + << index + << true + << command + << expected; + } + { + QModelIndexList index; + QModelIndexList expected; + IntList command; + + index << model->index(0, 0, QModelIndex()); + index << model->index(2, 2, QModelIndex()); + command << QItemSelectionModel::Select; + + index << model->index(2, 2, QModelIndex()); + index << model->index(2, 2, QModelIndex()); + command << QItemSelectionModel::Toggle; + + expected << model->index(0, 0, QModelIndex()) + << model->index(0, 1, QModelIndex()) + << model->index(0, 2, QModelIndex()) + << model->index(1, 0, QModelIndex()) + << model->index(1, 1, QModelIndex()) + << model->index(1, 2, QModelIndex()) + << model->index(2, 0, QModelIndex()) + << model->index(2, 1, QModelIndex()); + + QTest::newRow("(0, 0 to 2, 2) and (2, 2 to 2, 2): Select and Toggle at selection boundary") + << index + << true + << command + << expected; + } + { + QModelIndexList indexes; + IntList commands; + QModelIndexList expected; + + indexes << model->index(0, 0, QModelIndex()) << model->index(0, 0, QModelIndex()) // press 0 + << model->index(0, 0, QModelIndex()) << model->index(0, 0, QModelIndex()) // release 0 + << model->index(1, 0, QModelIndex()) << model->index(1, 0, QModelIndex()) // press 1 + << model->index(1, 0, QModelIndex()) << model->index(1, 0, QModelIndex()) // release 1 + << model->index(2, 0, QModelIndex()) << model->index(2, 0, QModelIndex()) // press 2 + << model->index(2, 0, QModelIndex()) << model->index(2, 0, QModelIndex()) // release 2 + << model->index(3, 0, QModelIndex()) << model->index(3, 0, QModelIndex()) // press 3 + << model->index(3, 0, QModelIndex()) << model->index(3, 0, QModelIndex()) // release 3 + << model->index(2, 0, QModelIndex()) << model->index(2, 0, QModelIndex()) // press 2 again + << model->index(2, 0, QModelIndex()) << model->index(2, 0, QModelIndex());// move 2 + + commands << (QItemSelectionModel::NoUpdate) // press 0 + << (QItemSelectionModel::Toggle|QItemSelectionModel::Rows) // release 0 + << (QItemSelectionModel::NoUpdate) // press 1 + << (QItemSelectionModel::Toggle|QItemSelectionModel::Rows) // release 1 + << (QItemSelectionModel::NoUpdate) // press 2 + << (QItemSelectionModel::Toggle|QItemSelectionModel::Rows) // release 2 + << (QItemSelectionModel::NoUpdate) // press 3 + << (QItemSelectionModel::Toggle|QItemSelectionModel::Rows) // release 3 + << (QItemSelectionModel::NoUpdate) // press 2 again + << (QItemSelectionModel::Toggle/*Current*/|QItemSelectionModel::Rows);// move 2 + + expected << model->index(0, 0, QModelIndex()) + << model->index(0, 1, QModelIndex()) + << model->index(0, 2, QModelIndex()) + << model->index(0, 3, QModelIndex()) + << model->index(0, 4, QModelIndex()) + + << model->index(1, 0, QModelIndex()) + << model->index(1, 1, QModelIndex()) + << model->index(1, 2, QModelIndex()) + << model->index(1, 3, QModelIndex()) + << model->index(1, 4, QModelIndex()) + /* + << model->index(2, 0, QModelIndex()) + << model->index(2, 1, QModelIndex()) + << model->index(2, 2, QModelIndex()) + << model->index(2, 3, QModelIndex()) + << model->index(2, 4, QModelIndex()) + */ + << model->index(3, 0, QModelIndex()) + << model->index(3, 1, QModelIndex()) + << model->index(3, 2, QModelIndex()) + << model->index(3, 3, QModelIndex()) + << model->index(3, 4, QModelIndex()); + + QTest::newRow("simulated treeview multiselection behavior") + << indexes + << true + << commands + << expected; + } +} + +void tst_QItemSelectionModel::select() +{ + QFETCH(QModelIndexList, indexList); + QFETCH(bool, useRanges); + QFETCH(IntList, commandList); + QFETCH(QModelIndexList, expectedList); + + int lastCommand = 0; + // do selections + for (int i = 0; iselect(QItemSelection(indexList.at(2*i), indexList.at(2*i+1)), + (QItemSelectionModel::SelectionFlags)commandList.at(i)); + } else { + selection->select(indexList.at(i), + (QItemSelectionModel::SelectionFlags)commandList.at(i)); + } + lastCommand = commandList.at(i); + } + + + QModelIndexList selectedList = selection->selectedIndexes(); + + QVERIFY(selection->hasSelection()!=selectedList.isEmpty()); + + // debug output +// for (int i=0; iisSelected(idx) == selectedList.contains(idx), + QString("isSelected(index: %1, %2) does not match selectedIndexes()") + .arg(idx.row()) + .arg(idx.column()).toLatin1()); + } + + //for now we assume Rows/Columns flag is the same for all commands, therefore we just check lastCommand + // test that isRowSelected agrees + if (lastCommand & QItemSelectionModel::Rows) { + for (int i=0; iisRowSelected(selectedList.at(i).row(), + model->parent(selectedList.at(i))), + QString("isRowSelected(row: %1) does not match selectedIndexes()") + .arg(selectedList.at(i).row()).toLatin1()); + } + + // test that isColumnSelected agrees + if (lastCommand & QItemSelectionModel::Columns) { + for (int i=0; iisColumnSelected(selectedList.at(i).column(), + model->parent(selectedList.at(i))), + QString("isColumnSelected(column: %1) does not match selectedIndexes()") + .arg(selectedList.at(i).column()).toLatin1()); + } +} + +void tst_QItemSelectionModel::persistentselections_data() +{ + QTest::addColumn("indexList"); + QTest::addColumn("commandList"); + QTest::addColumn("insertRows"); // start, count + QTest::addColumn("insertColumns"); // start, count + QTest::addColumn("deleteRows"); // start, count + QTest::addColumn("deleteColumns"); // start, count + QTest::addColumn("expectedList"); + + PairList index, expected; + IntList command, insertRows, insertColumns, deleteRows, deleteColumns; + + + index.clear(); expected.clear(); command.clear(); + insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); + index << IntPair(0, 0); + command << QItemSelectionModel::ClearAndSelect; + deleteRows << 4 << 1; + expected << IntPair(0, 0); + QTest::newRow("ClearAndSelect (0, 0). Delete last row.") + << index << command + << insertRows << insertColumns << deleteRows << deleteColumns + << expected; + + index.clear(); expected.clear(); command.clear(); + insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); + index << IntPair(0, 0); + command << QItemSelectionModel::ClearAndSelect; + deleteRows << 0 << 1; + QTest::newRow("ClearAndSelect (0, 0). Delete first row.") + << index << command + << insertRows << insertColumns << deleteRows << deleteColumns + << expected; + + index.clear(); expected.clear(); command.clear(); + insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); + index << IntPair(1, 0); + command << QItemSelectionModel::ClearAndSelect; + deleteRows << 0 << 1; + expected << IntPair(0, 0); + QTest::newRow("ClearAndSelect (1, 0). Delete first row.") + << index << command + << insertRows << insertColumns << deleteRows << deleteColumns + << expected; + + index.clear(); expected.clear(); command.clear(); + insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); + index << IntPair(0, 0); + command << QItemSelectionModel::ClearAndSelect; + insertRows << 5 << 1; + expected << IntPair(0, 0); + QTest::newRow("ClearAndSelect (0, 0). Append row.") + << index << command + << insertRows << insertColumns << deleteRows << deleteColumns + << expected; + + index.clear(); expected.clear(); command.clear(); + insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); + index << IntPair(0, 0); + command << QItemSelectionModel::ClearAndSelect; + insertRows << 0 << 1; + expected << IntPair(1, 0); + QTest::newRow("ClearAndSelect (0, 0). Insert before first row.") + << index << command + << insertRows << insertColumns << deleteRows << deleteColumns + << expected; + + index.clear(); expected.clear(); command.clear(); + insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); + index << IntPair(0, 0) + << IntPair(4, 0); + command << QItemSelectionModel::ClearAndSelect; + insertRows << 5 << 1; + expected << IntPair(0, 0) + << IntPair(1, 0) + << IntPair(2, 0) + << IntPair(3, 0) + << IntPair(4, 0); + QTest::newRow("ClearAndSelect (0, 0) to (4, 0). Append row.") + << index << command + << insertRows << insertColumns << deleteRows << deleteColumns + << expected; + + index.clear(); expected.clear(); command.clear(); + insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); + index << IntPair(0, 0) + << IntPair(4, 0); + command << QItemSelectionModel::ClearAndSelect; + insertRows << 0 << 1; + expected << IntPair(1, 0) + << IntPair(2, 0) + << IntPair(3, 0) + << IntPair(4, 0) + << IntPair(5, 0); + QTest::newRow("ClearAndSelect (0, 0) to (4, 0). Insert before first row.") + << index << command + << insertRows << insertColumns << deleteRows << deleteColumns + << expected; + + index.clear(); expected.clear(); command.clear(); + insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); + index << IntPair(0, 0) + << IntPair(4, 0); + command << QItemSelectionModel::ClearAndSelect; + deleteRows << 0 << 1; + expected << IntPair(0, 0) + << IntPair(1, 0) + << IntPair(2, 0) + << IntPair(3, 0); + QTest::newRow("ClearAndSelect (0, 0) to (4, 0). Delete first row.") + << index << command + << insertRows << insertColumns << deleteRows << deleteColumns + << expected; + + index.clear(); expected.clear(); command.clear(); + insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); + index << IntPair(0, 0) + << IntPair(4, 0); + command << QItemSelectionModel::ClearAndSelect; + deleteRows << 4 << 1; + expected << IntPair(0, 0) + << IntPair(1, 0) + << IntPair(2, 0) + << IntPair(3, 0); + QTest::newRow("ClearAndSelect (0, 0) to (4, 0). Delete last row.") + << index << command + << insertRows << insertColumns << deleteRows << deleteColumns + << expected; + + index.clear(); expected.clear(); command.clear(); + insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); + index << IntPair(0, 0) + << IntPair(4, 0); + command << QItemSelectionModel::ClearAndSelect; + deleteRows << 1 << 3; + expected << IntPair(0, 0) + << IntPair(1, 0); + QTest::newRow("ClearAndSelect (0, 0) to (4, 0). Deleting all but first and last row.") + << index << command + << insertRows << insertColumns << deleteRows << deleteColumns + << expected; + + index.clear(); expected.clear(); command.clear(); + insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); + index << IntPair(0, 0) + << IntPair(4, 0); + command << QItemSelectionModel::ClearAndSelect; + insertRows << 1 << 1; + expected << IntPair(0, 0) + // the inserted row should not be selected + << IntPair(2, 0) + << IntPair(3, 0) + << IntPair(4, 0) + << IntPair(5, 0); + QTest::newRow("ClearAndSelect (0, 0) to (4, 0). Insert after first row.") + << index << command + << insertRows << insertColumns << deleteRows << deleteColumns + << expected; +} + +void tst_QItemSelectionModel::persistentselections() +{ + QFETCH(PairList, indexList); + QFETCH(IntList, commandList); + QFETCH(IntList, insertRows); + QFETCH(IntList, insertColumns); + QFETCH(IntList, deleteRows); + QFETCH(IntList, deleteColumns); + QFETCH(PairList, expectedList); + + // make sure the model is sane (5x5) + QCOMPARE(model->rowCount(QModelIndex()), 5); + QCOMPARE(model->columnCount(QModelIndex()), 5); + + // do selections + for (int i=0; iindex(indexList.at(i).first, + indexList.at(i).second, + QModelIndex()); + selection->select(index, (QItemSelectionModel::SelectionFlags)commandList.at(i)); + } else { + QModelIndex tl = model->index(indexList.at(2*i).first, + indexList.at(2*i).second, + QModelIndex()); + QModelIndex br = model->index(indexList.at(2*i+1).first, + indexList.at(2*i+1).second, + QModelIndex()); + selection->select(QItemSelection(tl, br), + (QItemSelectionModel::SelectionFlags)commandList.at(i)); + } + } + // test that we have selected items + QVERIFY(!selection->selectedIndexes().isEmpty()); + QVERIFY(selection->hasSelection()); + + // insert/delete row and/or columns + if (insertRows.count() > 1) + model->insertRows(insertRows.at(0), insertRows.at(1), QModelIndex()); + if (insertColumns.count() > 1) + model->insertColumns(insertColumns.at(0), insertColumns.at(1), QModelIndex()); + if (deleteRows.count() > 1) + model->removeRows(deleteRows.at(0), deleteRows.at(1), QModelIndex()); + if (deleteColumns.count() > 1) + model->removeColumns(deleteColumns.at(0), deleteColumns.at(1), QModelIndex()); + + // check that the selected items are the correct number and indexes + QModelIndexList selectedList = selection->selectedIndexes(); + QCOMPARE(selectedList.count(), expectedList.count()); + foreach(IntPair pair, expectedList) { + QModelIndex index = model->index(pair.first, pair.second, QModelIndex()); + QVERIFY(selectedList.contains(index)); + } +} + +// "make reset public"-model +class MyStandardItemModel: public QStandardItemModel +{ + Q_OBJECT +public: + inline MyStandardItemModel(int i1, int i2): QStandardItemModel(i1, i2) {} + inline void reset() { QStandardItemModel::reset(); } +}; + +void tst_QItemSelectionModel::resetModel() +{ + MyStandardItemModel model(20, 20); + QTreeView view; + view.setModel(&model); + + QSignalSpy spy(view.selectionModel(), SIGNAL(selectionChanged(QItemSelection,QItemSelection))); + + view.selectionModel()->select(QItemSelection(model.index(0, 0), model.index(5, 5)), QItemSelectionModel::Select); + + QCOMPARE(spy.count(), 1); + + model.reset(); + + QVERIFY(view.selectionModel()->selection().isEmpty()); + QVERIFY(view.selectionModel()->hasSelection() == false); + + view.selectionModel()->select(QItemSelection(model.index(0, 0), model.index(5, 5)), QItemSelectionModel::Select); + + QCOMPARE(spy.count(), 2); + QCOMPARE(spy.at(1).count(), 2); + // make sure we don't get an "old selection" + QCOMPARE(spy.at(1).at(1).userType(), qMetaTypeId()); + QVERIFY(qvariant_cast(spy.at(1).at(1)).isEmpty()); +} + +void tst_QItemSelectionModel::removeRows_data() +{ + QTest::addColumn("rowCount"); + QTest::addColumn("columnCount"); + + QTest::addColumn("selectTop"); + QTest::addColumn("selectLeft"); + QTest::addColumn("selectBottom"); + QTest::addColumn("selectRight"); + + QTest::addColumn("removeTop"); + QTest::addColumn("removeBottom"); + + QTest::addColumn("expectedTop"); + QTest::addColumn("expectedLeft"); + QTest::addColumn("expectedBottom"); + QTest::addColumn("expectedRight"); + + QTest::newRow("4x4 <0,1><1,1>") + << 4 << 4 + << 0 << 1 << 1 << 1 + << 0 << 0 + << 0 << 1 << 0 << 1; +} + +void tst_QItemSelectionModel::removeRows() +{ + QFETCH(int, rowCount); + QFETCH(int, columnCount); + QFETCH(int, selectTop); + QFETCH(int, selectLeft); + QFETCH(int, selectBottom); + QFETCH(int, selectRight); + QFETCH(int, removeTop); + QFETCH(int, removeBottom); + QFETCH(int, expectedTop); + QFETCH(int, expectedLeft); + QFETCH(int, expectedBottom); + QFETCH(int, expectedRight); + + MyStandardItemModel model(rowCount, columnCount); + QItemSelectionModel selections(&model); + QSignalSpy spy(&selections, SIGNAL(selectionChanged(QItemSelection,QItemSelection))); + + QModelIndex tl = model.index(selectTop, selectLeft); + QModelIndex br = model.index(selectBottom, selectRight); + selections.select(QItemSelection(tl, br), QItemSelectionModel::ClearAndSelect); + + QCOMPARE(spy.count(), 1); + QVERIFY(selections.isSelected(tl)); + QVERIFY(selections.isSelected(br)); + QVERIFY(selections.hasSelection()); + + model.removeRows(removeTop, removeBottom - removeTop + 1); + + QCOMPARE(spy.count(), 2); + tl = model.index(expectedTop, expectedLeft); + br = model.index(expectedBottom, expectedRight); + QVERIFY(selections.isSelected(tl)); + QVERIFY(selections.isSelected(br)); +} + +void tst_QItemSelectionModel::removeColumns_data() +{ + QTest::addColumn("rowCount"); + QTest::addColumn("columnCount"); + + QTest::addColumn("selectTop"); + QTest::addColumn("selectLeft"); + QTest::addColumn("selectBottom"); + QTest::addColumn("selectRight"); + + QTest::addColumn("removeLeft"); + QTest::addColumn("removeRight"); + + QTest::addColumn("expectedTop"); + QTest::addColumn("expectedLeft"); + QTest::addColumn("expectedBottom"); + QTest::addColumn("expectedRight"); + + QTest::newRow("4x4 <0,1><1,1>") + << 4 << 4 + << 1 << 0 << 1 << 1 + << 0 << 0 + << 1 << 0 << 1 << 0; +} + +void tst_QItemSelectionModel::removeColumns() +{ + QFETCH(int, rowCount); + QFETCH(int, columnCount); + QFETCH(int, selectTop); + QFETCH(int, selectLeft); + QFETCH(int, selectBottom); + QFETCH(int, selectRight); + QFETCH(int, removeLeft); + QFETCH(int, removeRight); + QFETCH(int, expectedTop); + QFETCH(int, expectedLeft); + QFETCH(int, expectedBottom); + QFETCH(int, expectedRight); + + MyStandardItemModel model(rowCount, columnCount); + QItemSelectionModel selections(&model); + QSignalSpy spy(&selections, SIGNAL(selectionChanged(QItemSelection,QItemSelection))); + + QModelIndex tl = model.index(selectTop, selectLeft); + QModelIndex br = model.index(selectBottom, selectRight); + selections.select(QItemSelection(tl, br), QItemSelectionModel::ClearAndSelect); + + QCOMPARE(spy.count(), 1); + QVERIFY(selections.isSelected(tl)); + QVERIFY(selections.isSelected(br)); + QVERIFY(selections.hasSelection()); + + model.removeColumns(removeLeft, removeRight - removeLeft + 1); + + QCOMPARE(spy.count(), 2); + tl = model.index(expectedTop, expectedLeft); + br = model.index(expectedBottom, expectedRight); + QVERIFY(selections.isSelected(tl)); + QVERIFY(selections.isSelected(br)); +} + +typedef QList IntListList; +typedef QPair IntPairPair; +typedef QList IntPairPairList; +Q_DECLARE_METATYPE(IntListList) +Q_DECLARE_METATYPE(IntPairPair) +Q_DECLARE_METATYPE(IntPairPairList) + +void tst_QItemSelectionModel::modelLayoutChanged_data() +{ + QTest::addColumn("items"); + QTest::addColumn("initialSelectedRanges"); + QTest::addColumn("sortOrder"); + QTest::addColumn("sortColumn"); + QTest::addColumn("expectedSelectedRanges"); + + QTest::newRow("everything selected, then row order reversed") + << (IntListList() + << (IntList() << 0 << 1 << 2 << 3) + << (IntList() << 3 << 2 << 1 << 0)) + << (IntPairPairList() + << IntPairPair(IntPair(0, 0), IntPair(3, 1))) + << int(Qt::DescendingOrder) + << 0 + << (IntPairPairList() + << IntPairPair(IntPair(0, 0), IntPair(3, 1))); + QTest::newRow("first two rows selected, then row order reversed") + << (IntListList() + << (IntList() << 0 << 1 << 2 << 3) + << (IntList() << 3 << 2 << 1 << 0)) + << (IntPairPairList() + << IntPairPair(IntPair(0, 0), IntPair(1, 1))) + << int(Qt::DescendingOrder) + << 0 + << (IntPairPairList() + << IntPairPair(IntPair(2, 0), IntPair(3, 1))); + QTest::newRow("middle two rows selected, then row order reversed") + << (IntListList() + << (IntList() << 0 << 1 << 2 << 3) + << (IntList() << 3 << 2 << 1 << 0)) + << (IntPairPairList() + << IntPairPair(IntPair(1, 0), IntPair(2, 1))) + << int(Qt::DescendingOrder) + << 0 + << (IntPairPairList() + << IntPairPair(IntPair(1, 0), IntPair(2, 1))); + QTest::newRow("two ranges") + << (IntListList() + << (IntList() << 2 << 0 << 3 << 1) + << (IntList() << 2 << 0 << 3 << 1)) + << (IntPairPairList() + << IntPairPair(IntPair(1, 0), IntPair(1, 1)) + << IntPairPair(IntPair(3, 0), IntPair(3, 1))) + << int(Qt::AscendingOrder) + << 0 + << (IntPairPairList() + << IntPairPair(IntPair(0, 0), IntPair(0, 1)) + << IntPairPair(IntPair(1, 0), IntPair(1, 1))); +} + +void tst_QItemSelectionModel::modelLayoutChanged() +{ + QFETCH(IntListList, items); + QFETCH(IntPairPairList, initialSelectedRanges); + QFETCH(int, sortOrder); + QFETCH(int, sortColumn); + QFETCH(IntPairPairList, expectedSelectedRanges); + + MyStandardItemModel model(items.at(0).count(), items.count()); + // initialize model data + for (int i = 0; i < model.rowCount(); ++i) { + for (int j = 0; j < model.columnCount(); ++j) { + QModelIndex index = model.index(i, j); + model.setData(index, items.at(j).at(i), Qt::DisplayRole); + } + } + + // select initial ranges + QItemSelectionModel selectionModel(&model); + foreach (IntPairPair range, initialSelectedRanges) { + IntPair tl = range.first; + IntPair br = range.second; + QItemSelection selection( + model.index(tl.first, tl.second), + model.index(br.first, br.second)); + selectionModel.select(selection, QItemSelectionModel::Select); + } + + // sort the model + model.sort(sortColumn, Qt::SortOrder(sortOrder)); + + // verify that selection is as expected + QItemSelection selection = selectionModel.selection(); + QCOMPARE(selection.count(), expectedSelectedRanges.count()); + QVERIFY(selectionModel.hasSelection() == !expectedSelectedRanges.isEmpty()); + + for (int i = 0; i < expectedSelectedRanges.count(); ++i) { + IntPairPair expectedRange = expectedSelectedRanges.at(i); + IntPair expectedTl = expectedRange.first; + IntPair expectedBr = expectedRange.second; + QItemSelectionRange actualRange = selection.at(i); + QModelIndex actualTl = actualRange.topLeft(); + QModelIndex actualBr = actualRange.bottomRight(); + QCOMPARE(actualTl.row(), expectedTl.first); + QCOMPARE(actualTl.column(), expectedTl.second); + QCOMPARE(actualBr.row(), expectedBr.first); + QCOMPARE(actualBr.column(), expectedBr.second); + } +} + +void tst_QItemSelectionModel::selectedRows_data() +{ + QTest::addColumn("rowCount"); + QTest::addColumn("columnCount"); + QTest::addColumn("column"); + QTest::addColumn("selectRows"); + QTest::addColumn("expectedRows"); + QTest::addColumn("unexpectedRows"); + + QTest::newRow("10x10, first row") + << 10 << 10 << 0 + << (IntList() << 0) + << (IntList() << 0) + << (IntList() << 1 << 2 << 3 << 4 << 5 << 6 << 7 << 8 << 9); + + QTest::newRow("10x10, first 4 rows") + << 10 << 10 << 0 + << (IntList() << 0 << 1 << 2 << 3) + << (IntList() << 0 << 1 << 2 << 3) + << (IntList() << 4 << 5 << 6 << 7 << 8 << 9); + + QTest::newRow("10x10, last 4 rows") + << 10 << 10 << 0 + << (IntList() << 6 << 7 << 8 << 9) + << (IntList() << 6 << 7 << 8 << 9) + << (IntList() << 0 << 1 << 2 << 3 << 4 << 6); +} + +void tst_QItemSelectionModel::selectedRows() +{ + QFETCH(int, rowCount); + QFETCH(int, columnCount); + QFETCH(int, column); + QFETCH(IntList, selectRows); + QFETCH(IntList, expectedRows); + QFETCH(IntList, unexpectedRows); + + MyStandardItemModel model(rowCount, columnCount); + QItemSelectionModel selectionModel(&model); + + for (int i = 0; i < selectRows.count(); ++i) + selectionModel.select(model.index(selectRows.at(i), 0), + QItemSelectionModel::Select + |QItemSelectionModel::Rows); + + for (int j = 0; j < selectRows.count(); ++j) + QVERIFY(selectionModel.isRowSelected(expectedRows.at(j), QModelIndex())); + + for (int k = 0; k < selectRows.count(); ++k) + QVERIFY(!selectionModel.isRowSelected(unexpectedRows.at(k), QModelIndex())); + + QModelIndexList selectedRowIndexes = selectionModel.selectedRows(column); + QCOMPARE(selectedRowIndexes.count(), expectedRows.count()); + qSort(selectedRowIndexes); + for (int l = 0; l < selectedRowIndexes.count(); ++l) { + QCOMPARE(selectedRowIndexes.at(l).row(), expectedRows.at(l)); + QCOMPARE(selectedRowIndexes.at(l).column(), column); + } +} + +void tst_QItemSelectionModel::selectedColumns_data() +{ + QTest::addColumn("rowCount"); + QTest::addColumn("columnCount"); + QTest::addColumn("row"); + QTest::addColumn("selectColumns"); + QTest::addColumn("expectedColumns"); + QTest::addColumn("unexpectedColumns"); + + QTest::newRow("10x10, first columns") + << 10 << 10 << 0 + << (IntList() << 0) + << (IntList() << 0) + << (IntList() << 1 << 2 << 3 << 4 << 5 << 6 << 7 << 8 << 9); + + QTest::newRow("10x10, first 4 columns") + << 10 << 10 << 0 + << (IntList() << 0 << 1 << 2 << 3) + << (IntList() << 0 << 1 << 2 << 3) + << (IntList() << 4 << 5 << 6 << 7 << 8 << 9); + + QTest::newRow("10x10, last 4 columns") + << 10 << 10 << 0 + << (IntList() << 6 << 7 << 8 << 9) + << (IntList() << 6 << 7 << 8 << 9) + << (IntList() << 0 << 1 << 2 << 3 << 4 << 6); +} + +void tst_QItemSelectionModel::selectedColumns() +{ + QFETCH(int, rowCount); + QFETCH(int, columnCount); + QFETCH(int, row); + QFETCH(IntList, selectColumns); + QFETCH(IntList, expectedColumns); + QFETCH(IntList, unexpectedColumns); + + MyStandardItemModel model(rowCount, columnCount); + QItemSelectionModel selectionModel(&model); + + for (int i = 0; i < selectColumns.count(); ++i) + selectionModel.select(model.index(0, selectColumns.at(i)), + QItemSelectionModel::Select + |QItemSelectionModel::Columns); + + for (int j = 0; j < selectColumns.count(); ++j) + QVERIFY(selectionModel.isColumnSelected(expectedColumns.at(j), QModelIndex())); + + for (int k = 0; k < selectColumns.count(); ++k) + QVERIFY(!selectionModel.isColumnSelected(unexpectedColumns.at(k), QModelIndex())); + + QModelIndexList selectedColumnIndexes = selectionModel.selectedColumns(row); + QCOMPARE(selectedColumnIndexes.count(), expectedColumns.count()); + qSort(selectedColumnIndexes); + for (int l = 0; l < selectedColumnIndexes.count(); ++l) { + QCOMPARE(selectedColumnIndexes.at(l).column(), expectedColumns.at(l)); + QCOMPARE(selectedColumnIndexes.at(l).row(), row); + } +} + +void tst_QItemSelectionModel::setCurrentIndex() +{ + // Build up a simple tree + QStandardItemModel *treemodel = new QStandardItemModel(0, 1); + treemodel->insertRow(0, new QStandardItem(1)); + treemodel->insertRow(1, new QStandardItem(2)); + + QTreeView treeView; + treeView.setModel(treemodel); + QItemSelectionModel *selectionModel = treeView.selectionModel(); + selectionModel->setCurrentIndex( + treemodel->index(0, 0, treemodel->index(0, 0)), + QItemSelectionModel::SelectCurrent); + + QSignalSpy currentSpy(selectionModel, + SIGNAL(currentChanged(QModelIndex,QModelIndex))); + QSignalSpy rowSpy(selectionModel, + SIGNAL(currentRowChanged(QModelIndex,QModelIndex))); + QSignalSpy columnSpy(selectionModel, + SIGNAL(currentColumnChanged(QModelIndex,QModelIndex))); + + // Select the same row and column indexes, but with a different parent + selectionModel->setCurrentIndex( + treemodel->index(0, 0, treemodel->index(1, 0)), + QItemSelectionModel::SelectCurrent); + + QCOMPARE(currentSpy.count(), 1); + QCOMPARE(rowSpy.count(), 1); + QCOMPARE(columnSpy.count(), 1); + + // Select another row in the same parent + selectionModel->setCurrentIndex( + treemodel->index(1, 0, treemodel->index(1, 0)), + QItemSelectionModel::SelectCurrent); + + QCOMPARE(currentSpy.count(), 2); + QCOMPARE(rowSpy.count(), 2); + QCOMPARE(columnSpy.count(), 1); + + delete treemodel; +} + +void tst_QItemSelectionModel::splitOnInsert() +{ + QStandardItemModel model(4, 1); + QItemSelectionModel selectionModel(&model); + selectionModel.select(model.index(2, 0), QItemSelectionModel::Select); + model.insertRow(2); + model.removeRow(3); + QVERIFY(!selectionModel.isSelected(model.index(1, 0))); +} + +void tst_QItemSelectionModel::task196285_rowIntersectsSelection() +{ + QTableWidget table; + table.setColumnCount(1); + table.setRowCount(1); + table.setItem(0, 0, new QTableWidgetItem("foo")); + QAbstractItemModel *model = table.model(); + QItemSelectionModel *selectionModel = table.selectionModel(); + QModelIndex index = model->index(0, 0, QModelIndex()); + + selectionModel->select(index, QItemSelectionModel::Select); + QVERIFY(selectionModel->rowIntersectsSelection(0, QModelIndex())); + QVERIFY(selectionModel->columnIntersectsSelection(0, QModelIndex())); + + selectionModel->select(index, QItemSelectionModel::Deselect); + QVERIFY(!selectionModel->rowIntersectsSelection(0, QModelIndex())); + QVERIFY(!selectionModel->columnIntersectsSelection(0, QModelIndex())); + + selectionModel->select(index, QItemSelectionModel::Toggle); + QVERIFY(selectionModel->rowIntersectsSelection(0, QModelIndex())); + QVERIFY(selectionModel->columnIntersectsSelection(0, QModelIndex())); + + selectionModel->select(index, QItemSelectionModel::Toggle); + QVERIFY(!selectionModel->rowIntersectsSelection(0, QModelIndex())); + QVERIFY(!selectionModel->columnIntersectsSelection(0, QModelIndex())); +} + +void tst_QItemSelectionModel::unselectable() +{ + QTreeWidget w; + for (int i = 0; i < 10; ++i) + w.setItemSelected(new QTreeWidgetItem(&w), true); + QCOMPARE(w.topLevelItemCount(), 10); + QCOMPARE(w.selectionModel()->selectedIndexes().count(), 10); + QCOMPARE(w.selectionModel()->selectedRows().count(), 10); + for (int j = 0; j < 10; ++j) + w.topLevelItem(j)->setFlags(0); + QCOMPARE(w.selectionModel()->selectedIndexes().count(), 0); + QCOMPARE(w.selectionModel()->selectedRows().count(), 0); +} + +void tst_QItemSelectionModel::task220420_selectedIndexes() +{ + QStandardItemModel model(2, 2); + QItemSelectionModel selectionModel(&model); + QItemSelection selection; + selection.append(QItemSelectionRange(model.index(0,0))); + selection.append(QItemSelectionRange(model.index(0,1))); + + //we select the 1st row + selectionModel.select(selection, QItemSelectionModel::Rows | QItemSelectionModel::Select); + + QCOMPARE(selectionModel.selectedRows().count(), 1); + QCOMPARE(selectionModel.selectedIndexes().count(), model.columnCount()); +} + + +class QtTestTableModel: public QAbstractTableModel +{ + Q_OBJECT + + public: + QtTestTableModel(int rows = 0, int columns = 0, QObject *parent = 0) + : QAbstractTableModel(parent), + row_count(rows), + column_count(columns) {} + + int rowCount(const QModelIndex& = QModelIndex()) const { return row_count; } + int columnCount(const QModelIndex& = QModelIndex()) const { return column_count; } + bool isEditable(const QModelIndex &) const { return true; } + + QVariant data(const QModelIndex &idx, int role) const + { + if (role == Qt::DisplayRole || role == Qt::EditRole) + return QString("[%1,%2]").arg(idx.row()).arg(idx.column()); + return QVariant(); + } + + int row_count; + int column_count; + friend class tst_QItemSelectionModel; +}; + + +void tst_QItemSelectionModel::task240734_layoutChanged() +{ + QtTestTableModel model(1,1); + QItemSelectionModel selectionModel(&model); + selectionModel.select(model.index(0,0), QItemSelectionModel::Select); + QCOMPARE(selectionModel.selectedIndexes().count() , 1); + + emit model.layoutAboutToBeChanged(); + model.row_count = 5; + emit model.layoutChanged(); + + //The selection should not change. + QCOMPARE(selectionModel.selectedIndexes().count() , 1); + QCOMPARE(selectionModel.selectedIndexes().first() , model.index(0,0)); +} + +void tst_QItemSelectionModel::merge_data() +{ + QTest::addColumn("init"); + QTest::addColumn("other"); + QTest::addColumn("command"); + QTest::addColumn("result"); + + QTest::newRow("Simple select") + << QItemSelection() + << QItemSelection(model->index(2, 1) , model->index(3, 4)) + << int(QItemSelectionModel::Select) + << QItemSelection(model->index(2, 1) , model->index(3, 4)); + + QTest::newRow("Simple deselect") + << QItemSelection(model->index(2, 1) , model->index(3, 4)) + << QItemSelection(model->index(2, 1) , model->index(3, 4)) + << int(QItemSelectionModel::Deselect) + << QItemSelection(); + + QTest::newRow("Simple Toggle deselect") + << QItemSelection(model->index(2, 1) , model->index(3, 4)) + << QItemSelection(model->index(2, 1) , model->index(3, 4)) + << int(QItemSelectionModel::Toggle) + << QItemSelection(); + + QTest::newRow("Simple Toggle select") + << QItemSelection() + << QItemSelection(model->index(2, 1) , model->index(3, 4)) + << int(QItemSelectionModel::Toggle) + << QItemSelection(model->index(2, 1) , model->index(3, 4)); + + QTest::newRow("Add select") + << QItemSelection(model->index(2, 1) , model->index(3, 3)) + << QItemSelection(model->index(2, 2) , model->index(3, 4)) + << int(QItemSelectionModel::Select) + << QItemSelection(model->index(2, 1) , model->index(3, 4)); + + QTest::newRow("Deselect") + << QItemSelection(model->index(2, 1) , model->index(3, 4)) + << QItemSelection(model->index(2, 2) , model->index(3, 4)) + << int(QItemSelectionModel::Deselect) + << QItemSelection(model->index(2, 1) , model->index(3, 1)); + + QItemSelection r1(model->index(2, 1) , model->index(3, 1)); + r1.select(model->index(2, 4) , model->index(3, 4)); + QTest::newRow("Toggle") + << QItemSelection(model->index(2, 1) , model->index(3, 3)) + << QItemSelection(model->index(2, 2) , model->index(3, 4)) + << int(QItemSelectionModel::Toggle) + << r1; +} + + +void tst_QItemSelectionModel::merge() +{ + QFETCH(QItemSelection, init); + QFETCH(QItemSelection, other); + QFETCH(int, command); + QFETCH(QItemSelection, result); + + init.merge(other, QItemSelectionModel::SelectionFlags(command)); + + foreach(const QModelIndex &idx, init.indexes()) + QVERIFY(result.contains(idx)); + foreach(const QModelIndex &idx, result.indexes()) + QVERIFY(init.contains(idx)); +} + +void tst_QItemSelectionModel::task119433_isRowSelected() +{ + QStandardItemModel model(2,2); + model.setData(model.index(0,0), 0, Qt::UserRole - 1); + QItemSelectionModel sel(&model); + sel.select( QItemSelection(model.index(0,0), model.index(0, 1)), QItemSelectionModel::Select); + QCOMPARE(sel.selectedIndexes().count(), 1); + QVERIFY(sel.isRowSelected(0, QModelIndex())); +} + +void tst_QItemSelectionModel::task252069_rowIntersectsSelection() +{ + QStandardItemModel m; + for (int i=0; i<8; ++i) { + for (int j=0; j<8; ++j) { + QStandardItem *item = new QStandardItem(QString("Item number %1").arg(i)); + if ((i % 2 == 0 && j == 0) || + (j % 2 == 0 && i == 0) || + j == 5 || i == 5 ) { + item->setEnabled(false); + //item->setSelectable(false); + } + m.setItem(i, j, item); + } + } + + QItemSelectionModel selected(&m); + //nothing is selected + QVERIFY(!selected.rowIntersectsSelection(0, QModelIndex())); + QVERIFY(!selected.rowIntersectsSelection(2, QModelIndex())); + QVERIFY(!selected.rowIntersectsSelection(3, QModelIndex())); + QVERIFY(!selected.rowIntersectsSelection(5, QModelIndex())); + QVERIFY(!selected.columnIntersectsSelection(0, QModelIndex())); + QVERIFY(!selected.columnIntersectsSelection(2, QModelIndex())); + QVERIFY(!selected.columnIntersectsSelection(3, QModelIndex())); + QVERIFY(!selected.columnIntersectsSelection(5, QModelIndex())); + selected.select(m.index(2, 0), QItemSelectionModel::Select | QItemSelectionModel::Rows); + QVERIFY(!selected.rowIntersectsSelection(0, QModelIndex())); + QVERIFY( selected.rowIntersectsSelection(2, QModelIndex())); + QVERIFY(!selected.rowIntersectsSelection(3, QModelIndex())); + QVERIFY(!selected.rowIntersectsSelection(5, QModelIndex())); + QVERIFY(!selected.columnIntersectsSelection(0, QModelIndex())); + QVERIFY( selected.columnIntersectsSelection(2, QModelIndex())); + QVERIFY( selected.columnIntersectsSelection(3, QModelIndex())); + QVERIFY(!selected.columnIntersectsSelection(5, QModelIndex())); + selected.select(m.index(0, 5), QItemSelectionModel::Select | QItemSelectionModel::Columns); + QVERIFY(!selected.rowIntersectsSelection(0, QModelIndex())); + QVERIFY( selected.rowIntersectsSelection(2, QModelIndex())); + QVERIFY(!selected.rowIntersectsSelection(3, QModelIndex())); + QVERIFY(!selected.rowIntersectsSelection(5, QModelIndex())); + QVERIFY(!selected.columnIntersectsSelection(0, QModelIndex())); + QVERIFY( selected.columnIntersectsSelection(2, QModelIndex())); + QVERIFY( selected.columnIntersectsSelection(3, QModelIndex())); + QVERIFY(!selected.columnIntersectsSelection(5, QModelIndex())); +} + +void tst_QItemSelectionModel::task232634_childrenDeselectionSignal() +{ + QStandardItemModel model; + + QStandardItem *parentItem = model.invisibleRootItem(); + for (int i = 0; i < 4; ++i) { + QStandardItem *item = new QStandardItem(QString("item %0").arg(i)); + parentItem->appendRow(item); + parentItem = item; + } + + QModelIndex root = model.index(0,0); + QModelIndex par = root.child(0,0); + QModelIndex sel = par.child(0,0); + + QItemSelectionModel selectionModel(&model); + selectionModel.select(sel, QItemSelectionModel::SelectCurrent); + + QSignalSpy deselectSpy(&selectionModel, SIGNAL(selectionChanged(const QItemSelection& , const QItemSelection&))); + model.removeRows(0, 1, root); + QVERIFY(deselectSpy.count() == 1); + + // More testing stress for the patch. + model.clear(); + selectionModel.clear(); + + parentItem = model.invisibleRootItem(); + for (int i = 0; i < 2; ++i) { + QStandardItem *item = new QStandardItem(QString("item %0").arg(i)); + parentItem->appendRow(item); + } + for (int i = 0; i < 2; ++i) { + parentItem = model.invisibleRootItem()->child(i, 0); + for (int j = 0; j < 2; ++j) { + QStandardItem *item = new QStandardItem(QString("item %0.%1").arg(i).arg(j)); + parentItem->appendRow(item); + } + } + + sel = model.index(0, 0).child(0, 0); + selectionModel.select(sel, QItemSelectionModel::Select); + QModelIndex sel2 = model.index(1, 0).child(0, 0); + selectionModel.select(sel2, QItemSelectionModel::Select); + + QVERIFY(selectionModel.selection().contains(sel)); + QVERIFY(selectionModel.selection().contains(sel2)); + deselectSpy.clear(); + model.removeRow(0, model.index(0, 0)); + QVERIFY(deselectSpy.count() == 1); + QVERIFY(!selectionModel.selection().contains(sel)); + QVERIFY(selectionModel.selection().contains(sel2)); +} + +void tst_QItemSelectionModel::task260134_layoutChangedWithAllSelected() +{ + QStringListModel model( QStringList() << "foo" << "bar" << "foo2"); + QSortFilterProxyModel proxy; + proxy.setSourceModel(&model); + QItemSelectionModel selection(&proxy); + + + QCOMPARE(model.rowCount(), 3); + QCOMPARE(proxy.rowCount(), 3); + proxy.setFilterRegExp( QRegExp("f")); + QCOMPARE(proxy.rowCount(), 2); + + QList indexList; + indexList << proxy.index(0,0) << proxy.index(1,0); + selection.select( QItemSelection(indexList.first(), indexList.last()), QItemSelectionModel::Select); + + //let's check the selection hasn't changed + QCOMPARE(selection.selectedIndexes().count(), indexList.count()); + foreach(QPersistentModelIndex index, indexList) + QVERIFY(selection.isSelected(index)); + + proxy.setFilterRegExp(QRegExp()); + QCOMPARE(proxy.rowCount(), 3); + + //let's check the selection hasn't changed + QCOMPARE(selection.selectedIndexes().count(), indexList.count()); + foreach(QPersistentModelIndex index, indexList) + QVERIFY(selection.isSelected(index)); +} + + +void tst_QItemSelectionModel::QTBUG5671_layoutChangedWithAllSelected() +{ + struct MyFilterModel : public QSortFilterProxyModel + { // Override sort filter proxy to remove even numbered rows. + bool filtering; + virtual bool filterAcceptsRow( int source_row, const QModelIndex& /* source_parent */) const + { + return !filtering || !( source_row & 1 ); + } + }; + + //same as task260134_layoutChangedWithAllSelected but with a sightly bigger model + + enum { cNumRows=30, cNumCols=20 }; + + QStandardItemModel model(cNumRows, cNumCols); + MyFilterModel proxy; + proxy.filtering = true; + proxy.setSourceModel(&model); + QItemSelectionModel selection(&proxy); + + // Populate the tree view. + for (unsigned int i = 0; i < cNumCols; i++) + model.setHeaderData( i, Qt::Horizontal, QString::fromLatin1("Column %1").arg(i)); + + for (unsigned int r = 0; r < cNumRows; r++) { + for (unsigned int c = 0; c < cNumCols; c++) { + model.setData(model.index(r, c, QModelIndex()), + QString::fromLatin1("r:%1/c:%2").arg(r, c)); + } + } + + + QCOMPARE(model.rowCount(), int(cNumRows)); + QCOMPARE(proxy.rowCount(), int(cNumRows/2)); + + selection.select( QItemSelection(proxy.index(0,0), proxy.index(proxy.rowCount() - 1, proxy.columnCount() - 1)), QItemSelectionModel::Select); + + QList indexList; + foreach(const QModelIndex &id, selection.selectedIndexes()) + indexList << id; + + proxy.filtering = false; + proxy.invalidate(); + QCOMPARE(proxy.rowCount(), int(cNumRows)); + + //let's check the selection hasn't changed + QCOMPARE(selection.selectedIndexes().count(), indexList.count()); + foreach(QPersistentModelIndex index, indexList) + QVERIFY(selection.isSelected(index)); +} + +void tst_QItemSelectionModel::QTBUG2804_layoutChangedTreeSelection() +{ + QStandardItemModel model; + QStandardItem top1("Child1"), top2("Child2"), top3("Child3"); + QStandardItem sub11("Alpha"), sub12("Beta"), sub13("Gamma"), sub14("Delta"), + sub21("Alpha"), sub22("Beta"), sub23("Gamma"), sub24("Delta"); + top1.appendColumn(QList() << &sub11 << &sub12 << &sub13 << &sub14); + top2.appendColumn(QList() << &sub21 << &sub22 << &sub23 << &sub24); + model.appendColumn(QList() << &top1 << &top2 << &top3); + + QItemSelectionModel selModel(&model); + + selModel.select(sub11.index(), QItemSelectionModel::Select); + selModel.select(sub12.index(), QItemSelectionModel::Select); + selModel.select(sub21.index(), QItemSelectionModel::Select); + selModel.select(sub23.index(), QItemSelectionModel::Select); + + QModelIndexList list = selModel.selectedIndexes(); + QCOMPARE(list.count(), 4); + + model.sort(0); //this will provoke a relayout + + QCOMPARE(selModel.selectedIndexes().count(), 4); +} + +class RemovalObserver : public QObject +{ + Q_OBJECT + QItemSelectionModel *m_itemSelectionModel; +public: + RemovalObserver(QItemSelectionModel *selectionModel) + : m_itemSelectionModel(selectionModel) + { + connect(m_itemSelectionModel, SIGNAL(selectionChanged(QItemSelection, QItemSelection)), SLOT(selectionChanged(QItemSelection, QItemSelection))); + } + +public slots: + void selectionChanged(const QItemSelection & /* selected */, const QItemSelection &deselected) + { + foreach(const QModelIndex &index, deselected.indexes()) { + QVERIFY(!m_itemSelectionModel->selection().contains(index)); + } + QVERIFY(m_itemSelectionModel->selection().size() == 2); + } + +}; + +void tst_QItemSelectionModel::deselectRemovedMiddleRange() +{ + QStandardItemModel model(8, 0); + + for (int row = 0; row < 8; ++row) { + static const int column = 0; + QStandardItem *item = new QStandardItem(QString::number(row)); + model.setItem(row, column, item); + } + + QItemSelectionModel selModel(&model); + + selModel.select(QItemSelection(model.index(3, 0), model.index(6, 0)), QItemSelectionModel::Select); + + QVERIFY(selModel.selection().size() == 1); + + RemovalObserver ro(&selModel); + + QSignalSpy spy(&selModel, SIGNAL(selectionChanged(QItemSelection, QItemSelection))); + bool ok = model.removeRows(4, 2); + + QVERIFY(ok); + QVERIFY(spy.size() == 1); +} + +static QStandardItemModel* getModel(QObject *parent) +{ + QStandardItemModel *model = new QStandardItemModel(parent); + + for (int i = 0; i < 4; ++i) { + QStandardItem *parentItem = model->invisibleRootItem(); + QList list; + for (int j = 0; j < 4; ++j) { + list.append(new QStandardItem(QString("item %1, %2").arg(i).arg(j))); + } + parentItem->appendRow(list); + parentItem = list.first(); + for (int j = 0; j < 4; ++j) { + QList list; + for (int k = 0; k < 4; ++k) { + list.append(new QStandardItem(QString("item %1, %2").arg(i).arg(j))); + } + parentItem->appendRow(list); + } + } + return model; +} + +enum Result { + LessThan, + NotLessThan, + NotEqual +}; + +Q_DECLARE_METATYPE(Result); + +void tst_QItemSelectionModel::rangeOperatorLessThan_data() +{ + QTest::addColumn("parent1"); + QTest::addColumn("top1"); + QTest::addColumn("left1"); + QTest::addColumn("bottom1"); + QTest::addColumn("right1"); + QTest::addColumn("parent2"); + QTest::addColumn("top2"); + QTest::addColumn("left2"); + QTest::addColumn("bottom2"); + QTest::addColumn("right2"); + QTest::addColumn("result"); + + QTest::newRow("lt01") << -1 << 0 << 0 << 3 << 3 + << -1 << 0 << 0 << 3 << 3 << NotLessThan; + + QTest::newRow("lt02") << -1 << 0 << 0 << 2 << 3 + << -1 << 0 << 0 << 3 << 3 << LessThan; + QTest::newRow("lt03") << -1 << 0 << 0 << 3 << 2 + << -1 << 0 << 0 << 3 << 3 << LessThan; + QTest::newRow("lt04") << -1 << 0 << 0 << 2 << 2 + << -1 << 0 << 0 << 3 << 3 << LessThan; + + QTest::newRow("lt05") << -1 << 0 << 0 << 3 << 3 + << -1 << 0 << 0 << 2 << 3 << NotLessThan; + QTest::newRow("lt06") << -1 << 0 << 0 << 3 << 3 + << -1 << 0 << 0 << 3 << 2 << NotLessThan; + QTest::newRow("lt07") << -1 << 0 << 0 << 3 << 3 + << -1 << 0 << 0 << 2 << 2 << NotLessThan; + + QTest::newRow("lt08") << -1 << 0 << 0 << 3 << 3 + << 0 << 0 << 0 << 3 << 3 << NotEqual; + QTest::newRow("lt09") << 1 << 0 << 0 << 3 << 3 + << 0 << 0 << 0 << 3 << 3 << NotEqual; + QTest::newRow("lt10") << 1 << 0 << 0 << 1 << 1 + << 0 << 2 << 2 << 3 << 3 << NotEqual; + QTest::newRow("lt11") << 1 << 2 << 2 << 3 << 3 + << 0 << 0 << 0 << 1 << 1 << NotEqual; + + QTest::newRow("lt12") << -1 << 0 << 0 << 1 << 1 + << -1 << 2 << 2 << 3 << 3 << LessThan; + QTest::newRow("lt13") << -1 << 2 << 2 << 3 << 3 + << -1 << 0 << 0 << 1 << 1 << NotLessThan; + QTest::newRow("lt14") << 1 << 0 << 0 << 1 << 1 + << 1 << 2 << 2 << 3 << 3 << LessThan; + QTest::newRow("lt15") << 1 << 2 << 2 << 3 << 3 + << 1 << 0 << 0 << 1 << 1 << NotLessThan; + + QTest::newRow("lt16") << -1 << 0 << 0 << 2 << 2 + << -1 << 1 << 1 << 3 << 3 << LessThan; + QTest::newRow("lt17") << -1 << 1 << 1 << 3 << 3 + << -1 << 0 << 0 << 2 << 2 << NotLessThan; + QTest::newRow("lt18") << 1 << 0 << 0 << 2 << 2 + << 1 << 1 << 1 << 3 << 3 << LessThan; + QTest::newRow("lt19") << 1 << 1 << 1 << 3 << 3 + << 1 << 0 << 0 << 2 << 2 << NotLessThan; +} + +void tst_QItemSelectionModel::rangeOperatorLessThan() +{ + QStandardItemModel *model1 = getModel(this); + QStandardItemModel *model2 = getModel(this); + + QFETCH(int, parent1); + QFETCH(int, top1); + QFETCH(int, left1); + QFETCH(int, bottom1); + QFETCH(int, right1); + QFETCH(int, parent2); + QFETCH(int, top2); + QFETCH(int, left2); + QFETCH(int, bottom2); + QFETCH(int, right2); + QFETCH(Result, result); + + QModelIndex p1 = model1->index(parent1, 0); + + QModelIndex tl1 = model1->index(top1, left1, p1); + QModelIndex br1 = model1->index(bottom1, right1, p1); + + QItemSelectionRange r1(tl1, br1); + + QModelIndex p2 = model1->index(parent2, 0); + + QModelIndex tl2 = model1->index(top2, left2, p2); + QModelIndex br2 = model1->index(bottom2, right2, p2); + + QItemSelectionRange r2(tl2, br2); + + if (result == LessThan) + QVERIFY(r1 < r2); + else if (result == NotLessThan) + QVERIFY(!(r1 < r2)); + else if (result == NotEqual) + if (!(r1 < r2)) + QVERIFY(r2 < r1); + + // Ranges in different models are always non-equal + + QModelIndex p3 = model2->index(parent1, 0); + + QModelIndex tl3 = model2->index(top1, left1, p3); + QModelIndex br3 = model2->index(bottom1, right1, p3); + + QItemSelectionRange r3(tl3, br3); + + if (!(r1 < r3)) + QVERIFY(r3 < r1); + + if (!(r2 < r3)) + QVERIFY(r3 < r2); + + QModelIndex p4 = model2->index(parent2, 0); + + QModelIndex tl4 = model2->index(top2, left2, p4); + QModelIndex br4 = model2->index(bottom2, right2, p4); + + QItemSelectionRange r4(tl4, br4); + + if (!(r1 < r4)) + QVERIFY(r4 < r1); + + if (!(r2 < r4)) + QVERIFY(r4 < r2); +} + +void tst_QItemSelectionModel::testDifferentModels() +{ + QStandardItemModel model1; + QStandardItemModel model2; + QStandardItem top11("Child1"), top12("Child2"), top13("Child3"); + QStandardItem top21("Child1"), top22("Child2"), top23("Child3"); + + model1.appendColumn(QList() << &top11 << &top12 << &top13); + model2.appendColumn(QList() << &top21 << &top22 << &top23); + + + QModelIndex topIndex1 = model1.index(0, 0); + QModelIndex bottomIndex1 = model1.index(2, 0); + QModelIndex topIndex2 = model2.index(0, 0); + + QItemSelectionRange range(topIndex1, bottomIndex1); + + QVERIFY(range.intersects(QItemSelectionRange(topIndex1, topIndex1))); + QVERIFY(!range.intersects(QItemSelectionRange(topIndex2, topIndex2))); + + QItemSelection newSelection; + QItemSelection::split(range, QItemSelectionRange(topIndex2, topIndex2), &newSelection); + + QVERIFY(newSelection.isEmpty()); +} + +class SelectionObserver : public QObject +{ + Q_OBJECT +public: + SelectionObserver(QAbstractItemModel *model, QObject *parent = 0) + : QObject(parent), m_model(model), m_selectionModel(0) + { + connect(model, SIGNAL(modelReset()), SLOT(modelReset())); + } + + void setSelectionModel(QItemSelectionModel *selectionModel) + { + m_selectionModel = selectionModel; + connect(m_selectionModel, SIGNAL(selectionChanged(QItemSelection,QItemSelection)), SLOT(selectionChanged(QItemSelection,QItemSelection))); + } + + private slots: + void modelReset() + { + const QModelIndex idx = m_model->index(2, 0); + QVERIFY(idx.isValid()); + m_selectionModel->select(QItemSelection(idx, idx), QItemSelectionModel::Clear); + } + + void selectionChanged(const QItemSelection &selected, const QItemSelection &deselected) + { + foreach(const QItemSelectionRange &range, selected) + QVERIFY(range.isValid()); + foreach(const QItemSelectionRange &range, deselected) + QVERIFY(range.isValid()); + } + +private: + QAbstractItemModel *m_model; + QItemSelectionModel *m_selectionModel; +}; + +void tst_QItemSelectionModel::testValidRangesInSelectionsAfterReset() +{ + QStringListModel model; + + QStringList strings; + strings << "one" + << "two" + << "three" + << "four" + << "five"; + + model.setStringList(strings); + + SelectionObserver observer(&model); + + QItemSelectionModel selectionModel(&model); + + selectionModel.select(QItemSelection(model.index(1, 0), model.index(3, 0)), QItemSelectionModel::Select); + + // Cause d->ranges to contain something. + model.insertRows(2, 1); + + observer.setSelectionModel(&selectionModel); + + model.setStringList(strings); +} + +class DuplicateItemSelectionModel : public QItemSelectionModel +{ + Q_OBJECT +public: + DuplicateItemSelectionModel(QItemSelectionModel *target, QAbstractItemModel *model, QObject *parent = 0) + : QItemSelectionModel(model, parent), m_target(target) + { + + } + + void select(const QItemSelection &selection, QItemSelectionModel::SelectionFlags command) + { + QItemSelectionModel::select(selection, command); + m_target->select(selection, command); + } + + using QItemSelectionModel::select; + + void setCurrentIndex(const QModelIndex &index, QItemSelectionModel::SelectionFlags command) + { + QItemSelectionModel::setCurrentIndex(index, command); + m_target->setCurrentIndex(index, command); + } + + void clearCurrentIndex() + { + QItemSelectionModel::clearCurrentIndex(); + m_target->clearCurrentIndex(); + } + +private: + QItemSelectionModel *m_target; + +}; + +void tst_QItemSelectionModel::testChainedSelectionClear() +{ + QStringListModel model(QStringList() << "Apples" << "Pears"); + + QItemSelectionModel selectionModel(&model, 0); + DuplicateItemSelectionModel duplicate(&selectionModel, &model, 0); + + duplicate.select(model.index(0, 0), QItemSelectionModel::Select); + + { + QModelIndexList selectedIndexes = selectionModel.selection().indexes(); + QModelIndexList duplicatedIndexes = duplicate.selection().indexes(); + + QVERIFY(selectedIndexes.size() == duplicatedIndexes.size()); + QVERIFY(selectedIndexes.size() == 1); + QVERIFY(selectedIndexes.first() == model.index(0, 0)); + } + + duplicate.clearSelection(); + + { + QModelIndexList selectedIndexes = selectionModel.selection().indexes(); + QModelIndexList duplicatedIndexes = duplicate.selection().indexes(); + + QVERIFY(selectedIndexes.size() == duplicatedIndexes.size()); + QVERIFY(selectedIndexes.size() == 0); + } + + duplicate.setCurrentIndex(model.index(0, 0), QItemSelectionModel::NoUpdate); + + QVERIFY(selectionModel.currentIndex() == duplicate.currentIndex()); + + duplicate.clearCurrentIndex(); + + QVERIFY(!duplicate.currentIndex().isValid()); + QVERIFY(selectionModel.currentIndex() == duplicate.currentIndex()); +} + +void tst_QItemSelectionModel::testClearCurrentIndex() +{ + QStringListModel model(QStringList() << "Apples" << "Pears"); + + QItemSelectionModel selectionModel(&model, 0); + + QSignalSpy currentIndexSpy(&selectionModel, SIGNAL(currentChanged(QModelIndex,QModelIndex))); + + QModelIndex firstIndex = model.index(0, 0); + QVERIFY(firstIndex.isValid()); + selectionModel.setCurrentIndex(firstIndex, QItemSelectionModel::NoUpdate); + QVERIFY(selectionModel.currentIndex() == firstIndex); + QVERIFY(currentIndexSpy.size() == 1); + + selectionModel.clearCurrentIndex(); + + QVERIFY(selectionModel.currentIndex() == QModelIndex()); + QVERIFY(currentIndexSpy.size() == 2); +} + +QTEST_MAIN(tst_QItemSelectionModel) +#include "tst_qitemselectionmodel.moc" diff --git a/tests/auto/corelib/itemmodels/qsortfilterproxymodel/.gitignore b/tests/auto/corelib/itemmodels/qsortfilterproxymodel/.gitignore new file mode 100644 index 0000000000..d3672fe4ae --- /dev/null +++ b/tests/auto/corelib/itemmodels/qsortfilterproxymodel/.gitignore @@ -0,0 +1 @@ +tst_qsortfilterproxymodel diff --git a/tests/auto/corelib/itemmodels/qsortfilterproxymodel/qsortfilterproxymodel.pro b/tests/auto/corelib/itemmodels/qsortfilterproxymodel/qsortfilterproxymodel.pro new file mode 100644 index 0000000000..d6e949f73d --- /dev/null +++ b/tests/auto/corelib/itemmodels/qsortfilterproxymodel/qsortfilterproxymodel.pro @@ -0,0 +1,9 @@ +CONFIG += testcase +TARGET = tst_qsortfilterproxymodel + +QT += gui widgets testlib +mtdir = ../../../other/modeltest + +INCLUDEPATH += $$PWD/$${mtdir} +SOURCES += tst_qsortfilterproxymodel.cpp $${mtdir}/dynamictreemodel.cpp $${mtdir}/modeltest.cpp +HEADERS += $${mtdir}/dynamictreemodel.h $${mtdir}/modeltest.h diff --git a/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp b/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp new file mode 100644 index 0000000000..cc8299e28f --- /dev/null +++ b/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp @@ -0,0 +1,3463 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + + +#include +#include "dynamictreemodel.h" +#include "modeltest.h" + +#include +#include +#include + +#include + +typedef QList IntList; +typedef QPair IntPair; +typedef QList IntPairList; + +Q_DECLARE_METATYPE(IntList) +Q_DECLARE_METATYPE(IntPair) +Q_DECLARE_METATYPE(IntPairList) +Q_DECLARE_METATYPE(QModelIndex) + +class tst_QSortFilterProxyModel : public QObject +{ + Q_OBJECT + +public: + + tst_QSortFilterProxyModel(); + virtual ~tst_QSortFilterProxyModel(); + +public slots: + void initTestCase(); + void cleanupTestCase(); + void init(); + void cleanup(); + +private slots: + void getSetCheck(); + void sort_data(); + void sort(); + void sortHierarchy_data(); + void sortHierarchy(); + + void insertRows_data(); + void insertRows(); + void prependRow(); +// void insertColumns_data(); +// void insertColumns(); + void removeRows_data(); + void removeRows(); + void removeColumns_data(); + void removeColumns(); + void insertAfterSelect(); + void removeAfterSelect(); + void filter_data(); + void filter(); + void filterHierarchy_data(); + void filterHierarchy(); + void filterColumns_data(); + void filterColumns(); + + void filterTable(); + void filterCurrent(); + + void changeSourceLayout(); + void removeSourceRows_data(); + void removeSourceRows(); + void insertSourceRows_data(); + void insertSourceRows(); + void changeFilter_data(); + void changeFilter(); + void changeSourceData_data(); + void changeSourceData(); + void sortFilterRole(); + void selectionFilteredOut(); + void match_data(); + void match(); + void insertIntoChildrenlessItem(); + void invalidateMappedChildren(); + void insertRowIntoFilteredParent(); + void filterOutParentAndFilterInChild(); + + void sourceInsertRows(); + void sourceModelDeletion(); + + void sortColumnTracking1(); + void sortColumnTracking2(); + + void sortStable(); + + void task236755_hiddenColumns(); + void task247867_insertRowsSort(); + void task248868_staticSorting(); + void task248868_dynamicSorting(); + void task250023_fetchMore(); + void task251296_hiddenChildren(); + void task252507_mapFromToSource(); + void task255652_removeRowsRecursive(); + void taskQTBUG_6205_doubleProxySelectionSetSourceModel(); + void taskQTBUG_7537_appearsAndSort(); + void taskQTBUG_7716_unnecessaryDynamicSorting(); + void taskQTBUG_10287_unnecessaryMapCreation(); + void taskQTBUG_17812_resetInvalidate_data(); + void taskQTBUG_17812_resetInvalidate(); + + void testMultipleProxiesWithSelection(); + void mapSelectionFromSource(); + void filteredColumns(); + + void testParentLayoutChanged(); + void moveSourceRows(); + +protected: + void buildHierarchy(const QStringList &data, QAbstractItemModel *model); + void checkHierarchy(const QStringList &data, const QAbstractItemModel *model); + +private: + QStandardItemModel *m_model; + QSortFilterProxyModel *m_proxy; +}; + +// Testing get/set functions +void tst_QSortFilterProxyModel::getSetCheck() +{ + QSortFilterProxyModel obj1; + QCOMPARE(obj1.sourceModel(), (QAbstractItemModel *)0); + // int QSortFilterProxyModel::filterKeyColumn() + // void QSortFilterProxyModel::setFilterKeyColumn(int) + obj1.setFilterKeyColumn(0); + QCOMPARE(0, obj1.filterKeyColumn()); + obj1.setFilterKeyColumn(INT_MIN); + QCOMPARE(INT_MIN, obj1.filterKeyColumn()); + obj1.setFilterKeyColumn(INT_MAX); + QCOMPARE(INT_MAX, obj1.filterKeyColumn()); +} + +tst_QSortFilterProxyModel::tst_QSortFilterProxyModel() + : m_model(0), m_proxy(0) +{ + +} + +tst_QSortFilterProxyModel::~tst_QSortFilterProxyModel() +{ + +} + +void tst_QSortFilterProxyModel::initTestCase() +{ + qRegisterMetaType("QModelIndex"); + qRegisterMetaType("IntList"); + qRegisterMetaType("IntPair"); + qRegisterMetaType("IntPairList"); + m_model = new QStandardItemModel(0, 1); + m_proxy = new QSortFilterProxyModel(); + m_proxy->setSourceModel(m_model); +} + +void tst_QSortFilterProxyModel::cleanupTestCase() +{ + delete m_proxy; + delete m_model; +} + +void tst_QSortFilterProxyModel::init() +{ +} + +void tst_QSortFilterProxyModel::cleanup() +{ + m_proxy->setFilterRegExp(QRegExp()); + m_proxy->sort(-1, Qt::AscendingOrder); + m_model->clear(); + m_model->insertColumns(0, 1); +} + +/* + tests +*/ + +void tst_QSortFilterProxyModel::sort_data() +{ + QTest::addColumn("sortOrder"); + QTest::addColumn("sortCaseSensitivity"); + QTest::addColumn("initial"); + QTest::addColumn("expected"); + + QTest::newRow("flat descending") << static_cast(Qt::DescendingOrder) + << int(Qt::CaseSensitive) + << (QStringList() + << "delta" + << "yankee" + << "bravo" + << "lima" + << "charlie" + << "juliet" + << "tango" + << "hotel" + << "uniform" + << "alpha" + << "echo" + << "golf" + << "quebec" + << "foxtrot" + << "india" + << "romeo" + << "november" + << "oskar" + << "zulu" + << "kilo" + << "whiskey" + << "mike" + << "papa" + << "sierra" + << "xray" + << "viktor") + << (QStringList() + << "zulu" + << "yankee" + << "xray" + << "whiskey" + << "viktor" + << "uniform" + << "tango" + << "sierra" + << "romeo" + << "quebec" + << "papa" + << "oskar" + << "november" + << "mike" + << "lima" + << "kilo" + << "juliet" + << "india" + << "hotel" + << "golf" + << "foxtrot" + << "echo" + << "delta" + << "charlie" + << "bravo" + << "alpha"); + QTest::newRow("flat ascending") << static_cast(Qt::AscendingOrder) + << int(Qt::CaseSensitive) + << (QStringList() + << "delta" + << "yankee" + << "bravo" + << "lima" + << "charlie" + << "juliet" + << "tango" + << "hotel" + << "uniform" + << "alpha" + << "echo" + << "golf" + << "quebec" + << "foxtrot" + << "india" + << "romeo" + << "november" + << "oskar" + << "zulu" + << "kilo" + << "whiskey" + << "mike" + << "papa" + << "sierra" + << "xray" + << "viktor") + << (QStringList() + << "alpha" + << "bravo" + << "charlie" + << "delta" + << "echo" + << "foxtrot" + << "golf" + << "hotel" + << "india" + << "juliet" + << "kilo" + << "lima" + << "mike" + << "november" + << "oskar" + << "papa" + << "quebec" + << "romeo" + << "sierra" + << "tango" + << "uniform" + << "viktor" + << "whiskey" + << "xray" + << "yankee" + << "zulu"); + QTest::newRow("case insensitive") << static_cast(Qt::AscendingOrder) + << int(Qt::CaseInsensitive) + << (QStringList() + << "alpha" << "BETA" << "Gamma" << "delta") + << (QStringList() + << "alpha" << "BETA" << "delta" << "Gamma"); + QTest::newRow("case sensitive") << static_cast(Qt::AscendingOrder) + << int(Qt::CaseSensitive) + << (QStringList() + << "alpha" << "BETA" << "Gamma" << "delta") + << (QStringList() + << "BETA" << "Gamma" << "alpha" << "delta"); + + + QStringList list; + for (int i = 10000; i < 20000; ++i) + list.append(QString("Number: %1").arg(i)); + QTest::newRow("large set ascending") << static_cast(Qt::AscendingOrder) << int(Qt::CaseSensitive) << list << list; +} + +void tst_QSortFilterProxyModel::sort() +{ + QFETCH(int, sortOrder); + QFETCH(int, sortCaseSensitivity); + QFETCH(QStringList, initial); + QFETCH(QStringList, expected); + + // prepare model + QStandardItem *root = m_model->invisibleRootItem (); + QList items; + for (int i = 0; i < initial.count(); ++i) { + items.append(new QStandardItem(initial.at(i))); + } + root->insertRows(0, items); + QCOMPARE(m_model->rowCount(QModelIndex()), initial.count()); + QCOMPARE(m_model->columnCount(QModelIndex()), 1); + + // make sure the proxy is unsorted + QCOMPARE(m_proxy->columnCount(QModelIndex()), 1); + QCOMPARE(m_proxy->rowCount(QModelIndex()), initial.count()); + for (int row = 0; row < m_proxy->rowCount(QModelIndex()); ++row) { + QModelIndex index = m_proxy->index(row, 0, QModelIndex()); + QCOMPARE(m_proxy->data(index, Qt::DisplayRole).toString(), initial.at(row)); + } + + // sort + m_proxy->sort(0, static_cast(sortOrder)); + m_proxy->setSortCaseSensitivity(static_cast(sortCaseSensitivity)); + + // make sure the model is unchanged + for (int row = 0; row < m_model->rowCount(QModelIndex()); ++row) { + QModelIndex index = m_model->index(row, 0, QModelIndex()); + QCOMPARE(m_model->data(index, Qt::DisplayRole).toString(), initial.at(row)); + } + // make sure the proxy is sorted + for (int row = 0; row < m_proxy->rowCount(QModelIndex()); ++row) { + QModelIndex index = m_proxy->index(row, 0, QModelIndex()); + QCOMPARE(m_proxy->data(index, Qt::DisplayRole).toString(), expected.at(row)); + } + + // restore the unsorted order + m_proxy->sort(-1); + + // make sure the proxy is unsorted again + for (int row = 0; row < m_proxy->rowCount(QModelIndex()); ++row) { + QModelIndex index = m_proxy->index(row, 0, QModelIndex()); + QCOMPARE(m_proxy->data(index, Qt::DisplayRole).toString(), initial.at(row)); + } + +} + +void tst_QSortFilterProxyModel::sortHierarchy_data() +{ + QTest::addColumn("sortOrder"); + QTest::addColumn("initial"); + QTest::addColumn("expected"); + + QTest::newRow("flat ascending") + << static_cast(Qt::AscendingOrder) + << (QStringList() + << "c" << "f" << "d" << "e" << "a" << "b") + << (QStringList() + << "a" << "b" << "c" << "d" << "e" << "f"); + + QTest::newRow("simple hierarchy") + << static_cast(Qt::AscendingOrder) + << (QStringList() << "a" << "<" << "b" << "<" << "c" << ">" << ">") + << (QStringList() << "a" << "<" << "b" << "<" << "c" << ">" << ">"); + + QTest::newRow("hierarchical ascending") + << static_cast(Qt::AscendingOrder) + << (QStringList() + << "c" + << "<" + << "h" + << "<" + << "2" + << "0" + << "1" + << ">" + << "g" + << "i" + << ">" + << "b" + << "<" + << "l" + << "k" + << "<" + << "8" + << "7" + << "9" + << ">" + << "m" + << ">" + << "a" + << "<" + << "z" + << "y" + << "x" + << ">") + << (QStringList() + << "a" + << "<" + << "x" + << "y" + << "z" + << ">" + << "b" + << "<" + << "k" + << "<" + << "7" + << "8" + << "9" + << ">" + << "l" + << "m" + << ">" + << "c" + << "<" + << "g" + << "h" + << "<" + << "0" + << "1" + << "2" + << ">" + << "i" + << ">"); +} + +void tst_QSortFilterProxyModel::sortHierarchy() +{ + QFETCH(int, sortOrder); + QFETCH(QStringList, initial); + QFETCH(QStringList, expected); + + buildHierarchy(initial, m_model); + checkHierarchy(initial, m_model); + checkHierarchy(initial, m_proxy); + m_proxy->sort(0, static_cast(sortOrder)); + checkHierarchy(initial, m_model); + checkHierarchy(expected, m_proxy); +} + +void tst_QSortFilterProxyModel::insertRows_data() +{ + QTest::addColumn("initial"); + QTest::addColumn("expected"); + QTest::addColumn("insert"); + QTest::addColumn("position"); + + QTest::newRow("insert one row in the middle") + << (QStringList() + << "One" + << "Two" + << "Four" + << "Five") + << (QStringList() + << "One" + << "Two" + << "Three" + << "Four" + << "Five") + << (QStringList() + << "Three") + << 2; + + QTest::newRow("insert one row in the beginning") + << (QStringList() + << "Two" + << "Three" + << "Four" + << "Five") + << (QStringList() + << "One" + << "Two" + << "Three" + << "Four" + << "Five") + << (QStringList() + << "One") + << 0; + + QTest::newRow("insert one row in the end") + << (QStringList() + << "One" + << "Two" + << "Three" + << "Four") + << (QStringList() + << "One" + << "Two" + << "Three" + << "Four" + << "Five") + << (QStringList() + <<"Five") + << 4; +} + +void tst_QSortFilterProxyModel::insertRows() +{ + QFETCH(QStringList, initial); + QFETCH(QStringList, expected); + QFETCH(QStringList, insert); + QFETCH(int, position); + // prepare model + m_model->insertRows(0, initial.count(), QModelIndex()); + //m_model->insertColumns(0, 1, QModelIndex()); + QCOMPARE(m_model->columnCount(QModelIndex()), 1); + QCOMPARE(m_model->rowCount(QModelIndex()), initial.count()); + for (int row = 0; row < m_model->rowCount(QModelIndex()); ++row) { + QModelIndex index = m_model->index(row, 0, QModelIndex()); + m_model->setData(index, initial.at(row), Qt::DisplayRole); + } + // make sure the model correct before insert + for (int row = 0; row < m_model->rowCount(QModelIndex()); ++row) { + QModelIndex index = m_model->index(row, 0, QModelIndex()); + QCOMPARE(m_model->data(index, Qt::DisplayRole).toString(), initial.at(row)); + } + // make sure the proxy is correct before insert + for (int row = 0; row < m_proxy->rowCount(QModelIndex()); ++row) { + QModelIndex index = m_proxy->index(row, 0, QModelIndex()); + QCOMPARE(m_proxy->data(index, Qt::DisplayRole).toString(), initial.at(row)); + } + + // insert the row + m_proxy->insertRows(position, insert.count(), QModelIndex()); + QCOMPARE(m_model->rowCount(QModelIndex()), expected.count()); + QCOMPARE(m_proxy->rowCount(QModelIndex()), expected.count()); + + // set the data for the inserted row + for (int i = 0; i < insert.count(); ++i) { + QModelIndex index = m_proxy->index(position + i, 0, QModelIndex()); + m_proxy->setData(index, insert.at(i), Qt::DisplayRole); + } + + // make sure the model correct after insert + for (int row = 0; row < m_model->rowCount(QModelIndex()); ++row) { + QModelIndex index = m_model->index(row, 0, QModelIndex()); + QCOMPARE(m_model->data(index, Qt::DisplayRole).toString(), expected.at(row)); + } + + // make sure the proxy is correct after insert + for (int row = 0; row < m_proxy->rowCount(QModelIndex()); ++row) { + QModelIndex index = m_proxy->index(row, 0, QModelIndex()); + QCOMPARE(m_proxy->data(index, Qt::DisplayRole).toString(), expected.at(row)); + } +} + +void tst_QSortFilterProxyModel::prependRow() +{ + //this tests that data is correctly handled by the sort filter when prepending a row + QStandardItemModel model; + QSortFilterProxyModel proxy; + proxy.setSourceModel(&model); + + QStandardItem item("root"); + model.appendRow(&item); + + QStandardItem sub("sub"); + item.appendRow(&sub); + + sub.appendRow(new QStandardItem("test1")); + sub.appendRow(new QStandardItem("test2")); + + QStandardItem sub2("sub2"); + sub2.appendRow(new QStandardItem("sub3")); + item.insertRow(0, &sub2); + + QModelIndex index_sub2 = proxy.mapFromSource(model.indexFromItem(&sub2)); + + QCOMPARE(sub2.rowCount(), proxy.rowCount(index_sub2)); + QCOMPARE(proxy.rowCount(QModelIndex()), 1); //only the "root" item is there +} + + +/* +void tst_QSortFilterProxyModel::insertColumns_data() +{ + +} + +void tst_QSortFilterProxyModel::insertColumns() +{ + +} +*/ + +void tst_QSortFilterProxyModel::removeRows_data() +{ + QTest::addColumn("initial"); + QTest::addColumn("sortOrder"); + QTest::addColumn("filter"); + QTest::addColumn("position"); + QTest::addColumn("count"); + QTest::addColumn("success"); + QTest::addColumn("expectedProxy"); + QTest::addColumn("expectedSource"); + + QTest::newRow("remove one row in the middle [no sorting/filter]") + << (QStringList() + << "One" + << "Two" + << "Three" + << "Four" + << "Five") + << -1 // no sorting + << QString() // no filter + << 2 // position + << 1 // count + << true // success + << (QStringList() // expectedProxy + << "One" + << "Two" + << "Four" + << "Five") + << (QStringList() // expectedSource + << "One" + << "Two" + << "Four" + << "Five"); + + QTest::newRow("remove one row in the beginning [no sorting/filter]") + << (QStringList() + << "One" + << "Two" + << "Three" + << "Four" + << "Five") + << -1 // no sorting + << QString() // no filter + << 0 // position + << 1 // count + << true // success + << (QStringList() // expectedProxy + << "Two" + << "Three" + << "Four" + << "Five") + << (QStringList() // expectedSource + << "Two" + << "Three" + << "Four" + << "Five"); + + QTest::newRow("remove one row in the end [no sorting/filter]") + << (QStringList() + << "One" + << "Two" + << "Three" + << "Four" + << "Five") + << -1 // no sorting + << QString() // no filter + << 4 // position + << 1 // count + << true // success + << (QStringList() // expectedProxy + << "One" + << "Two" + << "Three" + << "Four") + << (QStringList() // expectedSource + << "One" + << "Two" + << "Three" + << "Four"); + + QTest::newRow("remove all [no sorting/filter]") + << (QStringList() + << "One" + << "Two" + << "Three" + << "Four" + << "Five") + << -1 // no sorting + << QString() // no filter + << 0 // position + << 5 // count + << true // success + << QStringList() // expectedProxy + << QStringList(); // expectedSource + + QTest::newRow("remove one row past the end [no sorting/filter]") + << (QStringList() + << "One" + << "Two" + << "Three" + << "Four" + << "Five") + << -1 // no sorting + << QString() // no filter + << 5 // position + << 1 // count + << false // success + << (QStringList() // expectedProxy + << "One" + << "Two" + << "Three" + << "Four" + << "Five") + << (QStringList() // expectedSource + << "One" + << "Two" + << "Three" + << "Four" + << "Five"); + + QTest::newRow("remove row -1 [no sorting/filter]") + << (QStringList() + << "One" + << "Two" + << "Three" + << "Four" + << "Five") + << -1 // no sorting + << QString() // no filter + << -1 // position + << 1 // count + << false // success + << (QStringList() // expectedProxy + << "One" + << "Two" + << "Three" + << "Four" + << "Five") + << (QStringList() // expectedSource + << "One" + << "Two" + << "Three" + << "Four" + << "Five"); + + QTest::newRow("remove three rows in the middle [no sorting/filter]") + << (QStringList() + << "One" + << "Two" + << "Three" + << "Four" + << "Five") + << -1 // no sorting + << QString() // no filter + << 1 // position + << 3 // count + << true // success + << (QStringList() // expectedProxy + << "One" + << "Five") + << (QStringList() // expectedSource + << "One" + << "Five"); + + QTest::newRow("remove one row in the middle [ascending sorting, no filter]") + << (QStringList() + << "1" + << "5" + << "2" + << "4" + << "3") + << static_cast(Qt::AscendingOrder) + << QString() // no filter + << 2 // position + << 1 // count + << true // success + << (QStringList() // expectedProxy + << "1" + << "2" + << "4" + << "5") + << (QStringList() // expectedSource + << "1" + << "5" + << "2" + << "4"); + + QTest::newRow("remove two rows in the middle [ascending sorting, no filter]") + << (QStringList() + << "1" + << "5" + << "2" + << "4" + << "3") + << static_cast(Qt::AscendingOrder) + << QString() // no filter + << 2 // position + << 2 // count + << true // success + << (QStringList() // expectedProxy + << "1" + << "2" + << "5") + << (QStringList() // expectedSource + << "1" + << "5" + << "2"); + + QTest::newRow("remove two rows in the middle [descending sorting, no filter]") + << (QStringList() + << "1" + << "5" + << "2" + << "4" + << "3") + << static_cast(Qt::DescendingOrder) + << QString() // no filter + << 2 // position + << 2 // count + << true // success + << (QStringList() // expectedProxy + << "5" + << "4" + << "1") + << (QStringList() // expectedSource + << "1" + << "5" + << "4"); + + QTest::newRow("remove one row in the middle [no sorting, filter=5|2|3]") + << (QStringList() + << "1" + << "5" + << "2" + << "4" + << "3") + << -1 // no sorting + << QString("5|2|3") + << 1 // position + << 1 // count + << true // success + << (QStringList() // expectedProxy + << "5" + << "3") + << (QStringList() // expectedSource + << "1" + << "5" + << "4" + << "3"); + + QTest::newRow("remove all [ascending sorting, no filter]") + << (QStringList() + << "1" + << "5" + << "2" + << "4" + << "3") + << static_cast(Qt::AscendingOrder) + << QString() // no filter + << 0 // position + << 5 // count + << true // success + << QStringList() // expectedProxy + << QStringList(); // expectedSource +} + +void tst_QSortFilterProxyModel::removeRows() +{ + QFETCH(QStringList, initial); + QFETCH(int, sortOrder); + QFETCH(QString, filter); + QFETCH(int, position); + QFETCH(int, count); + QFETCH(bool, success); + QFETCH(QStringList, expectedProxy); + QFETCH(QStringList, expectedSource); + + QStandardItemModel model; + QSortFilterProxyModel proxy; + proxy.setSourceModel(&model); + + // prepare model + foreach (QString s, initial) + model.appendRow(new QStandardItem(s)); + + if (sortOrder != -1) + proxy.sort(0, static_cast(sortOrder)); + if (!filter.isEmpty()) + proxy.setFilterRegExp(QRegExp(filter)); + + // remove the rows + QCOMPARE(proxy.removeRows(position, count, QModelIndex()), success); + QCOMPARE(model.rowCount(QModelIndex()), expectedSource.count()); + QCOMPARE(proxy.rowCount(QModelIndex()), expectedProxy.count()); + + // make sure the model is correct after remove + for (int row = 0; row < model.rowCount(QModelIndex()); ++row) + QCOMPARE(model.item(row)->text(), expectedSource.at(row)); + + // make sure the proxy is correct after remove + for (int row = 0; row < proxy.rowCount(QModelIndex()); ++row) { + QModelIndex index = proxy.index(row, 0, QModelIndex()); + QCOMPARE(proxy.data(index, Qt::DisplayRole).toString(), expectedProxy.at(row)); + } +} + +class MyFilteredColumnProxyModel : public QSortFilterProxyModel +{ + Q_OBJECT +public: + MyFilteredColumnProxyModel(QObject *parent = 0) + : QSortFilterProxyModel(parent) { } +protected: + bool filterAcceptsColumn(int sourceColumn, const QModelIndex &) const + { + QString key = sourceModel()->headerData(sourceColumn, Qt::Horizontal).toString(); + return key.contains(filterRegExp()); + } +}; + +void tst_QSortFilterProxyModel::removeColumns_data() +{ + QTest::addColumn("initial"); + QTest::addColumn("filter"); + QTest::addColumn("position"); + QTest::addColumn("count"); + QTest::addColumn("success"); + QTest::addColumn("expectedProxy"); + QTest::addColumn("expectedSource"); + + QTest::newRow("remove one column in the middle [no filter]") + << (QStringList() + << "1" + << "2" + << "3" + << "4" + << "5") + << QString() // no filter + << 2 // position + << 1 // count + << true // success + << (QStringList() // expectedProxy + << "1" + << "2" + << "4" + << "5") + << (QStringList() // expectedSource + << "1" + << "2" + << "4" + << "5"); + + QTest::newRow("remove one column in the end [no filter]") + << (QStringList() + << "1" + << "2" + << "3" + << "4" + << "5") + << QString() // no filter + << 4 // position + << 1 // count + << true // success + << (QStringList() // expectedProxy + << "1" + << "2" + << "3" + << "4") + << (QStringList() // expectedSource + << "1" + << "2" + << "3" + << "4"); + + QTest::newRow("remove one column past the end [no filter]") + << (QStringList() + << "1" + << "2" + << "3" + << "4" + << "5") + << QString() // no filter + << 5 // position + << 1 // count + << false // success + << (QStringList() // expectedProxy + << "1" + << "2" + << "3" + << "4" + << "5") + << (QStringList() // expectedSource + << "1" + << "2" + << "3" + << "4" + << "5"); + + QTest::newRow("remove column -1 [no filter]") + << (QStringList() + << "1" + << "2" + << "3" + << "4" + << "5") + << QString() // no filter + << -1 // position + << 1 // count + << false // success + << (QStringList() // expectedProxy + << "1" + << "2" + << "3" + << "4" + << "5") + << (QStringList() // expectedSource + << "1" + << "2" + << "3" + << "4" + << "5"); + + QTest::newRow("remove all columns [no filter]") + << (QStringList() + << "1" + << "2" + << "3" + << "4" + << "5") + << QString() // no filter + << 0 // position + << 5 // count + << true // success + << QStringList() // expectedProxy + << QStringList(); // expectedSource + + QTest::newRow("remove one column in the middle [filter=1|3|5]") + << (QStringList() + << "1" + << "2" + << "3" + << "4" + << "5") + << QString("1|3|5") + << 1 // position + << 1 // count + << true // success + << (QStringList() // expectedProxy + << "1" + << "5") + << (QStringList() // expectedSource + << "1" + << "2" + << "4" + << "5"); + + QTest::newRow("remove one column in the end [filter=1|3|5]") + << (QStringList() + << "1" + << "2" + << "3" + << "4" + << "5") + << QString("1|3|5") + << 2 // position + << 1 // count + << true // success + << (QStringList() // expectedProxy + << "1" + << "3") + << (QStringList() // expectedSource + << "1" + << "2" + << "3" + << "4"); + + QTest::newRow("remove one column past the end [filter=1|3|5]") + << (QStringList() + << "1" + << "2" + << "3" + << "4" + << "5") + << QString("1|3|5") + << 3 // position + << 1 // count + << false // success + << (QStringList() // expectedProxy + << "1" + << "3" + << "5") + << (QStringList() // expectedSource + << "1" + << "2" + << "3" + << "4" + << "5"); + + QTest::newRow("remove all columns [filter=1|3|5]") + << (QStringList() + << "1" + << "2" + << "3" + << "4" + << "5") + << QString("1|3|5") + << 0 // position + << 3 // count + << true // success + << QStringList() // expectedProxy + << (QStringList() // expectedSource + << "2" + << "4"); +} + +void tst_QSortFilterProxyModel::removeColumns() +{ + QFETCH(QStringList, initial); + QFETCH(QString, filter); + QFETCH(int, position); + QFETCH(int, count); + QFETCH(bool, success); + QFETCH(QStringList, expectedProxy); + QFETCH(QStringList, expectedSource); + + QStandardItemModel model; + MyFilteredColumnProxyModel proxy; + proxy.setSourceModel(&model); + if (!filter.isEmpty()) + proxy.setFilterRegExp(QRegExp(filter)); + + // prepare model + model.setHorizontalHeaderLabels(initial); + + // remove the columns + QCOMPARE(proxy.removeColumns(position, count, QModelIndex()), success); + QCOMPARE(model.columnCount(QModelIndex()), expectedSource.count()); + QCOMPARE(proxy.columnCount(QModelIndex()), expectedProxy.count()); + + // make sure the model is correct after remove + for (int col = 0; col < model.columnCount(QModelIndex()); ++col) + QCOMPARE(model.horizontalHeaderItem(col)->text(), expectedSource.at(col)); + + // make sure the proxy is correct after remove + for (int col = 0; col < proxy.columnCount(QModelIndex()); ++col) { + QCOMPARE(proxy.headerData(col, Qt::Horizontal, Qt::DisplayRole).toString(), + expectedProxy.at(col)); + } +} + + +void tst_QSortFilterProxyModel::filterColumns_data() +{ + QTest::addColumn("pattern"); + QTest::addColumn("initial"); + QTest::addColumn("data"); + + QTest::newRow("all") << "a" + << (QStringList() + << "delta" + << "yankee" + << "bravo" + << "lima") + << true; + + QTest::newRow("some") << "lie" + << (QStringList() + << "charlie" + << "juliet" + << "tango" + << "hotel") + << true; + + QTest::newRow("nothing") << "zoo" + << (QStringList() + << "foxtrot" + << "uniform" + << "alpha" + << "golf") + << false; +} + +void tst_QSortFilterProxyModel::filterColumns() +{ + QFETCH(QString, pattern); + QFETCH(QStringList, initial); + QFETCH(bool, data); + // prepare model + m_model->setColumnCount(initial.count()); + m_model->setRowCount(1); + QCOMPARE(m_model->columnCount(QModelIndex()), initial.count()); + QCOMPARE(m_model->rowCount(QModelIndex()), 1); + // set data + QCOMPARE(m_model->rowCount(QModelIndex()), 1); + for (int col = 0; col < m_model->columnCount(QModelIndex()); ++col) { + QModelIndex index = m_model->index(0, col, QModelIndex()); + m_model->setData(index, initial.at(col), Qt::DisplayRole); + } + m_proxy->setFilterRegExp(pattern); + m_proxy->setFilterKeyColumn(-1); + // make sure the model is unchanged + for (int col = 0; col < m_model->columnCount(QModelIndex()); ++col) { + QModelIndex index = m_model->index(0, col, QModelIndex()); + QCOMPARE(m_model->data(index, Qt::DisplayRole).toString(), initial.at(col)); + } + // make sure the proxy is filtered + QModelIndex index = m_proxy->index(0, 0, QModelIndex()); + QCOMPARE(index.isValid(), data); +} + +void tst_QSortFilterProxyModel::filter_data() +{ + QTest::addColumn("pattern"); + QTest::addColumn("initial"); + QTest::addColumn("expected"); + + QTest::newRow("flat") << "e" + << (QStringList() + << "delta" + << "yankee" + << "bravo" + << "lima" + << "charlie" + << "juliet" + << "tango" + << "hotel" + << "uniform" + << "alpha" + << "echo" + << "golf" + << "quebec" + << "foxtrot" + << "india" + << "romeo" + << "november" + << "oskar" + << "zulu" + << "kilo" + << "whiskey" + << "mike" + << "papa" + << "sierra" + << "xray" + << "viktor") + << (QStringList() + << "delta" + << "yankee" + << "charlie" + << "juliet" + << "hotel" + << "echo" + << "quebec" + << "romeo" + << "november" + << "whiskey" + << "mike" + << "sierra"); +} + +void tst_QSortFilterProxyModel::filter() +{ + QFETCH(QString, pattern); + QFETCH(QStringList, initial); + QFETCH(QStringList, expected); + // prepare model + QVERIFY(m_model->insertRows(0, initial.count(), QModelIndex())); + QCOMPARE(m_model->rowCount(QModelIndex()), initial.count()); + // set data + QCOMPARE(m_model->columnCount(QModelIndex()), 1); + for (int row = 0; row < m_model->rowCount(QModelIndex()); ++row) { + QModelIndex index = m_model->index(row, 0, QModelIndex()); + m_model->setData(index, initial.at(row), Qt::DisplayRole); + } + m_proxy->setFilterRegExp(pattern); + // make sure the proxy is unfiltered + QCOMPARE(m_proxy->columnCount(QModelIndex()), 1); + QCOMPARE(m_proxy->rowCount(QModelIndex()), expected.count()); + // make sure the model is unchanged + for (int row = 0; row < m_model->rowCount(QModelIndex()); ++row) { + QModelIndex index = m_model->index(row, 0, QModelIndex()); + QCOMPARE(m_model->data(index, Qt::DisplayRole).toString(), initial.at(row)); + } + // make sure the proxy is filtered + for (int row = 0; row < m_proxy->rowCount(QModelIndex()); ++row) { + QModelIndex index = m_proxy->index(row, 0, QModelIndex()); + QCOMPARE(m_proxy->data(index, Qt::DisplayRole).toString(), expected.at(row)); + } +} + +void tst_QSortFilterProxyModel::filterHierarchy_data() +{ + QTest::addColumn("pattern"); + QTest::addColumn("initial"); + QTest::addColumn("expected"); + + QTest::newRow("flat") << ".*oo" + << (QStringList() + << "foo" << "boo" << "baz" << "moo" << "laa" << "haa") + << (QStringList() + << "foo" << "boo" << "moo"); + + QTest::newRow("simple hierarchy") << "b.*z" + << (QStringList() << "baz" << "<" << "boz" << "<" << "moo" << ">" << ">") + << (QStringList() << "baz" << "<" << "boz" << ">"); +} + +void tst_QSortFilterProxyModel::filterHierarchy() +{ + QFETCH(QString, pattern); + QFETCH(QStringList, initial); + QFETCH(QStringList, expected); + buildHierarchy(initial, m_model); + m_proxy->setFilterRegExp(pattern); + checkHierarchy(initial, m_model); + checkHierarchy(expected, m_proxy); +} + +void tst_QSortFilterProxyModel::buildHierarchy(const QStringList &l, QAbstractItemModel *m) +{ + int ind = 0; + int row = 0; + QStack row_stack; + QModelIndex parent; + QStack parent_stack; + for (int i = 0; i < l.count(); ++i) { + QString token = l.at(i); + if (token == "<") { // start table + ++ind; + parent_stack.push(parent); + row_stack.push(row); + parent = m->index(row - 1, 0, parent); + row = 0; + QVERIFY(m->insertColumns(0, 1, parent)); // add column + } else if (token == ">") { // end table + --ind; + parent = parent_stack.pop(); + row = row_stack.pop(); + } else { // append row + QVERIFY(m->insertRows(row, 1, parent)); + QModelIndex index = m->index(row, 0, parent); + QVERIFY(index.isValid()); + m->setData(index, token, Qt::DisplayRole); + ++row; + } + } +} + +void tst_QSortFilterProxyModel::checkHierarchy(const QStringList &l, const QAbstractItemModel *m) +{ + int row = 0; + int indent = 0; + QStack row_stack; + QModelIndex parent; + QStack parent_stack; + for (int i = 0; i < l.count(); ++i) { + QString token = l.at(i); + if (token == "<") { // start table + ++indent; + parent_stack.push(parent); + row_stack.push(row); + parent = m->index(row - 1, 0, parent); + QVERIFY(parent.isValid()); + row = 0; + } else if (token == ">") { // end table + --indent; + parent = parent_stack.pop(); + row = row_stack.pop(); + } else { // compare row + QModelIndex index = m->index(row, 0, parent); + QVERIFY(index.isValid()); + QString str = m->data(index, Qt::DisplayRole).toString(); + QCOMPARE(str, token); + ++row; + } + } +} + + + +class TestModel: public QAbstractTableModel +{ +public: + int rowCount(const QModelIndex &) const { return 10000; } + int columnCount(const QModelIndex &) const { return 1; } + QVariant data(const QModelIndex &index, int role) const + { + if (role != Qt::DisplayRole) + return QVariant(); + return QString::number(index.row()); + } +}; + +void tst_QSortFilterProxyModel::filterTable() +{ + TestModel model; + QSortFilterProxyModel filter; + filter.setSourceModel(&model); + filter.setFilterRegExp("9"); + + for (int i = 0; i < filter.rowCount(); ++i) + QVERIFY(filter.data(filter.index(i, 0)).toString().contains("9")); +} + +void tst_QSortFilterProxyModel::insertAfterSelect() +{ + QStandardItemModel model(10, 2); + for (int i = 0; i<10;i++) + model.setData(model.index(i, 0), QVariant(i)); + QSortFilterProxyModel filter; + filter.setSourceModel(&model); + QTreeView view; + view.setModel(&filter); + view.show(); + QModelIndex firstIndex = filter.mapFromSource(model.index(0, 0, QModelIndex())); + QCOMPARE(firstIndex.model(), (const QAbstractItemModel *)view.model()); + QVERIFY(firstIndex.isValid()); + int itemOffset = view.visualRect(firstIndex).width() / 2; + QPoint p(itemOffset, 1); + QTest::mouseClick(view.viewport(), Qt::LeftButton, Qt::NoModifier, p); + QVERIFY(view.selectionModel()->selectedIndexes().size() > 0); + model.insertRows(5, 1, QModelIndex()); + QVERIFY(view.selectionModel()->selectedIndexes().size() > 0); // Should still have a selection +} + +void tst_QSortFilterProxyModel::removeAfterSelect() +{ + QStandardItemModel model(10, 2); + for (int i = 0; i<10;i++) + model.setData(model.index(i, 0), QVariant(i)); + QSortFilterProxyModel filter; + filter.setSourceModel(&model); + QTreeView view; + view.setModel(&filter); + view.show(); + QModelIndex firstIndex = filter.mapFromSource(model.index(0, 0, QModelIndex())); + QCOMPARE(firstIndex.model(), (const QAbstractItemModel *)view.model()); + QVERIFY(firstIndex.isValid()); + int itemOffset = view.visualRect(firstIndex).width() / 2; + QPoint p(itemOffset, 1); + QTest::mouseClick(view.viewport(), Qt::LeftButton, Qt::NoModifier, p); + QVERIFY(view.selectionModel()->selectedIndexes().size() > 0); + model.removeRows(5, 1, QModelIndex()); + QVERIFY(view.selectionModel()->selectedIndexes().size() > 0); // Should still have a selection +} + +void tst_QSortFilterProxyModel::filterCurrent() +{ + QStandardItemModel model(2, 1); + model.setData(model.index(0, 0), QString("AAA")); + model.setData(model.index(1, 0), QString("BBB")); + QSortFilterProxyModel proxy; + proxy.setSourceModel(&model); + QTreeView view; + + view.show(); + view.setModel(&proxy); + QSignalSpy spy(view.selectionModel(), SIGNAL(currentChanged(QModelIndex, QModelIndex))); + + view.setCurrentIndex(proxy.index(0, 0)); + QCOMPARE(spy.count(), 1); + proxy.setFilterRegExp(QRegExp("^B")); + QCOMPARE(spy.count(), 2); +} + +void tst_QSortFilterProxyModel::changeSourceLayout() +{ + QStandardItemModel model(2, 1); + model.setData(model.index(0, 0), QString("b")); + model.setData(model.index(1, 0), QString("a")); + QSortFilterProxyModel proxy; + proxy.setSourceModel(&model); + + QList persistentSourceIndexes; + QList persistentProxyIndexes; + for (int row = 0; row < model.rowCount(); ++row) { + persistentSourceIndexes.append(model.index(row, 0)); + persistentProxyIndexes.append(proxy.index(row, 0)); + } + + // change layout of source model + model.sort(0, Qt::AscendingOrder); + + for (int row = 0; row < model.rowCount(); ++row) { + QCOMPARE(persistentProxyIndexes.at(row).row(), + persistentSourceIndexes.at(row).row()); + } +} + +void tst_QSortFilterProxyModel::removeSourceRows_data() +{ + QTest::addColumn("sourceItems"); + QTest::addColumn("start"); + QTest::addColumn("count"); + QTest::addColumn("sortOrder"); + QTest::addColumn("expectedRemovedProxyIntervals"); + QTest::addColumn("expectedProxyItems"); + + QTest::newRow("remove one, no sorting") + << (QStringList() << "a" << "b") // sourceItems + << 0 // start + << 1 // count + << -1 // sortOrder (no sorting) + << (IntPairList() << IntPair(0, 0)) // expectedRemovedIntervals + << (QStringList() << "b") // expectedProxyItems + ; + QTest::newRow("remove one, ascending sort (same order)") + << (QStringList() << "a" << "b") // sourceItems + << 0 // start + << 1 // count + << static_cast(Qt::AscendingOrder) // sortOrder + << (IntPairList() << IntPair(0, 0)) // expectedRemovedIntervals + << (QStringList() << "b") // expectedProxyItems + ; + QTest::newRow("remove one, ascending sort (reverse order)") + << (QStringList() << "b" << "a") // sourceItems + << 0 // start + << 1 // count + << static_cast(Qt::AscendingOrder) // sortOrder + << (IntPairList() << IntPair(1, 1)) // expectedRemovedIntervals + << (QStringList() << "a") // expectedProxyItems + ; + QTest::newRow("remove two, multiple proxy intervals") + << (QStringList() << "c" << "d" << "a" << "b") // sourceItems + << 1 // start + << 2 // count + << static_cast(Qt::AscendingOrder) // sortOrder + << (IntPairList() << IntPair(3, 3) << IntPair(0, 0)) // expectedRemovedIntervals + << (QStringList() << "b" << "c") // expectedProxyItems + ; + QTest::newRow("remove three, multiple proxy intervals") + << (QStringList() << "b" << "d" << "f" << "a" << "c" << "e") // sourceItems + << 3 // start + << 3 // count + << static_cast(Qt::AscendingOrder) // sortOrder + << (IntPairList() << IntPair(4, 4) << IntPair(2, 2) << IntPair(0, 0)) // expectedRemovedIntervals + << (QStringList() << "b" << "d" << "f") // expectedProxyItems + ; + QTest::newRow("remove all, single proxy intervals") + << (QStringList() << "a" << "b" << "c" << "d" << "e" << "f") // sourceItems + << 0 // start + << 6 // count + << static_cast(Qt::DescendingOrder) // sortOrder + << (IntPairList() << IntPair(0, 5)) // expectedRemovedIntervals + << QStringList() // expectedProxyItems + ; +} + +// Check that correct proxy model rows are removed when rows are removed +// from the source model +void tst_QSortFilterProxyModel::removeSourceRows() +{ + QFETCH(QStringList, sourceItems); + QFETCH(int, start); + QFETCH(int, count); + QFETCH(int, sortOrder); + QFETCH(IntPairList, expectedRemovedProxyIntervals); + QFETCH(QStringList, expectedProxyItems); + + QStandardItemModel model; + QSortFilterProxyModel proxy; + + proxy.setSourceModel(&model); + model.insertColumns(0, 1); + model.insertRows(0, sourceItems.count()); + + for (int i = 0; i < sourceItems.count(); ++i) { + QModelIndex sindex = model.index(i, 0, QModelIndex()); + model.setData(sindex, sourceItems.at(i), Qt::DisplayRole); + QModelIndex pindex = proxy.index(i, 0, QModelIndex()); + QCOMPARE(proxy.data(pindex, Qt::DisplayRole), model.data(sindex, Qt::DisplayRole)); + } + + if (sortOrder != -1) + proxy.sort(0, static_cast(sortOrder)); + (void)proxy.rowCount(QModelIndex()); // force mapping + + QSignalSpy removeSpy(&proxy, SIGNAL(rowsRemoved(QModelIndex, int, int))); + QSignalSpy insertSpy(&proxy, SIGNAL(rowsInserted(QModelIndex, int, int))); + QSignalSpy aboutToRemoveSpy(&proxy, SIGNAL(rowsAboutToBeRemoved(QModelIndex, int, int))); + QSignalSpy aboutToInsertSpy(&proxy, SIGNAL(rowsAboutToBeInserted(QModelIndex, int, int))); + + model.removeRows(start, count, QModelIndex()); + + QCOMPARE(aboutToRemoveSpy.count(), expectedRemovedProxyIntervals.count()); + for (int i = 0; i < aboutToRemoveSpy.count(); ++i) { + QList args = aboutToRemoveSpy.at(i); + QVERIFY(args.at(1).type() == QVariant::Int); + QVERIFY(args.at(2).type() == QVariant::Int); + QCOMPARE(args.at(1).toInt(), expectedRemovedProxyIntervals.at(i).first); + QCOMPARE(args.at(2).toInt(), expectedRemovedProxyIntervals.at(i).second); + } + QCOMPARE(removeSpy.count(), expectedRemovedProxyIntervals.count()); + for (int i = 0; i < removeSpy.count(); ++i) { + QList args = removeSpy.at(i); + QVERIFY(args.at(1).type() == QVariant::Int); + QVERIFY(args.at(2).type() == QVariant::Int); + QCOMPARE(args.at(1).toInt(), expectedRemovedProxyIntervals.at(i).first); + QCOMPARE(args.at(2).toInt(), expectedRemovedProxyIntervals.at(i).second); + } + + QCOMPARE(insertSpy.count(), 0); + QCOMPARE(aboutToInsertSpy.count(), 0); + + QCOMPARE(proxy.rowCount(QModelIndex()), expectedProxyItems.count()); + for (int i = 0; i < expectedProxyItems.count(); ++i) { + QModelIndex pindex = proxy.index(i, 0, QModelIndex()); + QCOMPARE(proxy.data(pindex, Qt::DisplayRole).toString(), expectedProxyItems.at(i)); + } +} + +void tst_QSortFilterProxyModel::insertSourceRows_data() +{ + QTest::addColumn("sourceItems"); + QTest::addColumn("start"); + QTest::addColumn("newItems"); + QTest::addColumn("sortOrder"); + QTest::addColumn("proxyItems"); + + QTest::newRow("insert (1)") + << (QStringList() << "c" << "b") // sourceItems + << 1 // start + << (QStringList() << "a") // newItems + << static_cast(Qt::AscendingOrder) // sortOrder + << (QStringList() << "a" << "b" << "c") // proxyItems + ; + + QTest::newRow("insert (2)") + << (QStringList() << "d" << "b" << "c") // sourceItems + << 3 // start + << (QStringList() << "a") // newItems + << static_cast(Qt::DescendingOrder) // sortOrder + << (QStringList() << "d" << "c" << "b" << "a") // proxyItems + ; +} + +// Check that rows are inserted at correct position in proxy model when +// rows are inserted into the source model +void tst_QSortFilterProxyModel::insertSourceRows() +{ + QFETCH(QStringList, sourceItems); + QFETCH(int, start); + QFETCH(QStringList, newItems); + QFETCH(int, sortOrder); + QFETCH(QStringList, proxyItems); + + QStandardItemModel model; + QSortFilterProxyModel proxy; + proxy.setDynamicSortFilter(true); + + proxy.setSourceModel(&model); + model.insertColumns(0, 1); + model.insertRows(0, sourceItems.count()); + + for (int i = 0; i < sourceItems.count(); ++i) { + QModelIndex index = model.index(i, 0, QModelIndex()); + model.setData(index, sourceItems.at(i), Qt::DisplayRole); + } + + proxy.sort(0, static_cast(sortOrder)); + (void)proxy.rowCount(QModelIndex()); // force mapping + + model.insertRows(start, newItems.size(), QModelIndex()); + + QCOMPARE(proxy.rowCount(QModelIndex()), proxyItems.count()); + for (int i = 0; i < newItems.count(); ++i) { + QModelIndex index = model.index(start + i, 0, QModelIndex()); + model.setData(index, newItems.at(i), Qt::DisplayRole); + } + + for (int i = 0; i < proxyItems.count(); ++i) { + QModelIndex index = proxy.index(i, 0, QModelIndex()); + QCOMPARE(proxy.data(index, Qt::DisplayRole).toString(), proxyItems.at(i)); + } +} + +void tst_QSortFilterProxyModel::changeFilter_data() +{ + QTest::addColumn("sourceItems"); + QTest::addColumn("sortOrder"); + QTest::addColumn("initialFilter"); + QTest::addColumn("initialRemoveIntervals"); + QTest::addColumn("initialProxyItems"); + QTest::addColumn("finalFilter"); + QTest::addColumn("finalRemoveIntervals"); + QTest::addColumn("insertIntervals"); + QTest::addColumn("finalProxyItems"); + + QTest::newRow("filter (1)") + << (QStringList() << "a" << "b" << "c" << "d" << "e" << "f") // sourceItems + << static_cast(Qt::AscendingOrder) // sortOrder + << "a|b|c" // initialFilter + << (IntPairList() << IntPair(3, 5)) // initialRemoveIntervals + << (QStringList() << "a" << "b" << "c") // initialProxyItems + << "b|d|f" // finalFilter + << (IntPairList() << IntPair(2, 2) << IntPair(0, 0)) // finalRemoveIntervals + << (IntPairList() << IntPair(1, 2)) // insertIntervals + << (QStringList() << "b" << "d" << "f") // finalProxyItems + ; + + QTest::newRow("filter (2)") + << (QStringList() << "a" << "b" << "c" << "d" << "e" << "f") // sourceItems + << static_cast(Qt::AscendingOrder) // sortOrder + << "a|c|e" // initialFilter + << (IntPairList() << IntPair(5, 5) << IntPair(3, 3) << IntPair(1, 1)) // initialRemoveIntervals + << (QStringList() << "a" << "c" << "e") // initialProxyItems + << "" // finalFilter + << IntPairList() // finalRemoveIntervals + << (IntPairList() << IntPair(3, 3) << IntPair(2, 2) << IntPair(1, 1)) // insertIntervals + << (QStringList() << "a" << "b" << "c" << "d" << "e" << "f") // finalProxyItems + ; + + QTest::newRow("filter (3)") + << (QStringList() << "a" << "b" << "c") // sourceItems + << static_cast(Qt::AscendingOrder) // sortOrder + << "a" // initialFilter + << (IntPairList() << IntPair(1, 2)) // initialRemoveIntervals + << (QStringList() << "a") // initialProxyItems + << "a" // finalFilter + << IntPairList() // finalRemoveIntervals + << IntPairList() // insertIntervals + << (QStringList() << "a") // finalProxyItems + ; +} + +// Check that rows are added/removed when filter changes +void tst_QSortFilterProxyModel::changeFilter() +{ + QFETCH(QStringList, sourceItems); + QFETCH(int, sortOrder); + QFETCH(QString, initialFilter); + QFETCH(IntPairList, initialRemoveIntervals); + QFETCH(QStringList, initialProxyItems); + QFETCH(QString, finalFilter); + QFETCH(IntPairList, finalRemoveIntervals); + QFETCH(IntPairList, insertIntervals); + QFETCH(QStringList, finalProxyItems); + + QStandardItemModel model; + QSortFilterProxyModel proxy; + + proxy.setSourceModel(&model); + model.insertColumns(0, 1); + model.insertRows(0, sourceItems.count()); + + for (int i = 0; i < sourceItems.count(); ++i) { + QModelIndex index = model.index(i, 0, QModelIndex()); + model.setData(index, sourceItems.at(i), Qt::DisplayRole); + } + + proxy.sort(0, static_cast(sortOrder)); + (void)proxy.rowCount(QModelIndex()); // force mapping + + QSignalSpy initialRemoveSpy(&proxy, SIGNAL(rowsRemoved(QModelIndex, int, int))); + QSignalSpy initialInsertSpy(&proxy, SIGNAL(rowsInserted(QModelIndex, int, int))); + + proxy.setFilterRegExp(initialFilter); + + QCOMPARE(initialRemoveSpy.count(), initialRemoveIntervals.count()); + QCOMPARE(initialInsertSpy.count(), 0); + for (int i = 0; i < initialRemoveSpy.count(); ++i) { + QList args = initialRemoveSpy.at(i); + QVERIFY(args.at(1).type() == QVariant::Int); + QVERIFY(args.at(2).type() == QVariant::Int); + QCOMPARE(args.at(1).toInt(), initialRemoveIntervals.at(i).first); + QCOMPARE(args.at(2).toInt(), initialRemoveIntervals.at(i).second); + } + + QCOMPARE(proxy.rowCount(QModelIndex()), initialProxyItems.count()); + for (int i = 0; i < initialProxyItems.count(); ++i) { + QModelIndex index = proxy.index(i, 0, QModelIndex()); + QCOMPARE(proxy.data(index, Qt::DisplayRole).toString(), initialProxyItems.at(i)); + } + + QSignalSpy finalRemoveSpy(&proxy, SIGNAL(rowsRemoved(QModelIndex, int, int))); + QSignalSpy finalInsertSpy(&proxy, SIGNAL(rowsInserted(QModelIndex, int, int))); + + proxy.setFilterRegExp(finalFilter); + + QCOMPARE(finalRemoveSpy.count(), finalRemoveIntervals.count()); + for (int i = 0; i < finalRemoveSpy.count(); ++i) { + QList args = finalRemoveSpy.at(i); + QVERIFY(args.at(1).type() == QVariant::Int); + QVERIFY(args.at(2).type() == QVariant::Int); + QCOMPARE(args.at(1).toInt(), finalRemoveIntervals.at(i).first); + QCOMPARE(args.at(2).toInt(), finalRemoveIntervals.at(i).second); + } + +#ifdef Q_OS_IRIX + QEXPECT_FAIL("filter (2)", "Not reliable on IRIX", Abort); +#endif + QCOMPARE(finalInsertSpy.count(), insertIntervals.count()); + for (int i = 0; i < finalInsertSpy.count(); ++i) { + QList args = finalInsertSpy.at(i); + QVERIFY(args.at(1).type() == QVariant::Int); + QVERIFY(args.at(2).type() == QVariant::Int); + QCOMPARE(args.at(1).toInt(), insertIntervals.at(i).first); + QCOMPARE(args.at(2).toInt(), insertIntervals.at(i).second); + } + + QCOMPARE(proxy.rowCount(QModelIndex()), finalProxyItems.count()); + for (int i = 0; i < finalProxyItems.count(); ++i) { + QModelIndex index = proxy.index(i, 0, QModelIndex()); + QCOMPARE(proxy.data(index, Qt::DisplayRole).toString(), finalProxyItems.at(i)); + } +} + +void tst_QSortFilterProxyModel::changeSourceData_data() +{ + QTest::addColumn("sourceItems"); + QTest::addColumn("sortOrder"); + QTest::addColumn("filter"); + QTest::addColumn("dynamic"); + QTest::addColumn("row"); + QTest::addColumn("newValue"); + QTest::addColumn("removeIntervals"); + QTest::addColumn("insertIntervals"); + QTest::addColumn("proxyItems"); + + QTest::newRow("changeSourceData (1)") + << (QStringList() << "c" << "b" << "a") // sourceItems + << static_cast(Qt::AscendingOrder) // sortOrder + << "" // filter + << true // dynamic + << 2 // row + << "z" // newValue + << IntPairList() // removeIntervals + << IntPairList() // insertIntervals + << (QStringList() << "b" << "c" << "z") // proxyItems + ; + + QTest::newRow("changeSourceData (2)") + << (QStringList() << "b" << "c" << "z") // sourceItems + << static_cast(Qt::DescendingOrder) // sortOrder + << "" // filter + << true // dynamic + << 1 // row + << "a" // newValue + << IntPairList() // removeIntervals + << IntPairList() // insertIntervals + << (QStringList() << "z" << "b" << "a") // proxyItems + ; + + QTest::newRow("changeSourceData (3)") + << (QStringList() << "a" << "b") // sourceItems + << static_cast(Qt::DescendingOrder) // sortOrder + << "" // filter + << true // dynamic + << 0 // row + << "a" // newValue + << IntPairList() // removeIntervals + << IntPairList() // insertIntervals + << (QStringList() << "b" << "a") // proxyItems + ; + + QTest::newRow("changeSourceData (4)") + << (QStringList() << "a" << "b" << "c" << "d") // sourceItems + << static_cast(Qt::AscendingOrder) // sortOrder + << "a|c" // filter + << true // dynamic + << 1 // row + << "x" // newValue + << IntPairList() // removeIntervals + << IntPairList() // insertIntervals + << (QStringList() << "a" << "c") // proxyItems + ; + + QTest::newRow("changeSourceData (5)") + << (QStringList() << "a" << "b" << "c" << "d") // sourceItems + << static_cast(Qt::AscendingOrder) // sortOrder + << "a|c|x" // filter + << true // dynamic + << 1 // row + << "x" // newValue + << IntPairList() // removeIntervals + << (IntPairList() << IntPair(2, 2)) // insertIntervals + << (QStringList() << "a" << "c" << "x") // proxyItems + ; + + QTest::newRow("changeSourceData (6)") + << (QStringList() << "c" << "b" << "a") // sourceItems + << static_cast(Qt::AscendingOrder) // sortOrder + << "" // filter + << false // dynamic + << 2 // row + << "x" // newValue + << IntPairList() // removeIntervals + << IntPairList() // insertIntervals + << (QStringList() << "x" << "b" << "c") // proxyItems + ; +} + +void tst_QSortFilterProxyModel::changeSourceData() +{ + QFETCH(QStringList, sourceItems); + QFETCH(int, sortOrder); + QFETCH(QString, filter); + QFETCH(bool, dynamic); + QFETCH(int, row); + QFETCH(QString, newValue); + QFETCH(IntPairList, removeIntervals); + QFETCH(IntPairList, insertIntervals); + QFETCH(QStringList, proxyItems); + + QStandardItemModel model; + QSortFilterProxyModel proxy; + + proxy.setDynamicSortFilter(dynamic); + proxy.setSourceModel(&model); + model.insertColumns(0, 1); + model.insertRows(0, sourceItems.count()); + + for (int i = 0; i < sourceItems.count(); ++i) { + QModelIndex index = model.index(i, 0, QModelIndex()); + model.setData(index, sourceItems.at(i), Qt::DisplayRole); + } + + proxy.sort(0, static_cast(sortOrder)); + (void)proxy.rowCount(QModelIndex()); // force mapping + + proxy.setFilterRegExp(filter); + + QSignalSpy removeSpy(&proxy, SIGNAL(rowsRemoved(QModelIndex, int, int))); + QSignalSpy insertSpy(&proxy, SIGNAL(rowsInserted(QModelIndex, int, int))); + + { + QModelIndex index = model.index(row, 0, QModelIndex()); + model.setData(index, newValue, Qt::DisplayRole); + } + + QCOMPARE(removeSpy.count(), removeIntervals.count()); + for (int i = 0; i < removeSpy.count(); ++i) { + QList args = removeSpy.at(i); + QVERIFY(args.at(1).type() == QVariant::Int); + QVERIFY(args.at(2).type() == QVariant::Int); + QCOMPARE(args.at(1).toInt(), removeIntervals.at(i).first); + QCOMPARE(args.at(2).toInt(), removeIntervals.at(i).second); + } + + QCOMPARE(insertSpy.count(), insertIntervals.count()); + for (int i = 0; i < insertSpy.count(); ++i) { + QList args = insertSpy.at(i); + QVERIFY(args.at(1).type() == QVariant::Int); + QVERIFY(args.at(2).type() == QVariant::Int); + QCOMPARE(args.at(1).toInt(), insertIntervals.at(i).first); + QCOMPARE(args.at(2).toInt(), insertIntervals.at(i).second); + } + + QCOMPARE(proxy.rowCount(QModelIndex()), proxyItems.count()); + for (int i = 0; i < proxyItems.count(); ++i) { + QModelIndex index = proxy.index(i, 0, QModelIndex()); + QCOMPARE(proxy.data(index, Qt::DisplayRole).toString(), proxyItems.at(i)); + } +} + +void tst_QSortFilterProxyModel::sortFilterRole() +{ + QStandardItemModel model; + QSortFilterProxyModel proxy; + proxy.setSourceModel(&model); + model.insertColumns(0, 1); + + QList > sourceItems; + sourceItems = QList >() + << QPair("b", 3) + << QPair("c", 2) + << QPair("a", 1); + + QList orderedItems; + orderedItems = QList() + << 2 << 1; + + model.insertRows(0, sourceItems.count()); + for (int i = 0; i < sourceItems.count(); ++i) { + QModelIndex index = model.index(i, 0, QModelIndex()); + model.setData(index, sourceItems.at(i).first, Qt::DisplayRole); + model.setData(index, sourceItems.at(i).second, Qt::UserRole); + } + + proxy.setFilterRegExp("2"); + QCOMPARE(proxy.rowCount(), 0); // Qt::DisplayRole is default role + + proxy.setFilterRole(Qt::UserRole); + QCOMPARE(proxy.rowCount(), 1); + + proxy.setFilterRole(Qt::DisplayRole); + QCOMPARE(proxy.rowCount(), 0); + + proxy.setFilterRegExp("1|2|3"); + QCOMPARE(proxy.rowCount(), 0); + + proxy.setFilterRole(Qt::UserRole); + QCOMPARE(proxy.rowCount(), 3); + + proxy.sort(0, Qt::AscendingOrder); + QCOMPARE(proxy.rowCount(), 3); + + proxy.setSortRole(Qt::UserRole); + proxy.setFilterRole(Qt::DisplayRole); + proxy.setFilterRegExp("a|c"); + QCOMPARE(proxy.rowCount(), orderedItems.count()); + for (int i = 0; i < proxy.rowCount(); ++i) { + QModelIndex index = proxy.index(i, 0, QModelIndex()); + QCOMPARE(proxy.data(index, Qt::DisplayRole), sourceItems.at(orderedItems.at(i)).first); + } +} + +void tst_QSortFilterProxyModel::selectionFilteredOut() +{ + QStandardItemModel model(2, 1); + model.setData(model.index(0, 0), QString("AAA")); + model.setData(model.index(1, 0), QString("BBB")); + QSortFilterProxyModel proxy; + proxy.setSourceModel(&model); + QTreeView view; + + view.show(); + view.setModel(&proxy); + QSignalSpy spy(view.selectionModel(), SIGNAL(currentChanged(QModelIndex, QModelIndex))); + + view.setCurrentIndex(proxy.index(0, 0)); + QCOMPARE(spy.count(), 1); + proxy.setFilterRegExp(QRegExp("^B")); + QCOMPARE(spy.count(), 2); +} + +void tst_QSortFilterProxyModel::match_data() +{ + QTest::addColumn("sourceItems"); + QTest::addColumn("sortOrder"); + QTest::addColumn("filter"); + QTest::addColumn("proxyStartRow"); + QTest::addColumn("what"); + QTest::addColumn("matchFlags"); + QTest::addColumn("expectedProxyItems"); + QTest::newRow("1") + << (QStringList() << "a") // sourceItems + << static_cast(Qt::AscendingOrder) // sortOrder + << "" // filter + << 0 // proxyStartRow + << "a" // what + << static_cast(Qt::MatchExactly) // matchFlags + << (IntList() << 0); // expectedProxyItems + QTest::newRow("2") + << (QStringList() << "a" << "b") // sourceItems + << static_cast(Qt::AscendingOrder) // sortOrder + << "" // filter + << 0 // proxyStartRow + << "b" // what + << static_cast(Qt::MatchExactly) // matchFlags + << (IntList() << 1); // expectedProxyItems + QTest::newRow("3") + << (QStringList() << "a" << "b") // sourceItems + << static_cast(Qt::DescendingOrder) // sortOrder + << "" // filter + << 0 // proxyStartRow + << "a" // what + << static_cast(Qt::MatchExactly) // matchFlags + << (IntList() << 1); // expectedProxyItems + QTest::newRow("4") + << (QStringList() << "b" << "d" << "a" << "c") // sourceItems + << static_cast(Qt::AscendingOrder) // sortOrder + << "" // filter + << 1 // proxyStartRow + << "a" // what + << static_cast(Qt::MatchExactly) // matchFlags + << IntList(); // expectedProxyItems + QTest::newRow("5") + << (QStringList() << "b" << "d" << "a" << "c") // sourceItems + << static_cast(Qt::AscendingOrder) // sortOrder + << "a|b" // filter + << 0 // proxyStartRow + << "c" // what + << static_cast(Qt::MatchExactly) // matchFlags + << IntList(); // expectedProxyItems + QTest::newRow("6") + << (QStringList() << "b" << "d" << "a" << "c") // sourceItems + << static_cast(Qt::DescendingOrder) // sortOrder + << "a|b" // filter + << 0 // proxyStartRow + << "b" // what + << static_cast(Qt::MatchExactly) // matchFlags + << (IntList() << 0); // expectedProxyItems +} + +void tst_QSortFilterProxyModel::match() +{ + QFETCH(QStringList, sourceItems); + QFETCH(int, sortOrder); + QFETCH(QString, filter); + QFETCH(int, proxyStartRow); + QFETCH(QString, what); + QFETCH(int, matchFlags); + QFETCH(IntList, expectedProxyItems); + + QStandardItemModel model; + QSortFilterProxyModel proxy; + + proxy.setSourceModel(&model); + model.insertColumns(0, 1); + model.insertRows(0, sourceItems.count()); + + for (int i = 0; i < sourceItems.count(); ++i) { + QModelIndex index = model.index(i, 0, QModelIndex()); + model.setData(index, sourceItems.at(i), Qt::DisplayRole); + } + + proxy.sort(0, static_cast(sortOrder)); + proxy.setFilterRegExp(filter); + + QModelIndex startIndex = proxy.index(proxyStartRow, 0); + QModelIndexList indexes = proxy.match(startIndex, Qt::DisplayRole, what, + expectedProxyItems.count(), + Qt::MatchFlags(matchFlags)); + QCOMPARE(indexes.count(), expectedProxyItems.count()); + for (int i = 0; i < indexes.count(); ++i) + QCOMPARE(indexes.at(i).row(), expectedProxyItems.at(i)); +} + +void tst_QSortFilterProxyModel::insertIntoChildrenlessItem() +{ + QStandardItemModel model; + QStandardItem *itemA = new QStandardItem("a"); + model.appendRow(itemA); + QStandardItem *itemB = new QStandardItem("b"); + model.appendRow(itemB); + QStandardItem *itemC = new QStandardItem("c"); + model.appendRow(itemC); + + QSortFilterProxyModel proxy; + proxy.setSourceModel(&model); + + QSignalSpy colsInsertedSpy(&proxy, SIGNAL(columnsInserted(const QModelIndex&, int, int))); + QSignalSpy rowsInsertedSpy(&proxy, SIGNAL(rowsInserted(const QModelIndex&, int, int))); + + (void)proxy.rowCount(QModelIndex()); // force mapping of "a", "b", "c" + QCOMPARE(colsInsertedSpy.count(), 0); + QCOMPARE(rowsInsertedSpy.count(), 0); + + // now add a child to itemB ==> should get insert notification from the proxy + itemB->appendRow(new QStandardItem("a.0")); + QCOMPARE(colsInsertedSpy.count(), 1); + QCOMPARE(rowsInsertedSpy.count(), 1); + + QVariantList args = colsInsertedSpy.takeFirst(); + QCOMPARE(qvariant_cast(args.at(0)), proxy.mapFromSource(itemB->index())); + QCOMPARE(qvariant_cast(args.at(1)), 0); + QCOMPARE(qvariant_cast(args.at(2)), 0); + + args = rowsInsertedSpy.takeFirst(); + QCOMPARE(qvariant_cast(args.at(0)), proxy.mapFromSource(itemB->index())); + QCOMPARE(qvariant_cast(args.at(1)), 0); + QCOMPARE(qvariant_cast(args.at(2)), 0); +} + +void tst_QSortFilterProxyModel::invalidateMappedChildren() +{ + QStandardItemModel model; + + QSortFilterProxyModel proxy; + proxy.setSourceModel(&model); + + QStandardItem *itemA = new QStandardItem("a"); + model.appendRow(itemA); + QStandardItem *itemB = new QStandardItem("b"); + itemA->appendRow(itemB); + + QStandardItem *itemC = new QStandardItem("c"); + itemB->appendRow(itemC); + itemC->appendRow(new QStandardItem("d")); + + // force mappings + (void)proxy.hasChildren(QModelIndex()); + (void)proxy.hasChildren(proxy.mapFromSource(itemA->index())); + (void)proxy.hasChildren(proxy.mapFromSource(itemB->index())); + (void)proxy.hasChildren(proxy.mapFromSource(itemC->index())); + + itemB->removeRow(0); // should invalidate mapping of itemC + itemC = new QStandardItem("c"); + itemA->appendRow(itemC); + itemC->appendRow(new QStandardItem("d")); + + itemA->removeRow(1); // should invalidate mapping of itemC + itemC = new QStandardItem("c"); + itemB->appendRow(itemC); + itemC->appendRow(new QStandardItem("d")); + + QCOMPARE(proxy.rowCount(proxy.mapFromSource(itemA->index())), 1); + QCOMPARE(proxy.rowCount(proxy.mapFromSource(itemB->index())), 1); + QCOMPARE(proxy.rowCount(proxy.mapFromSource(itemC->index())), 1); +} + +class EvenOddFilterModel : public QSortFilterProxyModel +{ +public: + virtual bool filterAcceptsRow(int srcRow, const QModelIndex& srcParent) const + { + if (srcParent.isValid()) + return (srcParent.row() % 2) ^ !(srcRow % 2); + return (srcRow % 2); + } +}; + +void tst_QSortFilterProxyModel::insertRowIntoFilteredParent() +{ + QStandardItemModel model; + EvenOddFilterModel proxy; + proxy.setSourceModel(&model); + + QSignalSpy spy(&proxy, SIGNAL(rowsInserted(const QModelIndex&, int, int))); + + QStandardItem *itemA = new QStandardItem(); + model.appendRow(itemA); // A will be filtered + QStandardItem *itemB = new QStandardItem(); + itemA->appendRow(itemB); + + QCOMPARE(spy.count(), 0); + + itemA->removeRow(0); + + QCOMPARE(spy.count(), 0); +} + +void tst_QSortFilterProxyModel::filterOutParentAndFilterInChild() +{ + QStandardItemModel model; + QSortFilterProxyModel proxy; + proxy.setSourceModel(&model); + + proxy.setFilterRegExp("A|B"); + QStandardItem *itemA = new QStandardItem("A"); + model.appendRow(itemA); // not filtered + QStandardItem *itemB = new QStandardItem("B"); + itemA->appendRow(itemB); // not filtered + QStandardItem *itemC = new QStandardItem("C"); + itemA->appendRow(itemC); // filtered + + QSignalSpy removedSpy(&proxy, SIGNAL(rowsRemoved(const QModelIndex&, int, int))); + QSignalSpy insertedSpy(&proxy, SIGNAL(rowsInserted(const QModelIndex&, int, int))); + + proxy.setFilterRegExp("C"); // A and B will be filtered out, C filtered in + + // we should now have been notified that the subtree represented by itemA has been removed + QCOMPARE(removedSpy.count(), 1); + // we should NOT get any inserts; itemC should be filtered because its parent (itemA) is + QCOMPARE(insertedSpy.count(), 0); +} + +void tst_QSortFilterProxyModel::sourceInsertRows() +{ + QStandardItemModel model; + QSortFilterProxyModel proxyModel; + proxyModel.setSourceModel(&model); + + model.insertColumns(0, 1, QModelIndex()); + model.insertRows(0, 2, QModelIndex()); + + { + QModelIndex parent = model.index(0, 0, QModelIndex()); + model.insertColumns(0, 1, parent); + model.insertRows(0, 1, parent); + } + + { + QModelIndex parent = model.index(1, 0, QModelIndex()); + model.insertColumns(0, 1, parent); + model.insertRows(0, 1, parent); + } + + model.insertRows(0, 1, QModelIndex()); + model.insertRows(0, 1, QModelIndex()); + + QVERIFY(true); // if you got here without asserting, it's all good +} + +void tst_QSortFilterProxyModel::sourceModelDeletion() +{ + + QSortFilterProxyModel proxyModel; + { + QStandardItemModel model; + proxyModel.setSourceModel(&model); + QCOMPARE(proxyModel.sourceModel(), static_cast(&model)); + } + QCOMPARE(proxyModel.sourceModel(), static_cast(0)); + +} + +void tst_QSortFilterProxyModel::sortColumnTracking1() +{ + QStandardItemModel model; + QSortFilterProxyModel proxyModel; + proxyModel.setSourceModel(&model); + + model.insertColumns(0, 10); + model.insertRows(0, 10); + + proxyModel.sort(1); + QCOMPARE(proxyModel.sortColumn(), 1); + + model.insertColumn(8); + QCOMPARE(proxyModel.sortColumn(), 1); + + model.removeColumn(8); + QCOMPARE(proxyModel.sortColumn(), 1); + + model.insertColumn(2); + QCOMPARE(proxyModel.sortColumn(), 1); + + model.removeColumn(2); + QCOMPARE(proxyModel.sortColumn(), 1); + + model.insertColumn(1); + QCOMPARE(proxyModel.sortColumn(), 2); + + model.removeColumn(1); + QCOMPARE(proxyModel.sortColumn(), 1); + + model.removeColumn(1); + QCOMPARE(proxyModel.sortColumn(), -1); +} + +void tst_QSortFilterProxyModel::sortColumnTracking2() +{ + QStandardItemModel model; + QSortFilterProxyModel proxyModel; + proxyModel.setDynamicSortFilter(true); + proxyModel.setSourceModel(&model); + + proxyModel.sort(0); + QCOMPARE(proxyModel.sortColumn(), 0); + + QList items; + QStringList strings; + strings << "foo" << "bar" << "some" << "others" << "item" << "aa" << "zz"; + foreach (QString s, strings) + items << new QStandardItem(s); + + model.insertColumn(0,items); + QCOMPARE(proxyModel.sortColumn(), 0); + QCOMPARE(proxyModel.data(proxyModel.index(0,0)).toString(),QString::fromLatin1("aa")); + QCOMPARE(proxyModel.data(proxyModel.index(strings.count()-1,0)).toString(),QString::fromLatin1("zz")); +} + +void tst_QSortFilterProxyModel::sortStable() +{ + QStandardItemModel* model = new QStandardItemModel(5, 2); + for (int r=0; r<5; r++) { + for (int c=0; c<2; c++) { + QStandardItem* item = new QStandardItem( + QString("Row:%0, Column:%1").arg(r).arg(c) ); + for( int i=0; i<3; i++ ) { + QStandardItem* child = new QStandardItem( + QString("Item %0").arg(i) ); + item->appendRow( child ); + } + model->setItem(r, c, item); + } + } + model->setHorizontalHeaderItem( 0, new QStandardItem( "Name" )); + model->setHorizontalHeaderItem( 1, new QStandardItem( "Value" ) ); + + + QSortFilterProxyModel *filterModel = new QSortFilterProxyModel(model); + filterModel->setSourceModel(model); + + QTreeView *view = new QTreeView; + view->setModel(filterModel); + QModelIndex firstRoot = filterModel->index(0,0); + view->expand(firstRoot); + view->setSortingEnabled(true); + + view->model()->sort(1, Qt::DescendingOrder); + QVariant lastItemData =filterModel->index(2,0, firstRoot).data(); + view->model()->sort(1, Qt::DescendingOrder); + QCOMPARE(lastItemData, filterModel->index(2,0, firstRoot).data()); +} + +void tst_QSortFilterProxyModel::task236755_hiddenColumns() +{ + class MyStandardItemModel : public QStandardItemModel + { + public: + MyStandardItemModel() : QStandardItemModel(0,5) {} + void reset() + { QStandardItemModel::reset(); } + friend class tst_QSortFilterProxyModel; + } model; + QSortFilterProxyModel proxy; + proxy.setSourceModel(&model); + + QTableView view; + view.setModel(&proxy); + + view.hideColumn(0); + + QVERIFY(view.isColumnHidden(0)); + model.blockSignals(true); + model.setRowCount(1); + model.blockSignals(false); + model.reset(); + + //in the initial task this would be false because resetting + //model would also reset the hidden columns + QVERIFY(view.isColumnHidden(0)); +} + +void tst_QSortFilterProxyModel::task247867_insertRowsSort() +{ + QStandardItemModel model(2,2); + QSortFilterProxyModel proxyModel; + proxyModel.setSourceModel(&model); + + proxyModel.sort(0); + QCOMPARE(proxyModel.sortColumn(), 0); + + model.insertColumns(0, 3, model.index(0,0)); + QCOMPARE(proxyModel.sortColumn(), 0); + + model.removeColumns(0, 3, model.index(0,0)); + QCOMPARE(proxyModel.sortColumn(), 0); +} + +void tst_QSortFilterProxyModel::task248868_staticSorting() +{ + QStandardItemModel model(0, 1); + QSortFilterProxyModel proxy; + proxy.setSourceModel(&model); + proxy.setDynamicSortFilter(false); + QStringList initial = QString("bateau avion dragon hirondelle flamme camion elephant").split(" "); + + // prepare model + QStandardItem *root = model.invisibleRootItem (); + QList items; + for (int i = 0; i < initial.count(); ++i) { + items.append(new QStandardItem(initial.at(i))); + } + root->insertRows(0, items); + QCOMPARE(model.rowCount(QModelIndex()), initial.count()); + QCOMPARE(model.columnCount(QModelIndex()), 1); + + // make sure the proxy is unsorted + QCOMPARE(proxy.columnCount(QModelIndex()), 1); + QCOMPARE(proxy.rowCount(QModelIndex()), initial.count()); + for (int row = 0; row < proxy.rowCount(QModelIndex()); ++row) { + QModelIndex index = proxy.index(row, 0, QModelIndex()); + QCOMPARE(proxy.data(index, Qt::DisplayRole).toString(), initial.at(row)); + } + + // sort + proxy.sort(0); + + QStringList expected = initial; + expected.sort(); + // make sure the proxy is sorted + for (int row = 0; row < proxy.rowCount(QModelIndex()); ++row) { + QModelIndex index = proxy.index(row, 0, QModelIndex()); + QCOMPARE(proxy.data(index, Qt::DisplayRole).toString(), expected.at(row)); + } + + //update one item. + model.setItem(0, 0, new QStandardItem("girafe")); + + // make sure the proxy is updated but not sorted + expected.replaceInStrings("bateau", "girafe"); + for (int row = 0; row < proxy.rowCount(QModelIndex()); ++row) { + QModelIndex index = proxy.index(row, 0, QModelIndex()); + QCOMPARE(proxy.data(index, Qt::DisplayRole).toString(), expected.at(row)); + } + + // sort again + proxy.sort(0); + expected.sort(); + + // make sure the proxy is sorted + for (int row = 0; row < proxy.rowCount(QModelIndex()); ++row) { + QModelIndex index = proxy.index(row, 0, QModelIndex()); + QCOMPARE(proxy.data(index, Qt::DisplayRole).toString(), expected.at(row)); + } + +} + +void tst_QSortFilterProxyModel::task248868_dynamicSorting() +{ + QStringListModel model1; + const QStringList initial = QString("bateau avion dragon hirondelle flamme camion elephant").split(" "); + model1.setStringList(initial); + QSortFilterProxyModel proxy1; + proxy1.sort(0); + proxy1.setSourceModel(&model1); + + QCOMPARE(proxy1.columnCount(QModelIndex()), 1); + //the model should not be sorted because sorting has not been set to dynamic yet. + QCOMPARE(proxy1.rowCount(QModelIndex()), initial.count()); + for (int row = 0; row < proxy1.rowCount(QModelIndex()); ++row) { + QModelIndex index = proxy1.index(row, 0, QModelIndex()); + QCOMPARE(proxy1.data(index, Qt::DisplayRole).toString(), initial.at(row)); + } + + proxy1.setDynamicSortFilter(true); + + //now the model should be sorted. + QStringList expected = initial; + expected.sort(); + for (int row = 0; row < proxy1.rowCount(QModelIndex()); ++row) { + QModelIndex index = proxy1.index(row, 0, QModelIndex()); + QCOMPARE(proxy1.data(index, Qt::DisplayRole).toString(), expected.at(row)); + } + + QStringList initial2 = initial; + initial2.replaceInStrings("bateau", "girafe"); + model1.setStringList(initial2); //this will cause a reset + + QStringList expected2 = initial2; + expected2.sort(); + + //now the model should still be sorted. + for (int row = 0; row < proxy1.rowCount(QModelIndex()); ++row) { + QModelIndex index = proxy1.index(row, 0, QModelIndex()); + QCOMPARE(proxy1.data(index, Qt::DisplayRole).toString(), expected2.at(row)); + } + + QStringListModel model2(initial); + proxy1.setSourceModel(&model2); + + //the model should again be sorted + for (int row = 0; row < proxy1.rowCount(QModelIndex()); ++row) { + QModelIndex index = proxy1.index(row, 0, QModelIndex()); + QCOMPARE(proxy1.data(index, Qt::DisplayRole).toString(), expected.at(row)); + } + + //set up the sorting before seting the model up + QSortFilterProxyModel proxy2; + proxy2.setDynamicSortFilter(true); + proxy2.sort(0); + proxy2.setSourceModel(&model2); + for (int row = 0; row < proxy2.rowCount(QModelIndex()); ++row) { + QModelIndex index = proxy2.index(row, 0, QModelIndex()); + QCOMPARE(proxy2.data(index, Qt::DisplayRole).toString(), expected.at(row)); + } +} + +class QtTestModel: public QAbstractItemModel +{ + public: + QtTestModel(int _rows, int _cols, QObject *parent = 0): QAbstractItemModel(parent), + rows(_rows), cols(_cols), wrongIndex(false) { } + + bool canFetchMore(const QModelIndex &idx) const { + return !fetched.contains(idx); + } + + void fetchMore(const QModelIndex &idx) { + if (fetched.contains(idx)) + return; + beginInsertRows(idx, 0, rows-1); + fetched.insert(idx); + endInsertRows(); + } + + bool hasChildren(const QModelIndex & = QModelIndex()) const { + return true; + } + + int rowCount(const QModelIndex& parent = QModelIndex()) const { + return fetched.contains(parent) ? rows : 0; + } + int columnCount(const QModelIndex& parent = QModelIndex()) const { + Q_UNUSED(parent); + return cols; + } + + QModelIndex index(int row, int column, const QModelIndex &parent = QModelIndex()) const + { + if (row < 0 || column < 0 || column >= cols || row >= rows) { + return QModelIndex(); + } + QModelIndex i = createIndex(row, column, int(parent.internalId() + 1)); + parentHash[i] = parent; + return i; + } + + QModelIndex parent(const QModelIndex &index) const + { + if (!parentHash.contains(index)) + return QModelIndex(); + return parentHash[index]; + } + + QVariant data(const QModelIndex &idx, int role) const + { + if (!idx.isValid()) + return QVariant(); + + if (role == Qt::DisplayRole) { + if (idx.row() < 0 || idx.column() < 0 || idx.column() >= cols || idx.row() >= rows) { + wrongIndex = true; + qWarning("Invalid modelIndex [%d,%d,%p]", idx.row(), idx.column(), + idx.internalPointer()); + } + return QString("[%1,%2]").arg(idx.row()).arg(idx.column()); + } + return QVariant(); + } + + QSet fetched; + int rows, cols; + mutable bool wrongIndex; + mutable QMap parentHash; +}; + +void tst_QSortFilterProxyModel::task250023_fetchMore() +{ + QtTestModel model(10,10); + QSortFilterProxyModel proxy; + proxy.setSourceModel(&model); + QVERIFY(proxy.canFetchMore(QModelIndex())); + QVERIFY(proxy.hasChildren()); + while (proxy.canFetchMore(QModelIndex())) + proxy.fetchMore(QModelIndex()); + QCOMPARE(proxy.rowCount(), 10); + QCOMPARE(proxy.columnCount(), 10); + + QModelIndex idx = proxy.index(1,1); + QVERIFY(idx.isValid()); + QVERIFY(proxy.canFetchMore(idx)); + QVERIFY(proxy.hasChildren(idx)); + while (proxy.canFetchMore(idx)) + proxy.fetchMore(idx); + QCOMPARE(proxy.rowCount(idx), 10); + QCOMPARE(proxy.columnCount(idx), 10); +} + +void tst_QSortFilterProxyModel::task251296_hiddenChildren() +{ + QStandardItemModel model; + QSortFilterProxyModel proxy; + proxy.setSourceModel(&model); + proxy.setDynamicSortFilter(true); + + QStandardItem *itemA = new QStandardItem("A VISIBLE"); + model.appendRow(itemA); + QStandardItem *itemB = new QStandardItem("B VISIBLE"); + itemA->appendRow(itemB); + QStandardItem *itemC = new QStandardItem("C"); + itemA->appendRow(itemC); + proxy.setFilterRegExp("VISIBLE"); + + QCOMPARE(proxy.rowCount(QModelIndex()) , 1); + QPersistentModelIndex indexA = proxy.index(0,0); + QCOMPARE(proxy.data(indexA).toString(), QString::fromLatin1("A VISIBLE")); + + QCOMPARE(proxy.rowCount(indexA) , 1); + QPersistentModelIndex indexB = proxy.index(0, 0, indexA); + QCOMPARE(proxy.data(indexB).toString(), QString::fromLatin1("B VISIBLE")); + + itemA->setText("A"); + QCOMPARE(proxy.rowCount(QModelIndex()), 0); + QVERIFY(!indexA.isValid()); + QVERIFY(!indexB.isValid()); + + itemB->setText("B"); + itemA->setText("A VISIBLE"); + itemC->setText("C VISIBLE"); + + QCOMPARE(proxy.rowCount(QModelIndex()), 1); + indexA = proxy.index(0,0); + QCOMPARE(proxy.data(indexA).toString(), QString::fromLatin1("A VISIBLE")); + + QCOMPARE(proxy.rowCount(indexA) , 1); + QModelIndex indexC = proxy.index(0, 0, indexA); + QCOMPARE(proxy.data(indexC).toString(), QString::fromLatin1("C VISIBLE")); + + proxy.setFilterRegExp("C"); + QCOMPARE(proxy.rowCount(QModelIndex()), 0); + itemC->setText("invisible"); + itemA->setText("AC"); + + QCOMPARE(proxy.rowCount(QModelIndex()), 1); + indexA = proxy.index(0,0); + QCOMPARE(proxy.data(indexA).toString(), QString::fromLatin1("AC")); + QCOMPARE(proxy.rowCount(indexA) , 0); +} + +void tst_QSortFilterProxyModel::task252507_mapFromToSource() +{ + QtTestModel source(10,10); + source.fetchMore(QModelIndex()); + QSortFilterProxyModel proxy; + proxy.setSourceModel(&source); + QCOMPARE(proxy.mapFromSource(source.index(5, 4)), proxy.index(5, 4)); + QCOMPARE(proxy.mapToSource(proxy.index(3, 2)), source.index(3, 2)); + QCOMPARE(proxy.mapFromSource(QModelIndex()), QModelIndex()); + QCOMPARE(proxy.mapToSource(QModelIndex()), QModelIndex()); + +#ifdef QT_NO_DEBUG //if Qt is compiled in debug mode, this will assert + QTest::ignoreMessage(QtWarningMsg, "QSortFilterProxyModel: index from wrong model passed to mapToSource "); + QCOMPARE(proxy.mapToSource(source.index(2, 3)), QModelIndex()); + QTest::ignoreMessage(QtWarningMsg, "QSortFilterProxyModel: index from wrong model passed to mapFromSource "); + QCOMPARE(proxy.mapFromSource(proxy.index(6, 2)), QModelIndex()); +#endif +} + +static QStandardItem *addEntry(QStandardItem* pParent, const QString &description) +{ + QStandardItem* pItem = new QStandardItem(description); + pParent->appendRow(pItem); + return pItem; +} + + +void tst_QSortFilterProxyModel::task255652_removeRowsRecursive() +{ + QStandardItemModel pModel; + QStandardItem *pItem1 = new QStandardItem("root"); + pModel.appendRow(pItem1); + QList items; + + QStandardItem *pItem11 = addEntry(pItem1,"Sub-heading"); + items << pItem11; + QStandardItem *pItem111 = addEntry(pItem11,"A"); + items << pItem111; + items << addEntry(pItem111,"A1"); + items << addEntry(pItem111,"A2"); + QStandardItem *pItem112 = addEntry(pItem11,"B"); + items << pItem112; + items << addEntry(pItem112,"B1"); + items << addEntry(pItem112,"B2"); + QStandardItem *pItem1123 = addEntry(pItem112,"B3"); + items << pItem1123; + items << addEntry(pItem1123,"B3-"); + + QSortFilterProxyModel proxy; + proxy.setSourceModel(&pModel); + + QList sourceIndexes; + QList proxyIndexes; + foreach (QStandardItem *item, items) { + QModelIndex idx = item->index(); + sourceIndexes << idx; + proxyIndexes << proxy.mapFromSource(idx); + } + + foreach (const QPersistentModelIndex &pidx, sourceIndexes) + QVERIFY(pidx.isValid()); + foreach (const QPersistentModelIndex &pidx, proxyIndexes) + QVERIFY(pidx.isValid()); + + QList itemRow = pItem1->takeRow(0); + + QCOMPARE(itemRow.count(), 1); + QCOMPARE(itemRow.first(), pItem11); + + foreach (const QPersistentModelIndex &pidx, sourceIndexes) + QVERIFY(!pidx.isValid()); + foreach (const QPersistentModelIndex &pidx, proxyIndexes) + QVERIFY(!pidx.isValid()); + + delete pItem11; +} + +void tst_QSortFilterProxyModel::taskQTBUG_6205_doubleProxySelectionSetSourceModel() +{ + QStandardItemModel *model1 = new QStandardItemModel; + QStandardItem *parentItem = model1->invisibleRootItem(); + for (int i = 0; i < 4; ++i) { + QStandardItem *item = new QStandardItem(QString("model1 item %0").arg(i)); + parentItem->appendRow(item); + parentItem = item; + } + + QStandardItemModel *model2 = new QStandardItemModel; + QStandardItem *parentItem2 = model2->invisibleRootItem(); + for (int i = 0; i < 4; ++i) { + QStandardItem *item = new QStandardItem(QString("model2 item %0").arg(i)); + parentItem2->appendRow(item); + parentItem2 = item; + } + + QSortFilterProxyModel *toggleProxy = new QSortFilterProxyModel; + toggleProxy->setSourceModel(model1); + + QSortFilterProxyModel *proxyModel = new QSortFilterProxyModel; + proxyModel->setSourceModel(toggleProxy); + + QModelIndex mi = proxyModel->index(0, 0, proxyModel->index(0, 0, proxyModel->index(0, 0))); + QItemSelectionModel ism(proxyModel); + ism.select(mi, QItemSelectionModel::Select); + QModelIndexList mil = ism.selectedIndexes(); + QCOMPARE(mil.count(), 1); + QCOMPARE(mil.first(), mi); + + toggleProxy->setSourceModel(model2); + // No crash, it's good news! + QVERIFY(ism.selection().isEmpty()); +} + +void tst_QSortFilterProxyModel::taskQTBUG_7537_appearsAndSort() +{ + class PModel : public QSortFilterProxyModel + { + public: + PModel() : mVisible(false) {}; + protected: + bool filterAcceptsRow(int, const QModelIndex &) const + { + return mVisible; + } + + public: + void updateXX() + { + mVisible = true; + invalidate(); + } + private: + bool mVisible; + } proxyModel; + + + QStringListModel sourceModel; + QStringList list; + list << "b" << "a" << "c"; + sourceModel.setStringList(list); + + proxyModel.setSourceModel(&sourceModel); + proxyModel.setDynamicSortFilter(true); + proxyModel.sort(0, Qt::AscendingOrder); + + QApplication::processEvents(); + QCOMPARE(sourceModel.rowCount(), 3); + QCOMPARE(proxyModel.rowCount(), 0); //all rows are hidden at first; + + QSignalSpy spyAbout1(&proxyModel, SIGNAL(layoutAboutToBeChanged())); + QSignalSpy spyChanged1(&proxyModel, SIGNAL(layoutChanged())); + + //introducing secondProxyModel to test the layoutChange when many items appears at once + QSortFilterProxyModel secondProxyModel; + secondProxyModel.setSourceModel(&proxyModel); + secondProxyModel.setDynamicSortFilter(true); + secondProxyModel.sort(0, Qt::DescendingOrder); + QCOMPARE(secondProxyModel.rowCount(), 0); //all rows are hidden at first; + QSignalSpy spyAbout2(&secondProxyModel, SIGNAL(layoutAboutToBeChanged())); + QSignalSpy spyChanged2(&secondProxyModel, SIGNAL(layoutChanged())); + + proxyModel.updateXX(); + QApplication::processEvents(); + //now rows should be visible, and sorted + QCOMPARE(proxyModel.rowCount(), 3); + QCOMPARE(proxyModel.data(proxyModel.index(0,0), Qt::DisplayRole).toString(), QString::fromLatin1("a")); + QCOMPARE(proxyModel.data(proxyModel.index(1,0), Qt::DisplayRole).toString(), QString::fromLatin1("b")); + QCOMPARE(proxyModel.data(proxyModel.index(2,0), Qt::DisplayRole).toString(), QString::fromLatin1("c")); + + //now rows should be visible, and sorted + QCOMPARE(secondProxyModel.rowCount(), 3); + QCOMPARE(secondProxyModel.data(secondProxyModel.index(0,0), Qt::DisplayRole).toString(), QString::fromLatin1("c")); + QCOMPARE(secondProxyModel.data(secondProxyModel.index(1,0), Qt::DisplayRole).toString(), QString::fromLatin1("b")); + QCOMPARE(secondProxyModel.data(secondProxyModel.index(2,0), Qt::DisplayRole).toString(), QString::fromLatin1("a")); + + QCOMPARE(spyAbout1.count(), 1); + QCOMPARE(spyChanged1.count(), 1); + QCOMPARE(spyAbout2.count(), 1); + QCOMPARE(spyChanged2.count(), 1); +} + +void tst_QSortFilterProxyModel::taskQTBUG_7716_unnecessaryDynamicSorting() +{ + QStringListModel model; + const QStringList initial = QString("bravo charlie delta echo").split(" "); + model.setStringList(initial); + QSortFilterProxyModel proxy; + proxy.setDynamicSortFilter(false); + proxy.setSourceModel(&model); + proxy.sort(Qt::AscendingOrder); + + //append two rows + int maxrows = proxy.rowCount(QModelIndex()); + model.insertRows(maxrows, 2); + model.setData(model.index(maxrows, 0), QString("alpha")); + model.setData(model.index(maxrows + 1, 0), QString("fondue")); + + //append new items to the initial string list and compare with model + QStringList expected = initial; + expected << QString("alpha") << QString("fondue"); + + //if bug 7716 is present, new rows were prepended, when they should have been appended + for (int row = 0; row < proxy.rowCount(QModelIndex()); ++row) { + QModelIndex index = proxy.index(row, 0, QModelIndex()); + QCOMPARE(proxy.data(index, Qt::DisplayRole).toString(), expected.at(row)); + } +} + +class SelectionProxyModel : QAbstractProxyModel +{ + Q_OBJECT +public: + SelectionProxyModel() + : QAbstractProxyModel(), selectionModel(0) + { + } + + QModelIndex mapFromSource(QModelIndex const&) const + { return QModelIndex(); } + + QModelIndex mapToSource(QModelIndex const&) const + { return QModelIndex(); } + + QModelIndex index(int, int, const QModelIndex&) const + { return QModelIndex(); } + + QModelIndex parent(const QModelIndex&) const + { return QModelIndex(); } + + int rowCount(const QModelIndex&) const + { return 0; } + + int columnCount(const QModelIndex&) const + { return 0; } + + void setSourceModel( QAbstractItemModel *sourceModel ) + { + beginResetModel(); + disconnect( sourceModel, SIGNAL(modelAboutToBeReset()), this, SLOT(sourceModelAboutToBeReset()) ); + QAbstractProxyModel::setSourceModel( sourceModel ); + connect( sourceModel, SIGNAL(modelAboutToBeReset()), this, SLOT(sourceModelAboutToBeReset()) ); + endResetModel(); + } + + void setSelectionModel( QItemSelectionModel *_selectionModel ) + { + selectionModel = _selectionModel; + } + +private slots: + void sourceModelAboutToBeReset() + { + QVERIFY( selectionModel->selectedIndexes().size() == 1 ); + beginResetModel(); + } + + void sourceModelReset() + { + endResetModel(); + } + +private: + QItemSelectionModel *selectionModel; + +}; + +void tst_QSortFilterProxyModel::testMultipleProxiesWithSelection() +{ + QStringListModel model; + const QStringList initial = QString("bravo charlie delta echo").split(" "); + model.setStringList(initial); + + QSortFilterProxyModel proxy; + proxy.setSourceModel( &model ); + + SelectionProxyModel proxy1; + QSortFilterProxyModel proxy2; + + // Note that the order here matters. The order of the sourceAboutToBeReset + // exposes the bug in QSortFilterProxyModel. + proxy2.setSourceModel( &proxy ); + proxy1.setSourceModel( &proxy ); + + QItemSelectionModel selectionModel(&proxy2); + proxy1.setSelectionModel( &selectionModel ); + + selectionModel.select( proxy2.index( 0, 0 ), QItemSelectionModel::Select ); + + // trick the proxy into emitting begin/end reset signals. + proxy.setSourceModel(0); + +} + +static bool isValid(const QItemSelection &selection) { + foreach(const QItemSelectionRange &range, selection) + if (!range.isValid()) + return false; + return true; +} + +void tst_QSortFilterProxyModel::mapSelectionFromSource() +{ + QStringListModel model; + const QStringList initial = QString("bravo charlie delta echo").split(" "); + model.setStringList(initial); + + QSortFilterProxyModel proxy; + proxy.setDynamicSortFilter(true); + proxy.setFilterRegExp("d.*"); + proxy.setSourceModel(&model); + + // Only "delta" remains. + QVERIFY(proxy.rowCount() == 1); + + QItemSelection selection; + QModelIndex charlie = model.index(1, 0); + selection.append(QItemSelectionRange(charlie, charlie)); + QModelIndex delta = model.index(2, 0); + selection.append(QItemSelectionRange(delta, delta)); + QModelIndex echo = model.index(3, 0); + selection.append(QItemSelectionRange(echo, echo)); + + QVERIFY(isValid(selection)); + + QItemSelection proxiedSelection = proxy.mapSelectionFromSource(selection); + + // Only "delta" is in the mapped result. + QVERIFY(proxiedSelection.size() == 1); + QVERIFY(isValid(proxiedSelection)); +} + +class Model10287 : public QStandardItemModel +{ + Q_OBJECT + +public: + Model10287(QObject *parent = 0) + : QStandardItemModel(0, 1, parent) + { + parentItem = new QStandardItem("parent"); + parentItem->setData(false, Qt::UserRole); + appendRow(parentItem); + + childItem = new QStandardItem("child"); + childItem->setData(true, Qt::UserRole); + parentItem->appendRow(childItem); + + childItem2 = new QStandardItem("child2"); + childItem2->setData(true, Qt::UserRole); + parentItem->appendRow(childItem2); + } + + void removeChild() + { + childItem2->setData(false, Qt::UserRole); + parentItem->removeRow(0); + } + +private: + QStandardItem *parentItem, *childItem, *childItem2; +}; + +class Proxy10287 : public QSortFilterProxyModel +{ + Q_OBJECT + +public: + Proxy10287(QAbstractItemModel *model, QObject *parent = 0) + : QSortFilterProxyModel(parent) + { + setSourceModel(model); + setDynamicSortFilter(true); + } + +protected: + virtual bool filterAcceptsRow(int source_row, const QModelIndex &source_parent) const + { + // Filter based on UserRole in model + QModelIndex i = sourceModel()->index(source_row, 0, source_parent); + return i.data(Qt::UserRole).toBool(); + } +}; + +void tst_QSortFilterProxyModel::taskQTBUG_10287_unnecessaryMapCreation() +{ + Model10287 m; + Proxy10287 p(&m); + m.removeChild(); + // No assert failure, it passes. +} + +class FilteredColumnProxyModel : public QSortFilterProxyModel +{ + Q_OBJECT +public: + FilteredColumnProxyModel(QObject *parent = 0) + : QSortFilterProxyModel(parent) + { + + } + +protected: + bool filterAcceptsColumn(int column, const QModelIndex & /* source_parent */) const + { + return column % 2 != 0; + } +}; + +void tst_QSortFilterProxyModel::filteredColumns() +{ + DynamicTreeModel *model = new DynamicTreeModel(this); + + FilteredColumnProxyModel *proxy = new FilteredColumnProxyModel(this); + proxy->setSourceModel(model); + + new ModelTest(proxy, this); + + ModelInsertCommand *insertCommand = new ModelInsertCommand(model, this); + insertCommand->setNumCols(2); + insertCommand->setStartRow(0); + insertCommand->setEndRow(0); + // Parent is QModelIndex() + insertCommand->doCommand(); +} + +void tst_QSortFilterProxyModel::taskQTBUG_17812_resetInvalidate_data() +{ + QTest::addColumn("test"); + QTest::addColumn("works"); + + QTest::newRow("nothing") << 0 << false; + QTest::newRow("reset") << 1 << true; + QTest::newRow("invalidate") << 2 << true; + QTest::newRow("invalidate_filter") << 3 << true; +} + +void tst_QSortFilterProxyModel::taskQTBUG_17812_resetInvalidate() +{ + QFETCH(int, test); + QFETCH(bool, works); + + struct Proxy : QSortFilterProxyModel { + QString pattern; + virtual bool filterAcceptsRow(int source_row, const QModelIndex&) const { + return sourceModel()->data(sourceModel()->index(source_row, 0)).toString().contains(pattern); + } + void notifyChange(int test) { + switch (test) { + case 0: break; + case 1: reset(); break; + case 2: invalidate(); break; + case 3: invalidateFilter(); break; + } + } + }; + + QStringListModel sourceModel(QStringList() << "Poisson" << "Vache" << "Brebis" + << "Elephant" << "Cochon" << "Serpent" + << "Mouton" << "Ecureuil" << "Mouche"); + Proxy proxy; + proxy.pattern = QString::fromLatin1("n"); + proxy.setSourceModel(&sourceModel); + + QCOMPARE(proxy.rowCount(), 5); + for (int i = 0; i < proxy.rowCount(); i++) { + QVERIFY(proxy.data(proxy.index(i,0)).toString().contains('n')); + } + + proxy.pattern = QString::fromLatin1("o"); + proxy.notifyChange(test); + + QCOMPARE(proxy.rowCount(), works ? 4 : 5); + bool ok = true; + for (int i = 0; i < proxy.rowCount(); i++) { + if (!proxy.data(proxy.index(i,0)).toString().contains('o')) + ok = false; + } + QCOMPARE(ok, works); +} + +Q_DECLARE_METATYPE(QList) + +void tst_QSortFilterProxyModel::testParentLayoutChanged() +{ + QStandardItemModel model; + QStandardItem *parentItem = model.invisibleRootItem(); + for (int i = 0; i < 4; ++i) { + { + QStandardItem *item = new QStandardItem(QString("item %0").arg(i)); + parentItem->appendRow(item); + } + { + QStandardItem *item = new QStandardItem(QString("item 1%0").arg(i)); + parentItem->appendRow(item); + parentItem = item; + } + } + + QSortFilterProxyModel proxy; + proxy.sort(0, Qt::AscendingOrder); + proxy.setDynamicSortFilter(true); + + proxy.setSourceModel(&model); + proxy.setObjectName("proxy"); + + // When Proxy1 emits layoutChanged(QList) this + // one will too, with mapped indexes. + QSortFilterProxyModel proxy2; + proxy2.sort(0, Qt::AscendingOrder); + proxy2.setDynamicSortFilter(true); + + proxy2.setSourceModel(&proxy); + proxy2.setObjectName("proxy2"); + + qRegisterMetaType >(); + + QSignalSpy dataChangedSpy(&model, SIGNAL(dataChanged(QModelIndex,QModelIndex))); + + // Verify that the no-arg signal is still emitted. + QSignalSpy layoutAboutToBeChangedSpy(&proxy, SIGNAL(layoutAboutToBeChanged())); + QSignalSpy layoutChangedSpy(&proxy, SIGNAL(layoutChanged())); + + QSignalSpy parentsAboutToBeChangedSpy(&proxy, SIGNAL(layoutAboutToBeChanged(QList))); + QSignalSpy parentsChangedSpy(&proxy, SIGNAL(layoutChanged(QList))); + + QSignalSpy proxy2ParentsAboutToBeChangedSpy(&proxy2, SIGNAL(layoutAboutToBeChanged(QList))); + QSignalSpy proxy2ParentsChangedSpy(&proxy2, SIGNAL(layoutChanged(QList))); + + QStandardItem *item = model.invisibleRootItem()->child(1)->child(1); + + // Ensure mapped: + proxy.mapFromSource(model.indexFromItem(item)); + + item->setData("Changed"); + + QCOMPARE(dataChangedSpy.size(), 1); + QCOMPARE(layoutAboutToBeChangedSpy.size(), 1); + QCOMPARE(layoutChangedSpy.size(), 1); + QCOMPARE(parentsAboutToBeChangedSpy.size(), 1); + QCOMPARE(parentsChangedSpy.size(), 1); + QCOMPARE(proxy2ParentsAboutToBeChangedSpy.size(), 1); + QCOMPARE(proxy2ParentsChangedSpy.size(), 1); + + QVariantList beforeSignal = parentsAboutToBeChangedSpy.first(); + QVariantList afterSignal = parentsChangedSpy.first(); + + QCOMPARE(beforeSignal.size(), 1); + QCOMPARE(afterSignal.size(), 1); + + QList beforeParents = beforeSignal.first().value >(); + QList afterParents = afterSignal.first().value >(); + + QCOMPARE(beforeParents.size(), 1); + QCOMPARE(afterParents.size(), 1); + + QVERIFY(beforeParents.first().isValid()); + QVERIFY(beforeParents.first() == afterParents.first()); + + QVERIFY(beforeParents.first() == proxy.mapFromSource(model.indexFromItem(model.invisibleRootItem()->child(1)))); + + QList proxy2BeforeList = proxy2ParentsAboutToBeChangedSpy.first().first().value >(); + QList proxy2AfterList = proxy2ParentsChangedSpy.first().first().value >(); + + QCOMPARE(proxy2BeforeList.size(), beforeParents.size()); + QCOMPARE(proxy2AfterList.size(), afterParents.size()); + foreach (const QPersistentModelIndex &idx, proxy2BeforeList) + QVERIFY(beforeParents.contains(proxy2.mapToSource(idx))); + foreach (const QPersistentModelIndex &idx, proxy2AfterList) + QVERIFY(afterParents.contains(proxy2.mapToSource(idx))); + +} + +class SignalArgumentChecker : public QObject +{ + Q_OBJECT +public: + SignalArgumentChecker(QAbstractItemModel *model, QAbstractProxyModel *proxy, QObject *parent = 0) + : QObject(parent), m_model(model), m_proxy(proxy) + { + connect(model, SIGNAL(rowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)), SLOT(rowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int))); + connect(model, SIGNAL(rowsMoved(QModelIndex,int,int,QModelIndex,int)), SLOT(rowsMoved(QModelIndex,int,int,QModelIndex,int))); + connect(proxy, SIGNAL(layoutAboutToBeChanged(QList)), SLOT(layoutAboutToBeChanged(QList))); + connect(proxy, SIGNAL(layoutChanged(QList)), SLOT(layoutChanged(QList))); + } + +private slots: + void rowsAboutToBeMoved(const QModelIndex &source, int, int, const QModelIndex &destination, int) + { + m_p1PersistentBefore = source; + m_p2PersistentBefore = destination; + m_p2FirstProxyChild = m_proxy->index(0, 0, m_proxy->mapFromSource(destination)); + } + + void rowsMoved(const QModelIndex &source, int, int, const QModelIndex &destination, int) + { + m_p1PersistentAfter = source; + m_p2PersistentAfter = destination; + } + + void layoutAboutToBeChanged(const QList &parents) + { + QVERIFY(m_p1PersistentBefore.isValid()); + QVERIFY(m_p2PersistentBefore.isValid()); + QCOMPARE(parents.size(), 2); + QVERIFY(parents.first() != parents.at(1)); + QVERIFY(parents.contains(m_proxy->mapFromSource(m_p1PersistentBefore))); + QVERIFY(parents.contains(m_proxy->mapFromSource(m_p2PersistentBefore))); + } + + void layoutChanged(const QList &parents) + { + QVERIFY(m_p1PersistentAfter.isValid()); + QVERIFY(m_p2PersistentAfter.isValid()); + QCOMPARE(parents.size(), 2); + QVERIFY(parents.first() != parents.at(1)); + QVERIFY(parents.contains(m_proxy->mapFromSource(m_p1PersistentAfter))); + QVERIFY(parents.contains(m_proxy->mapFromSource(m_p2PersistentAfter))); + + // In the source model, the rows were moved to row 1 in the parent. + // m_p2FirstProxyChild was created with row 0 in the proxy. + // The moved rows in the proxy do not appear at row 1 because of sorting. + // Sorting causes them to appear at row 0 instead, pushing what used to + // be row 0 in the proxy down by two rows. + QCOMPARE(m_p2FirstProxyChild.row(), 2); + } + +private: + QAbstractItemModel *m_model; + QAbstractProxyModel *m_proxy; + QPersistentModelIndex m_p1PersistentBefore; + QPersistentModelIndex m_p2PersistentBefore; + QPersistentModelIndex m_p1PersistentAfter; + QPersistentModelIndex m_p2PersistentAfter; + + QPersistentModelIndex m_p2FirstProxyChild; +}; + +void tst_QSortFilterProxyModel::moveSourceRows() +{ + qRegisterMetaType >(); + + DynamicTreeModel model; + + { + ModelInsertCommand insertCommand(&model); + insertCommand.setStartRow(0); + insertCommand.setEndRow(9); + insertCommand.doCommand(); + } + { + ModelInsertCommand insertCommand(&model); + insertCommand.setAncestorRowNumbers(QList() << 2); + insertCommand.setStartRow(0); + insertCommand.setEndRow(9); + insertCommand.doCommand(); + } + { + ModelInsertCommand insertCommand(&model); + insertCommand.setAncestorRowNumbers(QList() << 5); + insertCommand.setStartRow(0); + insertCommand.setEndRow(9); + insertCommand.doCommand(); + } + + QSortFilterProxyModel proxy; + proxy.setDynamicSortFilter(true); + proxy.sort(0, Qt::AscendingOrder); + + // We need to check the arguments at emission time + SignalArgumentChecker checker(&model, &proxy); + + proxy.setSourceModel(&model); + + QSortFilterProxyModel filterProxy; + filterProxy.setDynamicSortFilter(true); + filterProxy.sort(0, Qt::AscendingOrder); + filterProxy.setSourceModel(&proxy); + filterProxy.setFilterRegExp("6"); // One of the parents + + QSortFilterProxyModel filterBothProxy; + filterBothProxy.setDynamicSortFilter(true); + filterBothProxy.sort(0, Qt::AscendingOrder); + filterBothProxy.setSourceModel(&proxy); + filterBothProxy.setFilterRegExp("5"); // The parents are 6 and 3. This filters both out. + + QSignalSpy modelBeforeSpy(&model, SIGNAL(rowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int))); + QSignalSpy modelAfterSpy(&model, SIGNAL(rowsMoved(QModelIndex,int,int,QModelIndex,int))); + QSignalSpy proxyBeforeMoveSpy(m_proxy, SIGNAL(rowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int))); + QSignalSpy proxyAfterMoveSpy(m_proxy, SIGNAL(rowsMoved(QModelIndex,int,int,QModelIndex,int))); + QSignalSpy proxyBeforeParentLayoutSpy(&proxy, SIGNAL(layoutAboutToBeChanged(QList))); + QSignalSpy proxyAfterParentLayoutSpy(&proxy, SIGNAL(layoutChanged(QList))); + QSignalSpy filterBeforeParentLayoutSpy(&filterProxy, SIGNAL(layoutAboutToBeChanged(QList))); + QSignalSpy filterAfterParentLayoutSpy(&filterProxy, SIGNAL(layoutChanged(QList))); + QSignalSpy filterBothBeforeParentLayoutSpy(&filterBothProxy, SIGNAL(layoutAboutToBeChanged(QList))); + QSignalSpy filterBothAfterParentLayoutSpy(&filterBothProxy, SIGNAL(layoutChanged(QList))); + + { + ModelMoveCommand moveCommand(&model, 0); + moveCommand.setAncestorRowNumbers(QList() << 2); + moveCommand.setDestAncestors(QList() << 5); + moveCommand.setStartRow(3); + moveCommand.setEndRow(4); + moveCommand.setDestRow(1); + moveCommand.doCommand(); + } + + // Proxy notifies layout change + QCOMPARE(modelBeforeSpy.size(), 1); + QCOMPARE(proxyBeforeParentLayoutSpy.size(), 1); + QCOMPARE(modelAfterSpy.size(), 1); + QCOMPARE(proxyAfterParentLayoutSpy.size(), 1); + + // But it doesn't notify a move. + QCOMPARE(proxyBeforeMoveSpy.size(), 0); + QCOMPARE(proxyAfterMoveSpy.size(), 0); + + QCOMPARE(filterBeforeParentLayoutSpy.size(), 1); + QCOMPARE(filterAfterParentLayoutSpy.size(), 1); + + QList filterBeforeParents = filterBeforeParentLayoutSpy.first().first().value >(); + QList filterAfterParents = filterAfterParentLayoutSpy.first().first().value >(); + + QCOMPARE(filterBeforeParents.size(), 1); + QCOMPARE(filterAfterParents.size(), 1); + + QCOMPARE(filterBothBeforeParentLayoutSpy.size(), 0); + QCOMPARE(filterBothAfterParentLayoutSpy.size(), 0); +} + +QTEST_MAIN(tst_QSortFilterProxyModel) +#include "tst_qsortfilterproxymodel.moc" diff --git a/tests/auto/corelib/itemmodels/qstringlistmodel/.gitignore b/tests/auto/corelib/itemmodels/qstringlistmodel/.gitignore new file mode 100644 index 0000000000..9c14561e3c --- /dev/null +++ b/tests/auto/corelib/itemmodels/qstringlistmodel/.gitignore @@ -0,0 +1 @@ +tst_qstringlistmodel diff --git a/tests/auto/corelib/itemmodels/qstringlistmodel/qmodellistener.h b/tests/auto/corelib/itemmodels/qstringlistmodel/qmodellistener.h new file mode 100644 index 0000000000..f3ed3c1793 --- /dev/null +++ b/tests/auto/corelib/itemmodels/qstringlistmodel/qmodellistener.h @@ -0,0 +1,75 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +#include +#include +#include + + +QT_FORWARD_DECLARE_CLASS(QStringListModel) + +class QModelListener : public QObject +{ + Q_OBJECT +public: + QModelListener(QStringList *pAboutToStringlist, QStringList *pExpectedStringlist, QStringListModel *pModel) + { + setTestData(pAboutToStringlist, pExpectedStringlist, pModel); + } + virtual ~QModelListener() { } + + void setTestData(QStringList *pAboutToStringlist, QStringList *pExpectedStringlist, QStringListModel *pModel) + { + m_pAboutToStringlist = pAboutToStringlist; + m_pExpectedStringlist = pExpectedStringlist; + m_pModel = pModel; + } + +private: + QStringList *m_pAboutToStringlist; + QStringList *m_pExpectedStringlist; + QStringListModel *m_pModel; + +public slots: + void rowsAboutToBeRemovedOrInserted(const QModelIndex & parent, int start, int end ); + void rowsRemovedOrInserted(const QModelIndex & parent, int start, int end ); + +}; + diff --git a/tests/auto/corelib/itemmodels/qstringlistmodel/qstringlistmodel.pro b/tests/auto/corelib/itemmodels/qstringlistmodel/qstringlistmodel.pro new file mode 100644 index 0000000000..ecdd30cae2 --- /dev/null +++ b/tests/auto/corelib/itemmodels/qstringlistmodel/qstringlistmodel.pro @@ -0,0 +1,9 @@ +CONFIG += testcase +TARGET = tst_qstringlistmodel +QT += widgets testlib +HEADERS += qmodellistener.h + +SOURCES += tst_qstringlistmodel.cpp + + + diff --git a/tests/auto/corelib/itemmodels/qstringlistmodel/tst_qstringlistmodel.cpp b/tests/auto/corelib/itemmodels/qstringlistmodel/tst_qstringlistmodel.cpp new file mode 100644 index 0000000000..c8afe5dd75 --- /dev/null +++ b/tests/auto/corelib/itemmodels/qstringlistmodel/tst_qstringlistmodel.cpp @@ -0,0 +1,283 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + + +#include +#include +#include +#include +#include +#include +#include +#include "qmodellistener.h" +#include + +void QModelListener::rowsAboutToBeRemovedOrInserted(const QModelIndex & parent, int start, int end ) +{ + int i; + for (i = 0; start + i <= end; i++) + { + QModelIndex mIndex = m_pModel->index(start + i, 0, parent); + QVariant var = m_pModel->data(mIndex, Qt::DisplayRole); + QString str = var.toString(); + + QCOMPARE(str, m_pAboutToStringlist->at(i)); + } +} + +void QModelListener::rowsRemovedOrInserted(const QModelIndex & parent, int , int) +{ + int i; + // Can the rows that *are* removed be iterated now ? + + // What about rowsAboutToBeInserted - what will the indices be? + // will insertRow() overwrite existing, or insert (and conseq. grow the model?) + // What will the item then contain? empty data? + + // RemoveColumn. Does that also fire the rowsRemoved-family signals? + + for (i = 0; i < m_pExpectedStringlist->size(); i++) + { + QModelIndex mIndex = m_pModel->index(i, 0, parent); + QVariant var = m_pModel->data(mIndex, Qt::DisplayRole); + QString str = var.toString(); + + //qDebug() << "index: " << i << " start: " << start << "end: " << end; + QCOMPARE(str, m_pExpectedStringlist->at(i)); + } +} + + +class tst_QStringListModel : public QObject +{ + Q_OBJECT + +public: + + tst_QStringListModel(); + virtual ~tst_QStringListModel(); + + +public slots: + void initTestCase(); + void cleanupTestCase(); + void init(); + void cleanup(); +private slots: + + void rowsAboutToBeRemoved_rowsRemoved(); + void rowsAboutToBeRemoved_rowsRemoved_data(); + + void rowsAboutToBeInserted_rowsInserted(); + void rowsAboutToBeInserted_rowsInserted_data(); +}; + + +tst_QStringListModel::tst_QStringListModel() + +{ +} + +tst_QStringListModel::~tst_QStringListModel() +{ +} + +void tst_QStringListModel::initTestCase() +{ +} + +void tst_QStringListModel::cleanupTestCase() +{ +} + +void tst_QStringListModel::init() +{ +} + +void tst_QStringListModel::cleanup() +{ +} + +/* + tests +*/ + + +void tst_QStringListModel::rowsAboutToBeRemoved_rowsRemoved_data() +{ + QTest::addColumn("input"); + QTest::addColumn("row"); + QTest::addColumn("count"); + QTest::addColumn("aboutto"); + QTest::addColumn("res"); + + QStringList strings0; strings0 << "One" << "Two" << "Three" << "Four" << "Five"; + QStringList aboutto0; aboutto0 << "Two" << "Three"; + QStringList res0; res0 << "One" << "Four" << "Five"; + QTest::newRow( "data0" ) << strings0 << 1 << 2 << aboutto0 << res0; + + QStringList strings1; strings1 << "One" << "Two" << "Three" << "Four" << "Five"; + QStringList aboutto1; aboutto1 << "One" << "Two"; + QStringList res1; res1 << "Three" << "Four" << "Five"; + QTest::newRow( "data1" ) << strings1 << 0 << 2 << aboutto1 << res1; + + QStringList strings2; strings2 << "One" << "Two" << "Three" << "Four" << "Five"; + QStringList aboutto2; aboutto2 << "Four" << "Five"; + QStringList res2; res2 << "One" << "Two" << "Three"; + QTest::newRow( "data2" ) << strings2 << 3 << 2 << aboutto2 << res2; + + QStringList strings3; strings3 << "One" << "Two" << "Three" << "Four" << "Five"; + QStringList aboutto3; aboutto3 << "One" << "Two" << "Three" << "Four" << "Five"; + QStringList res3; + QTest::newRow( "data3" ) << strings3 << 0 << 5 << aboutto3 << res3; + + /* Not sure if this is a valid test */ + QStringList strings4; strings4 << "One" << "Two" << "Three" << "Four" << "Five"; + QStringList aboutto4; aboutto4 << "Five" << ""; + QStringList res4; res4 << "One" << "Two" << "Three" << "Four"; + QTest::newRow( "data4" ) << strings4 << 4 << 2 << aboutto4 << res4; + + /* + * Keep this, template to add more data + QStringList strings2; strings2 << "One" << "Two" << "Three" << "Four" << "Five"; + QStringList aboutto2; aboutto2 << "One" << "Two" << "Three" << "Four" << "Five"; + QStringList res2; res2 << "One" << "Two" << "Three" << "Four" << "Five"; + QTest::newRow( "data2" ) << strings2 << 0 << 5 << aboutto2 << res2; +*/ + +} + +void tst_QStringListModel::rowsAboutToBeRemoved_rowsRemoved() +{ + QFETCH(QStringList, input); + QFETCH(int, row); + QFETCH(int, count); + QFETCH(QStringList, aboutto); + QFETCH(QStringList, res); + + QStringListModel *model = new QStringListModel(input); + QModelListener *pListener = new QModelListener(&aboutto, &res, model); + pListener->connect(model, SIGNAL( rowsAboutToBeRemoved(const QModelIndex & , int , int )), + pListener, SLOT( rowsAboutToBeRemovedOrInserted(const QModelIndex & , int , int )) ); + + pListener->connect(model, SIGNAL( rowsRemoved(const QModelIndex & , int , int )), + pListener, SLOT( rowsRemovedOrInserted(const QModelIndex & , int , int )) ); + + model->removeRows(row,count); + // At this point, control goes to our connected slots inn this order: + // 1. rowsAboutToBeRemovedOrInserted + // 2. rowsRemovedOrInserted + // Control returns here + + delete pListener; + delete model; + +} + +void tst_QStringListModel::rowsAboutToBeInserted_rowsInserted_data() +{ + QTest::addColumn("input"); + QTest::addColumn("row"); + QTest::addColumn("count"); + QTest::addColumn("aboutto"); + QTest::addColumn("res"); + + QStringList strings0; strings0 << "One" << "Two" << "Three" << "Four" << "Five"; + QStringList aboutto0; aboutto0 << "Two" << "Three"; + QStringList res0; res0 << "One" << "" << "" << "Two" << "Three" << "Four" << "Five"; + QTest::newRow( "data0" ) << strings0 << 1 << 2 << aboutto0 << res0; + + QStringList strings1; strings1 << "One" << "Two" << "Three" << "Four" << "Five"; + QStringList aboutto1; aboutto1 << "One" << "Two"; + QStringList res1; res1 << "" << "" << "One" << "Two" << "Three" << "Four" << "Five"; + QTest::newRow( "data1" ) << strings1 << 0 << 2 << aboutto1 << res1; + + QStringList strings2; strings2 << "One" << "Two" << "Three" << "Four" << "Five"; + QStringList aboutto2; aboutto2 << "Four" << "Five"; + QStringList res2; res2 << "One" << "Two" << "Three" << "" << "" << "Four" << "Five"; + QTest::newRow( "data2" ) << strings2 << 3 << 2 << aboutto2 << res2; + + QStringList strings3; strings3 << "One" << "Two" << "Three" << "Four" << "Five"; + QStringList aboutto3; aboutto3 << "One" << "Two" << "Three" << "Four" << "Five"; + QStringList res3; res3 << "" << "" << "" << "" << "" << "One" << "Two" << "Three" << "Four" << "Five"; + QTest::newRow( "data3" ) << strings3 << 0 << 5 << aboutto3 << res3; + + /* + * Keep this, template to add more data + QStringList strings2; strings2 << "One" << "Two" << "Three" << "Four" << "Five"; + QStringList aboutto2; aboutto2 << "One" << "Two" << "Three" << "Four" << "Five"; + QStringList res2; res2 << "One" << "Two" << "Three" << "Four" << "Five"; + QTest::newRow( "data2" ) << strings2 << 0 << 5 << aboutto2 << res2; +*/ + +} + +void tst_QStringListModel::rowsAboutToBeInserted_rowsInserted() +{ + QFETCH(QStringList, input); + QFETCH(int, row); + QFETCH(int, count); + QFETCH(QStringList, aboutto); + QFETCH(QStringList, res); + + QStringListModel *model = new QStringListModel(input); + QModelListener *pListener = new QModelListener(&aboutto, &res, model); + connect(model, SIGNAL( rowsAboutToBeInserted(const QModelIndex & , int , int )), + pListener, SLOT( rowsAboutToBeRemovedOrInserted(const QModelIndex & , int , int )) ); + + connect(model, SIGNAL( rowsInserted(const QModelIndex & , int , int )), + pListener, SLOT( rowsRemovedOrInserted(const QModelIndex & , int , int )) ); + + model->insertRows(row,count); + // At this point, control goes to our connected slots inn this order: + // 1. rowsAboutToBeRemovedOrInserted + // 2. rowsRemovedOrInserted + // Control returns here + + delete pListener; + delete model; + +} + + +QTEST_MAIN(tst_QStringListModel) +#include "tst_qstringlistmodel.moc" + diff --git a/tests/auto/widgets/itemviews/itemviews.pro b/tests/auto/widgets/itemviews/itemviews.pro index fc338fdb7b..e13a5a82ca 100644 --- a/tests/auto/widgets/itemviews/itemviews.pro +++ b/tests/auto/widgets/itemviews/itemviews.pro @@ -1,23 +1,18 @@ TEMPLATE=subdirs SUBDIRS=\ qabstractitemview \ - qabstractproxymodel \ qcolumnview \ qdatawidgetmapper \ qdirmodel \ qfileiconprovider \ qheaderview \ - qidentityproxymodel \ qitemdelegate \ qitemeditorfactory \ - qitemselectionmodel \ qitemview \ qlistview \ qlistwidget \ - qsortfilterproxymodel \ qstandarditem \ qstandarditemmodel \ - qstringlistmodel \ qtableview \ qtablewidget \ qtreeview \ diff --git a/tests/auto/widgets/itemviews/qabstractproxymodel/.gitignore b/tests/auto/widgets/itemviews/qabstractproxymodel/.gitignore deleted file mode 100644 index bffc04d632..0000000000 --- a/tests/auto/widgets/itemviews/qabstractproxymodel/.gitignore +++ /dev/null @@ -1 +0,0 @@ -tst_qabstractproxymodel diff --git a/tests/auto/widgets/itemviews/qabstractproxymodel/qabstractproxymodel.pro b/tests/auto/widgets/itemviews/qabstractproxymodel/qabstractproxymodel.pro deleted file mode 100644 index 5ded15ad5c..0000000000 --- a/tests/auto/widgets/itemviews/qabstractproxymodel/qabstractproxymodel.pro +++ /dev/null @@ -1,4 +0,0 @@ -CONFIG += testcase -TARGET = tst_qabstractproxymodel -QT += widgets testlib -SOURCES += tst_qabstractproxymodel.cpp diff --git a/tests/auto/widgets/itemviews/qabstractproxymodel/tst_qabstractproxymodel.cpp b/tests/auto/widgets/itemviews/qabstractproxymodel/tst_qabstractproxymodel.cpp deleted file mode 100644 index b6557c45ec..0000000000 --- a/tests/auto/widgets/itemviews/qabstractproxymodel/tst_qabstractproxymodel.cpp +++ /dev/null @@ -1,449 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the test suite of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - - -#include -#include -#include -#include - -class tst_QAbstractProxyModel : public QObject -{ - Q_OBJECT - -public slots: - void initTestCase(); - void cleanupTestCase(); - void init(); - void cleanup(); - -private slots: - void qabstractproxymodel_data(); - void qabstractproxymodel(); - void data_data(); - void data(); - void flags_data(); - void flags(); - void headerData_data(); - void headerData(); - void itemData_data(); - void itemData(); - void mapFromSource_data(); - void mapFromSource(); - void mapSelectionFromSource_data(); - void mapSelectionFromSource(); - void mapSelectionToSource_data(); - void mapSelectionToSource(); - void mapToSource_data(); - void mapToSource(); - void revert_data(); - void revert(); - void setSourceModel_data(); - void setSourceModel(); - void submit_data(); - void submit(); - void testRoleNames(); -}; - -// Subclass that exposes the protected functions. -class SubQAbstractProxyModel : public QAbstractProxyModel -{ -public: - // QAbstractProxyModel::mapFromSource is a pure virtual function. - QModelIndex mapFromSource(QModelIndex const& sourceIndex) const - { Q_UNUSED(sourceIndex); return QModelIndex(); } - - // QAbstractProxyModel::mapToSource is a pure virtual function. - QModelIndex mapToSource(QModelIndex const& proxyIndex) const - { Q_UNUSED(proxyIndex); return QModelIndex(); } - - QModelIndex index(int, int, const QModelIndex&) const - { - return QModelIndex(); - } - - QModelIndex parent(const QModelIndex&) const - { - return QModelIndex(); - } - - int rowCount(const QModelIndex&) const - { - return 0; - } - - int columnCount(const QModelIndex&) const - { - return 0; - } -}; - -// This will be called before the first test function is executed. -// It is only called once. -void tst_QAbstractProxyModel::initTestCase() -{ -} - -// This will be called after the last test function is executed. -// It is only called once. -void tst_QAbstractProxyModel::cleanupTestCase() -{ -} - -// This will be called before each test function is executed. -void tst_QAbstractProxyModel::init() -{ -} - -// This will be called after every test function. -void tst_QAbstractProxyModel::cleanup() -{ -} - -void tst_QAbstractProxyModel::qabstractproxymodel_data() -{ -} - -void tst_QAbstractProxyModel::qabstractproxymodel() -{ - SubQAbstractProxyModel model; - model.data(QModelIndex()); - model.flags(QModelIndex()); - model.headerData(0, Qt::Vertical, 0); - model.itemData(QModelIndex()); - model.mapFromSource(QModelIndex()); - model.mapSelectionFromSource(QItemSelection()); - model.mapSelectionToSource(QItemSelection()); - model.mapToSource(QModelIndex()); - model.revert(); - model.setSourceModel(0); - QCOMPARE(model.sourceModel(), (QAbstractItemModel*)0); - model.submit(); -} - -Q_DECLARE_METATYPE(QVariant) -Q_DECLARE_METATYPE(QModelIndex) -void tst_QAbstractProxyModel::data_data() -{ - QTest::addColumn("proxyIndex"); - QTest::addColumn("role"); - QTest::addColumn("data"); - QTest::newRow("null") << QModelIndex() << 0 << QVariant(); -} - -// public QVariant data(QModelIndex const& proxyIndex, int role = Qt::DisplayRole) const -void tst_QAbstractProxyModel::data() -{ - QFETCH(QModelIndex, proxyIndex); - QFETCH(int, role); - QFETCH(QVariant, data); - - SubQAbstractProxyModel model; - QCOMPARE(model.data(proxyIndex, role), data); -} - -Q_DECLARE_METATYPE(Qt::ItemFlags) -void tst_QAbstractProxyModel::flags_data() -{ - QTest::addColumn("index"); - QTest::addColumn("flags"); - QTest::newRow("null") << QModelIndex() << (Qt::ItemFlags)0; -} - -// public Qt::ItemFlags flags(QModelIndex const& index) const -void tst_QAbstractProxyModel::flags() -{ - QFETCH(QModelIndex, index); - QFETCH(Qt::ItemFlags, flags); - - SubQAbstractProxyModel model; - QCOMPARE(model.flags(index), flags); -} - -Q_DECLARE_METATYPE(Qt::Orientation) -Q_DECLARE_METATYPE(Qt::ItemDataRole) -void tst_QAbstractProxyModel::headerData_data() -{ - QTest::addColumn("section"); - QTest::addColumn("orientation"); - QTest::addColumn("role"); - QTest::addColumn("headerData"); - QTest::newRow("null") << 0 << Qt::Vertical << Qt::UserRole << QVariant(); -} - -// public QVariant headerData(int section, Qt::Orientation orientation, int role) const -void tst_QAbstractProxyModel::headerData() -{ - QFETCH(int, section); - QFETCH(Qt::Orientation, orientation); - QFETCH(Qt::ItemDataRole, role); - QFETCH(QVariant, headerData); - - SubQAbstractProxyModel model; - QCOMPARE(model.headerData(section, orientation, role), headerData); -} - -void tst_QAbstractProxyModel::itemData_data() -{ - QTest::addColumn("index"); - QTest::addColumn("count"); - - QTest::newRow("null") << QModelIndex() << 0; -} - -// public QMap itemData(QModelIndex const& index) const -void tst_QAbstractProxyModel::itemData() -{ - QFETCH(QModelIndex, index); - QFETCH(int, count); - SubQAbstractProxyModel model; - QCOMPARE(model.itemData(index).count(), count); -} - -void tst_QAbstractProxyModel::mapFromSource_data() -{ - QTest::addColumn("sourceIndex"); - QTest::addColumn("mapFromSource"); - QTest::newRow("null") << QModelIndex() << QModelIndex(); -} - -// public QModelIndex mapFromSource(QModelIndex const& sourceIndex) const -void tst_QAbstractProxyModel::mapFromSource() -{ - QFETCH(QModelIndex, sourceIndex); - QFETCH(QModelIndex, mapFromSource); - - SubQAbstractProxyModel model; - QCOMPARE(model.mapFromSource(sourceIndex), mapFromSource); -} - -Q_DECLARE_METATYPE(QItemSelection) -void tst_QAbstractProxyModel::mapSelectionFromSource_data() -{ - QTest::addColumn("selection"); - QTest::addColumn("mapSelectionFromSource"); - QTest::newRow("null") << QItemSelection() << QItemSelection(); - QTest::newRow("empty") << QItemSelection(QModelIndex(), QModelIndex()) << QItemSelection(QModelIndex(), QModelIndex()); -} - -// public QItemSelection mapSelectionFromSource(QItemSelection const& selection) const -void tst_QAbstractProxyModel::mapSelectionFromSource() -{ - QFETCH(QItemSelection, selection); - QFETCH(QItemSelection, mapSelectionFromSource); - - SubQAbstractProxyModel model; - QCOMPARE(model.mapSelectionFromSource(selection), mapSelectionFromSource); -} - -void tst_QAbstractProxyModel::mapSelectionToSource_data() -{ - QTest::addColumn("selection"); - QTest::addColumn("mapSelectionToSource"); - QTest::newRow("null") << QItemSelection() << QItemSelection(); - QTest::newRow("empty") << QItemSelection(QModelIndex(), QModelIndex()) << QItemSelection(QModelIndex(), QModelIndex()); -} - -// public QItemSelection mapSelectionToSource(QItemSelection const& selection) const -void tst_QAbstractProxyModel::mapSelectionToSource() -{ - QFETCH(QItemSelection, selection); - QFETCH(QItemSelection, mapSelectionToSource); - - SubQAbstractProxyModel model; - QCOMPARE(model.mapSelectionToSource(selection), mapSelectionToSource); -} - -void tst_QAbstractProxyModel::mapToSource_data() -{ - QTest::addColumn("proxyIndex"); - QTest::addColumn("mapToSource"); - QTest::newRow("null") << QModelIndex() << QModelIndex(); -} - -// public QModelIndex mapToSource(QModelIndex const& proxyIndex) const -void tst_QAbstractProxyModel::mapToSource() -{ - QFETCH(QModelIndex, proxyIndex); - QFETCH(QModelIndex, mapToSource); - - SubQAbstractProxyModel model; - QCOMPARE(model.mapToSource(proxyIndex), mapToSource); -} - -void tst_QAbstractProxyModel::revert_data() -{ - //QTest::addColumn("foo"); - //QTest::newRow("null") << 0; -} - -// public void revert() -void tst_QAbstractProxyModel::revert() -{ - //QFETCH(int, foo); - - SubQAbstractProxyModel model; - model.revert(); -} - -void tst_QAbstractProxyModel::setSourceModel_data() -{ - //QTest::addColumn("sourceModelCount"); - //QTest::newRow("null") << 0; -} - -// public void setSourceModel(QAbstractItemModel* sourceModel) -void tst_QAbstractProxyModel::setSourceModel() -{ - //QFETCH(int, sourceModelCount); - - SubQAbstractProxyModel model; - QStandardItemModel *sourceModel = new QStandardItemModel(&model); - model.setSourceModel(sourceModel); - QCOMPARE(model.sourceModel(), static_cast(sourceModel)); - - QStandardItemModel *sourceModel2 = new QStandardItemModel(&model); - model.setSourceModel(sourceModel2); - QCOMPARE(model.sourceModel(), static_cast(sourceModel2)); - - delete sourceModel2; - QCOMPARE(model.sourceModel(), static_cast(0)); -} - -void tst_QAbstractProxyModel::submit_data() -{ - QTest::addColumn("submit"); - QTest::newRow("null") << true; -} - -// public bool submit() -void tst_QAbstractProxyModel::submit() -{ - QFETCH(bool, submit); - - SubQAbstractProxyModel model; - QCOMPARE(model.submit(), submit); -} - -class StandardItemModelWithCustomRoleNames : public QStandardItemModel -{ -public: - enum CustomRole { - CustomRole1 = Qt::UserRole, - CustomRole2 - }; - - StandardItemModelWithCustomRoleNames() { - QHash _roleNames = roleNames(); - _roleNames.insert(CustomRole1, "custom1"); - _roleNames.insert(CustomRole2, "custom2"); - setRoleNames(_roleNames); - } -}; - -class AnotherStandardItemModelWithCustomRoleNames : public QStandardItemModel -{ - public: - enum CustomRole { - AnotherCustomRole1 = Qt::UserRole + 10, // Different to StandardItemModelWithCustomRoleNames::CustomRole1 - AnotherCustomRole2 - }; - - AnotherStandardItemModelWithCustomRoleNames() { - QHash _roleNames = roleNames(); - _roleNames.insert(AnotherCustomRole1, "another_custom1"); - _roleNames.insert(AnotherCustomRole2, "another_custom2"); - setRoleNames(_roleNames); - } -}; - -/** - Verifies that @p subSet is a subset of @p superSet. That is, all keys in @p subSet exist in @p superSet and have the same values. -*/ -static void verifySubSetOf(const QHash &superSet, const QHash &subSet) -{ - QHash::const_iterator it = subSet.constBegin(); - const QHash::const_iterator end = subSet.constEnd(); - for ( ; it != end; ++it ) { - QVERIFY(superSet.contains(it.key())); - QVERIFY(it.value() == superSet.value(it.key())); - } -} - -void tst_QAbstractProxyModel::testRoleNames() -{ - QStandardItemModel defaultModel; - StandardItemModelWithCustomRoleNames model; - QHash rootModelRoleNames = model.roleNames(); - QHash defaultModelRoleNames = defaultModel.roleNames(); - - verifySubSetOf( rootModelRoleNames, defaultModelRoleNames); - QVERIFY( rootModelRoleNames.size() == defaultModelRoleNames.size() + 2 ); - QVERIFY( rootModelRoleNames.contains(StandardItemModelWithCustomRoleNames::CustomRole1)); - QVERIFY( rootModelRoleNames.contains(StandardItemModelWithCustomRoleNames::CustomRole2)); - QVERIFY( rootModelRoleNames.value(StandardItemModelWithCustomRoleNames::CustomRole1) == "custom1" ); - QVERIFY( rootModelRoleNames.value(StandardItemModelWithCustomRoleNames::CustomRole2) == "custom2" ); - - SubQAbstractProxyModel proxy1; - proxy1.setSourceModel(&model); - QHash proxy1RoleNames = proxy1.roleNames(); - verifySubSetOf( proxy1RoleNames, defaultModelRoleNames ); - QVERIFY( proxy1RoleNames.size() == defaultModelRoleNames.size() + 2 ); - QVERIFY( proxy1RoleNames.contains(StandardItemModelWithCustomRoleNames::CustomRole1)); - QVERIFY( proxy1RoleNames.contains(StandardItemModelWithCustomRoleNames::CustomRole2)); - QVERIFY( proxy1RoleNames.value(StandardItemModelWithCustomRoleNames::CustomRole1) == "custom1" ); - QVERIFY( proxy1RoleNames.value(StandardItemModelWithCustomRoleNames::CustomRole2) == "custom2" ); - - SubQAbstractProxyModel proxy2; - proxy2.setSourceModel(&proxy1); - QHash proxy2RoleNames = proxy2.roleNames(); - verifySubSetOf( proxy2RoleNames, defaultModelRoleNames ); - QVERIFY( proxy2RoleNames.size() == defaultModelRoleNames.size() + 2 ); - QVERIFY( proxy2RoleNames.contains(StandardItemModelWithCustomRoleNames::CustomRole1)); - QVERIFY( proxy2RoleNames.contains(StandardItemModelWithCustomRoleNames::CustomRole2)); - QVERIFY( proxy2RoleNames.value(StandardItemModelWithCustomRoleNames::CustomRole1) == "custom1" ); - QVERIFY( proxy2RoleNames.value(StandardItemModelWithCustomRoleNames::CustomRole2) == "custom2" ); - -} - -QTEST_MAIN(tst_QAbstractProxyModel) -#include "tst_qabstractproxymodel.moc" - diff --git a/tests/auto/widgets/itemviews/qidentityproxymodel/qidentityproxymodel.pro b/tests/auto/widgets/itemviews/qidentityproxymodel/qidentityproxymodel.pro deleted file mode 100644 index 4fb8c98fe7..0000000000 --- a/tests/auto/widgets/itemviews/qidentityproxymodel/qidentityproxymodel.pro +++ /dev/null @@ -1,8 +0,0 @@ -CONFIG += testcase -TARGET = tst_qidentityproxymodel - -mtdir = ../../../other/modeltest -INCLUDEPATH += $$PWD/$${mtdir} -QT += widgets testlib -SOURCES += tst_qidentityproxymodel.cpp $${mtdir}/dynamictreemodel.cpp $${mtdir}/modeltest.cpp -HEADERS += $${mtdir}/dynamictreemodel.h $${mtdir}/modeltest.h diff --git a/tests/auto/widgets/itemviews/qidentityproxymodel/tst_qidentityproxymodel.cpp b/tests/auto/widgets/itemviews/qidentityproxymodel/tst_qidentityproxymodel.cpp deleted file mode 100644 index 86ff00f9d4..0000000000 --- a/tests/auto/widgets/itemviews/qidentityproxymodel/tst_qidentityproxymodel.cpp +++ /dev/null @@ -1,330 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Klarälvdalens Datakonsult AB, a KDAB Group company, info@kdab.com, author Stephen Kelly -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtGui module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - - -#include -#include -#include -#include - -#include "dynamictreemodel.h" -#include "qidentityproxymodel.h" - -Q_DECLARE_METATYPE(QModelIndex) - -class tst_QIdentityProxyModel : public QObject -{ - Q_OBJECT - -public: - - tst_QIdentityProxyModel(); - virtual ~tst_QIdentityProxyModel(); - -public slots: - void initTestCase(); - void cleanupTestCase(); - void init(); - void cleanup(); - -private slots: - void insertRows(); - void removeRows(); - void moveRows(); - void reset(); - -protected: - void verifyIdentity(QAbstractItemModel *model, const QModelIndex &parent = QModelIndex()); - -private: - QStandardItemModel *m_model; - QIdentityProxyModel *m_proxy; -}; - -tst_QIdentityProxyModel::tst_QIdentityProxyModel() - : m_model(0), m_proxy(0) -{ - -} - -tst_QIdentityProxyModel::~tst_QIdentityProxyModel() -{ - -} - -void tst_QIdentityProxyModel::initTestCase() -{ - qRegisterMetaType("QModelIndex"); - - m_model = new QStandardItemModel(0, 1); - m_proxy = new QIdentityProxyModel(); -} - -void tst_QIdentityProxyModel::cleanupTestCase() -{ - delete m_proxy; - delete m_model; -} - -void tst_QIdentityProxyModel::init() -{ -} - -void tst_QIdentityProxyModel::cleanup() -{ - m_model->clear(); - m_model->insertColumns(0, 1); -} - -void tst_QIdentityProxyModel::verifyIdentity(QAbstractItemModel *model, const QModelIndex &parent) -{ - const int rows = model->rowCount(parent); - const int columns = model->columnCount(parent); - const QModelIndex proxyParent = m_proxy->mapFromSource(parent); - - QVERIFY(m_proxy->mapToSource(proxyParent) == parent); - QVERIFY(rows == m_proxy->rowCount(proxyParent)); - QVERIFY(columns == m_proxy->columnCount(proxyParent)); - - for (int row = 0; row < rows; ++row) { - for (int column = 0; column < columns; ++column) { - const QModelIndex idx = model->index(row, column, parent); - const QModelIndex proxyIdx = m_proxy->mapFromSource(idx); - QVERIFY(proxyIdx.model() == m_proxy); - QVERIFY(m_proxy->mapToSource(proxyIdx) == idx); - QVERIFY(proxyIdx.isValid()); - QVERIFY(proxyIdx.row() == row); - QVERIFY(proxyIdx.column() == column); - QVERIFY(proxyIdx.parent() == proxyParent); - QVERIFY(proxyIdx.data() == idx.data()); - QVERIFY(proxyIdx.flags() == idx.flags()); - const int childCount = m_proxy->rowCount(proxyIdx); - const bool hasChildren = m_proxy->hasChildren(proxyIdx); - QVERIFY(model->hasChildren(idx) == hasChildren); - QVERIFY((childCount > 0) == hasChildren); - - if (hasChildren) - verifyIdentity(model, idx); - } - } -} - -/* - tests -*/ - -void tst_QIdentityProxyModel::insertRows() -{ - QStandardItem *parentItem = m_model->invisibleRootItem(); - for (int i = 0; i < 4; ++i) { - QStandardItem *item = new QStandardItem(QString("item %0").arg(i)); - parentItem->appendRow(item); - parentItem = item; - } - - m_proxy->setSourceModel(m_model); - - verifyIdentity(m_model); - - QSignalSpy modelBeforeSpy(m_model, SIGNAL(rowsAboutToBeInserted(QModelIndex,int,int))); - QSignalSpy modelAfterSpy(m_model, SIGNAL(rowsInserted(QModelIndex,int,int))); - QSignalSpy proxyBeforeSpy(m_proxy, SIGNAL(rowsAboutToBeInserted(QModelIndex,int,int))); - QSignalSpy proxyAfterSpy(m_proxy, SIGNAL(rowsInserted(QModelIndex,int,int))); - - QStandardItem *item = new QStandardItem(QString("new item")); - parentItem->appendRow(item); - - QVERIFY(modelBeforeSpy.size() == 1 && 1 == proxyBeforeSpy.size()); - QVERIFY(modelAfterSpy.size() == 1 && 1 == proxyAfterSpy.size()); - - QVERIFY(modelBeforeSpy.first().first().value() == m_proxy->mapToSource(proxyBeforeSpy.first().first().value())); - QVERIFY(modelBeforeSpy.first().at(1) == proxyBeforeSpy.first().at(1)); - QVERIFY(modelBeforeSpy.first().at(2) == proxyBeforeSpy.first().at(2)); - - QVERIFY(modelAfterSpy.first().first().value() == m_proxy->mapToSource(proxyAfterSpy.first().first().value())); - QVERIFY(modelAfterSpy.first().at(1) == proxyAfterSpy.first().at(1)); - QVERIFY(modelAfterSpy.first().at(2) == proxyAfterSpy.first().at(2)); - - verifyIdentity(m_model); - -} - -void tst_QIdentityProxyModel::removeRows() -{ - QStandardItem *parentItem = m_model->invisibleRootItem(); - for (int i = 0; i < 4; ++i) { - QStandardItem *item = new QStandardItem(QString("item %0").arg(i)); - parentItem->appendRow(item); - parentItem = item; - } - - m_proxy->setSourceModel(m_model); - - verifyIdentity(m_model); - - QSignalSpy modelBeforeSpy(m_model, SIGNAL(rowsAboutToBeRemoved(QModelIndex,int,int))); - QSignalSpy modelAfterSpy(m_model, SIGNAL(rowsRemoved(QModelIndex,int,int))); - QSignalSpy proxyBeforeSpy(m_proxy, SIGNAL(rowsAboutToBeRemoved(QModelIndex,int,int))); - QSignalSpy proxyAfterSpy(m_proxy, SIGNAL(rowsRemoved(QModelIndex,int,int))); - - const QModelIndex topLevel = m_model->index(0, 0, QModelIndex()); - const QModelIndex secondLevel = m_model->index(0, 0, topLevel); - const QModelIndex thirdLevel = m_model->index(0, 0, secondLevel); - - QVERIFY(thirdLevel.isValid()); - - m_model->removeRow(0, secondLevel); - - QVERIFY(modelBeforeSpy.size() == 1 && 1 == proxyBeforeSpy.size()); - QVERIFY(modelAfterSpy.size() == 1 && 1 == proxyAfterSpy.size()); - - QVERIFY(modelBeforeSpy.first().first().value() == m_proxy->mapToSource(proxyBeforeSpy.first().first().value())); - QVERIFY(modelBeforeSpy.first().at(1) == proxyBeforeSpy.first().at(1)); - QVERIFY(modelBeforeSpy.first().at(2) == proxyBeforeSpy.first().at(2)); - - QVERIFY(modelAfterSpy.first().first().value() == m_proxy->mapToSource(proxyAfterSpy.first().first().value())); - QVERIFY(modelAfterSpy.first().at(1) == proxyAfterSpy.first().at(1)); - QVERIFY(modelAfterSpy.first().at(2) == proxyAfterSpy.first().at(2)); - - verifyIdentity(m_model); -} - -void tst_QIdentityProxyModel::moveRows() -{ - DynamicTreeModel model; - - { - ModelInsertCommand insertCommand(&model); - insertCommand.setStartRow(0); - insertCommand.setEndRow(9); - insertCommand.doCommand(); - } - { - ModelInsertCommand insertCommand(&model); - insertCommand.setAncestorRowNumbers(QList() << 5); - insertCommand.setStartRow(0); - insertCommand.setEndRow(9); - insertCommand.doCommand(); - } - - m_proxy->setSourceModel(&model); - - verifyIdentity(&model); - - QSignalSpy modelBeforeSpy(&model, SIGNAL(rowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int))); - QSignalSpy modelAfterSpy(&model, SIGNAL(rowsMoved(QModelIndex,int,int,QModelIndex,int))); - QSignalSpy proxyBeforeSpy(m_proxy, SIGNAL(rowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int))); - QSignalSpy proxyAfterSpy(m_proxy, SIGNAL(rowsMoved(QModelIndex,int,int,QModelIndex,int))); - - { - ModelMoveCommand moveCommand(&model, 0); - moveCommand.setAncestorRowNumbers(QList() << 5); - moveCommand.setStartRow(3); - moveCommand.setEndRow(4); - moveCommand.setDestRow(1); - moveCommand.doCommand(); - } - - QVERIFY(modelBeforeSpy.size() == 1 && 1 == proxyBeforeSpy.size()); - QVERIFY(modelAfterSpy.size() == 1 && 1 == proxyAfterSpy.size()); - - QVERIFY(modelBeforeSpy.first().first().value() == m_proxy->mapToSource(proxyBeforeSpy.first().first().value())); - QVERIFY(modelBeforeSpy.first().at(1) == proxyBeforeSpy.first().at(1)); - QVERIFY(modelBeforeSpy.first().at(2) == proxyBeforeSpy.first().at(2)); - QVERIFY(modelBeforeSpy.first().at(3).value() == m_proxy->mapToSource(proxyBeforeSpy.first().at(3).value())); - QVERIFY(modelBeforeSpy.first().at(4) == proxyBeforeSpy.first().at(4)); - - QVERIFY(modelAfterSpy.first().first().value() == m_proxy->mapToSource(proxyAfterSpy.first().first().value())); - QVERIFY(modelAfterSpy.first().at(1) == proxyAfterSpy.first().at(1)); - QVERIFY(modelAfterSpy.first().at(2) == proxyAfterSpy.first().at(2)); - QVERIFY(modelAfterSpy.first().at(3).value() == m_proxy->mapToSource(proxyAfterSpy.first().at(3).value())); - QVERIFY(modelAfterSpy.first().at(4) == proxyAfterSpy.first().at(4)); - - verifyIdentity(&model); - - m_proxy->setSourceModel(0); -} - -void tst_QIdentityProxyModel::reset() -{ - DynamicTreeModel model; - - { - ModelInsertCommand insertCommand(&model); - insertCommand.setStartRow(0); - insertCommand.setEndRow(9); - insertCommand.doCommand(); - } - { - ModelInsertCommand insertCommand(&model); - insertCommand.setAncestorRowNumbers(QList() << 5); - insertCommand.setStartRow(0); - insertCommand.setEndRow(9); - insertCommand.doCommand(); - } - - m_proxy->setSourceModel(&model); - - verifyIdentity(&model); - - QSignalSpy modelBeforeSpy(&model, SIGNAL(modelAboutToBeReset())); - QSignalSpy modelAfterSpy(&model, SIGNAL(modelReset())); - QSignalSpy proxyBeforeSpy(m_proxy, SIGNAL(modelAboutToBeReset())); - QSignalSpy proxyAfterSpy(m_proxy, SIGNAL(modelReset())); - - { - ModelResetCommandFixed resetCommand(&model, 0); - resetCommand.setAncestorRowNumbers(QList() << 5); - resetCommand.setStartRow(3); - resetCommand.setEndRow(4); - resetCommand.setDestRow(1); - resetCommand.doCommand(); - } - - QVERIFY(modelBeforeSpy.size() == 1 && 1 == proxyBeforeSpy.size()); - QVERIFY(modelAfterSpy.size() == 1 && 1 == proxyAfterSpy.size()); - - verifyIdentity(&model); - m_proxy->setSourceModel(0); -} - -QTEST_MAIN(tst_QIdentityProxyModel) -#include "tst_qidentityproxymodel.moc" diff --git a/tests/auto/widgets/itemviews/qitemselectionmodel/.gitignore b/tests/auto/widgets/itemviews/qitemselectionmodel/.gitignore deleted file mode 100644 index aa543a200a..0000000000 --- a/tests/auto/widgets/itemviews/qitemselectionmodel/.gitignore +++ /dev/null @@ -1 +0,0 @@ -tst_qitemselectionmodel diff --git a/tests/auto/widgets/itemviews/qitemselectionmodel/qitemselectionmodel.pro b/tests/auto/widgets/itemviews/qitemselectionmodel/qitemselectionmodel.pro deleted file mode 100644 index a4c7ba3786..0000000000 --- a/tests/auto/widgets/itemviews/qitemselectionmodel/qitemselectionmodel.pro +++ /dev/null @@ -1,6 +0,0 @@ -CONFIG += testcase -TARGET = tst_qitemselectionmodel -QT += widgets testlib -SOURCES += tst_qitemselectionmodel.cpp - - diff --git a/tests/auto/widgets/itemviews/qitemselectionmodel/tst_qitemselectionmodel.cpp b/tests/auto/widgets/itemviews/qitemselectionmodel/tst_qitemselectionmodel.cpp deleted file mode 100644 index 2097cb31ee..0000000000 --- a/tests/auto/widgets/itemviews/qitemselectionmodel/tst_qitemselectionmodel.cpp +++ /dev/null @@ -1,2752 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the test suite of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - - -#include - -#include -#include - -class tst_QItemSelectionModel : public QObject -{ - Q_OBJECT - -public: - tst_QItemSelectionModel(); - virtual ~tst_QItemSelectionModel(); - - -public slots: - void initTestCase(); - void cleanupTestCase(); - void init(); -private slots: - void clear_data(); - void clear(); - void clearAndSelect(); - void toggleSelection(); - void select_data(); - void select(); - void persistentselections_data(); - void persistentselections(); - void resetModel(); - void removeRows_data(); - void removeRows(); - void removeColumns_data(); - void removeColumns(); - void modelLayoutChanged_data(); - void modelLayoutChanged(); - void selectedRows_data(); - void selectedRows(); - void selectedColumns_data(); - void selectedColumns(); - void setCurrentIndex(); - void splitOnInsert(); - void task196285_rowIntersectsSelection(); - void unselectable(); - void task220420_selectedIndexes(); - void task240734_layoutChanged(); - void merge_data(); - void merge(); - void task119433_isRowSelected(); - void task252069_rowIntersectsSelection(); - void task232634_childrenDeselectionSignal(); - void task260134_layoutChangedWithAllSelected(); - void QTBUG5671_layoutChangedWithAllSelected(); - void QTBUG2804_layoutChangedTreeSelection(); - void deselectRemovedMiddleRange(); - void rangeOperatorLessThan_data(); - void rangeOperatorLessThan(); - - void testDifferentModels(); - - void testValidRangesInSelectionsAfterReset(); - void testChainedSelectionClear(); - void testClearCurrentIndex(); - -private: - QAbstractItemModel *model; - QItemSelectionModel *selection; -}; - -QDataStream &operator<<(QDataStream &, const QModelIndex &); -QDataStream &operator>>(QDataStream &, QModelIndex &); -QDataStream &operator<<(QDataStream &, const QModelIndexList &); -QDataStream &operator>>(QDataStream &, QModelIndexList &); - -typedef QList IntList; -typedef QPair IntPair; -typedef QList PairList; - - -Q_DECLARE_METATYPE(PairList) -Q_DECLARE_METATYPE(QModelIndex) -Q_DECLARE_METATYPE(QModelIndexList) -Q_DECLARE_METATYPE(IntList) -Q_DECLARE_METATYPE(QItemSelection) - -class QStreamHelper: public QAbstractItemModel -{ -public: - QStreamHelper() {} - static QModelIndex create(int row = -1, int column = -1, void *data = 0) - { - QStreamHelper helper; - return helper.QAbstractItemModel::createIndex(row, column, data); - } - - QModelIndex index(int, int, const QModelIndex&) const - { return QModelIndex(); } - QModelIndex parent(const QModelIndex&) const - { return QModelIndex(); } - int rowCount(const QModelIndex & = QModelIndex()) const - { return 0; } - int columnCount(const QModelIndex & = QModelIndex()) const - { return 0; } - QVariant data(const QModelIndex &, int = Qt::DisplayRole) const - { return QVariant(); } - bool hasChildren(const QModelIndex &) const - { return false; } -}; - -QDataStream &operator<<(QDataStream &s, const QModelIndex &input) -{ - s << input.row() - << input.column() - << reinterpret_cast(input.internalPointer()); - return s; -} - -QDataStream &operator>>(QDataStream &s, QModelIndex &output) -{ - int r, c; - qlonglong ptr; - s >> r; - s >> c; - s >> ptr; - output = QStreamHelper::create(r, c, reinterpret_cast(ptr)); - return s; -} - -QDataStream &operator<<(QDataStream &s, const QModelIndexList &input) -{ - s << input.count(); - for (int i=0; i>(QDataStream &s, QModelIndexList &output) -{ - QModelIndex tmpIndex; - int count; - s >> count; - for (int i=0; i> tmpIndex; - output << tmpIndex; - } - return s; -} - -tst_QItemSelectionModel::tst_QItemSelectionModel() : model(0), selection(0) -{ -} - -tst_QItemSelectionModel::~tst_QItemSelectionModel() -{ -} - -/* - This test usually uses a model with a 5x5 table - ------------------------------------------- - | 0,0 | 0,1 | 0,2 | 0,3 | 0,4 | - ------------------------------------------- - | 1,0 | 1,1 | 1,2 | 1,3 | 1,4 | - ------------------------------------------- - | 2,0 | 2,1 | 2,2 | 2,3 | 2,4 | - ------------------------------------------- - | 3,0 | 3,1 | 3,2 | 3,3 | 3,4 | - ------------------------------------------- - | 4,0 | 4,1 | 4,2 | 4,3 | 4,4 | - ------------------------------------------- - - ...that for each row has a children in a new 5x5 table ad infinitum. - -*/ -void tst_QItemSelectionModel::initTestCase() -{ - qRegisterMetaType("QItemSelection"); - - model = new QStandardItemModel(5, 5); - QModelIndex parent = model->index(0, 0, QModelIndex()); - model->insertRows(0, 5, parent); - model->insertColumns(0, 5, parent); - selection = new QItemSelectionModel(model); -} - -void tst_QItemSelectionModel::cleanupTestCase() -{ - delete selection; - delete model; -} - -void tst_QItemSelectionModel::init() -{ - selection->clear(); - while (model->rowCount(QModelIndex()) > 5) - model->removeRow(0, QModelIndex()); - while (model->rowCount(QModelIndex()) < 5) - model->insertRow(0, QModelIndex()); -} - -void tst_QItemSelectionModel::clear_data() -{ - QTest::addColumn("indexList"); - QTest::addColumn("commandList"); - { - QModelIndexList index; - IntList command; - index << model->index(0, 0, QModelIndex()); - command << (QItemSelectionModel::Select | QItemSelectionModel::Rows); - index << model->index(1, 0, QModelIndex()); - command << (QItemSelectionModel::Select | QItemSelectionModel::Rows); - QTest::newRow("(0, 0) and (1, 0): Select|Rows") - << index - << command; - } - { - QModelIndexList index; - IntList command; - index << model->index(0, 0, QModelIndex()); - command << (QItemSelectionModel::Select | QItemSelectionModel::Columns); - index << model->index(0, 1, QModelIndex()); - command << (QItemSelectionModel::Select | QItemSelectionModel::Columns); - QTest::newRow("(0, 0) and (1, 0): Select|Columns") - << index - << command; - } - { - QModelIndexList index; - IntList command; - index << model->index(0, 0, QModelIndex()); - command << QItemSelectionModel::Select; - index << model->index(1, 1, QModelIndex()); - command << QItemSelectionModel::Select; - index << model->index(2, 2, QModelIndex()); - command << QItemSelectionModel::SelectCurrent; - QTest::newRow("(0, 0), (1, 1) and (2, 2): Select, Select, SelectCurrent") - << index - << command; - } - { - QModelIndexList index; - IntList command; - index << model->index(0, 0, QModelIndex()); - command << QItemSelectionModel::Select; - index << model->index(1, 1, QModelIndex()); - command << QItemSelectionModel::Select; - index << model->index(1, 1, QModelIndex()); - command << QItemSelectionModel::Toggle; - QTest::newRow("(0, 0), (1, 1) and (1, 1): Select, Select, Toggle") - << index - << command; - } - { - QModelIndexList index; - IntList command; - index << model->index(0, 0, model->index(0, 0, QModelIndex())); - command << (QItemSelectionModel::Select | QItemSelectionModel::Rows); - QTest::newRow("child (0, 0) of (0, 0): Select|Rows") - << index - << command; - } -} - -void tst_QItemSelectionModel::clear() -{ - QFETCH(QModelIndexList, indexList); - QFETCH(IntList, commandList); - - // do selections - for (int i=0; iselect(indexList.at(i), (QItemSelectionModel::SelectionFlags)commandList.at(i)); - } - // test that we have selected items - QVERIFY(!selection->selectedIndexes().isEmpty()); - selection->clear(); - // test that they were all cleared - QVERIFY(selection->selectedIndexes().isEmpty()); -} - -void tst_QItemSelectionModel::clearAndSelect() -{ - // populate selectionmodel - selection->select(model->index(1, 1, QModelIndex()), QItemSelectionModel::Select); - QCOMPARE(selection->selectedIndexes().count(), 1); - QVERIFY(selection->hasSelection()); - - // ClearAndSelect with empty selection - QItemSelection emptySelection; - selection->select(emptySelection, QItemSelectionModel::ClearAndSelect); - - // verify the selectionmodel is empty - QVERIFY(selection->selectedIndexes().isEmpty()); - QVERIFY(selection->hasSelection()==false); -} - -void tst_QItemSelectionModel::toggleSelection() -{ - //test the toggle selection and checks whether selectedIndex - //and hasSelection returns the correct value - - selection->clearSelection(); - QCOMPARE(selection->selectedIndexes().count(), 0); - QVERIFY(selection->hasSelection()==false); - - QModelIndex index=model->index(1, 1, QModelIndex()); - // populate selectionmodel - selection->select(index, QItemSelectionModel::Toggle); - QCOMPARE(selection->selectedIndexes().count(), 1); - QVERIFY(selection->hasSelection()==true); - - selection->select(index, QItemSelectionModel::Toggle); - QCOMPARE(selection->selectedIndexes().count(), 0); - QVERIFY(selection->hasSelection()==false); - - // populate selectionmodel with rows - selection->select(index, QItemSelectionModel::Toggle | QItemSelectionModel::Rows); - QCOMPARE(selection->selectedIndexes().count(), model->columnCount()); - QVERIFY(selection->hasSelection()==true); - - selection->select(index, QItemSelectionModel::Toggle | QItemSelectionModel::Rows); - QCOMPARE(selection->selectedIndexes().count(), 0); - QVERIFY(selection->hasSelection()==false); - -} - - -void tst_QItemSelectionModel::select_data() -{ - QTest::addColumn("indexList"); - QTest::addColumn("useRanges"); - QTest::addColumn("commandList"); - QTest::addColumn("expectedList"); - - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 0, QModelIndex()); - command << QItemSelectionModel::Select; - expected << model->index(0, 0, QModelIndex()); - QTest::newRow("(0, 0): Select") - << index - << false - << command - << expected; - } - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 0, model->index(0, 0, QModelIndex())); - command << QItemSelectionModel::Select; - expected << model->index(0, 0, model->index(0, 0, QModelIndex())); - QTest::newRow("child (0, 0) of (0, 0): Select") - << index - << false - << command - << expected; - } - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 0, QModelIndex()); - command << QItemSelectionModel::Deselect; - QTest::newRow("(0, 0): Deselect") - << index - << false - << command - << expected; - } - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 0, QModelIndex()); - command << QItemSelectionModel::Toggle; - expected << model->index(0, 0, QModelIndex()); - QTest::newRow("(0, 0): Toggle") - << index - << false - << command - << expected; - } - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 0, QModelIndex()); - command << QItemSelectionModel::Select; - index << model->index(0, 0, QModelIndex()); - command << QItemSelectionModel::Toggle; - QTest::newRow("(0, 0) and (0, 0): Select and Toggle") - << index - << false - << command - << expected; - } - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 0, QModelIndex()); - command << QItemSelectionModel::Select; - index << model->index(0, 0, QModelIndex()); - command << QItemSelectionModel::Deselect; - QTest::newRow("(0, 0) and (0, 0): Select and Deselect") - << index - << false - << command - << expected; - } - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 0, QModelIndex()); - command << QItemSelectionModel::Select; - index << model->index(0, 0, model->index(0, 0, QModelIndex())); - command << QItemSelectionModel::ClearAndSelect; - expected << model->index(0, 0, model->index(0, 0, QModelIndex())); - QTest::newRow("(0, 0) and child (0, 0) of (0, 0): Select and ClearAndSelect") - << index - << false - << command - << expected; - } - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 0, QModelIndex()); - index << model->index(4, 0, QModelIndex()); - command << QItemSelectionModel::Select; - index << model->index(0, 1, QModelIndex()); - index << model->index(4, 1, QModelIndex()); - command << QItemSelectionModel::Select; - index << model->index(0, 0, QModelIndex()); - index << model->index(4, 1, QModelIndex()); - command << QItemSelectionModel::Deselect; - QTest::newRow("(0, 0 to 4, 0) and (0, 1 to 4, 1) and (0, 0 to 4, 1): Select and Select and Deselect") - << index - << true - << command - << expected; - } - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 0, QModelIndex()); - command << QItemSelectionModel::Select; - index << model->index(4, 4, QModelIndex()); - command << QItemSelectionModel::Select; - expected << model->index(0, 0, QModelIndex()) << model->index(4, 4, QModelIndex()); - QTest::newRow("(0, 0) and (4, 4): Select") - << index - << false - << command - << expected; - } - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 0, QModelIndex()); - command << QItemSelectionModel::Select; - index << model->index(4, 4, QModelIndex()); - command << QItemSelectionModel::ClearAndSelect; - expected << model->index(4, 4, QModelIndex()); - QTest::newRow("(0, 0) and (4, 4): Select and ClearAndSelect") - << index - << false - << command - << expected; - } - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 0, QModelIndex()); - command << (QItemSelectionModel::Select | QItemSelectionModel::Rows); - index << model->index(4, 4, QModelIndex()); - command << (QItemSelectionModel::Select | QItemSelectionModel::Rows); - expected << model->index(0, 0, QModelIndex()) - << model->index(0, 1, QModelIndex()) - << model->index(0, 2, QModelIndex()) - << model->index(0, 3, QModelIndex()) - << model->index(0, 4, QModelIndex()) - << model->index(4, 0, QModelIndex()) - << model->index(4, 1, QModelIndex()) - << model->index(4, 2, QModelIndex()) - << model->index(4, 3, QModelIndex()) - << model->index(4, 4, QModelIndex()); - QTest::newRow("(0, 0) and (4, 4): Select|Rows") - << index - << false - << command - << expected; - } - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 0, model->index(0, 0, QModelIndex())); - command << (QItemSelectionModel::Select | QItemSelectionModel::Rows); - index << model->index(4, 4, model->index(0, 0, QModelIndex())); - command << (QItemSelectionModel::Select | QItemSelectionModel::Rows); - QModelIndex parent = model->index(0, 0, QModelIndex()); - expected << model->index(0, 0, parent) - << model->index(0, 1, parent) - << model->index(0, 2, parent) - << model->index(0, 3, parent) - << model->index(0, 4, parent) - << model->index(4, 0, parent) - << model->index(4, 1, parent) - << model->index(4, 2, parent) - << model->index(4, 3, parent) - << model->index(4, 4, parent); - QTest::newRow("child (0, 0) and (4, 4) of (0, 0): Select|Rows") - << index - << false - << command - << expected; - } - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 0, QModelIndex()); - command << (QItemSelectionModel::Select | QItemSelectionModel::Columns); - index << model->index(4, 4, QModelIndex()); - command << (QItemSelectionModel::Select | QItemSelectionModel::Columns); - expected << model->index(0, 0, QModelIndex()) - << model->index(1, 0, QModelIndex()) - << model->index(2, 0, QModelIndex()) - << model->index(3, 0, QModelIndex()) - << model->index(4, 0, QModelIndex()) - << model->index(0, 4, QModelIndex()) - << model->index(1, 4, QModelIndex()) - << model->index(2, 4, QModelIndex()) - << model->index(3, 4, QModelIndex()) - << model->index(4, 4, QModelIndex()); - QTest::newRow("(0, 0) and (4, 4): Select|Columns") - << index - << false - << command - << expected; - } - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 0, model->index(0, 0, QModelIndex())); - command << (QItemSelectionModel::Select | QItemSelectionModel::Columns); - index << model->index(4, 4, model->index(0, 0, QModelIndex())); - command << (QItemSelectionModel::Select | QItemSelectionModel::Columns); - expected << model->index(0, 0, model->index(0, 0, QModelIndex())) - << model->index(1, 0, model->index(0, 0, QModelIndex())) - << model->index(2, 0, model->index(0, 0, QModelIndex())) - << model->index(3, 0, model->index(0, 0, QModelIndex())) - << model->index(4, 0, model->index(0, 0, QModelIndex())) - << model->index(0, 4, model->index(0, 0, QModelIndex())) - << model->index(1, 4, model->index(0, 0, QModelIndex())) - << model->index(2, 4, model->index(0, 0, QModelIndex())) - << model->index(3, 4, model->index(0, 0, QModelIndex())) - << model->index(4, 4, model->index(0, 0, QModelIndex())); - QTest::newRow("child (0, 0) and (4, 4) of (0, 0): Select|Columns") - << index - << false - << command - << expected; - } - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 0, QModelIndex()); - index << model->index(4, 0, QModelIndex()); - command << QItemSelectionModel::Select; - expected << model->index(0, 0, QModelIndex()) - << model->index(1, 0, QModelIndex()) - << model->index(2, 0, QModelIndex()) - << model->index(3, 0, QModelIndex()) - << model->index(4, 0, QModelIndex()); - QTest::newRow("(0, 0 to 4, 0): Select") - << index - << true - << command - << expected; - } - /* ### FAILS - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 0, QModelIndex()); - index << model->index(0, 0, model->index(0, 0, QModelIndex())); - command << QItemSelectionModel::Select; - QTest::newRow("(0, 0 to child 0, 0): Select") - << index - << true - << command - << expected; - } - */ - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 0, model->index(0, 0, QModelIndex())); - index << model->index(0, 0, model->index(1, 0, QModelIndex())); - command << QItemSelectionModel::Select; - QTest::newRow("child (0, 0) of (0, 0) to child (0, 0) of (1, 0): Select") - << index - << true - << command - << expected; - } - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 0, QModelIndex()); - index << model->index(4, 4, QModelIndex()); - command << QItemSelectionModel::Select; - expected << model->index(0, 0, QModelIndex()) - << model->index(0, 1, QModelIndex()) - << model->index(0, 2, QModelIndex()) - << model->index(0, 3, QModelIndex()) - << model->index(0, 4, QModelIndex()) - << model->index(1, 0, QModelIndex()) - << model->index(1, 1, QModelIndex()) - << model->index(1, 2, QModelIndex()) - << model->index(1, 3, QModelIndex()) - << model->index(1, 4, QModelIndex()) - << model->index(2, 0, QModelIndex()) - << model->index(2, 1, QModelIndex()) - << model->index(2, 2, QModelIndex()) - << model->index(2, 3, QModelIndex()) - << model->index(2, 4, QModelIndex()) - << model->index(3, 0, QModelIndex()) - << model->index(3, 1, QModelIndex()) - << model->index(3, 2, QModelIndex()) - << model->index(3, 3, QModelIndex()) - << model->index(3, 4, QModelIndex()) - << model->index(4, 0, QModelIndex()) - << model->index(4, 1, QModelIndex()) - << model->index(4, 2, QModelIndex()) - << model->index(4, 3, QModelIndex()) - << model->index(4, 4, QModelIndex()); - QTest::newRow("(0, 0 to 4, 4): Select") - << index - << true - << command - << expected; - } - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 0, QModelIndex()); - index << model->index(4, 0, QModelIndex()); - command << (QItemSelectionModel::Select | QItemSelectionModel::Rows); - expected << model->index(0, 0, QModelIndex()) - << model->index(0, 1, QModelIndex()) - << model->index(0, 2, QModelIndex()) - << model->index(0, 3, QModelIndex()) - << model->index(0, 4, QModelIndex()) - << model->index(1, 0, QModelIndex()) - << model->index(1, 1, QModelIndex()) - << model->index(1, 2, QModelIndex()) - << model->index(1, 3, QModelIndex()) - << model->index(1, 4, QModelIndex()) - << model->index(2, 0, QModelIndex()) - << model->index(2, 1, QModelIndex()) - << model->index(2, 2, QModelIndex()) - << model->index(2, 3, QModelIndex()) - << model->index(2, 4, QModelIndex()) - << model->index(3, 0, QModelIndex()) - << model->index(3, 1, QModelIndex()) - << model->index(3, 2, QModelIndex()) - << model->index(3, 3, QModelIndex()) - << model->index(3, 4, QModelIndex()) - << model->index(4, 0, QModelIndex()) - << model->index(4, 1, QModelIndex()) - << model->index(4, 2, QModelIndex()) - << model->index(4, 3, QModelIndex()) - << model->index(4, 4, QModelIndex()); - QTest::newRow("(0, 0 to 4, 0): Select|Rows") - << index - << true - << command - << expected; - } - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 0, QModelIndex()); - index << model->index(0, 4, QModelIndex()); - command << (QItemSelectionModel::Select | QItemSelectionModel::Columns); - expected << model->index(0, 0, QModelIndex()) - << model->index(0, 1, QModelIndex()) - << model->index(0, 2, QModelIndex()) - << model->index(0, 3, QModelIndex()) - << model->index(0, 4, QModelIndex()) - << model->index(1, 0, QModelIndex()) - << model->index(1, 1, QModelIndex()) - << model->index(1, 2, QModelIndex()) - << model->index(1, 3, QModelIndex()) - << model->index(1, 4, QModelIndex()) - << model->index(2, 0, QModelIndex()) - << model->index(2, 1, QModelIndex()) - << model->index(2, 2, QModelIndex()) - << model->index(2, 3, QModelIndex()) - << model->index(2, 4, QModelIndex()) - << model->index(3, 0, QModelIndex()) - << model->index(3, 1, QModelIndex()) - << model->index(3, 2, QModelIndex()) - << model->index(3, 3, QModelIndex()) - << model->index(3, 4, QModelIndex()) - << model->index(4, 0, QModelIndex()) - << model->index(4, 1, QModelIndex()) - << model->index(4, 2, QModelIndex()) - << model->index(4, 3, QModelIndex()) - << model->index(4, 4, QModelIndex()); - QTest::newRow("(0, 0 to 0, 4): Select|Columns") - << index - << true - << command - << expected; - } - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 0, QModelIndex()); - index << model->index(4, 4, QModelIndex()); - command << (QItemSelectionModel::Select | QItemSelectionModel::Rows); - expected << model->index(0, 0, QModelIndex()) - << model->index(0, 1, QModelIndex()) - << model->index(0, 2, QModelIndex()) - << model->index(0, 3, QModelIndex()) - << model->index(0, 4, QModelIndex()) - << model->index(1, 0, QModelIndex()) - << model->index(1, 1, QModelIndex()) - << model->index(1, 2, QModelIndex()) - << model->index(1, 3, QModelIndex()) - << model->index(1, 4, QModelIndex()) - << model->index(2, 0, QModelIndex()) - << model->index(2, 1, QModelIndex()) - << model->index(2, 2, QModelIndex()) - << model->index(2, 3, QModelIndex()) - << model->index(2, 4, QModelIndex()) - << model->index(3, 0, QModelIndex()) - << model->index(3, 1, QModelIndex()) - << model->index(3, 2, QModelIndex()) - << model->index(3, 3, QModelIndex()) - << model->index(3, 4, QModelIndex()) - << model->index(4, 0, QModelIndex()) - << model->index(4, 1, QModelIndex()) - << model->index(4, 2, QModelIndex()) - << model->index(4, 3, QModelIndex()) - << model->index(4, 4, QModelIndex()); - QTest::newRow("(0, 0 to 4, 4): Select|Rows") - << index - << true - << command - << expected; - } - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 0, QModelIndex()); - index << model->index(4, 4, QModelIndex()); - command << (QItemSelectionModel::Select | QItemSelectionModel::Columns); - expected << model->index(0, 0, QModelIndex()) - << model->index(0, 1, QModelIndex()) - << model->index(0, 2, QModelIndex()) - << model->index(0, 3, QModelIndex()) - << model->index(0, 4, QModelIndex()) - << model->index(1, 0, QModelIndex()) - << model->index(1, 1, QModelIndex()) - << model->index(1, 2, QModelIndex()) - << model->index(1, 3, QModelIndex()) - << model->index(1, 4, QModelIndex()) - << model->index(2, 0, QModelIndex()) - << model->index(2, 1, QModelIndex()) - << model->index(2, 2, QModelIndex()) - << model->index(2, 3, QModelIndex()) - << model->index(2, 4, QModelIndex()) - << model->index(3, 0, QModelIndex()) - << model->index(3, 1, QModelIndex()) - << model->index(3, 2, QModelIndex()) - << model->index(3, 3, QModelIndex()) - << model->index(3, 4, QModelIndex()) - << model->index(4, 0, QModelIndex()) - << model->index(4, 1, QModelIndex()) - << model->index(4, 2, QModelIndex()) - << model->index(4, 3, QModelIndex()) - << model->index(4, 4, QModelIndex()); - QTest::newRow("(0, 0 to 4, 4): Select|Columns") - << index - << true - << command - << expected; - } - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 2, QModelIndex()); - index << model->index(4, 2, QModelIndex()); - command << QItemSelectionModel::Select; - index << model->index(2, 0, QModelIndex()); - index << model->index(2, 4, QModelIndex()); - command << QItemSelectionModel::Select; - expected << model->index(0, 2, QModelIndex()) - << model->index(1, 2, QModelIndex()) - << model->index(2, 2, QModelIndex()) - << model->index(3, 2, QModelIndex()) - << model->index(4, 2, QModelIndex()) - << model->index(2, 0, QModelIndex()) - << model->index(2, 1, QModelIndex()) - << model->index(2, 3, QModelIndex()) - << model->index(2, 4, QModelIndex()); - QTest::newRow("(0, 2 to 4, 2) and (2, 0 to 2, 4): Select") - << index - << true - << command - << expected; - } - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 2, QModelIndex()); - index << model->index(4, 2, QModelIndex()); - command << QItemSelectionModel::Select; - index << model->index(2, 0, QModelIndex()); - index << model->index(2, 4, QModelIndex()); - command << QItemSelectionModel::SelectCurrent; - expected << model->index(2, 0, QModelIndex()) - << model->index(2, 1, QModelIndex()) - << model->index(2, 2, QModelIndex()) - << model->index(2, 3, QModelIndex()) - << model->index(2, 4, QModelIndex()); - QTest::newRow("(0, 2 to 4, 2) and (2, 0 to 2, 4): Select and SelectCurrent") - << index - << true - << command - << expected; - } - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 2, QModelIndex()); - index << model->index(4, 2, QModelIndex()); - command << QItemSelectionModel::Select; - index << model->index(2, 0, QModelIndex()); - index << model->index(2, 4, QModelIndex()); - command << QItemSelectionModel::Toggle; - expected << model->index(0, 2, QModelIndex()) - << model->index(1, 2, QModelIndex()) - << model->index(3, 2, QModelIndex()) - << model->index(4, 2, QModelIndex()) - << model->index(2, 0, QModelIndex()) - << model->index(2, 1, QModelIndex()) - << model->index(2, 3, QModelIndex()) - << model->index(2, 4, QModelIndex()); - QTest::newRow("(0, 2 to 4, 2) and (2, 0 to 2, 4): Select and Toggle") - << index - << true - << command - << expected; - } - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 2, QModelIndex()); - index << model->index(4, 2, QModelIndex()); - command << QItemSelectionModel::Select; - index << model->index(2, 0, QModelIndex()); - index << model->index(2, 4, QModelIndex()); - command << QItemSelectionModel::Deselect; - expected << model->index(0, 2, QModelIndex()) - << model->index(1, 2, QModelIndex()) - << model->index(3, 2, QModelIndex()) - << model->index(4, 2, QModelIndex()); - QTest::newRow("(0, 2 to 4, 2) and (2, 0 to 2, 4): Select and Deselect") - << index - << true - << command - << expected; - } - - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 0, QModelIndex()); - index << model->index(2, 2, QModelIndex()); - command << QItemSelectionModel::Select; - - index << model->index(0, 0, QModelIndex()); - index << model->index(0, 0, QModelIndex()); - command << QItemSelectionModel::Toggle; - - expected << model->index(0, 1, QModelIndex()) - << model->index(0, 2, QModelIndex()) - << model->index(1, 0, QModelIndex()) - << model->index(1, 1, QModelIndex()) - << model->index(1, 2, QModelIndex()) - << model->index(2, 0, QModelIndex()) - << model->index(2, 1, QModelIndex()) - << model->index(2, 2, QModelIndex()); - - QTest::newRow("(0, 0 to 2, 2) and (0, 0 to 0, 0): Select and Toggle at selection boundary") - << index - << true - << command - << expected; - } - - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 0, QModelIndex()); - index << model->index(2, 2, QModelIndex()); - command << QItemSelectionModel::Select; - - index << model->index(0, 1, QModelIndex()); - index << model->index(0, 1, QModelIndex()); - command << QItemSelectionModel::Toggle; - - expected << model->index(0, 0, QModelIndex()) - << model->index(0, 2, QModelIndex()) - << model->index(1, 0, QModelIndex()) - << model->index(1, 1, QModelIndex()) - << model->index(1, 2, QModelIndex()) - << model->index(2, 0, QModelIndex()) - << model->index(2, 1, QModelIndex()) - << model->index(2, 2, QModelIndex()); - - QTest::newRow("(0, 0 to 2, 2) and (0, 1 to 0, 1): Select and Toggle at selection boundary") - << index - << true - << command - << expected; - } - - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 0, QModelIndex()); - index << model->index(2, 2, QModelIndex()); - command << QItemSelectionModel::Select; - - index << model->index(0, 2, QModelIndex()); - index << model->index(0, 2, QModelIndex()); - command << QItemSelectionModel::Toggle; - - expected << model->index(0, 0, QModelIndex()) - << model->index(0, 1, QModelIndex()) - << model->index(1, 0, QModelIndex()) - << model->index(1, 1, QModelIndex()) - << model->index(1, 2, QModelIndex()) - << model->index(2, 0, QModelIndex()) - << model->index(2, 1, QModelIndex()) - << model->index(2, 2, QModelIndex()); - - QTest::newRow("(0, 0 to 2, 2) and (0, 2 to 0, 2): Select and Toggle at selection boundary") - << index - << true - << command - << expected; - } - - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 0, QModelIndex()); - index << model->index(2, 2, QModelIndex()); - command << QItemSelectionModel::Select; - - index << model->index(1, 0, QModelIndex()); - index << model->index(1, 0, QModelIndex()); - command << QItemSelectionModel::Toggle; - - expected << model->index(0, 0, QModelIndex()) - << model->index(0, 1, QModelIndex()) - << model->index(0, 2, QModelIndex()) - << model->index(1, 1, QModelIndex()) - << model->index(1, 2, QModelIndex()) - << model->index(2, 0, QModelIndex()) - << model->index(2, 1, QModelIndex()) - << model->index(2, 2, QModelIndex()); - - QTest::newRow("(0, 0 to 2, 2) and (1, 0 to 1, 0): Select and Toggle at selection boundary") - << index - << true - << command - << expected; - } - - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 0, QModelIndex()); - index << model->index(2, 2, QModelIndex()); - command << QItemSelectionModel::Select; - - index << model->index(1, 1, QModelIndex()); - index << model->index(1, 1, QModelIndex()); - command << QItemSelectionModel::Toggle; - - expected << model->index(0, 0, QModelIndex()) - << model->index(0, 1, QModelIndex()) - << model->index(0, 2, QModelIndex()) - << model->index(1, 0, QModelIndex()) - << model->index(1, 2, QModelIndex()) - << model->index(2, 0, QModelIndex()) - << model->index(2, 1, QModelIndex()) - << model->index(2, 2, QModelIndex()); - - QTest::newRow("(0, 0 to 2, 2) and (1, 1 to 1, 1): Select and Toggle at selection boundary") - << index - << true - << command - << expected; - } - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 0, QModelIndex()); - index << model->index(2, 2, QModelIndex()); - command << QItemSelectionModel::Select; - - index << model->index(1, 2, QModelIndex()); - index << model->index(1, 2, QModelIndex()); - command << QItemSelectionModel::Toggle; - - expected << model->index(0, 0, QModelIndex()) - << model->index(0, 1, QModelIndex()) - << model->index(0, 2, QModelIndex()) - << model->index(1, 0, QModelIndex()) - << model->index(1, 1, QModelIndex()) - << model->index(2, 0, QModelIndex()) - << model->index(2, 1, QModelIndex()) - << model->index(2, 2, QModelIndex()); - - QTest::newRow("(0, 0 to 2, 2) and (1, 2 to 1, 2): Select and Toggle at selection boundary") - << index - << true - << command - << expected; - } - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 0, QModelIndex()); - index << model->index(2, 2, QModelIndex()); - command << QItemSelectionModel::Select; - - index << model->index(2, 0, QModelIndex()); - index << model->index(2, 0, QModelIndex()); - command << QItemSelectionModel::Toggle; - - expected << model->index(0, 0, QModelIndex()) - << model->index(0, 1, QModelIndex()) - << model->index(0, 2, QModelIndex()) - << model->index(1, 0, QModelIndex()) - << model->index(1, 1, QModelIndex()) - << model->index(1, 2, QModelIndex()) - << model->index(2, 1, QModelIndex()) - << model->index(2, 2, QModelIndex()); - - QTest::newRow("(0, 0 to 2, 2) and (2, 0 to 2, 0): Select and Toggle at selection boundary") - << index - << true - << command - << expected; - } - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - index << model->index(0, 0, QModelIndex()); - index << model->index(2, 2, QModelIndex()); - command << QItemSelectionModel::Select; - - index << model->index(2, 1, QModelIndex()); - index << model->index(2, 1, QModelIndex()); - command << QItemSelectionModel::Toggle; - - expected << model->index(0, 0, QModelIndex()) - << model->index(0, 1, QModelIndex()) - << model->index(0, 2, QModelIndex()) - << model->index(1, 0, QModelIndex()) - << model->index(1, 1, QModelIndex()) - << model->index(1, 2, QModelIndex()) - << model->index(2, 0, QModelIndex()) - << model->index(2, 2, QModelIndex()); - - QTest::newRow("(0, 0 to 2, 2) and (2, 1 to 2, 1): Select and Toggle at selection boundary") - << index - << true - << command - << expected; - } - { - QModelIndexList index; - QModelIndexList expected; - IntList command; - - index << model->index(0, 0, QModelIndex()); - index << model->index(2, 2, QModelIndex()); - command << QItemSelectionModel::Select; - - index << model->index(2, 2, QModelIndex()); - index << model->index(2, 2, QModelIndex()); - command << QItemSelectionModel::Toggle; - - expected << model->index(0, 0, QModelIndex()) - << model->index(0, 1, QModelIndex()) - << model->index(0, 2, QModelIndex()) - << model->index(1, 0, QModelIndex()) - << model->index(1, 1, QModelIndex()) - << model->index(1, 2, QModelIndex()) - << model->index(2, 0, QModelIndex()) - << model->index(2, 1, QModelIndex()); - - QTest::newRow("(0, 0 to 2, 2) and (2, 2 to 2, 2): Select and Toggle at selection boundary") - << index - << true - << command - << expected; - } - { - QModelIndexList indexes; - IntList commands; - QModelIndexList expected; - - indexes << model->index(0, 0, QModelIndex()) << model->index(0, 0, QModelIndex()) // press 0 - << model->index(0, 0, QModelIndex()) << model->index(0, 0, QModelIndex()) // release 0 - << model->index(1, 0, QModelIndex()) << model->index(1, 0, QModelIndex()) // press 1 - << model->index(1, 0, QModelIndex()) << model->index(1, 0, QModelIndex()) // release 1 - << model->index(2, 0, QModelIndex()) << model->index(2, 0, QModelIndex()) // press 2 - << model->index(2, 0, QModelIndex()) << model->index(2, 0, QModelIndex()) // release 2 - << model->index(3, 0, QModelIndex()) << model->index(3, 0, QModelIndex()) // press 3 - << model->index(3, 0, QModelIndex()) << model->index(3, 0, QModelIndex()) // release 3 - << model->index(2, 0, QModelIndex()) << model->index(2, 0, QModelIndex()) // press 2 again - << model->index(2, 0, QModelIndex()) << model->index(2, 0, QModelIndex());// move 2 - - commands << (QItemSelectionModel::NoUpdate) // press 0 - << (QItemSelectionModel::Toggle|QItemSelectionModel::Rows) // release 0 - << (QItemSelectionModel::NoUpdate) // press 1 - << (QItemSelectionModel::Toggle|QItemSelectionModel::Rows) // release 1 - << (QItemSelectionModel::NoUpdate) // press 2 - << (QItemSelectionModel::Toggle|QItemSelectionModel::Rows) // release 2 - << (QItemSelectionModel::NoUpdate) // press 3 - << (QItemSelectionModel::Toggle|QItemSelectionModel::Rows) // release 3 - << (QItemSelectionModel::NoUpdate) // press 2 again - << (QItemSelectionModel::Toggle/*Current*/|QItemSelectionModel::Rows);// move 2 - - expected << model->index(0, 0, QModelIndex()) - << model->index(0, 1, QModelIndex()) - << model->index(0, 2, QModelIndex()) - << model->index(0, 3, QModelIndex()) - << model->index(0, 4, QModelIndex()) - - << model->index(1, 0, QModelIndex()) - << model->index(1, 1, QModelIndex()) - << model->index(1, 2, QModelIndex()) - << model->index(1, 3, QModelIndex()) - << model->index(1, 4, QModelIndex()) - /* - << model->index(2, 0, QModelIndex()) - << model->index(2, 1, QModelIndex()) - << model->index(2, 2, QModelIndex()) - << model->index(2, 3, QModelIndex()) - << model->index(2, 4, QModelIndex()) - */ - << model->index(3, 0, QModelIndex()) - << model->index(3, 1, QModelIndex()) - << model->index(3, 2, QModelIndex()) - << model->index(3, 3, QModelIndex()) - << model->index(3, 4, QModelIndex()); - - QTest::newRow("simulated treeview multiselection behavior") - << indexes - << true - << commands - << expected; - } -} - -void tst_QItemSelectionModel::select() -{ - QFETCH(QModelIndexList, indexList); - QFETCH(bool, useRanges); - QFETCH(IntList, commandList); - QFETCH(QModelIndexList, expectedList); - - int lastCommand = 0; - // do selections - for (int i = 0; iselect(QItemSelection(indexList.at(2*i), indexList.at(2*i+1)), - (QItemSelectionModel::SelectionFlags)commandList.at(i)); - } else { - selection->select(indexList.at(i), - (QItemSelectionModel::SelectionFlags)commandList.at(i)); - } - lastCommand = commandList.at(i); - } - - - QModelIndexList selectedList = selection->selectedIndexes(); - - QVERIFY(selection->hasSelection()!=selectedList.isEmpty()); - - // debug output -// for (int i=0; iisSelected(idx) == selectedList.contains(idx), - QString("isSelected(index: %1, %2) does not match selectedIndexes()") - .arg(idx.row()) - .arg(idx.column()).toLatin1()); - } - - //for now we assume Rows/Columns flag is the same for all commands, therefore we just check lastCommand - // test that isRowSelected agrees - if (lastCommand & QItemSelectionModel::Rows) { - for (int i=0; iisRowSelected(selectedList.at(i).row(), - model->parent(selectedList.at(i))), - QString("isRowSelected(row: %1) does not match selectedIndexes()") - .arg(selectedList.at(i).row()).toLatin1()); - } - - // test that isColumnSelected agrees - if (lastCommand & QItemSelectionModel::Columns) { - for (int i=0; iisColumnSelected(selectedList.at(i).column(), - model->parent(selectedList.at(i))), - QString("isColumnSelected(column: %1) does not match selectedIndexes()") - .arg(selectedList.at(i).column()).toLatin1()); - } -} - -void tst_QItemSelectionModel::persistentselections_data() -{ - QTest::addColumn("indexList"); - QTest::addColumn("commandList"); - QTest::addColumn("insertRows"); // start, count - QTest::addColumn("insertColumns"); // start, count - QTest::addColumn("deleteRows"); // start, count - QTest::addColumn("deleteColumns"); // start, count - QTest::addColumn("expectedList"); - - PairList index, expected; - IntList command, insertRows, insertColumns, deleteRows, deleteColumns; - - - index.clear(); expected.clear(); command.clear(); - insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); - index << IntPair(0, 0); - command << QItemSelectionModel::ClearAndSelect; - deleteRows << 4 << 1; - expected << IntPair(0, 0); - QTest::newRow("ClearAndSelect (0, 0). Delete last row.") - << index << command - << insertRows << insertColumns << deleteRows << deleteColumns - << expected; - - index.clear(); expected.clear(); command.clear(); - insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); - index << IntPair(0, 0); - command << QItemSelectionModel::ClearAndSelect; - deleteRows << 0 << 1; - QTest::newRow("ClearAndSelect (0, 0). Delete first row.") - << index << command - << insertRows << insertColumns << deleteRows << deleteColumns - << expected; - - index.clear(); expected.clear(); command.clear(); - insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); - index << IntPair(1, 0); - command << QItemSelectionModel::ClearAndSelect; - deleteRows << 0 << 1; - expected << IntPair(0, 0); - QTest::newRow("ClearAndSelect (1, 0). Delete first row.") - << index << command - << insertRows << insertColumns << deleteRows << deleteColumns - << expected; - - index.clear(); expected.clear(); command.clear(); - insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); - index << IntPair(0, 0); - command << QItemSelectionModel::ClearAndSelect; - insertRows << 5 << 1; - expected << IntPair(0, 0); - QTest::newRow("ClearAndSelect (0, 0). Append row.") - << index << command - << insertRows << insertColumns << deleteRows << deleteColumns - << expected; - - index.clear(); expected.clear(); command.clear(); - insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); - index << IntPair(0, 0); - command << QItemSelectionModel::ClearAndSelect; - insertRows << 0 << 1; - expected << IntPair(1, 0); - QTest::newRow("ClearAndSelect (0, 0). Insert before first row.") - << index << command - << insertRows << insertColumns << deleteRows << deleteColumns - << expected; - - index.clear(); expected.clear(); command.clear(); - insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); - index << IntPair(0, 0) - << IntPair(4, 0); - command << QItemSelectionModel::ClearAndSelect; - insertRows << 5 << 1; - expected << IntPair(0, 0) - << IntPair(1, 0) - << IntPair(2, 0) - << IntPair(3, 0) - << IntPair(4, 0); - QTest::newRow("ClearAndSelect (0, 0) to (4, 0). Append row.") - << index << command - << insertRows << insertColumns << deleteRows << deleteColumns - << expected; - - index.clear(); expected.clear(); command.clear(); - insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); - index << IntPair(0, 0) - << IntPair(4, 0); - command << QItemSelectionModel::ClearAndSelect; - insertRows << 0 << 1; - expected << IntPair(1, 0) - << IntPair(2, 0) - << IntPair(3, 0) - << IntPair(4, 0) - << IntPair(5, 0); - QTest::newRow("ClearAndSelect (0, 0) to (4, 0). Insert before first row.") - << index << command - << insertRows << insertColumns << deleteRows << deleteColumns - << expected; - - index.clear(); expected.clear(); command.clear(); - insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); - index << IntPair(0, 0) - << IntPair(4, 0); - command << QItemSelectionModel::ClearAndSelect; - deleteRows << 0 << 1; - expected << IntPair(0, 0) - << IntPair(1, 0) - << IntPair(2, 0) - << IntPair(3, 0); - QTest::newRow("ClearAndSelect (0, 0) to (4, 0). Delete first row.") - << index << command - << insertRows << insertColumns << deleteRows << deleteColumns - << expected; - - index.clear(); expected.clear(); command.clear(); - insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); - index << IntPair(0, 0) - << IntPair(4, 0); - command << QItemSelectionModel::ClearAndSelect; - deleteRows << 4 << 1; - expected << IntPair(0, 0) - << IntPair(1, 0) - << IntPair(2, 0) - << IntPair(3, 0); - QTest::newRow("ClearAndSelect (0, 0) to (4, 0). Delete last row.") - << index << command - << insertRows << insertColumns << deleteRows << deleteColumns - << expected; - - index.clear(); expected.clear(); command.clear(); - insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); - index << IntPair(0, 0) - << IntPair(4, 0); - command << QItemSelectionModel::ClearAndSelect; - deleteRows << 1 << 3; - expected << IntPair(0, 0) - << IntPair(1, 0); - QTest::newRow("ClearAndSelect (0, 0) to (4, 0). Deleting all but first and last row.") - << index << command - << insertRows << insertColumns << deleteRows << deleteColumns - << expected; - - index.clear(); expected.clear(); command.clear(); - insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); - index << IntPair(0, 0) - << IntPair(4, 0); - command << QItemSelectionModel::ClearAndSelect; - insertRows << 1 << 1; - expected << IntPair(0, 0) - // the inserted row should not be selected - << IntPair(2, 0) - << IntPair(3, 0) - << IntPair(4, 0) - << IntPair(5, 0); - QTest::newRow("ClearAndSelect (0, 0) to (4, 0). Insert after first row.") - << index << command - << insertRows << insertColumns << deleteRows << deleteColumns - << expected; -} - -void tst_QItemSelectionModel::persistentselections() -{ - QFETCH(PairList, indexList); - QFETCH(IntList, commandList); - QFETCH(IntList, insertRows); - QFETCH(IntList, insertColumns); - QFETCH(IntList, deleteRows); - QFETCH(IntList, deleteColumns); - QFETCH(PairList, expectedList); - - // make sure the model is sane (5x5) - QCOMPARE(model->rowCount(QModelIndex()), 5); - QCOMPARE(model->columnCount(QModelIndex()), 5); - - // do selections - for (int i=0; iindex(indexList.at(i).first, - indexList.at(i).second, - QModelIndex()); - selection->select(index, (QItemSelectionModel::SelectionFlags)commandList.at(i)); - } else { - QModelIndex tl = model->index(indexList.at(2*i).first, - indexList.at(2*i).second, - QModelIndex()); - QModelIndex br = model->index(indexList.at(2*i+1).first, - indexList.at(2*i+1).second, - QModelIndex()); - selection->select(QItemSelection(tl, br), - (QItemSelectionModel::SelectionFlags)commandList.at(i)); - } - } - // test that we have selected items - QVERIFY(!selection->selectedIndexes().isEmpty()); - QVERIFY(selection->hasSelection()); - - // insert/delete row and/or columns - if (insertRows.count() > 1) - model->insertRows(insertRows.at(0), insertRows.at(1), QModelIndex()); - if (insertColumns.count() > 1) - model->insertColumns(insertColumns.at(0), insertColumns.at(1), QModelIndex()); - if (deleteRows.count() > 1) - model->removeRows(deleteRows.at(0), deleteRows.at(1), QModelIndex()); - if (deleteColumns.count() > 1) - model->removeColumns(deleteColumns.at(0), deleteColumns.at(1), QModelIndex()); - - // check that the selected items are the correct number and indexes - QModelIndexList selectedList = selection->selectedIndexes(); - QCOMPARE(selectedList.count(), expectedList.count()); - foreach(IntPair pair, expectedList) { - QModelIndex index = model->index(pair.first, pair.second, QModelIndex()); - QVERIFY(selectedList.contains(index)); - } -} - -// "make reset public"-model -class MyStandardItemModel: public QStandardItemModel -{ - Q_OBJECT -public: - inline MyStandardItemModel(int i1, int i2): QStandardItemModel(i1, i2) {} - inline void reset() { QStandardItemModel::reset(); } -}; - -void tst_QItemSelectionModel::resetModel() -{ - MyStandardItemModel model(20, 20); - QTreeView view; - view.setModel(&model); - - QSignalSpy spy(view.selectionModel(), SIGNAL(selectionChanged(QItemSelection,QItemSelection))); - - view.selectionModel()->select(QItemSelection(model.index(0, 0), model.index(5, 5)), QItemSelectionModel::Select); - - QCOMPARE(spy.count(), 1); - - model.reset(); - - QVERIFY(view.selectionModel()->selection().isEmpty()); - QVERIFY(view.selectionModel()->hasSelection() == false); - - view.selectionModel()->select(QItemSelection(model.index(0, 0), model.index(5, 5)), QItemSelectionModel::Select); - - QCOMPARE(spy.count(), 2); - QCOMPARE(spy.at(1).count(), 2); - // make sure we don't get an "old selection" - QCOMPARE(spy.at(1).at(1).userType(), qMetaTypeId()); - QVERIFY(qvariant_cast(spy.at(1).at(1)).isEmpty()); -} - -void tst_QItemSelectionModel::removeRows_data() -{ - QTest::addColumn("rowCount"); - QTest::addColumn("columnCount"); - - QTest::addColumn("selectTop"); - QTest::addColumn("selectLeft"); - QTest::addColumn("selectBottom"); - QTest::addColumn("selectRight"); - - QTest::addColumn("removeTop"); - QTest::addColumn("removeBottom"); - - QTest::addColumn("expectedTop"); - QTest::addColumn("expectedLeft"); - QTest::addColumn("expectedBottom"); - QTest::addColumn("expectedRight"); - - QTest::newRow("4x4 <0,1><1,1>") - << 4 << 4 - << 0 << 1 << 1 << 1 - << 0 << 0 - << 0 << 1 << 0 << 1; -} - -void tst_QItemSelectionModel::removeRows() -{ - QFETCH(int, rowCount); - QFETCH(int, columnCount); - QFETCH(int, selectTop); - QFETCH(int, selectLeft); - QFETCH(int, selectBottom); - QFETCH(int, selectRight); - QFETCH(int, removeTop); - QFETCH(int, removeBottom); - QFETCH(int, expectedTop); - QFETCH(int, expectedLeft); - QFETCH(int, expectedBottom); - QFETCH(int, expectedRight); - - MyStandardItemModel model(rowCount, columnCount); - QItemSelectionModel selections(&model); - QSignalSpy spy(&selections, SIGNAL(selectionChanged(QItemSelection,QItemSelection))); - - QModelIndex tl = model.index(selectTop, selectLeft); - QModelIndex br = model.index(selectBottom, selectRight); - selections.select(QItemSelection(tl, br), QItemSelectionModel::ClearAndSelect); - - QCOMPARE(spy.count(), 1); - QVERIFY(selections.isSelected(tl)); - QVERIFY(selections.isSelected(br)); - QVERIFY(selections.hasSelection()); - - model.removeRows(removeTop, removeBottom - removeTop + 1); - - QCOMPARE(spy.count(), 2); - tl = model.index(expectedTop, expectedLeft); - br = model.index(expectedBottom, expectedRight); - QVERIFY(selections.isSelected(tl)); - QVERIFY(selections.isSelected(br)); -} - -void tst_QItemSelectionModel::removeColumns_data() -{ - QTest::addColumn("rowCount"); - QTest::addColumn("columnCount"); - - QTest::addColumn("selectTop"); - QTest::addColumn("selectLeft"); - QTest::addColumn("selectBottom"); - QTest::addColumn("selectRight"); - - QTest::addColumn("removeLeft"); - QTest::addColumn("removeRight"); - - QTest::addColumn("expectedTop"); - QTest::addColumn("expectedLeft"); - QTest::addColumn("expectedBottom"); - QTest::addColumn("expectedRight"); - - QTest::newRow("4x4 <0,1><1,1>") - << 4 << 4 - << 1 << 0 << 1 << 1 - << 0 << 0 - << 1 << 0 << 1 << 0; -} - -void tst_QItemSelectionModel::removeColumns() -{ - QFETCH(int, rowCount); - QFETCH(int, columnCount); - QFETCH(int, selectTop); - QFETCH(int, selectLeft); - QFETCH(int, selectBottom); - QFETCH(int, selectRight); - QFETCH(int, removeLeft); - QFETCH(int, removeRight); - QFETCH(int, expectedTop); - QFETCH(int, expectedLeft); - QFETCH(int, expectedBottom); - QFETCH(int, expectedRight); - - MyStandardItemModel model(rowCount, columnCount); - QItemSelectionModel selections(&model); - QSignalSpy spy(&selections, SIGNAL(selectionChanged(QItemSelection,QItemSelection))); - - QModelIndex tl = model.index(selectTop, selectLeft); - QModelIndex br = model.index(selectBottom, selectRight); - selections.select(QItemSelection(tl, br), QItemSelectionModel::ClearAndSelect); - - QCOMPARE(spy.count(), 1); - QVERIFY(selections.isSelected(tl)); - QVERIFY(selections.isSelected(br)); - QVERIFY(selections.hasSelection()); - - model.removeColumns(removeLeft, removeRight - removeLeft + 1); - - QCOMPARE(spy.count(), 2); - tl = model.index(expectedTop, expectedLeft); - br = model.index(expectedBottom, expectedRight); - QVERIFY(selections.isSelected(tl)); - QVERIFY(selections.isSelected(br)); -} - -typedef QList IntListList; -typedef QPair IntPairPair; -typedef QList IntPairPairList; -Q_DECLARE_METATYPE(IntListList) -Q_DECLARE_METATYPE(IntPairPair) -Q_DECLARE_METATYPE(IntPairPairList) - -void tst_QItemSelectionModel::modelLayoutChanged_data() -{ - QTest::addColumn("items"); - QTest::addColumn("initialSelectedRanges"); - QTest::addColumn("sortOrder"); - QTest::addColumn("sortColumn"); - QTest::addColumn("expectedSelectedRanges"); - - QTest::newRow("everything selected, then row order reversed") - << (IntListList() - << (IntList() << 0 << 1 << 2 << 3) - << (IntList() << 3 << 2 << 1 << 0)) - << (IntPairPairList() - << IntPairPair(IntPair(0, 0), IntPair(3, 1))) - << int(Qt::DescendingOrder) - << 0 - << (IntPairPairList() - << IntPairPair(IntPair(0, 0), IntPair(3, 1))); - QTest::newRow("first two rows selected, then row order reversed") - << (IntListList() - << (IntList() << 0 << 1 << 2 << 3) - << (IntList() << 3 << 2 << 1 << 0)) - << (IntPairPairList() - << IntPairPair(IntPair(0, 0), IntPair(1, 1))) - << int(Qt::DescendingOrder) - << 0 - << (IntPairPairList() - << IntPairPair(IntPair(2, 0), IntPair(3, 1))); - QTest::newRow("middle two rows selected, then row order reversed") - << (IntListList() - << (IntList() << 0 << 1 << 2 << 3) - << (IntList() << 3 << 2 << 1 << 0)) - << (IntPairPairList() - << IntPairPair(IntPair(1, 0), IntPair(2, 1))) - << int(Qt::DescendingOrder) - << 0 - << (IntPairPairList() - << IntPairPair(IntPair(1, 0), IntPair(2, 1))); - QTest::newRow("two ranges") - << (IntListList() - << (IntList() << 2 << 0 << 3 << 1) - << (IntList() << 2 << 0 << 3 << 1)) - << (IntPairPairList() - << IntPairPair(IntPair(1, 0), IntPair(1, 1)) - << IntPairPair(IntPair(3, 0), IntPair(3, 1))) - << int(Qt::AscendingOrder) - << 0 - << (IntPairPairList() - << IntPairPair(IntPair(0, 0), IntPair(0, 1)) - << IntPairPair(IntPair(1, 0), IntPair(1, 1))); -} - -void tst_QItemSelectionModel::modelLayoutChanged() -{ - QFETCH(IntListList, items); - QFETCH(IntPairPairList, initialSelectedRanges); - QFETCH(int, sortOrder); - QFETCH(int, sortColumn); - QFETCH(IntPairPairList, expectedSelectedRanges); - - MyStandardItemModel model(items.at(0).count(), items.count()); - // initialize model data - for (int i = 0; i < model.rowCount(); ++i) { - for (int j = 0; j < model.columnCount(); ++j) { - QModelIndex index = model.index(i, j); - model.setData(index, items.at(j).at(i), Qt::DisplayRole); - } - } - - // select initial ranges - QItemSelectionModel selectionModel(&model); - foreach (IntPairPair range, initialSelectedRanges) { - IntPair tl = range.first; - IntPair br = range.second; - QItemSelection selection( - model.index(tl.first, tl.second), - model.index(br.first, br.second)); - selectionModel.select(selection, QItemSelectionModel::Select); - } - - // sort the model - model.sort(sortColumn, Qt::SortOrder(sortOrder)); - - // verify that selection is as expected - QItemSelection selection = selectionModel.selection(); - QCOMPARE(selection.count(), expectedSelectedRanges.count()); - QVERIFY(selectionModel.hasSelection() == !expectedSelectedRanges.isEmpty()); - - for (int i = 0; i < expectedSelectedRanges.count(); ++i) { - IntPairPair expectedRange = expectedSelectedRanges.at(i); - IntPair expectedTl = expectedRange.first; - IntPair expectedBr = expectedRange.second; - QItemSelectionRange actualRange = selection.at(i); - QModelIndex actualTl = actualRange.topLeft(); - QModelIndex actualBr = actualRange.bottomRight(); - QCOMPARE(actualTl.row(), expectedTl.first); - QCOMPARE(actualTl.column(), expectedTl.second); - QCOMPARE(actualBr.row(), expectedBr.first); - QCOMPARE(actualBr.column(), expectedBr.second); - } -} - -void tst_QItemSelectionModel::selectedRows_data() -{ - QTest::addColumn("rowCount"); - QTest::addColumn("columnCount"); - QTest::addColumn("column"); - QTest::addColumn("selectRows"); - QTest::addColumn("expectedRows"); - QTest::addColumn("unexpectedRows"); - - QTest::newRow("10x10, first row") - << 10 << 10 << 0 - << (IntList() << 0) - << (IntList() << 0) - << (IntList() << 1 << 2 << 3 << 4 << 5 << 6 << 7 << 8 << 9); - - QTest::newRow("10x10, first 4 rows") - << 10 << 10 << 0 - << (IntList() << 0 << 1 << 2 << 3) - << (IntList() << 0 << 1 << 2 << 3) - << (IntList() << 4 << 5 << 6 << 7 << 8 << 9); - - QTest::newRow("10x10, last 4 rows") - << 10 << 10 << 0 - << (IntList() << 6 << 7 << 8 << 9) - << (IntList() << 6 << 7 << 8 << 9) - << (IntList() << 0 << 1 << 2 << 3 << 4 << 6); -} - -void tst_QItemSelectionModel::selectedRows() -{ - QFETCH(int, rowCount); - QFETCH(int, columnCount); - QFETCH(int, column); - QFETCH(IntList, selectRows); - QFETCH(IntList, expectedRows); - QFETCH(IntList, unexpectedRows); - - MyStandardItemModel model(rowCount, columnCount); - QItemSelectionModel selectionModel(&model); - - for (int i = 0; i < selectRows.count(); ++i) - selectionModel.select(model.index(selectRows.at(i), 0), - QItemSelectionModel::Select - |QItemSelectionModel::Rows); - - for (int j = 0; j < selectRows.count(); ++j) - QVERIFY(selectionModel.isRowSelected(expectedRows.at(j), QModelIndex())); - - for (int k = 0; k < selectRows.count(); ++k) - QVERIFY(!selectionModel.isRowSelected(unexpectedRows.at(k), QModelIndex())); - - QModelIndexList selectedRowIndexes = selectionModel.selectedRows(column); - QCOMPARE(selectedRowIndexes.count(), expectedRows.count()); - qSort(selectedRowIndexes); - for (int l = 0; l < selectedRowIndexes.count(); ++l) { - QCOMPARE(selectedRowIndexes.at(l).row(), expectedRows.at(l)); - QCOMPARE(selectedRowIndexes.at(l).column(), column); - } -} - -void tst_QItemSelectionModel::selectedColumns_data() -{ - QTest::addColumn("rowCount"); - QTest::addColumn("columnCount"); - QTest::addColumn("row"); - QTest::addColumn("selectColumns"); - QTest::addColumn("expectedColumns"); - QTest::addColumn("unexpectedColumns"); - - QTest::newRow("10x10, first columns") - << 10 << 10 << 0 - << (IntList() << 0) - << (IntList() << 0) - << (IntList() << 1 << 2 << 3 << 4 << 5 << 6 << 7 << 8 << 9); - - QTest::newRow("10x10, first 4 columns") - << 10 << 10 << 0 - << (IntList() << 0 << 1 << 2 << 3) - << (IntList() << 0 << 1 << 2 << 3) - << (IntList() << 4 << 5 << 6 << 7 << 8 << 9); - - QTest::newRow("10x10, last 4 columns") - << 10 << 10 << 0 - << (IntList() << 6 << 7 << 8 << 9) - << (IntList() << 6 << 7 << 8 << 9) - << (IntList() << 0 << 1 << 2 << 3 << 4 << 6); -} - -void tst_QItemSelectionModel::selectedColumns() -{ - QFETCH(int, rowCount); - QFETCH(int, columnCount); - QFETCH(int, row); - QFETCH(IntList, selectColumns); - QFETCH(IntList, expectedColumns); - QFETCH(IntList, unexpectedColumns); - - MyStandardItemModel model(rowCount, columnCount); - QItemSelectionModel selectionModel(&model); - - for (int i = 0; i < selectColumns.count(); ++i) - selectionModel.select(model.index(0, selectColumns.at(i)), - QItemSelectionModel::Select - |QItemSelectionModel::Columns); - - for (int j = 0; j < selectColumns.count(); ++j) - QVERIFY(selectionModel.isColumnSelected(expectedColumns.at(j), QModelIndex())); - - for (int k = 0; k < selectColumns.count(); ++k) - QVERIFY(!selectionModel.isColumnSelected(unexpectedColumns.at(k), QModelIndex())); - - QModelIndexList selectedColumnIndexes = selectionModel.selectedColumns(row); - QCOMPARE(selectedColumnIndexes.count(), expectedColumns.count()); - qSort(selectedColumnIndexes); - for (int l = 0; l < selectedColumnIndexes.count(); ++l) { - QCOMPARE(selectedColumnIndexes.at(l).column(), expectedColumns.at(l)); - QCOMPARE(selectedColumnIndexes.at(l).row(), row); - } -} - -void tst_QItemSelectionModel::setCurrentIndex() -{ - // Build up a simple tree - QStandardItemModel *treemodel = new QStandardItemModel(0, 1); - treemodel->insertRow(0, new QStandardItem(1)); - treemodel->insertRow(1, new QStandardItem(2)); - - QTreeView treeView; - treeView.setModel(treemodel); - QItemSelectionModel *selectionModel = treeView.selectionModel(); - selectionModel->setCurrentIndex( - treemodel->index(0, 0, treemodel->index(0, 0)), - QItemSelectionModel::SelectCurrent); - - QSignalSpy currentSpy(selectionModel, - SIGNAL(currentChanged(QModelIndex,QModelIndex))); - QSignalSpy rowSpy(selectionModel, - SIGNAL(currentRowChanged(QModelIndex,QModelIndex))); - QSignalSpy columnSpy(selectionModel, - SIGNAL(currentColumnChanged(QModelIndex,QModelIndex))); - - // Select the same row and column indexes, but with a different parent - selectionModel->setCurrentIndex( - treemodel->index(0, 0, treemodel->index(1, 0)), - QItemSelectionModel::SelectCurrent); - - QCOMPARE(currentSpy.count(), 1); - QCOMPARE(rowSpy.count(), 1); - QCOMPARE(columnSpy.count(), 1); - - // Select another row in the same parent - selectionModel->setCurrentIndex( - treemodel->index(1, 0, treemodel->index(1, 0)), - QItemSelectionModel::SelectCurrent); - - QCOMPARE(currentSpy.count(), 2); - QCOMPARE(rowSpy.count(), 2); - QCOMPARE(columnSpy.count(), 1); - - delete treemodel; -} - -void tst_QItemSelectionModel::splitOnInsert() -{ - QStandardItemModel model(4, 1); - QItemSelectionModel selectionModel(&model); - selectionModel.select(model.index(2, 0), QItemSelectionModel::Select); - model.insertRow(2); - model.removeRow(3); - QVERIFY(!selectionModel.isSelected(model.index(1, 0))); -} - -void tst_QItemSelectionModel::task196285_rowIntersectsSelection() -{ - QTableWidget table; - table.setColumnCount(1); - table.setRowCount(1); - table.setItem(0, 0, new QTableWidgetItem("foo")); - QAbstractItemModel *model = table.model(); - QItemSelectionModel *selectionModel = table.selectionModel(); - QModelIndex index = model->index(0, 0, QModelIndex()); - - selectionModel->select(index, QItemSelectionModel::Select); - QVERIFY(selectionModel->rowIntersectsSelection(0, QModelIndex())); - QVERIFY(selectionModel->columnIntersectsSelection(0, QModelIndex())); - - selectionModel->select(index, QItemSelectionModel::Deselect); - QVERIFY(!selectionModel->rowIntersectsSelection(0, QModelIndex())); - QVERIFY(!selectionModel->columnIntersectsSelection(0, QModelIndex())); - - selectionModel->select(index, QItemSelectionModel::Toggle); - QVERIFY(selectionModel->rowIntersectsSelection(0, QModelIndex())); - QVERIFY(selectionModel->columnIntersectsSelection(0, QModelIndex())); - - selectionModel->select(index, QItemSelectionModel::Toggle); - QVERIFY(!selectionModel->rowIntersectsSelection(0, QModelIndex())); - QVERIFY(!selectionModel->columnIntersectsSelection(0, QModelIndex())); -} - -void tst_QItemSelectionModel::unselectable() -{ - QTreeWidget w; - for (int i = 0; i < 10; ++i) - w.setItemSelected(new QTreeWidgetItem(&w), true); - QCOMPARE(w.topLevelItemCount(), 10); - QCOMPARE(w.selectionModel()->selectedIndexes().count(), 10); - QCOMPARE(w.selectionModel()->selectedRows().count(), 10); - for (int j = 0; j < 10; ++j) - w.topLevelItem(j)->setFlags(0); - QCOMPARE(w.selectionModel()->selectedIndexes().count(), 0); - QCOMPARE(w.selectionModel()->selectedRows().count(), 0); -} - -void tst_QItemSelectionModel::task220420_selectedIndexes() -{ - QStandardItemModel model(2, 2); - QItemSelectionModel selectionModel(&model); - QItemSelection selection; - selection.append(QItemSelectionRange(model.index(0,0))); - selection.append(QItemSelectionRange(model.index(0,1))); - - //we select the 1st row - selectionModel.select(selection, QItemSelectionModel::Rows | QItemSelectionModel::Select); - - QCOMPARE(selectionModel.selectedRows().count(), 1); - QCOMPARE(selectionModel.selectedIndexes().count(), model.columnCount()); -} - - -class QtTestTableModel: public QAbstractTableModel -{ - Q_OBJECT - - public: - QtTestTableModel(int rows = 0, int columns = 0, QObject *parent = 0) - : QAbstractTableModel(parent), - row_count(rows), - column_count(columns) {} - - int rowCount(const QModelIndex& = QModelIndex()) const { return row_count; } - int columnCount(const QModelIndex& = QModelIndex()) const { return column_count; } - bool isEditable(const QModelIndex &) const { return true; } - - QVariant data(const QModelIndex &idx, int role) const - { - if (role == Qt::DisplayRole || role == Qt::EditRole) - return QString("[%1,%2]").arg(idx.row()).arg(idx.column()); - return QVariant(); - } - - int row_count; - int column_count; - friend class tst_QItemSelectionModel; -}; - - -void tst_QItemSelectionModel::task240734_layoutChanged() -{ - QtTestTableModel model(1,1); - QItemSelectionModel selectionModel(&model); - selectionModel.select(model.index(0,0), QItemSelectionModel::Select); - QCOMPARE(selectionModel.selectedIndexes().count() , 1); - - emit model.layoutAboutToBeChanged(); - model.row_count = 5; - emit model.layoutChanged(); - - //The selection should not change. - QCOMPARE(selectionModel.selectedIndexes().count() , 1); - QCOMPARE(selectionModel.selectedIndexes().first() , model.index(0,0)); -} - -void tst_QItemSelectionModel::merge_data() -{ - QTest::addColumn("init"); - QTest::addColumn("other"); - QTest::addColumn("command"); - QTest::addColumn("result"); - - QTest::newRow("Simple select") - << QItemSelection() - << QItemSelection(model->index(2, 1) , model->index(3, 4)) - << int(QItemSelectionModel::Select) - << QItemSelection(model->index(2, 1) , model->index(3, 4)); - - QTest::newRow("Simple deselect") - << QItemSelection(model->index(2, 1) , model->index(3, 4)) - << QItemSelection(model->index(2, 1) , model->index(3, 4)) - << int(QItemSelectionModel::Deselect) - << QItemSelection(); - - QTest::newRow("Simple Toggle deselect") - << QItemSelection(model->index(2, 1) , model->index(3, 4)) - << QItemSelection(model->index(2, 1) , model->index(3, 4)) - << int(QItemSelectionModel::Toggle) - << QItemSelection(); - - QTest::newRow("Simple Toggle select") - << QItemSelection() - << QItemSelection(model->index(2, 1) , model->index(3, 4)) - << int(QItemSelectionModel::Toggle) - << QItemSelection(model->index(2, 1) , model->index(3, 4)); - - QTest::newRow("Add select") - << QItemSelection(model->index(2, 1) , model->index(3, 3)) - << QItemSelection(model->index(2, 2) , model->index(3, 4)) - << int(QItemSelectionModel::Select) - << QItemSelection(model->index(2, 1) , model->index(3, 4)); - - QTest::newRow("Deselect") - << QItemSelection(model->index(2, 1) , model->index(3, 4)) - << QItemSelection(model->index(2, 2) , model->index(3, 4)) - << int(QItemSelectionModel::Deselect) - << QItemSelection(model->index(2, 1) , model->index(3, 1)); - - QItemSelection r1(model->index(2, 1) , model->index(3, 1)); - r1.select(model->index(2, 4) , model->index(3, 4)); - QTest::newRow("Toggle") - << QItemSelection(model->index(2, 1) , model->index(3, 3)) - << QItemSelection(model->index(2, 2) , model->index(3, 4)) - << int(QItemSelectionModel::Toggle) - << r1; -} - - -void tst_QItemSelectionModel::merge() -{ - QFETCH(QItemSelection, init); - QFETCH(QItemSelection, other); - QFETCH(int, command); - QFETCH(QItemSelection, result); - - init.merge(other, QItemSelectionModel::SelectionFlags(command)); - - foreach(const QModelIndex &idx, init.indexes()) - QVERIFY(result.contains(idx)); - foreach(const QModelIndex &idx, result.indexes()) - QVERIFY(init.contains(idx)); -} - -void tst_QItemSelectionModel::task119433_isRowSelected() -{ - QStandardItemModel model(2,2); - model.setData(model.index(0,0), 0, Qt::UserRole - 1); - QItemSelectionModel sel(&model); - sel.select( QItemSelection(model.index(0,0), model.index(0, 1)), QItemSelectionModel::Select); - QCOMPARE(sel.selectedIndexes().count(), 1); - QVERIFY(sel.isRowSelected(0, QModelIndex())); -} - -void tst_QItemSelectionModel::task252069_rowIntersectsSelection() -{ - QStandardItemModel m; - for (int i=0; i<8; ++i) { - for (int j=0; j<8; ++j) { - QStandardItem *item = new QStandardItem(QString("Item number %1").arg(i)); - if ((i % 2 == 0 && j == 0) || - (j % 2 == 0 && i == 0) || - j == 5 || i == 5 ) { - item->setEnabled(false); - //item->setSelectable(false); - } - m.setItem(i, j, item); - } - } - - QItemSelectionModel selected(&m); - //nothing is selected - QVERIFY(!selected.rowIntersectsSelection(0, QModelIndex())); - QVERIFY(!selected.rowIntersectsSelection(2, QModelIndex())); - QVERIFY(!selected.rowIntersectsSelection(3, QModelIndex())); - QVERIFY(!selected.rowIntersectsSelection(5, QModelIndex())); - QVERIFY(!selected.columnIntersectsSelection(0, QModelIndex())); - QVERIFY(!selected.columnIntersectsSelection(2, QModelIndex())); - QVERIFY(!selected.columnIntersectsSelection(3, QModelIndex())); - QVERIFY(!selected.columnIntersectsSelection(5, QModelIndex())); - selected.select(m.index(2, 0), QItemSelectionModel::Select | QItemSelectionModel::Rows); - QVERIFY(!selected.rowIntersectsSelection(0, QModelIndex())); - QVERIFY( selected.rowIntersectsSelection(2, QModelIndex())); - QVERIFY(!selected.rowIntersectsSelection(3, QModelIndex())); - QVERIFY(!selected.rowIntersectsSelection(5, QModelIndex())); - QVERIFY(!selected.columnIntersectsSelection(0, QModelIndex())); - QVERIFY( selected.columnIntersectsSelection(2, QModelIndex())); - QVERIFY( selected.columnIntersectsSelection(3, QModelIndex())); - QVERIFY(!selected.columnIntersectsSelection(5, QModelIndex())); - selected.select(m.index(0, 5), QItemSelectionModel::Select | QItemSelectionModel::Columns); - QVERIFY(!selected.rowIntersectsSelection(0, QModelIndex())); - QVERIFY( selected.rowIntersectsSelection(2, QModelIndex())); - QVERIFY(!selected.rowIntersectsSelection(3, QModelIndex())); - QVERIFY(!selected.rowIntersectsSelection(5, QModelIndex())); - QVERIFY(!selected.columnIntersectsSelection(0, QModelIndex())); - QVERIFY( selected.columnIntersectsSelection(2, QModelIndex())); - QVERIFY( selected.columnIntersectsSelection(3, QModelIndex())); - QVERIFY(!selected.columnIntersectsSelection(5, QModelIndex())); -} - -void tst_QItemSelectionModel::task232634_childrenDeselectionSignal() -{ - QStandardItemModel model; - - QStandardItem *parentItem = model.invisibleRootItem(); - for (int i = 0; i < 4; ++i) { - QStandardItem *item = new QStandardItem(QString("item %0").arg(i)); - parentItem->appendRow(item); - parentItem = item; - } - - QModelIndex root = model.index(0,0); - QModelIndex par = root.child(0,0); - QModelIndex sel = par.child(0,0); - - QItemSelectionModel selectionModel(&model); - selectionModel.select(sel, QItemSelectionModel::SelectCurrent); - - QSignalSpy deselectSpy(&selectionModel, SIGNAL(selectionChanged(const QItemSelection& , const QItemSelection&))); - model.removeRows(0, 1, root); - QVERIFY(deselectSpy.count() == 1); - - // More testing stress for the patch. - model.clear(); - selectionModel.clear(); - - parentItem = model.invisibleRootItem(); - for (int i = 0; i < 2; ++i) { - QStandardItem *item = new QStandardItem(QString("item %0").arg(i)); - parentItem->appendRow(item); - } - for (int i = 0; i < 2; ++i) { - parentItem = model.invisibleRootItem()->child(i, 0); - for (int j = 0; j < 2; ++j) { - QStandardItem *item = new QStandardItem(QString("item %0.%1").arg(i).arg(j)); - parentItem->appendRow(item); - } - } - - sel = model.index(0, 0).child(0, 0); - selectionModel.select(sel, QItemSelectionModel::Select); - QModelIndex sel2 = model.index(1, 0).child(0, 0); - selectionModel.select(sel2, QItemSelectionModel::Select); - - QVERIFY(selectionModel.selection().contains(sel)); - QVERIFY(selectionModel.selection().contains(sel2)); - deselectSpy.clear(); - model.removeRow(0, model.index(0, 0)); - QVERIFY(deselectSpy.count() == 1); - QVERIFY(!selectionModel.selection().contains(sel)); - QVERIFY(selectionModel.selection().contains(sel2)); -} - -void tst_QItemSelectionModel::task260134_layoutChangedWithAllSelected() -{ - QStringListModel model( QStringList() << "foo" << "bar" << "foo2"); - QSortFilterProxyModel proxy; - proxy.setSourceModel(&model); - QItemSelectionModel selection(&proxy); - - - QCOMPARE(model.rowCount(), 3); - QCOMPARE(proxy.rowCount(), 3); - proxy.setFilterRegExp( QRegExp("f")); - QCOMPARE(proxy.rowCount(), 2); - - QList indexList; - indexList << proxy.index(0,0) << proxy.index(1,0); - selection.select( QItemSelection(indexList.first(), indexList.last()), QItemSelectionModel::Select); - - //let's check the selection hasn't changed - QCOMPARE(selection.selectedIndexes().count(), indexList.count()); - foreach(QPersistentModelIndex index, indexList) - QVERIFY(selection.isSelected(index)); - - proxy.setFilterRegExp(QRegExp()); - QCOMPARE(proxy.rowCount(), 3); - - //let's check the selection hasn't changed - QCOMPARE(selection.selectedIndexes().count(), indexList.count()); - foreach(QPersistentModelIndex index, indexList) - QVERIFY(selection.isSelected(index)); -} - - -void tst_QItemSelectionModel::QTBUG5671_layoutChangedWithAllSelected() -{ - struct MyFilterModel : public QSortFilterProxyModel - { // Override sort filter proxy to remove even numbered rows. - bool filtering; - virtual bool filterAcceptsRow( int source_row, const QModelIndex& /* source_parent */) const - { - return !filtering || !( source_row & 1 ); - } - }; - - //same as task260134_layoutChangedWithAllSelected but with a sightly bigger model - - enum { cNumRows=30, cNumCols=20 }; - - QStandardItemModel model(cNumRows, cNumCols); - MyFilterModel proxy; - proxy.filtering = true; - proxy.setSourceModel(&model); - QItemSelectionModel selection(&proxy); - - // Populate the tree view. - for (unsigned int i = 0; i < cNumCols; i++) - model.setHeaderData( i, Qt::Horizontal, QString::fromLatin1("Column %1").arg(i)); - - for (unsigned int r = 0; r < cNumRows; r++) { - for (unsigned int c = 0; c < cNumCols; c++) { - model.setData(model.index(r, c, QModelIndex()), - QString::fromLatin1("r:%1/c:%2").arg(r, c)); - } - } - - - QCOMPARE(model.rowCount(), int(cNumRows)); - QCOMPARE(proxy.rowCount(), int(cNumRows/2)); - - selection.select( QItemSelection(proxy.index(0,0), proxy.index(proxy.rowCount() - 1, proxy.columnCount() - 1)), QItemSelectionModel::Select); - - QList indexList; - foreach(const QModelIndex &id, selection.selectedIndexes()) - indexList << id; - - proxy.filtering = false; - proxy.invalidate(); - QCOMPARE(proxy.rowCount(), int(cNumRows)); - - //let's check the selection hasn't changed - QCOMPARE(selection.selectedIndexes().count(), indexList.count()); - foreach(QPersistentModelIndex index, indexList) - QVERIFY(selection.isSelected(index)); -} - -void tst_QItemSelectionModel::QTBUG2804_layoutChangedTreeSelection() -{ - QStandardItemModel model; - QStandardItem top1("Child1"), top2("Child2"), top3("Child3"); - QStandardItem sub11("Alpha"), sub12("Beta"), sub13("Gamma"), sub14("Delta"), - sub21("Alpha"), sub22("Beta"), sub23("Gamma"), sub24("Delta"); - top1.appendColumn(QList() << &sub11 << &sub12 << &sub13 << &sub14); - top2.appendColumn(QList() << &sub21 << &sub22 << &sub23 << &sub24); - model.appendColumn(QList() << &top1 << &top2 << &top3); - - QItemSelectionModel selModel(&model); - - selModel.select(sub11.index(), QItemSelectionModel::Select); - selModel.select(sub12.index(), QItemSelectionModel::Select); - selModel.select(sub21.index(), QItemSelectionModel::Select); - selModel.select(sub23.index(), QItemSelectionModel::Select); - - QModelIndexList list = selModel.selectedIndexes(); - QCOMPARE(list.count(), 4); - - model.sort(0); //this will provoke a relayout - - QCOMPARE(selModel.selectedIndexes().count(), 4); -} - -class RemovalObserver : public QObject -{ - Q_OBJECT - QItemSelectionModel *m_itemSelectionModel; -public: - RemovalObserver(QItemSelectionModel *selectionModel) - : m_itemSelectionModel(selectionModel) - { - connect(m_itemSelectionModel, SIGNAL(selectionChanged(QItemSelection, QItemSelection)), SLOT(selectionChanged(QItemSelection, QItemSelection))); - } - -public slots: - void selectionChanged(const QItemSelection & /* selected */, const QItemSelection &deselected) - { - foreach(const QModelIndex &index, deselected.indexes()) { - QVERIFY(!m_itemSelectionModel->selection().contains(index)); - } - QVERIFY(m_itemSelectionModel->selection().size() == 2); - } - -}; - -void tst_QItemSelectionModel::deselectRemovedMiddleRange() -{ - QStandardItemModel model(8, 0); - - for (int row = 0; row < 8; ++row) { - static const int column = 0; - QStandardItem *item = new QStandardItem(QString::number(row)); - model.setItem(row, column, item); - } - - QItemSelectionModel selModel(&model); - - selModel.select(QItemSelection(model.index(3, 0), model.index(6, 0)), QItemSelectionModel::Select); - - QVERIFY(selModel.selection().size() == 1); - - RemovalObserver ro(&selModel); - - QSignalSpy spy(&selModel, SIGNAL(selectionChanged(QItemSelection, QItemSelection))); - bool ok = model.removeRows(4, 2); - - QVERIFY(ok); - QVERIFY(spy.size() == 1); -} - -static QStandardItemModel* getModel(QObject *parent) -{ - QStandardItemModel *model = new QStandardItemModel(parent); - - for (int i = 0; i < 4; ++i) { - QStandardItem *parentItem = model->invisibleRootItem(); - QList list; - for (int j = 0; j < 4; ++j) { - list.append(new QStandardItem(QString("item %1, %2").arg(i).arg(j))); - } - parentItem->appendRow(list); - parentItem = list.first(); - for (int j = 0; j < 4; ++j) { - QList list; - for (int k = 0; k < 4; ++k) { - list.append(new QStandardItem(QString("item %1, %2").arg(i).arg(j))); - } - parentItem->appendRow(list); - } - } - return model; -} - -enum Result { - LessThan, - NotLessThan, - NotEqual -}; - -Q_DECLARE_METATYPE(Result); - -void tst_QItemSelectionModel::rangeOperatorLessThan_data() -{ - QTest::addColumn("parent1"); - QTest::addColumn("top1"); - QTest::addColumn("left1"); - QTest::addColumn("bottom1"); - QTest::addColumn("right1"); - QTest::addColumn("parent2"); - QTest::addColumn("top2"); - QTest::addColumn("left2"); - QTest::addColumn("bottom2"); - QTest::addColumn("right2"); - QTest::addColumn("result"); - - QTest::newRow("lt01") << -1 << 0 << 0 << 3 << 3 - << -1 << 0 << 0 << 3 << 3 << NotLessThan; - - QTest::newRow("lt02") << -1 << 0 << 0 << 2 << 3 - << -1 << 0 << 0 << 3 << 3 << LessThan; - QTest::newRow("lt03") << -1 << 0 << 0 << 3 << 2 - << -1 << 0 << 0 << 3 << 3 << LessThan; - QTest::newRow("lt04") << -1 << 0 << 0 << 2 << 2 - << -1 << 0 << 0 << 3 << 3 << LessThan; - - QTest::newRow("lt05") << -1 << 0 << 0 << 3 << 3 - << -1 << 0 << 0 << 2 << 3 << NotLessThan; - QTest::newRow("lt06") << -1 << 0 << 0 << 3 << 3 - << -1 << 0 << 0 << 3 << 2 << NotLessThan; - QTest::newRow("lt07") << -1 << 0 << 0 << 3 << 3 - << -1 << 0 << 0 << 2 << 2 << NotLessThan; - - QTest::newRow("lt08") << -1 << 0 << 0 << 3 << 3 - << 0 << 0 << 0 << 3 << 3 << NotEqual; - QTest::newRow("lt09") << 1 << 0 << 0 << 3 << 3 - << 0 << 0 << 0 << 3 << 3 << NotEqual; - QTest::newRow("lt10") << 1 << 0 << 0 << 1 << 1 - << 0 << 2 << 2 << 3 << 3 << NotEqual; - QTest::newRow("lt11") << 1 << 2 << 2 << 3 << 3 - << 0 << 0 << 0 << 1 << 1 << NotEqual; - - QTest::newRow("lt12") << -1 << 0 << 0 << 1 << 1 - << -1 << 2 << 2 << 3 << 3 << LessThan; - QTest::newRow("lt13") << -1 << 2 << 2 << 3 << 3 - << -1 << 0 << 0 << 1 << 1 << NotLessThan; - QTest::newRow("lt14") << 1 << 0 << 0 << 1 << 1 - << 1 << 2 << 2 << 3 << 3 << LessThan; - QTest::newRow("lt15") << 1 << 2 << 2 << 3 << 3 - << 1 << 0 << 0 << 1 << 1 << NotLessThan; - - QTest::newRow("lt16") << -1 << 0 << 0 << 2 << 2 - << -1 << 1 << 1 << 3 << 3 << LessThan; - QTest::newRow("lt17") << -1 << 1 << 1 << 3 << 3 - << -1 << 0 << 0 << 2 << 2 << NotLessThan; - QTest::newRow("lt18") << 1 << 0 << 0 << 2 << 2 - << 1 << 1 << 1 << 3 << 3 << LessThan; - QTest::newRow("lt19") << 1 << 1 << 1 << 3 << 3 - << 1 << 0 << 0 << 2 << 2 << NotLessThan; -} - -void tst_QItemSelectionModel::rangeOperatorLessThan() -{ - QStandardItemModel *model1 = getModel(this); - QStandardItemModel *model2 = getModel(this); - - QFETCH(int, parent1); - QFETCH(int, top1); - QFETCH(int, left1); - QFETCH(int, bottom1); - QFETCH(int, right1); - QFETCH(int, parent2); - QFETCH(int, top2); - QFETCH(int, left2); - QFETCH(int, bottom2); - QFETCH(int, right2); - QFETCH(Result, result); - - QModelIndex p1 = model1->index(parent1, 0); - - QModelIndex tl1 = model1->index(top1, left1, p1); - QModelIndex br1 = model1->index(bottom1, right1, p1); - - QItemSelectionRange r1(tl1, br1); - - QModelIndex p2 = model1->index(parent2, 0); - - QModelIndex tl2 = model1->index(top2, left2, p2); - QModelIndex br2 = model1->index(bottom2, right2, p2); - - QItemSelectionRange r2(tl2, br2); - - if (result == LessThan) - QVERIFY(r1 < r2); - else if (result == NotLessThan) - QVERIFY(!(r1 < r2)); - else if (result == NotEqual) - if (!(r1 < r2)) - QVERIFY(r2 < r1); - - // Ranges in different models are always non-equal - - QModelIndex p3 = model2->index(parent1, 0); - - QModelIndex tl3 = model2->index(top1, left1, p3); - QModelIndex br3 = model2->index(bottom1, right1, p3); - - QItemSelectionRange r3(tl3, br3); - - if (!(r1 < r3)) - QVERIFY(r3 < r1); - - if (!(r2 < r3)) - QVERIFY(r3 < r2); - - QModelIndex p4 = model2->index(parent2, 0); - - QModelIndex tl4 = model2->index(top2, left2, p4); - QModelIndex br4 = model2->index(bottom2, right2, p4); - - QItemSelectionRange r4(tl4, br4); - - if (!(r1 < r4)) - QVERIFY(r4 < r1); - - if (!(r2 < r4)) - QVERIFY(r4 < r2); -} - -void tst_QItemSelectionModel::testDifferentModels() -{ - QStandardItemModel model1; - QStandardItemModel model2; - QStandardItem top11("Child1"), top12("Child2"), top13("Child3"); - QStandardItem top21("Child1"), top22("Child2"), top23("Child3"); - - model1.appendColumn(QList() << &top11 << &top12 << &top13); - model2.appendColumn(QList() << &top21 << &top22 << &top23); - - - QModelIndex topIndex1 = model1.index(0, 0); - QModelIndex bottomIndex1 = model1.index(2, 0); - QModelIndex topIndex2 = model2.index(0, 0); - - QItemSelectionRange range(topIndex1, bottomIndex1); - - QVERIFY(range.intersects(QItemSelectionRange(topIndex1, topIndex1))); - QVERIFY(!range.intersects(QItemSelectionRange(topIndex2, topIndex2))); - - QItemSelection newSelection; - QItemSelection::split(range, QItemSelectionRange(topIndex2, topIndex2), &newSelection); - - QVERIFY(newSelection.isEmpty()); -} - -class SelectionObserver : public QObject -{ - Q_OBJECT -public: - SelectionObserver(QAbstractItemModel *model, QObject *parent = 0) - : QObject(parent), m_model(model), m_selectionModel(0) - { - connect(model, SIGNAL(modelReset()), SLOT(modelReset())); - } - - void setSelectionModel(QItemSelectionModel *selectionModel) - { - m_selectionModel = selectionModel; - connect(m_selectionModel, SIGNAL(selectionChanged(QItemSelection,QItemSelection)), SLOT(selectionChanged(QItemSelection,QItemSelection))); - } - - private slots: - void modelReset() - { - const QModelIndex idx = m_model->index(2, 0); - QVERIFY(idx.isValid()); - m_selectionModel->select(QItemSelection(idx, idx), QItemSelectionModel::Clear); - } - - void selectionChanged(const QItemSelection &selected, const QItemSelection &deselected) - { - foreach(const QItemSelectionRange &range, selected) - QVERIFY(range.isValid()); - foreach(const QItemSelectionRange &range, deselected) - QVERIFY(range.isValid()); - } - -private: - QAbstractItemModel *m_model; - QItemSelectionModel *m_selectionModel; -}; - -void tst_QItemSelectionModel::testValidRangesInSelectionsAfterReset() -{ - QStringListModel model; - - QStringList strings; - strings << "one" - << "two" - << "three" - << "four" - << "five"; - - model.setStringList(strings); - - SelectionObserver observer(&model); - - QItemSelectionModel selectionModel(&model); - - selectionModel.select(QItemSelection(model.index(1, 0), model.index(3, 0)), QItemSelectionModel::Select); - - // Cause d->ranges to contain something. - model.insertRows(2, 1); - - observer.setSelectionModel(&selectionModel); - - model.setStringList(strings); -} - -class DuplicateItemSelectionModel : public QItemSelectionModel -{ - Q_OBJECT -public: - DuplicateItemSelectionModel(QItemSelectionModel *target, QAbstractItemModel *model, QObject *parent = 0) - : QItemSelectionModel(model, parent), m_target(target) - { - - } - - void select(const QItemSelection &selection, QItemSelectionModel::SelectionFlags command) - { - QItemSelectionModel::select(selection, command); - m_target->select(selection, command); - } - - using QItemSelectionModel::select; - - void setCurrentIndex(const QModelIndex &index, QItemSelectionModel::SelectionFlags command) - { - QItemSelectionModel::setCurrentIndex(index, command); - m_target->setCurrentIndex(index, command); - } - - void clearCurrentIndex() - { - QItemSelectionModel::clearCurrentIndex(); - m_target->clearCurrentIndex(); - } - -private: - QItemSelectionModel *m_target; - -}; - -void tst_QItemSelectionModel::testChainedSelectionClear() -{ - QStringListModel model(QStringList() << "Apples" << "Pears"); - - QItemSelectionModel selectionModel(&model, 0); - DuplicateItemSelectionModel duplicate(&selectionModel, &model, 0); - - duplicate.select(model.index(0, 0), QItemSelectionModel::Select); - - { - QModelIndexList selectedIndexes = selectionModel.selection().indexes(); - QModelIndexList duplicatedIndexes = duplicate.selection().indexes(); - - QVERIFY(selectedIndexes.size() == duplicatedIndexes.size()); - QVERIFY(selectedIndexes.size() == 1); - QVERIFY(selectedIndexes.first() == model.index(0, 0)); - } - - duplicate.clearSelection(); - - { - QModelIndexList selectedIndexes = selectionModel.selection().indexes(); - QModelIndexList duplicatedIndexes = duplicate.selection().indexes(); - - QVERIFY(selectedIndexes.size() == duplicatedIndexes.size()); - QVERIFY(selectedIndexes.size() == 0); - } - - duplicate.setCurrentIndex(model.index(0, 0), QItemSelectionModel::NoUpdate); - - QVERIFY(selectionModel.currentIndex() == duplicate.currentIndex()); - - duplicate.clearCurrentIndex(); - - QVERIFY(!duplicate.currentIndex().isValid()); - QVERIFY(selectionModel.currentIndex() == duplicate.currentIndex()); -} - -void tst_QItemSelectionModel::testClearCurrentIndex() -{ - QStringListModel model(QStringList() << "Apples" << "Pears"); - - QItemSelectionModel selectionModel(&model, 0); - - QSignalSpy currentIndexSpy(&selectionModel, SIGNAL(currentChanged(QModelIndex,QModelIndex))); - - QModelIndex firstIndex = model.index(0, 0); - QVERIFY(firstIndex.isValid()); - selectionModel.setCurrentIndex(firstIndex, QItemSelectionModel::NoUpdate); - QVERIFY(selectionModel.currentIndex() == firstIndex); - QVERIFY(currentIndexSpy.size() == 1); - - selectionModel.clearCurrentIndex(); - - QVERIFY(selectionModel.currentIndex() == QModelIndex()); - QVERIFY(currentIndexSpy.size() == 2); -} - -QTEST_MAIN(tst_QItemSelectionModel) -#include "tst_qitemselectionmodel.moc" diff --git a/tests/auto/widgets/itemviews/qsortfilterproxymodel/.gitignore b/tests/auto/widgets/itemviews/qsortfilterproxymodel/.gitignore deleted file mode 100644 index d3672fe4ae..0000000000 --- a/tests/auto/widgets/itemviews/qsortfilterproxymodel/.gitignore +++ /dev/null @@ -1 +0,0 @@ -tst_qsortfilterproxymodel diff --git a/tests/auto/widgets/itemviews/qsortfilterproxymodel/qsortfilterproxymodel.pro b/tests/auto/widgets/itemviews/qsortfilterproxymodel/qsortfilterproxymodel.pro deleted file mode 100644 index d6e949f73d..0000000000 --- a/tests/auto/widgets/itemviews/qsortfilterproxymodel/qsortfilterproxymodel.pro +++ /dev/null @@ -1,9 +0,0 @@ -CONFIG += testcase -TARGET = tst_qsortfilterproxymodel - -QT += gui widgets testlib -mtdir = ../../../other/modeltest - -INCLUDEPATH += $$PWD/$${mtdir} -SOURCES += tst_qsortfilterproxymodel.cpp $${mtdir}/dynamictreemodel.cpp $${mtdir}/modeltest.cpp -HEADERS += $${mtdir}/dynamictreemodel.h $${mtdir}/modeltest.h diff --git a/tests/auto/widgets/itemviews/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp b/tests/auto/widgets/itemviews/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp deleted file mode 100644 index cc8299e28f..0000000000 --- a/tests/auto/widgets/itemviews/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp +++ /dev/null @@ -1,3463 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the test suite of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - - -#include -#include "dynamictreemodel.h" -#include "modeltest.h" - -#include -#include -#include - -#include - -typedef QList IntList; -typedef QPair IntPair; -typedef QList IntPairList; - -Q_DECLARE_METATYPE(IntList) -Q_DECLARE_METATYPE(IntPair) -Q_DECLARE_METATYPE(IntPairList) -Q_DECLARE_METATYPE(QModelIndex) - -class tst_QSortFilterProxyModel : public QObject -{ - Q_OBJECT - -public: - - tst_QSortFilterProxyModel(); - virtual ~tst_QSortFilterProxyModel(); - -public slots: - void initTestCase(); - void cleanupTestCase(); - void init(); - void cleanup(); - -private slots: - void getSetCheck(); - void sort_data(); - void sort(); - void sortHierarchy_data(); - void sortHierarchy(); - - void insertRows_data(); - void insertRows(); - void prependRow(); -// void insertColumns_data(); -// void insertColumns(); - void removeRows_data(); - void removeRows(); - void removeColumns_data(); - void removeColumns(); - void insertAfterSelect(); - void removeAfterSelect(); - void filter_data(); - void filter(); - void filterHierarchy_data(); - void filterHierarchy(); - void filterColumns_data(); - void filterColumns(); - - void filterTable(); - void filterCurrent(); - - void changeSourceLayout(); - void removeSourceRows_data(); - void removeSourceRows(); - void insertSourceRows_data(); - void insertSourceRows(); - void changeFilter_data(); - void changeFilter(); - void changeSourceData_data(); - void changeSourceData(); - void sortFilterRole(); - void selectionFilteredOut(); - void match_data(); - void match(); - void insertIntoChildrenlessItem(); - void invalidateMappedChildren(); - void insertRowIntoFilteredParent(); - void filterOutParentAndFilterInChild(); - - void sourceInsertRows(); - void sourceModelDeletion(); - - void sortColumnTracking1(); - void sortColumnTracking2(); - - void sortStable(); - - void task236755_hiddenColumns(); - void task247867_insertRowsSort(); - void task248868_staticSorting(); - void task248868_dynamicSorting(); - void task250023_fetchMore(); - void task251296_hiddenChildren(); - void task252507_mapFromToSource(); - void task255652_removeRowsRecursive(); - void taskQTBUG_6205_doubleProxySelectionSetSourceModel(); - void taskQTBUG_7537_appearsAndSort(); - void taskQTBUG_7716_unnecessaryDynamicSorting(); - void taskQTBUG_10287_unnecessaryMapCreation(); - void taskQTBUG_17812_resetInvalidate_data(); - void taskQTBUG_17812_resetInvalidate(); - - void testMultipleProxiesWithSelection(); - void mapSelectionFromSource(); - void filteredColumns(); - - void testParentLayoutChanged(); - void moveSourceRows(); - -protected: - void buildHierarchy(const QStringList &data, QAbstractItemModel *model); - void checkHierarchy(const QStringList &data, const QAbstractItemModel *model); - -private: - QStandardItemModel *m_model; - QSortFilterProxyModel *m_proxy; -}; - -// Testing get/set functions -void tst_QSortFilterProxyModel::getSetCheck() -{ - QSortFilterProxyModel obj1; - QCOMPARE(obj1.sourceModel(), (QAbstractItemModel *)0); - // int QSortFilterProxyModel::filterKeyColumn() - // void QSortFilterProxyModel::setFilterKeyColumn(int) - obj1.setFilterKeyColumn(0); - QCOMPARE(0, obj1.filterKeyColumn()); - obj1.setFilterKeyColumn(INT_MIN); - QCOMPARE(INT_MIN, obj1.filterKeyColumn()); - obj1.setFilterKeyColumn(INT_MAX); - QCOMPARE(INT_MAX, obj1.filterKeyColumn()); -} - -tst_QSortFilterProxyModel::tst_QSortFilterProxyModel() - : m_model(0), m_proxy(0) -{ - -} - -tst_QSortFilterProxyModel::~tst_QSortFilterProxyModel() -{ - -} - -void tst_QSortFilterProxyModel::initTestCase() -{ - qRegisterMetaType("QModelIndex"); - qRegisterMetaType("IntList"); - qRegisterMetaType("IntPair"); - qRegisterMetaType("IntPairList"); - m_model = new QStandardItemModel(0, 1); - m_proxy = new QSortFilterProxyModel(); - m_proxy->setSourceModel(m_model); -} - -void tst_QSortFilterProxyModel::cleanupTestCase() -{ - delete m_proxy; - delete m_model; -} - -void tst_QSortFilterProxyModel::init() -{ -} - -void tst_QSortFilterProxyModel::cleanup() -{ - m_proxy->setFilterRegExp(QRegExp()); - m_proxy->sort(-1, Qt::AscendingOrder); - m_model->clear(); - m_model->insertColumns(0, 1); -} - -/* - tests -*/ - -void tst_QSortFilterProxyModel::sort_data() -{ - QTest::addColumn("sortOrder"); - QTest::addColumn("sortCaseSensitivity"); - QTest::addColumn("initial"); - QTest::addColumn("expected"); - - QTest::newRow("flat descending") << static_cast(Qt::DescendingOrder) - << int(Qt::CaseSensitive) - << (QStringList() - << "delta" - << "yankee" - << "bravo" - << "lima" - << "charlie" - << "juliet" - << "tango" - << "hotel" - << "uniform" - << "alpha" - << "echo" - << "golf" - << "quebec" - << "foxtrot" - << "india" - << "romeo" - << "november" - << "oskar" - << "zulu" - << "kilo" - << "whiskey" - << "mike" - << "papa" - << "sierra" - << "xray" - << "viktor") - << (QStringList() - << "zulu" - << "yankee" - << "xray" - << "whiskey" - << "viktor" - << "uniform" - << "tango" - << "sierra" - << "romeo" - << "quebec" - << "papa" - << "oskar" - << "november" - << "mike" - << "lima" - << "kilo" - << "juliet" - << "india" - << "hotel" - << "golf" - << "foxtrot" - << "echo" - << "delta" - << "charlie" - << "bravo" - << "alpha"); - QTest::newRow("flat ascending") << static_cast(Qt::AscendingOrder) - << int(Qt::CaseSensitive) - << (QStringList() - << "delta" - << "yankee" - << "bravo" - << "lima" - << "charlie" - << "juliet" - << "tango" - << "hotel" - << "uniform" - << "alpha" - << "echo" - << "golf" - << "quebec" - << "foxtrot" - << "india" - << "romeo" - << "november" - << "oskar" - << "zulu" - << "kilo" - << "whiskey" - << "mike" - << "papa" - << "sierra" - << "xray" - << "viktor") - << (QStringList() - << "alpha" - << "bravo" - << "charlie" - << "delta" - << "echo" - << "foxtrot" - << "golf" - << "hotel" - << "india" - << "juliet" - << "kilo" - << "lima" - << "mike" - << "november" - << "oskar" - << "papa" - << "quebec" - << "romeo" - << "sierra" - << "tango" - << "uniform" - << "viktor" - << "whiskey" - << "xray" - << "yankee" - << "zulu"); - QTest::newRow("case insensitive") << static_cast(Qt::AscendingOrder) - << int(Qt::CaseInsensitive) - << (QStringList() - << "alpha" << "BETA" << "Gamma" << "delta") - << (QStringList() - << "alpha" << "BETA" << "delta" << "Gamma"); - QTest::newRow("case sensitive") << static_cast(Qt::AscendingOrder) - << int(Qt::CaseSensitive) - << (QStringList() - << "alpha" << "BETA" << "Gamma" << "delta") - << (QStringList() - << "BETA" << "Gamma" << "alpha" << "delta"); - - - QStringList list; - for (int i = 10000; i < 20000; ++i) - list.append(QString("Number: %1").arg(i)); - QTest::newRow("large set ascending") << static_cast(Qt::AscendingOrder) << int(Qt::CaseSensitive) << list << list; -} - -void tst_QSortFilterProxyModel::sort() -{ - QFETCH(int, sortOrder); - QFETCH(int, sortCaseSensitivity); - QFETCH(QStringList, initial); - QFETCH(QStringList, expected); - - // prepare model - QStandardItem *root = m_model->invisibleRootItem (); - QList items; - for (int i = 0; i < initial.count(); ++i) { - items.append(new QStandardItem(initial.at(i))); - } - root->insertRows(0, items); - QCOMPARE(m_model->rowCount(QModelIndex()), initial.count()); - QCOMPARE(m_model->columnCount(QModelIndex()), 1); - - // make sure the proxy is unsorted - QCOMPARE(m_proxy->columnCount(QModelIndex()), 1); - QCOMPARE(m_proxy->rowCount(QModelIndex()), initial.count()); - for (int row = 0; row < m_proxy->rowCount(QModelIndex()); ++row) { - QModelIndex index = m_proxy->index(row, 0, QModelIndex()); - QCOMPARE(m_proxy->data(index, Qt::DisplayRole).toString(), initial.at(row)); - } - - // sort - m_proxy->sort(0, static_cast(sortOrder)); - m_proxy->setSortCaseSensitivity(static_cast(sortCaseSensitivity)); - - // make sure the model is unchanged - for (int row = 0; row < m_model->rowCount(QModelIndex()); ++row) { - QModelIndex index = m_model->index(row, 0, QModelIndex()); - QCOMPARE(m_model->data(index, Qt::DisplayRole).toString(), initial.at(row)); - } - // make sure the proxy is sorted - for (int row = 0; row < m_proxy->rowCount(QModelIndex()); ++row) { - QModelIndex index = m_proxy->index(row, 0, QModelIndex()); - QCOMPARE(m_proxy->data(index, Qt::DisplayRole).toString(), expected.at(row)); - } - - // restore the unsorted order - m_proxy->sort(-1); - - // make sure the proxy is unsorted again - for (int row = 0; row < m_proxy->rowCount(QModelIndex()); ++row) { - QModelIndex index = m_proxy->index(row, 0, QModelIndex()); - QCOMPARE(m_proxy->data(index, Qt::DisplayRole).toString(), initial.at(row)); - } - -} - -void tst_QSortFilterProxyModel::sortHierarchy_data() -{ - QTest::addColumn("sortOrder"); - QTest::addColumn("initial"); - QTest::addColumn("expected"); - - QTest::newRow("flat ascending") - << static_cast(Qt::AscendingOrder) - << (QStringList() - << "c" << "f" << "d" << "e" << "a" << "b") - << (QStringList() - << "a" << "b" << "c" << "d" << "e" << "f"); - - QTest::newRow("simple hierarchy") - << static_cast(Qt::AscendingOrder) - << (QStringList() << "a" << "<" << "b" << "<" << "c" << ">" << ">") - << (QStringList() << "a" << "<" << "b" << "<" << "c" << ">" << ">"); - - QTest::newRow("hierarchical ascending") - << static_cast(Qt::AscendingOrder) - << (QStringList() - << "c" - << "<" - << "h" - << "<" - << "2" - << "0" - << "1" - << ">" - << "g" - << "i" - << ">" - << "b" - << "<" - << "l" - << "k" - << "<" - << "8" - << "7" - << "9" - << ">" - << "m" - << ">" - << "a" - << "<" - << "z" - << "y" - << "x" - << ">") - << (QStringList() - << "a" - << "<" - << "x" - << "y" - << "z" - << ">" - << "b" - << "<" - << "k" - << "<" - << "7" - << "8" - << "9" - << ">" - << "l" - << "m" - << ">" - << "c" - << "<" - << "g" - << "h" - << "<" - << "0" - << "1" - << "2" - << ">" - << "i" - << ">"); -} - -void tst_QSortFilterProxyModel::sortHierarchy() -{ - QFETCH(int, sortOrder); - QFETCH(QStringList, initial); - QFETCH(QStringList, expected); - - buildHierarchy(initial, m_model); - checkHierarchy(initial, m_model); - checkHierarchy(initial, m_proxy); - m_proxy->sort(0, static_cast(sortOrder)); - checkHierarchy(initial, m_model); - checkHierarchy(expected, m_proxy); -} - -void tst_QSortFilterProxyModel::insertRows_data() -{ - QTest::addColumn("initial"); - QTest::addColumn("expected"); - QTest::addColumn("insert"); - QTest::addColumn("position"); - - QTest::newRow("insert one row in the middle") - << (QStringList() - << "One" - << "Two" - << "Four" - << "Five") - << (QStringList() - << "One" - << "Two" - << "Three" - << "Four" - << "Five") - << (QStringList() - << "Three") - << 2; - - QTest::newRow("insert one row in the beginning") - << (QStringList() - << "Two" - << "Three" - << "Four" - << "Five") - << (QStringList() - << "One" - << "Two" - << "Three" - << "Four" - << "Five") - << (QStringList() - << "One") - << 0; - - QTest::newRow("insert one row in the end") - << (QStringList() - << "One" - << "Two" - << "Three" - << "Four") - << (QStringList() - << "One" - << "Two" - << "Three" - << "Four" - << "Five") - << (QStringList() - <<"Five") - << 4; -} - -void tst_QSortFilterProxyModel::insertRows() -{ - QFETCH(QStringList, initial); - QFETCH(QStringList, expected); - QFETCH(QStringList, insert); - QFETCH(int, position); - // prepare model - m_model->insertRows(0, initial.count(), QModelIndex()); - //m_model->insertColumns(0, 1, QModelIndex()); - QCOMPARE(m_model->columnCount(QModelIndex()), 1); - QCOMPARE(m_model->rowCount(QModelIndex()), initial.count()); - for (int row = 0; row < m_model->rowCount(QModelIndex()); ++row) { - QModelIndex index = m_model->index(row, 0, QModelIndex()); - m_model->setData(index, initial.at(row), Qt::DisplayRole); - } - // make sure the model correct before insert - for (int row = 0; row < m_model->rowCount(QModelIndex()); ++row) { - QModelIndex index = m_model->index(row, 0, QModelIndex()); - QCOMPARE(m_model->data(index, Qt::DisplayRole).toString(), initial.at(row)); - } - // make sure the proxy is correct before insert - for (int row = 0; row < m_proxy->rowCount(QModelIndex()); ++row) { - QModelIndex index = m_proxy->index(row, 0, QModelIndex()); - QCOMPARE(m_proxy->data(index, Qt::DisplayRole).toString(), initial.at(row)); - } - - // insert the row - m_proxy->insertRows(position, insert.count(), QModelIndex()); - QCOMPARE(m_model->rowCount(QModelIndex()), expected.count()); - QCOMPARE(m_proxy->rowCount(QModelIndex()), expected.count()); - - // set the data for the inserted row - for (int i = 0; i < insert.count(); ++i) { - QModelIndex index = m_proxy->index(position + i, 0, QModelIndex()); - m_proxy->setData(index, insert.at(i), Qt::DisplayRole); - } - - // make sure the model correct after insert - for (int row = 0; row < m_model->rowCount(QModelIndex()); ++row) { - QModelIndex index = m_model->index(row, 0, QModelIndex()); - QCOMPARE(m_model->data(index, Qt::DisplayRole).toString(), expected.at(row)); - } - - // make sure the proxy is correct after insert - for (int row = 0; row < m_proxy->rowCount(QModelIndex()); ++row) { - QModelIndex index = m_proxy->index(row, 0, QModelIndex()); - QCOMPARE(m_proxy->data(index, Qt::DisplayRole).toString(), expected.at(row)); - } -} - -void tst_QSortFilterProxyModel::prependRow() -{ - //this tests that data is correctly handled by the sort filter when prepending a row - QStandardItemModel model; - QSortFilterProxyModel proxy; - proxy.setSourceModel(&model); - - QStandardItem item("root"); - model.appendRow(&item); - - QStandardItem sub("sub"); - item.appendRow(&sub); - - sub.appendRow(new QStandardItem("test1")); - sub.appendRow(new QStandardItem("test2")); - - QStandardItem sub2("sub2"); - sub2.appendRow(new QStandardItem("sub3")); - item.insertRow(0, &sub2); - - QModelIndex index_sub2 = proxy.mapFromSource(model.indexFromItem(&sub2)); - - QCOMPARE(sub2.rowCount(), proxy.rowCount(index_sub2)); - QCOMPARE(proxy.rowCount(QModelIndex()), 1); //only the "root" item is there -} - - -/* -void tst_QSortFilterProxyModel::insertColumns_data() -{ - -} - -void tst_QSortFilterProxyModel::insertColumns() -{ - -} -*/ - -void tst_QSortFilterProxyModel::removeRows_data() -{ - QTest::addColumn("initial"); - QTest::addColumn("sortOrder"); - QTest::addColumn("filter"); - QTest::addColumn("position"); - QTest::addColumn("count"); - QTest::addColumn("success"); - QTest::addColumn("expectedProxy"); - QTest::addColumn("expectedSource"); - - QTest::newRow("remove one row in the middle [no sorting/filter]") - << (QStringList() - << "One" - << "Two" - << "Three" - << "Four" - << "Five") - << -1 // no sorting - << QString() // no filter - << 2 // position - << 1 // count - << true // success - << (QStringList() // expectedProxy - << "One" - << "Two" - << "Four" - << "Five") - << (QStringList() // expectedSource - << "One" - << "Two" - << "Four" - << "Five"); - - QTest::newRow("remove one row in the beginning [no sorting/filter]") - << (QStringList() - << "One" - << "Two" - << "Three" - << "Four" - << "Five") - << -1 // no sorting - << QString() // no filter - << 0 // position - << 1 // count - << true // success - << (QStringList() // expectedProxy - << "Two" - << "Three" - << "Four" - << "Five") - << (QStringList() // expectedSource - << "Two" - << "Three" - << "Four" - << "Five"); - - QTest::newRow("remove one row in the end [no sorting/filter]") - << (QStringList() - << "One" - << "Two" - << "Three" - << "Four" - << "Five") - << -1 // no sorting - << QString() // no filter - << 4 // position - << 1 // count - << true // success - << (QStringList() // expectedProxy - << "One" - << "Two" - << "Three" - << "Four") - << (QStringList() // expectedSource - << "One" - << "Two" - << "Three" - << "Four"); - - QTest::newRow("remove all [no sorting/filter]") - << (QStringList() - << "One" - << "Two" - << "Three" - << "Four" - << "Five") - << -1 // no sorting - << QString() // no filter - << 0 // position - << 5 // count - << true // success - << QStringList() // expectedProxy - << QStringList(); // expectedSource - - QTest::newRow("remove one row past the end [no sorting/filter]") - << (QStringList() - << "One" - << "Two" - << "Three" - << "Four" - << "Five") - << -1 // no sorting - << QString() // no filter - << 5 // position - << 1 // count - << false // success - << (QStringList() // expectedProxy - << "One" - << "Two" - << "Three" - << "Four" - << "Five") - << (QStringList() // expectedSource - << "One" - << "Two" - << "Three" - << "Four" - << "Five"); - - QTest::newRow("remove row -1 [no sorting/filter]") - << (QStringList() - << "One" - << "Two" - << "Three" - << "Four" - << "Five") - << -1 // no sorting - << QString() // no filter - << -1 // position - << 1 // count - << false // success - << (QStringList() // expectedProxy - << "One" - << "Two" - << "Three" - << "Four" - << "Five") - << (QStringList() // expectedSource - << "One" - << "Two" - << "Three" - << "Four" - << "Five"); - - QTest::newRow("remove three rows in the middle [no sorting/filter]") - << (QStringList() - << "One" - << "Two" - << "Three" - << "Four" - << "Five") - << -1 // no sorting - << QString() // no filter - << 1 // position - << 3 // count - << true // success - << (QStringList() // expectedProxy - << "One" - << "Five") - << (QStringList() // expectedSource - << "One" - << "Five"); - - QTest::newRow("remove one row in the middle [ascending sorting, no filter]") - << (QStringList() - << "1" - << "5" - << "2" - << "4" - << "3") - << static_cast(Qt::AscendingOrder) - << QString() // no filter - << 2 // position - << 1 // count - << true // success - << (QStringList() // expectedProxy - << "1" - << "2" - << "4" - << "5") - << (QStringList() // expectedSource - << "1" - << "5" - << "2" - << "4"); - - QTest::newRow("remove two rows in the middle [ascending sorting, no filter]") - << (QStringList() - << "1" - << "5" - << "2" - << "4" - << "3") - << static_cast(Qt::AscendingOrder) - << QString() // no filter - << 2 // position - << 2 // count - << true // success - << (QStringList() // expectedProxy - << "1" - << "2" - << "5") - << (QStringList() // expectedSource - << "1" - << "5" - << "2"); - - QTest::newRow("remove two rows in the middle [descending sorting, no filter]") - << (QStringList() - << "1" - << "5" - << "2" - << "4" - << "3") - << static_cast(Qt::DescendingOrder) - << QString() // no filter - << 2 // position - << 2 // count - << true // success - << (QStringList() // expectedProxy - << "5" - << "4" - << "1") - << (QStringList() // expectedSource - << "1" - << "5" - << "4"); - - QTest::newRow("remove one row in the middle [no sorting, filter=5|2|3]") - << (QStringList() - << "1" - << "5" - << "2" - << "4" - << "3") - << -1 // no sorting - << QString("5|2|3") - << 1 // position - << 1 // count - << true // success - << (QStringList() // expectedProxy - << "5" - << "3") - << (QStringList() // expectedSource - << "1" - << "5" - << "4" - << "3"); - - QTest::newRow("remove all [ascending sorting, no filter]") - << (QStringList() - << "1" - << "5" - << "2" - << "4" - << "3") - << static_cast(Qt::AscendingOrder) - << QString() // no filter - << 0 // position - << 5 // count - << true // success - << QStringList() // expectedProxy - << QStringList(); // expectedSource -} - -void tst_QSortFilterProxyModel::removeRows() -{ - QFETCH(QStringList, initial); - QFETCH(int, sortOrder); - QFETCH(QString, filter); - QFETCH(int, position); - QFETCH(int, count); - QFETCH(bool, success); - QFETCH(QStringList, expectedProxy); - QFETCH(QStringList, expectedSource); - - QStandardItemModel model; - QSortFilterProxyModel proxy; - proxy.setSourceModel(&model); - - // prepare model - foreach (QString s, initial) - model.appendRow(new QStandardItem(s)); - - if (sortOrder != -1) - proxy.sort(0, static_cast(sortOrder)); - if (!filter.isEmpty()) - proxy.setFilterRegExp(QRegExp(filter)); - - // remove the rows - QCOMPARE(proxy.removeRows(position, count, QModelIndex()), success); - QCOMPARE(model.rowCount(QModelIndex()), expectedSource.count()); - QCOMPARE(proxy.rowCount(QModelIndex()), expectedProxy.count()); - - // make sure the model is correct after remove - for (int row = 0; row < model.rowCount(QModelIndex()); ++row) - QCOMPARE(model.item(row)->text(), expectedSource.at(row)); - - // make sure the proxy is correct after remove - for (int row = 0; row < proxy.rowCount(QModelIndex()); ++row) { - QModelIndex index = proxy.index(row, 0, QModelIndex()); - QCOMPARE(proxy.data(index, Qt::DisplayRole).toString(), expectedProxy.at(row)); - } -} - -class MyFilteredColumnProxyModel : public QSortFilterProxyModel -{ - Q_OBJECT -public: - MyFilteredColumnProxyModel(QObject *parent = 0) - : QSortFilterProxyModel(parent) { } -protected: - bool filterAcceptsColumn(int sourceColumn, const QModelIndex &) const - { - QString key = sourceModel()->headerData(sourceColumn, Qt::Horizontal).toString(); - return key.contains(filterRegExp()); - } -}; - -void tst_QSortFilterProxyModel::removeColumns_data() -{ - QTest::addColumn("initial"); - QTest::addColumn("filter"); - QTest::addColumn("position"); - QTest::addColumn("count"); - QTest::addColumn("success"); - QTest::addColumn("expectedProxy"); - QTest::addColumn("expectedSource"); - - QTest::newRow("remove one column in the middle [no filter]") - << (QStringList() - << "1" - << "2" - << "3" - << "4" - << "5") - << QString() // no filter - << 2 // position - << 1 // count - << true // success - << (QStringList() // expectedProxy - << "1" - << "2" - << "4" - << "5") - << (QStringList() // expectedSource - << "1" - << "2" - << "4" - << "5"); - - QTest::newRow("remove one column in the end [no filter]") - << (QStringList() - << "1" - << "2" - << "3" - << "4" - << "5") - << QString() // no filter - << 4 // position - << 1 // count - << true // success - << (QStringList() // expectedProxy - << "1" - << "2" - << "3" - << "4") - << (QStringList() // expectedSource - << "1" - << "2" - << "3" - << "4"); - - QTest::newRow("remove one column past the end [no filter]") - << (QStringList() - << "1" - << "2" - << "3" - << "4" - << "5") - << QString() // no filter - << 5 // position - << 1 // count - << false // success - << (QStringList() // expectedProxy - << "1" - << "2" - << "3" - << "4" - << "5") - << (QStringList() // expectedSource - << "1" - << "2" - << "3" - << "4" - << "5"); - - QTest::newRow("remove column -1 [no filter]") - << (QStringList() - << "1" - << "2" - << "3" - << "4" - << "5") - << QString() // no filter - << -1 // position - << 1 // count - << false // success - << (QStringList() // expectedProxy - << "1" - << "2" - << "3" - << "4" - << "5") - << (QStringList() // expectedSource - << "1" - << "2" - << "3" - << "4" - << "5"); - - QTest::newRow("remove all columns [no filter]") - << (QStringList() - << "1" - << "2" - << "3" - << "4" - << "5") - << QString() // no filter - << 0 // position - << 5 // count - << true // success - << QStringList() // expectedProxy - << QStringList(); // expectedSource - - QTest::newRow("remove one column in the middle [filter=1|3|5]") - << (QStringList() - << "1" - << "2" - << "3" - << "4" - << "5") - << QString("1|3|5") - << 1 // position - << 1 // count - << true // success - << (QStringList() // expectedProxy - << "1" - << "5") - << (QStringList() // expectedSource - << "1" - << "2" - << "4" - << "5"); - - QTest::newRow("remove one column in the end [filter=1|3|5]") - << (QStringList() - << "1" - << "2" - << "3" - << "4" - << "5") - << QString("1|3|5") - << 2 // position - << 1 // count - << true // success - << (QStringList() // expectedProxy - << "1" - << "3") - << (QStringList() // expectedSource - << "1" - << "2" - << "3" - << "4"); - - QTest::newRow("remove one column past the end [filter=1|3|5]") - << (QStringList() - << "1" - << "2" - << "3" - << "4" - << "5") - << QString("1|3|5") - << 3 // position - << 1 // count - << false // success - << (QStringList() // expectedProxy - << "1" - << "3" - << "5") - << (QStringList() // expectedSource - << "1" - << "2" - << "3" - << "4" - << "5"); - - QTest::newRow("remove all columns [filter=1|3|5]") - << (QStringList() - << "1" - << "2" - << "3" - << "4" - << "5") - << QString("1|3|5") - << 0 // position - << 3 // count - << true // success - << QStringList() // expectedProxy - << (QStringList() // expectedSource - << "2" - << "4"); -} - -void tst_QSortFilterProxyModel::removeColumns() -{ - QFETCH(QStringList, initial); - QFETCH(QString, filter); - QFETCH(int, position); - QFETCH(int, count); - QFETCH(bool, success); - QFETCH(QStringList, expectedProxy); - QFETCH(QStringList, expectedSource); - - QStandardItemModel model; - MyFilteredColumnProxyModel proxy; - proxy.setSourceModel(&model); - if (!filter.isEmpty()) - proxy.setFilterRegExp(QRegExp(filter)); - - // prepare model - model.setHorizontalHeaderLabels(initial); - - // remove the columns - QCOMPARE(proxy.removeColumns(position, count, QModelIndex()), success); - QCOMPARE(model.columnCount(QModelIndex()), expectedSource.count()); - QCOMPARE(proxy.columnCount(QModelIndex()), expectedProxy.count()); - - // make sure the model is correct after remove - for (int col = 0; col < model.columnCount(QModelIndex()); ++col) - QCOMPARE(model.horizontalHeaderItem(col)->text(), expectedSource.at(col)); - - // make sure the proxy is correct after remove - for (int col = 0; col < proxy.columnCount(QModelIndex()); ++col) { - QCOMPARE(proxy.headerData(col, Qt::Horizontal, Qt::DisplayRole).toString(), - expectedProxy.at(col)); - } -} - - -void tst_QSortFilterProxyModel::filterColumns_data() -{ - QTest::addColumn("pattern"); - QTest::addColumn("initial"); - QTest::addColumn("data"); - - QTest::newRow("all") << "a" - << (QStringList() - << "delta" - << "yankee" - << "bravo" - << "lima") - << true; - - QTest::newRow("some") << "lie" - << (QStringList() - << "charlie" - << "juliet" - << "tango" - << "hotel") - << true; - - QTest::newRow("nothing") << "zoo" - << (QStringList() - << "foxtrot" - << "uniform" - << "alpha" - << "golf") - << false; -} - -void tst_QSortFilterProxyModel::filterColumns() -{ - QFETCH(QString, pattern); - QFETCH(QStringList, initial); - QFETCH(bool, data); - // prepare model - m_model->setColumnCount(initial.count()); - m_model->setRowCount(1); - QCOMPARE(m_model->columnCount(QModelIndex()), initial.count()); - QCOMPARE(m_model->rowCount(QModelIndex()), 1); - // set data - QCOMPARE(m_model->rowCount(QModelIndex()), 1); - for (int col = 0; col < m_model->columnCount(QModelIndex()); ++col) { - QModelIndex index = m_model->index(0, col, QModelIndex()); - m_model->setData(index, initial.at(col), Qt::DisplayRole); - } - m_proxy->setFilterRegExp(pattern); - m_proxy->setFilterKeyColumn(-1); - // make sure the model is unchanged - for (int col = 0; col < m_model->columnCount(QModelIndex()); ++col) { - QModelIndex index = m_model->index(0, col, QModelIndex()); - QCOMPARE(m_model->data(index, Qt::DisplayRole).toString(), initial.at(col)); - } - // make sure the proxy is filtered - QModelIndex index = m_proxy->index(0, 0, QModelIndex()); - QCOMPARE(index.isValid(), data); -} - -void tst_QSortFilterProxyModel::filter_data() -{ - QTest::addColumn("pattern"); - QTest::addColumn("initial"); - QTest::addColumn("expected"); - - QTest::newRow("flat") << "e" - << (QStringList() - << "delta" - << "yankee" - << "bravo" - << "lima" - << "charlie" - << "juliet" - << "tango" - << "hotel" - << "uniform" - << "alpha" - << "echo" - << "golf" - << "quebec" - << "foxtrot" - << "india" - << "romeo" - << "november" - << "oskar" - << "zulu" - << "kilo" - << "whiskey" - << "mike" - << "papa" - << "sierra" - << "xray" - << "viktor") - << (QStringList() - << "delta" - << "yankee" - << "charlie" - << "juliet" - << "hotel" - << "echo" - << "quebec" - << "romeo" - << "november" - << "whiskey" - << "mike" - << "sierra"); -} - -void tst_QSortFilterProxyModel::filter() -{ - QFETCH(QString, pattern); - QFETCH(QStringList, initial); - QFETCH(QStringList, expected); - // prepare model - QVERIFY(m_model->insertRows(0, initial.count(), QModelIndex())); - QCOMPARE(m_model->rowCount(QModelIndex()), initial.count()); - // set data - QCOMPARE(m_model->columnCount(QModelIndex()), 1); - for (int row = 0; row < m_model->rowCount(QModelIndex()); ++row) { - QModelIndex index = m_model->index(row, 0, QModelIndex()); - m_model->setData(index, initial.at(row), Qt::DisplayRole); - } - m_proxy->setFilterRegExp(pattern); - // make sure the proxy is unfiltered - QCOMPARE(m_proxy->columnCount(QModelIndex()), 1); - QCOMPARE(m_proxy->rowCount(QModelIndex()), expected.count()); - // make sure the model is unchanged - for (int row = 0; row < m_model->rowCount(QModelIndex()); ++row) { - QModelIndex index = m_model->index(row, 0, QModelIndex()); - QCOMPARE(m_model->data(index, Qt::DisplayRole).toString(), initial.at(row)); - } - // make sure the proxy is filtered - for (int row = 0; row < m_proxy->rowCount(QModelIndex()); ++row) { - QModelIndex index = m_proxy->index(row, 0, QModelIndex()); - QCOMPARE(m_proxy->data(index, Qt::DisplayRole).toString(), expected.at(row)); - } -} - -void tst_QSortFilterProxyModel::filterHierarchy_data() -{ - QTest::addColumn("pattern"); - QTest::addColumn("initial"); - QTest::addColumn("expected"); - - QTest::newRow("flat") << ".*oo" - << (QStringList() - << "foo" << "boo" << "baz" << "moo" << "laa" << "haa") - << (QStringList() - << "foo" << "boo" << "moo"); - - QTest::newRow("simple hierarchy") << "b.*z" - << (QStringList() << "baz" << "<" << "boz" << "<" << "moo" << ">" << ">") - << (QStringList() << "baz" << "<" << "boz" << ">"); -} - -void tst_QSortFilterProxyModel::filterHierarchy() -{ - QFETCH(QString, pattern); - QFETCH(QStringList, initial); - QFETCH(QStringList, expected); - buildHierarchy(initial, m_model); - m_proxy->setFilterRegExp(pattern); - checkHierarchy(initial, m_model); - checkHierarchy(expected, m_proxy); -} - -void tst_QSortFilterProxyModel::buildHierarchy(const QStringList &l, QAbstractItemModel *m) -{ - int ind = 0; - int row = 0; - QStack row_stack; - QModelIndex parent; - QStack parent_stack; - for (int i = 0; i < l.count(); ++i) { - QString token = l.at(i); - if (token == "<") { // start table - ++ind; - parent_stack.push(parent); - row_stack.push(row); - parent = m->index(row - 1, 0, parent); - row = 0; - QVERIFY(m->insertColumns(0, 1, parent)); // add column - } else if (token == ">") { // end table - --ind; - parent = parent_stack.pop(); - row = row_stack.pop(); - } else { // append row - QVERIFY(m->insertRows(row, 1, parent)); - QModelIndex index = m->index(row, 0, parent); - QVERIFY(index.isValid()); - m->setData(index, token, Qt::DisplayRole); - ++row; - } - } -} - -void tst_QSortFilterProxyModel::checkHierarchy(const QStringList &l, const QAbstractItemModel *m) -{ - int row = 0; - int indent = 0; - QStack row_stack; - QModelIndex parent; - QStack parent_stack; - for (int i = 0; i < l.count(); ++i) { - QString token = l.at(i); - if (token == "<") { // start table - ++indent; - parent_stack.push(parent); - row_stack.push(row); - parent = m->index(row - 1, 0, parent); - QVERIFY(parent.isValid()); - row = 0; - } else if (token == ">") { // end table - --indent; - parent = parent_stack.pop(); - row = row_stack.pop(); - } else { // compare row - QModelIndex index = m->index(row, 0, parent); - QVERIFY(index.isValid()); - QString str = m->data(index, Qt::DisplayRole).toString(); - QCOMPARE(str, token); - ++row; - } - } -} - - - -class TestModel: public QAbstractTableModel -{ -public: - int rowCount(const QModelIndex &) const { return 10000; } - int columnCount(const QModelIndex &) const { return 1; } - QVariant data(const QModelIndex &index, int role) const - { - if (role != Qt::DisplayRole) - return QVariant(); - return QString::number(index.row()); - } -}; - -void tst_QSortFilterProxyModel::filterTable() -{ - TestModel model; - QSortFilterProxyModel filter; - filter.setSourceModel(&model); - filter.setFilterRegExp("9"); - - for (int i = 0; i < filter.rowCount(); ++i) - QVERIFY(filter.data(filter.index(i, 0)).toString().contains("9")); -} - -void tst_QSortFilterProxyModel::insertAfterSelect() -{ - QStandardItemModel model(10, 2); - for (int i = 0; i<10;i++) - model.setData(model.index(i, 0), QVariant(i)); - QSortFilterProxyModel filter; - filter.setSourceModel(&model); - QTreeView view; - view.setModel(&filter); - view.show(); - QModelIndex firstIndex = filter.mapFromSource(model.index(0, 0, QModelIndex())); - QCOMPARE(firstIndex.model(), (const QAbstractItemModel *)view.model()); - QVERIFY(firstIndex.isValid()); - int itemOffset = view.visualRect(firstIndex).width() / 2; - QPoint p(itemOffset, 1); - QTest::mouseClick(view.viewport(), Qt::LeftButton, Qt::NoModifier, p); - QVERIFY(view.selectionModel()->selectedIndexes().size() > 0); - model.insertRows(5, 1, QModelIndex()); - QVERIFY(view.selectionModel()->selectedIndexes().size() > 0); // Should still have a selection -} - -void tst_QSortFilterProxyModel::removeAfterSelect() -{ - QStandardItemModel model(10, 2); - for (int i = 0; i<10;i++) - model.setData(model.index(i, 0), QVariant(i)); - QSortFilterProxyModel filter; - filter.setSourceModel(&model); - QTreeView view; - view.setModel(&filter); - view.show(); - QModelIndex firstIndex = filter.mapFromSource(model.index(0, 0, QModelIndex())); - QCOMPARE(firstIndex.model(), (const QAbstractItemModel *)view.model()); - QVERIFY(firstIndex.isValid()); - int itemOffset = view.visualRect(firstIndex).width() / 2; - QPoint p(itemOffset, 1); - QTest::mouseClick(view.viewport(), Qt::LeftButton, Qt::NoModifier, p); - QVERIFY(view.selectionModel()->selectedIndexes().size() > 0); - model.removeRows(5, 1, QModelIndex()); - QVERIFY(view.selectionModel()->selectedIndexes().size() > 0); // Should still have a selection -} - -void tst_QSortFilterProxyModel::filterCurrent() -{ - QStandardItemModel model(2, 1); - model.setData(model.index(0, 0), QString("AAA")); - model.setData(model.index(1, 0), QString("BBB")); - QSortFilterProxyModel proxy; - proxy.setSourceModel(&model); - QTreeView view; - - view.show(); - view.setModel(&proxy); - QSignalSpy spy(view.selectionModel(), SIGNAL(currentChanged(QModelIndex, QModelIndex))); - - view.setCurrentIndex(proxy.index(0, 0)); - QCOMPARE(spy.count(), 1); - proxy.setFilterRegExp(QRegExp("^B")); - QCOMPARE(spy.count(), 2); -} - -void tst_QSortFilterProxyModel::changeSourceLayout() -{ - QStandardItemModel model(2, 1); - model.setData(model.index(0, 0), QString("b")); - model.setData(model.index(1, 0), QString("a")); - QSortFilterProxyModel proxy; - proxy.setSourceModel(&model); - - QList persistentSourceIndexes; - QList persistentProxyIndexes; - for (int row = 0; row < model.rowCount(); ++row) { - persistentSourceIndexes.append(model.index(row, 0)); - persistentProxyIndexes.append(proxy.index(row, 0)); - } - - // change layout of source model - model.sort(0, Qt::AscendingOrder); - - for (int row = 0; row < model.rowCount(); ++row) { - QCOMPARE(persistentProxyIndexes.at(row).row(), - persistentSourceIndexes.at(row).row()); - } -} - -void tst_QSortFilterProxyModel::removeSourceRows_data() -{ - QTest::addColumn("sourceItems"); - QTest::addColumn("start"); - QTest::addColumn("count"); - QTest::addColumn("sortOrder"); - QTest::addColumn("expectedRemovedProxyIntervals"); - QTest::addColumn("expectedProxyItems"); - - QTest::newRow("remove one, no sorting") - << (QStringList() << "a" << "b") // sourceItems - << 0 // start - << 1 // count - << -1 // sortOrder (no sorting) - << (IntPairList() << IntPair(0, 0)) // expectedRemovedIntervals - << (QStringList() << "b") // expectedProxyItems - ; - QTest::newRow("remove one, ascending sort (same order)") - << (QStringList() << "a" << "b") // sourceItems - << 0 // start - << 1 // count - << static_cast(Qt::AscendingOrder) // sortOrder - << (IntPairList() << IntPair(0, 0)) // expectedRemovedIntervals - << (QStringList() << "b") // expectedProxyItems - ; - QTest::newRow("remove one, ascending sort (reverse order)") - << (QStringList() << "b" << "a") // sourceItems - << 0 // start - << 1 // count - << static_cast(Qt::AscendingOrder) // sortOrder - << (IntPairList() << IntPair(1, 1)) // expectedRemovedIntervals - << (QStringList() << "a") // expectedProxyItems - ; - QTest::newRow("remove two, multiple proxy intervals") - << (QStringList() << "c" << "d" << "a" << "b") // sourceItems - << 1 // start - << 2 // count - << static_cast(Qt::AscendingOrder) // sortOrder - << (IntPairList() << IntPair(3, 3) << IntPair(0, 0)) // expectedRemovedIntervals - << (QStringList() << "b" << "c") // expectedProxyItems - ; - QTest::newRow("remove three, multiple proxy intervals") - << (QStringList() << "b" << "d" << "f" << "a" << "c" << "e") // sourceItems - << 3 // start - << 3 // count - << static_cast(Qt::AscendingOrder) // sortOrder - << (IntPairList() << IntPair(4, 4) << IntPair(2, 2) << IntPair(0, 0)) // expectedRemovedIntervals - << (QStringList() << "b" << "d" << "f") // expectedProxyItems - ; - QTest::newRow("remove all, single proxy intervals") - << (QStringList() << "a" << "b" << "c" << "d" << "e" << "f") // sourceItems - << 0 // start - << 6 // count - << static_cast(Qt::DescendingOrder) // sortOrder - << (IntPairList() << IntPair(0, 5)) // expectedRemovedIntervals - << QStringList() // expectedProxyItems - ; -} - -// Check that correct proxy model rows are removed when rows are removed -// from the source model -void tst_QSortFilterProxyModel::removeSourceRows() -{ - QFETCH(QStringList, sourceItems); - QFETCH(int, start); - QFETCH(int, count); - QFETCH(int, sortOrder); - QFETCH(IntPairList, expectedRemovedProxyIntervals); - QFETCH(QStringList, expectedProxyItems); - - QStandardItemModel model; - QSortFilterProxyModel proxy; - - proxy.setSourceModel(&model); - model.insertColumns(0, 1); - model.insertRows(0, sourceItems.count()); - - for (int i = 0; i < sourceItems.count(); ++i) { - QModelIndex sindex = model.index(i, 0, QModelIndex()); - model.setData(sindex, sourceItems.at(i), Qt::DisplayRole); - QModelIndex pindex = proxy.index(i, 0, QModelIndex()); - QCOMPARE(proxy.data(pindex, Qt::DisplayRole), model.data(sindex, Qt::DisplayRole)); - } - - if (sortOrder != -1) - proxy.sort(0, static_cast(sortOrder)); - (void)proxy.rowCount(QModelIndex()); // force mapping - - QSignalSpy removeSpy(&proxy, SIGNAL(rowsRemoved(QModelIndex, int, int))); - QSignalSpy insertSpy(&proxy, SIGNAL(rowsInserted(QModelIndex, int, int))); - QSignalSpy aboutToRemoveSpy(&proxy, SIGNAL(rowsAboutToBeRemoved(QModelIndex, int, int))); - QSignalSpy aboutToInsertSpy(&proxy, SIGNAL(rowsAboutToBeInserted(QModelIndex, int, int))); - - model.removeRows(start, count, QModelIndex()); - - QCOMPARE(aboutToRemoveSpy.count(), expectedRemovedProxyIntervals.count()); - for (int i = 0; i < aboutToRemoveSpy.count(); ++i) { - QList args = aboutToRemoveSpy.at(i); - QVERIFY(args.at(1).type() == QVariant::Int); - QVERIFY(args.at(2).type() == QVariant::Int); - QCOMPARE(args.at(1).toInt(), expectedRemovedProxyIntervals.at(i).first); - QCOMPARE(args.at(2).toInt(), expectedRemovedProxyIntervals.at(i).second); - } - QCOMPARE(removeSpy.count(), expectedRemovedProxyIntervals.count()); - for (int i = 0; i < removeSpy.count(); ++i) { - QList args = removeSpy.at(i); - QVERIFY(args.at(1).type() == QVariant::Int); - QVERIFY(args.at(2).type() == QVariant::Int); - QCOMPARE(args.at(1).toInt(), expectedRemovedProxyIntervals.at(i).first); - QCOMPARE(args.at(2).toInt(), expectedRemovedProxyIntervals.at(i).second); - } - - QCOMPARE(insertSpy.count(), 0); - QCOMPARE(aboutToInsertSpy.count(), 0); - - QCOMPARE(proxy.rowCount(QModelIndex()), expectedProxyItems.count()); - for (int i = 0; i < expectedProxyItems.count(); ++i) { - QModelIndex pindex = proxy.index(i, 0, QModelIndex()); - QCOMPARE(proxy.data(pindex, Qt::DisplayRole).toString(), expectedProxyItems.at(i)); - } -} - -void tst_QSortFilterProxyModel::insertSourceRows_data() -{ - QTest::addColumn("sourceItems"); - QTest::addColumn("start"); - QTest::addColumn("newItems"); - QTest::addColumn("sortOrder"); - QTest::addColumn("proxyItems"); - - QTest::newRow("insert (1)") - << (QStringList() << "c" << "b") // sourceItems - << 1 // start - << (QStringList() << "a") // newItems - << static_cast(Qt::AscendingOrder) // sortOrder - << (QStringList() << "a" << "b" << "c") // proxyItems - ; - - QTest::newRow("insert (2)") - << (QStringList() << "d" << "b" << "c") // sourceItems - << 3 // start - << (QStringList() << "a") // newItems - << static_cast(Qt::DescendingOrder) // sortOrder - << (QStringList() << "d" << "c" << "b" << "a") // proxyItems - ; -} - -// Check that rows are inserted at correct position in proxy model when -// rows are inserted into the source model -void tst_QSortFilterProxyModel::insertSourceRows() -{ - QFETCH(QStringList, sourceItems); - QFETCH(int, start); - QFETCH(QStringList, newItems); - QFETCH(int, sortOrder); - QFETCH(QStringList, proxyItems); - - QStandardItemModel model; - QSortFilterProxyModel proxy; - proxy.setDynamicSortFilter(true); - - proxy.setSourceModel(&model); - model.insertColumns(0, 1); - model.insertRows(0, sourceItems.count()); - - for (int i = 0; i < sourceItems.count(); ++i) { - QModelIndex index = model.index(i, 0, QModelIndex()); - model.setData(index, sourceItems.at(i), Qt::DisplayRole); - } - - proxy.sort(0, static_cast(sortOrder)); - (void)proxy.rowCount(QModelIndex()); // force mapping - - model.insertRows(start, newItems.size(), QModelIndex()); - - QCOMPARE(proxy.rowCount(QModelIndex()), proxyItems.count()); - for (int i = 0; i < newItems.count(); ++i) { - QModelIndex index = model.index(start + i, 0, QModelIndex()); - model.setData(index, newItems.at(i), Qt::DisplayRole); - } - - for (int i = 0; i < proxyItems.count(); ++i) { - QModelIndex index = proxy.index(i, 0, QModelIndex()); - QCOMPARE(proxy.data(index, Qt::DisplayRole).toString(), proxyItems.at(i)); - } -} - -void tst_QSortFilterProxyModel::changeFilter_data() -{ - QTest::addColumn("sourceItems"); - QTest::addColumn("sortOrder"); - QTest::addColumn("initialFilter"); - QTest::addColumn("initialRemoveIntervals"); - QTest::addColumn("initialProxyItems"); - QTest::addColumn("finalFilter"); - QTest::addColumn("finalRemoveIntervals"); - QTest::addColumn("insertIntervals"); - QTest::addColumn("finalProxyItems"); - - QTest::newRow("filter (1)") - << (QStringList() << "a" << "b" << "c" << "d" << "e" << "f") // sourceItems - << static_cast(Qt::AscendingOrder) // sortOrder - << "a|b|c" // initialFilter - << (IntPairList() << IntPair(3, 5)) // initialRemoveIntervals - << (QStringList() << "a" << "b" << "c") // initialProxyItems - << "b|d|f" // finalFilter - << (IntPairList() << IntPair(2, 2) << IntPair(0, 0)) // finalRemoveIntervals - << (IntPairList() << IntPair(1, 2)) // insertIntervals - << (QStringList() << "b" << "d" << "f") // finalProxyItems - ; - - QTest::newRow("filter (2)") - << (QStringList() << "a" << "b" << "c" << "d" << "e" << "f") // sourceItems - << static_cast(Qt::AscendingOrder) // sortOrder - << "a|c|e" // initialFilter - << (IntPairList() << IntPair(5, 5) << IntPair(3, 3) << IntPair(1, 1)) // initialRemoveIntervals - << (QStringList() << "a" << "c" << "e") // initialProxyItems - << "" // finalFilter - << IntPairList() // finalRemoveIntervals - << (IntPairList() << IntPair(3, 3) << IntPair(2, 2) << IntPair(1, 1)) // insertIntervals - << (QStringList() << "a" << "b" << "c" << "d" << "e" << "f") // finalProxyItems - ; - - QTest::newRow("filter (3)") - << (QStringList() << "a" << "b" << "c") // sourceItems - << static_cast(Qt::AscendingOrder) // sortOrder - << "a" // initialFilter - << (IntPairList() << IntPair(1, 2)) // initialRemoveIntervals - << (QStringList() << "a") // initialProxyItems - << "a" // finalFilter - << IntPairList() // finalRemoveIntervals - << IntPairList() // insertIntervals - << (QStringList() << "a") // finalProxyItems - ; -} - -// Check that rows are added/removed when filter changes -void tst_QSortFilterProxyModel::changeFilter() -{ - QFETCH(QStringList, sourceItems); - QFETCH(int, sortOrder); - QFETCH(QString, initialFilter); - QFETCH(IntPairList, initialRemoveIntervals); - QFETCH(QStringList, initialProxyItems); - QFETCH(QString, finalFilter); - QFETCH(IntPairList, finalRemoveIntervals); - QFETCH(IntPairList, insertIntervals); - QFETCH(QStringList, finalProxyItems); - - QStandardItemModel model; - QSortFilterProxyModel proxy; - - proxy.setSourceModel(&model); - model.insertColumns(0, 1); - model.insertRows(0, sourceItems.count()); - - for (int i = 0; i < sourceItems.count(); ++i) { - QModelIndex index = model.index(i, 0, QModelIndex()); - model.setData(index, sourceItems.at(i), Qt::DisplayRole); - } - - proxy.sort(0, static_cast(sortOrder)); - (void)proxy.rowCount(QModelIndex()); // force mapping - - QSignalSpy initialRemoveSpy(&proxy, SIGNAL(rowsRemoved(QModelIndex, int, int))); - QSignalSpy initialInsertSpy(&proxy, SIGNAL(rowsInserted(QModelIndex, int, int))); - - proxy.setFilterRegExp(initialFilter); - - QCOMPARE(initialRemoveSpy.count(), initialRemoveIntervals.count()); - QCOMPARE(initialInsertSpy.count(), 0); - for (int i = 0; i < initialRemoveSpy.count(); ++i) { - QList args = initialRemoveSpy.at(i); - QVERIFY(args.at(1).type() == QVariant::Int); - QVERIFY(args.at(2).type() == QVariant::Int); - QCOMPARE(args.at(1).toInt(), initialRemoveIntervals.at(i).first); - QCOMPARE(args.at(2).toInt(), initialRemoveIntervals.at(i).second); - } - - QCOMPARE(proxy.rowCount(QModelIndex()), initialProxyItems.count()); - for (int i = 0; i < initialProxyItems.count(); ++i) { - QModelIndex index = proxy.index(i, 0, QModelIndex()); - QCOMPARE(proxy.data(index, Qt::DisplayRole).toString(), initialProxyItems.at(i)); - } - - QSignalSpy finalRemoveSpy(&proxy, SIGNAL(rowsRemoved(QModelIndex, int, int))); - QSignalSpy finalInsertSpy(&proxy, SIGNAL(rowsInserted(QModelIndex, int, int))); - - proxy.setFilterRegExp(finalFilter); - - QCOMPARE(finalRemoveSpy.count(), finalRemoveIntervals.count()); - for (int i = 0; i < finalRemoveSpy.count(); ++i) { - QList args = finalRemoveSpy.at(i); - QVERIFY(args.at(1).type() == QVariant::Int); - QVERIFY(args.at(2).type() == QVariant::Int); - QCOMPARE(args.at(1).toInt(), finalRemoveIntervals.at(i).first); - QCOMPARE(args.at(2).toInt(), finalRemoveIntervals.at(i).second); - } - -#ifdef Q_OS_IRIX - QEXPECT_FAIL("filter (2)", "Not reliable on IRIX", Abort); -#endif - QCOMPARE(finalInsertSpy.count(), insertIntervals.count()); - for (int i = 0; i < finalInsertSpy.count(); ++i) { - QList args = finalInsertSpy.at(i); - QVERIFY(args.at(1).type() == QVariant::Int); - QVERIFY(args.at(2).type() == QVariant::Int); - QCOMPARE(args.at(1).toInt(), insertIntervals.at(i).first); - QCOMPARE(args.at(2).toInt(), insertIntervals.at(i).second); - } - - QCOMPARE(proxy.rowCount(QModelIndex()), finalProxyItems.count()); - for (int i = 0; i < finalProxyItems.count(); ++i) { - QModelIndex index = proxy.index(i, 0, QModelIndex()); - QCOMPARE(proxy.data(index, Qt::DisplayRole).toString(), finalProxyItems.at(i)); - } -} - -void tst_QSortFilterProxyModel::changeSourceData_data() -{ - QTest::addColumn("sourceItems"); - QTest::addColumn("sortOrder"); - QTest::addColumn("filter"); - QTest::addColumn("dynamic"); - QTest::addColumn("row"); - QTest::addColumn("newValue"); - QTest::addColumn("removeIntervals"); - QTest::addColumn("insertIntervals"); - QTest::addColumn("proxyItems"); - - QTest::newRow("changeSourceData (1)") - << (QStringList() << "c" << "b" << "a") // sourceItems - << static_cast(Qt::AscendingOrder) // sortOrder - << "" // filter - << true // dynamic - << 2 // row - << "z" // newValue - << IntPairList() // removeIntervals - << IntPairList() // insertIntervals - << (QStringList() << "b" << "c" << "z") // proxyItems - ; - - QTest::newRow("changeSourceData (2)") - << (QStringList() << "b" << "c" << "z") // sourceItems - << static_cast(Qt::DescendingOrder) // sortOrder - << "" // filter - << true // dynamic - << 1 // row - << "a" // newValue - << IntPairList() // removeIntervals - << IntPairList() // insertIntervals - << (QStringList() << "z" << "b" << "a") // proxyItems - ; - - QTest::newRow("changeSourceData (3)") - << (QStringList() << "a" << "b") // sourceItems - << static_cast(Qt::DescendingOrder) // sortOrder - << "" // filter - << true // dynamic - << 0 // row - << "a" // newValue - << IntPairList() // removeIntervals - << IntPairList() // insertIntervals - << (QStringList() << "b" << "a") // proxyItems - ; - - QTest::newRow("changeSourceData (4)") - << (QStringList() << "a" << "b" << "c" << "d") // sourceItems - << static_cast(Qt::AscendingOrder) // sortOrder - << "a|c" // filter - << true // dynamic - << 1 // row - << "x" // newValue - << IntPairList() // removeIntervals - << IntPairList() // insertIntervals - << (QStringList() << "a" << "c") // proxyItems - ; - - QTest::newRow("changeSourceData (5)") - << (QStringList() << "a" << "b" << "c" << "d") // sourceItems - << static_cast(Qt::AscendingOrder) // sortOrder - << "a|c|x" // filter - << true // dynamic - << 1 // row - << "x" // newValue - << IntPairList() // removeIntervals - << (IntPairList() << IntPair(2, 2)) // insertIntervals - << (QStringList() << "a" << "c" << "x") // proxyItems - ; - - QTest::newRow("changeSourceData (6)") - << (QStringList() << "c" << "b" << "a") // sourceItems - << static_cast(Qt::AscendingOrder) // sortOrder - << "" // filter - << false // dynamic - << 2 // row - << "x" // newValue - << IntPairList() // removeIntervals - << IntPairList() // insertIntervals - << (QStringList() << "x" << "b" << "c") // proxyItems - ; -} - -void tst_QSortFilterProxyModel::changeSourceData() -{ - QFETCH(QStringList, sourceItems); - QFETCH(int, sortOrder); - QFETCH(QString, filter); - QFETCH(bool, dynamic); - QFETCH(int, row); - QFETCH(QString, newValue); - QFETCH(IntPairList, removeIntervals); - QFETCH(IntPairList, insertIntervals); - QFETCH(QStringList, proxyItems); - - QStandardItemModel model; - QSortFilterProxyModel proxy; - - proxy.setDynamicSortFilter(dynamic); - proxy.setSourceModel(&model); - model.insertColumns(0, 1); - model.insertRows(0, sourceItems.count()); - - for (int i = 0; i < sourceItems.count(); ++i) { - QModelIndex index = model.index(i, 0, QModelIndex()); - model.setData(index, sourceItems.at(i), Qt::DisplayRole); - } - - proxy.sort(0, static_cast(sortOrder)); - (void)proxy.rowCount(QModelIndex()); // force mapping - - proxy.setFilterRegExp(filter); - - QSignalSpy removeSpy(&proxy, SIGNAL(rowsRemoved(QModelIndex, int, int))); - QSignalSpy insertSpy(&proxy, SIGNAL(rowsInserted(QModelIndex, int, int))); - - { - QModelIndex index = model.index(row, 0, QModelIndex()); - model.setData(index, newValue, Qt::DisplayRole); - } - - QCOMPARE(removeSpy.count(), removeIntervals.count()); - for (int i = 0; i < removeSpy.count(); ++i) { - QList args = removeSpy.at(i); - QVERIFY(args.at(1).type() == QVariant::Int); - QVERIFY(args.at(2).type() == QVariant::Int); - QCOMPARE(args.at(1).toInt(), removeIntervals.at(i).first); - QCOMPARE(args.at(2).toInt(), removeIntervals.at(i).second); - } - - QCOMPARE(insertSpy.count(), insertIntervals.count()); - for (int i = 0; i < insertSpy.count(); ++i) { - QList args = insertSpy.at(i); - QVERIFY(args.at(1).type() == QVariant::Int); - QVERIFY(args.at(2).type() == QVariant::Int); - QCOMPARE(args.at(1).toInt(), insertIntervals.at(i).first); - QCOMPARE(args.at(2).toInt(), insertIntervals.at(i).second); - } - - QCOMPARE(proxy.rowCount(QModelIndex()), proxyItems.count()); - for (int i = 0; i < proxyItems.count(); ++i) { - QModelIndex index = proxy.index(i, 0, QModelIndex()); - QCOMPARE(proxy.data(index, Qt::DisplayRole).toString(), proxyItems.at(i)); - } -} - -void tst_QSortFilterProxyModel::sortFilterRole() -{ - QStandardItemModel model; - QSortFilterProxyModel proxy; - proxy.setSourceModel(&model); - model.insertColumns(0, 1); - - QList > sourceItems; - sourceItems = QList >() - << QPair("b", 3) - << QPair("c", 2) - << QPair("a", 1); - - QList orderedItems; - orderedItems = QList() - << 2 << 1; - - model.insertRows(0, sourceItems.count()); - for (int i = 0; i < sourceItems.count(); ++i) { - QModelIndex index = model.index(i, 0, QModelIndex()); - model.setData(index, sourceItems.at(i).first, Qt::DisplayRole); - model.setData(index, sourceItems.at(i).second, Qt::UserRole); - } - - proxy.setFilterRegExp("2"); - QCOMPARE(proxy.rowCount(), 0); // Qt::DisplayRole is default role - - proxy.setFilterRole(Qt::UserRole); - QCOMPARE(proxy.rowCount(), 1); - - proxy.setFilterRole(Qt::DisplayRole); - QCOMPARE(proxy.rowCount(), 0); - - proxy.setFilterRegExp("1|2|3"); - QCOMPARE(proxy.rowCount(), 0); - - proxy.setFilterRole(Qt::UserRole); - QCOMPARE(proxy.rowCount(), 3); - - proxy.sort(0, Qt::AscendingOrder); - QCOMPARE(proxy.rowCount(), 3); - - proxy.setSortRole(Qt::UserRole); - proxy.setFilterRole(Qt::DisplayRole); - proxy.setFilterRegExp("a|c"); - QCOMPARE(proxy.rowCount(), orderedItems.count()); - for (int i = 0; i < proxy.rowCount(); ++i) { - QModelIndex index = proxy.index(i, 0, QModelIndex()); - QCOMPARE(proxy.data(index, Qt::DisplayRole), sourceItems.at(orderedItems.at(i)).first); - } -} - -void tst_QSortFilterProxyModel::selectionFilteredOut() -{ - QStandardItemModel model(2, 1); - model.setData(model.index(0, 0), QString("AAA")); - model.setData(model.index(1, 0), QString("BBB")); - QSortFilterProxyModel proxy; - proxy.setSourceModel(&model); - QTreeView view; - - view.show(); - view.setModel(&proxy); - QSignalSpy spy(view.selectionModel(), SIGNAL(currentChanged(QModelIndex, QModelIndex))); - - view.setCurrentIndex(proxy.index(0, 0)); - QCOMPARE(spy.count(), 1); - proxy.setFilterRegExp(QRegExp("^B")); - QCOMPARE(spy.count(), 2); -} - -void tst_QSortFilterProxyModel::match_data() -{ - QTest::addColumn("sourceItems"); - QTest::addColumn("sortOrder"); - QTest::addColumn("filter"); - QTest::addColumn("proxyStartRow"); - QTest::addColumn("what"); - QTest::addColumn("matchFlags"); - QTest::addColumn("expectedProxyItems"); - QTest::newRow("1") - << (QStringList() << "a") // sourceItems - << static_cast(Qt::AscendingOrder) // sortOrder - << "" // filter - << 0 // proxyStartRow - << "a" // what - << static_cast(Qt::MatchExactly) // matchFlags - << (IntList() << 0); // expectedProxyItems - QTest::newRow("2") - << (QStringList() << "a" << "b") // sourceItems - << static_cast(Qt::AscendingOrder) // sortOrder - << "" // filter - << 0 // proxyStartRow - << "b" // what - << static_cast(Qt::MatchExactly) // matchFlags - << (IntList() << 1); // expectedProxyItems - QTest::newRow("3") - << (QStringList() << "a" << "b") // sourceItems - << static_cast(Qt::DescendingOrder) // sortOrder - << "" // filter - << 0 // proxyStartRow - << "a" // what - << static_cast(Qt::MatchExactly) // matchFlags - << (IntList() << 1); // expectedProxyItems - QTest::newRow("4") - << (QStringList() << "b" << "d" << "a" << "c") // sourceItems - << static_cast(Qt::AscendingOrder) // sortOrder - << "" // filter - << 1 // proxyStartRow - << "a" // what - << static_cast(Qt::MatchExactly) // matchFlags - << IntList(); // expectedProxyItems - QTest::newRow("5") - << (QStringList() << "b" << "d" << "a" << "c") // sourceItems - << static_cast(Qt::AscendingOrder) // sortOrder - << "a|b" // filter - << 0 // proxyStartRow - << "c" // what - << static_cast(Qt::MatchExactly) // matchFlags - << IntList(); // expectedProxyItems - QTest::newRow("6") - << (QStringList() << "b" << "d" << "a" << "c") // sourceItems - << static_cast(Qt::DescendingOrder) // sortOrder - << "a|b" // filter - << 0 // proxyStartRow - << "b" // what - << static_cast(Qt::MatchExactly) // matchFlags - << (IntList() << 0); // expectedProxyItems -} - -void tst_QSortFilterProxyModel::match() -{ - QFETCH(QStringList, sourceItems); - QFETCH(int, sortOrder); - QFETCH(QString, filter); - QFETCH(int, proxyStartRow); - QFETCH(QString, what); - QFETCH(int, matchFlags); - QFETCH(IntList, expectedProxyItems); - - QStandardItemModel model; - QSortFilterProxyModel proxy; - - proxy.setSourceModel(&model); - model.insertColumns(0, 1); - model.insertRows(0, sourceItems.count()); - - for (int i = 0; i < sourceItems.count(); ++i) { - QModelIndex index = model.index(i, 0, QModelIndex()); - model.setData(index, sourceItems.at(i), Qt::DisplayRole); - } - - proxy.sort(0, static_cast(sortOrder)); - proxy.setFilterRegExp(filter); - - QModelIndex startIndex = proxy.index(proxyStartRow, 0); - QModelIndexList indexes = proxy.match(startIndex, Qt::DisplayRole, what, - expectedProxyItems.count(), - Qt::MatchFlags(matchFlags)); - QCOMPARE(indexes.count(), expectedProxyItems.count()); - for (int i = 0; i < indexes.count(); ++i) - QCOMPARE(indexes.at(i).row(), expectedProxyItems.at(i)); -} - -void tst_QSortFilterProxyModel::insertIntoChildrenlessItem() -{ - QStandardItemModel model; - QStandardItem *itemA = new QStandardItem("a"); - model.appendRow(itemA); - QStandardItem *itemB = new QStandardItem("b"); - model.appendRow(itemB); - QStandardItem *itemC = new QStandardItem("c"); - model.appendRow(itemC); - - QSortFilterProxyModel proxy; - proxy.setSourceModel(&model); - - QSignalSpy colsInsertedSpy(&proxy, SIGNAL(columnsInserted(const QModelIndex&, int, int))); - QSignalSpy rowsInsertedSpy(&proxy, SIGNAL(rowsInserted(const QModelIndex&, int, int))); - - (void)proxy.rowCount(QModelIndex()); // force mapping of "a", "b", "c" - QCOMPARE(colsInsertedSpy.count(), 0); - QCOMPARE(rowsInsertedSpy.count(), 0); - - // now add a child to itemB ==> should get insert notification from the proxy - itemB->appendRow(new QStandardItem("a.0")); - QCOMPARE(colsInsertedSpy.count(), 1); - QCOMPARE(rowsInsertedSpy.count(), 1); - - QVariantList args = colsInsertedSpy.takeFirst(); - QCOMPARE(qvariant_cast(args.at(0)), proxy.mapFromSource(itemB->index())); - QCOMPARE(qvariant_cast(args.at(1)), 0); - QCOMPARE(qvariant_cast(args.at(2)), 0); - - args = rowsInsertedSpy.takeFirst(); - QCOMPARE(qvariant_cast(args.at(0)), proxy.mapFromSource(itemB->index())); - QCOMPARE(qvariant_cast(args.at(1)), 0); - QCOMPARE(qvariant_cast(args.at(2)), 0); -} - -void tst_QSortFilterProxyModel::invalidateMappedChildren() -{ - QStandardItemModel model; - - QSortFilterProxyModel proxy; - proxy.setSourceModel(&model); - - QStandardItem *itemA = new QStandardItem("a"); - model.appendRow(itemA); - QStandardItem *itemB = new QStandardItem("b"); - itemA->appendRow(itemB); - - QStandardItem *itemC = new QStandardItem("c"); - itemB->appendRow(itemC); - itemC->appendRow(new QStandardItem("d")); - - // force mappings - (void)proxy.hasChildren(QModelIndex()); - (void)proxy.hasChildren(proxy.mapFromSource(itemA->index())); - (void)proxy.hasChildren(proxy.mapFromSource(itemB->index())); - (void)proxy.hasChildren(proxy.mapFromSource(itemC->index())); - - itemB->removeRow(0); // should invalidate mapping of itemC - itemC = new QStandardItem("c"); - itemA->appendRow(itemC); - itemC->appendRow(new QStandardItem("d")); - - itemA->removeRow(1); // should invalidate mapping of itemC - itemC = new QStandardItem("c"); - itemB->appendRow(itemC); - itemC->appendRow(new QStandardItem("d")); - - QCOMPARE(proxy.rowCount(proxy.mapFromSource(itemA->index())), 1); - QCOMPARE(proxy.rowCount(proxy.mapFromSource(itemB->index())), 1); - QCOMPARE(proxy.rowCount(proxy.mapFromSource(itemC->index())), 1); -} - -class EvenOddFilterModel : public QSortFilterProxyModel -{ -public: - virtual bool filterAcceptsRow(int srcRow, const QModelIndex& srcParent) const - { - if (srcParent.isValid()) - return (srcParent.row() % 2) ^ !(srcRow % 2); - return (srcRow % 2); - } -}; - -void tst_QSortFilterProxyModel::insertRowIntoFilteredParent() -{ - QStandardItemModel model; - EvenOddFilterModel proxy; - proxy.setSourceModel(&model); - - QSignalSpy spy(&proxy, SIGNAL(rowsInserted(const QModelIndex&, int, int))); - - QStandardItem *itemA = new QStandardItem(); - model.appendRow(itemA); // A will be filtered - QStandardItem *itemB = new QStandardItem(); - itemA->appendRow(itemB); - - QCOMPARE(spy.count(), 0); - - itemA->removeRow(0); - - QCOMPARE(spy.count(), 0); -} - -void tst_QSortFilterProxyModel::filterOutParentAndFilterInChild() -{ - QStandardItemModel model; - QSortFilterProxyModel proxy; - proxy.setSourceModel(&model); - - proxy.setFilterRegExp("A|B"); - QStandardItem *itemA = new QStandardItem("A"); - model.appendRow(itemA); // not filtered - QStandardItem *itemB = new QStandardItem("B"); - itemA->appendRow(itemB); // not filtered - QStandardItem *itemC = new QStandardItem("C"); - itemA->appendRow(itemC); // filtered - - QSignalSpy removedSpy(&proxy, SIGNAL(rowsRemoved(const QModelIndex&, int, int))); - QSignalSpy insertedSpy(&proxy, SIGNAL(rowsInserted(const QModelIndex&, int, int))); - - proxy.setFilterRegExp("C"); // A and B will be filtered out, C filtered in - - // we should now have been notified that the subtree represented by itemA has been removed - QCOMPARE(removedSpy.count(), 1); - // we should NOT get any inserts; itemC should be filtered because its parent (itemA) is - QCOMPARE(insertedSpy.count(), 0); -} - -void tst_QSortFilterProxyModel::sourceInsertRows() -{ - QStandardItemModel model; - QSortFilterProxyModel proxyModel; - proxyModel.setSourceModel(&model); - - model.insertColumns(0, 1, QModelIndex()); - model.insertRows(0, 2, QModelIndex()); - - { - QModelIndex parent = model.index(0, 0, QModelIndex()); - model.insertColumns(0, 1, parent); - model.insertRows(0, 1, parent); - } - - { - QModelIndex parent = model.index(1, 0, QModelIndex()); - model.insertColumns(0, 1, parent); - model.insertRows(0, 1, parent); - } - - model.insertRows(0, 1, QModelIndex()); - model.insertRows(0, 1, QModelIndex()); - - QVERIFY(true); // if you got here without asserting, it's all good -} - -void tst_QSortFilterProxyModel::sourceModelDeletion() -{ - - QSortFilterProxyModel proxyModel; - { - QStandardItemModel model; - proxyModel.setSourceModel(&model); - QCOMPARE(proxyModel.sourceModel(), static_cast(&model)); - } - QCOMPARE(proxyModel.sourceModel(), static_cast(0)); - -} - -void tst_QSortFilterProxyModel::sortColumnTracking1() -{ - QStandardItemModel model; - QSortFilterProxyModel proxyModel; - proxyModel.setSourceModel(&model); - - model.insertColumns(0, 10); - model.insertRows(0, 10); - - proxyModel.sort(1); - QCOMPARE(proxyModel.sortColumn(), 1); - - model.insertColumn(8); - QCOMPARE(proxyModel.sortColumn(), 1); - - model.removeColumn(8); - QCOMPARE(proxyModel.sortColumn(), 1); - - model.insertColumn(2); - QCOMPARE(proxyModel.sortColumn(), 1); - - model.removeColumn(2); - QCOMPARE(proxyModel.sortColumn(), 1); - - model.insertColumn(1); - QCOMPARE(proxyModel.sortColumn(), 2); - - model.removeColumn(1); - QCOMPARE(proxyModel.sortColumn(), 1); - - model.removeColumn(1); - QCOMPARE(proxyModel.sortColumn(), -1); -} - -void tst_QSortFilterProxyModel::sortColumnTracking2() -{ - QStandardItemModel model; - QSortFilterProxyModel proxyModel; - proxyModel.setDynamicSortFilter(true); - proxyModel.setSourceModel(&model); - - proxyModel.sort(0); - QCOMPARE(proxyModel.sortColumn(), 0); - - QList items; - QStringList strings; - strings << "foo" << "bar" << "some" << "others" << "item" << "aa" << "zz"; - foreach (QString s, strings) - items << new QStandardItem(s); - - model.insertColumn(0,items); - QCOMPARE(proxyModel.sortColumn(), 0); - QCOMPARE(proxyModel.data(proxyModel.index(0,0)).toString(),QString::fromLatin1("aa")); - QCOMPARE(proxyModel.data(proxyModel.index(strings.count()-1,0)).toString(),QString::fromLatin1("zz")); -} - -void tst_QSortFilterProxyModel::sortStable() -{ - QStandardItemModel* model = new QStandardItemModel(5, 2); - for (int r=0; r<5; r++) { - for (int c=0; c<2; c++) { - QStandardItem* item = new QStandardItem( - QString("Row:%0, Column:%1").arg(r).arg(c) ); - for( int i=0; i<3; i++ ) { - QStandardItem* child = new QStandardItem( - QString("Item %0").arg(i) ); - item->appendRow( child ); - } - model->setItem(r, c, item); - } - } - model->setHorizontalHeaderItem( 0, new QStandardItem( "Name" )); - model->setHorizontalHeaderItem( 1, new QStandardItem( "Value" ) ); - - - QSortFilterProxyModel *filterModel = new QSortFilterProxyModel(model); - filterModel->setSourceModel(model); - - QTreeView *view = new QTreeView; - view->setModel(filterModel); - QModelIndex firstRoot = filterModel->index(0,0); - view->expand(firstRoot); - view->setSortingEnabled(true); - - view->model()->sort(1, Qt::DescendingOrder); - QVariant lastItemData =filterModel->index(2,0, firstRoot).data(); - view->model()->sort(1, Qt::DescendingOrder); - QCOMPARE(lastItemData, filterModel->index(2,0, firstRoot).data()); -} - -void tst_QSortFilterProxyModel::task236755_hiddenColumns() -{ - class MyStandardItemModel : public QStandardItemModel - { - public: - MyStandardItemModel() : QStandardItemModel(0,5) {} - void reset() - { QStandardItemModel::reset(); } - friend class tst_QSortFilterProxyModel; - } model; - QSortFilterProxyModel proxy; - proxy.setSourceModel(&model); - - QTableView view; - view.setModel(&proxy); - - view.hideColumn(0); - - QVERIFY(view.isColumnHidden(0)); - model.blockSignals(true); - model.setRowCount(1); - model.blockSignals(false); - model.reset(); - - //in the initial task this would be false because resetting - //model would also reset the hidden columns - QVERIFY(view.isColumnHidden(0)); -} - -void tst_QSortFilterProxyModel::task247867_insertRowsSort() -{ - QStandardItemModel model(2,2); - QSortFilterProxyModel proxyModel; - proxyModel.setSourceModel(&model); - - proxyModel.sort(0); - QCOMPARE(proxyModel.sortColumn(), 0); - - model.insertColumns(0, 3, model.index(0,0)); - QCOMPARE(proxyModel.sortColumn(), 0); - - model.removeColumns(0, 3, model.index(0,0)); - QCOMPARE(proxyModel.sortColumn(), 0); -} - -void tst_QSortFilterProxyModel::task248868_staticSorting() -{ - QStandardItemModel model(0, 1); - QSortFilterProxyModel proxy; - proxy.setSourceModel(&model); - proxy.setDynamicSortFilter(false); - QStringList initial = QString("bateau avion dragon hirondelle flamme camion elephant").split(" "); - - // prepare model - QStandardItem *root = model.invisibleRootItem (); - QList items; - for (int i = 0; i < initial.count(); ++i) { - items.append(new QStandardItem(initial.at(i))); - } - root->insertRows(0, items); - QCOMPARE(model.rowCount(QModelIndex()), initial.count()); - QCOMPARE(model.columnCount(QModelIndex()), 1); - - // make sure the proxy is unsorted - QCOMPARE(proxy.columnCount(QModelIndex()), 1); - QCOMPARE(proxy.rowCount(QModelIndex()), initial.count()); - for (int row = 0; row < proxy.rowCount(QModelIndex()); ++row) { - QModelIndex index = proxy.index(row, 0, QModelIndex()); - QCOMPARE(proxy.data(index, Qt::DisplayRole).toString(), initial.at(row)); - } - - // sort - proxy.sort(0); - - QStringList expected = initial; - expected.sort(); - // make sure the proxy is sorted - for (int row = 0; row < proxy.rowCount(QModelIndex()); ++row) { - QModelIndex index = proxy.index(row, 0, QModelIndex()); - QCOMPARE(proxy.data(index, Qt::DisplayRole).toString(), expected.at(row)); - } - - //update one item. - model.setItem(0, 0, new QStandardItem("girafe")); - - // make sure the proxy is updated but not sorted - expected.replaceInStrings("bateau", "girafe"); - for (int row = 0; row < proxy.rowCount(QModelIndex()); ++row) { - QModelIndex index = proxy.index(row, 0, QModelIndex()); - QCOMPARE(proxy.data(index, Qt::DisplayRole).toString(), expected.at(row)); - } - - // sort again - proxy.sort(0); - expected.sort(); - - // make sure the proxy is sorted - for (int row = 0; row < proxy.rowCount(QModelIndex()); ++row) { - QModelIndex index = proxy.index(row, 0, QModelIndex()); - QCOMPARE(proxy.data(index, Qt::DisplayRole).toString(), expected.at(row)); - } - -} - -void tst_QSortFilterProxyModel::task248868_dynamicSorting() -{ - QStringListModel model1; - const QStringList initial = QString("bateau avion dragon hirondelle flamme camion elephant").split(" "); - model1.setStringList(initial); - QSortFilterProxyModel proxy1; - proxy1.sort(0); - proxy1.setSourceModel(&model1); - - QCOMPARE(proxy1.columnCount(QModelIndex()), 1); - //the model should not be sorted because sorting has not been set to dynamic yet. - QCOMPARE(proxy1.rowCount(QModelIndex()), initial.count()); - for (int row = 0; row < proxy1.rowCount(QModelIndex()); ++row) { - QModelIndex index = proxy1.index(row, 0, QModelIndex()); - QCOMPARE(proxy1.data(index, Qt::DisplayRole).toString(), initial.at(row)); - } - - proxy1.setDynamicSortFilter(true); - - //now the model should be sorted. - QStringList expected = initial; - expected.sort(); - for (int row = 0; row < proxy1.rowCount(QModelIndex()); ++row) { - QModelIndex index = proxy1.index(row, 0, QModelIndex()); - QCOMPARE(proxy1.data(index, Qt::DisplayRole).toString(), expected.at(row)); - } - - QStringList initial2 = initial; - initial2.replaceInStrings("bateau", "girafe"); - model1.setStringList(initial2); //this will cause a reset - - QStringList expected2 = initial2; - expected2.sort(); - - //now the model should still be sorted. - for (int row = 0; row < proxy1.rowCount(QModelIndex()); ++row) { - QModelIndex index = proxy1.index(row, 0, QModelIndex()); - QCOMPARE(proxy1.data(index, Qt::DisplayRole).toString(), expected2.at(row)); - } - - QStringListModel model2(initial); - proxy1.setSourceModel(&model2); - - //the model should again be sorted - for (int row = 0; row < proxy1.rowCount(QModelIndex()); ++row) { - QModelIndex index = proxy1.index(row, 0, QModelIndex()); - QCOMPARE(proxy1.data(index, Qt::DisplayRole).toString(), expected.at(row)); - } - - //set up the sorting before seting the model up - QSortFilterProxyModel proxy2; - proxy2.setDynamicSortFilter(true); - proxy2.sort(0); - proxy2.setSourceModel(&model2); - for (int row = 0; row < proxy2.rowCount(QModelIndex()); ++row) { - QModelIndex index = proxy2.index(row, 0, QModelIndex()); - QCOMPARE(proxy2.data(index, Qt::DisplayRole).toString(), expected.at(row)); - } -} - -class QtTestModel: public QAbstractItemModel -{ - public: - QtTestModel(int _rows, int _cols, QObject *parent = 0): QAbstractItemModel(parent), - rows(_rows), cols(_cols), wrongIndex(false) { } - - bool canFetchMore(const QModelIndex &idx) const { - return !fetched.contains(idx); - } - - void fetchMore(const QModelIndex &idx) { - if (fetched.contains(idx)) - return; - beginInsertRows(idx, 0, rows-1); - fetched.insert(idx); - endInsertRows(); - } - - bool hasChildren(const QModelIndex & = QModelIndex()) const { - return true; - } - - int rowCount(const QModelIndex& parent = QModelIndex()) const { - return fetched.contains(parent) ? rows : 0; - } - int columnCount(const QModelIndex& parent = QModelIndex()) const { - Q_UNUSED(parent); - return cols; - } - - QModelIndex index(int row, int column, const QModelIndex &parent = QModelIndex()) const - { - if (row < 0 || column < 0 || column >= cols || row >= rows) { - return QModelIndex(); - } - QModelIndex i = createIndex(row, column, int(parent.internalId() + 1)); - parentHash[i] = parent; - return i; - } - - QModelIndex parent(const QModelIndex &index) const - { - if (!parentHash.contains(index)) - return QModelIndex(); - return parentHash[index]; - } - - QVariant data(const QModelIndex &idx, int role) const - { - if (!idx.isValid()) - return QVariant(); - - if (role == Qt::DisplayRole) { - if (idx.row() < 0 || idx.column() < 0 || idx.column() >= cols || idx.row() >= rows) { - wrongIndex = true; - qWarning("Invalid modelIndex [%d,%d,%p]", idx.row(), idx.column(), - idx.internalPointer()); - } - return QString("[%1,%2]").arg(idx.row()).arg(idx.column()); - } - return QVariant(); - } - - QSet fetched; - int rows, cols; - mutable bool wrongIndex; - mutable QMap parentHash; -}; - -void tst_QSortFilterProxyModel::task250023_fetchMore() -{ - QtTestModel model(10,10); - QSortFilterProxyModel proxy; - proxy.setSourceModel(&model); - QVERIFY(proxy.canFetchMore(QModelIndex())); - QVERIFY(proxy.hasChildren()); - while (proxy.canFetchMore(QModelIndex())) - proxy.fetchMore(QModelIndex()); - QCOMPARE(proxy.rowCount(), 10); - QCOMPARE(proxy.columnCount(), 10); - - QModelIndex idx = proxy.index(1,1); - QVERIFY(idx.isValid()); - QVERIFY(proxy.canFetchMore(idx)); - QVERIFY(proxy.hasChildren(idx)); - while (proxy.canFetchMore(idx)) - proxy.fetchMore(idx); - QCOMPARE(proxy.rowCount(idx), 10); - QCOMPARE(proxy.columnCount(idx), 10); -} - -void tst_QSortFilterProxyModel::task251296_hiddenChildren() -{ - QStandardItemModel model; - QSortFilterProxyModel proxy; - proxy.setSourceModel(&model); - proxy.setDynamicSortFilter(true); - - QStandardItem *itemA = new QStandardItem("A VISIBLE"); - model.appendRow(itemA); - QStandardItem *itemB = new QStandardItem("B VISIBLE"); - itemA->appendRow(itemB); - QStandardItem *itemC = new QStandardItem("C"); - itemA->appendRow(itemC); - proxy.setFilterRegExp("VISIBLE"); - - QCOMPARE(proxy.rowCount(QModelIndex()) , 1); - QPersistentModelIndex indexA = proxy.index(0,0); - QCOMPARE(proxy.data(indexA).toString(), QString::fromLatin1("A VISIBLE")); - - QCOMPARE(proxy.rowCount(indexA) , 1); - QPersistentModelIndex indexB = proxy.index(0, 0, indexA); - QCOMPARE(proxy.data(indexB).toString(), QString::fromLatin1("B VISIBLE")); - - itemA->setText("A"); - QCOMPARE(proxy.rowCount(QModelIndex()), 0); - QVERIFY(!indexA.isValid()); - QVERIFY(!indexB.isValid()); - - itemB->setText("B"); - itemA->setText("A VISIBLE"); - itemC->setText("C VISIBLE"); - - QCOMPARE(proxy.rowCount(QModelIndex()), 1); - indexA = proxy.index(0,0); - QCOMPARE(proxy.data(indexA).toString(), QString::fromLatin1("A VISIBLE")); - - QCOMPARE(proxy.rowCount(indexA) , 1); - QModelIndex indexC = proxy.index(0, 0, indexA); - QCOMPARE(proxy.data(indexC).toString(), QString::fromLatin1("C VISIBLE")); - - proxy.setFilterRegExp("C"); - QCOMPARE(proxy.rowCount(QModelIndex()), 0); - itemC->setText("invisible"); - itemA->setText("AC"); - - QCOMPARE(proxy.rowCount(QModelIndex()), 1); - indexA = proxy.index(0,0); - QCOMPARE(proxy.data(indexA).toString(), QString::fromLatin1("AC")); - QCOMPARE(proxy.rowCount(indexA) , 0); -} - -void tst_QSortFilterProxyModel::task252507_mapFromToSource() -{ - QtTestModel source(10,10); - source.fetchMore(QModelIndex()); - QSortFilterProxyModel proxy; - proxy.setSourceModel(&source); - QCOMPARE(proxy.mapFromSource(source.index(5, 4)), proxy.index(5, 4)); - QCOMPARE(proxy.mapToSource(proxy.index(3, 2)), source.index(3, 2)); - QCOMPARE(proxy.mapFromSource(QModelIndex()), QModelIndex()); - QCOMPARE(proxy.mapToSource(QModelIndex()), QModelIndex()); - -#ifdef QT_NO_DEBUG //if Qt is compiled in debug mode, this will assert - QTest::ignoreMessage(QtWarningMsg, "QSortFilterProxyModel: index from wrong model passed to mapToSource "); - QCOMPARE(proxy.mapToSource(source.index(2, 3)), QModelIndex()); - QTest::ignoreMessage(QtWarningMsg, "QSortFilterProxyModel: index from wrong model passed to mapFromSource "); - QCOMPARE(proxy.mapFromSource(proxy.index(6, 2)), QModelIndex()); -#endif -} - -static QStandardItem *addEntry(QStandardItem* pParent, const QString &description) -{ - QStandardItem* pItem = new QStandardItem(description); - pParent->appendRow(pItem); - return pItem; -} - - -void tst_QSortFilterProxyModel::task255652_removeRowsRecursive() -{ - QStandardItemModel pModel; - QStandardItem *pItem1 = new QStandardItem("root"); - pModel.appendRow(pItem1); - QList items; - - QStandardItem *pItem11 = addEntry(pItem1,"Sub-heading"); - items << pItem11; - QStandardItem *pItem111 = addEntry(pItem11,"A"); - items << pItem111; - items << addEntry(pItem111,"A1"); - items << addEntry(pItem111,"A2"); - QStandardItem *pItem112 = addEntry(pItem11,"B"); - items << pItem112; - items << addEntry(pItem112,"B1"); - items << addEntry(pItem112,"B2"); - QStandardItem *pItem1123 = addEntry(pItem112,"B3"); - items << pItem1123; - items << addEntry(pItem1123,"B3-"); - - QSortFilterProxyModel proxy; - proxy.setSourceModel(&pModel); - - QList sourceIndexes; - QList proxyIndexes; - foreach (QStandardItem *item, items) { - QModelIndex idx = item->index(); - sourceIndexes << idx; - proxyIndexes << proxy.mapFromSource(idx); - } - - foreach (const QPersistentModelIndex &pidx, sourceIndexes) - QVERIFY(pidx.isValid()); - foreach (const QPersistentModelIndex &pidx, proxyIndexes) - QVERIFY(pidx.isValid()); - - QList itemRow = pItem1->takeRow(0); - - QCOMPARE(itemRow.count(), 1); - QCOMPARE(itemRow.first(), pItem11); - - foreach (const QPersistentModelIndex &pidx, sourceIndexes) - QVERIFY(!pidx.isValid()); - foreach (const QPersistentModelIndex &pidx, proxyIndexes) - QVERIFY(!pidx.isValid()); - - delete pItem11; -} - -void tst_QSortFilterProxyModel::taskQTBUG_6205_doubleProxySelectionSetSourceModel() -{ - QStandardItemModel *model1 = new QStandardItemModel; - QStandardItem *parentItem = model1->invisibleRootItem(); - for (int i = 0; i < 4; ++i) { - QStandardItem *item = new QStandardItem(QString("model1 item %0").arg(i)); - parentItem->appendRow(item); - parentItem = item; - } - - QStandardItemModel *model2 = new QStandardItemModel; - QStandardItem *parentItem2 = model2->invisibleRootItem(); - for (int i = 0; i < 4; ++i) { - QStandardItem *item = new QStandardItem(QString("model2 item %0").arg(i)); - parentItem2->appendRow(item); - parentItem2 = item; - } - - QSortFilterProxyModel *toggleProxy = new QSortFilterProxyModel; - toggleProxy->setSourceModel(model1); - - QSortFilterProxyModel *proxyModel = new QSortFilterProxyModel; - proxyModel->setSourceModel(toggleProxy); - - QModelIndex mi = proxyModel->index(0, 0, proxyModel->index(0, 0, proxyModel->index(0, 0))); - QItemSelectionModel ism(proxyModel); - ism.select(mi, QItemSelectionModel::Select); - QModelIndexList mil = ism.selectedIndexes(); - QCOMPARE(mil.count(), 1); - QCOMPARE(mil.first(), mi); - - toggleProxy->setSourceModel(model2); - // No crash, it's good news! - QVERIFY(ism.selection().isEmpty()); -} - -void tst_QSortFilterProxyModel::taskQTBUG_7537_appearsAndSort() -{ - class PModel : public QSortFilterProxyModel - { - public: - PModel() : mVisible(false) {}; - protected: - bool filterAcceptsRow(int, const QModelIndex &) const - { - return mVisible; - } - - public: - void updateXX() - { - mVisible = true; - invalidate(); - } - private: - bool mVisible; - } proxyModel; - - - QStringListModel sourceModel; - QStringList list; - list << "b" << "a" << "c"; - sourceModel.setStringList(list); - - proxyModel.setSourceModel(&sourceModel); - proxyModel.setDynamicSortFilter(true); - proxyModel.sort(0, Qt::AscendingOrder); - - QApplication::processEvents(); - QCOMPARE(sourceModel.rowCount(), 3); - QCOMPARE(proxyModel.rowCount(), 0); //all rows are hidden at first; - - QSignalSpy spyAbout1(&proxyModel, SIGNAL(layoutAboutToBeChanged())); - QSignalSpy spyChanged1(&proxyModel, SIGNAL(layoutChanged())); - - //introducing secondProxyModel to test the layoutChange when many items appears at once - QSortFilterProxyModel secondProxyModel; - secondProxyModel.setSourceModel(&proxyModel); - secondProxyModel.setDynamicSortFilter(true); - secondProxyModel.sort(0, Qt::DescendingOrder); - QCOMPARE(secondProxyModel.rowCount(), 0); //all rows are hidden at first; - QSignalSpy spyAbout2(&secondProxyModel, SIGNAL(layoutAboutToBeChanged())); - QSignalSpy spyChanged2(&secondProxyModel, SIGNAL(layoutChanged())); - - proxyModel.updateXX(); - QApplication::processEvents(); - //now rows should be visible, and sorted - QCOMPARE(proxyModel.rowCount(), 3); - QCOMPARE(proxyModel.data(proxyModel.index(0,0), Qt::DisplayRole).toString(), QString::fromLatin1("a")); - QCOMPARE(proxyModel.data(proxyModel.index(1,0), Qt::DisplayRole).toString(), QString::fromLatin1("b")); - QCOMPARE(proxyModel.data(proxyModel.index(2,0), Qt::DisplayRole).toString(), QString::fromLatin1("c")); - - //now rows should be visible, and sorted - QCOMPARE(secondProxyModel.rowCount(), 3); - QCOMPARE(secondProxyModel.data(secondProxyModel.index(0,0), Qt::DisplayRole).toString(), QString::fromLatin1("c")); - QCOMPARE(secondProxyModel.data(secondProxyModel.index(1,0), Qt::DisplayRole).toString(), QString::fromLatin1("b")); - QCOMPARE(secondProxyModel.data(secondProxyModel.index(2,0), Qt::DisplayRole).toString(), QString::fromLatin1("a")); - - QCOMPARE(spyAbout1.count(), 1); - QCOMPARE(spyChanged1.count(), 1); - QCOMPARE(spyAbout2.count(), 1); - QCOMPARE(spyChanged2.count(), 1); -} - -void tst_QSortFilterProxyModel::taskQTBUG_7716_unnecessaryDynamicSorting() -{ - QStringListModel model; - const QStringList initial = QString("bravo charlie delta echo").split(" "); - model.setStringList(initial); - QSortFilterProxyModel proxy; - proxy.setDynamicSortFilter(false); - proxy.setSourceModel(&model); - proxy.sort(Qt::AscendingOrder); - - //append two rows - int maxrows = proxy.rowCount(QModelIndex()); - model.insertRows(maxrows, 2); - model.setData(model.index(maxrows, 0), QString("alpha")); - model.setData(model.index(maxrows + 1, 0), QString("fondue")); - - //append new items to the initial string list and compare with model - QStringList expected = initial; - expected << QString("alpha") << QString("fondue"); - - //if bug 7716 is present, new rows were prepended, when they should have been appended - for (int row = 0; row < proxy.rowCount(QModelIndex()); ++row) { - QModelIndex index = proxy.index(row, 0, QModelIndex()); - QCOMPARE(proxy.data(index, Qt::DisplayRole).toString(), expected.at(row)); - } -} - -class SelectionProxyModel : QAbstractProxyModel -{ - Q_OBJECT -public: - SelectionProxyModel() - : QAbstractProxyModel(), selectionModel(0) - { - } - - QModelIndex mapFromSource(QModelIndex const&) const - { return QModelIndex(); } - - QModelIndex mapToSource(QModelIndex const&) const - { return QModelIndex(); } - - QModelIndex index(int, int, const QModelIndex&) const - { return QModelIndex(); } - - QModelIndex parent(const QModelIndex&) const - { return QModelIndex(); } - - int rowCount(const QModelIndex&) const - { return 0; } - - int columnCount(const QModelIndex&) const - { return 0; } - - void setSourceModel( QAbstractItemModel *sourceModel ) - { - beginResetModel(); - disconnect( sourceModel, SIGNAL(modelAboutToBeReset()), this, SLOT(sourceModelAboutToBeReset()) ); - QAbstractProxyModel::setSourceModel( sourceModel ); - connect( sourceModel, SIGNAL(modelAboutToBeReset()), this, SLOT(sourceModelAboutToBeReset()) ); - endResetModel(); - } - - void setSelectionModel( QItemSelectionModel *_selectionModel ) - { - selectionModel = _selectionModel; - } - -private slots: - void sourceModelAboutToBeReset() - { - QVERIFY( selectionModel->selectedIndexes().size() == 1 ); - beginResetModel(); - } - - void sourceModelReset() - { - endResetModel(); - } - -private: - QItemSelectionModel *selectionModel; - -}; - -void tst_QSortFilterProxyModel::testMultipleProxiesWithSelection() -{ - QStringListModel model; - const QStringList initial = QString("bravo charlie delta echo").split(" "); - model.setStringList(initial); - - QSortFilterProxyModel proxy; - proxy.setSourceModel( &model ); - - SelectionProxyModel proxy1; - QSortFilterProxyModel proxy2; - - // Note that the order here matters. The order of the sourceAboutToBeReset - // exposes the bug in QSortFilterProxyModel. - proxy2.setSourceModel( &proxy ); - proxy1.setSourceModel( &proxy ); - - QItemSelectionModel selectionModel(&proxy2); - proxy1.setSelectionModel( &selectionModel ); - - selectionModel.select( proxy2.index( 0, 0 ), QItemSelectionModel::Select ); - - // trick the proxy into emitting begin/end reset signals. - proxy.setSourceModel(0); - -} - -static bool isValid(const QItemSelection &selection) { - foreach(const QItemSelectionRange &range, selection) - if (!range.isValid()) - return false; - return true; -} - -void tst_QSortFilterProxyModel::mapSelectionFromSource() -{ - QStringListModel model; - const QStringList initial = QString("bravo charlie delta echo").split(" "); - model.setStringList(initial); - - QSortFilterProxyModel proxy; - proxy.setDynamicSortFilter(true); - proxy.setFilterRegExp("d.*"); - proxy.setSourceModel(&model); - - // Only "delta" remains. - QVERIFY(proxy.rowCount() == 1); - - QItemSelection selection; - QModelIndex charlie = model.index(1, 0); - selection.append(QItemSelectionRange(charlie, charlie)); - QModelIndex delta = model.index(2, 0); - selection.append(QItemSelectionRange(delta, delta)); - QModelIndex echo = model.index(3, 0); - selection.append(QItemSelectionRange(echo, echo)); - - QVERIFY(isValid(selection)); - - QItemSelection proxiedSelection = proxy.mapSelectionFromSource(selection); - - // Only "delta" is in the mapped result. - QVERIFY(proxiedSelection.size() == 1); - QVERIFY(isValid(proxiedSelection)); -} - -class Model10287 : public QStandardItemModel -{ - Q_OBJECT - -public: - Model10287(QObject *parent = 0) - : QStandardItemModel(0, 1, parent) - { - parentItem = new QStandardItem("parent"); - parentItem->setData(false, Qt::UserRole); - appendRow(parentItem); - - childItem = new QStandardItem("child"); - childItem->setData(true, Qt::UserRole); - parentItem->appendRow(childItem); - - childItem2 = new QStandardItem("child2"); - childItem2->setData(true, Qt::UserRole); - parentItem->appendRow(childItem2); - } - - void removeChild() - { - childItem2->setData(false, Qt::UserRole); - parentItem->removeRow(0); - } - -private: - QStandardItem *parentItem, *childItem, *childItem2; -}; - -class Proxy10287 : public QSortFilterProxyModel -{ - Q_OBJECT - -public: - Proxy10287(QAbstractItemModel *model, QObject *parent = 0) - : QSortFilterProxyModel(parent) - { - setSourceModel(model); - setDynamicSortFilter(true); - } - -protected: - virtual bool filterAcceptsRow(int source_row, const QModelIndex &source_parent) const - { - // Filter based on UserRole in model - QModelIndex i = sourceModel()->index(source_row, 0, source_parent); - return i.data(Qt::UserRole).toBool(); - } -}; - -void tst_QSortFilterProxyModel::taskQTBUG_10287_unnecessaryMapCreation() -{ - Model10287 m; - Proxy10287 p(&m); - m.removeChild(); - // No assert failure, it passes. -} - -class FilteredColumnProxyModel : public QSortFilterProxyModel -{ - Q_OBJECT -public: - FilteredColumnProxyModel(QObject *parent = 0) - : QSortFilterProxyModel(parent) - { - - } - -protected: - bool filterAcceptsColumn(int column, const QModelIndex & /* source_parent */) const - { - return column % 2 != 0; - } -}; - -void tst_QSortFilterProxyModel::filteredColumns() -{ - DynamicTreeModel *model = new DynamicTreeModel(this); - - FilteredColumnProxyModel *proxy = new FilteredColumnProxyModel(this); - proxy->setSourceModel(model); - - new ModelTest(proxy, this); - - ModelInsertCommand *insertCommand = new ModelInsertCommand(model, this); - insertCommand->setNumCols(2); - insertCommand->setStartRow(0); - insertCommand->setEndRow(0); - // Parent is QModelIndex() - insertCommand->doCommand(); -} - -void tst_QSortFilterProxyModel::taskQTBUG_17812_resetInvalidate_data() -{ - QTest::addColumn("test"); - QTest::addColumn("works"); - - QTest::newRow("nothing") << 0 << false; - QTest::newRow("reset") << 1 << true; - QTest::newRow("invalidate") << 2 << true; - QTest::newRow("invalidate_filter") << 3 << true; -} - -void tst_QSortFilterProxyModel::taskQTBUG_17812_resetInvalidate() -{ - QFETCH(int, test); - QFETCH(bool, works); - - struct Proxy : QSortFilterProxyModel { - QString pattern; - virtual bool filterAcceptsRow(int source_row, const QModelIndex&) const { - return sourceModel()->data(sourceModel()->index(source_row, 0)).toString().contains(pattern); - } - void notifyChange(int test) { - switch (test) { - case 0: break; - case 1: reset(); break; - case 2: invalidate(); break; - case 3: invalidateFilter(); break; - } - } - }; - - QStringListModel sourceModel(QStringList() << "Poisson" << "Vache" << "Brebis" - << "Elephant" << "Cochon" << "Serpent" - << "Mouton" << "Ecureuil" << "Mouche"); - Proxy proxy; - proxy.pattern = QString::fromLatin1("n"); - proxy.setSourceModel(&sourceModel); - - QCOMPARE(proxy.rowCount(), 5); - for (int i = 0; i < proxy.rowCount(); i++) { - QVERIFY(proxy.data(proxy.index(i,0)).toString().contains('n')); - } - - proxy.pattern = QString::fromLatin1("o"); - proxy.notifyChange(test); - - QCOMPARE(proxy.rowCount(), works ? 4 : 5); - bool ok = true; - for (int i = 0; i < proxy.rowCount(); i++) { - if (!proxy.data(proxy.index(i,0)).toString().contains('o')) - ok = false; - } - QCOMPARE(ok, works); -} - -Q_DECLARE_METATYPE(QList) - -void tst_QSortFilterProxyModel::testParentLayoutChanged() -{ - QStandardItemModel model; - QStandardItem *parentItem = model.invisibleRootItem(); - for (int i = 0; i < 4; ++i) { - { - QStandardItem *item = new QStandardItem(QString("item %0").arg(i)); - parentItem->appendRow(item); - } - { - QStandardItem *item = new QStandardItem(QString("item 1%0").arg(i)); - parentItem->appendRow(item); - parentItem = item; - } - } - - QSortFilterProxyModel proxy; - proxy.sort(0, Qt::AscendingOrder); - proxy.setDynamicSortFilter(true); - - proxy.setSourceModel(&model); - proxy.setObjectName("proxy"); - - // When Proxy1 emits layoutChanged(QList) this - // one will too, with mapped indexes. - QSortFilterProxyModel proxy2; - proxy2.sort(0, Qt::AscendingOrder); - proxy2.setDynamicSortFilter(true); - - proxy2.setSourceModel(&proxy); - proxy2.setObjectName("proxy2"); - - qRegisterMetaType >(); - - QSignalSpy dataChangedSpy(&model, SIGNAL(dataChanged(QModelIndex,QModelIndex))); - - // Verify that the no-arg signal is still emitted. - QSignalSpy layoutAboutToBeChangedSpy(&proxy, SIGNAL(layoutAboutToBeChanged())); - QSignalSpy layoutChangedSpy(&proxy, SIGNAL(layoutChanged())); - - QSignalSpy parentsAboutToBeChangedSpy(&proxy, SIGNAL(layoutAboutToBeChanged(QList))); - QSignalSpy parentsChangedSpy(&proxy, SIGNAL(layoutChanged(QList))); - - QSignalSpy proxy2ParentsAboutToBeChangedSpy(&proxy2, SIGNAL(layoutAboutToBeChanged(QList))); - QSignalSpy proxy2ParentsChangedSpy(&proxy2, SIGNAL(layoutChanged(QList))); - - QStandardItem *item = model.invisibleRootItem()->child(1)->child(1); - - // Ensure mapped: - proxy.mapFromSource(model.indexFromItem(item)); - - item->setData("Changed"); - - QCOMPARE(dataChangedSpy.size(), 1); - QCOMPARE(layoutAboutToBeChangedSpy.size(), 1); - QCOMPARE(layoutChangedSpy.size(), 1); - QCOMPARE(parentsAboutToBeChangedSpy.size(), 1); - QCOMPARE(parentsChangedSpy.size(), 1); - QCOMPARE(proxy2ParentsAboutToBeChangedSpy.size(), 1); - QCOMPARE(proxy2ParentsChangedSpy.size(), 1); - - QVariantList beforeSignal = parentsAboutToBeChangedSpy.first(); - QVariantList afterSignal = parentsChangedSpy.first(); - - QCOMPARE(beforeSignal.size(), 1); - QCOMPARE(afterSignal.size(), 1); - - QList beforeParents = beforeSignal.first().value >(); - QList afterParents = afterSignal.first().value >(); - - QCOMPARE(beforeParents.size(), 1); - QCOMPARE(afterParents.size(), 1); - - QVERIFY(beforeParents.first().isValid()); - QVERIFY(beforeParents.first() == afterParents.first()); - - QVERIFY(beforeParents.first() == proxy.mapFromSource(model.indexFromItem(model.invisibleRootItem()->child(1)))); - - QList proxy2BeforeList = proxy2ParentsAboutToBeChangedSpy.first().first().value >(); - QList proxy2AfterList = proxy2ParentsChangedSpy.first().first().value >(); - - QCOMPARE(proxy2BeforeList.size(), beforeParents.size()); - QCOMPARE(proxy2AfterList.size(), afterParents.size()); - foreach (const QPersistentModelIndex &idx, proxy2BeforeList) - QVERIFY(beforeParents.contains(proxy2.mapToSource(idx))); - foreach (const QPersistentModelIndex &idx, proxy2AfterList) - QVERIFY(afterParents.contains(proxy2.mapToSource(idx))); - -} - -class SignalArgumentChecker : public QObject -{ - Q_OBJECT -public: - SignalArgumentChecker(QAbstractItemModel *model, QAbstractProxyModel *proxy, QObject *parent = 0) - : QObject(parent), m_model(model), m_proxy(proxy) - { - connect(model, SIGNAL(rowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)), SLOT(rowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int))); - connect(model, SIGNAL(rowsMoved(QModelIndex,int,int,QModelIndex,int)), SLOT(rowsMoved(QModelIndex,int,int,QModelIndex,int))); - connect(proxy, SIGNAL(layoutAboutToBeChanged(QList)), SLOT(layoutAboutToBeChanged(QList))); - connect(proxy, SIGNAL(layoutChanged(QList)), SLOT(layoutChanged(QList))); - } - -private slots: - void rowsAboutToBeMoved(const QModelIndex &source, int, int, const QModelIndex &destination, int) - { - m_p1PersistentBefore = source; - m_p2PersistentBefore = destination; - m_p2FirstProxyChild = m_proxy->index(0, 0, m_proxy->mapFromSource(destination)); - } - - void rowsMoved(const QModelIndex &source, int, int, const QModelIndex &destination, int) - { - m_p1PersistentAfter = source; - m_p2PersistentAfter = destination; - } - - void layoutAboutToBeChanged(const QList &parents) - { - QVERIFY(m_p1PersistentBefore.isValid()); - QVERIFY(m_p2PersistentBefore.isValid()); - QCOMPARE(parents.size(), 2); - QVERIFY(parents.first() != parents.at(1)); - QVERIFY(parents.contains(m_proxy->mapFromSource(m_p1PersistentBefore))); - QVERIFY(parents.contains(m_proxy->mapFromSource(m_p2PersistentBefore))); - } - - void layoutChanged(const QList &parents) - { - QVERIFY(m_p1PersistentAfter.isValid()); - QVERIFY(m_p2PersistentAfter.isValid()); - QCOMPARE(parents.size(), 2); - QVERIFY(parents.first() != parents.at(1)); - QVERIFY(parents.contains(m_proxy->mapFromSource(m_p1PersistentAfter))); - QVERIFY(parents.contains(m_proxy->mapFromSource(m_p2PersistentAfter))); - - // In the source model, the rows were moved to row 1 in the parent. - // m_p2FirstProxyChild was created with row 0 in the proxy. - // The moved rows in the proxy do not appear at row 1 because of sorting. - // Sorting causes them to appear at row 0 instead, pushing what used to - // be row 0 in the proxy down by two rows. - QCOMPARE(m_p2FirstProxyChild.row(), 2); - } - -private: - QAbstractItemModel *m_model; - QAbstractProxyModel *m_proxy; - QPersistentModelIndex m_p1PersistentBefore; - QPersistentModelIndex m_p2PersistentBefore; - QPersistentModelIndex m_p1PersistentAfter; - QPersistentModelIndex m_p2PersistentAfter; - - QPersistentModelIndex m_p2FirstProxyChild; -}; - -void tst_QSortFilterProxyModel::moveSourceRows() -{ - qRegisterMetaType >(); - - DynamicTreeModel model; - - { - ModelInsertCommand insertCommand(&model); - insertCommand.setStartRow(0); - insertCommand.setEndRow(9); - insertCommand.doCommand(); - } - { - ModelInsertCommand insertCommand(&model); - insertCommand.setAncestorRowNumbers(QList() << 2); - insertCommand.setStartRow(0); - insertCommand.setEndRow(9); - insertCommand.doCommand(); - } - { - ModelInsertCommand insertCommand(&model); - insertCommand.setAncestorRowNumbers(QList() << 5); - insertCommand.setStartRow(0); - insertCommand.setEndRow(9); - insertCommand.doCommand(); - } - - QSortFilterProxyModel proxy; - proxy.setDynamicSortFilter(true); - proxy.sort(0, Qt::AscendingOrder); - - // We need to check the arguments at emission time - SignalArgumentChecker checker(&model, &proxy); - - proxy.setSourceModel(&model); - - QSortFilterProxyModel filterProxy; - filterProxy.setDynamicSortFilter(true); - filterProxy.sort(0, Qt::AscendingOrder); - filterProxy.setSourceModel(&proxy); - filterProxy.setFilterRegExp("6"); // One of the parents - - QSortFilterProxyModel filterBothProxy; - filterBothProxy.setDynamicSortFilter(true); - filterBothProxy.sort(0, Qt::AscendingOrder); - filterBothProxy.setSourceModel(&proxy); - filterBothProxy.setFilterRegExp("5"); // The parents are 6 and 3. This filters both out. - - QSignalSpy modelBeforeSpy(&model, SIGNAL(rowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int))); - QSignalSpy modelAfterSpy(&model, SIGNAL(rowsMoved(QModelIndex,int,int,QModelIndex,int))); - QSignalSpy proxyBeforeMoveSpy(m_proxy, SIGNAL(rowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int))); - QSignalSpy proxyAfterMoveSpy(m_proxy, SIGNAL(rowsMoved(QModelIndex,int,int,QModelIndex,int))); - QSignalSpy proxyBeforeParentLayoutSpy(&proxy, SIGNAL(layoutAboutToBeChanged(QList))); - QSignalSpy proxyAfterParentLayoutSpy(&proxy, SIGNAL(layoutChanged(QList))); - QSignalSpy filterBeforeParentLayoutSpy(&filterProxy, SIGNAL(layoutAboutToBeChanged(QList))); - QSignalSpy filterAfterParentLayoutSpy(&filterProxy, SIGNAL(layoutChanged(QList))); - QSignalSpy filterBothBeforeParentLayoutSpy(&filterBothProxy, SIGNAL(layoutAboutToBeChanged(QList))); - QSignalSpy filterBothAfterParentLayoutSpy(&filterBothProxy, SIGNAL(layoutChanged(QList))); - - { - ModelMoveCommand moveCommand(&model, 0); - moveCommand.setAncestorRowNumbers(QList() << 2); - moveCommand.setDestAncestors(QList() << 5); - moveCommand.setStartRow(3); - moveCommand.setEndRow(4); - moveCommand.setDestRow(1); - moveCommand.doCommand(); - } - - // Proxy notifies layout change - QCOMPARE(modelBeforeSpy.size(), 1); - QCOMPARE(proxyBeforeParentLayoutSpy.size(), 1); - QCOMPARE(modelAfterSpy.size(), 1); - QCOMPARE(proxyAfterParentLayoutSpy.size(), 1); - - // But it doesn't notify a move. - QCOMPARE(proxyBeforeMoveSpy.size(), 0); - QCOMPARE(proxyAfterMoveSpy.size(), 0); - - QCOMPARE(filterBeforeParentLayoutSpy.size(), 1); - QCOMPARE(filterAfterParentLayoutSpy.size(), 1); - - QList filterBeforeParents = filterBeforeParentLayoutSpy.first().first().value >(); - QList filterAfterParents = filterAfterParentLayoutSpy.first().first().value >(); - - QCOMPARE(filterBeforeParents.size(), 1); - QCOMPARE(filterAfterParents.size(), 1); - - QCOMPARE(filterBothBeforeParentLayoutSpy.size(), 0); - QCOMPARE(filterBothAfterParentLayoutSpy.size(), 0); -} - -QTEST_MAIN(tst_QSortFilterProxyModel) -#include "tst_qsortfilterproxymodel.moc" diff --git a/tests/auto/widgets/itemviews/qstringlistmodel/.gitignore b/tests/auto/widgets/itemviews/qstringlistmodel/.gitignore deleted file mode 100644 index 9c14561e3c..0000000000 --- a/tests/auto/widgets/itemviews/qstringlistmodel/.gitignore +++ /dev/null @@ -1 +0,0 @@ -tst_qstringlistmodel diff --git a/tests/auto/widgets/itemviews/qstringlistmodel/qmodellistener.h b/tests/auto/widgets/itemviews/qstringlistmodel/qmodellistener.h deleted file mode 100644 index f3ed3c1793..0000000000 --- a/tests/auto/widgets/itemviews/qstringlistmodel/qmodellistener.h +++ /dev/null @@ -1,75 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the test suite of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ -#include -#include -#include - - -QT_FORWARD_DECLARE_CLASS(QStringListModel) - -class QModelListener : public QObject -{ - Q_OBJECT -public: - QModelListener(QStringList *pAboutToStringlist, QStringList *pExpectedStringlist, QStringListModel *pModel) - { - setTestData(pAboutToStringlist, pExpectedStringlist, pModel); - } - virtual ~QModelListener() { } - - void setTestData(QStringList *pAboutToStringlist, QStringList *pExpectedStringlist, QStringListModel *pModel) - { - m_pAboutToStringlist = pAboutToStringlist; - m_pExpectedStringlist = pExpectedStringlist; - m_pModel = pModel; - } - -private: - QStringList *m_pAboutToStringlist; - QStringList *m_pExpectedStringlist; - QStringListModel *m_pModel; - -public slots: - void rowsAboutToBeRemovedOrInserted(const QModelIndex & parent, int start, int end ); - void rowsRemovedOrInserted(const QModelIndex & parent, int start, int end ); - -}; - diff --git a/tests/auto/widgets/itemviews/qstringlistmodel/qstringlistmodel.pro b/tests/auto/widgets/itemviews/qstringlistmodel/qstringlistmodel.pro deleted file mode 100644 index ecdd30cae2..0000000000 --- a/tests/auto/widgets/itemviews/qstringlistmodel/qstringlistmodel.pro +++ /dev/null @@ -1,9 +0,0 @@ -CONFIG += testcase -TARGET = tst_qstringlistmodel -QT += widgets testlib -HEADERS += qmodellistener.h - -SOURCES += tst_qstringlistmodel.cpp - - - diff --git a/tests/auto/widgets/itemviews/qstringlistmodel/tst_qstringlistmodel.cpp b/tests/auto/widgets/itemviews/qstringlistmodel/tst_qstringlistmodel.cpp deleted file mode 100644 index c8afe5dd75..0000000000 --- a/tests/auto/widgets/itemviews/qstringlistmodel/tst_qstringlistmodel.cpp +++ /dev/null @@ -1,283 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the test suite of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - - -#include -#include -#include -#include -#include -#include -#include -#include "qmodellistener.h" -#include - -void QModelListener::rowsAboutToBeRemovedOrInserted(const QModelIndex & parent, int start, int end ) -{ - int i; - for (i = 0; start + i <= end; i++) - { - QModelIndex mIndex = m_pModel->index(start + i, 0, parent); - QVariant var = m_pModel->data(mIndex, Qt::DisplayRole); - QString str = var.toString(); - - QCOMPARE(str, m_pAboutToStringlist->at(i)); - } -} - -void QModelListener::rowsRemovedOrInserted(const QModelIndex & parent, int , int) -{ - int i; - // Can the rows that *are* removed be iterated now ? - - // What about rowsAboutToBeInserted - what will the indices be? - // will insertRow() overwrite existing, or insert (and conseq. grow the model?) - // What will the item then contain? empty data? - - // RemoveColumn. Does that also fire the rowsRemoved-family signals? - - for (i = 0; i < m_pExpectedStringlist->size(); i++) - { - QModelIndex mIndex = m_pModel->index(i, 0, parent); - QVariant var = m_pModel->data(mIndex, Qt::DisplayRole); - QString str = var.toString(); - - //qDebug() << "index: " << i << " start: " << start << "end: " << end; - QCOMPARE(str, m_pExpectedStringlist->at(i)); - } -} - - -class tst_QStringListModel : public QObject -{ - Q_OBJECT - -public: - - tst_QStringListModel(); - virtual ~tst_QStringListModel(); - - -public slots: - void initTestCase(); - void cleanupTestCase(); - void init(); - void cleanup(); -private slots: - - void rowsAboutToBeRemoved_rowsRemoved(); - void rowsAboutToBeRemoved_rowsRemoved_data(); - - void rowsAboutToBeInserted_rowsInserted(); - void rowsAboutToBeInserted_rowsInserted_data(); -}; - - -tst_QStringListModel::tst_QStringListModel() - -{ -} - -tst_QStringListModel::~tst_QStringListModel() -{ -} - -void tst_QStringListModel::initTestCase() -{ -} - -void tst_QStringListModel::cleanupTestCase() -{ -} - -void tst_QStringListModel::init() -{ -} - -void tst_QStringListModel::cleanup() -{ -} - -/* - tests -*/ - - -void tst_QStringListModel::rowsAboutToBeRemoved_rowsRemoved_data() -{ - QTest::addColumn("input"); - QTest::addColumn("row"); - QTest::addColumn("count"); - QTest::addColumn("aboutto"); - QTest::addColumn("res"); - - QStringList strings0; strings0 << "One" << "Two" << "Three" << "Four" << "Five"; - QStringList aboutto0; aboutto0 << "Two" << "Three"; - QStringList res0; res0 << "One" << "Four" << "Five"; - QTest::newRow( "data0" ) << strings0 << 1 << 2 << aboutto0 << res0; - - QStringList strings1; strings1 << "One" << "Two" << "Three" << "Four" << "Five"; - QStringList aboutto1; aboutto1 << "One" << "Two"; - QStringList res1; res1 << "Three" << "Four" << "Five"; - QTest::newRow( "data1" ) << strings1 << 0 << 2 << aboutto1 << res1; - - QStringList strings2; strings2 << "One" << "Two" << "Three" << "Four" << "Five"; - QStringList aboutto2; aboutto2 << "Four" << "Five"; - QStringList res2; res2 << "One" << "Two" << "Three"; - QTest::newRow( "data2" ) << strings2 << 3 << 2 << aboutto2 << res2; - - QStringList strings3; strings3 << "One" << "Two" << "Three" << "Four" << "Five"; - QStringList aboutto3; aboutto3 << "One" << "Two" << "Three" << "Four" << "Five"; - QStringList res3; - QTest::newRow( "data3" ) << strings3 << 0 << 5 << aboutto3 << res3; - - /* Not sure if this is a valid test */ - QStringList strings4; strings4 << "One" << "Two" << "Three" << "Four" << "Five"; - QStringList aboutto4; aboutto4 << "Five" << ""; - QStringList res4; res4 << "One" << "Two" << "Three" << "Four"; - QTest::newRow( "data4" ) << strings4 << 4 << 2 << aboutto4 << res4; - - /* - * Keep this, template to add more data - QStringList strings2; strings2 << "One" << "Two" << "Three" << "Four" << "Five"; - QStringList aboutto2; aboutto2 << "One" << "Two" << "Three" << "Four" << "Five"; - QStringList res2; res2 << "One" << "Two" << "Three" << "Four" << "Five"; - QTest::newRow( "data2" ) << strings2 << 0 << 5 << aboutto2 << res2; -*/ - -} - -void tst_QStringListModel::rowsAboutToBeRemoved_rowsRemoved() -{ - QFETCH(QStringList, input); - QFETCH(int, row); - QFETCH(int, count); - QFETCH(QStringList, aboutto); - QFETCH(QStringList, res); - - QStringListModel *model = new QStringListModel(input); - QModelListener *pListener = new QModelListener(&aboutto, &res, model); - pListener->connect(model, SIGNAL( rowsAboutToBeRemoved(const QModelIndex & , int , int )), - pListener, SLOT( rowsAboutToBeRemovedOrInserted(const QModelIndex & , int , int )) ); - - pListener->connect(model, SIGNAL( rowsRemoved(const QModelIndex & , int , int )), - pListener, SLOT( rowsRemovedOrInserted(const QModelIndex & , int , int )) ); - - model->removeRows(row,count); - // At this point, control goes to our connected slots inn this order: - // 1. rowsAboutToBeRemovedOrInserted - // 2. rowsRemovedOrInserted - // Control returns here - - delete pListener; - delete model; - -} - -void tst_QStringListModel::rowsAboutToBeInserted_rowsInserted_data() -{ - QTest::addColumn("input"); - QTest::addColumn("row"); - QTest::addColumn("count"); - QTest::addColumn("aboutto"); - QTest::addColumn("res"); - - QStringList strings0; strings0 << "One" << "Two" << "Three" << "Four" << "Five"; - QStringList aboutto0; aboutto0 << "Two" << "Three"; - QStringList res0; res0 << "One" << "" << "" << "Two" << "Three" << "Four" << "Five"; - QTest::newRow( "data0" ) << strings0 << 1 << 2 << aboutto0 << res0; - - QStringList strings1; strings1 << "One" << "Two" << "Three" << "Four" << "Five"; - QStringList aboutto1; aboutto1 << "One" << "Two"; - QStringList res1; res1 << "" << "" << "One" << "Two" << "Three" << "Four" << "Five"; - QTest::newRow( "data1" ) << strings1 << 0 << 2 << aboutto1 << res1; - - QStringList strings2; strings2 << "One" << "Two" << "Three" << "Four" << "Five"; - QStringList aboutto2; aboutto2 << "Four" << "Five"; - QStringList res2; res2 << "One" << "Two" << "Three" << "" << "" << "Four" << "Five"; - QTest::newRow( "data2" ) << strings2 << 3 << 2 << aboutto2 << res2; - - QStringList strings3; strings3 << "One" << "Two" << "Three" << "Four" << "Five"; - QStringList aboutto3; aboutto3 << "One" << "Two" << "Three" << "Four" << "Five"; - QStringList res3; res3 << "" << "" << "" << "" << "" << "One" << "Two" << "Three" << "Four" << "Five"; - QTest::newRow( "data3" ) << strings3 << 0 << 5 << aboutto3 << res3; - - /* - * Keep this, template to add more data - QStringList strings2; strings2 << "One" << "Two" << "Three" << "Four" << "Five"; - QStringList aboutto2; aboutto2 << "One" << "Two" << "Three" << "Four" << "Five"; - QStringList res2; res2 << "One" << "Two" << "Three" << "Four" << "Five"; - QTest::newRow( "data2" ) << strings2 << 0 << 5 << aboutto2 << res2; -*/ - -} - -void tst_QStringListModel::rowsAboutToBeInserted_rowsInserted() -{ - QFETCH(QStringList, input); - QFETCH(int, row); - QFETCH(int, count); - QFETCH(QStringList, aboutto); - QFETCH(QStringList, res); - - QStringListModel *model = new QStringListModel(input); - QModelListener *pListener = new QModelListener(&aboutto, &res, model); - connect(model, SIGNAL( rowsAboutToBeInserted(const QModelIndex & , int , int )), - pListener, SLOT( rowsAboutToBeRemovedOrInserted(const QModelIndex & , int , int )) ); - - connect(model, SIGNAL( rowsInserted(const QModelIndex & , int , int )), - pListener, SLOT( rowsRemovedOrInserted(const QModelIndex & , int , int )) ); - - model->insertRows(row,count); - // At this point, control goes to our connected slots inn this order: - // 1. rowsAboutToBeRemovedOrInserted - // 2. rowsRemovedOrInserted - // Control returns here - - delete pListener; - delete model; - -} - - -QTEST_MAIN(tst_QStringListModel) -#include "tst_qstringlistmodel.moc" - -- cgit v1.2.3 From ac0e35c8c7c6854051ef519186f2d62b0f6c47b1 Mon Sep 17 00:00:00 2001 From: Morten Johan Sorvig Date: Fri, 16 Dec 2011 14:32:47 +0100 Subject: Cocoa: Accept mouse clicks that activates windows. Events for mouse clicks that active windows are by default suppressed. Qt needs to see all events in order to properly close popup windows. Wether or not the event should be sent to the target needs to be implemented later on - in the QWidget world this is controlled by WA_MacNoClickThrough Change-Id: I4b96d33978ed2b3cb793f52bb5b6fef234190a00 Reviewed-by: Richard Moe Gustavsen --- src/plugins/platforms/cocoa/qnsview.mm | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/plugins/platforms/cocoa/qnsview.mm b/src/plugins/platforms/cocoa/qnsview.mm index 436069c420..da6f894790 100644 --- a/src/plugins/platforms/cocoa/qnsview.mm +++ b/src/plugins/platforms/cocoa/qnsview.mm @@ -207,6 +207,11 @@ static QTouchDevice *touchDevice = 0; return YES; } +- (BOOL)acceptsFirstMouse:(NSEvent *)theEvent +{ + return YES; +} + - (void)handleMouseEvent:(NSEvent *)theEvent { // Calculate the mouse position in the QWindow and Qt screen coordinate system, -- cgit v1.2.3 From d1a671b698516847798d4041d4358c485833f8c3 Mon Sep 17 00:00:00 2001 From: Joerg Bornemann Date: Sun, 11 Dec 2011 17:09:10 +0100 Subject: extract QWindowsPipeReader from qlocalsocket_win.cpp The code for reading named pipes can now be used in other places as well. Change-Id: Id734617a3927e369491a6c5daf965169ceb01f74 Reviewed-by: Oswald Buddenhagen --- src/corelib/io/io.pri | 2 + src/corelib/io/qwindowspipereader.cpp | 315 ++++++++++++++++++++++++++++++++ src/corelib/io/qwindowspipereader_p.h | 122 +++++++++++++ src/network/socket/qlocalsocket.h | 2 +- src/network/socket/qlocalsocket_p.h | 18 +- src/network/socket/qlocalsocket_win.cpp | 243 ++++-------------------- 6 files changed, 475 insertions(+), 227 deletions(-) create mode 100644 src/corelib/io/qwindowspipereader.cpp create mode 100644 src/corelib/io/qwindowspipereader_p.h diff --git a/src/corelib/io/io.pri b/src/corelib/io/io.pri index ef11621679..84bc6f3d5e 100644 --- a/src/corelib/io/io.pri +++ b/src/corelib/io/io.pri @@ -75,6 +75,8 @@ win32 { SOURCES += io/qfilesystemwatcher_win.cpp HEADERS += io/qfilesystemwatcher_win_p.h + HEADERS += io/qwindowspipereader_p.h + SOURCES += io/qwindowspipereader.cpp HEADERS += io/qwindowspipewriter_p.h SOURCES += io/qwindowspipewriter.cpp SOURCES += io/qfilesystemengine_win.cpp diff --git a/src/corelib/io/qwindowspipereader.cpp b/src/corelib/io/qwindowspipereader.cpp new file mode 100644 index 0000000000..0c471e0202 --- /dev/null +++ b/src/corelib/io/qwindowspipereader.cpp @@ -0,0 +1,315 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtCore module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include "qwindowspipereader_p.h" +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +QWindowsPipeReader::QWindowsPipeReader(QObject *parent) + : QObject(parent), + handle(INVALID_HANDLE_VALUE), + readBufferMaxSize(0), + actualReadBufferSize(0), + emitReadyReadTimer(new QTimer(this)), + pipeBroken(false) +{ + emitReadyReadTimer->setSingleShot(true); + connect(emitReadyReadTimer, SIGNAL(timeout()), SIGNAL(readyRead())); + + ZeroMemory(&overlapped, sizeof(overlapped)); + overlapped.hEvent = CreateEvent(NULL, TRUE, FALSE, NULL); + dataReadNotifier = new QWinEventNotifier(overlapped.hEvent, this); + connect(dataReadNotifier, SIGNAL(activated(HANDLE)), SLOT(readEventSignalled())); +} + +QWindowsPipeReader::~QWindowsPipeReader() +{ + CloseHandle(overlapped.hEvent); +} + +/*! + Sets the handle to read from. The handle must be valid. + */ +void QWindowsPipeReader::setHandle(HANDLE hPipeReadEnd) +{ + readBuffer.clear(); + actualReadBufferSize = 0; + handle = hPipeReadEnd; + pipeBroken = false; + dataReadNotifier->setEnabled(true); +} + +/*! + Stops the asynchronous read sequence. + This function assumes that the file already has been closed. + It does not cancel any I/O operation. + */ +void QWindowsPipeReader::stop() +{ + dataReadNotifier->setEnabled(false); + readSequenceStarted = false; + handle = INVALID_HANDLE_VALUE; + ResetEvent(overlapped.hEvent); +} + +/*! + Returns the number of bytes we've read so far. + */ +qint64 QWindowsPipeReader::bytesAvailable() const +{ + return actualReadBufferSize; +} + +/*! + Stops the asynchronous read sequence. + */ +qint64 QWindowsPipeReader::read(char *data, qint64 maxlen) +{ + if (pipeBroken && actualReadBufferSize == 0) + return -1; // signal EOF + + qint64 readSoFar; + // If startAsyncRead() has read data, copy it to its destination. + if (maxlen == 1 && actualReadBufferSize > 0) { + *data = readBuffer.getChar(); + actualReadBufferSize--; + readSoFar = 1; + } else { + qint64 bytesToRead = qMin(qint64(actualReadBufferSize), maxlen); + readSoFar = 0; + while (readSoFar < bytesToRead) { + const char *ptr = readBuffer.readPointer(); + int bytesToReadFromThisBlock = qMin(bytesToRead - readSoFar, + qint64(readBuffer.nextDataBlockSize())); + memcpy(data + readSoFar, ptr, bytesToReadFromThisBlock); + readSoFar += bytesToReadFromThisBlock; + readBuffer.free(bytesToReadFromThisBlock); + actualReadBufferSize -= bytesToReadFromThisBlock; + } + } + + if (!pipeBroken) { + if (!actualReadBufferSize) + emitReadyReadTimer->stop(); + if (!readSequenceStarted) + startAsyncRead(); + } + + return readSoFar; +} + +bool QWindowsPipeReader::canReadLine() const +{ + return readBuffer.indexOf('\n', actualReadBufferSize) >= 0; +} + +/*! + \internal + Will be called whenever the read operation completes. + Returns true, if readyRead() has been emitted. + */ +bool QWindowsPipeReader::readEventSignalled() +{ + if (!completeAsyncRead()) { + pipeBroken = true; + emit pipeClosed(); + return false; + } + startAsyncRead(); + emitReadyReadTimer->stop(); + emit readyRead(); + return true; +} + +/*! + \internal + Reads data from the socket into the readbuffer + */ +void QWindowsPipeReader::startAsyncRead() +{ + do { + DWORD bytesToRead = checkPipeState(); + if (pipeBroken) + return; + + if (bytesToRead == 0) { + // There are no bytes in the pipe but we need to + // start the overlapped read with some buffer size. + bytesToRead = initialReadBufferSize; + } + + if (readBufferMaxSize && bytesToRead > (readBufferMaxSize - readBuffer.size())) { + bytesToRead = readBufferMaxSize - readBuffer.size(); + if (bytesToRead == 0) { + // Buffer is full. User must read data from the buffer + // before we can read more from the pipe. + return; + } + } + + char *ptr = readBuffer.reserve(bytesToRead); + + readSequenceStarted = true; + if (ReadFile(handle, ptr, bytesToRead, NULL, &overlapped)) { + completeAsyncRead(); + } else { + switch (GetLastError()) { + case ERROR_IO_PENDING: + // This is not an error. We're getting notified, when data arrives. + return; + case ERROR_MORE_DATA: + // This is not an error. The synchronous read succeeded. + // We're connected to a message mode pipe and the message + // didn't fit into the pipe's system buffer. + completeAsyncRead(); + break; + case ERROR_PIPE_NOT_CONNECTED: + { + // It may happen, that the other side closes the connection directly + // after writing data. Then we must set the appropriate socket state. + pipeBroken = true; + emit pipeClosed(); + return; + } + default: + emit winError(GetLastError(), QLatin1String("QWindowsPipeReader::startAsyncRead")); + return; + } + } + } while (!readSequenceStarted); +} + +/*! + \internal + Sets the correct size of the read buffer after a read operation. + Returns false, if an error occurred or the connection dropped. + */ +bool QWindowsPipeReader::completeAsyncRead() +{ + ResetEvent(overlapped.hEvent); + readSequenceStarted = false; + + DWORD bytesRead; + if (!GetOverlappedResult(handle, &overlapped, &bytesRead, TRUE)) { + switch (GetLastError()) { + case ERROR_MORE_DATA: + // This is not an error. We're connected to a message mode + // pipe and the message didn't fit into the pipe's system + // buffer. We will read the remaining data in the next call. + break; + case ERROR_BROKEN_PIPE: + case ERROR_PIPE_NOT_CONNECTED: + return false; + default: + emit winError(GetLastError(), QLatin1String("QWindowsPipeReader::completeAsyncRead")); + return false; + } + } + + actualReadBufferSize += bytesRead; + readBuffer.truncate(actualReadBufferSize); + if (!emitReadyReadTimer->isActive()) + emitReadyReadTimer->start(); + return true; +} + +/*! + \internal + Returns the number of available bytes in the pipe. + Sets QWindowsPipeReader::pipeBroken to true if the connection is broken. + */ +DWORD QWindowsPipeReader::checkPipeState() +{ + DWORD bytes; + if (PeekNamedPipe(handle, NULL, 0, NULL, &bytes, NULL)) { + return bytes; + } else { + if (!pipeBroken) { + pipeBroken = true; + emit pipeClosed(); + } + } + return 0; +} + +/*! + Waits for the completion of the asynchronous read operation. + Returns true, if we've emitted the readyRead signal. + */ +bool QWindowsPipeReader::waitForReadyRead(int msecs) +{ + Q_ASSERT(readSequenceStarted); + DWORD result = WaitForSingleObject(overlapped.hEvent, msecs == -1 ? INFINITE : msecs); + switch (result) { + case WAIT_OBJECT_0: + return readEventSignalled(); + case WAIT_TIMEOUT: + return false; + } + + qWarning("QWindowsPipeReader::waitForReadyRead WaitForSingleObject failed with error code %d.", int(GetLastError())); + return false; +} + +/*! + Waits until the pipe is closed. + */ +bool QWindowsPipeReader::waitForPipeClosed(int msecs) +{ + const int sleepTime = 10; + QElapsedTimer stopWatch; + stopWatch.start(); + forever { + checkPipeState(); + if (pipeBroken) + return true; + if (stopWatch.hasExpired(msecs - sleepTime)) + return false; + Sleep(sleepTime); + } +} + +QT_END_NAMESPACE diff --git a/src/corelib/io/qwindowspipereader_p.h b/src/corelib/io/qwindowspipereader_p.h new file mode 100644 index 0000000000..12dd593f8f --- /dev/null +++ b/src/corelib/io/qwindowspipereader_p.h @@ -0,0 +1,122 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtCore module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QWINDOWSPIPEREADER_P_H +#define QWINDOWSPIPEREADER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +#include + +QT_BEGIN_HEADER + +QT_BEGIN_NAMESPACE + +QT_MODULE(Core) + +class QWinEventNotifier; + +class Q_CORE_EXPORT QWindowsPipeReader : public QObject +{ + Q_OBJECT +public: + explicit QWindowsPipeReader(QObject *parent = 0); + ~QWindowsPipeReader(); + + void setHandle(HANDLE hPipeReadEnd); + void stop(); + + void setMaxReadBufferSize(qint64 size) { readBufferMaxSize = size; } + qint64 maxReadBufferSize() const { return readBufferMaxSize; } + + bool isPipeClosed() const { return pipeBroken; } + qint64 bytesAvailable() const; + qint64 read(char *data, qint64 maxlen); + bool canReadLine() const; + bool waitForReadyRead(int msecs); + bool waitForPipeClosed(int msecs); + + void startAsyncRead(); + bool completeAsyncRead(); + +Q_SIGNALS: + void winError(ulong, const QString &); + void readyRead(); + void pipeClosed(); + +private Q_SLOTS: + bool readEventSignalled(); + +private: + DWORD checkPipeState(); + +private: + HANDLE handle; + OVERLAPPED overlapped; + QWinEventNotifier *dataReadNotifier; + qint64 readBufferMaxSize; + QRingBuffer readBuffer; + int actualReadBufferSize; + bool readSequenceStarted; + QTimer *emitReadyReadTimer; + bool pipeBroken; + static const qint64 initialReadBufferSize = 4096; +}; + +QT_END_NAMESPACE + +QT_END_HEADER + +#endif // QWINDOWSPIPEREADER_P_H diff --git a/src/network/socket/qlocalsocket.h b/src/network/socket/qlocalsocket.h index a30f37011a..74c54bf873 100644 --- a/src/network/socket/qlocalsocket.h +++ b/src/network/socket/qlocalsocket.h @@ -131,9 +131,9 @@ private: Q_PRIVATE_SLOT(d_func(), void _q_stateChanged(QAbstractSocket::SocketState)) Q_PRIVATE_SLOT(d_func(), void _q_error(QAbstractSocket::SocketError)) #elif defined(Q_OS_WIN) - Q_PRIVATE_SLOT(d_func(), void _q_notified()) Q_PRIVATE_SLOT(d_func(), void _q_canWrite()) Q_PRIVATE_SLOT(d_func(), void _q_pipeClosed()) + Q_PRIVATE_SLOT(d_func(), void _q_winError(ulong, const QString &)) #else Q_PRIVATE_SLOT(d_func(), void _q_stateChanged(QAbstractSocket::SocketState)) Q_PRIVATE_SLOT(d_func(), void _q_error(QAbstractSocket::SocketError)) diff --git a/src/network/socket/qlocalsocket_p.h b/src/network/socket/qlocalsocket_p.h index 32781789b0..b256f84325 100644 --- a/src/network/socket/qlocalsocket_p.h +++ b/src/network/socket/qlocalsocket_p.h @@ -63,8 +63,8 @@ #if defined(QT_LOCALSOCKET_TCP) # include "qtcpsocket.h" #elif defined(Q_OS_WIN) +# include "private/qwindowspipereader_p.h" # include "private/qwindowspipewriter_p.h" -# include "private/qringbuffer_p.h" # include #else # include "private/qabstractsocketengine_p.h" @@ -131,25 +131,13 @@ public: ~QLocalSocketPrivate(); void destroyPipeHandles(); void setErrorString(const QString &function); - void _q_notified(); void _q_canWrite(); void _q_pipeClosed(); - DWORD checkPipeState(); - void startAsyncRead(); - bool completeAsyncRead(); - void checkReadyRead(); + void _q_winError(ulong windowsError, const QString &function); HANDLE handle; - OVERLAPPED overlapped; QWindowsPipeWriter *pipeWriter; - qint64 readBufferMaxSize; - QRingBuffer readBuffer; - int actualReadBufferSize; - QWinEventNotifier *dataReadNotifier; + QWindowsPipeReader *pipeReader; QLocalSocket::LocalSocketError error; - bool readSequenceStarted; - QTimer *emitReadyReadTimer; - bool pipeClosed; - static const qint64 initialReadBufferSize = 4096; #else QLocalUnixSocket unixSocket; QString generateErrorString(QLocalSocket::LocalSocketError, const QString &function) const; diff --git a/src/network/socket/qlocalsocket_win.cpp b/src/network/socket/qlocalsocket_win.cpp index 9d7fb4ef42..1b0ee0d9a0 100644 --- a/src/network/socket/qlocalsocket_win.cpp +++ b/src/network/socket/qlocalsocket_win.cpp @@ -50,19 +50,21 @@ QT_BEGIN_NAMESPACE void QLocalSocketPrivate::init() { Q_Q(QLocalSocket); - emitReadyReadTimer = new QTimer(q); - emitReadyReadTimer->setSingleShot(true); - QObject::connect(emitReadyReadTimer, SIGNAL(timeout()), q, SIGNAL(readyRead())); - memset(&overlapped, 0, sizeof(overlapped)); - overlapped.hEvent = CreateEvent(NULL, TRUE, FALSE, NULL); - dataReadNotifier = new QWinEventNotifier(overlapped.hEvent, q); - q->connect(dataReadNotifier, SIGNAL(activated(HANDLE)), q, SLOT(_q_notified())); + pipeReader = new QWindowsPipeReader(q); + q->connect(pipeReader, SIGNAL(readyRead()), SIGNAL(readyRead())); + q->connect(pipeReader, SIGNAL(pipeClosed()), SLOT(_q_pipeClosed()), Qt::QueuedConnection); + q->connect(pipeReader, SIGNAL(winError(ulong, const QString &)), SLOT(_q_winError(ulong, const QString &))); } void QLocalSocketPrivate::setErrorString(const QString &function) +{ + DWORD windowsError = GetLastError(); + _q_winError(windowsError, function); +} + +void QLocalSocketPrivate::_q_winError(ulong windowsError, const QString &function) { Q_Q(QLocalSocket); - BOOL windowsError = GetLastError(); QLocalSocket::LocalSocketState currentState = state; // If the connectToServer fails due to WaitNamedPipe() time-out, assume ConnectionError @@ -106,13 +108,9 @@ void QLocalSocketPrivate::setErrorString(const QString &function) QLocalSocketPrivate::QLocalSocketPrivate() : QIODevicePrivate(), handle(INVALID_HANDLE_VALUE), + pipeReader(0), pipeWriter(0), - readBufferMaxSize(0), - actualReadBufferSize(0), error(QLocalSocket::UnknownSocketError), - readSequenceStarted(false), - emitReadyReadTimer(0), - pipeClosed(false), state(QLocalSocket::UnconnectedState) { } @@ -120,7 +118,6 @@ QLocalSocketPrivate::QLocalSocketPrivate() : QIODevicePrivate(), QLocalSocketPrivate::~QLocalSocketPrivate() { destroyPipeHandles(); - CloseHandle(overlapped.hEvent); } void QLocalSocketPrivate::destroyPipeHandles() @@ -200,129 +197,7 @@ qint64 QLocalSocket::readData(char *data, qint64 maxSize) { Q_D(QLocalSocket); - if (d->pipeClosed && d->actualReadBufferSize == 0) - return -1; // signal EOF - - qint64 readSoFar; - // If startAsyncRead() read data, copy it to its destination. - if (maxSize == 1 && d->actualReadBufferSize > 0) { - *data = d->readBuffer.getChar(); - d->actualReadBufferSize--; - readSoFar = 1; - } else { - qint64 bytesToRead = qMin(qint64(d->actualReadBufferSize), maxSize); - readSoFar = 0; - while (readSoFar < bytesToRead) { - const char *ptr = d->readBuffer.readPointer(); - int bytesToReadFromThisBlock = qMin(bytesToRead - readSoFar, - qint64(d->readBuffer.nextDataBlockSize())); - memcpy(data + readSoFar, ptr, bytesToReadFromThisBlock); - readSoFar += bytesToReadFromThisBlock; - d->readBuffer.free(bytesToReadFromThisBlock); - d->actualReadBufferSize -= bytesToReadFromThisBlock; - } - } - - if (!d->pipeClosed) { - if (!d->actualReadBufferSize) - d->emitReadyReadTimer->stop(); - if (!d->readSequenceStarted) - d->startAsyncRead(); - } - - return readSoFar; -} - -/*! - \internal - Reads data from the socket into the readbuffer - */ -void QLocalSocketPrivate::startAsyncRead() -{ - do { - DWORD bytesToRead = checkPipeState(); - if (pipeClosed) - return; - - if (bytesToRead == 0) { - // There are no bytes in the pipe but we need to - // start the overlapped read with some buffer size. - bytesToRead = initialReadBufferSize; - } - - if (readBufferMaxSize && bytesToRead > (readBufferMaxSize - readBuffer.size())) { - bytesToRead = readBufferMaxSize - readBuffer.size(); - if (bytesToRead == 0) { - // Buffer is full. User must read data from the buffer - // before we can read more from the pipe. - return; - } - } - - char *ptr = readBuffer.reserve(bytesToRead); - - readSequenceStarted = true; - if (ReadFile(handle, ptr, bytesToRead, NULL, &overlapped)) { - completeAsyncRead(); - } else { - switch (GetLastError()) { - case ERROR_IO_PENDING: - // This is not an error. We're getting notified, when data arrives. - return; - case ERROR_MORE_DATA: - // This is not an error. The synchronous read succeeded. - // We're connected to a message mode pipe and the message - // didn't fit into the pipe's system buffer. - completeAsyncRead(); - break; - case ERROR_PIPE_NOT_CONNECTED: - { - // It may happen, that the other side closes the connection directly - // after writing data. Then we must set the appropriate socket state. - pipeClosed = true; - Q_Q(QLocalSocket); - QTimer::singleShot(0, q, SLOT(_q_pipeClosed())); - return; - } - default: - setErrorString(QLatin1String("QLocalSocketPrivate::startAsyncRead")); - return; - } - } - } while (!readSequenceStarted); -} - -/*! - \internal - Sets the correct size of the read buffer after a read operation. - Returns false, if an error occurred or the connection dropped. - */ -bool QLocalSocketPrivate::completeAsyncRead() -{ - ResetEvent(overlapped.hEvent); - readSequenceStarted = false; - - DWORD bytesRead; - if (!GetOverlappedResult(handle, &overlapped, &bytesRead, TRUE)) { - switch (GetLastError()) { - case ERROR_MORE_DATA: - // This is not an error. We're connected to a message mode - // pipe and the message didn't fit into the pipe's system - // buffer. We will read the remaining data in the next call. - break; - case ERROR_PIPE_NOT_CONNECTED: - return false; - default: - setErrorString(QLatin1String("QLocalSocketPrivate::completeAsyncRead")); - return false; - } - } - - actualReadBufferSize += bytesRead; - readBuffer.truncate(actualReadBufferSize); - if (!emitReadyReadTimer->isActive()) - emitReadyReadTimer->start(); - return true; + return d->pipeReader->read(data, maxSize); } qint64 QLocalSocket::writeData(const char *data, qint64 maxSize) @@ -347,26 +222,6 @@ void QLocalSocket::abort() close(); } -/*! - \internal - Returns the number of available bytes in the pipe. - Sets QLocalSocketPrivate::pipeClosed to true if the connection is broken. - */ -DWORD QLocalSocketPrivate::checkPipeState() -{ - Q_Q(QLocalSocket); - DWORD bytes; - if (PeekNamedPipe(handle, NULL, 0, NULL, &bytes, NULL)) { - return bytes; - } else { - if (!pipeClosed) { - pipeClosed = true; - QTimer::singleShot(0, q, SLOT(_q_pipeClosed())); - } - } - return 0; -} - void QLocalSocketPrivate::_q_pipeClosed() { Q_Q(QLocalSocket); @@ -384,10 +239,9 @@ void QLocalSocketPrivate::_q_pipeClosed() emit q->stateChanged(state); emit q->disconnected(); - readSequenceStarted = false; + pipeReader->stop(); destroyPipeHandles(); handle = INVALID_HANDLE_VALUE; - ResetEvent(overlapped.hEvent); if (pipeWriter) { delete pipeWriter; @@ -399,7 +253,7 @@ qint64 QLocalSocket::bytesAvailable() const { Q_D(const QLocalSocket); qint64 available = QIODevice::bytesAvailable(); - available += (qint64) d->actualReadBufferSize; + available += d->pipeReader->bytesAvailable(); return available; } @@ -412,8 +266,7 @@ qint64 QLocalSocket::bytesToWrite() const bool QLocalSocket::canReadLine() const { Q_D(const QLocalSocket); - return (QIODevice::canReadLine() - || d->readBuffer.indexOf('\n', d->actualReadBufferSize) != -1); + return QIODevice::canReadLine() || d->pipeReader->canReadLine(); } void QLocalSocket::close() @@ -475,15 +328,14 @@ bool QLocalSocket::setSocketDescriptor(quintptr socketDescriptor, LocalSocketState socketState, OpenMode openMode) { Q_D(QLocalSocket); - d->readBuffer.clear(); - d->actualReadBufferSize = 0; - QIODevice::open(openMode); - d->handle = (int*)socketDescriptor; + d->pipeReader->stop(); + d->handle = reinterpret_cast(socketDescriptor); d->state = socketState; - d->pipeClosed = false; + d->pipeReader->setHandle(d->handle); + QIODevice::open(openMode); emit stateChanged(d->state); if (d->state == ConnectedState && openMode.testFlag(QIODevice::ReadOnly)) - d->startAsyncRead(); + d->pipeReader->startAsyncRead(); return true; } @@ -494,19 +346,6 @@ void QLocalSocketPrivate::_q_canWrite() q->close(); } -void QLocalSocketPrivate::_q_notified() -{ - Q_Q(QLocalSocket); - if (!completeAsyncRead()) { - pipeClosed = true; - QTimer::singleShot(0, q, SLOT(_q_pipeClosed())); - return; - } - startAsyncRead(); - emitReadyReadTimer->stop(); - emit q->readyRead(); -} - quintptr QLocalSocket::socketDescriptor() const { Q_D(const QLocalSocket); @@ -516,13 +355,13 @@ quintptr QLocalSocket::socketDescriptor() const qint64 QLocalSocket::readBufferSize() const { Q_D(const QLocalSocket); - return d->readBufferMaxSize; + return d->pipeReader->maxReadBufferSize(); } void QLocalSocket::setReadBufferSize(qint64 size) { Q_D(QLocalSocket); - d->readBufferMaxSize = size; + d->pipeReader->setMaxReadBufferSize(size); } bool QLocalSocket::waitForConnected(int msecs) @@ -540,18 +379,10 @@ bool QLocalSocket::waitForDisconnected(int msecs) qWarning("QLocalSocket::waitForDisconnected isn't supported for write only pipes."); return false; } - QIncrementalSleepTimer timer(msecs); - forever { - d->checkPipeState(); - if (d->pipeClosed) - d->_q_pipeClosed(); - if (state() == UnconnectedState) - return true; - Sleep(timer.nextSleepTime()); - if (timer.hasTimedOut()) - break; + if (d->pipeReader->waitForPipeClosed(msecs)) { + d->_q_pipeClosed(); + return true; } - return false; } @@ -572,28 +403,18 @@ bool QLocalSocket::waitForReadyRead(int msecs) return false; // We already know that the pipe is gone, but did not enter the event loop yet. - if (d->pipeClosed) { + if (d->pipeReader->isPipeClosed()) { d->_q_pipeClosed(); return false; } - Q_ASSERT(d->readSequenceStarted); - DWORD result = WaitForSingleObject(d->overlapped.hEvent, msecs == -1 ? INFINITE : msecs); - switch (result) { - case WAIT_OBJECT_0: - d->_q_notified(); - // We just noticed that the pipe is gone. - if (d->pipeClosed) { - d->_q_pipeClosed(); - return false; - } - return true; - case WAIT_TIMEOUT: - return false; - } + bool result = d->pipeReader->waitForReadyRead(msecs); - qWarning("QLocalSocket::waitForReadyRead WaitForSingleObject failed with error code %d.", int(GetLastError())); - return false; + // We just noticed that the pipe is gone. + if (d->pipeReader->isPipeClosed()) + d->_q_pipeClosed(); + + return result; } bool QLocalSocket::waitForBytesWritten(int msecs) -- cgit v1.2.3 From 51fb43b37f58d38e34225f37216bcfdaf22733c5 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Wed, 14 Dec 2011 16:03:44 +0100 Subject: QSortFilterProxyModel: Fix warnings about unused variables. Introduced by 4ebceaba394e54a4f43578e46839e3057e7e802d. Reviewed-by: Stephen Kelly Change-Id: I81985c4121db5f6abd832f64ef412646daec6259 Reviewed-by: Friedemann Kleint --- src/corelib/itemmodels/qsortfilterproxymodel.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/corelib/itemmodels/qsortfilterproxymodel.cpp b/src/corelib/itemmodels/qsortfilterproxymodel.cpp index 71f68f2409..4a9c100613 100644 --- a/src/corelib/itemmodels/qsortfilterproxymodel.cpp +++ b/src/corelib/itemmodels/qsortfilterproxymodel.cpp @@ -1345,7 +1345,7 @@ void QSortFilterProxyModelPrivate::_q_sourceRowsRemoved( } void QSortFilterProxyModelPrivate::_q_sourceRowsAboutToBeMoved( - const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destParent, int dest) + const QModelIndex &sourceParent, int /* sourceStart */, int /* sourceEnd */, const QModelIndex &destParent, int /* dest */) { Q_Q(QSortFilterProxyModel); // Because rows which are contiguous in the source model might not be contiguous @@ -1367,7 +1367,7 @@ void QSortFilterProxyModelPrivate::_q_sourceRowsAboutToBeMoved( } void QSortFilterProxyModelPrivate::_q_sourceRowsMoved( - const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destParent, int dest) + const QModelIndex &sourceParent, int /* sourceStart */, int /* sourceEnd */, const QModelIndex &destParent, int /* dest */) { Q_Q(QSortFilterProxyModel); @@ -1449,7 +1449,7 @@ void QSortFilterProxyModelPrivate::_q_sourceColumnsRemoved( } void QSortFilterProxyModelPrivate::_q_sourceColumnsAboutToBeMoved( - const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destParent, int dest) + const QModelIndex &sourceParent, int /* sourceStart */, int /* sourceEnd */, const QModelIndex &destParent, int /* dest */) { Q_Q(QSortFilterProxyModel); @@ -1467,7 +1467,7 @@ void QSortFilterProxyModelPrivate::_q_sourceColumnsAboutToBeMoved( } void QSortFilterProxyModelPrivate::_q_sourceColumnsMoved( - const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destParent, int dest) + const QModelIndex &sourceParent, int /* sourceStart */, int /* sourceEnd */, const QModelIndex &destParent, int /* dest */) { Q_Q(QSortFilterProxyModel); -- cgit v1.2.3 From eada3449b9914a3c1cee005245b90631c617a787 Mon Sep 17 00:00:00 2001 From: Robin Burchell Date: Thu, 15 Dec 2011 10:18:37 +0100 Subject: Remove widget attribute orientation values from Qt:: enum. These were only actually implemented on Symbian, thus, they aren't too useful, apart from confusing developers when they don't work. Removed per the discussion on: http://lists.qt-project.org/pipermail/development/2011-December/000860.html Change-Id: Id097cb392a3d964364adbe51a72a22927b9c382c Reviewed-by: Lars Knoll --- src/corelib/global/qnamespace.h | 5 ----- src/corelib/global/qnamespace.qdoc | 8 -------- src/widgets/kernel/qwidget.cpp | 39 -------------------------------------- 3 files changed, 52 deletions(-) diff --git a/src/corelib/global/qnamespace.h b/src/corelib/global/qnamespace.h index 2e4bc0efbf..456be48d9c 100644 --- a/src/corelib/global/qnamespace.h +++ b/src/corelib/global/qnamespace.h @@ -466,10 +466,6 @@ public: WA_Maemo5StackedWindow = 127, #endif - WA_LockPortraitOrientation = 128, - WA_LockLandscapeOrientation = 129, - WA_AutoOrientation = 130, - #if 0 // these values are reserved for Maemo5 - do not re-use them WA_Maemo5PortraitOrientation = WA_LockPortraitOrientation, WA_Maemo5LandscapeOrientation = WA_LockLandscapeOrientation, @@ -478,7 +474,6 @@ public: #endif WA_X11DoNotAcceptFocus = 132, - WA_SymbianNoSystemRotation = 133, WA_MacNoShadow = 134, // Add new attributes before this line diff --git a/src/corelib/global/qnamespace.qdoc b/src/corelib/global/qnamespace.qdoc index 63ac4a95be..4abe981b59 100644 --- a/src/corelib/global/qnamespace.qdoc +++ b/src/corelib/global/qnamespace.qdoc @@ -1158,13 +1158,6 @@ to this top level window. This attribute has no effect on non-X11 platforms. - \value WA_LockPortraitOrientation Locks the widget to a portrait orientation, - ignoring changes to the display's orientation with respect to the user. - \value WA_LockLandscapeOrientation Locks the widget to a landscape orientation, - ignoring changes to the display's orientation with respect to the user. - \value WA_AutoOrientation Causes the widget to change orientation whenever the - display changes orientation with respect to the user. - \value WA_MacNoShadow Since Qt 4.8, this attribute disables drop shadows for this top level window. Only affects Cocoa builds of Qt for Mac OS X. @@ -1198,7 +1191,6 @@ \omitvalue WA_SetWindowModality \omitvalue WA_WState_WindowOpacitySet \omitvalue WA_WState_AcceptedTouchBeginEvent - \omitvalue WA_SymbianNoSystemRotation */ /*! \typedef Qt::HANDLE diff --git a/src/widgets/kernel/qwidget.cpp b/src/widgets/kernel/qwidget.cpp index d20e979cfb..68d1b432e7 100644 --- a/src/widgets/kernel/qwidget.cpp +++ b/src/widgets/kernel/qwidget.cpp @@ -10313,45 +10313,6 @@ void QWidget::setAttribute(Qt::WidgetAttribute attribute, bool on) d->registerTouchWindow(); #endif break; - case Qt::WA_LockPortraitOrientation: - case Qt::WA_LockLandscapeOrientation: - case Qt::WA_AutoOrientation: { - const Qt::WidgetAttribute orientations[3] = { - Qt::WA_LockPortraitOrientation, - Qt::WA_LockLandscapeOrientation, - Qt::WA_AutoOrientation - }; - - if (on) { - // We can only have one of these set at a time - for (int i = 0; i < 3; ++i) { - if (orientations[i] != attribute) - setAttribute_internal(orientations[i], false, data, d); - } - } - -#ifdef Q_WS_S60 - CAknAppUiBase* appUi = static_cast(CEikonEnv::Static()->EikAppUi()); - const CAknAppUiBase::TAppUiOrientation s60orientations[] = { - CAknAppUiBase::EAppUiOrientationPortrait, - CAknAppUiBase::EAppUiOrientationLandscape, - CAknAppUiBase::EAppUiOrientationAutomatic - }; - CAknAppUiBase::TAppUiOrientation s60orientation = CAknAppUiBase::EAppUiOrientationUnspecified; - for (int i = 0; i < 3; ++i) { - if (testAttribute(orientations[i])) { - s60orientation = s60orientations[i]; - break; - } - } - QT_TRAP_THROWING(appUi->SetOrientationL(s60orientation)); - S60->orientationSet = true; - QSymbianControl *window = static_cast(internalWinId()); - if (window) - window->ensureFixNativeOrientation(); -#endif - break; - } default: break; } -- cgit v1.2.3 From 3992c1cb1557421d85800201558a12d426acb16e Mon Sep 17 00:00:00 2001 From: Robin Burchell Date: Thu, 15 Dec 2011 10:41:22 +0100 Subject: Remove note about Maemo5-reserved enum values, and renumber appropriately. With the ABI/API break, we can afford to do this. Change-Id: Iaf318a56d572679322fde0448556eaa4242842d1 Reviewed-by: Lars Knoll --- src/corelib/global/qnamespace.h | 16 ++-------------- 1 file changed, 2 insertions(+), 14 deletions(-) diff --git a/src/corelib/global/qnamespace.h b/src/corelib/global/qnamespace.h index 456be48d9c..b1d8ed46b6 100644 --- a/src/corelib/global/qnamespace.h +++ b/src/corelib/global/qnamespace.h @@ -461,20 +461,8 @@ public: WA_MergeSoftkeys = 124, WA_MergeSoftkeysRecursively = 125, -#if 0 // these values are reserved for Maemo5 - do not re-use them - WA_Maemo5NonComposited = 126, - WA_Maemo5StackedWindow = 127, -#endif - -#if 0 // these values are reserved for Maemo5 - do not re-use them - WA_Maemo5PortraitOrientation = WA_LockPortraitOrientation, - WA_Maemo5LandscapeOrientation = WA_LockLandscapeOrientation, - WA_Maemo5AutoOrientation = WA_AutoOrientation, - WA_Maemo5ShowProgressIndicator = 131, -#endif - - WA_X11DoNotAcceptFocus = 132, - WA_MacNoShadow = 134, + WA_X11DoNotAcceptFocus = 126, + WA_MacNoShadow = 127, // Add new attributes before this line WA_AttributeCount -- cgit v1.2.3 From f1f500b9aa70edfc7511a714c9aefb132d66f10e Mon Sep 17 00:00:00 2001 From: David Faure Date: Tue, 13 Dec 2011 17:24:54 +0100 Subject: Fix fvisibility.test for "QMAKE_CXX = ccache g++" MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Testcase: adding this line at the end of mkspecs/linux-g++-64/qmake.conf QMAKE_CXX = ccache g++ Result: fvisibility.test: line 28: ccache g++: command not found Symbol visibility control disabled. Result after fix: Symbol visibility control enabled. Change-Id: I4049264a38a43e1bee3cb823d53836f0689f0b53 Reviewed-by: João Abecasis --- config.tests/unix/fvisibility.test | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/config.tests/unix/fvisibility.test b/config.tests/unix/fvisibility.test index 27c6841082..6e56410075 100755 --- a/config.tests/unix/fvisibility.test +++ b/config.tests/unix/fvisibility.test @@ -25,9 +25,9 @@ __global void blah(); EOF if [ "$VERBOSE" = "yes" ] ; then - "$COMPILER" -c $CMDLINE fvisibility.c && FVISIBILITY_SUPPORT=yes + $COMPILER -c $CMDLINE fvisibility.c && FVISIBILITY_SUPPORT=yes else - "$COMPILER" -c $CMDLINE fvisibility.c >/dev/null 2>&1 && FVISIBILITY_SUPPORT=yes + $COMPILER -c $CMDLINE fvisibility.c >/dev/null 2>&1 && FVISIBILITY_SUPPORT=yes fi rm -f fvisibility.c fvisibility.o } -- cgit v1.2.3 From e299832dbf3e2227200e7317805f7773d60fcbba Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Fri, 16 Dec 2011 14:01:12 +1000 Subject: Avoid confusing method overloading in QTestTable. The private class had two append() methods, one appending a column and one appending a row. Use more meaningful names instead of overloading orthogonal operations. Change-Id: I97e0268d6cb289694557846f244fe770cf980aaf Reviewed-by: Rohan McGovern --- src/testlib/qtesttable.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/testlib/qtesttable.cpp b/src/testlib/qtesttable.cpp index 0c76076b88..bc8bc3e13c 100644 --- a/src/testlib/qtesttable.cpp +++ b/src/testlib/qtesttable.cpp @@ -73,8 +73,8 @@ public: ElementList *list; DataList *dataList; - void append(int elemType, const char *elemName); - void append(QTestData *data); + void addColumn(int elemType, const char *elemName); + void addRow(QTestData *data); ElementList *elementAt(int index); QTestData *dataAt(int index); @@ -124,7 +124,7 @@ QTestTablePrivate::~QTestTablePrivate() } } -void QTestTablePrivate::append(int elemType, const char *elemName) +void QTestTablePrivate::addColumn(int elemType, const char *elemName) { ElementList *item = new ElementList; item->elementName = elemName; @@ -139,7 +139,7 @@ void QTestTablePrivate::append(int elemType, const char *elemName) last->next = item; } -void QTestTablePrivate::append(QTestData *data) +void QTestTablePrivate::addRow(QTestData *data) { DataList *item = new DataList; item->data = data; @@ -158,7 +158,7 @@ void QTestTable::addColumn(int type, const char *name) QTEST_ASSERT(type); QTEST_ASSERT(name); - d->append(type, name); + d->addColumn(type, name); } int QTestTable::elementCount() const @@ -192,7 +192,7 @@ bool QTestTable::isEmpty() const QTestData *QTestTable::newData(const char *tag) { QTestData *dt = new QTestData(tag, this); - d->append(dt); + d->addRow(dt); return dt; } -- cgit v1.2.3 From b13f630c8188b7b7571a5df001a395b9e6790a28 Mon Sep 17 00:00:00 2001 From: Chris Meyer Date: Fri, 16 Dec 2011 16:41:59 -0800 Subject: Add check to make sure qApp exists before using MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Check for qApp before using. I'm aware that this is in commented out code right now; but I wanted to make sure it doesn't accidently slip back in without this check so I'm submitting this patch. It caused problems at shutdown in 4.8. Change-Id: I1c2358ab94f8b698e5519b3e0f988fb5cdd653fa Reviewed-by: Morten Johan Sørvig --- src/plugins/platforms/cocoa/qcocoaapplication.mm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/plugins/platforms/cocoa/qcocoaapplication.mm b/src/plugins/platforms/cocoa/qcocoaapplication.mm index 388e56db8e..0ea47d7f3b 100644 --- a/src/plugins/platforms/cocoa/qcocoaapplication.mm +++ b/src/plugins/platforms/cocoa/qcocoaapplication.mm @@ -143,7 +143,7 @@ QT_USE_NAMESPACE { Q_UNUSED(event); /* - if (qApp->macEventFilter(0, reinterpret_cast(event))) + if (qApp && qApp->macEventFilter(0, reinterpret_cast(event))) return true; if ([event type] == NSApplicationDefined) { -- cgit v1.2.3 From e75e4421cdcaba1e0c2920251b114d0318155d3c Mon Sep 17 00:00:00 2001 From: Chris Meyer Date: Fri, 16 Dec 2011 16:14:43 -0800 Subject: Enable option to see filename extension in Mac save dialog MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Many Mac OS users expect to have the option to see the file extension of the file being saved in the save dialog. This patch enables that option. Change-Id: I7713bcef16b6f43135b382c7107f306009c7a0a1 Reviewed-by: Morten Johan Sørvig --- src/plugins/platforms/cocoa/qcocoafiledialoghelper.mm | 1 + 1 file changed, 1 insertion(+) diff --git a/src/plugins/platforms/cocoa/qcocoafiledialoghelper.mm b/src/plugins/platforms/cocoa/qcocoafiledialoghelper.mm index e7f6b8b54f..6ff0e94dc4 100644 --- a/src/plugins/platforms/cocoa/qcocoafiledialoghelper.mm +++ b/src/plugins/platforms/cocoa/qcocoafiledialoghelper.mm @@ -138,6 +138,7 @@ typedef QSharedPointer SharedPointerFileDialogOptions; mSavePanel = mOpenPanel; } else { mSavePanel = [NSSavePanel savePanel]; + [mSavePanel setCanSelectHiddenExtension:YES]; mOpenPanel = 0; } -- cgit v1.2.3 From 31d8ecfe3b6b5ab27e4bb36aeeeae917e0aabc23 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C4=99drzej=20Nowacki?= Date: Tue, 13 Dec 2011 16:12:32 +0100 Subject: Make QMetaTypeInterface POD. QMetaTypeInterface has to be POD because it is constructed in a static array. Constructors in POD types are not allowed so we will use a macro instead. Change-Id: Iab9ae776dfe4dcd7148558f02d6181c5917aa5c3 Reviewed-by: Thiago Macieira --- src/corelib/kernel/qmetatype.cpp | 12 +++++++++ src/corelib/kernel/qmetatype_p.h | 45 ++++++++++++++-------------------- src/gui/kernel/qguivariant.cpp | 2 +- src/widgets/kernel/qwidgetsvariant.cpp | 2 +- 4 files changed, 33 insertions(+), 28 deletions(-) diff --git a/src/corelib/kernel/qmetatype.cpp b/src/corelib/kernel/qmetatype.cpp index 76537c79cb..d5a22ef07d 100644 --- a/src/corelib/kernel/qmetatype.cpp +++ b/src/corelib/kernel/qmetatype.cpp @@ -297,6 +297,14 @@ public: int alias; }; +namespace +{ +union CheckThatItIsPod +{ // This should break if QMetaTypeInterface is not a POD type + QMetaTypeInterface iface; +}; +} + Q_DECLARE_TYPEINFO(QCustomTypeInfo, Q_MOVABLE_TYPE); Q_GLOBAL_STATIC(QVector, customTypes) Q_GLOBAL_STATIC(QReadWriteLock, customTypesLock) @@ -454,6 +462,10 @@ int QMetaType::registerType(const char *typeName, Deleter deleter, inf.typeName = normalizedTypeName; inf.creator = creator; inf.deleter = deleter; +#ifndef QT_NO_DATASTREAM + inf.loadOp = 0; + inf.saveOp = 0; +#endif inf.alias = -1; inf.constructor = constructor; inf.destructor = destructor; diff --git a/src/corelib/kernel/qmetatype_p.h b/src/corelib/kernel/qmetatype_p.h index 92311afc8e..448c6ded13 100644 --- a/src/corelib/kernel/qmetatype_p.h +++ b/src/corelib/kernel/qmetatype_p.h @@ -113,7 +113,7 @@ QT_FOR_EACH_STATIC_WIDGETS_CLASS(QT_DECLARE_WIDGETS_MODULE_TYPES_ITER) class QMetaTypeInterface { -private: +public: template struct Impl { static void *creator(const T *t) @@ -140,31 +140,6 @@ private: return new (where) T; } }; -public: - template - explicit QMetaTypeInterface(T *) - : creator(reinterpret_cast(Impl::creator)) - , deleter(reinterpret_cast(Impl::deleter)) - #ifndef QT_NO_DATASTREAM - , saveOp(reinterpret_cast(Impl::saver)) - , loadOp(reinterpret_cast(Impl::loader)) - #endif - , constructor(reinterpret_cast(Impl::constructor)) - , destructor(reinterpret_cast(Impl::destructor)) - , size(sizeof(T)) - {} - - QMetaTypeInterface() - : creator(0) - , deleter(0) - #ifndef QT_NO_DATASTREAM - , saveOp(0) - , loadOp(0) - #endif - , constructor(0) - , destructor(0) - , size(0) - {} QMetaType::Creator creator; QMetaType::Deleter deleter; @@ -177,6 +152,24 @@ public: int size; }; +#ifndef QT_NO_DATASTREAM +# define QT_METATYPE_INTERFACE_INIT_DATASTREAM_IMPL(Type) \ + /*saveOp*/(reinterpret_cast(QMetaTypeInterface::Impl::saver)), \ + /*loadOp*/(reinterpret_cast(QMetaTypeInterface::Impl::loader)), +#else +# define QT_METATYPE_INTERFACE_INIT_DATASTREAM_IMPL(Type) +#endif + +#define QT_METATYPE_INTERFACE_INIT(Type) \ +{ \ + /*creator*/(reinterpret_cast(QMetaTypeInterface::Impl::creator)), \ + /*deleter*/(reinterpret_cast(QMetaTypeInterface::Impl::deleter)), \ + QT_METATYPE_INTERFACE_INIT_DATASTREAM_IMPL(Type) \ + /*constructor*/(reinterpret_cast(QMetaTypeInterface::Impl::constructor)), \ + /*destructor*/(reinterpret_cast(QMetaTypeInterface::Impl::destructor)), \ + /*size*/(sizeof(Type)) \ +} + QT_END_NAMESPACE #endif // QMETATYPE_P_H diff --git a/src/gui/kernel/qguivariant.cpp b/src/gui/kernel/qguivariant.cpp index 3b60f29e83..a7f2f83aab 100644 --- a/src/gui/kernel/qguivariant.cpp +++ b/src/gui/kernel/qguivariant.cpp @@ -477,7 +477,7 @@ const QVariant::Handler qt_gui_variant_handler = { extern Q_CORE_EXPORT const QMetaTypeInterface *qMetaTypeGuiHelper; #define QT_IMPL_METATYPEINTERFACE_GUI_TYPES(MetaTypeName, MetaTypeId, RealName) \ - QMetaTypeInterface(static_cast(0)), + QT_METATYPE_INTERFACE_INIT(RealName), static const QMetaTypeInterface qVariantGuiHelper[] = { QT_FOR_EACH_STATIC_GUI_CLASS(QT_IMPL_METATYPEINTERFACE_GUI_TYPES) diff --git a/src/widgets/kernel/qwidgetsvariant.cpp b/src/widgets/kernel/qwidgetsvariant.cpp index 18fec508ea..97a8238ca7 100644 --- a/src/widgets/kernel/qwidgetsvariant.cpp +++ b/src/widgets/kernel/qwidgetsvariant.cpp @@ -141,7 +141,7 @@ static const QVariant::Handler widgets_handler = { extern Q_CORE_EXPORT const QMetaTypeInterface *qMetaTypeWidgetsHelper; #define QT_IMPL_METATYPEINTERFACE_WIDGETS_TYPES(MetaTypeName, MetaTypeId, RealName) \ - QMetaTypeInterface(static_cast(0)), + QT_METATYPE_INTERFACE_INIT(RealName), static const QMetaTypeInterface qVariantWidgetsHelper[] = { QT_FOR_EACH_STATIC_WIDGETS_CLASS(QT_IMPL_METATYPEINTERFACE_WIDGETS_TYPES) -- cgit v1.2.3 From 5fb4bf89874e6f3b407e70978ef5cfaa8d100fbc Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Sat, 17 Dec 2011 00:46:11 +0100 Subject: Include the extras files after defining the target. Allows the extras file to contain references to the target. Change-Id: I47332c4efcb7ba0132509a41fa3040531cd1c81f Reviewed-by: Alexander Neundorf Reviewed-by: Stephen Kelly --- mkspecs/cmake/Qt5BasicConfig.cmake.in | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/mkspecs/cmake/Qt5BasicConfig.cmake.in b/mkspecs/cmake/Qt5BasicConfig.cmake.in index 4435b79a38..55f7909ad6 100644 --- a/mkspecs/cmake/Qt5BasicConfig.cmake.in +++ b/mkspecs/cmake/Qt5BasicConfig.cmake.in @@ -14,14 +14,6 @@ set(Qt5$${CMAKE_MODULE_NAME}_COMPILE_DEFINITIONS QT_\${_CMAKE_MODULE_NAME_UPPER} set(_Qt5_MODULE_DEPENDENCIES \"$${CMAKE_MODULE_DEPS}\") -if (NOT \"$${CMAKE_MODULE_EXTRAS}\" STREQUAL \"\") - include(\"${CMAKE_CURRENT_LIST_DIR}/Qt5$${CMAKE_MODULE_NAME}ConfigExtras.cmake\") -endif() - -if (NOT \"$${CMAKE_MODULE_MACROS}\" STREQUAL \"\") - include(\"${CMAKE_CURRENT_LIST_DIR}/Qt5$${CMAKE_MODULE_NAME}Macros.cmake\") -endif() - if (NOT _Qt5$${CMAKE_MODULE_NAME}_target) set(_Qt5$${CMAKE_MODULE_NAME}_target 1) add_library(Qt5::$${CMAKE_MODULE_NAME} SHARED IMPORTED) @@ -55,3 +47,11 @@ if (NOT \"$${release_type}\" STREQUAL \"\") ) endif() endif() + +if (NOT \"$${CMAKE_MODULE_EXTRAS}\" STREQUAL \"\") + include(\"${CMAKE_CURRENT_LIST_DIR}/Qt5$${CMAKE_MODULE_NAME}ConfigExtras.cmake\") +endif() + +if (NOT \"$${CMAKE_MODULE_MACROS}\" STREQUAL \"\") + include(\"${CMAKE_CURRENT_LIST_DIR}/Qt5$${CMAKE_MODULE_NAME}Macros.cmake\") +endif() -- cgit v1.2.3 From c023f5600a161e95a9077aba402a57aa2855cb07 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Sat, 17 Dec 2011 11:42:11 +0100 Subject: Remove plugin related variables from the CMake files. It doesn't currently have any effect and needs to be re-thought anyway. Change-Id: I6e620ca5b341264bbf5279a19e8f25af8fa7d396 Reviewed-by: Alexander Neundorf Reviewed-by: Stephen Kelly --- src/corelib/Qt5CoreConfigExtras.cmake.in | 4 ---- src/gui/Qt5GuiConfigExtras.cmake.in | 4 ---- 2 files changed, 8 deletions(-) delete mode 100644 src/gui/Qt5GuiConfigExtras.cmake.in diff --git a/src/corelib/Qt5CoreConfigExtras.cmake.in b/src/corelib/Qt5CoreConfigExtras.cmake.in index de24287c4c..e97493f65d 100644 --- a/src/corelib/Qt5CoreConfigExtras.cmake.in +++ b/src/corelib/Qt5CoreConfigExtras.cmake.in @@ -5,7 +5,3 @@ get_filename_component(_qt5_corelib_install_prefix ${CMAKE_CURRENT_LIST_DIR}/$${ set(QT_QMAKE_EXECUTABLE \"${_qt5_corelib_install_prefix}/$$CMAKE_BIN_DIR/qmake$$CMAKE_BIN_SUFFIX\") set(QT_MOC_EXECUTABLE \"${_qt5_corelib_install_prefix}/$$CMAKE_BIN_DIR/moc$$CMAKE_BIN_SUFFIX\") set(QT_RCC_EXECUTABLE \"${_qt5_corelib_install_prefix}/$$CMAKE_BIN_DIR/rcc$$CMAKE_BIN_SUFFIX\") - -set(Qt5Core_PLUGIN_TYPES codecs) - -set(Qt5_CODECS_PLUGINS qcncodecs qjpcodecs qkrcodecs qtwcodecs ) diff --git a/src/gui/Qt5GuiConfigExtras.cmake.in b/src/gui/Qt5GuiConfigExtras.cmake.in deleted file mode 100644 index 8ddfd45060..0000000000 --- a/src/gui/Qt5GuiConfigExtras.cmake.in +++ /dev/null @@ -1,4 +0,0 @@ - -set(Qt5Gui_PLUGIN_TYPES imageformats) - -set(Qt5_IMAGEFORMATS_PLUGINS qgif qjpeg qmng qico qtiff) -- cgit v1.2.3 From 7e12d2d30f74b5fe1f80fac7192416cf6eb22d4d Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Thu, 15 Dec 2011 17:43:48 +0100 Subject: Change a slot into a virtual method. Implements a BiC Qt5 TODO. Change-Id: Ie7dc32d954335019166dbd78d8b01ef79e2ad5c2 Reviewed-by: Robin Burchell Reviewed-by: Olivier Goffart --- src/widgets/itemviews/qabstractitemdelegate.cpp | 1 - src/widgets/itemviews/qabstractitemdelegate.h | 9 ++++----- src/widgets/itemviews/qabstractitemview.cpp | 14 +++++--------- 3 files changed, 9 insertions(+), 15 deletions(-) diff --git a/src/widgets/itemviews/qabstractitemdelegate.cpp b/src/widgets/itemviews/qabstractitemdelegate.cpp index bdc5d69f56..514e98ed2f 100644 --- a/src/widgets/itemviews/qabstractitemdelegate.cpp +++ b/src/widgets/itemviews/qabstractitemdelegate.cpp @@ -347,7 +347,6 @@ QString QAbstractItemDelegate::elidedText(const QFontMetrics &fontMetrics, int w \sa QHelpEvent */ -// ### Qt 5: Make this a virtual non-slot function bool QAbstractItemDelegate::helpEvent(QHelpEvent *event, QAbstractItemView *view, const QStyleOptionViewItem &option, diff --git a/src/widgets/itemviews/qabstractitemdelegate.h b/src/widgets/itemviews/qabstractitemdelegate.h index f494f0b8c8..a4859f2ff0 100644 --- a/src/widgets/itemviews/qabstractitemdelegate.h +++ b/src/widgets/itemviews/qabstractitemdelegate.h @@ -108,11 +108,10 @@ public: static QString elidedText(const QFontMetrics &fontMetrics, int width, Qt::TextElideMode mode, const QString &text); -public Q_SLOTS: - bool helpEvent(QHelpEvent *event, - QAbstractItemView *view, - const QStyleOptionViewItem &option, - const QModelIndex &index); + virtual bool helpEvent(QHelpEvent *event, + QAbstractItemView *view, + const QStyleOptionViewItem &option, + const QModelIndex &index); Q_SIGNALS: void commitData(QWidget *editor); diff --git a/src/widgets/itemviews/qabstractitemview.cpp b/src/widgets/itemviews/qabstractitemview.cpp index 06544e3146..0776ca61f0 100644 --- a/src/widgets/itemviews/qabstractitemview.cpp +++ b/src/widgets/itemviews/qabstractitemview.cpp @@ -1658,15 +1658,11 @@ bool QAbstractItemView::viewportEvent(QEvent *event) QStyleOptionViewItemV4 option = d->viewOptionsV4(); option.rect = visualRect(index); option.state |= (index == currentIndex() ? QStyle::State_HasFocus : QStyle::State_None); - bool retval = false; - // ### Qt 5: make this a normal function call to a virtual function - QMetaObject::invokeMethod(d->delegateForIndex(index), "helpEvent", - Q_RETURN_ARG(bool, retval), - Q_ARG(QHelpEvent *, he), - Q_ARG(QAbstractItemView *, this), - Q_ARG(QStyleOptionViewItem, option), - Q_ARG(QModelIndex, index)); - return retval; + + QAbstractItemDelegate *delegate = d->delegateForIndex(index); + if (!delegate) + return false; + return delegate->helpEvent(he, this, option, index); } case QEvent::FontChange: d->doDelayedItemsLayout(); // the size of the items will change -- cgit v1.2.3 From 74c9f9d83f9f5cb934d0b62b468c74df5a3b9a0d Mon Sep 17 00:00:00 2001 From: Frederik Gladhorn Date: Tue, 22 Nov 2011 18:08:05 +0100 Subject: Accessibility: childAt returns interface MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit childAt used to return an integer. Return an interface instead. Not requiring a direct child to be returned allows optimizing by bypassing iterating through the hierarchy of accessibles. For QtQuick this is the only sensible way of implementing this. The bridges are still responsible for finding the top-most element. The default implementation in QAccessibleObject is sufficient to return direct children. The implementation in QAccessibleApplication is therfore no longer needed. Change-Id: Id7100dd5bcc3a98de516a7f4a12eaaa41cb46d26 Reviewed-by: Morten Johan Sørvig --- src/gui/accessible/qaccessible.cpp | 20 +++++---- src/gui/accessible/qaccessible.h | 2 +- src/gui/accessible/qaccessibleobject.cpp | 25 ++++++----- src/gui/accessible/qaccessibleobject.h | 2 +- src/plugins/accessible/widgets/complexwidgets.cpp | 46 ++++++++------------- src/plugins/accessible/widgets/complexwidgets.h | 4 +- src/plugins/accessible/widgets/itemviews.cpp | 12 +++--- src/plugins/accessible/widgets/itemviews.h | 10 ++--- src/plugins/accessible/widgets/qaccessiblemenu.cpp | 11 +++-- src/plugins/accessible/widgets/qaccessiblemenu.h | 10 ++--- .../accessible/widgets/qaccessiblewidgets.cpp | 48 +++++++--------------- .../accessible/widgets/qaccessiblewidgets.h | 7 ++-- .../platforms/cocoa/qcocoaaccessibilityelement.mm | 16 ++++---- .../platforms/cocoa/qnsviewaccessibility.mm | 31 ++++---------- .../platforms/windows/qwindowsaccessibility.cpp | 24 ++++++----- src/widgets/accessible/qaccessiblewidget.cpp | 22 ---------- src/widgets/accessible/qaccessiblewidget.h | 1 - .../other/qaccessibility/tst_qaccessibility.cpp | 40 +++++++++++------- .../accessibilityinspector.cpp | 3 -- .../accessibilityinspector.h | 2 - .../accessibilityscenemanager.cpp | 4 +- util/accessibilityinspector/screenreader.cpp | 3 +- 22 files changed, 142 insertions(+), 201 deletions(-) diff --git a/src/gui/accessible/qaccessible.cpp b/src/gui/accessible/qaccessible.cpp index c65e7df327..7c23ede6fc 100644 --- a/src/gui/accessible/qaccessible.cpp +++ b/src/gui/accessible/qaccessible.cpp @@ -740,8 +740,11 @@ void QAccessible::updateAccessibility(QObject *o, int who, Event reason) The functions childCount() and indexOfChild() return the number of children of an accessible object and the index a child object has - in its parent. The childAt() function returns the index of a child - at a given position. + in its parent. The childAt() function returns a child QAccessibleInterface + that is found at a position. The child does not have to be a direct + child. This allows bypassing intermediate layers when the parent already knows the + top-most child. childAt() is used for hit testing (finding the object + under the mouse). The relationTo() function provides information about how two different objects relate to each other, and navigate() allows @@ -875,18 +878,21 @@ QVector > QAccessibleInterfa } /*! - \fn int QAccessibleInterface::childAt(int x, int y) const + \fn QAccessibleInterface *QAccessibleInterface::childAt(int x, int y) const - Returns the 1-based index of the child that contains the screen - coordinates (\a x, \a y). This function returns 0 if the point is - positioned on the object itself. If the tested point is outside - the boundaries of the object this function returns -1. + Returns the QAccessibleInterface of a child that contains the screen coordinates (\a x, \a y). + If there are no children at this position this function returns 0. + The returned accessible must be a child, but not necessarily a direct child. This function is only relyable for visible objects (invisible object might not be laid out correctly). All visual objects provide this information. + A default implementation is provided for objects inheriting QAccessibleObject. This will iterate + over all children. If the widget manages its children (e.g. a table) it will be more efficient + to write a specialized implementation. + \sa rect() */ diff --git a/src/gui/accessible/qaccessible.h b/src/gui/accessible/qaccessible.h index 6ee1885a3d..3831b7d8e1 100644 --- a/src/gui/accessible/qaccessible.h +++ b/src/gui/accessible/qaccessible.h @@ -369,7 +369,7 @@ public: virtual QAccessible::Relation relationTo(const QAccessibleInterface *other) const; virtual QVector > relations() const; - virtual int childAt(int x, int y) const = 0; + virtual QAccessibleInterface *childAt(int x, int y) const = 0; // navigation, hierarchy virtual QAccessibleInterface *parent() const = 0; diff --git a/src/gui/accessible/qaccessibleobject.cpp b/src/gui/accessible/qaccessibleobject.cpp index 18941437fe..b3e9479013 100644 --- a/src/gui/accessible/qaccessibleobject.cpp +++ b/src/gui/accessible/qaccessibleobject.cpp @@ -154,6 +154,18 @@ void QAccessibleObject::setText(QAccessible::Text, const QString &) { } +/*! \reimp */ +QAccessibleInterface *QAccessibleObject::childAt(int x, int y) const +{ + for (int i = 0; i < childCount(); ++i) { + QAccessibleInterface *childIface = child(i); + if (childIface->rect().contains(x,y)) { + return childIface; + } + } + return 0; +} + /*! \class QAccessibleApplication \brief The QAccessibleApplication class implements the QAccessibleInterface for QApplication. @@ -213,19 +225,6 @@ int QAccessibleApplication::indexOfChild(const QAccessibleInterface *child) cons return index; } -/*! \reimp */ -int QAccessibleApplication::childAt(int x, int y) const -{ - for (int i = 0; i < childCount(); ++i) { - QAccessibleInterface *childIface = child(i); - QRect geom = childIface->rect(); - if (geom.contains(x,y)) - return i+1; - delete childIface; - } - return rect().contains(x,y) ? 0 : -1; -} - /*! \reimp */ QAccessible::Relation QAccessibleApplication::relationTo(const QAccessibleInterface *other) const { diff --git a/src/gui/accessible/qaccessibleobject.h b/src/gui/accessible/qaccessibleobject.h index f2a9fd0430..ac385fcc39 100644 --- a/src/gui/accessible/qaccessibleobject.h +++ b/src/gui/accessible/qaccessibleobject.h @@ -67,6 +67,7 @@ public: // properties QRect rect() const; void setText(QAccessible::Text t, const QString &text); + QAccessibleInterface *childAt(int x, int y) const; protected: virtual ~QAccessibleObject(); @@ -89,7 +90,6 @@ public: // navigation QAccessibleInterface *parent() const; - int childAt(int x, int y) const; QAccessibleInterface *child(int index) const; int navigate(QAccessible::RelationFlag, int, QAccessibleInterface **) const; diff --git a/src/plugins/accessible/widgets/complexwidgets.cpp b/src/plugins/accessible/widgets/complexwidgets.cpp index 91f13676d3..5f62ab1506 100644 --- a/src/plugins/accessible/widgets/complexwidgets.cpp +++ b/src/plugins/accessible/widgets/complexwidgets.cpp @@ -1483,7 +1483,7 @@ public: bool isValid() const { return true; }// (!m_parent.isNull()) && m_parent->count() > m_index; } - int childAt(int, int) const { return 0; } + QAccessibleInterface *childAt(int, int) const { return 0; } int childCount() const { return 0; } int indexOfChild(const QAccessibleInterface *) const { return -1; } @@ -1661,7 +1661,7 @@ QComboBox *QAccessibleComboBox::comboBox() const return qobject_cast(object()); } -QAccessibleInterface* QAccessibleComboBox::child(int index) const +QAccessibleInterface *QAccessibleComboBox::child(int index) const { if (index == 0) { QAbstractItemView *view = comboBox()->view(); @@ -1679,10 +1679,10 @@ int QAccessibleComboBox::childCount() const return comboBox()->isEditable() ? 2 : 1; } -int QAccessibleComboBox::childAt(int x, int y) const +QAccessibleInterface *QAccessibleComboBox::childAt(int x, int y) const { if (comboBox()->isEditable() && comboBox()->lineEdit()->rect().contains(x, y)) - return 1; + return child(1); return 0; } @@ -1925,31 +1925,19 @@ int QAccessibleAbstractScrollArea::navigate(QAccessible::RelationFlag relation, return *target ? 0: -1; } -//int QAccessibleAbstractScrollArea::childAt(int x, int y) const -//{ -// if (!abstractScrollArea()->isVisible()) -// return -1; -//#if 0 -// const QRect globalSelfGeometry = rect(Self); -// if (!globalSelfGeometry.isValid() || !globalSelfGeometry.contains(QPoint(x, y))) -// return -1; -// const QWidgetList children = accessibleChildren(); -// for (int i = 0; i < children.count(); ++i) { -// const QWidget *child = children.at(i); -// const QRect globalChildGeometry = QRect(child->mapToGlobal(QPoint(0, 0)), child->size()); -// if (globalChildGeometry.contains(QPoint(x, y))) { -// return ++i; -// } -// } -// return 0; -//#else -// for (int i = childCount(); i >= 0; --i) { -// if (rect().contains(x, y)) -// return i; -// } -// return -1; -//#endif -//} +QAccessibleInterface *QAccessibleAbstractScrollArea::childAt(int x, int y) const +{ + if (!abstractScrollArea()->isVisible()) + return 0; + + for (int i = 0; i < childCount(); ++i) { + QPoint wpos = accessibleChildren().at(i)->mapToGlobal(QPoint(0, 0)); + QRect rect = QRect(wpos, accessibleChildren().at(i)->size()); + if (rect.contains(x, y)) + return child(i); + } + return 0; +} QAbstractScrollArea *QAccessibleAbstractScrollArea::abstractScrollArea() const { diff --git a/src/plugins/accessible/widgets/complexwidgets.h b/src/plugins/accessible/widgets/complexwidgets.h index 2e80e24e0f..1a69178a87 100644 --- a/src/plugins/accessible/widgets/complexwidgets.h +++ b/src/plugins/accessible/widgets/complexwidgets.h @@ -80,7 +80,7 @@ public: int indexOfChild(const QAccessibleInterface *child) const; bool isValid() const; int navigate(QAccessible::RelationFlag relation, int entry, QAccessibleInterface **target) const; -// int childAt(int x, int y) const; + QAccessibleInterface *childAt(int x, int y) const; //protected: QAbstractScrollArea *abstractScrollArea() const; @@ -255,7 +255,7 @@ public: explicit QAccessibleComboBox(QWidget *w); int childCount() const; - int childAt(int x, int y) const; + QAccessibleInterface *childAt(int x, int y) const; int indexOfChild(const QAccessibleInterface *child) const; QAccessibleInterface* child(int index) const; diff --git a/src/plugins/accessible/widgets/itemviews.cpp b/src/plugins/accessible/widgets/itemviews.cpp index 87956b139f..03f9afe275 100644 --- a/src/plugins/accessible/widgets/itemviews.cpp +++ b/src/plugins/accessible/widgets/itemviews.cpp @@ -366,7 +366,7 @@ QAccessible::State QAccessibleTable::state() const return QAccessible::Normal; } -int QAccessibleTable::childAt(int x, int y) const +QAccessibleInterface *QAccessibleTable::childAt(int x, int y) const { QPoint viewportOffset = view->viewport()->mapTo(view, QPoint(0,0)); QPoint indexPosition = view->mapFromGlobal(QPoint(x, y) - viewportOffset); @@ -374,9 +374,9 @@ int QAccessibleTable::childAt(int x, int y) const QModelIndex index = view->indexAt(indexPosition); if (index.isValid()) { - return logicalIndex(index); + return childFromLogical(logicalIndex(index)); } - return -1; + return 0; } int QAccessibleTable::childCount() const @@ -489,14 +489,14 @@ QModelIndex QAccessibleTree::indexFromLogical(int row, int column) const return modelIndex; } -int QAccessibleTree::childAt(int x, int y) const +QAccessibleInterface *QAccessibleTree::childAt(int x, int y) const { QPoint viewportOffset = view->viewport()->mapTo(view, QPoint(0,0)); QPoint indexPosition = view->mapFromGlobal(QPoint(x, y) - viewportOffset); QModelIndex index = view->indexAt(indexPosition); if (!index.isValid()) - return -1; + return 0; const QTreeView *treeView = qobject_cast(view); int row = treeView->d_func()->viewIndex(index) + (horizontalHeader() ? 1 : 0); @@ -504,7 +504,7 @@ int QAccessibleTree::childAt(int x, int y) const int i = row * view->model()->columnCount() + column + 1; Q_ASSERT(i > view->model()->columnCount()); - return i; + return child(i - 1); } int QAccessibleTree::childCount() const diff --git a/src/plugins/accessible/widgets/itemviews.h b/src/plugins/accessible/widgets/itemviews.h index 9f95285d16..be309e61a7 100644 --- a/src/plugins/accessible/widgets/itemviews.h +++ b/src/plugins/accessible/widgets/itemviews.h @@ -71,7 +71,7 @@ public: QString text(QAccessible::Text t) const; QRect rect() const; - int childAt(int x, int y) const; + QAccessibleInterface *childAt(int x, int y) const; int childCount() const; int indexOfChild(const QAccessibleInterface *) const; @@ -153,7 +153,7 @@ public: virtual ~QAccessibleTree() {} - int childAt(int x, int y) const; + QAccessibleInterface *childAt(int x, int y) const; int childCount() const; int indexOfChild(const QAccessibleInterface *) const; @@ -184,7 +184,7 @@ public: QRect rect() const; bool isValid() const; - int childAt(int, int) const { return 0; } + QAccessibleInterface *childAt(int, int) const { return 0; } int childCount() const { return 0; } int indexOfChild(const QAccessibleInterface *) const { return -1; } @@ -231,7 +231,7 @@ public: QRect rect() const; bool isValid() const; - int childAt(int, int) const { return 0; } + QAccessibleInterface *childAt(int, int) const { return 0; } int childCount() const { return 0; } int indexOfChild(const QAccessibleInterface *) const { return -1; } @@ -268,7 +268,7 @@ public: QRect rect() const { return QRect(); } bool isValid() const { return true; } - int childAt(int, int) const { return 0; } + QAccessibleInterface *childAt(int, int) const { return 0; } int childCount() const { return 0; } int indexOfChild(const QAccessibleInterface *) const { return -1; } diff --git a/src/plugins/accessible/widgets/qaccessiblemenu.cpp b/src/plugins/accessible/widgets/qaccessiblemenu.cpp index 2fe67fedfe..95c5c05097 100644 --- a/src/plugins/accessible/widgets/qaccessiblemenu.cpp +++ b/src/plugins/accessible/widgets/qaccessiblemenu.cpp @@ -71,12 +71,12 @@ int QAccessibleMenu::childCount() const return menu()->actions().count(); } -int QAccessibleMenu::childAt(int x, int y) const +QAccessibleInterface *QAccessibleMenu::childAt(int x, int y) const { QAction *act = menu()->actionAt(menu()->mapFromGlobal(QPoint(x,y))); if(act && act->isSeparator()) act = 0; - return menu()->actions().indexOf(act) + 1; + return act ? new QAccessibleMenuItem(menu(), act) : 0; } QString QAccessibleMenu::text(QAccessible::Text t) const @@ -193,17 +193,16 @@ QAccessibleMenuItem::QAccessibleMenuItem(QWidget *owner, QAction *action) QAccessibleMenuItem::~QAccessibleMenuItem() {} -int QAccessibleMenuItem::childAt(int x, int y ) const +QAccessibleInterface *QAccessibleMenuItem::childAt(int x, int y ) const { for (int i = childCount(); i >= 0; --i) { QAccessibleInterface *childInterface = child(i); if (childInterface->rect().contains(x,y)) { - delete childInterface; - return i; + return childInterface; } delete childInterface; } - return -1; + return 0; } int QAccessibleMenuItem::childCount() const diff --git a/src/plugins/accessible/widgets/qaccessiblemenu.h b/src/plugins/accessible/widgets/qaccessiblemenu.h index cf6a703b0c..4ce161309b 100644 --- a/src/plugins/accessible/widgets/qaccessiblemenu.h +++ b/src/plugins/accessible/widgets/qaccessiblemenu.h @@ -59,7 +59,7 @@ public: explicit QAccessibleMenu(QWidget *w); int childCount() const; - int childAt(int x, int y) const; + QAccessibleInterface *childAt(int x, int y) const; QString text(QAccessible::Text t) const; QAccessible::Role role() const; @@ -95,13 +95,13 @@ class QAccessibleMenuItem : public QAccessibleInterface, public QAccessibleActio public: explicit QAccessibleMenuItem(QWidget *owner, QAction *w); - virtual ~QAccessibleMenuItem(); - + ~QAccessibleMenuItem(); void *interface_cast(QAccessible::InterfaceType t); - int childAt(int x, int y) const; + int childCount() const; - int indexOfChild(const QAccessibleInterface * child) const; + QAccessibleInterface *childAt(int x, int y) const; bool isValid() const; + int indexOfChild(const QAccessibleInterface * child) const; QAccessibleInterface *parent() const; QAccessibleInterface *child(int index) const; diff --git a/src/plugins/accessible/widgets/qaccessiblewidgets.cpp b/src/plugins/accessible/widgets/qaccessiblewidgets.cpp index 7387e2ea53..1e74de6ffd 100644 --- a/src/plugins/accessible/widgets/qaccessiblewidgets.cpp +++ b/src/plugins/accessible/widgets/qaccessiblewidgets.cpp @@ -722,17 +722,17 @@ QVariant QAccessibleStackedWidget::invokeMethod(QAccessible::Method, const QVari } -int QAccessibleStackedWidget::childAt(int x, int y) const +QAccessibleInterface *QAccessibleStackedWidget::childAt(int x, int y) const { if (!stackedWidget()->isVisible()) - return -1; + return 0; QWidget *currentWidget = stackedWidget()->currentWidget(); if (!currentWidget) - return -1; + return 0; QPoint position = currentWidget->mapFromGlobal(QPoint(x, y)); if (currentWidget->rect().contains(position)) - return 1; - return -1; + return child(stackedWidget()->currentIndex()); + return 0; } int QAccessibleStackedWidget::childCount() const @@ -953,25 +953,6 @@ QRect QAccessibleMdiSubWindow::rect() const return QRect(pos, mdiSubWindow()->size()); } -int QAccessibleMdiSubWindow::childAt(int x, int y) const -{ - if (!mdiSubWindow()->isVisible()) - return -1; - if (!mdiSubWindow()->parent()) - return QAccessibleWidget::childAt(x, y); - const QRect globalGeometry = rect(); - if (!globalGeometry.isValid()) - return -1; - QAccessibleInterface *childIface = child(0); - const QRect globalChildGeometry = childIface->rect(); - delete childIface; - if (globalChildGeometry.isValid() && globalChildGeometry.contains(QPoint(x, y))) - return 1; - if (globalGeometry.contains(QPoint(x, y))) - return 0; - return -1; -} - QMdiSubWindow *QAccessibleMdiSubWindow::mdiSubWindow() const { return static_cast(object()); @@ -1344,17 +1325,16 @@ QRect QAccessibleTitleBar::rect() const return rect; } -int QAccessibleTitleBar::childAt(int x, int y) const +QAccessibleInterface *QAccessibleTitleBar::childAt(int x, int y) const { - for (int i = childCount(); i >= 0; --i) { - QAccessibleInterface *childIface = child(i - 1); + for (int i = 0; i < childCount(); ++i) { + QAccessibleInterface *childIface = child(i); if (childIface->rect().contains(x,y)) { - delete childIface; - return i; + return childIface; } delete childIface; } - return -1; + return 0; } QObject *QAccessibleTitleBar::object() const @@ -1463,21 +1443,21 @@ int QAccessibleMainWindow::indexOfChild(const QAccessibleInterface *iface) const return childIndex == -1 ? -1 : ++childIndex; } -int QAccessibleMainWindow::childAt(int x, int y) const +QAccessibleInterface *QAccessibleMainWindow::childAt(int x, int y) const { QWidget *w = widget(); if (!w->isVisible()) - return -1; + return 0; QPoint gp = w->mapToGlobal(QPoint(0, 0)); if (!QRect(gp.x(), gp.y(), w->width(), w->height()).contains(x, y)) - return -1; + return 0; QWidgetList kids = childWidgets(mainWindow(), true); QPoint rp = mainWindow()->mapFromGlobal(QPoint(x, y)); for (int i = 0; i < kids.size(); ++i) { QWidget *child = kids.at(i); if (!child->isWindow() && !child->isHidden() && child->geometry().contains(rp)) { - return i + 1; + return QAccessible::queryAccessibleInterface(child); } } return 0; diff --git a/src/plugins/accessible/widgets/qaccessiblewidgets.h b/src/plugins/accessible/widgets/qaccessiblewidgets.h index e8c2e6ddf5..a544fd941c 100644 --- a/src/plugins/accessible/widgets/qaccessiblewidgets.h +++ b/src/plugins/accessible/widgets/qaccessiblewidgets.h @@ -122,7 +122,7 @@ public: explicit QAccessibleStackedWidget(QWidget *widget); QVariant invokeMethod(QAccessible::Method method, const QVariantList ¶ms); - int childAt(int x, int y) const; + QAccessibleInterface *childAt(int x, int y) const; int childCount() const; int indexOfChild(const QAccessibleInterface *child) const; QAccessibleInterface *child(int index) const; @@ -173,7 +173,6 @@ public: int indexOfChild(const QAccessibleInterface *child) const; int navigate(QAccessible::RelationFlag relation, int entry, QAccessibleInterface **target) const; QRect rect() const; - int childAt(int x, int y) const; protected: QMdiSubWindow *mdiSubWindow() const; @@ -261,12 +260,12 @@ public: int indexOfChild(const QAccessibleInterface *child) const; int childCount() const; QAccessible::Relation relationTo(const QAccessibleInterface *other) const; + QAccessibleInterface *childAt(int x, int y) const; void setText(QAccessible::Text t, const QString &text); QString text(QAccessible::Text t) const; QAccessible::Role role() const; QRect rect () const; QAccessible::State state() const; - int childAt(int x, int y) const; QObject *object() const; bool isValid() const; @@ -287,7 +286,7 @@ public: QAccessibleInterface *child(int index) const; int childCount() const; int indexOfChild(const QAccessibleInterface *iface) const; - int childAt(int x, int y) const; + QAccessibleInterface *childAt(int x, int y) const; QMainWindow *mainWindow() const; QVariant invokeMethod(QAccessible::Method method, const QVariantList ¶ms); diff --git a/src/plugins/platforms/cocoa/qcocoaaccessibilityelement.mm b/src/plugins/platforms/cocoa/qcocoaaccessibilityelement.mm index 332577d6e9..5ad9e57c31 100644 --- a/src/plugins/platforms/cocoa/qcocoaaccessibilityelement.mm +++ b/src/plugins/platforms/cocoa/qcocoaaccessibilityelement.mm @@ -197,21 +197,19 @@ static QAccessibleInterface *acast(void *ptr) } - (id)accessibilityHitTest:(NSPoint)point { - int index = acast(accessibleInterface)->childAt(point.x, qt_mac_flipYCoordinate(point.y)); - // hit outside - if (index == -1) { - return 0; - } + if (!accessibleInterface) + return NSAccessibilityUnignoredAncestor(self); + QAccessibleInterface *childInterface = acast(accessibleInterface)->childAt(point.x, qt_mac_flipYCoordinate(point.y)); - // hit this element - if (index == 0) { + // No child found, meaning we hit this element. + if (!childInterface) { return NSAccessibilityUnignoredAncestor(self); } // hit a child, forward to child accessible interface. - QAccessibleInterface *childInterface = acast(accessibleInterface)->child(index - 1); - QCocoaAccessibleElement *accessibleElement = [QCocoaAccessibleElement elementWithIndex:index - 1 parent:self accessibleInterface: childInterface]; + int childIndex = acast(accessibleInterface)->indexOfChild(childInterface); + QCocoaAccessibleElement *accessibleElement = [QCocoaAccessibleElement elementWithIndex:childIndex -1 parent:self accessibleInterface: childInterface]; return [accessibleElement accessibilityHitTest:point]; } diff --git a/src/plugins/platforms/cocoa/qnsviewaccessibility.mm b/src/plugins/platforms/cocoa/qnsviewaccessibility.mm index 327bace123..562ad4264a 100644 --- a/src/plugins/platforms/cocoa/qnsviewaccessibility.mm +++ b/src/plugins/platforms/cocoa/qnsviewaccessibility.mm @@ -83,34 +83,19 @@ } - (id)accessibilityHitTest:(NSPoint)point { + if (!m_accessibleRoot) + return [super accessibilityHitTest:point]; NSPoint windowPoint = [[self window] convertScreenToBase:point]; - NSPoint localPoint = [self convertPoint:windowPoint fromView:nil]; - - int index = -1; - if (m_accessibleRoot) { - index = m_accessibleRoot->childAt(point.x, qt_mac_flipYCoordinate(point.y)); - - // qDebug() << "root rect" << m_accessibleRoot->rect(); - // qDebug() << "hit screen" << point.x << qt_mac_flipYCoordinate(point.y) << index; - // if (index > 0) { - // qDebug() << "child name" << m_accessibleRoot->child(index - 1)->text(QAccessible::Name); - // qDebug() << "child rect" << m_accessibleRoot->child(index - 1)->rect(); - // } - } - // hit outside - if (index == -1) { + QAccessibleInterface *childInterface = m_accessibleRoot->childAt(point.x, qt_mac_flipYCoordinate(point.y)); + // No child found, meaning we hit the NSView + if (!childInterface) { return [super accessibilityHitTest:point]; } - // hit the NSView / top-level window - if (index == 0) { - QCocoaAccessibleElement *accessibleElement = [QCocoaAccessibleElement elementWithIndex:index parent:self accessibleInterface:(void*)m_accessibleRoot]; - return [accessibleElement accessibilityHitTest:point]; - } - - // hit a child, forward to child accessible interface. - QCocoaAccessibleElement *accessibleElement = [QCocoaAccessibleElement elementWithIndex:index - 1 parent:self accessibleInterface:(void*)m_accessibleRoot->child(index -1)]; + // Hit a child, forward to child accessible interface. + int childIndex = m_accessibleRoot->indexOfChild(childInterface); + QCocoaAccessibleElement *accessibleElement = [QCocoaAccessibleElement elementWithIndex:childIndex -1 parent:self accessibleInterface: childInterface]; return [accessibleElement accessibilityHitTest:point]; } diff --git a/src/plugins/platforms/windows/qwindowsaccessibility.cpp b/src/plugins/platforms/windows/qwindowsaccessibility.cpp index aa4507484d..53d7b33769 100644 --- a/src/plugins/platforms/windows/qwindowsaccessibility.cpp +++ b/src/plugins/platforms/windows/qwindowsaccessibility.cpp @@ -753,21 +753,23 @@ HRESULT STDMETHODCALLTYPE QWindowsAccessible::accHitTest(long xLeft, long yTop, if (!accessible->isValid()) return E_FAIL; - int control = accessible->childAt(xLeft, yTop); - if (control == -1) { + QAccessibleInterface *child = accessible->childAt(xLeft, yTop); + if (child == 0) { + // no child found, return this item if it contains the coordinates + if (accessible->rect().contains(xLeft, yTop)) { + IDispatch *iface = 0; + QueryInterface(IID_IDispatch, (void**)&iface); + if (iface) { + (*pvarID).vt = VT_DISPATCH; + (*pvarID).pdispVal = iface; + return S_OK; + } + } (*pvarID).vt = VT_EMPTY; return S_FALSE; } - QAccessibleInterface *acc = 0; - if (control) - accessible->navigate(QAccessible::Child, control, &acc); - if (!acc) { - (*pvarID).vt = VT_I4; - (*pvarID).lVal = control; - return S_OK; - } - QWindowsAccessible* wacc = new QWindowsAccessible(acc); + QWindowsAccessible* wacc = new QWindowsAccessible(child); IDispatch *iface = 0; wacc->QueryInterface(IID_IDispatch, (void**)&iface); if (iface) { diff --git a/src/widgets/accessible/qaccessiblewidget.cpp b/src/widgets/accessible/qaccessiblewidget.cpp index a1c53e934e..a2295f4749 100644 --- a/src/widgets/accessible/qaccessiblewidget.cpp +++ b/src/widgets/accessible/qaccessiblewidget.cpp @@ -221,28 +221,6 @@ QObject *QAccessibleWidget::parentObject() const return parent; } -/*! \reimp */ -int QAccessibleWidget::childAt(int x, int y) const -{ - QWidget *w = widget(); - if (!w->isVisible()) - return -1; - QPoint gp = w->mapToGlobal(QPoint(0, 0)); - if (!QRect(gp.x(), gp.y(), w->width(), w->height()).contains(x, y)) - return -1; - - for (int i = 0; i < childCount(); ++i) { - QAccessibleInterface *childIface = child(i); - bool found = false; - if (childIface->rect().contains(x, y)) - found = true; - delete childIface; - if (found) - return i + 1; - } - return 0; -} - /*! \reimp */ QRect QAccessibleWidget::rect() const { diff --git a/src/widgets/accessible/qaccessiblewidget.h b/src/widgets/accessible/qaccessiblewidget.h index b807dbc088..01730f7070 100644 --- a/src/widgets/accessible/qaccessiblewidget.h +++ b/src/widgets/accessible/qaccessiblewidget.h @@ -64,7 +64,6 @@ public: int indexOfChild(const QAccessibleInterface *child) const; QAccessible::Relation relationTo(const QAccessibleInterface *other) const; - int childAt(int x, int y) const; QRect rect() const; QAccessibleInterface *parent() const; diff --git a/tests/auto/other/qaccessibility/tst_qaccessibility.cpp b/tests/auto/other/qaccessibility/tst_qaccessibility.cpp index 2a838c0e3d..9b14fb9e22 100644 --- a/tests/auto/other/qaccessibility/tst_qaccessibility.cpp +++ b/tests/auto/other/qaccessibility/tst_qaccessibility.cpp @@ -89,7 +89,6 @@ static inline bool verifyChild(QWidget *child, QAccessibleInterface *interface, // QAccessibleInterface::indexOfChild(): // Verify that indexOfChild() returns an index equal to the index passed in int indexFromIndexOfChild = interface->indexOfChild(childInterface); - delete childInterface; if (indexFromIndexOfChild != index) { qWarning("tst_QAccessibility::verifyChild (indexOfChild()):"); qWarning() << "Expected:" << index; @@ -109,13 +108,21 @@ static inline bool verifyChild(QWidget *child, QAccessibleInterface *interface, // Calculate global child position and check that the interface // returns the correct index for that position. QPoint globalChildPos = child->mapToGlobal(QPoint(0, 0)); - int indexFromChildAt = interface->childAt(globalChildPos.x(), globalChildPos.y()); - if (indexFromChildAt != index) { + QAccessibleInterface *childAtInterface = interface->childAt(globalChildPos.x(), globalChildPos.y()); + if (!childAtInterface) { qWarning("tst_QAccessibility::verifyChild (childAt()):"); - qWarning() << "Expected:" << index; - qWarning() << "Actual: " << indexFromChildAt; + qWarning() << "Expected:" << childInterface; + qWarning() << "Actual: no child"; + return false; + } + if (childAtInterface->object() != childInterface->object()) { + qWarning("tst_QAccessibility::verifyChild (childAt()):"); + qWarning() << "Expected:" << childInterface; + qWarning() << "Actual: " << childAtInterface; return false; } + delete childInterface; + delete childAtInterface; // QAccessibleInterface::rect(): // Calculate global child geometry and check that the interface @@ -1931,11 +1938,14 @@ void tst_QAccessibility::mdiSubWindowTest() QCOMPARE(childRect(interface), QRect(globalWidgetPos, widgetGeometry.size())); // childAt - QCOMPARE(interface->childAt(-10, 0), -1); - QCOMPARE(interface->childAt(globalPos.x(), globalPos.y()), 0); - QCOMPARE(interface->childAt(globalWidgetPos.x(), globalWidgetPos.y()), 1); + QCOMPARE(interface->childAt(-10, 0), static_cast(0)); + QCOMPARE(interface->childAt(globalPos.x(), globalPos.y()), static_cast(0)); + QAccessibleInterface *child = interface->childAt(globalWidgetPos.x(), globalWidgetPos.y()); + QCOMPARE(child->role(), QAccessible::PushButton); + QCOMPARE(child->text(QAccessible::Name), QString("QAccessibilityTest")); + delete child; testWindow->widget()->hide(); - QCOMPARE(interface->childAt(globalWidgetPos.x(), globalWidgetPos.y()), 0); + QCOMPARE(interface->childAt(globalWidgetPos.x(), globalWidgetPos.y()), static_cast(0)); } QTestAccessibility::clearEvents(); @@ -2288,7 +2298,7 @@ void tst_QAccessibility::abstractScrollAreaTest() QAccessibleInterface *interface = QAccessible::queryAccessibleInterface(&abstractScrollArea); QVERIFY(interface); QVERIFY(!interface->rect().isValid()); - QCOMPARE(interface->childAt(200, 200), -1); + QCOMPARE(interface->childAt(200, 200), static_cast(0)); abstractScrollArea.resize(400, 400); abstractScrollArea.show(); @@ -2767,7 +2777,7 @@ void tst_QAccessibility::calendarWidgetTest() QVERIFY(interface); QCOMPARE(interface->role(), QAccessible::Table); QVERIFY(!interface->rect().isValid()); - QCOMPARE(interface->childAt(200, 200), -1); + QCOMPARE(interface->childAt(200, 200), static_cast(0)); calendarWidget.resize(400, 300); calendarWidget.show(); @@ -2903,9 +2913,11 @@ void tst_QAccessibility::dockWidgetTest() QPoint globalPos = dock1->mapToGlobal(QPoint(0,0)); globalPos.rx()+=5; //### query style globalPos.ry()+=5; - int entry = accDock1->childAt(globalPos.x(), globalPos.y()); //### - QCOMPARE(entry, 1); - QAccessibleInterface *accTitleBar = accDock1->child(entry - 1); + QAccessibleInterface *childAt = accDock1->childAt(globalPos.x(), globalPos.y()); //### + QCOMPARE(childAt->role(), QAccessible::TitleBar); + int index = accDock1->indexOfChild(childAt); + delete childAt; + QAccessibleInterface *accTitleBar = accDock1->child(index - 1); QCOMPARE(accTitleBar->role(), QAccessible::TitleBar); QCOMPARE(accDock1->indexOfChild(accTitleBar), 1); diff --git a/util/accessibilityinspector/accessibilityinspector.cpp b/util/accessibilityinspector/accessibilityinspector.cpp index d451ed4ac7..af7fd521e8 100644 --- a/util/accessibilityinspector/accessibilityinspector.cpp +++ b/util/accessibilityinspector/accessibilityinspector.cpp @@ -67,9 +67,6 @@ void accessibilityUpdateHandler(QObject *object, int who, QAccessible::Event rea if (updateHandlerRecursion) return; - if (!qobject_cast(object)) - return; - updateHandlerRecursion = true; if (sceneManager) { diff --git a/util/accessibilityinspector/accessibilityinspector.h b/util/accessibilityinspector/accessibilityinspector.h index 504fecd6b5..0ec25c94e0 100644 --- a/util/accessibilityinspector/accessibilityinspector.h +++ b/util/accessibilityinspector/accessibilityinspector.h @@ -64,8 +64,6 @@ public: void saveWindowGeometry(); signals: -public slots: - private: OptionsWidget *optionsWidget; MouseInterceptingGraphicsScene *accessibilityScene; diff --git a/util/accessibilityinspector/accessibilityscenemanager.cpp b/util/accessibilityinspector/accessibilityscenemanager.cpp index 9c987271fc..9387aa625d 100644 --- a/util/accessibilityinspector/accessibilityscenemanager.cpp +++ b/util/accessibilityinspector/accessibilityscenemanager.cpp @@ -158,7 +158,7 @@ void AccessibilitySceneManager::handleUpdate(QObject *object, QAccessible::Event m_animatedObjects.clear(); } else { - qDebug() << "other update" << object; +// qDebug() << "other update" << object; } } @@ -273,7 +273,7 @@ QGraphicsRectItem * AccessibilitySceneManager::processInterface(QAccessibleInter if (!m_rootItem) m_rootItem = item; - QString name = interface->text(QAccessibleInterface::Name); + QString name = interface->text(QAccessible::Name); QString description; // = interface->text(QAccessibleInterface::Description, child); QString role = translateRole(interface->role()); int childCount = interface->childCount(); diff --git a/util/accessibilityinspector/screenreader.cpp b/util/accessibilityinspector/screenreader.cpp index 3a73f21314..aa17bfb6ee 100644 --- a/util/accessibilityinspector/screenreader.cpp +++ b/util/accessibilityinspector/screenreader.cpp @@ -103,7 +103,7 @@ void ScreenReader::processTouchPoint() qDebug() << "touchPoint exit recursion overflow"; return; // outside } - +/* hit = currentInterface->childAt(m_currentTouchPoint.x(), m_currentTouchPoint.y()); //qDebug() << "hit" << hit; if (hit == -1) { @@ -121,6 +121,7 @@ void ScreenReader::processTouchPoint() delete currentInterface; currentInterface = childInterface; } +*/ } m_selectedInterface = currentInterface; -- cgit v1.2.3 From 92464faea924b46c8ef2759b88a166dd3cf2e9d3 Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Thu, 15 Dec 2011 12:39:40 +0100 Subject: Q_STATIC_ASSERT: fix C style cast MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Else tst_moc::oldStyleCasts will fail if one add STATIC_ASSERT in some headers included by moc generated files Change-Id: I29ae64c14f10c889137fde36bb14c8ce047d5244 Reviewed-by: JÄ™drzej Nowacki --- src/corelib/global/qglobal.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/corelib/global/qglobal.h b/src/corelib/global/qglobal.h index 76b956cc67..581bac9b0a 100644 --- a/src/corelib/global/qglobal.h +++ b/src/corelib/global/qglobal.h @@ -1733,7 +1733,7 @@ template <> class QStaticAssertFailure {}; #define Q_STATIC_ASSERT_PRIVATE_JOIN(A, B) Q_STATIC_ASSERT_PRIVATE_JOIN_IMPL(A, B) #define Q_STATIC_ASSERT_PRIVATE_JOIN_IMPL(A, B) A ## B #define Q_STATIC_ASSERT(Condition) \ - enum {Q_STATIC_ASSERT_PRIVATE_JOIN(q_static_assert_result, __LINE__) = sizeof(QStaticAssertFailure<(bool)(Condition)>)} + enum {Q_STATIC_ASSERT_PRIVATE_JOIN(q_static_assert_result, __LINE__) = sizeof(QStaticAssertFailure<(Condition)>)} #define Q_STATIC_ASSERT_X(Condition, Message) Q_STATIC_ASSERT(Condition) #endif -- cgit v1.2.3 From bbc098ab9fde2caefa8e373a0fcdadfa95edddda Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Mon, 19 Dec 2011 12:05:59 +0100 Subject: Windows: Remove Window from list before calling DestroyWindow. Change-Id: Ifef99d9e4e46f0450cecf8ecba18ce79ebec3e8d Reviewed-by: Friedemann Kleint --- src/plugins/platforms/windows/qwindowswindow.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/plugins/platforms/windows/qwindowswindow.cpp b/src/plugins/platforms/windows/qwindowswindow.cpp index f61e15dded..df9ad57a18 100644 --- a/src/plugins/platforms/windows/qwindowswindow.cpp +++ b/src/plugins/platforms/windows/qwindowswindow.cpp @@ -648,11 +648,11 @@ void QWindowsWindow::destroyWindow() { if (QWindowsContext::verboseIntegration || QWindowsContext::verboseWindows) qDebug() << __FUNCTION__ << this << window() << m_data.hwnd; - if (m_data.hwnd) { + if (m_data.hwnd) { // Stop event dispatching before Window is destroyed. unregisterDropSite(); + QWindowsContext::instance()->removeWindow(m_data.hwnd); if (m_data.hwnd != GetDesktopWindow()) DestroyWindow(m_data.hwnd); - QWindowsContext::instance()->removeWindow(m_data.hwnd); m_data.hwnd = 0; } } -- cgit v1.2.3 From 87679491cb21088223fcd656e0e49793874e4a9e Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Thu, 15 Dec 2011 07:24:49 +0100 Subject: Do not call QueuedConnection slot on partialy destroyed object This is a regression introduced in Qt 4.8 When QApplication::processEvents is called from a destructor, it is possible that pending events would still be called on the already destroyed subclass. Prevent that by using the same pattern as in QMetaObject::activate Change-Id: Ida50db07ae089264402dafcde7a41a066479d08b Reviewed-by: Bradley T. Hughes Reviewed-by: Friedemann Kleint --- src/corelib/kernel/qobject.cpp | 2 +- tests/auto/corelib/kernel/qobject/tst_qobject.cpp | 21 +++++++++++++++++---- 2 files changed, 18 insertions(+), 5 deletions(-) diff --git a/src/corelib/kernel/qobject.cpp b/src/corelib/kernel/qobject.cpp index 295322551f..febe90943b 100644 --- a/src/corelib/kernel/qobject.cpp +++ b/src/corelib/kernel/qobject.cpp @@ -429,7 +429,7 @@ void QMetaCallEvent::placeMetaCall(QObject *object) { if (slotObj_) { slotObj_->call(object, args_); - } else if (callFunction_) { + } else if (callFunction_ && method_offset_ <= object->metaObject()->methodOffset()) { callFunction_(object, QMetaObject::InvokeMetaMethod, method_relative_, args_); } else { QMetaObject::metacall(object, QMetaObject::InvokeMetaMethod, method_offset_ + method_relative_, args_); diff --git a/tests/auto/corelib/kernel/qobject/tst_qobject.cpp b/tests/auto/corelib/kernel/qobject/tst_qobject.cpp index 225e06a552..1e690386dc 100644 --- a/tests/auto/corelib/kernel/qobject/tst_qobject.cpp +++ b/tests/auto/corelib/kernel/qobject/tst_qobject.cpp @@ -4101,12 +4101,25 @@ public slots: } }; +static void processEvents() +{ + qApp->processEvents(); +} + void tst_QObject::baseDestroyed() { - BaseDestroyed d; - connect(&d, SIGNAL(destroyed()), &d, SLOT(slotUseList())); - //When d goes out of scope, slotUseList should not be called as the BaseDestroyed has - // already been destroyed while ~QObject emit destroyed + { + BaseDestroyed d; + connect(&d, SIGNAL(destroyed()), &d, SLOT(slotUseList())); + //When d goes out of scope, slotUseList should not be called as the BaseDestroyed has + // already been destroyed while ~QObject emit destroyed + } + { + BaseDestroyed d; + connect(&d, &QObject::destroyed, processEvents); + QMetaObject::invokeMethod(&d, "slotUseList", Qt::QueuedConnection); + //the destructor will call processEvents, that should not call the slotUseList + } } void tst_QObject::pointerConnect() -- cgit v1.2.3 From 2edada763af005367810dda09ca0cdb5adc494b9 Mon Sep 17 00:00:00 2001 From: Laszlo Agocs Date: Sat, 17 Dec 2011 21:15:50 +0200 Subject: Update the touchscreen plug-in. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Now works with bcm5974: Added manual contact tracking for drivers that do not report a tracking id and fixed abs limit querying to use ABS_MT_* instead of ABS_*. Fixed reported area: The incoming point was the top-left point instead of the center which was incorrect. Added pressure support. Tracking of event type has been removed as handleTouchEvent no longer needs it. Broken debug prints have been removed. Changed udev auto-detection to pick only /dev/input/event*. Fixed multiple released state reports with some drivers. Name and capabilities are now set properly for the QTouchDevice. Change-Id: I8f026c9a14465bfb6d567f4dcf36c5c03f843868 Reviewed-by: Jørgen Lind --- src/plugins/generic/touchscreen/README | 24 +- .../generic/touchscreen/qtoucheventsenderqpa.cpp | 48 ++-- .../generic/touchscreen/qtoucheventsenderqpa.h | 6 +- src/plugins/generic/touchscreen/qtouchscreen.cpp | 255 ++++++++++++--------- src/plugins/generic/touchscreen/qtouchscreen.h | 3 +- 5 files changed, 188 insertions(+), 148 deletions(-) diff --git a/src/plugins/generic/touchscreen/README b/src/plugins/generic/touchscreen/README index bed9016329..6bd244df19 100644 --- a/src/plugins/generic/touchscreen/README +++ b/src/plugins/generic/touchscreen/README @@ -1,6 +1,8 @@ -Generic plug-in for evdev touch events +Generic plug-in for evdev touch events. -(a) Using as a QPA generic plug-in +Tested with the following drivers: bcm5974, hid_magicmouse. + +(1) Using as a QPA generic plug-in 1. set up and connect the touch device 2. install libudev-dev or similar @@ -24,20 +26,22 @@ replacement by default. For embedded systems the code could to be extended to generate also mouse events (by calling handleMouseEvent for the primary touch point for example). -(b) Using in a compositor +(2) Using in a compositor The classes (QTouchScreenHandler, QTouchScreenHandlerThread) are also suitable for direct inclusion into an application, e.g. a Wayland -compositor. The compositor will then usually register its own +compositor. The compositor may then register its own QTouchScreenObserver because relying on the QTouchEvents generated by -the QPA event sender is often not satisfactory, as some low-level -details may get lost, and due to performance reasons. - +the QPA event sender may not always be satisfactory as some low-level +details get lost, and due to performance reasons. -Known issues: +(3) Possible issues and solutions The udev rule matches any touchpad device. If there are multiple ones, specify the device as described above. -If no evdev events are read, remove 50-synaptics.conf from -/usr/share/X11/xorg.conf.d and restart X. +If no evdev events are read, remove 50-synaptics.conf (or similar) +from /usr/share/X11/xorg.conf.d and restart X. Or at least temporarily +disable the device by running xinput set-prop 0. Use xinput list and xinput list-props to figure out the +values. diff --git a/src/plugins/generic/touchscreen/qtoucheventsenderqpa.cpp b/src/plugins/generic/touchscreen/qtoucheventsenderqpa.cpp index a62f9360c7..2a1f3d5ef3 100644 --- a/src/plugins/generic/touchscreen/qtoucheventsenderqpa.cpp +++ b/src/plugins/generic/touchscreen/qtoucheventsenderqpa.cpp @@ -47,8 +47,6 @@ QT_BEGIN_NAMESPACE -//#define POINT_DEBUG - QTouchEventSenderQPA::QTouchEventSenderQPA(const QString &spec) { m_forceToActiveWindow = spec.split(QLatin1Char(':')).contains(QLatin1String("force_window")); @@ -58,12 +56,22 @@ QTouchEventSenderQPA::QTouchEventSenderQPA(const QString &spec) QWindowSystemInterface::registerTouchDevice(m_device); } -void QTouchEventSenderQPA::touch_configure(int x_min, int x_max, int y_min, int y_max) +void QTouchEventSenderQPA::touch_configure(int x_min, int x_max, int y_min, int y_max, + int pressure_min, int pressure_max, + const QString &dev_name) { hw_range_x_min = x_min; hw_range_x_max = x_max; hw_range_y_min = y_min; hw_range_y_max = y_max; + + hw_pressure_min = pressure_min; + hw_pressure_max = pressure_max; + + m_device->setName(dev_name); + + if (hw_pressure_max > hw_pressure_min) + m_device->setCapabilities(m_device->capabilities() | QTouchDevice::Pressure); } void QTouchEventSenderQPA::touch_point(const QList &points) @@ -78,32 +86,28 @@ void QTouchEventSenderQPA::touch_point(const QListgeometry(); } -#ifdef POINT_DEBUG - qDebug() << "QPA: Mapping" << points.size() << "points to" << winRect << state; -#endif + const int hw_w = hw_range_x_max - hw_range_x_min; + const int hw_h = hw_range_y_max - hw_range_y_min; QList touchPoints = points; - // Translate the coordinates and set the normalized position. QPA expects - // 'area' to be in screen coordinates, while the device reports them in its - // own system with (0, 0) being the center point of the device. + // Map the coordinates based on the normalized position. QPA expects 'area' + // to be in screen coordinates. for (int i = 0; i < touchPoints.size(); ++i) { QWindowSystemInterface::TouchPoint &tp(touchPoints[i]); - const int hw_w = hw_range_x_max - hw_range_x_min; - const int hw_h = hw_range_y_max - hw_range_y_min; - - qreal nx = tp.normalPosition.x(); - qreal ny = tp.normalPosition.y(); - - // Generate a screen position that is always inside the active window or the default screen. - const int wx = winRect.left() + int(nx * winRect.width()); - const int wy = winRect.top() + int(ny * winRect.height()); + // Generate a screen position that is always inside the active window + // or the primary screen. + const int wx = winRect.left() + int(tp.normalPosition.x() * winRect.width()); + const int wy = winRect.top() + int(tp.normalPosition.y() * winRect.height()); const qreal sizeRatio = (winRect.width() + winRect.height()) / qreal(hw_w + hw_h); - tp.area = QRect(wx, wy, tp.area.width() * sizeRatio, tp.area.height() * sizeRatio); + tp.area = QRect(0, 0, tp.area.width() * sizeRatio, tp.area.height() * sizeRatio); + tp.area.moveCenter(QPoint(wx, wy)); -#ifdef POINT_DEBUG - qDebug() << " " << i << tp.area << tp.state << tp.id << tp.flags << tp.pressure; -#endif + // Calculate normalized pressure. + if (!hw_pressure_min && !hw_pressure_max) + tp.pressure = tp.state == Qt::TouchPointReleased ? 0 : 1; + else + tp.pressure = (tp.pressure - hw_pressure_min) / qreal(hw_pressure_max - hw_pressure_min); } QWindowSystemInterface::handleTouchEvent(0, m_device, touchPoints); diff --git a/src/plugins/generic/touchscreen/qtoucheventsenderqpa.h b/src/plugins/generic/touchscreen/qtoucheventsenderqpa.h index f0e923b3a0..387df7d3fa 100644 --- a/src/plugins/generic/touchscreen/qtoucheventsenderqpa.h +++ b/src/plugins/generic/touchscreen/qtoucheventsenderqpa.h @@ -54,7 +54,8 @@ class QTouchEventSenderQPA : public QTouchScreenObserver { public: QTouchEventSenderQPA(const QString &spec = QString()); - void touch_configure(int x_min, int x_max, int y_min, int y_max); + void touch_configure(int x_min, int x_max, int y_min, int y_max, + int pressure_min, int pressure_max, const QString &dev_name); void touch_point(const QList &points); private: @@ -63,6 +64,9 @@ private: int hw_range_x_max; int hw_range_y_min; int hw_range_y_max; + int hw_pressure_min; + int hw_pressure_max; + QString hw_dev_name; QTouchDevice *m_device; }; diff --git a/src/plugins/generic/touchscreen/qtouchscreen.cpp b/src/plugins/generic/touchscreen/qtouchscreen.cpp index 1142d0bf0b..b1eac6f359 100644 --- a/src/plugins/generic/touchscreen/qtouchscreen.cpp +++ b/src/plugins/generic/touchscreen/qtouchscreen.cpp @@ -41,28 +41,23 @@ #include "qtouchscreen.h" #include +#include #include -#include #include #include #include QT_BEGIN_NAMESPACE -//#define POINT_DEBUG - class QTouchScreenData { public: QTouchScreenData(QTouchScreenHandler *q_ptr, const QStringList &args); void processInputEvent(input_event *data); - - void dump(); + void assignIds(); QTouchScreenHandler *q; - QEvent::Type m_state; - QEvent::Type m_prevState; int m_lastEventType; QList m_touchPoints; @@ -71,17 +66,24 @@ public: int x; int y; int maj; + int pressure; Qt::TouchPointState state; QTouchEvent::TouchPoint::InfoFlags flags; - Contact() : trackingId(0), x(0), y(0), maj(1), state(Qt::TouchPointPressed), flags(0) { } + Contact() : trackingId(-1), + x(0), y(0), maj(1), pressure(0), + state(Qt::TouchPointPressed), flags(0) { } }; - QMap m_contacts, m_lastContacts; + QHash m_contacts, m_lastContacts; Contact m_currentData; + int findClosestContact(const QHash &contacts, int x, int y, int *dist); + int hw_range_x_min; int hw_range_x_max; int hw_range_y_min; int hw_range_y_max; + int hw_pressure_min; + int hw_pressure_max; QString hw_name; QList m_observers; @@ -89,11 +91,10 @@ public: QTouchScreenData::QTouchScreenData(QTouchScreenHandler *q_ptr, const QStringList &args) : q(q_ptr), - m_state(QEvent::TouchBegin), - m_prevState(m_state), m_lastEventType(-1), hw_range_x_min(0), hw_range_x_max(0), - hw_range_y_min(0), hw_range_y_max(0) + hw_range_y_min(0), hw_range_y_max(0), + hw_pressure_min(0), hw_pressure_max(0) { Q_UNUSED(args); } @@ -101,7 +102,7 @@ QTouchScreenData::QTouchScreenData(QTouchScreenHandler *q_ptr, const QStringList QTouchScreenHandler::QTouchScreenHandler(const QString &spec) : m_notify(0), m_fd(-1), d(0) { - setObjectName(QLatin1String("LinuxInputSubsystem Touch Handler")); + setObjectName(QLatin1String("Linux Touch Handler")); QString dev = QLatin1String("/dev/input/event5"); try_udev(&dev); @@ -126,16 +127,23 @@ QTouchScreenHandler::QTouchScreenHandler(const QString &spec) input_absinfo absInfo; memset(&absInfo, 0, sizeof(input_absinfo)); - if (!ioctl(m_fd, EVIOCGABS(ABS_X), &absInfo) >= 0) { + if (ioctl(m_fd, EVIOCGABS(ABS_MT_POSITION_X), &absInfo) >= 0) { qDebug("min X: %d max X: %d", absInfo.minimum, absInfo.maximum); d->hw_range_x_min = absInfo.minimum; d->hw_range_x_max = absInfo.maximum; } - if (!ioctl(m_fd, EVIOCGABS(ABS_Y), &absInfo) >= 0) { + if (ioctl(m_fd, EVIOCGABS(ABS_MT_POSITION_Y), &absInfo) >= 0) { qDebug("min Y: %d max Y: %d", absInfo.minimum, absInfo.maximum); d->hw_range_y_min = absInfo.minimum; d->hw_range_y_max = absInfo.maximum; } + if (ioctl(m_fd, EVIOCGABS(ABS_PRESSURE), &absInfo) >= 0) { + qDebug("min pressure: %d max pressure: %d", absInfo.minimum, absInfo.maximum); + if (absInfo.maximum > absInfo.minimum) { + d->hw_pressure_min = absInfo.minimum; + d->hw_pressure_max = absInfo.maximum; + } + } char name[1024]; if (ioctl(m_fd, EVIOCGNAME(sizeof(name) - 1), name) >= 0) { d->hw_name = QString::fromLocal8Bit(name); @@ -157,11 +165,14 @@ void QTouchScreenHandler::addObserver(QTouchScreenObserver *observer) return; d->m_observers.append(observer); observer->touch_configure(d->hw_range_x_min, d->hw_range_x_max, - d->hw_range_y_min, d->hw_range_y_max); + d->hw_range_y_min, d->hw_range_y_max, + d->hw_pressure_min, d->hw_pressure_max, + d->hw_name); } void QTouchScreenHandler::try_udev(QString *path) { + *path = QString(); udev *u = udev_new(); udev_enumerate *ue = udev_enumerate_new(u); udev_enumerate_add_match_subsystem(ue, "input"); @@ -171,9 +182,10 @@ void QTouchScreenHandler::try_udev(QString *path) udev_list_entry_foreach(entry, udev_enumerate_get_list_entry(ue)) { const char *syspath = udev_list_entry_get_name(entry); udev_device *udevice = udev_device_new_from_syspath(u, syspath); - *path = QString::fromLocal8Bit(udev_device_get_devnode(udevice)); - qDebug("from udev: %s", qPrintable(*path)); + QString candidate = QString::fromLocal8Bit(udev_device_get_devnode(udevice)); udev_device_unref(udevice); + if (path->isEmpty() && candidate.startsWith("/dev/input/event")) + *path = candidate; } udev_enumerate_unref(ue); udev_unref(u); @@ -213,137 +225,152 @@ void QTouchScreenData::processInputEvent(input_event *data) { if (data->type == EV_ABS) { - if (data->code == ABS_MT_POSITION_X) { - m_currentData.x = data->value; - } else if (data->code == ABS_MT_POSITION_Y) { - m_currentData.y = data->value; - } else if (data->code == ABS_MT_TRACKING_ID) { - m_currentData.trackingId = data->value; - if (m_contacts.isEmpty()) - m_currentData.flags |= QTouchEvent::TouchPoint::Primary; - } else if (data->code == ABS_MT_TOUCH_MAJOR) { - m_currentData.maj = data->value; - if (data->value == 0) - m_currentData.state = Qt::TouchPointReleased; - } + if (data->code == ABS_MT_POSITION_X) { + m_currentData.x = qBound(hw_range_x_min, data->value, hw_range_x_max); + } else if (data->code == ABS_MT_POSITION_Y) { + m_currentData.y = qBound(hw_range_y_min, data->value, hw_range_y_max); + } else if (data->code == ABS_MT_TRACKING_ID) { + m_currentData.trackingId = data->value; + } else if (data->code == ABS_MT_TOUCH_MAJOR) { + m_currentData.maj = data->value; + if (data->value == 0) + m_currentData.state = Qt::TouchPointReleased; + } else if (data->code == ABS_PRESSURE) { + m_currentData.pressure = qBound(hw_pressure_min, data->value, hw_pressure_max); + } } else if (data->type == EV_SYN && data->code == SYN_MT_REPORT && m_lastEventType != EV_SYN) { - m_contacts.insert(m_currentData.trackingId, m_currentData); + // If there is no tracking id, one will be generated later. + // Until that use a temporary key. + int key = m_currentData.trackingId; + if (key == -1) + key = m_contacts.count(); + + // Mark the first point as primary. + if (m_contacts.isEmpty()) + m_currentData.flags |= QTouchEvent::TouchPoint::Primary; + + m_contacts.insert(key, m_currentData); m_currentData = Contact(); } else if (data->type == EV_SYN && data->code == SYN_REPORT) { + // Ensure valid IDs even when the driver does not report ABS_MT_TRACKING_ID. + if (!m_contacts.isEmpty() && m_contacts.constBegin().value().trackingId == -1) + assignIds(); + m_touchPoints.clear(); - for (QMap::iterator it = m_contacts.begin(), ite = m_contacts.end(); - it != ite; ++it) { + Qt::TouchPointStates combinedStates; + QMutableHashIterator it(m_contacts); + while (it.hasNext()) { + it.next(); QWindowSystemInterface::TouchPoint tp; - tp.id = it->trackingId; - tp.flags = it->flags; - tp.pressure = it->state == Qt::TouchPointReleased ? 0 : 1; + Contact &contact(it.value()); + tp.id = contact.trackingId; + tp.flags = contact.flags; - if (m_lastContacts.contains(it->trackingId)) { - const Contact &prev(m_lastContacts.value(it->trackingId)); - if (it->state == Qt::TouchPointReleased) { + if (m_lastContacts.contains(contact.trackingId)) { + const Contact &prev(m_lastContacts.value(contact.trackingId)); + if (contact.state == Qt::TouchPointReleased) { // Copy over the previous values for released points, just in case. - it->x = prev.x; - it->y = prev.y; - it->maj = prev.maj; + contact.x = prev.x; + contact.y = prev.y; + contact.maj = prev.maj; } else { - it->state = (prev.x == it->x && prev.y == it->y) ? Qt::TouchPointStationary : Qt::TouchPointMoved; + contact.state = (prev.x == contact.x && prev.y == contact.y) + ? Qt::TouchPointStationary : Qt::TouchPointMoved; } } - tp.state = it->state; - tp.area = QRectF(it->x, it->y, it->maj, it->maj); + // Avoid reporting a contact in released state more than once. + if (contact.state == Qt::TouchPointReleased + && !m_lastContacts.contains(contact.trackingId)) { + it.remove(); + continue; + } + + tp.state = contact.state; + combinedStates |= tp.state; + + // Store the HW coordinates. Observers can then map it to screen space or something else. + tp.area = QRectF(0, 0, contact.maj, contact.maj); + tp.area.moveCenter(QPoint(contact.x, contact.y)); + tp.pressure = contact.pressure; - // Translate so that (0, 0) is the top-left corner. - const int hw_x = qBound(hw_range_x_min, int(tp.area.left()), hw_range_x_max) - hw_range_x_min; - const int hw_y = qBound(hw_range_y_min, int(tp.area.top()), hw_range_y_max) - hw_range_y_min; // Get a normalized position in range 0..1. - const int hw_w = hw_range_x_max - hw_range_x_min; - const int hw_h = hw_range_y_max - hw_range_y_min; - tp.normalPosition = QPointF(hw_x / qreal(hw_w), - hw_y / qreal(hw_h)); + tp.normalPosition = QPointF((contact.x - hw_range_x_min) / qreal(hw_range_x_max - hw_range_x_min), + (contact.y - hw_range_y_min) / qreal(hw_range_y_max - hw_range_y_min)); m_touchPoints.append(tp); - } - if (m_contacts.isEmpty()) - m_state = QEvent::TouchEnd; + if (contact.state == Qt::TouchPointReleased) + it.remove(); + } m_lastContacts = m_contacts; m_contacts.clear(); - // No need to deliver if all points are stationary. - bool skip = false; - if (m_state == QEvent::TouchUpdate) { - skip = true; - for (int i = 0; i < m_touchPoints.count(); ++i) - if (m_touchPoints.at(i).state != Qt::TouchPointStationary) { - skip = false; - break; - } - } - -#ifdef POINT_DEBUG - dump(); -#endif - - if (!skip && !(m_state == m_prevState && m_state == QEvent::TouchEnd)) + if (!m_touchPoints.isEmpty() && combinedStates != Qt::TouchPointStationary) { for (int i = 0; i < m_observers.count(); ++i) m_observers.at(i)->touch_point(m_touchPoints); - - m_prevState = m_state; - if (m_state == QEvent::TouchBegin) - m_state = QEvent::TouchUpdate; - else if (m_state == QEvent::TouchEnd) - m_state = QEvent::TouchBegin; + } } m_lastEventType = data->type; } -void QTouchScreenData::dump() +int QTouchScreenData::findClosestContact(const QHash &contacts, int x, int y, int *dist) { - const char *eventType; - switch (m_state) { - case QEvent::TouchBegin: - eventType = "TouchBegin"; - break; - case QEvent::TouchUpdate: - eventType = "TouchUpdate"; - break; - case QEvent::TouchEnd: - eventType = "TouchEnd"; - break; - default: - eventType = "unknown"; - break; + int minDist = -1, id = -1; + for (QHash::const_iterator it = contacts.constBegin(), ite = contacts.constEnd(); + it != ite; ++it) { + const Contact &contact(it.value()); + int dx = x - contact.x; + int dy = y - contact.y; + int dist = dx * dx + dy * dy; + if (minDist == -1 || dist < minDist) { + minDist = dist; + id = contact.trackingId; + } } - qDebug() << "touch event" << eventType; - foreach (const QWindowSystemInterface::TouchPoint &tp, m_touchPoints) { - const char *pointState; - switch (tp.state) { - case Qt::TouchPointPressed: - pointState = "pressed"; - break; - case Qt::TouchPointMoved: - pointState = "moved"; - break; - case Qt::TouchPointStationary: - pointState = "stationary"; - break; - case Qt::TouchPointReleased: - pointState = "released"; - break; - default: - pointState = "unknown"; - break; + if (dist) + *dist = minDist; + return id; +} + +void QTouchScreenData::assignIds() +{ + QHash candidates = m_lastContacts, pending = m_contacts, newContacts; + int maxId = -1; + QHash::iterator it, ite, bestMatch; + while (!pending.isEmpty() && !candidates.isEmpty()) { + int bestDist = -1, bestId; + for (it = pending.begin(), ite = pending.end(); it != ite; ++it) { + int dist; + int id = findClosestContact(candidates, it->x, it->y, &dist); + if (id >= 0 && (bestDist == -1 || dist < bestDist)) { + bestDist = dist; + bestId = id; + bestMatch = it; + } + } + if (bestDist >= 0) { + bestMatch->trackingId = bestId; + newContacts.insert(bestId, *bestMatch); + candidates.remove(bestId); + pending.erase(bestMatch); + if (bestId > maxId) + maxId = bestId; + } + } + if (candidates.isEmpty()) { + for (it = pending.begin(), ite = pending.end(); it != ite; ++it) { + it->trackingId = ++maxId; + newContacts.insert(it->trackingId, *it); } - qDebug() << " " << tp.id << tp.area << pointState << tp.normalPosition - << tp.pressure << tp.flags << tp.area.center(); } + m_contacts = newContacts; } diff --git a/src/plugins/generic/touchscreen/qtouchscreen.h b/src/plugins/generic/touchscreen/qtouchscreen.h index 6127cdba32..bcb27d9cdb 100644 --- a/src/plugins/generic/touchscreen/qtouchscreen.h +++ b/src/plugins/generic/touchscreen/qtouchscreen.h @@ -58,7 +58,8 @@ class QTouchScreenData; class QTouchScreenObserver { public: - virtual void touch_configure(int x_min, int x_max, int y_min, int y_max) = 0; + virtual void touch_configure(int x_min, int x_max, int y_min, int y_max, + int pressure_min, int pressure_max, const QString &dev_name) = 0; virtual void touch_point(const QList &points) = 0; }; -- cgit v1.2.3 From 9ffd69a6a6fd571826f904e95bc2264fa62e036e Mon Sep 17 00:00:00 2001 From: Shane Kearns Date: Mon, 19 Dec 2011 16:49:07 +0000 Subject: Fix regression in user-agent setting of http proxy in a QNetworkRequest Modifying the proxy causes a detach(), so the socket is still using the unmodified proxy. Changed this to setProxy() the modified one back to the socket. Test case tst_QNetworkReply::httpProxyCommands() Change-Id: I448c2f2ab43ce8d78bc6edb8261599bf67372676 Reviewed-by: Thiago Macieira --- src/network/access/qhttpnetworkconnectionchannel.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/network/access/qhttpnetworkconnectionchannel.cpp b/src/network/access/qhttpnetworkconnectionchannel.cpp index 89873c086a..edf66ff1aa 100644 --- a/src/network/access/qhttpnetworkconnectionchannel.cpp +++ b/src/network/access/qhttpnetworkconnectionchannel.cpp @@ -580,8 +580,11 @@ bool QHttpNetworkConnectionChannel::ensureConnection() value = connection->d_func()->predictNextRequest().headerField("user-agent"); else value = request.headerField("user-agent"); - if (!value.isEmpty()) - socket->proxy().setRawHeader("User-Agent", value); + if (!value.isEmpty()) { + QNetworkProxy proxy(socket->proxy()); + proxy.setRawHeader("User-Agent", value); //detaches + socket->setProxy(proxy); + } } #endif if (ssl) { -- cgit v1.2.3 From 0443a51228e87499470536d570284a4bbab85d0f Mon Sep 17 00:00:00 2001 From: Shane Kearns Date: Mon, 19 Dec 2011 16:52:59 +0000 Subject: Fix QNetworkReply test cases that use the MiniHttpServer on windows The "happy eyeballs" connection code means that IPv4 and IPv6 connections are both attempted for a http request. For a normal http server, this is no problem, but the MiniHttpServer in the test code is very simplistic and cannot cope with more than one client connected at the same time. On windows this causes all these tests to fail with timeouts. Changed the MiniHttpServer to listen on IPv4 only instead of Any address. Change-Id: I81e249997d894d266001da474a351b1f5642599e Reviewed-by: Thiago Macieira --- tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp b/tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp index d3b92ea9b1..e900a25264 100644 --- a/tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp +++ b/tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp @@ -463,7 +463,7 @@ public: if (useipv6) { listen(QHostAddress::AnyIPv6); } else { - listen(); + listen(QHostAddress::AnyIPv4); } if (thread) { connect(thread, SIGNAL(started()), this, SLOT(threadStartedSlot())); -- cgit v1.2.3 From 8707c09fcddb3d335ba79394f266a88129ba5ba2 Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 19 Dec 2011 20:44:45 +0100 Subject: Fix QDir::removeRecursively so it doesn't follow symlinks to directories. Critical bug... Good thing I had backups of my $HOME. Change-Id: I43b3a80786c946b0aec797036c1164d436d521f8 Reviewed-by: Robin Burchell Reviewed-by: Oswald Buddenhagen --- src/corelib/io/qdir.cpp | 2 +- tests/auto/corelib/io/qdir/tst_qdir.cpp | 26 ++++++++++++++++++++++++++ 2 files changed, 27 insertions(+), 1 deletion(-) diff --git a/src/corelib/io/qdir.cpp b/src/corelib/io/qdir.cpp index 44992fcd14..04e61e5b26 100644 --- a/src/corelib/io/qdir.cpp +++ b/src/corelib/io/qdir.cpp @@ -1502,7 +1502,7 @@ bool QDir::removeRecursively() di.next(); const QFileInfo& fi = di.fileInfo(); bool ok; - if (fi.isDir()) + if (fi.isDir() && !fi.isSymLink()) ok = QDir(di.filePath()).removeRecursively(); // recursive else ok = QFile::remove(di.filePath()); diff --git a/tests/auto/corelib/io/qdir/tst_qdir.cpp b/tests/auto/corelib/io/qdir/tst_qdir.cpp index 5b48f9da00..32d74b163b 100644 --- a/tests/auto/corelib/io/qdir/tst_qdir.cpp +++ b/tests/auto/corelib/io/qdir/tst_qdir.cpp @@ -100,6 +100,7 @@ private slots: void removeRecursively_data(); void removeRecursively(); void removeRecursivelyFailure(); + void removeRecursivelySymlink(); void exists_data(); void exists(); @@ -412,6 +413,31 @@ void tst_QDir::removeRecursivelyFailure() QVERIFY(!dir.exists()); } +void tst_QDir::removeRecursivelySymlink() +{ +#ifndef Q_NO_SYMLINKS + const QString tmpdir = QDir::currentPath() + "/tmpdir/"; + QDir().mkpath(tmpdir); + QDir currentDir; + currentDir.mkdir("myDir"); + QFile("testfile").open(QIODevice::WriteOnly); + const QString link = tmpdir + "linkToDir.lnk"; + const QString linkToFile = tmpdir + "linkToFile.lnk"; +#ifndef Q_NO_SYMLINKS_TO_DIRS + QVERIFY(QFile::link("../myDir", link)); + QVERIFY(QFile::link("../testfile", linkToFile)); +#endif + + QDir dir(tmpdir); + QVERIFY(dir.removeRecursively()); + QVERIFY(QDir("myDir").exists()); // it didn't follow the symlink, good. + QVERIFY(QFile::exists("testfile")); + + currentDir.rmdir("myDir"); + QFile::remove("testfile"); +#endif +} + void tst_QDir::exists_data() { QTest::addColumn("path"); -- cgit v1.2.3 From 1749fef3c5c1dda98c6ea32e0ac17202892fc9fe Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Sat, 17 Dec 2011 00:44:58 +0100 Subject: Remove declaration which is exported from QtGui. Fixes static build. Change-Id: I6f82ded7bf6cb3b72b0ef987e781c7e8f9ed932b Reviewed-by: Olivier Goffart --- src/widgets/kernel/qapplication.cpp | 1 - src/widgets/kernel/qapplication_p.h | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/src/widgets/kernel/qapplication.cpp b/src/widgets/kernel/qapplication.cpp index a4a1aa860d..10a6ed7c59 100644 --- a/src/widgets/kernel/qapplication.cpp +++ b/src/widgets/kernel/qapplication.cpp @@ -431,7 +431,6 @@ bool QApplicationPrivate::obey_desktop_settings = true; // use winsys res #ifndef QT_NO_WHEELEVENT int QApplicationPrivate::wheel_scroll_lines; // number of lines to scroll #endif -bool qt_is_gui_used; bool Q_WIDGETS_EXPORT qt_tab_all_widgets = true; bool qt_in_tab_key_event = false; int qt_antialiasing_threshold = -1; diff --git a/src/widgets/kernel/qapplication_p.h b/src/widgets/kernel/qapplication_p.h index ac4b4ad667..fe3240b004 100644 --- a/src/widgets/kernel/qapplication_p.h +++ b/src/widgets/kernel/qapplication_p.h @@ -88,7 +88,7 @@ class QTouchDevice; class QGestureManager; #endif -extern bool qt_is_gui_used; +extern Q_GUI_EXPORT bool qt_is_gui_used; #ifndef QT_NO_CLIPBOARD extern QClipboard *qt_clipboard; #endif -- cgit v1.2.3 From 85a77cd5c8f4a9a2e71676ff7b600ba891983115 Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Mon, 19 Dec 2011 15:22:51 +1000 Subject: Retire QTest::pixmapsAreEqual(). QTest::pixmapsAreEqual() was left in the Qt4 API for compatibility with some old tests written for Qt3. QCOMPARE() is the preferred way to compare QPixmaps and provides superior diagnostic output when a comparison fails. This commit removes QTest::pixmapsAreEqual() from the testlib API and replaces the last few remaining calls with QCOMPARE. Change-Id: I051c0e7d3bda072855fcd262d82e8e540619233b Reviewed-by: Lars Knoll --- dist/changes-5.0.0 | 3 +++ src/testlib/qtest_gui.h | 15 --------------- tests/auto/corelib/io/qdatastream/tst_qdatastream.cpp | 14 ++++++++++---- tests/auto/gui/image/qpixmap/tst_qpixmap.cpp | 10 +++++----- tests/auto/widgets/styles/qstyle/tst_qstyle.cpp | 4 ++-- 5 files changed, 20 insertions(+), 26 deletions(-) diff --git a/dist/changes-5.0.0 b/dist/changes-5.0.0 index fe159c4ad9..159ef73341 100644 --- a/dist/changes-5.0.0 +++ b/dist/changes-5.0.0 @@ -57,6 +57,9 @@ information about a particular change. internal testlib function that was exposed in the public API due to its use in a public macro. Any calls to this function should be replaced by a call to qsnprintf(), which comes from the header. + * The QTest::pixmapsAreEqual() function has been removed from the API. + Comparison of QPixmap objects should be done using QCOMPARE, which provides + more informative output in the event of a failure. * The QSKIP macro no longer has the "mode" parameter, which caused problems for calculating test metrics, as the SkipAll mode hid information about what test data was skipped. Calling QSKIP in a test function now behaves diff --git a/src/testlib/qtest_gui.h b/src/testlib/qtest_gui.h index 89f63e25c6..99b7700e3b 100644 --- a/src/testlib/qtest_gui.h +++ b/src/testlib/qtest_gui.h @@ -94,21 +94,6 @@ inline bool qCompare(QPixmap const &t1, QPixmap const &t2, const char *actual, c } -/* compatibility */ - -inline static bool pixmapsAreEqual(const QPixmap *actual, const QPixmap *expected) -{ - if (!actual && !expected) - return true; - if (!actual || !expected) - return false; - if (actual->isNull() && expected->isNull()) - return true; - if (actual->isNull() || expected->isNull() || actual->size() != expected->size()) - return false; - return actual->toImage() == expected->toImage(); -} - #ifdef Q_WS_X11 extern void qt_x11_wait_for_window_manager(QWidget *w); #endif diff --git a/tests/auto/corelib/io/qdatastream/tst_qdatastream.cpp b/tests/auto/corelib/io/qdatastream/tst_qdatastream.cpp index 3d3f5b4a97..9e7e93255d 100644 --- a/tests/auto/corelib/io/qdatastream/tst_qdatastream.cpp +++ b/tests/auto/corelib/io/qdatastream/tst_qdatastream.cpp @@ -1100,11 +1100,17 @@ void tst_QDataStream::readQCursor(QDataStream *s) QVERIFY(d5.shape() == test.shape()); //## lacks operator== QVERIFY(d5.hotSpot() == test.hotSpot()); QVERIFY((d5.bitmap() != 0 && test.bitmap() != 0) || (d5.bitmap() == 0 && test.bitmap() == 0)); - if (d5.bitmap() != 0) - QVERIFY(pixmapsAreEqual(d5.bitmap(), test.bitmap())); + if (d5.bitmap() != 0) { + QPixmap actual = *(d5.bitmap()); + QPixmap expected = *(test.bitmap()); + QCOMPARE(actual, expected); + } QVERIFY((d5.mask() != 0 && test.mask() != 0) || (d5.mask() == 0 && test.mask() == 0)); - if (d5.mask() != 0) - QVERIFY(pixmapsAreEqual(d5.mask(), test.mask())); + if (d5.mask() != 0) { + QPixmap actual = *(d5.mask()); + QPixmap expected = *(test.mask()); + QCOMPARE(actual, expected); + } #endif } diff --git a/tests/auto/gui/image/qpixmap/tst_qpixmap.cpp b/tests/auto/gui/image/qpixmap/tst_qpixmap.cpp index c15d1e6976..8d575c90c0 100644 --- a/tests/auto/gui/image/qpixmap/tst_qpixmap.cpp +++ b/tests/auto/gui/image/qpixmap/tst_qpixmap.cpp @@ -329,7 +329,7 @@ void tst_QPixmap::convertFromImage() pix = QPixmap::fromImage(img2); QPixmap res = QPixmap::fromImage(img2); - QVERIFY( pixmapsAreEqual(&pix, &res) ); + QCOMPARE(pix, res); } void tst_QPixmap::scroll_data() @@ -1149,7 +1149,7 @@ void tst_QPixmap::copy() trans.fill(Qt::transparent); QPixmap transCopy = trans.copy(); - QVERIFY(pixmapsAreEqual(&trans, &transCopy)); + QCOMPARE(trans, transCopy); } void tst_QPixmap::depthOfNullObjects() @@ -1317,7 +1317,7 @@ void tst_QPixmap::loadFromDataImage() QPixmap directLoadingPixmap; directLoadingPixmap.loadFromData(rawData); - QVERIFY(pixmapsAreEqual(&pixmapWithCopy, &directLoadingPixmap)); + QCOMPARE(pixmapWithCopy, directLoadingPixmap); } void tst_QPixmap::fromImageReader_data() @@ -1348,7 +1348,7 @@ void tst_QPixmap::fromImageReader() QPixmap directLoadingPixmap = QPixmap::fromImageReader(&imageReader); - QVERIFY(pixmapsAreEqual(&pixmapWithCopy, &directLoadingPixmap)); + QCOMPARE(pixmapWithCopy, directLoadingPixmap); } void tst_QPixmap::fromImageReaderAnimatedGif_data() @@ -1376,7 +1376,7 @@ void tst_QPixmap::fromImageReaderAnimatedGif() QPixmap refPixmap = QPixmap::fromImage(refImage); QPixmap directLoadingPixmap = QPixmap::fromImageReader(&pixmapReader); - QVERIFY(pixmapsAreEqual(&refPixmap, &directLoadingPixmap)); + QCOMPARE(refPixmap, directLoadingPixmap); } } diff --git a/tests/auto/widgets/styles/qstyle/tst_qstyle.cpp b/tests/auto/widgets/styles/qstyle/tst_qstyle.cpp index 5dede997ae..d5849f1c2c 100644 --- a/tests/auto/widgets/styles/qstyle/tst_qstyle.cpp +++ b/tests/auto/widgets/styles/qstyle/tst_qstyle.cpp @@ -273,7 +273,7 @@ void tst_QStyle::drawItemPixmap() QPixmap p(QString(SRCDIR) + "/task_25863.png", "PNG"); QPixmap actualPix = QPixmap::grabWidget(testWidget); - QVERIFY(pixmapsAreEqual(&actualPix,&p)); + QCOMPARE(actualPix, p); testWidget->hide(); } @@ -458,7 +458,7 @@ void comparePixmap(const QString &filename, const QPixmap &pixmap) QImage oldFile = readImage(filename); QPixmap oldPixmap = QPixmap::fromImage(oldFile); if (!oldFile.isNull()) - QVERIFY(pixmapsAreEqual(&pixmap, &oldPixmap)); + QCOMPARE(pixmap, oldPixmap); else writeImage(filename, pixmap.toImage()); } -- cgit v1.2.3 From 8754bf03f59203eef5ff189b1b8c1f54b2a31f87 Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Mon, 19 Dec 2011 13:10:40 +0100 Subject: Better error reporting in case of connection failure. Use Q_STATIC_ASSERT_X give a better error message. If C++11 is used, you get the string in the error. Else, clicking on the QStaticFailure error still shows you the string in the qobject.h source code) And report better failure if the return types do not match. (Without the static assert, you would still have a compilation error, but in an unrelated place, with no reference to the actual connect() call. The error was thrown from the virtual call QSlotObject::call, without saying where it was instantiated) Previously the error was relying on the existence of a type inside CheckCompatibleArguments, but the Q_STATIC_ASSERT requires a bool (hence the introduction of CheckCompatibleArguments::value) There also was a typo in the return value of AreArgumentsCompatible::dummy that made that code not work, and that error not be reported. (Instead, the error was reported when QObjectSlot::call is instantiated) Specialization of AreArgumentsCompatible for the void type have been added because if the return value of a signal or slot is void, the connection should work. Change-Id: I5a93ec787ce2a4b94a26630ca31d5001cd294e4d Reviewed-by: Bradley T. Hughes --- src/corelib/kernel/qobject.h | 19 +++++++++++++++---- src/corelib/kernel/qobject_impl.h | 36 ++++++++++++++++++++---------------- 2 files changed, 35 insertions(+), 20 deletions(-) diff --git a/src/corelib/kernel/qobject.h b/src/corelib/kernel/qobject.h index dbe5fc02a4..22572c072e 100644 --- a/src/corelib/kernel/qobject.h +++ b/src/corelib/kernel/qobject.h @@ -212,7 +212,12 @@ public: reinterpret_cast(0)->qt_check_for_QOBJECT_macro(*reinterpret_cast(0)); //compilation error if the arguments does not match. - typedef typename QtPrivate::CheckCompatibleArguments::IncompatibleSignalSlotArguments EnsureCompatibleArguments; + Q_STATIC_ASSERT_X(int(SignalType::ArgumentCount) >= int(SlotType::ArgumentCount), + "The slot requires more arguments than the signal provides."); + Q_STATIC_ASSERT_X((QtPrivate::CheckCompatibleArguments::value), + "Signal and slot arguments are not compatible."); + Q_STATIC_ASSERT_X((QtPrivate::AreArgumentsCompatible::value), + "Return type of the slot is not compatible with the return type of the signal."); const int *types = 0; if (type == Qt::QueuedConnection || type == Qt::BlockingQueuedConnection) @@ -234,8 +239,12 @@ public: typedef QtPrivate::FunctionPointer SlotType; //compilation error if the arguments does not match. - typedef typename QtPrivate::CheckCompatibleArguments::IncompatibleSignalSlotArguments EnsureCompatibleArguments; - typedef typename QtPrivate::QEnableIf<(int(SignalType::ArgumentCount) >= int(SlotType::ArgumentCount))>::Type EnsureArgumentsCount; + Q_STATIC_ASSERT_X(int(SignalType::ArgumentCount) >= int(SlotType::ArgumentCount), + "The slot requires more arguments than the signal provides."); + Q_STATIC_ASSERT_X((QtPrivate::CheckCompatibleArguments::value), + "Signal and slot arguments are not compatible."); + Q_STATIC_ASSERT_X((QtPrivate::AreArgumentsCompatible::value), + "Return type of the slot is not compatible with the return type of the signal."); return connectImpl(sender, reinterpret_cast(&signal), sender, 0, new QStaticSlotObject(0)->qt_check_for_QOBJECT_macro(*reinterpret_cast(0)); //compilation error if the arguments does not match. - typedef typename QtPrivate::CheckCompatibleArguments::IncompatibleSignalSlotArguments EnsureCompatibleArguments; + Q_STATIC_ASSERT_X((QtPrivate::CheckCompatibleArguments::value), + "Signal and slot arguments are not compatible."); + return disconnectImpl(sender, reinterpret_cast(&signal), receiver, reinterpret_cast(&slot), &SignalType::Object::staticMetaObject); } diff --git a/src/corelib/kernel/qobject_impl.h b/src/corelib/kernel/qobject_impl.h index 660294b956..1ddc95fc44 100644 --- a/src/corelib/kernel/qobject_impl.h +++ b/src/corelib/kernel/qobject_impl.h @@ -441,36 +441,40 @@ namespace QtPrivate { /* Logic that check if the arguments of the slot matches the argument of the signal. To be used like this: - CheckCompatibleArguments::Arguments, FunctionPointer::Arguments>::IncompatibleSignalSlotArguments - The IncompatibleSignalSlotArguments type do not exist if the argument are incompatible and can - then produce error message. + Q_STATIC_ASSERT(CheckCompatibleArguments::Arguments, FunctionPointer::Arguments>::value) */ - template struct CheckCompatibleArgumentsHelper {}; - template struct CheckCompatibleArgumentsHelper : T {}; template struct AreArgumentsCompatible { static int test(A2); static char test(...); - static A2 dummy(); + static A1 dummy(); enum { value = sizeof(test(dummy())) == sizeof(int) }; }; template struct AreArgumentsCompatible { enum { value = false }; }; template struct AreArgumentsCompatible { enum { value = true }; }; + // void as a return value + template struct AreArgumentsCompatible { enum { value = true }; }; + template struct AreArgumentsCompatible { enum { value = true }; }; + template<> struct AreArgumentsCompatible { enum { value = true }; }; #ifndef Q_COMPILER_VARIADIC_TEMPLATES - template struct CheckCompatibleArguments{}; - template <> struct CheckCompatibleArguments { typedef bool IncompatibleSignalSlotArguments; }; - template struct CheckCompatibleArguments { typedef bool IncompatibleSignalSlotArguments; }; + template struct CheckCompatibleArguments { enum { value = false }; }; + template <> struct CheckCompatibleArguments { enum { value = true }; }; + template struct CheckCompatibleArguments { enum { value = true }; }; template struct CheckCompatibleArguments, List > - : CheckCompatibleArgumentsHelper, AreArgumentsCompatible< - typename RemoveConstRef::Type, typename RemoveConstRef::Type>::value > {}; + { + enum { value = AreArgumentsCompatible::Type, typename RemoveConstRef::Type>::value + && CheckCompatibleArguments::value }; + }; #else - template struct CheckCompatibleArguments{}; - template <> struct CheckCompatibleArguments, List<>> { typedef bool IncompatibleSignalSlotArguments; }; - template struct CheckCompatibleArguments> { typedef bool IncompatibleSignalSlotArguments; }; + template struct CheckCompatibleArguments { enum { value = false }; }; + template <> struct CheckCompatibleArguments, List<>> { enum { value = true }; }; + template struct CheckCompatibleArguments> { enum { value = true }; }; template struct CheckCompatibleArguments, List> - : CheckCompatibleArgumentsHelper, List>, AreArgumentsCompatible< - typename RemoveConstRef::Type, typename RemoveConstRef::Type>::value > {}; + { + enum { value = AreArgumentsCompatible::Type, typename RemoveConstRef::Type>::value + && CheckCompatibleArguments, List>::value }; + }; #endif -- cgit v1.2.3 From cb9b7ceffb8d22f987f4cb44d027ecb046850bbf Mon Sep 17 00:00:00 2001 From: Alan Alpert Date: Tue, 20 Dec 2011 17:23:31 +1000 Subject: Revert "Revert "Add QObject::objectNameChanged(con... signal"" This reverts commit 9b17557f3bbd5135651bcedf9f10e61d7e078ae2. Justification: Temporary commit, see JIRA task. Task-number: QTBUG-22985 Change-Id: I3df9eb5fdbdc133349dca5e192dcfcc9e758626c Reviewed-by: Bradley T. Hughes --- src/corelib/kernel/qobject.cpp | 17 ++++++++++---- src/corelib/kernel/qobject.h | 3 ++- tests/auto/corelib/kernel/qobject/tst_qobject.cpp | 2 -- tests/auto/tools/moc/tst_moc.cpp | 28 +++++++++++------------ 4 files changed, 28 insertions(+), 22 deletions(-) diff --git a/src/corelib/kernel/qobject.cpp b/src/corelib/kernel/qobject.cpp index febe90943b..4e8d2fc265 100644 --- a/src/corelib/kernel/qobject.cpp +++ b/src/corelib/kernel/qobject.cpp @@ -949,13 +949,20 @@ QString QObject::objectName() const void QObject::setObjectName(const QString &name) { Q_D(QObject); - bool objectNameChanged = d->declarativeData && d->objectName != name; + if (d->objectName != name) { + d->objectName = name; + if (d->declarativeData) + d->declarativeData->objectNameChanged(d->declarativeData, this); + emit objectNameChanged(d->objectName); + } +} - d->objectName = name; +/*! \fn void QObject::objectNameChanged(const QString &objectName) - if (objectNameChanged) - d->declarativeData->objectNameChanged(d->declarativeData, this); -} + This signal is emitted after the object's name has been changed. The new object name is passed as \a objectName. + + \sa QObject::objectName +*/ /*! \fn bool QObject::isWidgetType() const diff --git a/src/corelib/kernel/qobject.h b/src/corelib/kernel/qobject.h index 22572c072e..1f7c706741 100644 --- a/src/corelib/kernel/qobject.h +++ b/src/corelib/kernel/qobject.h @@ -113,7 +113,7 @@ public: class Q_CORE_EXPORT QObject { Q_OBJECT - Q_PROPERTY(QString objectName READ objectName WRITE setObjectName) + Q_PROPERTY(QString objectName READ objectName WRITE setObjectName NOTIFY objectNameChanged) Q_DECLARE_PRIVATE(QObject) public: @@ -322,6 +322,7 @@ public: Q_SIGNALS: void destroyed(QObject * = 0); + void objectNameChanged(const QString &objectName); public: inline QObject *parent() const { return d_ptr->parent; } diff --git a/tests/auto/corelib/kernel/qobject/tst_qobject.cpp b/tests/auto/corelib/kernel/qobject/tst_qobject.cpp index 1e690386dc..cec25136b6 100644 --- a/tests/auto/corelib/kernel/qobject/tst_qobject.cpp +++ b/tests/auto/corelib/kernel/qobject/tst_qobject.cpp @@ -3493,7 +3493,6 @@ void tst_QObject::isSignalConnected() QVERIFY(!priv->isSignalConnected(priv->signalIndex("sig15()"))); QVERIFY(!priv->isSignalConnected(priv->signalIndex("sig29()"))); QVERIFY(!priv->isSignalConnected(priv->signalIndex("sig60()"))); - QVERIFY(!priv->isSignalConnected(priv->signalIndex("sig61()"))); #endif QObject::connect(&o, SIGNAL(sig00()), &o, SIGNAL(sig69())); @@ -3548,7 +3547,6 @@ void tst_QObject::isSignalConnected() QVERIFY(!priv->isSignalConnected(priv->signalIndex("sig21()"))); QVERIFY(!priv->isSignalConnected(priv->signalIndex("sig25()"))); QVERIFY(!priv->isSignalConnected(priv->signalIndex("sig55()"))); - QVERIFY(!priv->isSignalConnected(priv->signalIndex("sig61()"))); #endif emit o.sig00(); diff --git a/tests/auto/tools/moc/tst_moc.cpp b/tests/auto/tools/moc/tst_moc.cpp index 6d3ee2611e..95d7d2ce00 100644 --- a/tests/auto/tools/moc/tst_moc.cpp +++ b/tests/auto/tools/moc/tst_moc.cpp @@ -1091,15 +1091,15 @@ void tst_Moc::invokable() { { const QMetaObject &mobj = InvokableBeforeReturnType::staticMetaObject; - QCOMPARE(mobj.methodCount(), 5); - QVERIFY(mobj.method(4).signature() == QByteArray("foo()")); + QCOMPARE(mobj.methodCount(), 6); + QVERIFY(mobj.method(5).signature() == QByteArray("foo()")); } { const QMetaObject &mobj = InvokableBeforeInline::staticMetaObject; - QCOMPARE(mobj.methodCount(), 6); - QVERIFY(mobj.method(4).signature() == QByteArray("foo()")); - QVERIFY(mobj.method(5).signature() == QByteArray("bar()")); + QCOMPARE(mobj.methodCount(), 7); + QVERIFY(mobj.method(5).signature() == QByteArray("foo()")); + QVERIFY(mobj.method(6).signature() == QByteArray("bar()")); } } @@ -1107,23 +1107,23 @@ void tst_Moc::singleFunctionKeywordSignalAndSlot() { { const QMetaObject &mobj = SingleFunctionKeywordBeforeReturnType::staticMetaObject; - QCOMPARE(mobj.methodCount(), 6); - QVERIFY(mobj.method(4).signature() == QByteArray("mySignal()")); - QVERIFY(mobj.method(5).signature() == QByteArray("mySlot()")); + QCOMPARE(mobj.methodCount(), 7); + QVERIFY(mobj.method(5).signature() == QByteArray("mySignal()")); + QVERIFY(mobj.method(6).signature() == QByteArray("mySlot()")); } { const QMetaObject &mobj = SingleFunctionKeywordBeforeInline::staticMetaObject; - QCOMPARE(mobj.methodCount(), 6); - QVERIFY(mobj.method(4).signature() == QByteArray("mySignal()")); - QVERIFY(mobj.method(5).signature() == QByteArray("mySlot()")); + QCOMPARE(mobj.methodCount(), 7); + QVERIFY(mobj.method(5).signature() == QByteArray("mySignal()")); + QVERIFY(mobj.method(6).signature() == QByteArray("mySlot()")); } { const QMetaObject &mobj = SingleFunctionKeywordAfterInline::staticMetaObject; - QCOMPARE(mobj.methodCount(), 6); - QVERIFY(mobj.method(4).signature() == QByteArray("mySignal()")); - QVERIFY(mobj.method(5).signature() == QByteArray("mySlot()")); + QCOMPARE(mobj.methodCount(), 7); + QVERIFY(mobj.method(5).signature() == QByteArray("mySignal()")); + QVERIFY(mobj.method(6).signature() == QByteArray("mySlot()")); } } -- cgit v1.2.3 From a730a2b1962325d4e3bbd5f79d8f51af6ee04301 Mon Sep 17 00:00:00 2001 From: Frederik Gladhorn Date: Thu, 15 Dec 2011 13:51:29 +0100 Subject: Add destructor to QPlatformFontDatabase. Virtual functions deserve a virtual dtor. Change-Id: I71b7ae3b7fb0aa1553a37a90dce6270740d49e32 Reviewed-by: Lars Knoll --- src/gui/text/qplatformfontdatabase_qpa.cpp | 7 +++++++ src/gui/text/qplatformfontdatabase_qpa.h | 1 + 2 files changed, 8 insertions(+) diff --git a/src/gui/text/qplatformfontdatabase_qpa.cpp b/src/gui/text/qplatformfontdatabase_qpa.cpp index 8d5a9201d9..165bd8b992 100644 --- a/src/gui/text/qplatformfontdatabase_qpa.cpp +++ b/src/gui/text/qplatformfontdatabase_qpa.cpp @@ -232,6 +232,13 @@ bool QSupportedWritingSystems::supported(QFontDatabase::WritingSystem writingSys */ +/*! + \internal + */ +QPlatformFontDatabase::~QPlatformFontDatabase() +{ +} + /*! This function is called once at startup by Qt's internal font database. Reimplement this function in a subclass for a convenient place to initialize diff --git a/src/gui/text/qplatformfontdatabase_qpa.h b/src/gui/text/qplatformfontdatabase_qpa.h index 901d8c2e6e..a0953ca1b4 100644 --- a/src/gui/text/qplatformfontdatabase_qpa.h +++ b/src/gui/text/qplatformfontdatabase_qpa.h @@ -87,6 +87,7 @@ class QFontRequestPrivate; class Q_GUI_EXPORT QPlatformFontDatabase { public: + virtual ~QPlatformFontDatabase(); virtual void populateFontDatabase(); virtual QFontEngine *fontEngine(const QFontDef &fontDef, QUnicodeTables::Script script, void *handle); virtual QStringList fallbacksForFamily(const QString family, const QFont::Style &style, const QFont::StyleHint &styleHint, const QUnicodeTables::Script &script) const; -- cgit v1.2.3 From 34cb6901638eb65e4db742ea70bbc0fe3e55e366 Mon Sep 17 00:00:00 2001 From: Pekka Vuorela Date: Thu, 15 Dec 2011 15:11:55 +0200 Subject: Adapt from QInputContext interface to QInputPanel Change-Id: I4143c3b516e7b0e46c706b8a6560bca9d8951572 Reviewed-by: Lars Knoll Reviewed-by: Joona Petrell --- src/widgets/widgets/qwidgettextcontrol.cpp | 32 +++++++++++++----------------- 1 file changed, 14 insertions(+), 18 deletions(-) diff --git a/src/widgets/widgets/qwidgettextcontrol.cpp b/src/widgets/widgets/qwidgettextcontrol.cpp index 2a6831eb93..e2be1cb2bf 100644 --- a/src/widgets/widgets/qwidgettextcontrol.cpp +++ b/src/widgets/widgets/qwidgettextcontrol.cpp @@ -76,6 +76,7 @@ #include #include #include +#include #include #include #include @@ -1688,11 +1689,8 @@ void QWidgetTextControlPrivate::mouseMoveEvent(QEvent *e, Qt::MouseButton button emit q->cursorPositionChanged(); _q_updateCurrentCharFormatAndSelection(); #ifndef QT_NO_IM - if (contextWidget) { - if (QInputContext *ic = qApp->inputContext()) { - ic->update(); - } - } + if (contextWidget) + qApp->inputPanel()->update(Qt::ImQueryInput); #endif //QT_NO_IM } else { //emit q->visibilityRequest(QRectF(mousePos, QSizeF(1, 1))); @@ -1821,34 +1819,32 @@ bool QWidgetTextControlPrivate::sendMouseEventToInputContext( QEvent *e, QEvent::Type eventType, Qt::MouseButton button, const QPointF &pos, Qt::KeyboardModifiers modifiers, Qt::MouseButtons buttons, const QPoint &globalPos) { + Q_UNUSED(eventType); + Q_UNUSED(button); + Q_UNUSED(pos); + Q_UNUSED(modifiers); + Q_UNUSED(buttons); + Q_UNUSED(globalPos); #if !defined(QT_NO_IM) Q_Q(QWidgetTextControl); if (contextWidget && isPreediting()) { QTextLayout *layout = cursor.block().layout(); - QInputContext *ctx = qApp->inputContext(); int cursorPos = q->hitTest(pos, Qt::FuzzyHit) - cursor.position(); if (cursorPos < 0 || cursorPos > layout->preeditAreaText().length()) cursorPos = -1; - if (ctx && cursorPos >= 0) { - QMouseEvent ev(eventType, contextWidget->mapFromGlobal(globalPos), - contextWidget->topLevelWidget()->mapFromGlobal(globalPos), globalPos, - button, buttons, modifiers); - ctx->mouseHandler(cursorPos, &ev); - e->setAccepted(ev.isAccepted()); + if (cursorPos >= 0) { + if (e->type() == QEvent::MouseButtonRelease) + qApp->inputPanel()->invokeAction(QInputPanel::Click, cursorPos); + + e->setAccepted(true); return true; } } #else Q_UNUSED(e); - Q_UNUSED(eventType); - Q_UNUSED(button); - Q_UNUSED(pos); - Q_UNUSED(modifiers); - Q_UNUSED(buttons); - Q_UNUSED(globalPos); #endif return false; } -- cgit v1.2.3 From db55b6aee7ad690f942f108da77bbeefcbce6a34 Mon Sep 17 00:00:00 2001 From: Pekka Vuorela Date: Thu, 15 Dec 2011 17:00:53 +0200 Subject: Removed test for obsolete QInputContext Change-Id: Idb3b909934434f8f55eb6e94aa814840ab628856 Reviewed-by: Lars Knoll Reviewed-by: Joona Petrell --- tests/auto/widgets/kernel/kernel.pro | 1 - .../widgets/kernel/qinputcontext/qinputcontext.pro | 6 - .../kernel/qinputcontext/tst_qinputcontext.cpp | 401 --------------------- 3 files changed, 408 deletions(-) delete mode 100644 tests/auto/widgets/kernel/qinputcontext/qinputcontext.pro delete mode 100644 tests/auto/widgets/kernel/qinputcontext/tst_qinputcontext.cpp diff --git a/tests/auto/widgets/kernel/kernel.pro b/tests/auto/widgets/kernel/kernel.pro index d1f2304378..a68a9c2748 100644 --- a/tests/auto/widgets/kernel/kernel.pro +++ b/tests/auto/widgets/kernel/kernel.pro @@ -7,7 +7,6 @@ SUBDIRS=\ qdesktopwidget \ qformlayout \ qgridlayout \ - qinputcontext \ qlayout \ qstackedlayout \ qtooltip \ diff --git a/tests/auto/widgets/kernel/qinputcontext/qinputcontext.pro b/tests/auto/widgets/kernel/qinputcontext/qinputcontext.pro deleted file mode 100644 index fcfb15c5fb..0000000000 --- a/tests/auto/widgets/kernel/qinputcontext/qinputcontext.pro +++ /dev/null @@ -1,6 +0,0 @@ -CONFIG += testcase -TARGET = tst_qinputcontext -QT += widgets testlib -SOURCES += tst_qinputcontext.cpp - -mac*:CONFIG+=insignificant_test diff --git a/tests/auto/widgets/kernel/qinputcontext/tst_qinputcontext.cpp b/tests/auto/widgets/kernel/qinputcontext/tst_qinputcontext.cpp deleted file mode 100644 index cb7d7eb9d2..0000000000 --- a/tests/auto/widgets/kernel/qinputcontext/tst_qinputcontext.cpp +++ /dev/null @@ -1,401 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the test suite of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#ifdef QT_WEBKIT_LIB -#include -#include -#endif - -class tst_QInputContext : public QObject -{ -Q_OBJECT - -public: - tst_QInputContext() : m_phoneIsQwerty(false) {} - virtual ~tst_QInputContext() {} - -public slots: - void cleanupTestCase() {} - void init() {} - void cleanup() {} -private slots: - void maximumTextLength(); - void filterMouseEvents(); - void requestSoftwareInputPanel(); - void closeSoftwareInputPanel(); - void selections(); - void focusProxy(); - -private: - bool m_phoneIsQwerty; -}; - -void tst_QInputContext::maximumTextLength() -{ - QLineEdit le; - - le.setMaxLength(15); - QVariant variant = le.inputMethodQuery(Qt::ImMaximumTextLength); - QVERIFY(variant.isValid()); - QCOMPARE(variant.toInt(), 15); - - QPlainTextEdit pte; - // For BC/historical reasons, QPlainTextEdit::inputMethodQuery is protected. - variant = static_cast(&pte)->inputMethodQuery(Qt::ImMaximumTextLength); - QVERIFY(!variant.isValid()); -} - -class QFilterInputContext : public QInputContext -{ -public: - QFilterInputContext() {} - ~QFilterInputContext() {} - - QString identifierName() { return QString(); } - QString language() { return QString(); } - - void reset() {} - - bool isComposing() const { return false; } - - bool filterEvent( const QEvent *event ) - { - lastTypes.append(event->type()); - return false; - } - -public: - QList lastTypes; -}; - -void tst_QInputContext::filterMouseEvents() -{ - QLineEdit le; - le.show(); - QApplication::setActiveWindow(&le); - - QFilterInputContext *ic = new QFilterInputContext; - qApp->setInputContext(ic); - QTest::mouseClick(&le, Qt::LeftButton); - - QEXPECT_FAIL("", "QTBUG-22564", Abort); - QVERIFY(ic->lastTypes.indexOf(QEvent::MouseButtonRelease) >= 0); -} - -class RequestSoftwareInputPanelStyle : public QWindowsStyle -{ -public: - RequestSoftwareInputPanelStyle() - : m_rsipBehavior(RSIP_OnMouseClickAndAlreadyFocused) - { -#ifdef Q_OS_WINCE - qApp->setAutoSipEnabled(true); -#endif - } - ~RequestSoftwareInputPanelStyle() - { - } - - int styleHint(StyleHint hint, const QStyleOption *opt = 0, - const QWidget *widget = 0, QStyleHintReturn* returnData = 0) const - { - if (hint == SH_RequestSoftwareInputPanel) { - return m_rsipBehavior; - } else { - return QWindowsStyle::styleHint(hint, opt, widget, returnData); - } - } - - RequestSoftwareInputPanel m_rsipBehavior; -}; - -void tst_QInputContext::requestSoftwareInputPanel() -{ - QStyle *oldStyle = qApp->style(); - oldStyle->setParent(this); // Prevent it being deleted. - RequestSoftwareInputPanelStyle *newStyle = new RequestSoftwareInputPanelStyle; - qApp->setStyle(newStyle); - - QWidget w; - QLayout *layout = new QVBoxLayout; - QLineEdit *le1, *le2; - le1 = new QLineEdit; - le2 = new QLineEdit; - layout->addWidget(le1); - layout->addWidget(le2); - w.setLayout(layout); - - QFilterInputContext *ic = new QFilterInputContext; - qApp->setInputContext(ic); - - w.show(); - QApplication::setActiveWindow(&w); - - // Testing single click panel activation. - newStyle->m_rsipBehavior = QStyle::RSIP_OnMouseClick; - QTest::mouseClick(le2, Qt::LeftButton, Qt::NoModifier, QPoint(5, 5)); - QEXPECT_FAIL("", "QTBUG-22564", Abort); - QVERIFY(ic->lastTypes.indexOf(QEvent::RequestSoftwareInputPanel) >= 0); - ic->lastTypes.clear(); - - // Testing double click panel activation. - newStyle->m_rsipBehavior = QStyle::RSIP_OnMouseClickAndAlreadyFocused; - QTest::mouseClick(le1, Qt::LeftButton, Qt::NoModifier, QPoint(5, 5)); - QVERIFY(ic->lastTypes.indexOf(QEvent::RequestSoftwareInputPanel) < 0); - QTest::mouseClick(le1, Qt::LeftButton, Qt::NoModifier, QPoint(5, 5)); - QVERIFY(ic->lastTypes.indexOf(QEvent::RequestSoftwareInputPanel) >= 0); - ic->lastTypes.clear(); - - // Testing right mouse button - QTest::mouseClick(le1, Qt::RightButton, Qt::NoModifier, QPoint(5, 5)); - QVERIFY(ic->lastTypes.indexOf(QEvent::RequestSoftwareInputPanel) < 0); - - qApp->setStyle(oldStyle); - oldStyle->setParent(qApp); -} - -void tst_QInputContext::closeSoftwareInputPanel() -{ - QWidget w; - QLayout *layout = new QVBoxLayout; - QLineEdit *le1, *le2; - QRadioButton *rb; - le1 = new QLineEdit; - le2 = new QLineEdit; - rb = new QRadioButton; - layout->addWidget(le1); - layout->addWidget(le2); - layout->addWidget(rb); - w.setLayout(layout); - - QFilterInputContext *ic = new QFilterInputContext; - qApp->setInputContext(ic); - - w.show(); - QApplication::setActiveWindow(&w); - - // Testing that panel doesn't close between two input methods aware widgets. - QTest::mouseClick(le1, Qt::LeftButton, Qt::NoModifier, QPoint(5, 5)); - QTest::mouseClick(le2, Qt::LeftButton, Qt::NoModifier, QPoint(5, 5)); - QVERIFY(ic->lastTypes.indexOf(QEvent::CloseSoftwareInputPanel) < 0); - - // Testing that panel closes when focusing non-aware widget. - QTest::mouseClick(rb, Qt::LeftButton, Qt::NoModifier, QPoint(5, 5)); - QEXPECT_FAIL("", "QTBUG-22564", Abort); - QVERIFY(ic->lastTypes.indexOf(QEvent::CloseSoftwareInputPanel) >= 0); -} - -void tst_QInputContext::selections() -{ - QLineEdit le; - le.setText("Test text"); - le.setSelection(2, 2); - QCOMPARE(le.inputMethodQuery(Qt::ImCursorPosition).toInt(), 4); - QCOMPARE(le.inputMethodQuery(Qt::ImAnchorPosition).toInt(), 2); - - QList attributes; - attributes.append(QInputMethodEvent::Attribute(QInputMethodEvent::Selection, 5, 3, QVariant())); - QInputMethodEvent event("", attributes); - QApplication::sendEvent(&le, &event); - QCOMPARE(le.cursorPosition(), 8); - QCOMPARE(le.selectionStart(), 5); - QCOMPARE(le.inputMethodQuery(Qt::ImCursorPosition).toInt(), 8); - QCOMPARE(le.inputMethodQuery(Qt::ImAnchorPosition).toInt(), 5); -} - -void tst_QInputContext::focusProxy() -{ - QWidget toplevel(0, Qt::X11BypassWindowManagerHint); toplevel.setObjectName("toplevel"); - QWidget w(&toplevel); w.setObjectName("w"); - QWidget proxy(&w); proxy.setObjectName("proxy"); - QWidget proxy2(&w); proxy2.setObjectName("proxy2"); - w.setFocusProxy(&proxy); - w.setAttribute(Qt::WA_InputMethodEnabled); - toplevel.show(); - QApplication::setActiveWindow(&toplevel); - QTest::qWaitForWindowShown(&toplevel); - w.setFocus(); - w.setAttribute(Qt::WA_NativeWindow); // we shouldn't crash! - - proxy.setAttribute(Qt::WA_InputMethodEnabled); - proxy2.setAttribute(Qt::WA_InputMethodEnabled); - - proxy2.setFocus(); - w.setFocus(); - - QInputContext *gic = qApp->inputContext(); - QVERIFY(gic); - QCOMPARE(gic->focusWidget(), &proxy); - - // then change the focus proxy and check that input context is valid - QVERIFY(w.hasFocus()); - QVERIFY(proxy.hasFocus()); - QVERIFY(!proxy2.hasFocus()); - w.setFocusProxy(&proxy2); - QVERIFY(!w.hasFocus()); - QVERIFY(proxy.hasFocus()); - QVERIFY(!proxy2.hasFocus()); - QCOMPARE(gic->focusWidget(), &proxy); -} - -#ifdef QT_WEBKIT_LIB -class AutoWebView : public QWebView -{ - Q_OBJECT - -public: - AutoWebView() - : m_length(0) - , m_mode(QLineEdit::Normal) - { - updatePage(); - } - ~AutoWebView() {} - - void updatePage() - { - // The update might reset the input method parameters. - bool imEnabled = testAttribute(Qt::WA_InputMethodEnabled); - Qt::InputMethodHints hints = inputMethodHints(); - - QString page = "" - "
"; - if (m_mode == QLineEdit::Password) - page = page.arg("password"); - else - page = page.arg("text"); - - if (m_length == 0) - page = page.arg(""); - else - page = page.arg("maxlength=\"" + QString::number(m_length) + "\""); - - setHtml(page); - - setAttribute(Qt::WA_InputMethodEnabled, imEnabled); - setInputMethodHints(hints); - } - void setMaxLength(int length) - { - m_length = length; - updatePage(); - } - void setEchoMode(QLineEdit::EchoMode mode) - { - m_mode = mode; - updatePage(); - } - - int m_length; - QLineEdit::EchoMode m_mode; -}; - -class AutoGraphicsWebView : public QGraphicsView -{ - Q_OBJECT - -public: - AutoGraphicsWebView() - : m_length(0) - , m_mode(QLineEdit::Normal) - { - m_scene.addItem(&m_view); - setScene(&m_scene); - m_view.setFocus(); - updatePage(); - } - ~AutoGraphicsWebView() {} - - void updatePage() - { - // The update might reset the input method parameters. - bool imEnabled = testAttribute(Qt::WA_InputMethodEnabled); - Qt::InputMethodHints hints = inputMethodHints(); - - QString page = "" - "
"; - if (m_mode == QLineEdit::Password) - page = page.arg("password"); - else - page = page.arg("text"); - - if (m_length == 0) - page = page.arg(""); - else - page = page.arg("maxlength=\"" + QString::number(m_length) + "\""); - - m_view.setHtml(page); - - setAttribute(Qt::WA_InputMethodEnabled, imEnabled); - setInputMethodHints(hints); - } - void setMaxLength(int length) - { - m_length = length; - updatePage(); - } - void setEchoMode(QLineEdit::EchoMode mode) - { - m_mode = mode; - updatePage(); - } - - int m_length; - QLineEdit::EchoMode m_mode; - QGraphicsScene m_scene; - QGraphicsWebView m_view; -}; -#endif // QT_WEBKIT_LIB - -QTEST_MAIN(tst_QInputContext) -#include "tst_qinputcontext.moc" -- cgit v1.2.3 From a32df45bec6fb414da8bfb6d4424dd3f7a8e3f7d Mon Sep 17 00:00:00 2001 From: Pekka Vuorela Date: Thu, 15 Dec 2011 16:06:27 +0200 Subject: Remove QInputContext based test from QGraphicsItem tests Was basically checking that a method call is a method call and QApplication::setInputContext() sets the input context. Change-Id: Ia8723fe245f2480d503f0140f61078dc074161fc Reviewed-by: Lars Knoll Reviewed-by: Joona Petrell --- .../qgraphicsitem/tst_qgraphicsitem.cpp | 82 ---------------------- 1 file changed, 82 deletions(-) diff --git a/tests/auto/widgets/graphicsview/qgraphicsitem/tst_qgraphicsitem.cpp b/tests/auto/widgets/graphicsview/qgraphicsitem/tst_qgraphicsitem.cpp index 8474293a54..f5a09b89a0 100644 --- a/tests/auto/widgets/graphicsview/qgraphicsitem/tst_qgraphicsitem.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicsitem/tst_qgraphicsitem.cpp @@ -61,7 +61,6 @@ #include #include #include -#include #include #include #include @@ -440,7 +439,6 @@ private slots: void modality_keyEvents(); void itemIsInFront(); void scenePosChange(); - void updateMicroFocus(); void textItem_shortcuts(); void scroll(); void focusHandling_data(); @@ -10436,86 +10434,6 @@ void tst_QGraphicsItem::scenePosChange() QCOMPARE(child2->changes.count(QGraphicsItem::ItemScenePositionHasChanged), 0); } -class MyInputContext : public QInputContext -{ -public: - MyInputContext() : nbUpdates(0) {} - ~MyInputContext() {} - - QString identifierName() { return QString(); } - QString language() { return QString(); } - - void reset() {} - - bool isComposing() const { return false; } - - void update() { nbUpdates++; } - - bool nbUpdates; -}; - -class MyInputWidget : public QGraphicsWidget -{ -public: - MyInputWidget() - { - setFlag(QGraphicsItem::ItemIsFocusable, true); - setFlag(QGraphicsItem::ItemAcceptsInputMethod, true); - } - void mousePressEvent(QGraphicsSceneMouseEvent *event) - { - event->accept(); - } - - void doUpdateMicroFocus() - { - if (QWidget *fw = QApplication::focusWidget()) { - if (scene()) { - for (int i = 0 ; i < scene()->views().count() ; ++i) { - if (scene()->views().at(i) == fw) { - if (QInputContext *inputContext = fw->inputContext()) { - inputContext->update(); - } - } - } - } - } - } -}; - -void tst_QGraphicsItem::updateMicroFocus() -{ -#if defined Q_OS_WIN || defined Q_OS_MAC - QSKIP("QTBUG-9578"); -#endif - QGraphicsScene scene; - QWidget parent; - QGridLayout layout; - parent.setLayout(&layout); - QGraphicsView view(&scene); - QGraphicsView view2(&scene); - layout.addWidget(&view, 0, 0); - layout.addWidget(&view2, 0, 1); - MyInputContext *ic = new MyInputContext; - qApp->setInputContext(ic); - MyInputWidget input; - input.setPos(0, 0); - input.resize(150, 150); - scene.addItem(&input); - input.setFocus(); - parent.show(); - view.setFocus(); - qApp->setAutoSipEnabled(true); - QApplication::setActiveWindow(&parent); - QTest::qWaitForWindowShown(&parent); - QTRY_COMPARE(QApplication::activeWindow(), static_cast(&parent)); - //We reset the number of updates that happened previously (initialisation) - ic->nbUpdates = 0; - input.doUpdateMicroFocus(); - QApplication::processEvents(); - QTRY_COMPARE(ic->nbUpdates, 1); -} - void tst_QGraphicsItem::textItem_shortcuts() { QWidget w; -- cgit v1.2.3 From a1743e46813dc146ff71b8146d3a8bf16a2589b6 Mon Sep 17 00:00:00 2001 From: Pekka Vuorela Date: Thu, 15 Dec 2011 15:19:35 +0200 Subject: Remove input context action support from editors Relying on obsolete QInputContext API. Change-Id: I954ccf57204cbb24ff5cec622384fa3b9932a079 Reviewed-by: Lars Knoll Reviewed-by: Joona Petrell --- src/widgets/widgets/qlineedit.cpp | 13 ------------- src/widgets/widgets/qwidgettextcontrol.cpp | 12 ------------ 2 files changed, 25 deletions(-) diff --git a/src/widgets/widgets/qlineedit.cpp b/src/widgets/widgets/qlineedit.cpp index 4dc30d6542..5b6a413b40 100644 --- a/src/widgets/widgets/qlineedit.cpp +++ b/src/widgets/widgets/qlineedit.cpp @@ -68,10 +68,6 @@ #ifndef QT_NO_ACCESSIBILITY #include "qaccessible.h" #endif -#ifndef QT_NO_IM -#include "qinputcontext.h" -#include "qlist.h" -#endif #include "qabstractitemview.h" #include "private/qstylesheetstyle_p.h" @@ -2062,15 +2058,6 @@ QMenu *QLineEdit::createStandardContextMenu() d->selectAllAction = action; connect(action, SIGNAL(triggered()), SLOT(selectAll())); -#if !defined(QT_NO_IM) - QInputContext *qic = inputContext(); - if (qic) { - QList imActions = qic->actions(); - for (int i = 0; i < imActions.size(); ++i) - popup->addAction(imActions.at(i)); - } -#endif - #if defined(Q_WS_WIN) || defined(Q_WS_X11) if (!d->control->isReadOnly() && qt_use_rtl_extensions) { #else diff --git a/src/widgets/widgets/qwidgettextcontrol.cpp b/src/widgets/widgets/qwidgettextcontrol.cpp index e2be1cb2bf..3aaeae50d2 100644 --- a/src/widgets/widgets/qwidgettextcontrol.cpp +++ b/src/widgets/widgets/qwidgettextcontrol.cpp @@ -75,7 +75,6 @@ #include #include #include -#include #include #include #include @@ -2167,17 +2166,6 @@ QMenu *QWidgetTextControl::createStandardContextMenu(const QPointF &pos, QWidget a->setEnabled(!d->doc->isEmpty()); } -#if !defined(QT_NO_IM) - if (d->contextWidget) { - QInputContext *qic = qApp->inputContext(); - if (qic) { - QList imActions = qic->actions(); - for (int i = 0; i < imActions.size(); ++i) - menu->addAction(imActions.at(i)); - } - } -#endif - #if defined(Q_WS_WIN) || defined(Q_WS_X11) if ((d->interactionFlags & Qt::TextEditable) && qt_use_rtl_extensions) { #else -- cgit v1.2.3 From b652cc8d20788c0e2d016d254c82e8ad879e086d Mon Sep 17 00:00:00 2001 From: Pekka Vuorela Date: Thu, 15 Dec 2011 14:42:07 +0200 Subject: Adapt from input context mousehandler to input panel in QLineEdit Change-Id: If14d0cc18188da1dbc8b152fa2fa9583ff03b3bc Reviewed-by: Lars Knoll Reviewed-by: Joona Petrell --- src/widgets/widgets/qlineedit_p.cpp | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/src/widgets/widgets/qlineedit_p.cpp b/src/widgets/widgets/qlineedit_p.cpp index b17651e1d3..f700588fdb 100644 --- a/src/widgets/widgets/qlineedit_p.cpp +++ b/src/widgets/widgets/qlineedit_p.cpp @@ -51,7 +51,7 @@ #include "qaccessible.h" #endif #ifndef QT_NO_IM -#include "qinputcontext.h" +#include "qinputpanel.h" #include "qlist.h" #endif @@ -249,23 +249,22 @@ void QLineEditPrivate::resetInputPanel() /*! This function is not intended as polymorphic usage. Just a shared code - fragment that calls QInputContext::mouseHandler for this + fragment that calls QInputPanel::invokeAction for this class. */ bool QLineEditPrivate::sendMouseEventToInputContext( QMouseEvent *e ) { #if !defined QT_NO_IM - Q_Q(QLineEdit); if ( control->composeMode() ) { int tmp_cursor = xToPos(e->pos().x()); int mousePos = tmp_cursor - control->cursor(); if ( mousePos < 0 || mousePos > control->preeditAreaText().length() ) mousePos = -1; - QInputContext *qic = q->inputContext(); - if (qic && mousePos >= 0) { - // may be causing reset() in some input methods - qic->mouseHandler(mousePos, e); + if (mousePos >= 0) { + if (e->type() == QEvent::MouseButtonRelease) + qApp->inputPanel()->invokeAction(QInputPanel::Click, mousePos); + return true; } } -- cgit v1.2.3 From ab9ce77e095dd9e1c1268a4d330496ce7a31b1c3 Mon Sep 17 00:00:00 2001 From: Robin Burchell Date: Tue, 20 Dec 2011 12:53:32 +0100 Subject: Remove qt_image_id() and qt_image_colortable(). Both of these have been unused at least as far back as Qt 4.5 according to git log -p. Change-Id: I381024cb1621fbfdb806a62e1cc55ce13219ef17 Reviewed-by: Gunnar Sletta --- src/gui/image/qimage.cpp | 11 ----------- src/gui/image/qimage.h | 2 -- src/gui/painting/qpaintengine_raster.cpp | 2 -- 3 files changed, 15 deletions(-) diff --git a/src/gui/image/qimage.cpp b/src/gui/image/qimage.cpp index c107fea919..9df6bd104c 100644 --- a/src/gui/image/qimage.cpp +++ b/src/gui/image/qimage.cpp @@ -114,17 +114,6 @@ static QImage rotated90(const QImage &src); static QImage rotated180(const QImage &src); static QImage rotated270(const QImage &src); -// ### Qt 5: remove -Q_GUI_EXPORT qint64 qt_image_id(const QImage &image) -{ - return image.cacheKey(); -} - -const QVector *qt_image_colortable(const QImage &image) -{ - return &image.d->colortable; -} - QBasicAtomicInt qimage_serial_number = Q_BASIC_ATOMIC_INITIALIZER(1); QImageData::QImageData() diff --git a/src/gui/image/qimage.h b/src/gui/image/qimage.h index a8491c8109..4d1b503cc4 100644 --- a/src/gui/image/qimage.h +++ b/src/gui/image/qimage.h @@ -295,8 +295,6 @@ private: friend class QRasterPlatformPixmap; friend class QBlittablePlatformPixmap; friend class QPixmapCacheEntry; - friend Q_GUI_EXPORT qint64 qt_image_id(const QImage &image); - friend const QVector *qt_image_colortable(const QImage &image); public: typedef QImageData * DataPtr; diff --git a/src/gui/painting/qpaintengine_raster.cpp b/src/gui/painting/qpaintengine_raster.cpp index 60ead45eab..e1b271dc64 100644 --- a/src/gui/painting/qpaintengine_raster.cpp +++ b/src/gui/painting/qpaintengine_raster.cpp @@ -4501,8 +4501,6 @@ void QSpanData::setupMatrix(const QTransform &matrix, int bilin) adjustSpanMethods(); } -extern const QVector *qt_image_colortable(const QImage &image); - void QSpanData::initTexture(const QImage *image, int alpha, QTextureData::Type _type, const QRect &sourceRect) { const QImageData *d = const_cast(image)->data_ptr(); -- cgit v1.2.3 From 2992db14e75fdc7d2a9d964ed8860feb4b20afda Mon Sep 17 00:00:00 2001 From: Robin Burchell Date: Tue, 20 Dec 2011 12:09:29 +0100 Subject: Remove unused qInitResourceIO() method. Was effectively removed in 4.x's 2e7d5def1fdabb5949fbffc629da500aa2bb78d7, but couldn't be removed due to it being exported. Change-Id: I5061f50deaeae7f53e8b688633e377095b4463c2 Reviewed-by: Thiago Macieira --- src/corelib/io/qresource.cpp | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/corelib/io/qresource.cpp b/src/corelib/io/qresource.cpp index 6ad15788b0..37f4591859 100644 --- a/src/corelib/io/qresource.cpp +++ b/src/corelib/io/qresource.cpp @@ -1491,6 +1491,4 @@ bool QResourceFileEnginePrivate::unmap(uchar *ptr) return true; } -Q_CORE_EXPORT void qInitResourceIO() { } // ### Qt 5: remove - QT_END_NAMESPACE -- cgit v1.2.3 From b8ac9da63a833b0568f12bfe5c37da99c9570523 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Tue, 20 Dec 2011 15:13:51 +0100 Subject: fixqt4headers: Add QtCore to folders (for moved item models). Change-Id: I71f805c618a888e654207fb29f68769f9d90db9b Reviewed-by: Friedemann Kleint --- bin/fixqt4headers.pl | 1 + 1 file changed, 1 insertion(+) diff --git a/bin/fixqt4headers.pl b/bin/fixqt4headers.pl index 966681fad5..3c7dd867ba 100755 --- a/bin/fixqt4headers.pl +++ b/bin/fixqt4headers.pl @@ -140,6 +140,7 @@ sub findQtHeaders die "This script requires the QTDIR environment variable pointing to Qt 5\n" unless $qtdir; +findQtHeaders('QtCore', $qtdir); findQtHeaders('QtWidgets', $qtdir); findQtHeaders('QtPrintSupport', $qtdir); -- cgit v1.2.3 From 2532ddc48b802fd8d4f5f15e128c932df85f007e Mon Sep 17 00:00:00 2001 From: Harald Fernengel Date: Tue, 20 Dec 2011 13:42:17 +0100 Subject: make QString::fromLatin1 partially inline This allows us to benefit from compile time optimizations when calling strlen() Change-Id: If6694117e613a012fce97f8664e6b43005d255de Reviewed-by: Thiago Macieira --- src/corelib/tools/qstring.cpp | 6 +----- src/corelib/tools/qstring.h | 6 +++++- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/corelib/tools/qstring.cpp b/src/corelib/tools/qstring.cpp index fb818e37b8..241a77d057 100644 --- a/src/corelib/tools/qstring.cpp +++ b/src/corelib/tools/qstring.cpp @@ -3818,7 +3818,7 @@ QString::Data *QString::fromAscii_helper(const char *str, int size) return fromLatin1_helper(str, size); } -/*! +/*! \fn QString QString::fromLatin1(const char *str, int size) Returns a QString initialized with the first \a size characters of the Latin-1 string \a str. @@ -3827,10 +3827,6 @@ QString::Data *QString::fromAscii_helper(const char *str, int size) \sa toLatin1(), fromAscii(), fromUtf8(), fromLocal8Bit() */ -QString QString::fromLatin1(const char *str, int size) -{ - return QString(fromLatin1_helper(str, size), 0); -} /*! diff --git a/src/corelib/tools/qstring.h b/src/corelib/tools/qstring.h index 4e1e67bfa6..cccf275ffd 100644 --- a/src/corelib/tools/qstring.h +++ b/src/corelib/tools/qstring.h @@ -408,7 +408,11 @@ public: QVector toUcs4() const Q_REQUIRED_RESULT; static QString fromAscii(const char *, int size = -1); - static QString fromLatin1(const char *, int size = -1); + static inline QString fromLatin1(const char *str, int size = -1) + { + // make this inline so we can benefit from strlen() compile time optimization + return QString(fromLatin1_helper(str, (str && size == -1) ? int(strlen(str)) : size), 0); + } static QString fromUtf8(const char *, int size = -1); static QString fromLocal8Bit(const char *, int size = -1); static QString fromUtf16(const ushort *, int size = -1); -- cgit v1.2.3 From 43aef6f8d2db00a57fd8e8e4be348dd50d00d399 Mon Sep 17 00:00:00 2001 From: Robin Burchell Date: Tue, 20 Dec 2011 12:36:16 +0100 Subject: Remove non-const QMovie::cacheMode(). There's a const QMovie::cacheMode(), so having this makes no sense. Change-Id: I0b6f20055fcbb28f3a21a8bc303f82543592c9c6 Reviewed-by: Marius Storm-Olsen --- src/gui/image/qmovie.cpp | 9 --------- src/gui/image/qmovie.h | 2 -- 2 files changed, 11 deletions(-) diff --git a/src/gui/image/qmovie.cpp b/src/gui/image/qmovie.cpp index ff00059f51..3447c26397 100644 --- a/src/gui/image/qmovie.cpp +++ b/src/gui/image/qmovie.cpp @@ -1017,15 +1017,6 @@ void QMovie::setCacheMode(CacheMode cacheMode) d->cacheMode = cacheMode; } -/*! - \internal -*/ -QMovie::CacheMode QMovie::cacheMode() -{ - Q_D(QMovie); - return d->cacheMode; -} - QT_END_NAMESPACE #include "moc_qmovie.cpp" diff --git a/src/gui/image/qmovie.h b/src/gui/image/qmovie.h index 0278957091..d1c0900ff8 100644 --- a/src/gui/image/qmovie.h +++ b/src/gui/image/qmovie.h @@ -125,8 +125,6 @@ public: CacheMode cacheMode() const; void setCacheMode(CacheMode mode); - CacheMode cacheMode(); // ### Qt 5: remove me - Q_SIGNALS: void started(); void resized(const QSize &size); -- cgit v1.2.3 From 189f944a0df4b2f4a6850979eb0f158bc32e0e4c Mon Sep 17 00:00:00 2001 From: Robin Burchell Date: Tue, 20 Dec 2011 12:30:04 +0100 Subject: Remove unused QPicture::detach_helper() private method. QPicture doesn't need this for quite a long time now, so get rid of it. Change-Id: Ie575f32555deb130f7b27e11a7617fb2b3dc4e43 Reviewed-by: Marius Storm-Olsen --- src/gui/image/qpicture.cpp | 11 ----------- src/gui/image/qpicture.h | 1 - 2 files changed, 12 deletions(-) diff --git a/src/gui/image/qpicture.cpp b/src/gui/image/qpicture.cpp index dfc84c56d8..2cddb9af5f 100644 --- a/src/gui/image/qpicture.cpp +++ b/src/gui/image/qpicture.cpp @@ -1008,17 +1008,6 @@ int QPicture::metric(PaintDeviceMetric m) const \internal */ -/*! \internal -### Qt 5 - remove me - */ -void QPicture::detach_helper() -{ - // QExplicitelySharedDataPointer takes care of cloning using - // QPicturePrivate's copy constructor. Do not call detach_helper() anymore - // and remove in Qt 5, please. - Q_ASSERT_X(false, "QPicture::detach_helper()", "Do not call this function"); -} - /*! Assigns picture \a p to this picture and returns a reference to this picture. diff --git a/src/gui/image/qpicture.h b/src/gui/image/qpicture.h index 1c5d3a9c8f..ab25723fba 100644 --- a/src/gui/image/qpicture.h +++ b/src/gui/image/qpicture.h @@ -107,7 +107,6 @@ protected: private: bool exec(QPainter *p, QDataStream &ds, int i); - void detach_helper(); QExplicitlySharedDataPointer d_ptr; friend class QPicturePaintEngine; -- cgit v1.2.3 From 341b62d3080c9ab745b25a0e985bbdedf5754117 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Mon, 19 Dec 2011 20:32:06 +0100 Subject: Add missing connections. Unit tested in next commit. Change-Id: Iab37829f98ef8f2258a30aed60e95aa114379b7e Reviewed-by: David Faure --- src/widgets/itemviews/qabstractitemview.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/widgets/itemviews/qabstractitemview.cpp b/src/widgets/itemviews/qabstractitemview.cpp index 0776ca61f0..aa4f8f5ec0 100644 --- a/src/widgets/itemviews/qabstractitemview.cpp +++ b/src/widgets/itemviews/qabstractitemview.cpp @@ -683,6 +683,8 @@ void QAbstractItemView::setModel(QAbstractItemModel *model) this, SLOT(rowsAboutToBeRemoved(QModelIndex,int,int))); disconnect(d->model, SIGNAL(rowsRemoved(QModelIndex,int,int)), this, SLOT(_q_rowsRemoved(QModelIndex,int,int))); + disconnect(d->model, SIGNAL(rowsMoved(QModelIndex,int,int,QModelIndex,int)), + this, SLOT(_q_rowsMoved(QModelIndex,int,int,QModelIndex,int))); disconnect(d->model, SIGNAL(rowsInserted(QModelIndex,int,int)), this, SLOT(_q_rowsInserted(QModelIndex,int,int))); disconnect(d->model, SIGNAL(columnsAboutToBeRemoved(QModelIndex,int,int)), @@ -691,6 +693,8 @@ void QAbstractItemView::setModel(QAbstractItemModel *model) this, SLOT(_q_columnsRemoved(QModelIndex,int,int))); disconnect(d->model, SIGNAL(columnsInserted(QModelIndex,int,int)), this, SLOT(_q_columnsInserted(QModelIndex,int,int))); + disconnect(d->model, SIGNAL(columnsMoved(QModelIndex,int,int,QModelIndex,int)), + this, SLOT(_q_columnsMoved(QModelIndex,int,int,QModelIndex,int))); disconnect(d->model, SIGNAL(modelReset()), this, SLOT(reset())); disconnect(d->model, SIGNAL(layoutChanged()), this, SLOT(_q_layoutChanged())); @@ -721,12 +725,16 @@ void QAbstractItemView::setModel(QAbstractItemModel *model) this, SLOT(rowsAboutToBeRemoved(QModelIndex,int,int))); connect(d->model, SIGNAL(rowsRemoved(QModelIndex,int,int)), this, SLOT(_q_rowsRemoved(QModelIndex,int,int))); + connect(d->model, SIGNAL(rowsMoved(QModelIndex,int,int,QModelIndex,int)), + this, SLOT(_q_rowsMoved(QModelIndex,int,int,QModelIndex,int))); connect(d->model, SIGNAL(columnsAboutToBeRemoved(QModelIndex,int,int)), this, SLOT(_q_columnsAboutToBeRemoved(QModelIndex,int,int))); connect(d->model, SIGNAL(columnsRemoved(QModelIndex,int,int)), this, SLOT(_q_columnsRemoved(QModelIndex,int,int))); connect(d->model, SIGNAL(columnsInserted(QModelIndex,int,int)), this, SLOT(_q_columnsInserted(QModelIndex,int,int))); + connect(d->model, SIGNAL(columnsMoved(QModelIndex,int,int,QModelIndex,int)), + this, SLOT(_q_columnsMoved(QModelIndex,int,int,QModelIndex,int))); connect(d->model, SIGNAL(modelReset()), this, SLOT(reset())); connect(d->model, SIGNAL(layoutChanged()), this, SLOT(_q_layoutChanged())); -- cgit v1.2.3 From e5f84ebf010907a3eaa90546966b4929dfd894fa Mon Sep 17 00:00:00 2001 From: Robin Burchell Date: Tue, 20 Dec 2011 18:28:49 +0100 Subject: Merge QReadWriteLock constructor overloads per Qt 5 comment. Change-Id: I3b569b1240a0bc5b2589de353dbf62c175472448 Reviewed-by: Thiago Macieira --- src/corelib/thread/qreadwritelock.cpp | 11 ++--------- src/corelib/thread/qreadwritelock.h | 3 +-- 2 files changed, 3 insertions(+), 11 deletions(-) diff --git a/src/corelib/thread/qreadwritelock.cpp b/src/corelib/thread/qreadwritelock.cpp index f552e6f6d6..b3f791589e 100644 --- a/src/corelib/thread/qreadwritelock.cpp +++ b/src/corelib/thread/qreadwritelock.cpp @@ -106,20 +106,13 @@ QT_BEGIN_NAMESPACE \sa QReadWriteLock() */ -/*! - Constructs a QReadWriteLock object in NonRecursive mode. - - \sa lockForRead(), lockForWrite() -*/ -QReadWriteLock::QReadWriteLock() - :d(new QReadWriteLockPrivate(NonRecursive)) -{ } - /*! \since 4.4 Constructs a QReadWriteLock object in the given \a recursionMode. + The default recursion mode is NonRecursive. + \sa lockForRead(), lockForWrite(), RecursionMode */ QReadWriteLock::QReadWriteLock(RecursionMode recursionMode) diff --git a/src/corelib/thread/qreadwritelock.h b/src/corelib/thread/qreadwritelock.h index 7bb6329522..c369e20d90 100644 --- a/src/corelib/thread/qreadwritelock.h +++ b/src/corelib/thread/qreadwritelock.h @@ -60,8 +60,7 @@ class Q_CORE_EXPORT QReadWriteLock public: enum RecursionMode { NonRecursive, Recursive }; - QReadWriteLock(); // ### Qt 5: merge with below - QReadWriteLock(RecursionMode recursionMode); + explicit QReadWriteLock(RecursionMode recursionMode = NonRecursive); ~QReadWriteLock(); void lockForRead(); -- cgit v1.2.3 From bf4177e9db09fa87b0bc0acae1b8555b1af8f841 Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Tue, 20 Dec 2011 16:44:19 +1000 Subject: Remove mention of Trolltech in installation path. Task-number: QTBUG-19653 Change-Id: Ic92e0bb4980af53568efe77ebc72e048ee5a32d7 Reviewed-by: Bradley T. Hughes Reviewed-by: Thiago Macieira --- src/corelib/kernel/qcoreapplication.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/corelib/kernel/qcoreapplication.cpp b/src/corelib/kernel/qcoreapplication.cpp index 42c5bd80a3..6f26be2928 100644 --- a/src/corelib/kernel/qcoreapplication.cpp +++ b/src/corelib/kernel/qcoreapplication.cpp @@ -1823,9 +1823,9 @@ bool QCoreApplicationPrivate::isTranslatorInstalled(QTranslator *translator) /*! Returns the directory that contains the application executable. - For example, if you have installed Qt in the \c{C:\Trolltech\Qt} + For example, if you have installed Qt in the \c{C:\Qt} directory, and you run the \c{regexp} example, this function will - return "C:/Trolltech/Qt/examples/tools/regexp". + return "C:/Qt/examples/tools/regexp". On Mac OS X this will point to the directory actually containing the executable, which may be inside of an application bundle (if the -- cgit v1.2.3 From a09fdd91cf16e3e6a623197e192458a32e671a1f Mon Sep 17 00:00:00 2001 From: Robin Burchell Date: Fri, 16 Dec 2011 18:32:46 +0100 Subject: Fix -tickcounter in qtestlib. HAVE_TICK_COUNTER is supposed to be set (if possible) from cycle_p.h, so guarding cycle_p.h's inclusion with HAVE_TICK_COUNTER ensures it will never be set. Change-Id: I6313d0a2efd47c89522623e8e7b3f505489ded90 Reviewed-by: David Faure Reviewed-by: Jason McDonald --- src/testlib/qbenchmarkmeasurement_p.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/testlib/qbenchmarkmeasurement_p.h b/src/testlib/qbenchmarkmeasurement_p.h index 53e44fd531..c493d96dd6 100644 --- a/src/testlib/qbenchmarkmeasurement_p.h +++ b/src/testlib/qbenchmarkmeasurement_p.h @@ -54,9 +54,7 @@ // #include -#ifdef HAVE_TICK_COUNTER #include -#endif #include QT_BEGIN_NAMESPACE -- cgit v1.2.3 From 930bcb266cde1df20918cb53799c857b6b78cfa3 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Thu, 15 Dec 2011 15:35:40 +0100 Subject: Fix whitespace consistency. Change-Id: Ia5debce8e5be4e9c67e1ef303e136816ab55bf90 Reviewed-by: David Faure --- src/widgets/itemviews/qheaderview.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/widgets/itemviews/qheaderview.cpp b/src/widgets/itemviews/qheaderview.cpp index e35f9ba0f8..d4edbb7bfa 100644 --- a/src/widgets/itemviews/qheaderview.cpp +++ b/src/widgets/itemviews/qheaderview.cpp @@ -380,8 +380,8 @@ void QHeaderView::setModel(QAbstractItemModel *model) } QObject::disconnect(d->model, SIGNAL(headerDataChanged(Qt::Orientation,int,int)), this, SLOT(headerDataChanged(Qt::Orientation,int,int))); - QObject::disconnect(d->model, SIGNAL(layoutAboutToBeChanged()), - this, SLOT(_q_layoutAboutToBeChanged())); + QObject::disconnect(d->model, SIGNAL(layoutAboutToBeChanged()), + this, SLOT(_q_layoutAboutToBeChanged())); } if (model && model != QAbstractItemModelPrivate::staticEmptyModel()) { @@ -389,9 +389,9 @@ void QHeaderView::setModel(QAbstractItemModel *model) QObject::connect(model, SIGNAL(columnsInserted(QModelIndex,int,int)), this, SLOT(sectionsInserted(QModelIndex,int,int))); QObject::connect(model, SIGNAL(columnsAboutToBeRemoved(QModelIndex,int,int)), - this, SLOT(sectionsAboutToBeRemoved(QModelIndex,int,int))); + this, SLOT(sectionsAboutToBeRemoved(QModelIndex,int,int))); QObject::connect(model, SIGNAL(columnsRemoved(QModelIndex,int,int)), - this, SLOT(_q_sectionsRemoved(QModelIndex,int,int))); + this, SLOT(_q_sectionsRemoved(QModelIndex,int,int))); } else { QObject::connect(model, SIGNAL(rowsInserted(QModelIndex,int,int)), this, SLOT(sectionsInserted(QModelIndex,int,int))); -- cgit v1.2.3 From c76f938fe11141ce9299a5540d3e3d7749931996 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Thu, 15 Dec 2011 15:35:59 +0100 Subject: Connect to the moved signals in the header view. Change-Id: I6954f77ad7d02970f562abcbaf4e733c6d43ead5 Reviewed-by: David Faure --- src/widgets/itemviews/qheaderview.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/widgets/itemviews/qheaderview.cpp b/src/widgets/itemviews/qheaderview.cpp index d4edbb7bfa..cbc40367e3 100644 --- a/src/widgets/itemviews/qheaderview.cpp +++ b/src/widgets/itemviews/qheaderview.cpp @@ -370,6 +370,8 @@ void QHeaderView::setModel(QAbstractItemModel *model) this, SLOT(sectionsAboutToBeRemoved(QModelIndex,int,int))); QObject::disconnect(d->model, SIGNAL(columnsRemoved(QModelIndex,int,int)), this, SLOT(_q_sectionsRemoved(QModelIndex,int,int))); + QObject::disconnect(d->model, SIGNAL(columnsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)), + this, SLOT(_q_layoutAboutToBeChanged())); } else { QObject::disconnect(d->model, SIGNAL(rowsInserted(QModelIndex,int,int)), this, SLOT(sectionsInserted(QModelIndex,int,int))); @@ -377,6 +379,8 @@ void QHeaderView::setModel(QAbstractItemModel *model) this, SLOT(sectionsAboutToBeRemoved(QModelIndex,int,int))); QObject::disconnect(d->model, SIGNAL(rowsRemoved(QModelIndex,int,int)), this, SLOT(_q_sectionsRemoved(QModelIndex,int,int))); + QObject::disconnect(d->model, SIGNAL(rowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)), + this, SLOT(_q_layoutAboutToBeChanged())); } QObject::disconnect(d->model, SIGNAL(headerDataChanged(Qt::Orientation,int,int)), this, SLOT(headerDataChanged(Qt::Orientation,int,int))); @@ -392,6 +396,8 @@ void QHeaderView::setModel(QAbstractItemModel *model) this, SLOT(sectionsAboutToBeRemoved(QModelIndex,int,int))); QObject::connect(model, SIGNAL(columnsRemoved(QModelIndex,int,int)), this, SLOT(_q_sectionsRemoved(QModelIndex,int,int))); + QObject::connect(model, SIGNAL(columnsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)), + this, SLOT(_q_layoutAboutToBeChanged())); } else { QObject::connect(model, SIGNAL(rowsInserted(QModelIndex,int,int)), this, SLOT(sectionsInserted(QModelIndex,int,int))); @@ -399,6 +405,8 @@ void QHeaderView::setModel(QAbstractItemModel *model) this, SLOT(sectionsAboutToBeRemoved(QModelIndex,int,int))); QObject::connect(model, SIGNAL(rowsRemoved(QModelIndex,int,int)), this, SLOT(_q_sectionsRemoved(QModelIndex,int,int))); + QObject::connect(model, SIGNAL(rowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)), + this, SLOT(_q_layoutAboutToBeChanged())); } QObject::connect(model, SIGNAL(headerDataChanged(Qt::Orientation,int,int)), this, SLOT(headerDataChanged(Qt::Orientation,int,int))); -- cgit v1.2.3 From bec40ee055c377a925cd0dde3cbd68a7ded647dc Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Mon, 19 Dec 2011 22:17:02 +0100 Subject: Fix style in cmake macros files. Change-Id: I2806ce63f5948dde9c582740bc2f070900987fb5 Reviewed-by: Alexander Neundorf Reviewed-by: Stephen Kelly --- src/corelib/Qt5CoreMacros.cmake | 319 ++++++++++++++++++------------------- src/widgets/Qt5WidgetsMacros.cmake | 39 +++-- 2 files changed, 177 insertions(+), 181 deletions(-) diff --git a/src/corelib/Qt5CoreMacros.cmake b/src/corelib/Qt5CoreMacros.cmake index b7f785b716..f234a240a1 100644 --- a/src/corelib/Qt5CoreMacros.cmake +++ b/src/corelib/Qt5CoreMacros.cmake @@ -39,167 +39,164 @@ include(CMakeParseArguments) # macro used to create the names of output files preserving relative dirs -MACRO (QT5_MAKE_OUTPUT_FILE infile prefix ext outfile ) - STRING(LENGTH ${CMAKE_CURRENT_BINARY_DIR} _binlength) - STRING(LENGTH ${infile} _infileLength) - SET(_checkinfile ${CMAKE_CURRENT_SOURCE_DIR}) - IF(_infileLength GREATER _binlength) - STRING(SUBSTRING "${infile}" 0 ${_binlength} _checkinfile) - IF(_checkinfile STREQUAL "${CMAKE_CURRENT_BINARY_DIR}") - FILE(RELATIVE_PATH rel ${CMAKE_CURRENT_BINARY_DIR} ${infile}) - ELSE(_checkinfile STREQUAL "${CMAKE_CURRENT_BINARY_DIR}") - FILE(RELATIVE_PATH rel ${CMAKE_CURRENT_SOURCE_DIR} ${infile}) - ENDIF(_checkinfile STREQUAL "${CMAKE_CURRENT_BINARY_DIR}") - ELSE(_infileLength GREATER _binlength) - FILE(RELATIVE_PATH rel ${CMAKE_CURRENT_SOURCE_DIR} ${infile}) - ENDIF(_infileLength GREATER _binlength) - IF(WIN32 AND rel MATCHES "^[a-zA-Z]:") # absolute path - STRING(REGEX REPLACE "^([a-zA-Z]):(.*)$" "\\1_\\2" rel "${rel}") - ENDIF(WIN32 AND rel MATCHES "^[a-zA-Z]:") - SET(_outfile "${CMAKE_CURRENT_BINARY_DIR}/${rel}") - STRING(REPLACE ".." "__" _outfile ${_outfile}) - GET_FILENAME_COMPONENT(outpath ${_outfile} PATH) - GET_FILENAME_COMPONENT(_outfile ${_outfile} NAME_WE) - FILE(MAKE_DIRECTORY ${outpath}) - SET(${outfile} ${outpath}/${prefix}${_outfile}.${ext}) -ENDMACRO (QT5_MAKE_OUTPUT_FILE ) - - -MACRO (QT5_GET_MOC_FLAGS _moc_flags) - SET(${_moc_flags}) - GET_DIRECTORY_PROPERTY(_inc_DIRS INCLUDE_DIRECTORIES) - - FOREACH(_current ${_inc_DIRS}) - IF("${_current}" MATCHES "\\.framework/?$") - STRING(REGEX REPLACE "/[^/]+\\.framework" "" framework_path "${_current}") - SET(${_moc_flags} ${${_moc_flags}} "-F${framework_path}") - ELSE("${_current}" MATCHES "\\.framework/?$") - SET(${_moc_flags} ${${_moc_flags}} "-I${_current}") - ENDIF("${_current}" MATCHES "\\.framework/?$") - ENDFOREACH(_current ${_inc_DIRS}) - - GET_DIRECTORY_PROPERTY(_defines COMPILE_DEFINITIONS) - FOREACH(_current ${_defines}) - SET(${_moc_flags} ${${_moc_flags}} "-D${_current}") - ENDFOREACH(_current ${_defines}) - - IF(Q_WS_WIN) - SET(${_moc_flags} ${${_moc_flags}} -DWIN32) - ENDIF(Q_WS_WIN) - -ENDMACRO(QT5_GET_MOC_FLAGS) +macro(QT5_MAKE_OUTPUT_FILE infile prefix ext outfile ) + string(LENGTH ${CMAKE_CURRENT_BINARY_DIR} _binlength) + string(LENGTH ${infile} _infileLength) + set(_checkinfile ${CMAKE_CURRENT_SOURCE_DIR}) + if(_infileLength GREATER _binlength) + string(SUBSTRING "${infile}" 0 ${_binlength} _checkinfile) + if(_checkinfile STREQUAL "${CMAKE_CURRENT_BINARY_DIR}") + file(RELATIVE_PATH rel ${CMAKE_CURRENT_BINARY_DIR} ${infile}) + else() + file(RELATIVE_PATH rel ${CMAKE_CURRENT_SOURCE_DIR} ${infile}) + endif() + else() + file(RELATIVE_PATH rel ${CMAKE_CURRENT_SOURCE_DIR} ${infile}) + endif() + if(WIN32 AND rel MATCHES "^[a-zA-Z]:") # absolute path + string(REGEX REPLACE "^([a-zA-Z]):(.*)$" "\\1_\\2" rel "${rel}") + endif() + set(_outfile "${CMAKE_CURRENT_BINARY_DIR}/${rel}") + string(REPLACE ".." "__" _outfile ${_outfile}) + get_filename_component(outpath ${_outfile} PATH) + get_filename_component(_outfile ${_outfile} NAME_WE) + file(MAKE_DIRECTORY ${outpath}) + set(${outfile} ${outpath}/${prefix}${_outfile}.${ext}) +endmacro() + + +macro(QT5_GET_MOC_FLAGS _moc_flags) + set(${_moc_flags}) + get_directory_property(_inc_DIRS INCLUDE_DIRECTORIES) + + foreach(_current ${_inc_DIRS}) + if("${_current}" MATCHES "\\.framework/?$") + string(REGEX REPLACE "/[^/]+\\.framework" "" framework_path "${_current}") + set(${_moc_flags} ${${_moc_flags}} "-F${framework_path}") + else() + set(${_moc_flags} ${${_moc_flags}} "-I${_current}") + endif() + endforeach() + + get_directory_property(_defines COMPILE_DEFINITIONS) + foreach(_current ${_defines}) + set(${_moc_flags} ${${_moc_flags}} "-D${_current}") + endforeach() + + if(Q_WS_WIN) + set(${_moc_flags} ${${_moc_flags}} -DWIN32) + endif() +endmacro() # helper macro to set up a moc rule -MACRO (QT5_CREATE_MOC_COMMAND infile outfile moc_flags moc_options) - # For Windows, create a parameters file to work around command line length limit - IF (WIN32) - # Pass the parameters in a file. Set the working directory to - # be that containing the parameters file and reference it by - # just the file name. This is necessary because the moc tool on - # MinGW builds does not seem to handle spaces in the path to the - # file given with the @ syntax. - GET_FILENAME_COMPONENT(_moc_outfile_name "${outfile}" NAME) - GET_FILENAME_COMPONENT(_moc_outfile_dir "${outfile}" PATH) - IF(_moc_outfile_dir) - SET(_moc_working_dir WORKING_DIRECTORY ${_moc_outfile_dir}) - ENDIF(_moc_outfile_dir) - SET (_moc_parameters_file ${outfile}_parameters) - SET (_moc_parameters ${moc_flags} ${moc_options} -o "${outfile}" "${infile}") - STRING (REPLACE ";" "\n" _moc_parameters "${_moc_parameters}") - FILE (WRITE ${_moc_parameters_file} "${_moc_parameters}") - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} - COMMAND ${QT_MOC_EXECUTABLE} @${_moc_outfile_name}_parameters - DEPENDS ${infile} - ${_moc_working_dir} - VERBATIM) - ELSE (WIN32) - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} - COMMAND ${QT_MOC_EXECUTABLE} - ARGS ${moc_flags} ${moc_options} -o ${outfile} ${infile} - DEPENDS ${infile} VERBATIM) - ENDIF (WIN32) -ENDMACRO (QT5_CREATE_MOC_COMMAND) - - -MACRO (QT5_GENERATE_MOC infile outfile ) -# get include dirs and flags - QT5_GET_MOC_FLAGS(moc_flags) - GET_FILENAME_COMPONENT(abs_infile ${infile} ABSOLUTE) - SET(_outfile "${outfile}") - IF(NOT IS_ABSOLUTE "${outfile}") - SET(_outfile "${CMAKE_CURRENT_BINARY_DIR}/${outfile}") - ENDIF(NOT IS_ABSOLUTE "${outfile}") - QT5_CREATE_MOC_COMMAND(${abs_infile} ${_outfile} "${moc_flags}" "") - SET_SOURCE_FILES_PROPERTIES(${outfile} PROPERTIES SKIP_AUTOMOC TRUE) # dont run automoc on this file -ENDMACRO (QT5_GENERATE_MOC) - - -# QT5_WRAP_CPP(outfiles inputfile ... ) - -MACRO (QT5_WRAP_CPP outfiles ) - # get include dirs - QT5_GET_MOC_FLAGS(moc_flags) - - set(options) - set(oneValueArgs) - set(multiValueArgs OPTIONS) - - cmake_parse_arguments(_WRAP_CPP "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) - - set(moc_files ${_WRAP_CPP_UNPARSED_ARGUMENTS}) - set(moc_options ${_WRAP_CPP_OPTIONS}) - FOREACH (it ${moc_files}) - GET_FILENAME_COMPONENT(it ${it} ABSOLUTE) - QT5_MAKE_OUTPUT_FILE(${it} moc_ cxx outfile) - QT5_CREATE_MOC_COMMAND(${it} ${outfile} "${moc_flags}" "${moc_options}") - SET(${outfiles} ${${outfiles}} ${outfile}) - ENDFOREACH(it) - -ENDMACRO (QT5_WRAP_CPP) - - -# QT5_ADD_RESOURCES(outfiles inputfile ... ) - -MACRO (QT5_ADD_RESOURCES outfiles ) - - set(options) - set(oneValueArgs) - set(multiValueArgs OPTIONS) - - cmake_parse_arguments(_RCC "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) - - set(rcc_files ${_RCC_UNPARSED_ARGUMENTS}) - set(rcc_options ${_RCC_OPTIONS}) - - FOREACH (it ${rcc_files}) - GET_FILENAME_COMPONENT(outfilename ${it} NAME_WE) - GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE) - GET_FILENAME_COMPONENT(rc_path ${infile} PATH) - SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cxx) - # parse file for dependencies - # all files are absolute paths or relative to the location of the qrc file - FILE(READ "${infile}" _RC_FILE_CONTENTS) - STRING(REGEX MATCHALL "]*>" "" _RC_FILE "${_RC_FILE}") - IF(NOT IS_ABSOLUTE "${_RC_FILE}") - SET(_RC_FILE "${rc_path}/${_RC_FILE}") - ENDIF(NOT IS_ABSOLUTE "${_RC_FILE}") - SET(_RC_DEPENDS ${_RC_DEPENDS} "${_RC_FILE}") - ENDFOREACH(_RC_FILE) - # Since this cmake macro is doing the dependency scanning for these files, - # let's make a configured file and add it as a dependency so cmake is run - # again when dependencies need to be recomputed. - QT5_MAKE_OUTPUT_FILE("${infile}" "" "qrc.depends" out_depends) - CONFIGURE_FILE("${infile}" "${out_depends}" COPY_ONLY) - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} - COMMAND ${QT_RCC_EXECUTABLE} - ARGS ${rcc_options} -name ${outfilename} -o ${outfile} ${infile} - MAIN_DEPENDENCY ${infile} - DEPENDS ${_RC_DEPENDS} "${out_depends}" VERBATIM) - SET(${outfiles} ${${outfiles}} ${outfile}) - ENDFOREACH (it) - -ENDMACRO (QT5_ADD_RESOURCES) +macro(QT5_CREATE_MOC_COMMAND infile outfile moc_flags moc_options) + # For Windows, create a parameters file to work around command line length limit + if(WIN32) + # Pass the parameters in a file. Set the working directory to + # be that containing the parameters file and reference it by + # just the file name. This is necessary because the moc tool on + # MinGW builds does not seem to handle spaces in the path to the + # file given with the @ syntax. + get_filename_component(_moc_outfile_name "${outfile}" NAME) + get_filename_component(_moc_outfile_dir "${outfile}" PATH) + if(_moc_outfile_dir) + set(_moc_working_dir WORKING_DIRECTORY ${_moc_outfile_dir}) + endif() + set(_moc_parameters_file ${outfile}_parameters) + set(_moc_parameters ${moc_flags} ${moc_options} -o "${outfile}" "${infile}") + string(REPLACE ";" "\n" _moc_parameters "${_moc_parameters}") + file(WRITE ${_moc_parameters_file} "${_moc_parameters}") + add_custom_command(OUTPUT ${outfile} + COMMAND ${QT_MOC_EXECUTABLE} @${_moc_outfile_name}_parameters + DEPENDS ${infile} + ${_moc_working_dir} + VERBATIM) + else() + add_custom_command(OUTPUT ${outfile} + COMMAND ${QT_MOC_EXECUTABLE} + ARGS ${moc_flags} ${moc_options} -o ${outfile} ${infile} + DEPENDS ${infile} VERBATIM) + endif() +endmacro() + + +macro(QT5_GENERATE_MOC infile outfile ) + # get include dirs and flags + qt5_get_moc_flags(moc_flags) + get_filename_component(abs_infile ${infile} ABSOLUTE) + set(_outfile "${outfile}") + if(NOT IS_ABSOLUTE "${outfile}") + set(_outfile "${CMAKE_CURRENT_BINARY_DIR}/${outfile}") + endif() + qt5_create_moc_command(${abs_infile} ${_outfile} "${moc_flags}" "") + set_source_files_properties(${outfile} PROPERTIES SKIP_AUTOMOC TRUE) # dont run automoc on this file +endmacro() + + +# qt5_wrap_cpp(outfiles inputfile ... ) + +macro(QT5_WRAP_CPP outfiles ) + # get include dirs + qt5_get_moc_flags(moc_flags) + + set(options) + set(oneValueArgs) + set(multiValueArgs OPTIONS) + + cmake_parse_arguments(_WRAP_CPP "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) + + set(moc_files ${_WRAP_CPP_UNPARSED_ARGUMENTS}) + set(moc_options ${_WRAP_CPP_OPTIONS}) + foreach(it ${moc_files}) + get_filename_component(it ${it} ABSOLUTE) + qt5_make_output_file(${it} moc_ cxx outfile) + qt5_create_moc_command(${it} ${outfile} "${moc_flags}" "${moc_options}") + set(${outfiles} ${${outfiles}} ${outfile}) + endforeach() +endmacro() + + +# qt5_add_resources(outfiles inputfile ... ) + +macro(QT5_ADD_RESOURCES outfiles ) + + set(options) + set(oneValueArgs) + set(multiValueArgs OPTIONS) + + cmake_parse_arguments(_RCC "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) + + set(rcc_files ${_RCC_UNPARSED_ARGUMENTS}) + set(rcc_options ${_RCC_OPTIONS}) + + foreach(it ${rcc_files}) + get_filename_component(outfilename ${it} NAME_WE) + get_filename_component(infile ${it} ABSOLUTE) + get_filename_component(rc_path ${infile} PATH) + set(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cxx) + # parse file for dependencies + # all files are absolute paths or relative to the location of the qrc file + file(READ "${infile}" _RC_FILE_CONTENTS) + string(REGEX MATCHALL "]*>" "" _RC_FILE "${_RC_FILE}") + if(NOT IS_ABSOLUTE "${_RC_FILE}") + set(_RC_FILE "${rc_path}/${_RC_FILE}") + endif() + set(_RC_DEPENDS ${_RC_DEPENDS} "${_RC_FILE}") + endforeach() + # Since this cmake macro is doing the dependency scanning for these files, + # let's make a configured file and add it as a dependency so cmake is run + # again when dependencies need to be recomputed. + qt5_make_output_file("${infile}" "" "qrc.depends" out_depends) + configure_file("${infile}" "${out_depends}" COPY_ONLY) + add_custom_command(OUTPUT ${outfile} + COMMAND ${QT_RCC_EXECUTABLE} + ARGS ${rcc_options} -name ${outfilename} -o ${outfile} ${infile} + MAIN_DEPENDENCY ${infile} + DEPENDS ${_RC_DEPENDS} "${out_depends}" VERBATIM) + set(${outfiles} ${${outfiles}} ${outfile}) + endforeach() +endmacro() diff --git a/src/widgets/Qt5WidgetsMacros.cmake b/src/widgets/Qt5WidgetsMacros.cmake index 7ebc7e6673..59ea1a311e 100644 --- a/src/widgets/Qt5WidgetsMacros.cmake +++ b/src/widgets/Qt5WidgetsMacros.cmake @@ -39,27 +39,26 @@ include(CMakeParseArguments) -# QT5_WRAP_UI(outfiles inputfile ... ) +# qt5_wrap_ui(outfiles inputfile ... ) -MACRO (QT5_WRAP_UI outfiles ) - set(options) - set(oneValueArgs) - set(multiValueArgs OPTIONS) +macro(QT5_WRAP_UI outfiles ) + set(options) + set(oneValueArgs) + set(multiValueArgs OPTIONS) - cmake_parse_arguments(_WRAP_UI "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) + cmake_parse_arguments(_WRAP_UI "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) - set(ui_files ${_WRAP_UI_UNPARSED_ARGUMENTS}) - set(ui_options ${_WRAP_UI_OPTIONS}) + set(ui_files ${_WRAP_UI_UNPARSED_ARGUMENTS}) + set(ui_options ${_WRAP_UI_OPTIONS}) - FOREACH (it ${ui_files}) - GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) - GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE) - SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/ui_${outfile}.h) - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} - COMMAND ${QT_UIC_EXECUTABLE} - ARGS ${ui_options} -o ${outfile} ${infile} - MAIN_DEPENDENCY ${infile} VERBATIM) - SET(${outfiles} ${${outfiles}} ${outfile}) - ENDFOREACH (it) - -ENDMACRO (QT5_WRAP_UI) + foreach(it ${ui_files}) + get_filename_component(outfile ${it} NAME_WE) + get_filename_component(infile ${it} ABSOLUTE) + set(outfile ${CMAKE_CURRENT_BINARY_DIR}/ui_${outfile}.h) + add_custom_command(OUTPUT ${outfile} + COMMAND ${QT_UIC_EXECUTABLE} + ARGS ${ui_options} -o ${outfile} ${infile} + MAIN_DEPENDENCY ${infile} VERBATIM) + set(${outfiles} ${${outfiles}} ${outfile}) + endforeach() +endmacro() -- cgit v1.2.3 From ad14089179289b07d832a069377cb7ffd6e011bc Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Mon, 12 Dec 2011 15:29:32 +0100 Subject: Remove misleading and incorrect information from dropMimeData docs. It is not the responsibility of the view to insert data into the model after a dropMimeData call. Change-Id: Ib2dedddb3239af0e2bf722a28081c68677e6b2af Reviewed-by: David Faure --- src/corelib/itemmodels/qabstractitemmodel.cpp | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/src/corelib/itemmodels/qabstractitemmodel.cpp b/src/corelib/itemmodels/qabstractitemmodel.cpp index 99455371ae..a185a1ce83 100644 --- a/src/corelib/itemmodels/qabstractitemmodel.cpp +++ b/src/corelib/itemmodels/qabstractitemmodel.cpp @@ -1759,18 +1759,19 @@ QMimeData *QAbstractItemModel::mimeData(const QModelIndexList &indexes) const Returns true if the data and action can be handled by the model; otherwise returns false. - Although the specified \a row, \a column and \a parent indicate the - location of an item in the model where the operation ended, it is the - responsibility of the view to provide a suitable location for where the - data should be inserted. + The specified \a row, \a column and \a parent indicate the location of an + item in the model where the operation ended. It is the responsibility of + the model to complete the action at the correct location. For instance, a drop action on an item in a QTreeView can result in new items either being inserted as children of the item specified by \a row, \a column, and \a parent, or as siblings of the item. - When row and column are -1 it means that it is up to the model to decide - where to place the data. This can occur in a tree when data is dropped on - a parent. Models will usually append the data to the parent in this case. + When \a row and \a column are -1 it means that the dropped data should be + considered as dropped directly on \a parent. Usually this will mean + appending the data as child items of \a parent. If \a row and column are + greater than or equal zero, it means that the drop occurred just before the + specified \a row and \a column in the specified \a parent. \sa supportedDropActions(), {Using drag and drop with item views} */ -- cgit v1.2.3 From 8c207a46e690fb6d18a62ea2bd99ea2f91e14909 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Mon, 19 Dec 2011 22:27:48 +0100 Subject: Port to list(APPEND) Change-Id: I198622270324eea62dd5ad6343fdf7c89e736e6c Reviewed-by: Alexander Neundorf Reviewed-by: Stephen Kelly --- src/corelib/Qt5CoreMacros.cmake | 4 ++-- src/widgets/Qt5WidgetsMacros.cmake | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/corelib/Qt5CoreMacros.cmake b/src/corelib/Qt5CoreMacros.cmake index f234a240a1..b75711228b 100644 --- a/src/corelib/Qt5CoreMacros.cmake +++ b/src/corelib/Qt5CoreMacros.cmake @@ -152,7 +152,7 @@ macro(QT5_WRAP_CPP outfiles ) get_filename_component(it ${it} ABSOLUTE) qt5_make_output_file(${it} moc_ cxx outfile) qt5_create_moc_command(${it} ${outfile} "${moc_flags}" "${moc_options}") - set(${outfiles} ${${outfiles}} ${outfile}) + list(APPEND ${outfiles} ${outfile}) endforeach() endmacro() @@ -197,6 +197,6 @@ macro(QT5_ADD_RESOURCES outfiles ) ARGS ${rcc_options} -name ${outfilename} -o ${outfile} ${infile} MAIN_DEPENDENCY ${infile} DEPENDS ${_RC_DEPENDS} "${out_depends}" VERBATIM) - set(${outfiles} ${${outfiles}} ${outfile}) + list(APPEND ${outfiles} ${outfile}) endforeach() endmacro() diff --git a/src/widgets/Qt5WidgetsMacros.cmake b/src/widgets/Qt5WidgetsMacros.cmake index 59ea1a311e..ac13141cfc 100644 --- a/src/widgets/Qt5WidgetsMacros.cmake +++ b/src/widgets/Qt5WidgetsMacros.cmake @@ -59,6 +59,6 @@ macro(QT5_WRAP_UI outfiles ) COMMAND ${QT_UIC_EXECUTABLE} ARGS ${ui_options} -o ${outfile} ${infile} MAIN_DEPENDENCY ${infile} VERBATIM) - set(${outfiles} ${${outfiles}} ${outfile}) + list(APPEND ${outfiles} ${outfile}) endforeach() endmacro() -- cgit v1.2.3 From 9c6736470881efb9977576fd8c17bbb90f40a21d Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Mon, 19 Dec 2011 22:30:50 +0100 Subject: Convert macros to functions. Change-Id: I43f4188d1c33cd5a07eb7a12bf3343af7e6a211f Reviewed-by: Alexander Neundorf Reviewed-by: Stephen Kelly --- src/corelib/Qt5CoreMacros.cmake | 16 +++++++++------- src/widgets/Qt5WidgetsMacros.cmake | 5 +++-- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/src/corelib/Qt5CoreMacros.cmake b/src/corelib/Qt5CoreMacros.cmake index b75711228b..abfe49ec84 100644 --- a/src/corelib/Qt5CoreMacros.cmake +++ b/src/corelib/Qt5CoreMacros.cmake @@ -121,7 +121,7 @@ macro(QT5_CREATE_MOC_COMMAND infile outfile moc_flags moc_options) endmacro() -macro(QT5_GENERATE_MOC infile outfile ) +function(QT5_GENERATE_MOC infile outfile ) # get include dirs and flags qt5_get_moc_flags(moc_flags) get_filename_component(abs_infile ${infile} ABSOLUTE) @@ -131,12 +131,12 @@ macro(QT5_GENERATE_MOC infile outfile ) endif() qt5_create_moc_command(${abs_infile} ${_outfile} "${moc_flags}" "") set_source_files_properties(${outfile} PROPERTIES SKIP_AUTOMOC TRUE) # dont run automoc on this file -endmacro() +endfunction() # qt5_wrap_cpp(outfiles inputfile ... ) -macro(QT5_WRAP_CPP outfiles ) +function(QT5_WRAP_CPP outfiles ) # get include dirs qt5_get_moc_flags(moc_flags) @@ -154,12 +154,13 @@ macro(QT5_WRAP_CPP outfiles ) qt5_create_moc_command(${it} ${outfile} "${moc_flags}" "${moc_options}") list(APPEND ${outfiles} ${outfile}) endforeach() -endmacro() + set(${outfiles} ${${outfiles}} PARENT_SCOPE) +endfunction() # qt5_add_resources(outfiles inputfile ... ) -macro(QT5_ADD_RESOURCES outfiles ) +function(QT5_ADD_RESOURCES outfiles ) set(options) set(oneValueArgs) @@ -187,7 +188,7 @@ macro(QT5_ADD_RESOURCES outfiles ) endif() set(_RC_DEPENDS ${_RC_DEPENDS} "${_RC_FILE}") endforeach() - # Since this cmake macro is doing the dependency scanning for these files, + # Since this cmake function is doing the dependency scanning for these files, # let's make a configured file and add it as a dependency so cmake is run # again when dependencies need to be recomputed. qt5_make_output_file("${infile}" "" "qrc.depends" out_depends) @@ -199,4 +200,5 @@ macro(QT5_ADD_RESOURCES outfiles ) DEPENDS ${_RC_DEPENDS} "${out_depends}" VERBATIM) list(APPEND ${outfiles} ${outfile}) endforeach() -endmacro() + set(${outfiles} ${${outfiles}} PARENT_SCOPE) +endfunction() diff --git a/src/widgets/Qt5WidgetsMacros.cmake b/src/widgets/Qt5WidgetsMacros.cmake index ac13141cfc..88f259191e 100644 --- a/src/widgets/Qt5WidgetsMacros.cmake +++ b/src/widgets/Qt5WidgetsMacros.cmake @@ -41,7 +41,7 @@ include(CMakeParseArguments) # qt5_wrap_ui(outfiles inputfile ... ) -macro(QT5_WRAP_UI outfiles ) +function(QT5_WRAP_UI outfiles ) set(options) set(oneValueArgs) set(multiValueArgs OPTIONS) @@ -61,4 +61,5 @@ macro(QT5_WRAP_UI outfiles ) MAIN_DEPENDENCY ${infile} VERBATIM) list(APPEND ${outfiles} ${outfile}) endforeach() -endmacro() + set(${outfiles} ${${outfiles}} PARENT_SCOPE) +endfunction() -- cgit v1.2.3 From 58170cea15f5b39d3802df036c90fee63886b9b3 Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Tue, 20 Dec 2011 09:16:54 +0100 Subject: Reimplement QAbstractFileEngine::open() properly The virtual function takes a QIODevice::OpenMode argument, not an int. tests/auto/corelib/io/qfile/test/../tst_qfile.cpp:1942: warning: 'MyEngine::open' hides overloaded virtual function [-Woverloaded- virtual] bool open(int ) { return false; } ^ src/corelib/io/qabstractfileengine.h:118: hidden overloaded virtual function 'QAbstractFileEngine::open' declared here virtual bool open(QIODevice::OpenMode openMode); ^ Change-Id: I92338dacb89c05d8c5cfbf8ce094dc519b84d3ba Reviewed-by: Robin Burchell Reviewed-by: Joerg Bornemann --- tests/auto/corelib/io/qfile/tst_qfile.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/auto/corelib/io/qfile/tst_qfile.cpp b/tests/auto/corelib/io/qfile/tst_qfile.cpp index ac19d9c681..fdb0a7e59c 100644 --- a/tests/auto/corelib/io/qfile/tst_qfile.cpp +++ b/tests/auto/corelib/io/qfile/tst_qfile.cpp @@ -1939,7 +1939,7 @@ public: virtual ~MyEngine() {} void setFileName(const QString &) {} - bool open(int ) { return false; } + bool open(QIODevice::OpenMode) { return false; } bool close() { return false; } bool flush() { return false; } qint64 size() const { return 123 + number; } -- cgit v1.2.3 From 103c2e3690d24c454f49a9a888f696fbaf6a3324 Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Tue, 20 Dec 2011 09:22:20 +0100 Subject: Reimplement QVariantAnimation::updateState() properly The updateState() takes 2 arguments, not 1. tests/benchmarks/gui/animation/qanimation/dummyanimation.h:54: warning: 'DummyAnimation::updateState' hides overloaded virtual function [-Woverloaded-virtual] void updateState(State state); ^ src/corelib/animation/qvariantanimation.h:106: hidden overloaded virtual function 'QVariantAnimation::updateState' declared here void updateState(QAbstractAnimation::State newState, QAbstractAnimation::State oldState); ^ Change-Id: Ieb2e4e0b1f017c51c4fed5bdb874ba30cb056916 Reviewed-by: Robin Burchell Reviewed-by: Joerg Bornemann --- tests/benchmarks/gui/animation/qanimation/dummyanimation.cpp | 5 +++-- tests/benchmarks/gui/animation/qanimation/dummyanimation.h | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/tests/benchmarks/gui/animation/qanimation/dummyanimation.cpp b/tests/benchmarks/gui/animation/qanimation/dummyanimation.cpp index a190a0337a..fa0c8d16ce 100644 --- a/tests/benchmarks/gui/animation/qanimation/dummyanimation.cpp +++ b/tests/benchmarks/gui/animation/qanimation/dummyanimation.cpp @@ -55,7 +55,8 @@ void DummyAnimation::updateCurrentValue(const QVariant &value) m_dummy->setRect(value.toRect()); } -void DummyAnimation::updateState(State state) +void DummyAnimation::updateState(State newstate, State oldstate) { - Q_UNUSED(state); + Q_UNUSED(newstate); + Q_UNUSED(oldstate); } diff --git a/tests/benchmarks/gui/animation/qanimation/dummyanimation.h b/tests/benchmarks/gui/animation/qanimation/dummyanimation.h index ecd4e0189e..87fe6d2537 100644 --- a/tests/benchmarks/gui/animation/qanimation/dummyanimation.h +++ b/tests/benchmarks/gui/animation/qanimation/dummyanimation.h @@ -51,7 +51,7 @@ public: DummyAnimation(DummyObject *d); void updateCurrentValue(const QVariant &value); - void updateState(State state); + void updateState(State newstate, State oldstate); private: DummyObject *m_dummy; -- cgit v1.2.3 From f0710e1d951c0d44582b06fa276a4d3a63605cda Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Tue, 20 Dec 2011 09:26:30 +0100 Subject: Reimplement QGraphicsEffect::sourceChanged() properly MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit sourceChanged() takes one argument, not zero. tests/auto/widgets/graphicsview/qgraphicseffectsource/tst_qgraphicseffectsource.cpp:125: warning: 'CustomEffect::sourceChanged' hides overloaded virtual function [-Woverloaded-virtual] void sourceChanged() ^ src/widgets/effects/qgraphicseffect.h:104: hidden overloaded virtual function 'QGraphicsEffect::sourceChanged' declared here virtual void sourceChanged(ChangeFlags flags); ^ Change-Id: If227b7b79c4a2fc3d21f93e371510ddccb408d7d Reviewed-by: Robin Burchell Reviewed-by: Jędrzej Nowacki --- .../graphicsview/qgraphicseffectsource/tst_qgraphicseffectsource.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/auto/widgets/graphicsview/qgraphicseffectsource/tst_qgraphicseffectsource.cpp b/tests/auto/widgets/graphicsview/qgraphicseffectsource/tst_qgraphicseffectsource.cpp index a69440da50..3db4f94d2b 100644 --- a/tests/auto/widgets/graphicsview/qgraphicseffectsource/tst_qgraphicseffectsource.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicseffectsource/tst_qgraphicseffectsource.cpp @@ -122,7 +122,7 @@ public: source()->draw(painter); } - void sourceChanged() + void sourceChanged(ChangeFlags) { m_sourceChanged = true; } void sourceBoundingRectChanged() -- cgit v1.2.3 From cd796404f17e8ecfa32e108de47709e41072542f Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Tue, 20 Dec 2011 09:18:56 +0100 Subject: Reimplement QIODevice::reset() properly MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The reset() function is not const. tests/benchmarks/network/access/qnetworkreply/tst_qnetworkreply.cpp:324: warning: 'FixedSizeDataGenerator::reset' hides overloaded virtual function [-Woverloaded-virtual] virtual bool reset() const{ ^ src/corelib/io/qiodevice.h:112: hidden overloaded virtual function 'QIODevice::reset' declared here virtual bool reset(); ^ Change-Id: I022d902147f9c8fb71bee8c3e21b963b2d7bec55 Reviewed-by: Robin Burchell Reviewed-by: Jędrzej Nowacki --- tests/benchmarks/network/access/qnetworkreply/tst_qnetworkreply.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/benchmarks/network/access/qnetworkreply/tst_qnetworkreply.cpp b/tests/benchmarks/network/access/qnetworkreply/tst_qnetworkreply.cpp index 9fc6147b00..7d1dac1990 100644 --- a/tests/benchmarks/network/access/qnetworkreply/tst_qnetworkreply.cpp +++ b/tests/benchmarks/network/access/qnetworkreply/tst_qnetworkreply.cpp @@ -321,7 +321,7 @@ public: return false; } - virtual bool reset() const{ + virtual bool reset() { return false; } -- cgit v1.2.3 From 3225942dbb7faaeff477e137af9c3d78fcaf518e Mon Sep 17 00:00:00 2001 From: Rohan McGovern Date: Wed, 14 Dec 2011 11:33:15 +1000 Subject: configure[.exe]: use create_prl, link_prl for all modules These should go into qmodule.pri, rather than .qmake.cache, as they make sense for all Qt modules - not only qtbase. Fixes link failure when building qtdeclarative with jom on Windows. Change-Id: I3e8b207e1808cb23af58b865a160c2fafa906288 Reviewed-by: Friedemann Kleint Reviewed-by: Joerg Bornemann Reviewed-by: Bradley T. Hughes --- configure | 4 +++- tools/configure/configureapp.cpp | 6 ++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/configure b/configure index cfc4cec2e0..66fa52ae9a 100755 --- a/configure +++ b/configure @@ -8021,6 +8021,8 @@ fi #------------------------------------------------------------------------------- QTMODULE="$outpath/mkspecs/qmodule.pri" +echo "CONFIG += create_prl link_prl" >> "$QTMODULE.tmp" + # Ensure we can link to uninistalled libraries if [ "$XPLATFORM_MINGW" != "yes" ] && [ "$CFG_EMBEDDED" != "nacl" ] && linkerSupportsFlag -rpath-link "$outpath/lib"; then echo "QMAKE_LFLAGS = -Wl,-rpath-link,\$\$QT_BUILD_TREE/lib \$\$QMAKE_LFLAGS" >> "$QTMODULE.tmp" @@ -8103,7 +8105,7 @@ QMAKE_INCDIR_QT = \$\$QT_BUILD_TREE/include QMAKE_LIBDIR_QT = \$\$QT_BUILD_TREE/lib include(\$\$PWD/mkspecs/qmodule.pri) -CONFIG += $QMAKE_CONFIG dylib create_prl link_prl depend_includepath fix_output_dirs no_private_qt_headers_warning QTDIR_build +CONFIG += $QMAKE_CONFIG dylib depend_includepath fix_output_dirs no_private_qt_headers_warning QTDIR_build QMAKE_ABSOLUTE_SOURCE_ROOT = \$\$QT_SOURCE_TREE QMAKE_MOC_SRC = \$\$QT_BUILD_TREE/src/moc diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp index a831825346..8ae06c3c8a 100644 --- a/tools/configure/configureapp.cpp +++ b/tools/configure/configureapp.cpp @@ -2666,7 +2666,7 @@ void Configure::generateCachefile() for (QStringList::Iterator var = qmakeVars.begin(); var != qmakeVars.end(); ++var) { cacheStream << (*var) << endl; } - cacheStream << "CONFIG += " << qmakeConfig.join(" ") << " incremental msvc_mp create_prl link_prl depend_includepath no_private_qt_headers_warning QTDIR_build" << endl; + cacheStream << "CONFIG += " << qmakeConfig.join(" ") << " incremental msvc_mp depend_includepath no_private_qt_headers_warning QTDIR_build" << endl; cacheStream.flush(); cacheFile.close(); @@ -2740,7 +2740,9 @@ void Configure::generateCachefile() moduleStream << "decorations += "< Date: Wed, 21 Dec 2011 14:14:27 +0100 Subject: Rebuild configure.exe. - Use create_prl, link_prl for all modules. - Remove -graphicssystem (and -runtimegraphicssystem) options from configure. Change-Id: Id1e0c8f82fa3149fd67c6a31e9e8baec06366205 Reviewed-by: Sergio Ahumada Reviewed-by: Friedemann Kleint --- configure.exe | Bin 1152000 -> 1150464 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/configure.exe b/configure.exe index 6037038f53..6048dc5708 100644 Binary files a/configure.exe and b/configure.exe differ -- cgit v1.2.3 From 5d4acbab0e243aa944f9b365fb6d72073bb1da70 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Tue, 20 Dec 2011 09:43:24 +0100 Subject: QTestLib: Fix QFINDTESTDATA for Windows. - Scan the parent directory of the executable if it is located in a 'Debug' or 'Release' directory - Report with native separators in the log. - Use the QString::arg() overloads with several string parameters. Change-Id: I5ea84411e12978f8f958a0bce3ae10da44cc4e3f Reviewed-by: Jason McDonald --- src/testlib/qtestcase.cpp | 40 +++++++++++++++++++++++++++------------- 1 file changed, 27 insertions(+), 13 deletions(-) diff --git a/src/testlib/qtestcase.cpp b/src/testlib/qtestcase.cpp index 2b0182541e..a00f91f4f0 100644 --- a/src/testlib/qtestcase.cpp +++ b/src/testlib/qtestcase.cpp @@ -2102,6 +2102,15 @@ void QTest::ignoreMessage(QtMsgType type, const char *message) /*! \internal */ + +#ifdef Q_OS_WIN +static inline bool isWindowsBuildDirectory(const QString &dirName) +{ + return dirName.compare(QStringLiteral("Debug"), Qt::CaseInsensitive) == 0 + || dirName.compare(QStringLiteral("Release"), Qt::CaseInsensitive) == 0; +} +#endif + QString QTest::qFindTestData(const QString& base, const char *file, int line, const char *builddir) { QString found; @@ -2110,16 +2119,23 @@ QString QTest::qFindTestData(const QString& base, const char *file, int line, co // 1. relative to test binary. if (qApp) { - QString binpath = QCoreApplication::applicationDirPath(); - QString candidate = QString::fromLatin1("%1/%2").arg(binpath).arg(base); - if (QFileInfo(candidate).exists()) { - found = candidate; + QDir binDirectory(QCoreApplication::applicationDirPath()); + if (binDirectory.exists(base)) { + found = binDirectory.absoluteFilePath(base); + } +#ifdef Q_OS_WIN + // Windows: The executable is typically located in one of the + // 'Release' or 'Debug' directories. + else if (isWindowsBuildDirectory(binDirectory.dirName()) + && binDirectory.cdUp() && binDirectory.exists(base)) { + found = binDirectory.absoluteFilePath(base); } +#endif // Q_OS_WIN else if (QTestLog::verboseLevel() >= 2) { + const QString candidate = QDir::toNativeSeparators(QCoreApplication::applicationDirPath() + QLatin1Char('/') + base); QTestLog::info(qPrintable( QString::fromLatin1("testdata %1 not found relative to test binary [%2]; " - "checking next location") - .arg(base).arg(candidate)), + "checking next location").arg(base, candidate)), file, line); } } @@ -2130,9 +2146,7 @@ QString QTest::qFindTestData(const QString& base, const char *file, int line, co if (testObjectName) { QString testsPath = QLibraryInfo::location(QLibraryInfo::TestsPath); QString candidate = QString::fromLatin1("%1/%2/%3") - .arg(testsPath) - .arg(QFile::decodeName(testObjectName).toLower()) - .arg(base); + .arg(testsPath, QFile::decodeName(testObjectName).toLower(), base); if (QFileInfo(candidate).exists()) { found = candidate; } @@ -2140,7 +2154,7 @@ QString QTest::qFindTestData(const QString& base, const char *file, int line, co QTestLog::info(qPrintable( QString::fromLatin1("testdata %1 not found in tests install path [%2]; " "checking next location") - .arg(base).arg(candidate)), + .arg(base, QDir::toNativeSeparators(candidate))), file, line); } } @@ -2157,14 +2171,14 @@ QString QTest::qFindTestData(const QString& base, const char *file, int line, co srcdir.setFile(QFile::decodeName(builddir) + QLatin1String("/") + srcdir.filePath()); } - QString candidate = QString::fromLatin1("%1/%2").arg(srcdir.canonicalFilePath()).arg(base); + QString candidate = QString::fromLatin1("%1/%2").arg(srcdir.canonicalFilePath(), base); if (QFileInfo(candidate).exists()) { found = candidate; } else if (QTestLog::verboseLevel() >= 2) { QTestLog::info(qPrintable( QString::fromLatin1("testdata %1 not found relative to source path [%2]") - .arg(base).arg(candidate)), + .arg(base, QDir::toNativeSeparators(candidate))), file, line); } } @@ -2176,7 +2190,7 @@ QString QTest::qFindTestData(const QString& base, const char *file, int line, co } else if (QTestLog::verboseLevel() >= 1) { QTestLog::info(qPrintable( - QString::fromLatin1("testdata %1 was located at %2").arg(base).arg(found)), + QString::fromLatin1("testdata %1 was located at %2").arg(base, QDir::toNativeSeparators(found))), file, line); } -- cgit v1.2.3 From bc8f25c7e6ab73441c46ea41362a054843b42ec3 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Mon, 19 Dec 2011 11:33:07 +0100 Subject: QTestlib: Make QImage comparison more verbose. Introduce a specialization for qCompare(QImage,QImage) that checks isNull, size and format and outputs verbose messages. Check isNull, size similarly for QPixmap. Add an autotest: - Add test to cmptest and make it a GUI application since QImage requires QGuiApplication. - Make testlib/selftests capable of running X11-GUI applications by passing DISPLAY. - Ignore stderr output for cmptest - Add test data Change-Id: I2b29c7822fbeedf2b22c90889739ed7ff859ce92 Reviewed-by: Jason McDonald --- src/testlib/qtest_gui.h | 62 +++++++++ tests/auto/testlib/selftests/cmptest/cmptest.pro | 2 +- .../auto/testlib/selftests/cmptest/tst_cmptest.cpp | 138 +++++++++++++++++++++ .../testlib/selftests/expected_cmptest.lightxml | 72 +++++++++-- tests/auto/testlib/selftests/expected_cmptest.txt | 52 ++++++-- tests/auto/testlib/selftests/expected_cmptest.xml | 72 +++++++++-- .../testlib/selftests/expected_cmptest.xunitxml | 29 ++++- tests/auto/testlib/selftests/tst_selftests.cpp | 28 ++++- 8 files changed, 419 insertions(+), 36 deletions(-) diff --git a/src/testlib/qtest_gui.h b/src/testlib/qtest_gui.h index 99b7700e3b..47ec8cf13e 100644 --- a/src/testlib/qtest_gui.h +++ b/src/testlib/qtest_gui.h @@ -59,6 +59,7 @@ #include #include +#include #if 0 // inform syncqt @@ -85,10 +86,71 @@ inline bool qCompare(QIcon const &t1, QIcon const &t2, const char *actual, const } #endif +#ifndef QTEST_NO_SPECIALIZATIONS template<> +#endif +inline bool qCompare(QImage const &t1, QImage const &t2, + const char *actual, const char *expected, const char *file, int line) +{ + char msg[1024]; + msg[0] = '\0'; + const bool t1Null = t1.isNull(); + const bool t2Null = t2.isNull(); + if (t1Null != t2Null) { + qsnprintf(msg, 1024, "Compared QImages differ.\n" + " Actual (%s).isNull() : %d\n" + " Expected (%s).isNull(): %d", actual, t1Null, expected, t2Null); + return compare_helper(false, msg, file, line); + } + if (t1Null && t2Null) + return compare_helper(true, "COMPARE()", file, line); + if (t1.width() != t2.width() || t2.height() != t2.height()) { + qsnprintf(msg, 1024, "Compared QImages differ in size.\n" + " Actual (%s) : %dx%d\n" + " Expected (%s): %dx%d", + actual, t1.width(), t1.height(), + expected, t2.width(), t2.height()); + return compare_helper(false, msg, file, line); + } + if (t1.format() != t2.format()) { + qsnprintf(msg, 1024, "Compared QImages differ in format.\n" + " Actual (%s) : %d\n" + " Expected (%s): %d", + actual, t1.format(), expected, t2.format()); + return compare_helper(false, msg, file, line); + } + return (t1 == t2) + ? compare_helper(true, "COMPARE()", file, line) + : compare_helper(false, "Compared values are not the same", + toString(t1), toString(t2), actual, expected, file, line); +} + +#ifndef QTEST_NO_SPECIALIZATIONS +template<> +#endif inline bool qCompare(QPixmap const &t1, QPixmap const &t2, const char *actual, const char *expected, const char *file, int line) { + char msg[1024]; + msg[0] = '\0'; + const bool t1Null = t1.isNull(); + const bool t2Null = t2.isNull(); + if (t1Null != t2Null) { + qsnprintf(msg, 1024, "Compared QPixmaps differ.\n" + " Actual (%s).isNull() : %d\n" + " Expected (%s).isNull(): %d", actual, t1Null, expected, t2Null); + return compare_helper(false, msg, file, line); + } + if (t1Null && t2Null) + return compare_helper(true, "COMPARE()", file, line); + if (t1.width() != t2.width() || t2.height() != t2.height()) { + qsnprintf(msg, 1024, "Compared QPixmaps differ in size.\n" + " Actual (%s) : %dx%d\n" + " Expected (%s): %dx%d", + actual, t1.width(), t1.height(), + expected, t2.width(), t2.height()); + return compare_helper(false, msg, file, line); + } return qCompare(t1.toImage(), t2.toImage(), actual, expected, file, line); } diff --git a/tests/auto/testlib/selftests/cmptest/cmptest.pro b/tests/auto/testlib/selftests/cmptest/cmptest.pro index bc72f23696..1da4646023 100644 --- a/tests/auto/testlib/selftests/cmptest/cmptest.pro +++ b/tests/auto/testlib/selftests/cmptest/cmptest.pro @@ -1,5 +1,5 @@ SOURCES += tst_cmptest.cpp -QT = core testlib +QT = core gui testlib mac:CONFIG -= app_bundle CONFIG -= debug_and_release_target diff --git a/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp b/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp index 6e19d60cbb..f6773cc4c5 100644 --- a/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp +++ b/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp @@ -42,6 +42,88 @@ #include #include +#include +#include + +/* XPM test data for QPixmap, QImage tests (use drag cursors as example) */ + +static const char * const xpmPixmapData1[] = { +"11 20 3 1", +". c None", +"a c #FFFFFF", +"X c #000000", // X11 cursor is traditionally black +"aa.........", +"aXa........", +"aXXa.......", +"aXXXa......", +"aXXXXa.....", +"aXXXXXa....", +"aXXXXXXa...", +"aXXXXXXXa..", +"aXXXXXXXXa.", +"aXXXXXXXXXa", +"aXXXXXXaaaa", +"aXXXaXXa...", +"aXXaaXXa...", +"aXa..aXXa..", +"aa...aXXa..", +"a.....aXXa.", +"......aXXa.", +".......aXXa", +".......aXXa", +"........aa."}; + +static const char * const xpmPixmapData2[] = { +"11 20 4 1", +". c None", +"a c #FFFFFF", +"b c #0000FF", +"X c #000000", +"aab........", +"aXab.......", +"aXXab......", +"aXXXab.....", +"aXXXXab....", +"aXXXXXab...", +"aXXXXXXab..", +"aXXXXXXXa..", +"aXXXXXXXXa.", +"aXXXXXXXXXa", +"aXXXXXXaaaa", +"aXXXaXXa...", +"aXXaaXXa...", +"aXa..aXXa..", +"aa...aXXa..", +"a.....aXXa.", +"......aXXa.", +".......aXXa", +".......aXXa", +"........aa."}; + +static const char * const xpmPixmapData3[] = { +"20 20 2 1", +" c #000000", +". c #C32D2D", +" ..........", +" ........", +" .......", +" ......", +" ....", +" ..", +" .", +" ", +" ", +". ", +"... ", +"..... ", +"...... ", +"....... ", +"......... ", +"........... ", +"........... ", +"............ ", +"............ ", +"............. "}; class tst_Cmptest: public QObject { @@ -54,6 +136,10 @@ private slots: void compare_tostring_data(); void compareQStringLists(); void compareQStringLists_data(); + void compareQPixmaps(); + void compareQPixmaps_data(); + void compareQImages(); + void compareQImages_data(); }; static bool boolfunc() { return true; } @@ -222,5 +308,57 @@ void tst_Cmptest::compareQStringLists() QCOMPARE(opA, opB); } +void tst_Cmptest::compareQPixmaps_data() +{ + QTest::addColumn("opA"); + QTest::addColumn("opB"); + + const QPixmap pixmap1(xpmPixmapData1); + const QPixmap pixmap2(xpmPixmapData2); + const QPixmap pixmap3(xpmPixmapData3); + + QTest::newRow("both null") << QPixmap() << QPixmap(); + QTest::newRow("one null") << QPixmap() << pixmap1; + QTest::newRow("other null") << pixmap1 << QPixmap(); + QTest::newRow("equal") << pixmap1 << pixmap1; + QTest::newRow("different size") << pixmap1 << pixmap3; + QTest::newRow("different pixels") << pixmap1 << pixmap2; +} + +void tst_Cmptest::compareQPixmaps() +{ + QFETCH(QPixmap, opA); + QFETCH(QPixmap, opB); + + QCOMPARE(opA, opB); +} + +void tst_Cmptest::compareQImages_data() +{ + QTest::addColumn("opA"); + QTest::addColumn("opB"); + + const QImage image1(QPixmap(xpmPixmapData1).toImage()); + const QImage image2(QPixmap(xpmPixmapData2).toImage()); + const QImage image1Indexed = image1.convertToFormat(QImage::Format_Indexed8); + const QImage image3(QPixmap(xpmPixmapData3).toImage()); + + QTest::newRow("both null") << QImage() << QImage(); + QTest::newRow("one null") << QImage() << image1; + QTest::newRow("other null") << image1 << QImage(); + QTest::newRow("equal") << image1 << image1; + QTest::newRow("different size") << image1 << image3; + QTest::newRow("different format") << image1 << image1Indexed; + QTest::newRow("different pixels") << image1 << image2; +} + +void tst_Cmptest::compareQImages() +{ + QFETCH(QImage, opA); + QFETCH(QImage, opB); + + QCOMPARE(opA, opB); +} + QTEST_MAIN(tst_Cmptest) #include "tst_cmptest.moc" diff --git a/tests/auto/testlib/selftests/expected_cmptest.lightxml b/tests/auto/testlib/selftests/expected_cmptest.lightxml index d027dcde11..17f3e6ec3a 100644 --- a/tests/auto/testlib/selftests/expected_cmptest.lightxml +++ b/tests/auto/testlib/selftests/expected_cmptest.lightxml @@ -12,25 +12,25 @@
- + - + - + - + ) @@ -38,37 +38,91 @@ - + - + - + - + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/auto/testlib/selftests/expected_cmptest.txt b/tests/auto/testlib/selftests/expected_cmptest.txt index f7dc5cfed3..36a4995d91 100644 --- a/tests/auto/testlib/selftests/expected_cmptest.txt +++ b/tests/auto/testlib/selftests/expected_cmptest.txt @@ -6,39 +6,71 @@ PASS : tst_Cmptest::compare_pointerfuncs() FAIL! : tst_Cmptest::compare_tostring(int, string) Compared values are not the same Actual (actual): QVariant(int,123) Expected (expected): QVariant(QString,hi) - Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(122)] + Loc: [tst_cmptest.cpp(214)] FAIL! : tst_Cmptest::compare_tostring(null hash, invalid) Compared values are not the same Actual (actual): QVariant(QVariantHash) Expected (expected): QVariant() - Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(122)] + Loc: [tst_cmptest.cpp(214)] FAIL! : tst_Cmptest::compare_tostring(string, null user type) Compared values are not the same Actual (actual): QVariant(QString,A simple string) Expected (expected): QVariant(PhonyClass) - Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(122)] + Loc: [tst_cmptest.cpp(214)] FAIL! : tst_Cmptest::compare_tostring(both non-null user type) Compared values are not the same Actual (actual): QVariant(PhonyClass,) Expected (expected): QVariant(PhonyClass,) - Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(122)] + Loc: [tst_cmptest.cpp(214)] FAIL! : tst_Cmptest::compareQStringLists(last item different) Compared QStringLists differ at index 2. Actual (opA) : 'string3' Expected (opB) : 'DIFFERS' - Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/alive/tst_alive.cpp(68)] + Loc: [tst_cmptest.cpp(308)] FAIL! : tst_Cmptest::compareQStringLists(second-last item different) Compared QStringLists differ at index 2. Actual (opA) : 'string3' Expected (opB) : 'DIFFERS' - Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/alive/tst_alive.cpp(68)] + Loc: [tst_cmptest.cpp(308)] FAIL! : tst_Cmptest::compareQStringLists(prefix) Compared QStringLists have different sizes. Actual (opA) size : '2' Expected (opB) size: '1' - Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/alive/tst_alive.cpp(68)] + Loc: [tst_cmptest.cpp(308)] FAIL! : tst_Cmptest::compareQStringLists(short list second) Compared QStringLists have different sizes. Actual (opA) size : '12' Expected (opB) size: '1' - Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/alive/tst_alive.cpp(68)] + Loc: [tst_cmptest.cpp(308)] FAIL! : tst_Cmptest::compareQStringLists(short list first) Compared QStringLists have different sizes. Actual (opA) size : '1' Expected (opB) size: '12' - Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/alive/tst_alive.cpp(68)] + Loc: [tst_cmptest.cpp(308)] +FAIL! : tst_Cmptest::compareQPixmaps(one null) Compared QPixmaps differ. + Actual (opA).isNull() : 1 + Expected (opB).isNull(): 0 + Loc: [tst_cmptest.cpp(333)] +FAIL! : tst_Cmptest::compareQPixmaps(other null) Compared QPixmaps differ. + Actual (opA).isNull() : 0 + Expected (opB).isNull(): 1 + Loc: [tst_cmptest.cpp(333)] +FAIL! : tst_Cmptest::compareQPixmaps(different size) Compared QPixmaps differ in size. + Actual (opA) : 11x20 + Expected (opB): 20x20 + Loc: [tst_cmptest.cpp(333)] +FAIL! : tst_Cmptest::compareQPixmaps(different pixels) Compared values are not the same + Loc: [tst_cmptest.cpp(333)] +FAIL! : tst_Cmptest::compareQImages(one null) Compared QImages differ. + Actual (opA).isNull() : 1 + Expected (opB).isNull(): 0 + Loc: [tst_cmptest.cpp(360)] +FAIL! : tst_Cmptest::compareQImages(other null) Compared QImages differ. + Actual (opA).isNull() : 0 + Expected (opB).isNull(): 1 + Loc: [tst_cmptest.cpp(360)] +FAIL! : tst_Cmptest::compareQImages(different size) Compared QImages differ in size. + Actual (opA) : 11x20 + Expected (opB): 20x20 + Loc: [tst_cmptest.cpp(360)] +FAIL! : tst_Cmptest::compareQImages(different format) Compared QImages differ in format. + Actual (opA) : 6 + Expected (opB): 3 + Loc: [tst_cmptest.cpp(360)] +FAIL! : tst_Cmptest::compareQImages(different pixels) Compared values are not the same + Loc: [tst_cmptest.cpp(360)] PASS : tst_Cmptest::cleanupTestCase() -Totals: 4 passed, 9 failed, 0 skipped +Totals: 4 passed, 18 failed, 0 skipped ********* Finished testing of tst_Cmptest ********* diff --git a/tests/auto/testlib/selftests/expected_cmptest.xml b/tests/auto/testlib/selftests/expected_cmptest.xml index 7faa3a979d..aba1ce5edd 100644 --- a/tests/auto/testlib/selftests/expected_cmptest.xml +++ b/tests/auto/testlib/selftests/expected_cmptest.xml @@ -14,25 +14,25 @@ - + - + - + - + ) @@ -40,37 +40,91 @@ - + - + - + - + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/auto/testlib/selftests/expected_cmptest.xunitxml b/tests/auto/testlib/selftests/expected_cmptest.xunitxml index aa765a65e0..00f5f7f480 100644 --- a/tests/auto/testlib/selftests/expected_cmptest.xunitxml +++ b/tests/auto/testlib/selftests/expected_cmptest.xunitxml @@ -1,5 +1,5 @@ - + @@ -38,6 +38,33 @@ Actual (opA) size : '1' Expected (opB) size: '12'" result="fail"/> + + + + + + + + + + + + + diff --git a/tests/auto/testlib/selftests/tst_selftests.cpp b/tests/auto/testlib/selftests/tst_selftests.cpp index ea47678248..7825ade183 100644 --- a/tests/auto/testlib/selftests/tst_selftests.cpp +++ b/tests/auto/testlib/selftests/tst_selftests.cpp @@ -445,7 +445,15 @@ static inline QProcessEnvironment processEnvironment() { QProcessEnvironment result; const QString path = QStringLiteral("PATH"); - result.insert(path, QProcessEnvironment::systemEnvironment().value(path)); + const QProcessEnvironment systemEnvironment = QProcessEnvironment::systemEnvironment(); + result.insert(path, systemEnvironment.value(path)); + // Preserve DISPLAY for X11 as some tests use QtGui. +#if defined(Q_OS_UNIX) && !defined(Q_OS_MAC) + const QString display = QStringLiteral("DISPLAY"); + const QString displayValue = systemEnvironment.value(display); + if (!displayValue.isEmpty()) + result.insert(display, displayValue); +#endif return result; } @@ -486,6 +494,7 @@ void tst_Selftests::doRunSubTest(QString const& subdir, QStringList const& logge // newer than the valgrind version, such that valgrind can't understand the // debug information on the binary. if (subdir != QLatin1String("exceptionthrow") + && subdir != QLatin1String("cmptest") // QImage comparison requires QGuiApplication && subdir != QLatin1String("fetchbogus") && subdir != QLatin1String("xunit") && subdir != QLatin1String("benchlibcallgrind")) @@ -524,7 +533,9 @@ void tst_Selftests::doRunSubTest(QString const& subdir, QStringList const& logge } } } else { - QCOMPARE(res.count(), exp.count()); + QVERIFY2(res.count() == exp.count(), + qPrintable(QString::fromLatin1("Mismatch in line count: %1 != %2 (%3).") + .arg(res.count()).arg(exp.count()).arg(loggers.at(n)))); } // For xml output formats, verify that the log is valid XML. @@ -585,7 +596,9 @@ void tst_Selftests::doRunSubTest(QString const& subdir, QStringList const& logge QCOMPARE(actualResult, expectedResult); } else { - QCOMPARE(output, expected); + QVERIFY2(output == expected, + qPrintable(QString::fromLatin1("Mismatch at line %1 (%2): '%3' != '%4'") + .arg(i).arg(loggers.at(n), output, expected))); } benchmark = line.startsWith("RESULT : "); @@ -758,9 +771,12 @@ void tst_Selftests::cleanup() // Remove the test output files for (int i = 0; i < loggers.count(); ++i) { - QString logFile = logName(loggers[i]); - if (!logFile.isEmpty()) - QVERIFY(QFile::remove(logFile)); + QString logFileName = logName(loggers[i]); + if (!logFileName.isEmpty()) { + QFile logFile(logFileName); + if (logFile.exists()) + QVERIFY2(logFile.remove(), qPrintable(QString::fromLatin1("Cannot remove file '%1': %2: ").arg(logFileName, logFile.errorString()))); + } } } -- cgit v1.2.3 From 54c487cdd2950ac447f9164a9fea2d0468d87433 Mon Sep 17 00:00:00 2001 From: Martin Petersson Date: Mon, 19 Dec 2011 11:02:46 +0100 Subject: QNetworkAccessManager: delay IPv4 or IPv6 based on getaddrinfo order Instead of always delaying IPv4 when we have both Ipv4 and IPv6 we should use the order we get from getaddrinfo to descide which one that should be delayed. Task-number: QTBUG-23066 Change-Id: Ibe8c4d7000abd6e57fe8c6afac8a4a843e17ff27 Reviewed-by: Peter Hartmann Reviewed-by: Thiago Macieira Reviewed-by: Shane Kearns --- src/network/access/qhttpnetworkconnection.cpp | 42 +++++++++++++++------- src/network/access/qhttpnetworkconnection_p.h | 7 ++-- .../access/qhttpnetworkconnectionchannel.cpp | 4 +-- 3 files changed, 35 insertions(+), 18 deletions(-) diff --git a/src/network/access/qhttpnetworkconnection.cpp b/src/network/access/qhttpnetworkconnection.cpp index b43f2b9bcd..b4004eae14 100644 --- a/src/network/access/qhttpnetworkconnection.cpp +++ b/src/network/access/qhttpnetworkconnection.cpp @@ -81,7 +81,7 @@ const int QHttpNetworkConnectionPrivate::defaultRePipelineLength = 2; QHttpNetworkConnectionPrivate::QHttpNetworkConnectionPrivate(const QString &hostName, quint16 port, bool encrypt) : state(RunningState), networkLayerState(Unknown), - hostName(hostName), port(port), encrypt(encrypt), + hostName(hostName), port(port), encrypt(encrypt), delayIpv4(true), channelCount(defaultChannelCount) #ifndef QT_NO_NETWORKPROXY , networkProxy(QNetworkProxy::NoProxy) @@ -92,7 +92,7 @@ QHttpNetworkConnectionPrivate::QHttpNetworkConnectionPrivate(const QString &host QHttpNetworkConnectionPrivate::QHttpNetworkConnectionPrivate(quint16 channelCount, const QString &hostName, quint16 port, bool encrypt) : state(RunningState), networkLayerState(Unknown), - hostName(hostName), port(port), encrypt(encrypt), + hostName(hostName), port(port), encrypt(encrypt), delayIpv4(true), channelCount(channelCount) #ifndef QT_NO_NETWORKPROXY , networkProxy(QNetworkProxy::NoProxy) @@ -126,8 +126,8 @@ void QHttpNetworkConnectionPrivate::init() #endif channels[i].init(); } - ipv4ConnectTimer.setSingleShot(true); - QObject::connect(&ipv4ConnectTimer, SIGNAL(timeout()), q, SLOT(_q_connectIPv4Channel())); + delayedConnectionTimer.setSingleShot(true); + QObject::connect(&delayedConnectionTimer, SIGNAL(timeout()), q, SLOT(_q_connectDelayedChannel())); } void QHttpNetworkConnectionPrivate::pauseConnection() @@ -189,9 +189,9 @@ bool QHttpNetworkConnectionPrivate::shouldEmitChannelError(QAbstractSocket *sock int otherSocket = (i == 0 ? 1 : 0); // If the IPv4 connection still isn't started we need to start it now. - if (ipv4ConnectTimer.isActive()) { - ipv4ConnectTimer.stop(); - channels[0].ensureConnection(); + if (delayedConnectionTimer.isActive()) { + delayedConnectionTimer.stop(); + channels[otherSocket].ensureConnection(); } if (channelCount == 1) { @@ -974,12 +974,22 @@ void QHttpNetworkConnectionPrivate::_q_hostLookupFinished(QHostInfo info) { bool bIpv4 = false; bool bIpv6 = false; + bool foundAddress = false; foreach (QHostAddress address, info.addresses()) { - if (address.protocol() == QAbstractSocket::IPv4Protocol) + if (address.protocol() == QAbstractSocket::IPv4Protocol) { + if (!foundAddress) { + foundAddress = true; + delayIpv4 = false; + } bIpv4 = true; - else if (address.protocol() == QAbstractSocket::IPv6Protocol) + } else if (address.protocol() == QAbstractSocket::IPv6Protocol) { + if (!foundAddress) { + foundAddress = true; + delayIpv4 = true; + } bIpv6 = true; + } } if (bIpv4 && bIpv6) @@ -1030,8 +1040,11 @@ void QHttpNetworkConnectionPrivate::startNetworkLayerStateLookup() else if (networkSession->configuration().bearerType() == QNetworkConfiguration::BearerHSPA) timeout = 400; #endif - ipv4ConnectTimer.start(timeout); - channels[1].ensureConnection(); + delayedConnectionTimer.start(timeout); + if (delayIpv4) + channels[1].ensureConnection(); + else + channels[0].ensureConnection(); } else { networkLayerState = InProgress; channels[0].networkLayerPreference = QAbstractSocket::AnyIPProtocol; @@ -1039,9 +1052,12 @@ void QHttpNetworkConnectionPrivate::startNetworkLayerStateLookup() } } -void QHttpNetworkConnectionPrivate::_q_connectIPv4Channel() +void QHttpNetworkConnectionPrivate::_q_connectDelayedChannel() { - channels[0].ensureConnection(); + if (delayIpv4) + channels[0].ensureConnection(); + else + channels[1].ensureConnection(); } #ifndef QT_NO_BEARERMANAGEMENT diff --git a/src/network/access/qhttpnetworkconnection_p.h b/src/network/access/qhttpnetworkconnection_p.h index 18ec92a07a..75da382145 100644 --- a/src/network/access/qhttpnetworkconnection_p.h +++ b/src/network/access/qhttpnetworkconnection_p.h @@ -135,7 +135,7 @@ private: Q_PRIVATE_SLOT(d_func(), void _q_startNextRequest()) Q_PRIVATE_SLOT(d_func(), void _q_hostLookupFinished(QHostInfo)) - Q_PRIVATE_SLOT(d_func(), void _q_connectIPv4Channel()) + Q_PRIVATE_SLOT(d_func(), void _q_connectDelayedChannel()) }; @@ -198,7 +198,7 @@ public: void _q_startNextRequest(); // send the next request from the queue void _q_hostLookupFinished(QHostInfo info); - void _q_connectIPv4Channel(); + void _q_connectDelayedChannel(); void createAuthorization(QAbstractSocket *socket, QHttpNetworkRequest &request); @@ -210,9 +210,10 @@ public: QString hostName; quint16 port; bool encrypt; + bool delayIpv4; const int channelCount; - QTimer ipv4ConnectTimer; + QTimer delayedConnectionTimer; QHttpNetworkConnectionChannel *channels; // parallel connections to the server bool shouldEmitChannelError(QAbstractSocket *socket); diff --git a/src/network/access/qhttpnetworkconnectionchannel.cpp b/src/network/access/qhttpnetworkconnectionchannel.cpp index edf66ff1aa..ab178be582 100644 --- a/src/network/access/qhttpnetworkconnectionchannel.cpp +++ b/src/network/access/qhttpnetworkconnectionchannel.cpp @@ -954,8 +954,8 @@ void QHttpNetworkConnectionChannel::_q_connected() // For the Happy Eyeballs we need to check if this is the first channel to connect. if (!pendingEncrypt) { if (connection->d_func()->networkLayerState == QHttpNetworkConnectionPrivate::InProgress) { - if (connection->d_func()->ipv4ConnectTimer.isActive()) - connection->d_func()->ipv4ConnectTimer.stop(); + if (connection->d_func()->delayedConnectionTimer.isActive()) + connection->d_func()->delayedConnectionTimer.stop(); if (networkLayerPreference == QAbstractSocket::IPv4Protocol) connection->d_func()->networkLayerState = QHttpNetworkConnectionPrivate::IPv4; else if (networkLayerPreference == QAbstractSocket::IPv6Protocol) -- cgit v1.2.3 From f718728567568454cecaa9810b1f2c029a002fd7 Mon Sep 17 00:00:00 2001 From: Jan-Arve Saether Date: Tue, 20 Dec 2011 13:32:01 +0100 Subject: Do not crash in the windows accessibility bridge If the object did not have a QAccessibleInterface subclass it would crash in the windows accessibility bridge. Change-Id: I931d69466a5a74a87f1c1c577fb1c918dcc8accf Reviewed-by: Frederik Gladhorn --- src/plugins/platforms/windows/qwindowsaccessibility.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/plugins/platforms/windows/qwindowsaccessibility.cpp b/src/plugins/platforms/windows/qwindowsaccessibility.cpp index 53d7b33769..daf30ce027 100644 --- a/src/plugins/platforms/windows/qwindowsaccessibility.cpp +++ b/src/plugins/platforms/windows/qwindowsaccessibility.cpp @@ -1404,7 +1404,7 @@ void QWindowsAccessibility::notifyAccessibilityUpdate(QObject *o, int who, QAcce // An event has to be associated with a window, // so find the first parent that is a widget and that has a WId QAccessibleInterface *iface = QAccessible::queryAccessibleInterface(o); - QWindow *window = window_helper(iface); + QWindow *window = iface ? window_helper(iface) : 0; if (!window) { window = QGuiApplication::activeWindow(); -- cgit v1.2.3 From f0bf2b514911d24d8c3452d9146378c7ca509744 Mon Sep 17 00:00:00 2001 From: Morten Johan Sorvig Date: Tue, 20 Dec 2011 13:20:13 +0100 Subject: Fix up the accessibility inspector. After accessibility API changes. Also make the windows a bit smaller since the primary user is on a laptop now. Change-Id: I53a86cbe85adbbb27401dbf6c3c389629e295b4d Reviewed-by: Frederik Gladhorn --- .../accessibilityinspector.cpp | 4 ++-- util/accessibilityinspector/screenreader.cpp | 26 +++++----------------- 2 files changed, 8 insertions(+), 22 deletions(-) diff --git a/util/accessibilityinspector/accessibilityinspector.cpp b/util/accessibilityinspector/accessibilityinspector.cpp index af7fd521e8..88008cd35b 100644 --- a/util/accessibilityinspector/accessibilityinspector.cpp +++ b/util/accessibilityinspector/accessibilityinspector.cpp @@ -106,14 +106,14 @@ void AccessibilityInspector::inspectWindow(QWindow *window) accessibilityView = new QGraphicsView(); accessibilityView->setScene(accessibilityScene); - accessibilityView->resize(1024, 768); + accessibilityView->resize(640, 480); accessibilityView->scale(1.3, 1.3); accessibilityTreeScene = new QGraphicsScene(); accessibilityTreeView = new QGraphicsView(); accessibilityTreeView->setScene(accessibilityTreeScene); - accessibilityTreeView->resize(1024, 768); + accessibilityTreeView->resize(640, 480); sceneManager = new AccessibilitySceneManager(); QObject::connect(optionsWidget, SIGNAL(optionsChanged()), sceneManager, SLOT(updateAccessibilitySceneItemFlags())); diff --git a/util/accessibilityinspector/screenreader.cpp b/util/accessibilityinspector/screenreader.cpp index aa17bfb6ee..5560743bc6 100644 --- a/util/accessibilityinspector/screenreader.cpp +++ b/util/accessibilityinspector/screenreader.cpp @@ -97,31 +97,17 @@ void ScreenReader::processTouchPoint() int hit = -2; int guardCounter = 0; const int guardMax = 40; - while (hit != 0) { + while (currentInterface != 0) { ++guardCounter; if (guardCounter > guardMax) { qDebug() << "touchPoint exit recursion overflow"; return; // outside } -/* - hit = currentInterface->childAt(m_currentTouchPoint.x(), m_currentTouchPoint.y()); - //qDebug() << "hit" << hit; - if (hit == -1) { - return; // outside - } else if (hit == 0) { - break; // found it. - } else { - QAccessibleInterface *childInterface = 0; - int child = currentInterface->navigate(QAccessible::Child, hit, &childInterface); - if (childInterface == 0) { - return; // navigation error - } - - if (currentInterface != m_rootInterface) - delete currentInterface; - currentInterface = childInterface; - } -*/ + + QAccessibleInterface * hit = currentInterface->childAt(m_currentTouchPoint.x(), m_currentTouchPoint.y()); + if (!hit) + break; + currentInterface = hit; } m_selectedInterface = currentInterface; -- cgit v1.2.3 From 1b51079e48d647a3863ff8a996e60c45f6e62fdb Mon Sep 17 00:00:00 2001 From: Morten Johan Sorvig Date: Tue, 6 Dec 2011 21:09:53 +0100 Subject: Mac: Add temporary solution to fix app deployment. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Look for the the platform plugin in "../Plugins" first. When deployed inside an app bundle this path will point to the plugin directory inside the app bundle. Change-Id: I362981a9e0ca9a3e69396b033a571d0b4e2bf78a Reviewed-by: Morten Johan Sørvig Reviewed-by: Bradley T. Hughes --- src/gui/kernel/qguiapplication.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/gui/kernel/qguiapplication.cpp b/src/gui/kernel/qguiapplication.cpp index 312d8f50fb..f669a8f3d5 100644 --- a/src/gui/kernel/qguiapplication.cpp +++ b/src/gui/kernel/qguiapplication.cpp @@ -334,6 +334,16 @@ void QGuiApplicationPrivate::createPlatformIntegration() // Load the platform integration QString platformPluginPath = QLatin1String(qgetenv("QT_QPA_PLATFORM_PLUGIN_PATH")); + + // On Mac, look inside the application bundle for the platform plugin. + // TODO (msorvig): Create proper cross-platform solution for loading + // deployed platform plugins +#ifdef Q_OS_MAC + if (platformPluginPath.isEmpty()) { + platformPluginPath = QCoreApplication::applicationDirPath() + QLatin1String("../Plugins/"); + } +#endif + QByteArray platformName; #ifdef QT_QPA_DEFAULT_PLATFORM_NAME platformName = QT_QPA_DEFAULT_PLATFORM_NAME; -- cgit v1.2.3 From d62228a77e3f4990623636519836874a66baffbb Mon Sep 17 00:00:00 2001 From: Shane Kearns Date: Mon, 12 Dec 2011 16:24:52 +0000 Subject: Fix compile error when configured with -no-exceptions MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The test was skipped, but still tried to compile code that uses exceptions. The throwing class it uses was conditionally compiled out earlier in the file, causing an error for undefined class. Task-number: QTBUG-23028 Change-Id: Ia2e05a8a0abbf0e913f6c41e85bfee8b85cbc8a5 Reviewed-by: João Abecasis --- tests/auto/corelib/kernel/qeventloop/tst_qeventloop.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tests/auto/corelib/kernel/qeventloop/tst_qeventloop.cpp b/tests/auto/corelib/kernel/qeventloop/tst_qeventloop.cpp index aab405fa97..f48a8ebfaf 100644 --- a/tests/auto/corelib/kernel/qeventloop/tst_qeventloop.cpp +++ b/tests/auto/corelib/kernel/qeventloop/tst_qeventloop.cpp @@ -322,7 +322,9 @@ void tst_QEventLoop::throwInExec() // qobject.cpp will try to rethrow the exception after handling // which causes gwes.exe to crash QSKIP("This platform doesn't support propagating exceptions through the event loop"); -#elif defined(Q_OS_LINUX) +#else + // exceptions compiled in, runtime tests follow. +#if defined(Q_OS_LINUX) // C++ exceptions can't be passed through glib callbacks. Skip the test if // we're using the glib event loop. QByteArray dispatcher = QAbstractEventDispatcher::instance()->metaObject()->className(); @@ -357,6 +359,7 @@ void tst_QEventLoop::throwInExec() } QCOMPARE(caughtExceptions, 2); } +#endif } void tst_QEventLoop::reexec() -- cgit v1.2.3 From 4be2430925e04db1a998a11c1c281ae578feca4b Mon Sep 17 00:00:00 2001 From: Shane Kearns Date: Tue, 13 Dec 2011 15:50:59 +0000 Subject: Test case for QTBUG-22875 Test the authentication cache works properly with "cancelled dialogs" or if the user enters username/password incorrectly. Expected behaviour is based on web browsers: If cancelled, current request fails, and prompt again the next time. If wrong password is given, prompt again and retry the current request. If bad credentials are in the cache, prompt again Task-number: QTBUG-22875 Change-Id: Ic02ccac8dbeb3f2580ca4ffe47d0773982c4ab25 Reviewed-by: Peter Hartmann --- .../access/qnetworkreply/tst_qnetworkreply.cpp | 189 ++++++++++++++++++++- 1 file changed, 188 insertions(+), 1 deletion(-) diff --git a/tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp b/tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp index e900a25264..cc520a620a 100644 --- a/tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp +++ b/tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp @@ -73,7 +73,9 @@ #include #include #endif - +#ifdef QT_BUILD_INTERNAL +#include +#endif #include #include "../../../network-settings.h" @@ -378,6 +380,8 @@ private Q_SLOTS: void dontInsertPartialContentIntoTheCache(); void httpUserAgent(); + void authenticationCacheAfterCancel_data(); + void authenticationCacheAfterCancel(); void synchronousAuthenticationCache(); // NOTE: This test must be last! @@ -6025,6 +6029,189 @@ void tst_QNetworkReply::qtbug4121unknownAuthentication() QCOMPARE(reply->error(), QNetworkReply::AuthenticationRequiredError); } +void tst_QNetworkReply::authenticationCacheAfterCancel_data() +{ + QTest::addColumn("proxy"); + QTest::addColumn("proxyAuth"); + QTest::addColumn("url"); + for (int i = 0; i < proxies.count(); ++i) { + QTest::newRow("http" + proxies.at(i).tag) << proxies.at(i).proxy << proxies.at(i).requiresAuthentication << QUrl("http://" + QtNetworkSettings::serverName() + "/qtest/rfcs-auth/rfc3252.txt"); +#ifndef QT_NO_OPENSSL + QTest::newRow("https" + proxies.at(i).tag) << proxies.at(i).proxy << proxies.at(i).requiresAuthentication << QUrl("https://" + QtNetworkSettings::serverName() + "/qtest/rfcs-auth/rfc3252.txt"); +#endif + } +} + +class AuthenticationCacheHelper : public QObject +{ + Q_OBJECT +public: + AuthenticationCacheHelper() + {} +public slots: + void proxyAuthenticationRequired(const QNetworkProxy &, QAuthenticator *auth) + { + if (!proxyPassword.isNull()) { + auth->setUser(proxyUserName); + auth->setPassword(proxyPassword); + //clear credentials, if they are asked again, they were bad + proxyUserName.clear(); + proxyPassword.clear(); + } + } + void authenticationRequired(QNetworkReply*,QAuthenticator *auth) + { + if (!httpPassword.isNull()) { + auth->setUser(httpUserName); + auth->setPassword(httpPassword); + //clear credentials, if they are asked again, they were bad + httpUserName.clear(); + httpPassword.clear(); + } + } +public: + QString httpUserName; + QString httpPassword; + QString proxyUserName; + QString proxyPassword; +}; + +/* Purpose of this test is to check credentials are cached correctly. + - If user cancels authentication dialog (i.e. nothing is set to the QAuthenticator by the callback) then this is not cached + - if user supplies a wrong password, then this is not cached + - if user supplies a correct user/password combination then this is cached + + Test is checking both the proxyAuthenticationRequired and authenticationRequired signals. + */ +void tst_QNetworkReply::authenticationCacheAfterCancel() +{ + QFETCH(QNetworkProxy, proxy); + QFETCH(bool, proxyAuth); + QFETCH(QUrl, url); + QNetworkAccessManager manager; +#ifndef QT_NO_OPENSSL + connect(&manager, SIGNAL(sslErrors(QNetworkReply*,QList)), + SLOT(sslErrors(QNetworkReply*,QList))); +#endif + manager.setProxy(proxy); + QSignalSpy authSpy(&manager, SIGNAL(authenticationRequired(QNetworkReply*,QAuthenticator*))); + QSignalSpy proxyAuthSpy(&manager, SIGNAL(proxyAuthenticationRequired(const QNetworkProxy &, QAuthenticator *))); + + AuthenticationCacheHelper helper; + connect(&manager, SIGNAL(proxyAuthenticationRequired(const QNetworkProxy &, QAuthenticator *)), &helper, SLOT(proxyAuthenticationRequired(const QNetworkProxy &, QAuthenticator *))); + connect(&manager, SIGNAL(authenticationRequired(QNetworkReply*,QAuthenticator*)), &helper, SLOT(authenticationRequired(QNetworkReply*,QAuthenticator*))); + + QNetworkRequest request(url); + QNetworkReplyPtr reply; + if (proxyAuth) { + //should fail due to no credentials + reply = manager.get(request); + connect(reply, SIGNAL(finished()), &QTestEventLoop::instance(), SLOT(exitLoop()), Qt::QueuedConnection); + QTestEventLoop::instance().enterLoop(10); + QVERIFY(!QTestEventLoop::instance().timeout()); + + QCOMPARE(reply->error(), QNetworkReply::ProxyAuthenticationRequiredError); + QCOMPARE(authSpy.count(), 0); + QCOMPARE(proxyAuthSpy.count(), 1); + proxyAuthSpy.clear(); + + //should fail due to bad credentials + helper.proxyUserName = "qsockstest"; + helper.proxyPassword = "badpassword"; + reply = manager.get(request); + connect(reply, SIGNAL(finished()), &QTestEventLoop::instance(), SLOT(exitLoop()), Qt::QueuedConnection); + QTestEventLoop::instance().enterLoop(10); + QVERIFY(!QTestEventLoop::instance().timeout()); + + QEXPECT_FAIL("http+socksauth", "QTBUG-23136 - danted accepts bad authentication but blocks the connection", Continue); + QEXPECT_FAIL("https+socksauth", "QTBUG-23136 - danted accepts bad authentication but blocks the connection", Continue); + + QCOMPARE(reply->error(), QNetworkReply::ProxyAuthenticationRequiredError); + QCOMPARE(authSpy.count(), 0); + QVERIFY(proxyAuthSpy.count() > 0); + proxyAuthSpy.clear(); + + //QTBUG-23136 workaround + if (proxy.port() == 1081) { +#ifdef QT_BUILD_INTERNAL + QNetworkAccessManagerPrivate::clearCache(&manager); +#else + return; //XFAIL result above +#endif + } + + //next proxy auth should succeed, due to correct credentials + helper.proxyUserName = "qsockstest"; + helper.proxyPassword = "password"; + } + + //should fail due to no credentials + reply = manager.get(request); + connect(reply, SIGNAL(finished()), &QTestEventLoop::instance(), SLOT(exitLoop()), Qt::QueuedConnection); + QTestEventLoop::instance().enterLoop(10); + QVERIFY(!QTestEventLoop::instance().timeout()); + + QCOMPARE(reply->error(), QNetworkReply::AuthenticationRequiredError); + QVERIFY(authSpy.count() > 0); + authSpy.clear(); + if (proxyAuth) { + QVERIFY(proxyAuthSpy.count() > 0); + proxyAuthSpy.clear(); + } + + //should fail due to bad credentials + helper.httpUserName = "baduser"; + helper.httpPassword = "badpassword"; + reply = manager.get(request); + connect(reply, SIGNAL(finished()), &QTestEventLoop::instance(), SLOT(exitLoop()), Qt::QueuedConnection); + QTestEventLoop::instance().enterLoop(10); + QVERIFY(!QTestEventLoop::instance().timeout()); + + QCOMPARE(reply->error(), QNetworkReply::AuthenticationRequiredError); + QVERIFY(authSpy.count() > 0); + authSpy.clear(); + if (proxyAuth) { + //should be supplied from cache + QCOMPARE(proxyAuthSpy.count(), 0); + proxyAuthSpy.clear(); + } + + //next auth should succeed, due to correct credentials + helper.httpUserName = "httptest"; + helper.httpPassword = "httptest"; + + reply = manager.get(request); + connect(reply, SIGNAL(finished()), &QTestEventLoop::instance(), SLOT(exitLoop()), Qt::QueuedConnection); + QTestEventLoop::instance().enterLoop(10); + QVERIFY(!QTestEventLoop::instance().timeout()); + + QCOMPARE(reply->error(), QNetworkReply::NoError); + QVERIFY(authSpy.count() > 0); + authSpy.clear(); + if (proxyAuth) { + //should be supplied from cache + QCOMPARE(proxyAuthSpy.count(), 0); + proxyAuthSpy.clear(); + } + + //next auth should use cached credentials + reply = manager.get(request); + connect(reply, SIGNAL(finished()), &QTestEventLoop::instance(), SLOT(exitLoop()), Qt::QueuedConnection); + QTestEventLoop::instance().enterLoop(10); + QVERIFY(!QTestEventLoop::instance().timeout()); + + QCOMPARE(reply->error(), QNetworkReply::NoError); + //should be supplied from cache + QCOMPARE(authSpy.count(), 0); + authSpy.clear(); + if (proxyAuth) { + //should be supplied from cache + QCOMPARE(proxyAuthSpy.count(), 0); + proxyAuthSpy.clear(); + } + +} + class QtBug13431Helper : public QObject { Q_OBJECT public: -- cgit v1.2.3 From e6ee1848a346916a1b2a0bc57964209eb36e10c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B8rgen=20Lind?= Date: Thu, 22 Dec 2011 09:46:07 +0100 Subject: Disable logging in xcb The logging groves and modifies a vector.. It should at least be a linked-list. but anyway, it shouldn't be enabled by default Change-Id: Iaebb1158eea1c907e31e9606b143c0318a189dd1 Reviewed-by: Eskil Abrahamsen Blomfeldt --- src/plugins/platforms/xcb/qxcbconnection.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/plugins/platforms/xcb/qxcbconnection.h b/src/plugins/platforms/xcb/qxcbconnection.h index 878d41ad89..8f83dbb728 100644 --- a/src/plugins/platforms/xcb/qxcbconnection.h +++ b/src/plugins/platforms/xcb/qxcbconnection.h @@ -56,7 +56,7 @@ struct XInput2Data; #endif -#define Q_XCB_DEBUG +//#define Q_XCB_DEBUG QT_BEGIN_NAMESPACE -- cgit v1.2.3 From 86f5b78394a5c2e33bc26aa7c320276963b4ac33 Mon Sep 17 00:00:00 2001 From: Peter Hartmann Date: Mon, 19 Dec 2011 11:46:45 +0100 Subject: SSL: fix build with -openssl-linked for OpenSSL 0.9.8* OpenSSL's SSL_ctrl() always took a "void *" argument as 4th parameter, since at least version 0.9.7. I have no idea why we had "const void *" in there. Reviewed-by: Richard J. Moore Task-number: QTBUG-23132 (cherry picked from commit 4db91cbd6147e40f543342f22c05b7baddc52e5a) Change-Id: Ie570e1cc59b72f13d3e6f3ed6fc1892444a63743 Reviewed-by: Richard J. Moore Reviewed-by: Robin Burchell Reviewed-by: Martin Petersson --- src/network/ssl/qsslsocket_openssl.cpp | 4 ---- src/network/ssl/qsslsocket_openssl_symbols.cpp | 4 ---- src/network/ssl/qsslsocket_openssl_symbols_p.h | 4 ---- 3 files changed, 12 deletions(-) diff --git a/src/network/ssl/qsslsocket_openssl.cpp b/src/network/ssl/qsslsocket_openssl.cpp index f70b4217bd..ef39de6b6d 100644 --- a/src/network/ssl/qsslsocket_openssl.cpp +++ b/src/network/ssl/qsslsocket_openssl.cpp @@ -453,11 +453,7 @@ init_context: if (!ace.isEmpty() && !QHostAddress().setAddress(tlsHostName) && !(configuration.sslOptions & QSsl::SslOptionDisableServerNameIndication)) { -#if OPENSSL_VERSION_NUMBER >= 0x10000000L if (!q_SSL_ctrl(ssl, SSL_CTRL_SET_TLSEXT_HOSTNAME, TLSEXT_NAMETYPE_host_name, ace.data())) -#else - if (!q_SSL_ctrl(ssl, SSL_CTRL_SET_TLSEXT_HOSTNAME, TLSEXT_NAMETYPE_host_name, ace.constData())) -#endif qWarning("could not set SSL_CTRL_SET_TLSEXT_HOSTNAME, Server Name Indication disabled"); } } diff --git a/src/network/ssl/qsslsocket_openssl_symbols.cpp b/src/network/ssl/qsslsocket_openssl_symbols.cpp index cd27c31456..70eb596525 100644 --- a/src/network/ssl/qsslsocket_openssl_symbols.cpp +++ b/src/network/ssl/qsslsocket_openssl_symbols.cpp @@ -218,11 +218,7 @@ DEFINEFUNC(int, SSL_library_init, void, DUMMYARG, return -1, return) DEFINEFUNC(void, SSL_load_error_strings, void, DUMMYARG, return, DUMMYARG) DEFINEFUNC(SSL *, SSL_new, SSL_CTX *a, a, return 0, return) #if OPENSSL_VERSION_NUMBER >= 0x0090806fL && !defined(OPENSSL_NO_TLSEXT) -#if OPENSSL_VERSION_NUMBER >= 0x10000000L DEFINEFUNC4(long, SSL_ctrl, SSL *a, a, int cmd, cmd, long larg, larg, void *parg, parg, return -1, return) -#else -DEFINEFUNC4(long, SSL_ctrl, SSL *a, a, int cmd, cmd, long larg, larg, const void *parg, parg, return -1, return) -#endif #endif DEFINEFUNC3(int, SSL_read, SSL *a, a, void *b, b, int c, c, return -1, return) DEFINEFUNC3(void, SSL_set_bio, SSL *a, a, BIO *b, b, BIO *c, c, return, DUMMYARG) diff --git a/src/network/ssl/qsslsocket_openssl_symbols_p.h b/src/network/ssl/qsslsocket_openssl_symbols_p.h index ad7a0a7557..ecade35793 100644 --- a/src/network/ssl/qsslsocket_openssl_symbols_p.h +++ b/src/network/ssl/qsslsocket_openssl_symbols_p.h @@ -325,11 +325,7 @@ int q_SSL_library_init(); void q_SSL_load_error_strings(); SSL *q_SSL_new(SSL_CTX *a); #if OPENSSL_VERSION_NUMBER >= 0x0090806fL && !defined(OPENSSL_NO_TLSEXT) -#if OPENSSL_VERSION_NUMBER >= 0x10000000L long q_SSL_ctrl(SSL *ssl,int cmd, long larg, void *parg); -#else -long q_SSL_ctrl(SSL *ssl,int cmd, long larg, const void *parg); -#endif #endif int q_SSL_read(SSL *a, void *b, int c); void q_SSL_set_bio(SSL *a, BIO *b, BIO *c); -- cgit v1.2.3 From 755fe9da1db2ab6ae3300073a3bad2fa2c60c4c5 Mon Sep 17 00:00:00 2001 From: "Jonas M. Gastal" Date: Tue, 20 Dec 2011 14:42:06 -0200 Subject: Add ToS option to sockets. Creates a new SocketOption called called TypeOfServiceOption that can be used with the existing setSocketOption method to set the ToS byte in a socket socket. This is done only for unix systems because windows doesn't support directly setting the ToS/DSCP byte: http://support.microsoft.com/kb/248611 http://blogs.msdn.com/b/wndp/archive/2006/07/05/657196.aspx Change-Id: Idf9da2dd8307ac7057982fbfdf9e4e9ebe366780 Task-number: QTBUG-6221 Reviewed-by: Thiago Macieira Reviewed-by: Peter Hartmann --- src/network/socket/qabstractsocket.cpp | 21 +++++++++++++++++++++ src/network/socket/qabstractsocket.h | 3 ++- src/network/socket/qabstractsocketengine_p.h | 3 ++- src/network/socket/qnativesocketengine_unix.cpp | 12 ++++++++++++ src/network/socket/qnativesocketengine_win.cpp | 6 ++++++ 5 files changed, 43 insertions(+), 2 deletions(-) diff --git a/src/network/socket/qabstractsocket.cpp b/src/network/socket/qabstractsocket.cpp index d74a717d93..91f10a0127 100644 --- a/src/network/socket/qabstractsocket.cpp +++ b/src/network/socket/qabstractsocket.cpp @@ -360,6 +360,19 @@ \value MulticastLoopbackOption Set this to 1 to enable the IP_MULTICAST_LOOP (multicast loopback) socket option. + \value TypeOfServiceOption This option is not supported on Windows. This maps to to the IP_TOS socket option. Possible values are: + \table + \header \o Value \o Description + \row \o 224 \o Network control + \row \o 192 \o Internetwork control + \row \o 160 \o CRITIC/ECP + \row \o 128 \o Flash override + \row \o 96 \o Flash + \row \o 64 \o Immediate + \row \o 32 \o Priority + \row \o 0 \o Routine + \endtable + \sa QAbstractSocket::setSocketOption(), QAbstractSocket::socketOption() */ @@ -1805,6 +1818,10 @@ void QAbstractSocket::setSocketOption(QAbstractSocket::SocketOption option, cons case MulticastLoopbackOption: d_func()->socketEngine->setOption(QAbstractSocketEngine::MulticastLoopbackOption, value.toInt()); break; + + case TypeOfServiceOption: + d_func()->socketEngine->setOption(QAbstractSocketEngine::TypeOfServiceOption, value.toInt()); + break; } } @@ -1841,6 +1858,10 @@ QVariant QAbstractSocket::socketOption(QAbstractSocket::SocketOption option) case MulticastLoopbackOption: ret = d_func()->socketEngine->option(QAbstractSocketEngine::MulticastLoopbackOption); break; + + case TypeOfServiceOption: + ret = d_func()->socketEngine->option(QAbstractSocketEngine::TypeOfServiceOption); + break; } if (ret == -1) return QVariant(); diff --git a/src/network/socket/qabstractsocket.h b/src/network/socket/qabstractsocket.h index ee910e3b33..e3c27e34b0 100644 --- a/src/network/socket/qabstractsocket.h +++ b/src/network/socket/qabstractsocket.h @@ -113,7 +113,8 @@ public: LowDelayOption, // TCP_NODELAY KeepAliveOption, // SO_KEEPALIVE MulticastTtlOption, // IP_MULTICAST_TTL - MulticastLoopbackOption // IP_MULTICAST_LOOPBACK + MulticastLoopbackOption, // IP_MULTICAST_LOOPBACK + TypeOfServiceOption //IP_TOS }; enum BindFlag { DefaultForPlatform = 0x0, diff --git a/src/network/socket/qabstractsocketengine_p.h b/src/network/socket/qabstractsocketengine_p.h index a8be98a0cf..e58cc5ab95 100644 --- a/src/network/socket/qabstractsocketengine_p.h +++ b/src/network/socket/qabstractsocketengine_p.h @@ -99,7 +99,8 @@ public: LowDelayOption, KeepAliveOption, MulticastTtlOption, - MulticastLoopbackOption + MulticastLoopbackOption, + TypeOfServiceOption }; virtual bool initialize(QAbstractSocket::SocketType type, QAbstractSocket::NetworkLayerProtocol protocol = QAbstractSocket::IPv4Protocol) = 0; diff --git a/src/network/socket/qnativesocketengine_unix.cpp b/src/network/socket/qnativesocketengine_unix.cpp index 09aed255d6..c0a55b9a26 100644 --- a/src/network/socket/qnativesocketengine_unix.cpp +++ b/src/network/socket/qnativesocketengine_unix.cpp @@ -251,6 +251,12 @@ int QNativeSocketEnginePrivate::option(QNativeSocketEngine::SocketOption opt) co n = IP_MULTICAST_LOOP; } break; + case QNativeSocketEngine::TypeOfServiceOption: + if (socketProtocol == QAbstractSocket::IPv4Protocol) { + level = IPPROTO_IP; + n = IP_TOS; + } + break; } int v = -1; @@ -352,6 +358,12 @@ bool QNativeSocketEnginePrivate::setOption(QNativeSocketEngine::SocketOption opt n = IP_MULTICAST_LOOP; } break; + case QNativeSocketEngine::TypeOfServiceOption: + if (socketProtocol == QAbstractSocket::IPv4Protocol) { + level = IPPROTO_IP; + n = IP_TOS; + } + break; } return ::setsockopt(socketDescriptor, level, n, (char *) &v, sizeof(v)) == 0; diff --git a/src/network/socket/qnativesocketengine_win.cpp b/src/network/socket/qnativesocketengine_win.cpp index 247de01072..b9a9c613d4 100644 --- a/src/network/socket/qnativesocketengine_win.cpp +++ b/src/network/socket/qnativesocketengine_win.cpp @@ -422,6 +422,9 @@ int QNativeSocketEnginePrivate::option(QNativeSocketEngine::SocketOption opt) co n = IP_MULTICAST_LOOP; } break; + case QNativeSocketEngine::TypeOfServiceOption: + return -1; + break; } int v = -1; @@ -502,6 +505,9 @@ bool QNativeSocketEnginePrivate::setOption(QNativeSocketEngine::SocketOption opt n = IP_MULTICAST_LOOP; } break; + case QNativeSocketEngine::TypeOfServiceOption: + return false; + break; } if (::setsockopt(socketDescriptor, level, n, (char*)&v, sizeof(v)) != 0) { -- cgit v1.2.3 From 08845d3531319e4a537f31f7ef13233c8d1222be Mon Sep 17 00:00:00 2001 From: Martin Petersson Date: Thu, 22 Dec 2011 10:53:19 +0100 Subject: QNetworkAccessManager: fixed foreach copy of host address Change-Id: I50cb113fb3c803fc5b13c74b3f7ad1fc4283065b Reviewed-by: Peter Hartmann --- src/network/access/qhttpnetworkconnection.cpp | 2 +- src/network/socket/qabstractsocket.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/network/access/qhttpnetworkconnection.cpp b/src/network/access/qhttpnetworkconnection.cpp index b4004eae14..90cde6654f 100644 --- a/src/network/access/qhttpnetworkconnection.cpp +++ b/src/network/access/qhttpnetworkconnection.cpp @@ -976,7 +976,7 @@ void QHttpNetworkConnectionPrivate::_q_hostLookupFinished(QHostInfo info) bool bIpv6 = false; bool foundAddress = false; - foreach (QHostAddress address, info.addresses()) { + foreach (const QHostAddress &address, info.addresses()) { if (address.protocol() == QAbstractSocket::IPv4Protocol) { if (!foundAddress) { foundAddress = true; diff --git a/src/network/socket/qabstractsocket.cpp b/src/network/socket/qabstractsocket.cpp index 91f10a0127..f84153a7bd 100644 --- a/src/network/socket/qabstractsocket.cpp +++ b/src/network/socket/qabstractsocket.cpp @@ -952,7 +952,7 @@ void QAbstractSocketPrivate::_q_startConnecting(const QHostInfo &hostInfo) if (preferredNetworkLayerProtocol == QAbstractSocket::UnknownNetworkLayerProtocol || preferredNetworkLayerProtocol == QAbstractSocket::AnyIPProtocol) { addresses = hostInfo.addresses(); } else { - foreach (QHostAddress address, hostInfo.addresses()) + foreach (const QHostAddress &address, hostInfo.addresses()) if (address.protocol() == preferredNetworkLayerProtocol) addresses += address; } -- cgit v1.2.3 From 40cfdf30fa6c68da8a5cbd37e21d844239545585 Mon Sep 17 00:00:00 2001 From: Morten Johan Sorvig Date: Wed, 14 Dec 2011 15:11:49 +0100 Subject: Enable Mac style on Mac OS X. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Add styles/qmacstyle_mac back to the build, modify qstylefactory to load it on Q_OS_MAC. Move helper functions from platforms/mac to qmacstyle_mac.mm. QMacStyle should now be self- contained and not rely on anything from platforms/mac. Change-Id: I68fe40bb7f88c01269968bffd9579b7f3b932d4c Reviewed-by: Richard Moe Gustavsen Reviewed-by: Morten Johan Sørvig --- src/widgets/kernel/qguiplatformplugin.cpp | 2 +- src/widgets/kernel/qwidget.h | 10 +- src/widgets/platforms/mac/qpaintdevice_mac.cpp | 49 --- src/widgets/platforms/mac/qpaintengine_mac.cpp | 101 ----- src/widgets/platforms/mac/qregion_mac.cpp | 71 ---- src/widgets/platforms/mac/qt_cocoa_helpers_mac.mm | 6 - src/widgets/platforms/mac/qt_cocoa_helpers_mac_p.h | 2 - src/widgets/platforms/mac/qt_mac.cpp | 18 - src/widgets/styles/qmacstyle_mac.h | 2 +- src/widgets/styles/qmacstyle_mac.mm | 432 +++++++++++++++++++-- src/widgets/styles/qmacstyle_mac_p.h | 26 +- src/widgets/styles/qstylefactory.cpp | 2 +- src/widgets/styles/styles.pri | 3 +- tests/auto/widgets/styles/styles.pro | 3 +- 14 files changed, 407 insertions(+), 320 deletions(-) diff --git a/src/widgets/kernel/qguiplatformplugin.cpp b/src/widgets/kernel/qguiplatformplugin.cpp index 8acc7ec90d..aa17d0dc55 100644 --- a/src/widgets/kernel/qguiplatformplugin.cpp +++ b/src/widgets/kernel/qguiplatformplugin.cpp @@ -148,7 +148,7 @@ QString QGuiPlatformPlugin::styleName() return QLatin1String("CDE"); // default style for X11 on Solaris #elif defined(Q_WS_X11) && defined(Q_OS_IRIX) return QLatin1String("SGI"); // default style for X11 on IRIX -#elif defined(Q_WS_MAC) +#elif defined(Q_OS_MAC) return QLatin1String("Macintosh"); // default style for all Mac's #elif defined(Q_WS_X11) QString stylename; diff --git a/src/widgets/kernel/qwidget.h b/src/widgets/kernel/qwidget.h index f97b343463..2b4fc8897c 100644 --- a/src/widgets/kernel/qwidget.h +++ b/src/widgets/kernel/qwidget.h @@ -746,16 +746,8 @@ private: #endif // QT_NO_GESTURES friend class QWidgetEffectSourcePrivate; -#ifdef Q_WS_MAC - friend class QCoreGraphicsPaintEnginePrivate; - friend QPoint qt_mac_posInWindow(const QWidget *w); - friend OSWindowRef qt_mac_window_for(const QWidget *w); +#ifdef Q_OS_MAC friend bool qt_mac_is_metal(const QWidget *w); - friend OSViewRef qt_mac_nativeview_for(const QWidget *w); - friend void qt_event_request_window_change(QWidget *widget); - friend bool qt_mac_sendMacEventToWidget(QWidget *widget, EventRef ref); - friend class QRasterWindowSurface; - friend class QUnifiedToolbarSurface; #endif friend Q_WIDGETS_EXPORT QWidgetData *qt_qwidget_data(QWidget *widget); friend Q_WIDGETS_EXPORT QWidgetPrivate *qt_widget_private(QWidget *widget); diff --git a/src/widgets/platforms/mac/qpaintdevice_mac.cpp b/src/widgets/platforms/mac/qpaintdevice_mac.cpp index 50bd4b8490..4bdb5d8733 100644 --- a/src/widgets/platforms/mac/qpaintdevice_mac.cpp +++ b/src/widgets/platforms/mac/qpaintdevice_mac.cpp @@ -100,53 +100,4 @@ Q_WIDGETS_EXPORT GrafPtr qt_mac_qd_context(const QPaintDevice *device) extern CGColorSpaceRef qt_mac_colorSpaceForDeviceType(const QPaintDevice *pdev); -/*! \internal - - Returns the CoreGraphics CGContextRef of the paint device. 0 is - returned if it can't be obtained. It is the caller's responsiblity to - CGContextRelease the context when finished using it. - - \warning This function is only available on Mac OS X. -*/ - -Q_WIDGETS_EXPORT CGContextRef qt_mac_cg_context(const QPaintDevice *pdev) -{ - if (pdev->devType() == QInternal::Pixmap) { - const QPixmap *pm = static_cast(pdev); - CGColorSpaceRef colorspace = qt_mac_colorSpaceForDeviceType(pdev); - uint flags = kCGImageAlphaPremultipliedFirst; -#ifdef kCGBitmapByteOrder32Host //only needed because CGImage.h added symbols in the minor version - flags |= kCGBitmapByteOrder32Host; -#endif - CGContextRef ret = 0; - - // It would make sense to put this into a mac #ifdef'ed - // virtual function in the QPlatformPixmap at some point - if (pm->data->classId() == QPlatformPixmap::MacClass) { - const QMacPlatformPixmap *pmData = static_cast(pm->data.data()); - ret = CGBitmapContextCreate(pmData->pixels, pmData->w, pmData->h, - 8, pmData->bytesPerRow, colorspace, - flags); - if(!ret) - qWarning("QPaintDevice: Unable to create context for pixmap (%d/%d/%d)", - pmData->w, pmData->h, (pmData->bytesPerRow * pmData->h)); - } else if (pm->data->classId() == QPlatformPixmap::RasterClass) { - QImage *image = pm->data->buffer(); - ret = CGBitmapContextCreate(image->bits(), image->width(), image->height(), - 8, image->bytesPerLine(), colorspace, flags); - } - - CGContextTranslateCTM(ret, 0, pm->height()); - CGContextScaleCTM(ret, 1, -1); - return ret; - } else if (pdev->devType() == QInternal::Widget) { - CGContextRef ret = static_cast(static_cast(pdev)->macCGHandle()); - CGContextRetain(ret); - return ret; - } else if (pdev->devType() == QInternal::MacQuartz) { - return static_cast(pdev)->cgContext(); - } - return 0; -} - QT_END_NAMESPACE diff --git a/src/widgets/platforms/mac/qpaintengine_mac.cpp b/src/widgets/platforms/mac/qpaintengine_mac.cpp index af8e0e36c3..b3605adb19 100644 --- a/src/widgets/platforms/mac/qpaintengine_mac.cpp +++ b/src/widgets/platforms/mac/qpaintengine_mac.cpp @@ -87,60 +87,6 @@ extern QPixmap qt_pixmapForBrush(int, bool); //qbrush.cpp void qt_mac_clip_cg(CGContextRef hd, const QRegion &rgn, CGAffineTransform *orig_xform); -//Implemented for qt_mac_p.h -QMacCGContext::QMacCGContext(QPainter *p) -{ - QPaintEngine *pe = p->paintEngine(); - if (pe->type() == QPaintEngine::MacPrinter) - pe = static_cast(pe)->paintEngine(); - pe->syncState(); - context = 0; - if(pe->type() == QPaintEngine::CoreGraphics) - context = static_cast(pe)->handle(); - - int devType = p->device()->devType(); - if (pe->type() == QPaintEngine::Raster - && (devType == QInternal::Widget || - devType == QInternal::Pixmap || - devType == QInternal::Image)) { - - extern CGColorSpaceRef qt_mac_colorSpaceForDeviceType(const QPaintDevice *paintDevice); - CGColorSpaceRef colorspace = qt_mac_colorSpaceForDeviceType(pe->paintDevice()); - uint flags = kCGImageAlphaPremultipliedFirst; -#ifdef kCGBitmapByteOrder32Host //only needed because CGImage.h added symbols in the minor version - flags |= kCGBitmapByteOrder32Host; -#endif - const QImage *image = (const QImage *) pe->paintDevice(); - - context = CGBitmapContextCreate((void *) image->bits(), image->width(), image->height(), - 8, image->bytesPerLine(), colorspace, flags); - - CGContextTranslateCTM(context, 0, image->height()); - CGContextScaleCTM(context, 1, -1); - - if (devType == QInternal::Widget) { - QRegion clip = p->paintEngine()->systemClip(); - QTransform native = p->deviceTransform(); - QTransform logical = p->combinedTransform(); - - if (p->hasClipping()) { - QRegion r = p->clipRegion(); - r.translate(native.dx(), native.dy()); - if (clip.isEmpty()) - clip = r; - else - clip &= r; - } - qt_mac_clip_cg(context, clip, 0); - - CGContextTranslateCTM(context, native.dx(), native.dy()); - } - } else { - CGContextRetain(context); - } -} - - /***************************************************************************** QCoreGraphicsPaintEngine utility functions *****************************************************************************/ @@ -152,13 +98,6 @@ CGAffineTransform qt_mac_convert_transform_to_cg(const QTransform &t) { return CGAffineTransformMake(t.m11(), t.m12(), t.m21(), t.m22(), t.dx(), t.dy()); } -CGColorSpaceRef qt_mac_colorSpaceForDeviceType(const QPaintDevice *paintDevice) -{ - bool isWidget = (paintDevice->devType() == QInternal::Widget); - return QCoreGraphicsPaintEngine::macDisplayColorSpace(isWidget ? static_cast(paintDevice) - : 0); -} - inline static QCFType cgColorForQColor(const QColor &col, QPaintDevice *pdev) { CGFloat components[] = { @@ -317,46 +256,6 @@ CGColorSpaceRef QCoreGraphicsPaintEngine::macGenericColorSpace() return macDisplayColorSpace(); #endif } -void qt_mac_clip_cg(CGContextRef hd, const QRegion &rgn, CGAffineTransform *orig_xform) -{ - CGAffineTransform old_xform = CGAffineTransformIdentity; - if(orig_xform) { //setup xforms - old_xform = CGContextGetCTM(hd); - CGContextConcatCTM(hd, CGAffineTransformInvert(old_xform)); - CGContextConcatCTM(hd, *orig_xform); - } - - //do the clipping - CGContextBeginPath(hd); - if(rgn.isEmpty()) { - CGContextAddRect(hd, CGRectMake(0, 0, 0, 0)); - } else { -#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5) - if (QSysInfo::MacintoshVersion >= QSysInfo::MV_10_5) { - QCFType shape = rgn.toHIMutableShape(); - Q_ASSERT(!HIShapeIsEmpty(shape)); - HIShapeReplacePathInCGContext(shape, hd); - } else -#endif - { - QVector rects = rgn.rects(); - const int count = rects.size(); - for(int i = 0; i < count; i++) { - const QRect &r = rects[i]; - CGRect mac_r = CGRectMake(r.x(), r.y(), r.width(), r.height()); - CGContextAddRect(hd, mac_r); - } - } - - } - CGContextClip(hd); - - if(orig_xform) {//reset xforms - CGContextConcatCTM(hd, CGAffineTransformInvert(CGContextGetCTM(hd))); - CGContextConcatCTM(hd, old_xform); - } -} - //pattern handling (tiling) #if 1 diff --git a/src/widgets/platforms/mac/qregion_mac.cpp b/src/widgets/platforms/mac/qregion_mac.cpp index b929d9c283..3a861f1cdd 100644 --- a/src/widgets/platforms/mac/qregion_mac.cpp +++ b/src/widgets/platforms/mac/qregion_mac.cpp @@ -47,75 +47,4 @@ QT_BEGIN_NAMESPACE QRegion::QRegionData QRegion::shared_empty = { Q_BASIC_ATOMIC_INITIALIZER(1), 0 }; - -#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5) -OSStatus QRegion::shape2QRegionHelper(int inMessage, HIShapeRef, - const CGRect *inRect, void *inRefcon) -{ - QRegion *region = static_cast(inRefcon); - if (!region) - return paramErr; - - switch (inMessage) { - case kHIShapeEnumerateRect: - *region += QRect(inRect->origin.x, inRect->origin.y, - inRect->size.width, inRect->size.height); - break; - case kHIShapeEnumerateInit: - // Assume the region is already setup correctly - case kHIShapeEnumerateTerminate: - default: - break; - } - return noErr; -} -#endif - -/*! - \internal - Create's a mutable shape, it's the caller's responsibility to release. - WARNING: this function clamps the coordinates to SHRT_MIN/MAX on 10.4 and below. -*/ -HIMutableShapeRef QRegion::toHIMutableShape() const -{ - HIMutableShapeRef shape = HIShapeCreateMutable(); -#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5) - if (QSysInfo::MacintoshVersion >= QSysInfo::MV_10_5) { - if (d->qt_rgn && d->qt_rgn->numRects) { - int n = d->qt_rgn->numRects; - const QRect *qt_r = (n == 1) ? &d->qt_rgn->extents : d->qt_rgn->rects.constData(); - while (n--) { - CGRect cgRect = CGRectMake(qt_r->x(), qt_r->y(), qt_r->width(), qt_r->height()); - HIShapeUnionWithRect(shape, &cgRect); - ++qt_r; - } - } - } else -#endif - { - } - return shape; -} - - - -QRegion QRegion::fromHIShapeRef(HIShapeRef shape) -{ - QRegion returnRegion; - returnRegion.detach(); - // Begin gratuitous #if-defery -#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5) -# ifndef Q_WS_MAC64 - if (QSysInfo::MacintoshVersion >= QSysInfo::MV_10_5) { -# endif - HIShapeEnumerate(shape, kHIShapeParseFromTopLeft, shape2QRegionHelper, &returnRegion); -# ifndef Q_WS_MAC64 - } else -# endif -#endif - { - } - return returnRegion; -} - QT_END_NAMESPACE diff --git a/src/widgets/platforms/mac/qt_cocoa_helpers_mac.mm b/src/widgets/platforms/mac/qt_cocoa_helpers_mac.mm index 20bb6bffbb..b8ec6bbcf3 100644 --- a/src/widgets/platforms/mac/qt_cocoa_helpers_mac.mm +++ b/src/widgets/platforms/mac/qt_cocoa_helpers_mac.mm @@ -219,12 +219,6 @@ DnDParams *macCurrentDnDParameters() } #endif -bool macWindowIsTextured( void * /*OSWindowRef*/ window ) -{ - OSWindowRef wnd = static_cast(window); - return ( [wnd styleMask] & NSTexturedBackgroundWindowMask ) ? true : false; -} - void macWindowToolbarShow(const QWidget *widget, bool show ) { OSWindowRef wnd = qt_mac_window_for(widget); diff --git a/src/widgets/platforms/mac/qt_cocoa_helpers_mac_p.h b/src/widgets/platforms/mac/qt_cocoa_helpers_mac_p.h index c85d39010c..79ae7df8b6 100644 --- a/src/widgets/platforms/mac/qt_cocoa_helpers_mac_p.h +++ b/src/widgets/platforms/mac/qt_cocoa_helpers_mac_p.h @@ -129,7 +129,6 @@ QT_BEGIN_NAMESPACE Qt::MouseButtons qt_mac_get_buttons(int buttons); Qt::MouseButton qt_mac_get_button(EventMouseButton button); void macWindowFade(void * /*OSWindowRef*/ window, float durationSeconds = 0.15); -bool macWindowIsTextured(void * /*OSWindowRef*/ window); void macWindowToolbarShow(const QWidget *widget, bool show ); void macWindowToolbarSet( void * /*OSWindowRef*/ window, void* toolbarRef ); bool macWindowToolbarIsVisible( void * /*OSWindowRef*/ window ); @@ -140,7 +139,6 @@ void qt_mac_updateContentBorderMetricts(void * /*OSWindowRef */window, const ::H void qt_mac_replaceDrawRect(void * /*OSWindowRef */window, QWidgetPrivate *widget); void qt_mac_replaceDrawRectOriginal(void * /*OSWindowRef */window, QWidgetPrivate *widget); void qt_mac_showBaseLineSeparator(void * /*OSWindowRef */window, bool show); -void * /*NSImage */qt_mac_create_nsimage(const QPixmap &pm); void qt_mac_update_mouseTracking(QWidget *widget); OSStatus qt_mac_drawCGImage(CGContextRef cg, const CGRect *inbounds, CGImageRef); bool qt_mac_checkForNativeSizeGrip(const QWidget *widget); diff --git a/src/widgets/platforms/mac/qt_mac.cpp b/src/widgets/platforms/mac/qt_mac.cpp index b3c9371d24..bb7e047479 100644 --- a/src/widgets/platforms/mac/qt_mac.cpp +++ b/src/widgets/platforms/mac/qt_mac.cpp @@ -67,24 +67,6 @@ QFont qfontForThemeFont(ThemeFontID themeID) } #if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5) -static QColor qcolorFromCGColor(CGColorRef cgcolor) -{ - QColor pc; - CGColorSpaceModel model = CGColorSpaceGetModel(CGColorGetColorSpace(cgcolor)); - const CGFloat *components = CGColorGetComponents(cgcolor); - if (model == kCGColorSpaceModelRGB) { - pc.setRgbF(components[0], components[1], components[2], components[3]); - } else if (model == kCGColorSpaceModelCMYK) { - pc.setCmykF(components[0], components[1], components[2], components[3]); - } else if (model == kCGColorSpaceModelMonochrome) { - pc.setRgbF(components[0], components[0], components[0], components[1]); - } else { - // Colorspace we can't deal with. - qWarning("Qt: qcolorFromCGColor: cannot convert from colorspace model: %d", model); - Q_ASSERT(false); - } - return pc; -} static inline QColor leopardBrush(ThemeBrush brush) { diff --git a/src/widgets/styles/qmacstyle_mac.h b/src/widgets/styles/qmacstyle_mac.h index bb9175cca8..317a0cdc88 100644 --- a/src/widgets/styles/qmacstyle_mac.h +++ b/src/widgets/styles/qmacstyle_mac.h @@ -50,7 +50,7 @@ QT_BEGIN_NAMESPACE QT_MODULE(Gui) -#if defined(Q_WS_MAC) && !defined(QT_NO_STYLE_MAC) +#if defined(Q_OS_MAC) && !defined(QT_NO_STYLE_MAC) class QPalette; diff --git a/src/widgets/styles/qmacstyle_mac.mm b/src/widgets/styles/qmacstyle_mac.mm index f6eacd28dc..9e9f5d48ed 100644 --- a/src/widgets/styles/qmacstyle_mac.mm +++ b/src/widgets/styles/qmacstyle_mac.mm @@ -45,17 +45,15 @@ */ #include "qmacstyle_mac.h" +#include "qmacstyle_mac_p.h" +#include "qmacstylepixmaps_mac_p.h" -#if defined(Q_WS_MAC) && !defined(QT_NO_STYLE_MAC) #define QMAC_QAQUASTYLE_SIZE_CONSTRAIN //#define DEBUG_SIZE_CONSTRAINT -#include +#include #include -#include -#include #include -#include #include #include #include @@ -97,11 +95,10 @@ #include #include #include -#include -#include -#include -#include "qmacstyle_mac_p.h" +#include +#include #include +#include QT_BEGIN_NAMESPACE @@ -138,9 +135,6 @@ typedef HIRect * (*PtrHIShapeGetBounds)(HIShapeRef, HIRect *); static PtrHIShapeGetBounds ptrHIShapeGetBounds = 0; static int closeButtonSize = 12; - -extern QRegion qt_mac_convert_mac_region(RgnHandle); //qregion_mac.cpp - static bool isVerticalTabs(const QTabBar::Shape shape) { return (shape == QTabBar::RoundedEast || shape == QTabBar::TriangularEast @@ -417,18 +411,247 @@ static inline ThemeTabDirection getTabDirection(QTabBar::Shape shape) return ttd; } -QT_BEGIN_INCLUDE_NAMESPACE -#include "moc_qmacstyle_mac.cpp" -#include "moc_qmacstyle_mac_p.cpp" -QT_END_INCLUDE_NAMESPACE +static QString qt_mac_removeMnemonics(const QString &original) +{ + QString returnText(original.size(), 0); + int finalDest = 0; + int currPos = 0; + int l = original.length(); + while (l) { + if (original.at(currPos) == QLatin1Char('&') + && (l == 1 || original.at(currPos + 1) != QLatin1Char('&'))) { + ++currPos; + --l; + if (l == 0) + break; + } + returnText[finalDest] = original.at(currPos); + ++currPos; + ++finalDest; + --l; + } + returnText.truncate(finalDest); + return returnText; +} -/***************************************************************************** - External functions - *****************************************************************************/ -extern CGContextRef qt_mac_cg_context(const QPaintDevice *); //qpaintdevice_mac.cpp -extern QRegion qt_mac_convert_mac_region(HIShapeRef); //qregion_mac.cpp -void qt_mac_dispose_rgn(RgnHandle r); //qregion_mac.cpp -extern QPaintDevice *qt_mac_safe_pdev; //qapplication_mac.cpp +class QMacCGContext +{ + CGContextRef context; +public: + QMacCGContext(QPainter *p); //qpaintengine_mac.cpp + inline QMacCGContext() { context = 0; } + inline QMacCGContext(const QPaintDevice *pdev) { + extern CGContextRef qt_mac_cg_context(const QPaintDevice *); + context = qt_mac_cg_context(pdev); + } + inline QMacCGContext(CGContextRef cg, bool takeOwnership=false) { + context = cg; + if (!takeOwnership) + CGContextRetain(context); + } + inline QMacCGContext(const QMacCGContext ©) : context(0) { *this = copy; } + inline ~QMacCGContext() { + if (context) + CGContextRelease(context); + } + inline bool isNull() const { return context; } + inline operator CGContextRef() { return context; } + inline QMacCGContext &operator=(const QMacCGContext ©) { + if (context) + CGContextRelease(context); + context = copy.context; + CGContextRetain(context); + return *this; + } + inline QMacCGContext &operator=(CGContextRef cg) { + if (context) + CGContextRelease(context); + context = cg; + CGContextRetain(context); //we do not take ownership + return *this; + } +}; + +static QColor qcolorFromCGColor(CGColorRef cgcolor) +{ + QColor pc; + CGColorSpaceModel model = CGColorSpaceGetModel(CGColorGetColorSpace(cgcolor)); + const CGFloat *components = CGColorGetComponents(cgcolor); + if (model == kCGColorSpaceModelRGB) { + pc.setRgbF(components[0], components[1], components[2], components[3]); + } else if (model == kCGColorSpaceModelCMYK) { + pc.setCmykF(components[0], components[1], components[2], components[3]); + } else if (model == kCGColorSpaceModelMonochrome) { + pc.setRgbF(components[0], components[0], components[0], components[1]); + } else { + // Colorspace we can't deal with. + qWarning("Qt: qcolorFromCGColor: cannot convert from colorspace model: %d", model); + Q_ASSERT(false); + } + return pc; +} + +static inline QColor leopardBrush(ThemeBrush brush) +{ + QCFType cgClr = 0; + HIThemeBrushCreateCGColor(brush, &cgClr); + return qcolorFromCGColor(cgClr); +} + +QColor qcolorForTheme(ThemeBrush brush) +{ + return leopardBrush(brush); +} + +OSStatus qt_mac_shape2QRegionHelper(int inMessage, HIShapeRef, const CGRect *inRect, void *inRefcon) +{ + QRegion *region = static_cast(inRefcon); + if (!region) + return paramErr; + + switch (inMessage) { + case kHIShapeEnumerateRect: + *region += QRect(inRect->origin.x, inRect->origin.y, + inRect->size.width, inRect->size.height); + break; + case kHIShapeEnumerateInit: + // Assume the region is already setup correctly + case kHIShapeEnumerateTerminate: + default: + break; + } + return noErr; +} + + +/*! + \internal + Create's a mutable shape, it's the caller's responsibility to release. + WARNING: this function clamps the coordinates to SHRT_MIN/MAX on 10.4 and below. +*/ +HIMutableShapeRef qt_mac_toHIMutableShape(const QRegion ®ion) +{ + HIMutableShapeRef shape = HIShapeCreateMutable(); + if (region.rectCount() < 2 ) { + QRect qtRect = region.boundingRect(); + CGRect cgRect = CGRectMake(qtRect.x(), qtRect.y(), qtRect.width(), qtRect.height()); + HIShapeUnionWithRect(shape, &cgRect); + } else { + foreach (const QRect &qtRect, region.rects()) { + CGRect cgRect = CGRectMake(qtRect.x(), qtRect.y(), qtRect.width(), qtRect.height()); + HIShapeUnionWithRect(shape, &cgRect); + } + } + return shape; +} + +QRegion qt_mac_fromHIShapeRef(HIShapeRef shape) +{ + QRegion returnRegion; + //returnRegion.detach(); + HIShapeEnumerate(shape, kHIShapeParseFromTopLeft, qt_mac_shape2QRegionHelper, &returnRegion); + return returnRegion; +} + +CGColorSpaceRef m_genericColorSpace = 0; +QHash m_displayColorSpaceHash; +bool m_postRoutineRegistered = false; + +CGColorSpaceRef qt_mac_displayColorSpace(const QWidget *widget); +CGColorSpaceRef qt_mac_genericColorSpace() +{ +#if 0 + if (!m_genericColorSpace) { +#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_4 + if (QSysInfo::MacintoshVersion >= QSysInfo::MV_10_4) { + m_genericColorSpace = CGColorSpaceCreateWithName(kCGColorSpaceGenericRGB); + } else +#endif + { + m_genericColorSpace = CGColorSpaceCreateDeviceRGB(); + } + if (!m_postRoutineRegistered) { + m_postRoutineRegistered = true; + qAddPostRoutine(QCoreGraphicsPaintEngine::cleanUpMacColorSpaces); + } + } + return m_genericColorSpace; +#else + // Just return the main display colorspace for the moment. + return qt_mac_displayColorSpace(0); +#endif +} + +/* + Ideally, we should pass the widget in here, and use CGGetDisplaysWithRect() etc. + to support multiple displays correctly. +*/ +CGColorSpaceRef qt_mac_displayColorSpace(const QWidget *widget) +{ + CGColorSpaceRef colorSpace; + + CGDirectDisplayID displayID; + CMProfileRef displayProfile = 0; + if (widget == 0) { + displayID = CGMainDisplayID(); + } else { + displayID = CGMainDisplayID(); + /* + ### get correct display + const QRect &qrect = widget->window()->geometry(); + CGRect rect = CGRectMake(qrect.x(), qrect.y(), qrect.width(), qrect.height()); + CGDisplayCount throwAway; + CGDisplayErr dErr = CGGetDisplaysWithRect(rect, 1, &displayID, &throwAway); + if (dErr != kCGErrorSuccess) + return macDisplayColorSpace(0); // fall back on main display + */ + } + if ((colorSpace = m_displayColorSpaceHash.value(displayID))) + return colorSpace; + + CMError err = CMGetProfileByAVID((CMDisplayIDType)displayID, &displayProfile); + if (err == noErr) { + colorSpace = CGColorSpaceCreateWithPlatformColorSpace(displayProfile); + } else if (widget) { + return qt_mac_displayColorSpace(0); // fall back on main display + } + + if (colorSpace == 0) + colorSpace = CGColorSpaceCreateDeviceRGB(); + + m_displayColorSpaceHash.insert(displayID, colorSpace); + CMCloseProfile(displayProfile); + if (!m_postRoutineRegistered) { + m_postRoutineRegistered = true; + void qt_mac_cleanUpMacColorSpaces(); + qAddPostRoutine(qt_mac_cleanUpMacColorSpaces); + } + return colorSpace; +} + +void qt_mac_cleanUpMacColorSpaces() +{ + if (m_genericColorSpace) { + CFRelease(m_genericColorSpace); + m_genericColorSpace = 0; + } + QHash::const_iterator it = m_displayColorSpaceHash.constBegin(); + while (it != m_displayColorSpaceHash.constEnd()) { + if (it.value()) + CFRelease(it.value()); + ++it; + } + m_displayColorSpaceHash.clear(); +} + +bool qt_macWindowIsTextured(const QWidget *window) +{ + NSWindow *nswindow = static_cast( + QApplication::platformNativeInterface()->nativeResourceForWindow("NSWindow", window->windowHandle())); + if (!nswindow) + return false; + return ([nswindow styleMask] & NSTexturedBackgroundWindowMask) ? true : false; +} /***************************************************************************** QMacCGStyle globals @@ -467,7 +690,7 @@ inline bool qt_mac_is_metal(const QWidget *w) if (w->testAttribute(Qt::WA_MacBrushedMetal)) return true; if (w->isWindow() && w->testAttribute(Qt::WA_WState_Created)) { // If not created will fall through to the opaque check and be fine anyway. - return macWindowIsTextured(qt_mac_window_for(w)); + return qt_macWindowIsTextured(w); } if (w->d_func()->isOpaque) break; @@ -1382,7 +1605,6 @@ void QMacStylePrivate::getSliderInfo(QStyle::ComplexControl cc, const QStyleOpti tdi->trackInfo.scrollbar.viewsize = slider->pageStep; } } -#endif QMacStylePrivate::QMacStylePrivate(QMacStyle *style) : timerID(-1), progressFrame(0), q(style), mouseDown(false) @@ -1750,8 +1972,9 @@ void qt_mac_fill_background(QPainter *painter, const QRegion &rgn, const QBrush QPoint dummy; const QPaintDevice *target = painter->device(); const QPaintDevice *redirected = QPainter::redirected(target, &dummy); - const bool usePainter = redirected && redirected != target; + //const bool usePainter = redirected && redirected != target; +#if 0 if (!usePainter && qt_mac_backgroundPattern && qt_mac_backgroundPattern->cacheKey() == brush.texture().cacheKey()) { @@ -1772,10 +1995,11 @@ void qt_mac_fill_background(QPainter *painter, const QRegion &rgn, const QBrush CGContextRestoreGState(cg); } else { +#endif const QRect rect(rgn.boundingRect()); painter->setClipRegion(rgn); painter->drawTiledPixmap(rect, brush.texture(), rect.topLeft()); - } +// } } void QMacStyle::polish(QPalette &pal) @@ -1831,8 +2055,9 @@ void QMacStyle::polish(QWidget* w) mtinfo.version = qt_mac_hitheme_version; mtinfo.menuType = kThemeMenuTypePopUp; HIRect rect = CGRectMake(0, 0, px.width(), px.height()); - HIThemeDrawMenuBackground(&rect, &mtinfo, QCFType(qt_mac_cg_context(&px)), - kHIThemeOrientationNormal); + // ### + //HIThemeDrawMenuBackground(&rect, &mtinfo, QCFType(qt_mac_cg_context(&px)), + // kHIThemeOrientationNormal); QPalette pal = w->palette(); QBrush background(px); pal.setBrush(QPalette::All, QPalette::Window, background); @@ -2309,11 +2534,12 @@ int QMacStyle::styleHint(StyleHint sh, const QStyleOption *opt, const QWidget *w ret = 100; break; case SH_ScrollBar_LeftClickAbsolutePosition: { - extern bool qt_scrollbar_jump_to_pos; //qapplication_mac.cpp if(QApplication::keyboardModifiers() & Qt::AltModifier) - ret = !qt_scrollbar_jump_to_pos; + ret = false; + //ret = !qt_scrollbar_jump_to_pos; else - ret = qt_scrollbar_jump_to_pos; + ret = true; + //ret = qt_scrollbar_jump_to_pos; break; } case SH_TabBar_PreferNoArrows: ret = true; @@ -2547,7 +2773,8 @@ int QMacStyle::styleHint(StyleHint sh, const QStyleOption *opt, const QWidget *w mdi.menuType = kThemeMenuTypePopUp; QCFType shape; HIThemeGetMenuBackgroundShape(&menuRect, &mdi, &shape); - mask->region = QRegion::fromHIShapeRef(shape); + + mask->region = qt_mac_fromHIShapeRef(shape); } } break; @@ -3404,7 +3631,7 @@ void QMacStyle::drawControl(ControlElement ce, const QStyleOption *opt, QPainter QColor textColor = btn->palette.buttonText().color(); CGFloat colorComp[] = { textColor.redF(), textColor.greenF(), textColor.blueF(), textColor.alphaF() }; - CGContextSetFillColorSpace(cg, QCoreGraphicsPaintEngine::macGenericColorSpace()); + CGContextSetFillColorSpace(cg, qt_mac_genericColorSpace()); CGContextSetFillColor(cg, colorComp); tti.fontID = themeId; tti.horizontalFlushness = kHIThemeTextHorizontalFlushCenter; @@ -3629,7 +3856,7 @@ void QMacStyle::drawControl(ControlElement ce, const QStyleOption *opt, QPainter QColor textColor = myTab.palette.windowText().color(); CGFloat colorComp[] = { textColor.redF(), textColor.greenF(), textColor.blueF(), textColor.alphaF() }; - CGContextSetFillColorSpace(cg, QCoreGraphicsPaintEngine::macGenericColorSpace()); + CGContextSetFillColorSpace(cg, qt_mac_genericColorSpace()); CGContextSetFillColor(cg, colorComp); switch (d->aquaSizeConstrain(opt, w)) { default: @@ -3810,7 +4037,7 @@ void QMacStyle::drawControl(ControlElement ce, const QStyleOption *opt, QPainter QColor textColor = p->pen().color(); CGFloat colorComp[] = { textColor.redF(), textColor.greenF(), textColor.blueF(), textColor.alphaF() }; - CGContextSetFillColorSpace(cg, QCoreGraphicsPaintEngine::macGenericColorSpace()); + CGContextSetFillColorSpace(cg, qt_mac_genericColorSpace()); CGContextSetFillColor(cg, colorComp); HIThemeTextInfo tti; tti.version = qt_mac_hitheme_version; @@ -4946,7 +5173,7 @@ void QMacStyle::drawComplexControl(ComplexControl cc, const QStyleOptionComplex QColor textColor = groupBox->palette.windowText().color(); CGFloat colorComp[] = { textColor.redF(), textColor.greenF(), textColor.blueF(), textColor.alphaF() }; - CGContextSetFillColorSpace(cg, QCoreGraphicsPaintEngine::macGenericColorSpace()); + CGContextSetFillColorSpace(cg, qt_mac_genericColorSpace()); CGContextSetFillColor(cg, colorComp); tti.fontID = checkable ? kThemeSystemFont : kThemeSmallSystemFont; tti.horizontalFlushness = kHIThemeTextHorizontalFlushCenter; @@ -6075,4 +6302,135 @@ int QMacStyle::layoutSpacingImplementation(QSizePolicy::ControlType control1, return_SIZE(10, 8, 6); // guess } +void qt_mac_clip_cg(CGContextRef hd, const QRegion &rgn, CGAffineTransform *orig_xform) +{ + CGAffineTransform old_xform = CGAffineTransformIdentity; + if (orig_xform) { //setup xforms + old_xform = CGContextGetCTM(hd); + CGContextConcatCTM(hd, CGAffineTransformInvert(old_xform)); + CGContextConcatCTM(hd, *orig_xform); + } + + //do the clipping + CGContextBeginPath(hd); + if (rgn.isEmpty()) { + CGContextAddRect(hd, CGRectMake(0, 0, 0, 0)); + } else { + QCFType shape = qt_mac_toHIMutableShape(rgn); + Q_ASSERT(!HIShapeIsEmpty(shape)); + HIShapeReplacePathInCGContext(shape, hd); + } + CGContextClip(hd); + + if (orig_xform) {//reset xforms + CGContextConcatCTM(hd, CGAffineTransformInvert(CGContextGetCTM(hd))); + CGContextConcatCTM(hd, old_xform); + } +} + +QMacCGContext::QMacCGContext(QPainter *p) +{ + QPaintEngine *pe = p->paintEngine(); + pe->syncState(); + context = 0; + + int devType = p->device()->devType(); + if (pe->type() == QPaintEngine::Raster + && (devType == QInternal::Widget || + devType == QInternal::Pixmap || + devType == QInternal::Image)) { + + extern CGColorSpaceRef qt_mac_colorSpaceForDeviceType(const QPaintDevice *paintDevice); + CGColorSpaceRef colorspace = qt_mac_colorSpaceForDeviceType(pe->paintDevice()); + uint flags = kCGImageAlphaPremultipliedFirst; + flags |= kCGBitmapByteOrder32Host; + + const QImage *image = (const QImage *) pe->paintDevice(); + + context = CGBitmapContextCreate((void *) image->bits(), image->width(), image->height(), + 8, image->bytesPerLine(), colorspace, flags); + + CGContextTranslateCTM(context, 0, image->height()); + CGContextScaleCTM(context, 1, -1); + + if (devType == QInternal::Widget) { + QRegion clip = p->paintEngine()->systemClip(); + QTransform native = p->deviceTransform(); + QTransform logical = p->combinedTransform(); + + if (p->hasClipping()) { + QRegion r = p->clipRegion(); + r.translate(native.dx(), native.dy()); + if (clip.isEmpty()) + clip = r; + else + clip &= r; + } + qt_mac_clip_cg(context, clip, 0); + + CGContextTranslateCTM(context, native.dx(), native.dy()); + } + } else { + qDebug() << "QMacCGContext:: Unsupported painter devtype type" << devType; + } +} + +CGColorSpaceRef qt_mac_colorSpaceForDeviceType(const QPaintDevice *paintDevice) +{ + bool isWidget = (paintDevice->devType() == QInternal::Widget); + return qt_mac_displayColorSpace(isWidget ? static_cast(paintDevice) : 0); +} + +/*! \internal + + Returns the CoreGraphics CGContextRef of the paint device. 0 is + returned if it can't be obtained. It is the caller's responsibility to + CGContextRelease the context when finished using it. + + \warning This function is only available on Mac OS X. +*/ + +CGContextRef qt_mac_cg_context(const QPaintDevice *pdev) +{ + if (pdev->devType() == QInternal::Pixmap) { + const QPixmap *pm = static_cast(pdev); + CGColorSpaceRef colorspace = qt_mac_colorSpaceForDeviceType(pdev); + uint flags = kCGImageAlphaPremultipliedFirst; + flags |= kCGBitmapByteOrder32Host; + CGContextRef ret = 0; + + QPlatformPixmap *data = const_cast(pm)->data_ptr().data(); + if (data->classId() == QPlatformPixmap::RasterClass) { + QImage *image = data->buffer(); + ret = CGBitmapContextCreate(image->bits(), image->width(), image->height(), + 8, image->bytesPerLine(), colorspace, flags); + } else { + qDebug() << "qt_mac_cg_context: Unsupported pixmap class"; + } + + CGContextTranslateCTM(ret, 0, pm->height()); + CGContextScaleCTM(ret, 1, -1); + return ret; + } else if (pdev->devType() == QInternal::Widget) { + //CGContextRef ret = static_cast(static_cast(pdev)->macCGHandle()); + ///CGContextRetain(ret); + //return ret; + qDebug() << "qt_mac_cg_context: not implemented: Widget class"; + return 0; + } + return 0; +} + +/* +FontHash::FontHash() +{ + QHash::operator=(QGuiApplicationPrivate::platformIntegration()->fontDatabase()->defaultFonts()); +} + +Q_GLOBAL_STATIC(FontHash, app_fonts) +FontHash *qt_app_fonts_hash() +{ + return app_fonts(); +} +*/ QT_END_NAMESPACE diff --git a/src/widgets/styles/qmacstyle_mac_p.h b/src/widgets/styles/qmacstyle_mac_p.h index 747779249c..fc10be507f 100644 --- a/src/widgets/styles/qmacstyle_mac_p.h +++ b/src/widgets/styles/qmacstyle_mac_p.h @@ -43,13 +43,13 @@ #ifndef QMACSTYLE_MAC_P_H #define QMACSTYLE_MAC_P_H -#include +#include +#undef check + +#include "qmacstyle_mac.h" #include #include -#include -#include #include -#include #include #include #include @@ -94,7 +94,8 @@ #include #include #include -#include + + // // W A R N I N G @@ -109,21 +110,6 @@ QT_BEGIN_NAMESPACE -#if (MAC_OS_X_VERSION_MAX_ALLOWED <= MAC_OS_X_VERSION_10_5) -enum { - kThemePushButtonTextured = 31, - kThemePushButtonTexturedSmall = 32, - kThemePushButtonTexturedMini = 33 -}; - -/* Search fields */ -enum { - kHIThemeFrameTextFieldRound = 1000, - kHIThemeFrameTextFieldRoundSmall = 1001, - kHIThemeFrameTextFieldRoundMini = 1002 -}; -#endif - /* AHIG: Apple Human Interface Guidelines diff --git a/src/widgets/styles/qstylefactory.cpp b/src/widgets/styles/qstylefactory.cpp index 8c1b9cb7e1..4de4a7b495 100644 --- a/src/widgets/styles/qstylefactory.cpp +++ b/src/widgets/styles/qstylefactory.cpp @@ -75,7 +75,7 @@ QT_BEGIN_NAMESPACE -#if !defined(QT_NO_STYLE_MAC) && defined(Q_WS_MAC) +#if !defined(QT_NO_STYLE_MAC) && defined(Q_OS_MAC) QT_BEGIN_INCLUDE_NAMESPACE # include "qmacstyle_mac.h" QT_END_INCLUDE_NAMESPACE diff --git a/src/widgets/styles/styles.pri b/src/widgets/styles/styles.pri index cf7ee5a0a4..ef6827f74f 100644 --- a/src/widgets/styles/styles.pri +++ b/src/widgets/styles/styles.pri @@ -37,8 +37,7 @@ contains( styles, all ) { styles = mac windows windowsxp windowsvista } -# TODO, re-enable qmacstyle in tests/auto/widgets/styles/sytles.pro when done -styles -= mac +!macx-*:styles -= mac x11{ QMAKE_CXXFLAGS += $$QT_CFLAGS_QGTKSTYLE diff --git a/tests/auto/widgets/styles/styles.pro b/tests/auto/widgets/styles/styles.pro index 20a59dea45..7e931582db 100644 --- a/tests/auto/widgets/styles/styles.pro +++ b/tests/auto/widgets/styles/styles.pro @@ -1,7 +1,6 @@ TEMPLATE=subdirs SUBDIRS=\ -# disabled in src/widgets/styles/styles.pri, so disable the test as well -# qmacstyle \ + qmacstyle \ qstyle \ qstyleoption \ qstylesheetstyle \ -- cgit v1.2.3 From 500fd522324a891f4683723a0f69bfda968adb8e Mon Sep 17 00:00:00 2001 From: Harald Fernengel Date: Wed, 21 Dec 2011 12:03:08 +0100 Subject: Use strlen() inline whenever possible This allows us to benefit from compile-time optimization Change-Id: I63dfde3758fcb0ff919fdc0418df1b7586da0b2f Reviewed-by: Thiago Macieira --- src/corelib/tools/qstring.cpp | 25 ++++++-------- src/corelib/tools/qstring.h | 78 +++++++++++++++++++++++++------------------ 2 files changed, 55 insertions(+), 48 deletions(-) diff --git a/src/corelib/tools/qstring.cpp b/src/corelib/tools/qstring.cpp index 241a77d057..be8876af48 100644 --- a/src/corelib/tools/qstring.cpp +++ b/src/corelib/tools/qstring.cpp @@ -3822,25 +3822,25 @@ QString::Data *QString::fromAscii_helper(const char *str, int size) Returns a QString initialized with the first \a size characters of the Latin-1 string \a str. - If \a size is -1 (default), it is taken to be qstrlen(\a + If \a size is -1 (default), it is taken to be strlen(\a str). \sa toLatin1(), fromAscii(), fromUtf8(), fromLocal8Bit() */ -/*! +/*! \fn QString QString::fromLocal8Bit(const char *str, int size) Returns a QString initialized with the first \a size characters of the 8-bit string \a str. - If \a size is -1 (default), it is taken to be qstrlen(\a + If \a size is -1 (default), it is taken to be strlen(\a str). QTextCodec::codecForLocale() is used to perform the conversion. \sa toLocal8Bit(), fromAscii(), fromLatin1(), fromUtf8() */ -QString QString::fromLocal8Bit(const char *str, int size) +QString QString::fromLocal8Bit_helper(const char *str, int size) { if (!str) return QString(); @@ -3856,11 +3856,11 @@ QString QString::fromLocal8Bit(const char *str, int size) return fromLatin1(str, size); } -/*! +/*! \fn QString QString::fromAscii(const char *, int size); Returns a QString initialized with the first \a size characters from the string \a str. - If \a size is -1 (default), it is taken to be qstrlen(\a + If \a size is -1 (default), it is taken to be strlen(\a str). Note that, despite the name, this function actually uses the codec @@ -3871,16 +3871,12 @@ QString QString::fromLocal8Bit(const char *str, int size) \sa toAscii(), fromLatin1(), fromUtf8(), fromLocal8Bit() */ -QString QString::fromAscii(const char *str, int size) -{ - return QString(fromAscii_helper(str, size), 0); -} -/*! +/*! \fn QString QString::fromUtf8(const char *str, int size) Returns a QString initialized with the first \a size bytes of the UTF-8 string \a str. - If \a size is -1 (default), it is taken to be qstrlen(\a + If \a size is -1 (default), it is taken to be strlen(\a str). UTF-8 is a Unicode codec and can represent all characters in a Unicode @@ -3897,13 +3893,12 @@ QString QString::fromAscii(const char *str, int size) \sa toUtf8(), fromAscii(), fromLatin1(), fromLocal8Bit() */ -QString QString::fromUtf8(const char *str, int size) +QString QString::fromUtf8_helper(const char *str, int size) { if (!str) return QString(); - if (size < 0) - size = qstrlen(str); + Q_ASSERT(size != -1); return QUtf8::convertToUnicode(str, size, 0); } diff --git a/src/corelib/tools/qstring.h b/src/corelib/tools/qstring.h index cccf275ffd..427de85565 100644 --- a/src/corelib/tools/qstring.h +++ b/src/corelib/tools/qstring.h @@ -407,14 +407,23 @@ public: QByteArray toLocal8Bit() const Q_REQUIRED_RESULT; QVector toUcs4() const Q_REQUIRED_RESULT; - static QString fromAscii(const char *, int size = -1); + // note - this are all inline so we can benefit from strlen() compile time optimizations + static inline QString fromAscii(const char *str, int size = -1) + { + return QString(fromAscii_helper(str, (str && size == -1) ? int(strlen(str)) : size), 0); + } static inline QString fromLatin1(const char *str, int size = -1) { - // make this inline so we can benefit from strlen() compile time optimization return QString(fromLatin1_helper(str, (str && size == -1) ? int(strlen(str)) : size), 0); } - static QString fromUtf8(const char *, int size = -1); - static QString fromLocal8Bit(const char *, int size = -1); + static inline QString fromUtf8(const char *str, int size = -1) + { + return fromUtf8_helper(str, (str && size == -1) ? int(strlen(str)) : size); + } + static inline QString fromLocal8Bit(const char *str, int size = -1) + { + return fromLocal8Bit_helper(str, (str && size == -1) ? int(strlen(str)) : size); + } static QString fromUtf16(const ushort *, int size = -1); static QString fromUcs4(const uint *, int size = -1); static QString fromRawData(const QChar *, int size); @@ -496,13 +505,14 @@ public: // ASCII compatibility #ifndef QT_NO_CAST_FROM_ASCII - inline QT_ASCII_CAST_WARN_CONSTRUCTOR QString(const char *ch) : d(fromAscii_helper(ch)) + inline QT_ASCII_CAST_WARN_CONSTRUCTOR QString(const char *ch) + : d(fromAscii_helper(ch, ch ? int(strlen(ch)) : -1)) {} inline QT_ASCII_CAST_WARN_CONSTRUCTOR QString(const QByteArray &a) : d(fromAscii_helper(a.constData(), qstrnlen(a.constData(), a.size()))) {} inline QT_ASCII_CAST_WARN QString &operator=(const char *ch) - { return (*this = fromAscii(ch)); } + { return (*this = fromAscii(ch, ch ? int(strlen(ch)) : -1)); } inline QT_ASCII_CAST_WARN QString &operator=(const QByteArray &a) { return (*this = fromAscii(a.constData(), qstrnlen(a.constData(), a.size()))); } inline QT_ASCII_CAST_WARN QString &operator=(char c) @@ -510,15 +520,15 @@ public: // these are needed, so it compiles with STL support enabled inline QT_ASCII_CAST_WARN QString &prepend(const char *s) - { return prepend(QString::fromAscii(s)); } + { return prepend(QString::fromAscii(s, s ? int(strlen(s)) : -1)); } inline QT_ASCII_CAST_WARN QString &prepend(const QByteArray &s) { return prepend(QString::fromAscii(s.constData(), qstrnlen(s.constData(), s.size()))); } inline QT_ASCII_CAST_WARN QString &append(const char *s) - { return append(QString::fromAscii(s)); } + { return append(QString::fromAscii(s, s ? int(strlen(s)) : -1)); } inline QT_ASCII_CAST_WARN QString &append(const QByteArray &s) { return append(QString::fromAscii(s.constData(), qstrnlen(s.constData(), s.size()))); } inline QT_ASCII_CAST_WARN QString &operator+=(const char *s) - { return append(QString::fromAscii(s)); } + { return append(QString::fromAscii(s, s ? int(strlen(s)) : -1)); } inline QT_ASCII_CAST_WARN QString &operator+=(const QByteArray &s) { return append(QString::fromAscii(s.constData(), qstrnlen(s.constData(), s.size()))); } inline QT_ASCII_CAST_WARN QString &operator+=(char c) @@ -629,6 +639,8 @@ private: const QChar *data2, int length2); static Data *fromLatin1_helper(const char *str, int size = -1); static Data *fromAscii_helper(const char *str, int size = -1); + static QString fromUtf8_helper(const char *str, int size); + static QString fromLocal8Bit_helper(const char *, int size); static int toUcs4_helper(const ushort *uc, int length, uint *out); void replace_helper(uint *indices, int nIndices, int blen, const QChar *after, int alen); friend class QCharRef; @@ -666,17 +678,17 @@ public: { return s >= *this; } inline QT_ASCII_CAST_WARN bool operator==(const char *s) const - { return QString::fromAscii(s) == *this; } + { return QString::fromAscii(s, s ? int(strlen(s)) : -1) == *this; } inline QT_ASCII_CAST_WARN bool operator!=(const char *s) const - { return QString::fromAscii(s) != *this; } + { return QString::fromAscii(s, s ? int(strlen(s)) : -1) != *this; } inline QT_ASCII_CAST_WARN bool operator<(const char *s) const - { return QString::fromAscii(s) > *this; } + { return QString::fromAscii(s, s ? int(strlen(s)) : -1) > *this; } inline QT_ASCII_CAST_WARN bool operator>(const char *s) const - { return QString::fromAscii(s) < *this; } + { return QString::fromAscii(s, s ? int(strlen(s)) : -1) < *this; } inline QT_ASCII_CAST_WARN bool operator<=(const char *s) const - { return QString::fromAscii(s) >= *this; } + { return QString::fromAscii(s, s ? int(strlen(s)) : -1) >= *this; } inline QT_ASCII_CAST_WARN bool operator>=(const char *s) const - { return QString::fromAscii(s) <= *this; } + { return QString::fromAscii(s, s ? int(strlen(s)) : -1) <= *this; } private: int m_size; const char *m_data; @@ -929,7 +941,7 @@ inline bool operator!=(const QString &s, QString::Null) { return !s.isNull(); } inline bool qStringComparisonHelper(const QString &s1, const char *s2) { # ifndef QT_NO_TEXTCODEC - if (QString::codecForCStrings) return (s1 == QString::fromAscii(s2)); + if (QString::codecForCStrings) return (s1 == QString::fromAscii(s2, s2 ? int(strlen(s2)) : -1)); # endif return (s1 == QLatin1String(s2)); } @@ -938,39 +950,39 @@ inline bool QString::operator==(const char *s) const inline bool QString::operator!=(const char *s) const { return !qStringComparisonHelper(*this, s); } inline bool QString::operator<(const char *s) const -{ return *this < QString::fromAscii(s); } +{ return *this < QString::fromAscii(s, s ? int(strlen(s)) : -1); } inline bool QString::operator>(const char *s) const -{ return *this > QString::fromAscii(s); } +{ return *this > QString::fromAscii(s, s ? int(strlen(s)) : -1); } inline bool QString::operator<=(const char *s) const -{ return *this <= QString::fromAscii(s); } +{ return *this <= QString::fromAscii(s, s ? int(strlen(s)) : -1); } inline bool QString::operator>=(const char *s) const -{ return *this >= QString::fromAscii(s); } +{ return *this >= QString::fromAscii(s, s ? int(strlen(s)) : -1); } inline QT_ASCII_CAST_WARN bool operator==(const char *s1, const QString &s2) { return qStringComparisonHelper(s2, s1); } inline QT_ASCII_CAST_WARN bool operator!=(const char *s1, const QString &s2) { return !qStringComparisonHelper(s2, s1); } inline QT_ASCII_CAST_WARN bool operator<(const char *s1, const QString &s2) -{ return (QString::fromAscii(s1) < s2); } +{ return (QString::fromAscii(s1, s1 ? int(strlen(s1)) : -1) < s2); } inline QT_ASCII_CAST_WARN bool operator>(const char *s1, const QString &s2) -{ return (QString::fromAscii(s1) > s2); } +{ return (QString::fromAscii(s1, s1 ? int(strlen(s1)) : -1) > s2); } inline QT_ASCII_CAST_WARN bool operator<=(const char *s1, const QString &s2) -{ return (QString::fromAscii(s1) <= s2); } +{ return (QString::fromAscii(s1, s1 ? int(strlen(s1)) : -1) <= s2); } inline QT_ASCII_CAST_WARN bool operator>=(const char *s1, const QString &s2) -{ return (QString::fromAscii(s1) >= s2); } +{ return (QString::fromAscii(s1, s1 ? int(strlen(s1)) : -1) >= s2); } inline QT_ASCII_CAST_WARN bool operator==(const char *s1, const QLatin1String &s2) -{ return QString::fromAscii(s1) == s2; } +{ return QString::fromAscii(s1, s1 ? int(strlen(s1)) : -1) == s2; } inline QT_ASCII_CAST_WARN bool operator!=(const char *s1, const QLatin1String &s2) -{ return QString::fromAscii(s1) != s2; } +{ return QString::fromAscii(s1, s1 ? int(strlen(s1)) : -1) != s2; } inline QT_ASCII_CAST_WARN bool operator<(const char *s1, const QLatin1String &s2) -{ return (QString::fromAscii(s1) < s2); } +{ return (QString::fromAscii(s1, s1 ? int(strlen(s1)) : -1) < s2); } inline QT_ASCII_CAST_WARN bool operator>(const char *s1, const QLatin1String &s2) -{ return (QString::fromAscii(s1) > s2); } +{ return (QString::fromAscii(s1, s1 ? int(strlen(s1)) : -1) > s2); } inline QT_ASCII_CAST_WARN bool operator<=(const char *s1, const QLatin1String &s2) -{ return (QString::fromAscii(s1) <= s2); } +{ return (QString::fromAscii(s1, s1 ? int(strlen(s1)) : -1) <= s2); } inline QT_ASCII_CAST_WARN bool operator>=(const char *s1, const QLatin1String &s2) -{ return (QString::fromAscii(s1) >= s2); } +{ return (QString::fromAscii(s1, s1 ? int(strlen(s1)) : -1) >= s2); } inline bool operator==(const QLatin1String &s1, const QLatin1String &s2) { return (qstrcmp(s1.latin1(), s2.latin1()) == 0); } @@ -1033,9 +1045,9 @@ inline const QString operator+(QChar s1, const QString &s2) { QString t(s1); t += s2; return t; } # ifndef QT_NO_CAST_FROM_ASCII inline QT_ASCII_CAST_WARN const QString operator+(const QString &s1, const char *s2) -{ QString t(s1); t += QString::fromAscii(s2); return t; } +{ QString t(s1); t += QString::fromAscii(s2, s2 ? int(strlen(s2)) : -1); return t; } inline QT_ASCII_CAST_WARN const QString operator+(const char *s1, const QString &s2) -{ QString t = QString::fromAscii(s1); t += s2; return t; } +{ QString t = QString::fromAscii(s1, s1 ? int(strlen(s1)) : -1); t += s2; return t; } inline QT_ASCII_CAST_WARN const QString operator+(char c, const QString &s) { QString t = s; t.prepend(QChar::fromAscii(c)); return t; } inline QT_ASCII_CAST_WARN const QString operator+(const QString &s, char c) @@ -1216,7 +1228,7 @@ inline bool operator>=(const QStringRef &s1, const QStringRef &s2) inline bool qStringComparisonHelper(const QStringRef &s1, const char *s2) { # ifndef QT_NO_TEXTCODEC - if (QString::codecForCStrings) return (s1 == QString::fromAscii(s2)); + if (QString::codecForCStrings) return (s1 == QString::fromAscii(s2, s2 ? int(strlen(s2)) : -1)); # endif return (s1 == QLatin1String(s2)); } -- cgit v1.2.3 From c02ca6752a1b6cb7d427e59594a600de3a46697d Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 21 Dec 2011 20:15:25 +0100 Subject: Fix handling of invalid modifiers in QKeySequence. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When decoding a string don't assume valid modifier strings. If a modifier string is unknown return Qt::Key_unknown instead of skipping the modifier. Currently 'Win+a' is decoded to 'A' but should be Qt::Key_unknown. Change-Id: I1c82031159a8b3c19924a7c9e991bc6b1f90d617 Reviewed-by: Morten Johan Sørvig --- src/gui/kernel/qkeysequence.cpp | 7 ++++++ .../gui/kernel/qkeysequence/tst_qkeysequence.cpp | 27 ++++++++++++++++++++++ 2 files changed, 34 insertions(+) diff --git a/src/gui/kernel/qkeysequence.cpp b/src/gui/kernel/qkeysequence.cpp index 6ea502b70b..9c0b07c64e 100644 --- a/src/gui/kernel/qkeysequence.cpp +++ b/src/gui/kernel/qkeysequence.cpp @@ -1259,13 +1259,20 @@ int QKeySequencePrivate::decodeString(const QString &str, QKeySequence::Sequence // Rational: A modifier will contain the name AND +, so longer than 1, a length of 1 is just // the remaining part of the shortcut (ei. The 'C' in "Ctrl+C"), so no need to check that. if (sub.length() > 1) { + bool validModifier = false; for (int j = 0; j < modifs.size(); ++j) { const QModifKeyName &mkf = modifs.at(j); if (sub == mkf.name) { ret |= mkf.qt_key; + validModifier = true; break; // Shortcut, since if we find an other it would/should just be a dup } } + // We couldn't match the string with a modifier. This is only + // possible if this part is the key. The key is never followed by a + // '+'. And if the key is '+' the if() above would have skipped it. + if (!validModifier) + return Qt::Key_unknown; } lastI = i + 1; } diff --git a/tests/auto/gui/kernel/qkeysequence/tst_qkeysequence.cpp b/tests/auto/gui/kernel/qkeysequence/tst_qkeysequence.cpp index 6fbd77c54f..9845b388b4 100644 --- a/tests/auto/gui/kernel/qkeysequence/tst_qkeysequence.cpp +++ b/tests/auto/gui/kernel/qkeysequence/tst_qkeysequence.cpp @@ -124,6 +124,8 @@ private slots: void toString(); void streamOperators_data(); void streamOperators(); + void parseString_data(); + void parseString(); void fromString_data(); void fromString(); void ensureSorted(); @@ -501,6 +503,31 @@ void tst_QKeySequence::streamOperators() QVERIFY( orgK != copyOrgK ); } + +void tst_QKeySequence::parseString_data() +{ + QTest::addColumn("strSequence"); + QTest::addColumn("keycode"); + + QTest::newRow("A") << "A" << QKeySequence(Qt::Key_A); + QTest::newRow("a") << "a" << QKeySequence(Qt::Key_A); + QTest::newRow("Ctrl+Left") << "Ctrl+Left" << QKeySequence(Qt::CTRL + Qt::Key_Left); + QTest::newRow("Ctrl++") << "Ctrl++" << QKeySequence(Qt::CTRL + Qt::Key_Plus); + QTest::newRow("Meta+A") << "Meta+a" << QKeySequence(Qt::META + Qt::Key_A); + QTest::newRow("Win+A") << "Win+a" << QKeySequence(Qt::Key_unknown); + QTest::newRow("4+3=2") << "4+3=2" << QKeySequence(Qt::Key_unknown); + QTest::newRow("Super+Meta+A") << "Super+Meta+A" << QKeySequence(Qt::Key_unknown); +} + +void tst_QKeySequence::parseString() +{ + QFETCH( QString, strSequence ); + QFETCH( QKeySequence, keycode ); + + QCOMPARE( QKeySequence(strSequence).toString(), keycode.toString() ); + QVERIFY( QKeySequence(strSequence) == keycode ); +} + void tst_QKeySequence::fromString_data() { toString_data(); -- cgit v1.2.3 From d868c9945a188d6ad22e0b7d6d24ac7fca00ab4e Mon Sep 17 00:00:00 2001 From: Harald Fernengel Date: Wed, 21 Dec 2011 10:40:36 +0100 Subject: Remove QT_NO_STL_WCHAR hack We don't support gcc 2.95 any more. Change-Id: I842f1f8ac64b9006516c104add0991830ac9a46a Reviewed-by: Thiago Macieira --- src/corelib/global/qglobal.h | 1 - src/corelib/tools/qstring.h | 21 +++------------------ tests/auto/corelib/tools/qstring/tst_qstring.cpp | 8 +------- 3 files changed, 4 insertions(+), 26 deletions(-) diff --git a/src/corelib/global/qglobal.h b/src/corelib/global/qglobal.h index 581bac9b0a..c60796ccf1 100644 --- a/src/corelib/global/qglobal.h +++ b/src/corelib/global/qglobal.h @@ -450,7 +450,6 @@ namespace QT_NAMESPACE {} /* GCC 2.95 knows "using" but does not support it correctly */ # if __GNUC__ == 2 && __GNUC_MINOR__ <= 95 # define Q_NO_USING_KEYWORD -# define QT_NO_STL_WCHAR # endif # if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95) # define Q_ALIGNOF(type) __alignof__(type) diff --git a/src/corelib/tools/qstring.h b/src/corelib/tools/qstring.h index 427de85565..8f063dd1e8 100644 --- a/src/corelib/tools/qstring.h +++ b/src/corelib/tools/qstring.h @@ -49,12 +49,6 @@ #ifndef QT_NO_STL # include - -# ifndef QT_NO_STL_WCHAR -// workaround for some headers not typedef'ing std::wstring -typedef std::basic_string QStdWString; -# endif // QT_NO_STL_WCHAR - #endif // QT_NO_STL #include @@ -576,15 +570,8 @@ public: #ifndef QT_NO_STL static inline QString fromStdString(const std::string &s); inline std::string toStdString() const; -# ifdef qdoc static inline QString fromStdWString(const std::wstring &s); inline std::wstring toStdWString() const; -# else -# ifndef QT_NO_STL_WCHAR - static inline QString fromStdWString(const QStdWString &s); - inline QStdWString toStdWString() const; -# endif // QT_NO_STL_WCHAR -# endif // qdoc #endif // compatibility @@ -1066,10 +1053,9 @@ inline std::string QString::toStdString() const inline QString QString::fromStdString(const std::string &s) { return fromAscii(s.data(), int(s.size())); } -# ifndef QT_NO_STL_WCHAR -inline QStdWString QString::toStdWString() const +inline std::wstring QString::toStdWString() const { - QStdWString str; + std::wstring str; str.resize(length()); #if defined(_MSC_VER) && _MSC_VER >= 1400 @@ -1081,9 +1067,8 @@ inline QStdWString QString::toStdWString() const str.resize(toWCharArray(&(*str.begin()))); return str; } -inline QString QString::fromStdWString(const QStdWString &s) +inline QString QString::fromStdWString(const std::wstring &s) { return fromWCharArray(s.data(), int(s.size())); } -# endif #endif #if !defined(QT_NO_DATASTREAM) || (defined(QT_BOOTSTRAPPED) && !defined(QT_BUILD_QMAKE)) diff --git a/tests/auto/corelib/tools/qstring/tst_qstring.cpp b/tests/auto/corelib/tools/qstring/tst_qstring.cpp index 80cbabeaf6..80e9984690 100644 --- a/tests/auto/corelib/tools/qstring/tst_qstring.cpp +++ b/tests/auto/corelib/tools/qstring/tst_qstring.cpp @@ -811,9 +811,6 @@ void tst_QString::constructorQByteArray() void tst_QString::STL() { -#ifdef Q_CC_HPACC - QSKIP("This test crashes on HP-UX with aCC"); -#endif #ifndef QT_NO_STL #ifndef QT_NO_CAST_TO_ASCII QString qt( "QString" ); @@ -851,16 +848,13 @@ void tst_QString::STL() QVERIFY( !stdstr3.length() ); #endif -// Skip the rest of the test if glibc is not compiled with wide character support -#if !(defined Q_CC_GNU && !defined _GLIBCPP_USE_WCHAR_T) && !defined QT_NO_STL_WCHAR const wchar_t arr[] = {'h', 'e', 'l', 'l', 'o', 0}; - QStdWString stlStr = arr; + std::wstring stlStr = arr; QString s = QString::fromStdWString(stlStr); QCOMPARE(s, QString::fromLatin1("hello")); QCOMPARE(stlStr, s.toStdWString()); -#endif #else QSKIP( "Not tested without STL support"); #endif -- cgit v1.2.3 From 56f154c747a6623fc8249265262160ac0adbe4cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C4=99drzej=20Nowacki?= Date: Tue, 13 Dec 2011 12:07:47 +0100 Subject: Allow QMetaType to register information about movability MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit We need that information to perform some optimizations in QVariant. Change-Id: Id9a1716e49e4cedd17cd09a32fea4ff003ef61f2 Reviewed-by: João Abecasis --- src/corelib/kernel/qmetatype.cpp | 82 +++++++++++++++++++++- src/corelib/kernel/qmetatype.h | 24 ++++++- src/corelib/kernel/qmetatype_p.h | 6 +- .../corelib/kernel/qmetatype/tst_qmetatype.cpp | 40 +++++++++++ .../gui/kernel/qguimetatype/tst_qguimetatype.cpp | 26 +++++++ 5 files changed, 173 insertions(+), 5 deletions(-) diff --git a/src/corelib/kernel/qmetatype.cpp b/src/corelib/kernel/qmetatype.cpp index d5a22ef07d..02cf9ae49c 100644 --- a/src/corelib/kernel/qmetatype.cpp +++ b/src/corelib/kernel/qmetatype.cpp @@ -239,6 +239,16 @@ template<> struct TypeDefiniton { static const bool IsAvailable = false \sa type(), typeName() */ +/*! + \enum QMetaType::TypeFlags + + The enum describes attributes of a type supported by QMetaType. + + \value NeedsConstruction This type has non-trivial constructors. If the flag is not set instances can be safely initialized with memset to 0. + \value NeedsDestruction This type has a non-trivial destructor. If the flag is not set calls to the destructor are not necessary before discarding objects. + \value MovableType An instance of a type having this attribute can be safely moved by memcpy. +*/ + /*! \class QMetaType \brief The QMetaType class manages named types in the meta-object system. @@ -423,7 +433,7 @@ static int qMetaTypeCustomType_unlocked(const char *typeName, int length) int QMetaType::registerType(const char *typeName, Deleter deleter, Creator creator) { - return registerType(typeName, deleter, creator, 0, 0, 0); + return registerType(typeName, deleter, creator, 0, 0, 0, TypeFlags()); } /*! \internal @@ -438,7 +448,7 @@ int QMetaType::registerType(const char *typeName, Deleter deleter, Creator creator, Destructor destructor, Constructor constructor, - int size) + int size, TypeFlags flags) { QVector *ct = customTypes(); if (!ct || !typeName || !deleter || !creator) @@ -470,6 +480,7 @@ int QMetaType::registerType(const char *typeName, Deleter deleter, inf.constructor = constructor; inf.destructor = destructor; inf.size = size; + inf.flags = flags; idx = ct->size() + User; ct->append(inf); } @@ -1633,6 +1644,73 @@ int QMetaType::sizeOf(int type) return QMetaTypeSwitcher::switcher(sizeOf, type, 0); } +namespace { +class Flags +{ + template::IsAccepted> + struct FlagsImpl + { + static quint32 Flags(const int) + { + return (!QTypeInfo::isStatic * QMetaType::MovableType) + | (QTypeInfo::isComplex * QMetaType::NeedsConstruction) + | (QTypeInfo::isComplex * QMetaType::NeedsDestruction); + } + }; + template + struct FlagsImpl + { + static quint32 Flags(const int type) + { + return Flags::undefinedTypeFlags(type); + } + }; +public: + Flags(const int type) + : m_type(type) + {} + template + quint32 delegate(const T*) { return FlagsImpl::Flags(m_type); } + quint32 delegate(const QMetaTypeSwitcher::UnknownType*) { return customTypeFlags(m_type); } +private: + const int m_type; + static quint32 customTypeFlags(const int type) + { + const QVector * const ct = customTypes(); + if (!ct) + return 0; + QReadLocker locker(customTypesLock()); + if (ct->count() <= type - QMetaType::User) + return 0; + return ct->at(type - QMetaType::User).flags; + } + static quint32 undefinedTypeFlags(const int type); +}; + +quint32 Flags::undefinedTypeFlags(const int type) +{ + if (type >= QMetaType::FirstGuiType && type <= QMetaType::LastGuiType) + return qMetaTypeGuiHelper ? qMetaTypeGuiHelper[type - QMetaType::FirstGuiType].flags : 0; + else if (type >= QMetaType::FirstWidgetsType && type <= QMetaType::LastWidgetsType) + return qMetaTypeWidgetsHelper ? qMetaTypeWidgetsHelper[type - QMetaType::FirstWidgetsType].flags : 0; + return customTypeFlags(type); +} + +} // namespace + +/*! + \since 5.0 + + Returns flags of the given \a type. + + \sa TypeFlags() +*/ +QMetaType::TypeFlags QMetaType::typeFlags(int type) +{ + Flags flags(type); + return static_cast(QMetaTypeSwitcher::switcher(flags, type, 0)); +} + /*! \fn int qRegisterMetaType(const char *typeName) \relates QMetaType diff --git a/src/corelib/kernel/qmetatype.h b/src/corelib/kernel/qmetatype.h index 717e72c810..dd5b1f8ed5 100644 --- a/src/corelib/kernel/qmetatype.h +++ b/src/corelib/kernel/qmetatype.h @@ -202,6 +202,13 @@ public: User = 256 }; + enum TypeFlag { + NeedsConstruction = 0x1, + NeedsDestruction = 0x2, + MovableType = 0x4 + }; + Q_DECLARE_FLAGS(TypeFlags, TypeFlag) + typedef void (*Deleter)(void *); typedef void *(*Creator)(const void *); @@ -222,11 +229,13 @@ public: Creator creator, Destructor destructor, Constructor constructor, - int size); + int size, + QMetaType::TypeFlags flags); static int registerTypedef(const char *typeName, int aliasId); static int type(const char *typeName); static const char *typeName(int type); static int sizeOf(int type); + static TypeFlags typeFlags(int type); static bool isRegistered(int type); static void *create(int type, const void *copy = 0); #if QT_DEPRECATED_SINCE(5, 0) @@ -246,6 +255,8 @@ public: #undef QT_DEFINE_METATYPE_ID +Q_DECLARE_OPERATORS_FOR_FLAGS(QMetaType::TypeFlags) + template void qMetaTypeDeleteHelper(T *t) { @@ -334,11 +345,20 @@ int qRegisterMetaType(const char *typeName typedef void(*DestructPtr)(T*); DestructPtr ipdptr = qMetaTypeDestructHelper; + QMetaType::TypeFlags flags; + if (!QTypeInfo::isStatic) + flags |= QMetaType::MovableType; + if (QTypeInfo::isComplex) { + flags |= QMetaType::NeedsConstruction; + flags |= QMetaType::NeedsDestruction; + } + return QMetaType::registerType(typeName, reinterpret_cast(dptr), reinterpret_cast(cptr), reinterpret_cast(ipdptr), reinterpret_cast(ipcptr), - sizeof(T)); + sizeof(T), + flags); } #ifndef QT_NO_DATASTREAM diff --git a/src/corelib/kernel/qmetatype_p.h b/src/corelib/kernel/qmetatype_p.h index 448c6ded13..46c5697678 100644 --- a/src/corelib/kernel/qmetatype_p.h +++ b/src/corelib/kernel/qmetatype_p.h @@ -150,6 +150,7 @@ public: QMetaType::Constructor constructor; QMetaType::Destructor destructor; int size; + quint32 flags; // same as QMetaType::TypeFlags }; #ifndef QT_NO_DATASTREAM @@ -167,7 +168,10 @@ public: QT_METATYPE_INTERFACE_INIT_DATASTREAM_IMPL(Type) \ /*constructor*/(reinterpret_cast(QMetaTypeInterface::Impl::constructor)), \ /*destructor*/(reinterpret_cast(QMetaTypeInterface::Impl::destructor)), \ - /*size*/(sizeof(Type)) \ + /*size*/(sizeof(Type)), \ + /*flags*/(!QTypeInfo::isStatic * QMetaType::MovableType) \ + | (QTypeInfo::isComplex * QMetaType::NeedsConstruction) \ + | (QTypeInfo::isComplex * QMetaType::NeedsDestruction) \ } QT_END_NAMESPACE diff --git a/tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp b/tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp index e0433ea4b0..12a57447cd 100644 --- a/tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp +++ b/tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp @@ -78,6 +78,8 @@ private slots: void createCopy(); void sizeOf_data(); void sizeOf(); + void flags_data(); + void flags(); void construct_data(); void construct(); void constructCopy_data(); @@ -129,6 +131,10 @@ protected: #ifdef Q_OS_LINUX pthread_yield(); #endif + if (QMetaType::typeFlags(tp) != (QMetaType::NeedsConstruction | QMetaType::NeedsDestruction)) { + ++failureCount; + qWarning() << "Wrong typeInfo returned for" << tp; + } if (!QMetaType::isRegistered(tp)) { ++failureCount; qWarning() << name << "is not a registered metatype"; @@ -578,6 +584,40 @@ void tst_QMetaType::sizeOf() QCOMPARE(QMetaType::sizeOf(type), size); } +struct CustomMovable {}; +QT_BEGIN_NAMESPACE +Q_DECLARE_TYPEINFO(CustomMovable, Q_MOVABLE_TYPE); +QT_END_NAMESPACE +Q_DECLARE_METATYPE(CustomMovable); + +void tst_QMetaType::flags_data() +{ + QTest::addColumn("type"); + QTest::addColumn("isMovable"); + QTest::addColumn("isComplex"); + +#define ADD_METATYPE_TEST_ROW(MetaTypeName, MetaTypeId, RealType) \ + QTest::newRow(#RealType) << MetaTypeId << bool(!QTypeInfo::isStatic) << bool(QTypeInfo::isComplex); +QT_FOR_EACH_STATIC_CORE_CLASS(ADD_METATYPE_TEST_ROW) +QT_FOR_EACH_STATIC_PRIMITIVE_POINTER(ADD_METATYPE_TEST_ROW) +QT_FOR_EACH_STATIC_CORE_POINTER(ADD_METATYPE_TEST_ROW) +#undef ADD_METATYPE_TEST_ROW + QTest::newRow("TestSpace::Foo") << ::qMetaTypeId() << false << true; + QTest::newRow("Whity") << ::qMetaTypeId >() << false << true; + QTest::newRow("CustomMovable") << ::qMetaTypeId() << true << true; +} + +void tst_QMetaType::flags() +{ + QFETCH(int, type); + QFETCH(bool, isMovable); + QFETCH(bool, isComplex); + + QCOMPARE(bool(QMetaType::typeFlags(type) & QMetaType::NeedsConstruction), isComplex); + QCOMPARE(bool(QMetaType::typeFlags(type) & QMetaType::NeedsDestruction), isComplex); + QCOMPARE(bool(QMetaType::typeFlags(type) & QMetaType::MovableType), isMovable); +} + void tst_QMetaType::construct_data() { create_data(); diff --git a/tests/auto/gui/kernel/qguimetatype/tst_qguimetatype.cpp b/tests/auto/gui/kernel/qguimetatype/tst_qguimetatype.cpp index 98314a9336..79eebbc828 100644 --- a/tests/auto/gui/kernel/qguimetatype/tst_qguimetatype.cpp +++ b/tests/auto/gui/kernel/qguimetatype/tst_qguimetatype.cpp @@ -56,6 +56,8 @@ private slots: void createCopy(); void sizeOf_data(); void sizeOf(); + void flags_data(); + void flags(); void construct_data(); void construct(); void constructCopy_data(); @@ -320,6 +322,30 @@ struct TypeAlignment #endif }; +void tst_QGuiMetaType::flags_data() +{ + QTest::addColumn("type"); + QTest::addColumn("isMovable"); + QTest::addColumn("isComplex"); + +#define ADD_METATYPE_TEST_ROW(MetaTypeName, MetaTypeId, RealType) \ + QTest::newRow(#RealType) << MetaTypeId << bool(!QTypeInfo::isStatic) << bool(QTypeInfo::isComplex); +QT_FOR_EACH_STATIC_GUI_CLASS(ADD_METATYPE_TEST_ROW) +#undef ADD_METATYPE_TEST_ROW +} + +void tst_QGuiMetaType::flags() +{ + QFETCH(int, type); + QFETCH(bool, isMovable); + QFETCH(bool, isComplex); + + QCOMPARE(bool(QMetaType::typeFlags(type) & QMetaType::NeedsConstruction), isComplex); + QCOMPARE(bool(QMetaType::typeFlags(type) & QMetaType::NeedsDestruction), isComplex); + QCOMPARE(bool(QMetaType::typeFlags(type) & QMetaType::MovableType), isMovable); +} + + void tst_QGuiMetaType::construct_data() { create_data(); -- cgit v1.2.3 From 23382669b9d9c15a3fc93fb43384035a9e788aa5 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Thu, 22 Dec 2011 15:01:40 +0100 Subject: QTestLib-selftest: Unblock on Windows. Do not run tests that pop up assert boxes. Change-Id: Idac94398ff1109605eb33a042dab734eafb1a17a Reviewed-by: Sergio Ahumada --- tests/auto/testlib/selftests/tst_selftests.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tests/auto/testlib/selftests/tst_selftests.cpp b/tests/auto/testlib/selftests/tst_selftests.cpp index 7825ade183..cb03611af3 100644 --- a/tests/auto/testlib/selftests/tst_selftests.cpp +++ b/tests/auto/testlib/selftests/tst_selftests.cpp @@ -322,7 +322,7 @@ void tst_Selftests::runSubTest_data() << "datatable" << "datetime" << "differentexec" -#if !defined(QT_NO_EXCEPTIONS) && (!defined(Q_CC_INTEL) || !defined(Q_OS_WIN)) +#if !defined(QT_NO_EXCEPTIONS) && !defined(Q_CC_INTEL) && !defined(Q_OS_WIN) // Disable this test on Windows and for intel compiler, as the run-times // will popup dialogs with warnings that uncaught exceptions were thrown << "exceptionthrow" @@ -330,7 +330,10 @@ void tst_Selftests::runSubTest_data() << "expectfail" << "failinit" << "failinitdata" +#if !defined(Q_OS_WIN) + // Disable this test on Windows, as the run-time will popup dialogs with warnings << "fetchbogus" +#endif << "float" << "globaldata" << "longstring" -- cgit v1.2.3 From 058fb94afff8a1a9989ab6d18dacc1fe43769fdb Mon Sep 17 00:00:00 2001 From: Shane Kearns Date: Thu, 22 Dec 2011 13:35:34 +0000 Subject: Fix faulty logic in http connection pipelining The code which prevents pipelining of requests when authentication is in use had || where && should have been used. Also check for blank user with a password. Change-Id: Ic278cedd370c9d81377f49a0af43aef415cb49ad Reviewed-by: Peter Hartmann --- src/network/access/qhttpnetworkconnection.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/network/access/qhttpnetworkconnection.cpp b/src/network/access/qhttpnetworkconnection.cpp index 90cde6654f..d9738b6255 100644 --- a/src/network/access/qhttpnetworkconnection.cpp +++ b/src/network/access/qhttpnetworkconnection.cpp @@ -641,9 +641,13 @@ void QHttpNetworkConnectionPrivate::fillPipeline(QAbstractSocket *socket) // we do not like authentication stuff // ### make sure to be OK with this in later releases - if (!channels[i].authenticator.isNull() || !channels[i].authenticator.user().isEmpty()) + if (!channels[i].authenticator.isNull() + && (!channels[i].authenticator.user().isEmpty() + || !channels[i].authenticator.password().isEmpty())) return; - if (!channels[i].proxyAuthenticator.isNull() || !channels[i].proxyAuthenticator.user().isEmpty()) + if (!channels[i].proxyAuthenticator.isNull() + && (!channels[i].proxyAuthenticator.user().isEmpty() + || !channels[i].proxyAuthenticator.password().isEmpty())) return; // must be in ReadingState or WaitingState -- cgit v1.2.3 From 96cda705dcbeb79429055c1acca91f149d318820 Mon Sep 17 00:00:00 2001 From: Shane Kearns Date: Thu, 15 Dec 2011 17:31:52 +0000 Subject: Fix for assertion failure Change-Id: I97b9ecc37e938a3050793fc746288243a1cb40b7 Reviewed-by: Peter Hartmann --- src/network/access/qnetworkaccessauthenticationmanager.cpp | 5 +++++ src/network/access/qnetworkaccessauthenticationmanager_p.h | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/network/access/qnetworkaccessauthenticationmanager.cpp b/src/network/access/qnetworkaccessauthenticationmanager.cpp index b618ccc945..9551b767df 100644 --- a/src/network/access/qnetworkaccessauthenticationmanager.cpp +++ b/src/network/access/qnetworkaccessauthenticationmanager.cpp @@ -159,6 +159,11 @@ void QNetworkAccessAuthenticationManager::cacheProxyCredentials(const QNetworkPr QString realm = authenticator->realm(); QNetworkProxy proxy = p; proxy.setUser(authenticator->user()); + + // don't cache null passwords, empty password may be valid though + if (authenticator->password().isNull()) + return; + // Set two credentials: one with the username and one without do { // Set two credentials actually: one with and one without the realm diff --git a/src/network/access/qnetworkaccessauthenticationmanager_p.h b/src/network/access/qnetworkaccessauthenticationmanager_p.h index ddfc11606d..718c58fc8d 100644 --- a/src/network/access/qnetworkaccessauthenticationmanager_p.h +++ b/src/network/access/qnetworkaccessauthenticationmanager_p.h @@ -73,7 +73,7 @@ public: QString user; QString password; bool isNull() { - return domain.isNull(); + return domain.isNull() && user.isNull() && password.isNull(); } }; Q_DECLARE_TYPEINFO(QNetworkAuthenticationCredential, Q_MOVABLE_TYPE); -- cgit v1.2.3 From 2cc78885b0b7d08f965998d156945a077e56c1d8 Mon Sep 17 00:00:00 2001 From: Shane Kearns Date: Mon, 19 Dec 2011 15:10:45 +0000 Subject: Handle plain socket write errors in SSL When an ssl socket is closed during connecting, and it is using a proxy then it is possible for the plain socket to be in pending close state when transmit() is called. As errors were not handled, this caused the socket (and https request) to "hang". It now propagates the error from plain socket. Change-Id: I6fb86815a2a63e197cea582f4b153e487543477c Reviewed-by: Peter Hartmann Reviewed-by: Richard J. Moore Reviewed-by: Thiago Macieira --- src/network/ssl/qsslsocket_openssl.cpp | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/network/ssl/qsslsocket_openssl.cpp b/src/network/ssl/qsslsocket_openssl.cpp index ef39de6b6d..d24a12c7a5 100644 --- a/src/network/ssl/qsslsocket_openssl.cpp +++ b/src/network/ssl/qsslsocket_openssl.cpp @@ -870,10 +870,17 @@ void QSslSocketBackendPrivate::transmit() int encryptedBytesRead = q_BIO_read(writeBio, data.data(), pendingBytes); // Write encrypted data from the buffer to the socket. - plainSocket->write(data.constData(), encryptedBytesRead); + qint64 actualWritten = plainSocket->write(data.constData(), encryptedBytesRead); #ifdef QSSLSOCKET_DEBUG - qDebug() << "QSslSocketBackendPrivate::transmit: wrote" << encryptedBytesRead << "encrypted bytes to the socket"; + qDebug() << "QSslSocketBackendPrivate::transmit: wrote" << encryptedBytesRead << "encrypted bytes to the socket" << actualWritten << "actual."; #endif + if (actualWritten < 0) { + //plain socket write fails if it was in the pending close state. + q->setErrorString(plainSocket->errorString()); + q->setSocketError(plainSocket->error()); + emit q->error(plainSocket->error()); + return; + } transmitting = true; } -- cgit v1.2.3 From d24aad82896addce88f1ffb4040560e406acf083 Mon Sep 17 00:00:00 2001 From: Shane Kearns Date: Thu, 15 Dec 2011 17:32:47 +0000 Subject: Don't fetch credentials from cache following a failed proxy authentication Add variable to QAuthenticatorPrivate for tracking failure Track authentication success/failure in http proxy socket engine Track authentication success/failure in http connection channel Task-number: QTBUG-22875 Change-Id: Id5d39e839428271ad687e9da12fbbdea9c478f4f Reviewed-by: Peter Hartmann --- src/network/access/qhttpnetworkconnection.cpp | 16 ++++++++++++++++ src/network/access/qhttpnetworkconnectionchannel.cpp | 12 +++++++++++- src/network/access/qhttpnetworkconnectionchannel_p.h | 2 ++ src/network/access/qnetworkaccessmanager.cpp | 12 +++--------- src/network/kernel/qauthenticator.cpp | 1 + src/network/kernel/qauthenticator_p.h | 1 + src/network/socket/qhttpsocketengine.cpp | 20 +++++++++++++++++--- src/network/socket/qhttpsocketengine_p.h | 1 + 8 files changed, 52 insertions(+), 13 deletions(-) diff --git a/src/network/access/qhttpnetworkconnection.cpp b/src/network/access/qhttpnetworkconnection.cpp index d9738b6255..4a8d672c56 100644 --- a/src/network/access/qhttpnetworkconnection.cpp +++ b/src/network/access/qhttpnetworkconnection.cpp @@ -428,9 +428,23 @@ bool QHttpNetworkConnectionPrivate::handleAuthenticateChallenge(QAbstractSocket if (priv->phase == QAuthenticatorPrivate::Done) { pauseConnection(); if (!isProxy) { + if (channels[i].authenticationCredentialsSent) { + auth->detach(); + priv = QAuthenticatorPrivate::getPrivate(*auth); + priv->hasFailed = true; + priv->phase = QAuthenticatorPrivate::Done; + channels[i].authenticationCredentialsSent = false; + } emit reply->authenticationRequired(reply->request(), auth); #ifndef QT_NO_NETWORKPROXY } else { + if (channels[i].proxyCredentialsSent) { + auth->detach(); + priv = QAuthenticatorPrivate::getPrivate(*auth); + priv->hasFailed = true; + priv->phase = QAuthenticatorPrivate::Done; + channels[i].proxyCredentialsSent = false; + } emit reply->proxyAuthenticationRequired(networkProxy, auth); #endif } @@ -491,6 +505,7 @@ void QHttpNetworkConnectionPrivate::createAuthorization(QAbstractSocket *socket, if (priv && priv->method != QAuthenticatorPrivate::None) { QByteArray response = priv->calculateResponse(request.d->methodName(), request.d->uri(false)); request.setHeaderField("Authorization", response); + channels[i].authenticationCredentialsSent = true; } } } @@ -502,6 +517,7 @@ void QHttpNetworkConnectionPrivate::createAuthorization(QAbstractSocket *socket, if (priv && priv->method != QAuthenticatorPrivate::None) { QByteArray response = priv->calculateResponse(request.d->methodName(), request.d->uri(false)); request.setHeaderField("Proxy-Authorization", response); + channels[i].proxyCredentialsSent = true; } } } diff --git a/src/network/access/qhttpnetworkconnectionchannel.cpp b/src/network/access/qhttpnetworkconnectionchannel.cpp index ab178be582..02c1cacd9d 100644 --- a/src/network/access/qhttpnetworkconnectionchannel.cpp +++ b/src/network/access/qhttpnetworkconnectionchannel.cpp @@ -73,6 +73,8 @@ QHttpNetworkConnectionChannel::QHttpNetworkConnectionChannel() , lastStatus(0) , pendingEncrypt(false) , reconnectAttempts(2) + , authenticationCredentialsSent(false) + , proxyCredentialsSent(false) , authMethod(QAuthenticatorPrivate::None) , proxyAuthMethod(QAuthenticatorPrivate::None) #ifndef QT_NO_OPENSSL @@ -549,6 +551,14 @@ bool QHttpNetworkConnectionChannel::ensureConnection() // reset state pipeliningSupported = PipeliningSupportUnknown; + authenticationCredentialsSent = false; + proxyCredentialsSent = false; + authenticator.detach(); + QAuthenticatorPrivate *priv = QAuthenticatorPrivate::getPrivate(authenticator); + priv->hasFailed = false; + proxyAuthenticator.detach(); + priv = QAuthenticatorPrivate::getPrivate(proxyAuthenticator); + priv->hasFailed = false; // This workaround is needed since we use QAuthenticator for NTLM authentication. The "phase == Done" // is the usual criteria for emitting authentication signals. The "phase" is set to "Done" when the @@ -556,7 +566,7 @@ bool QHttpNetworkConnectionChannel::ensureConnection() // check the "phase" for generating the Authorization header. NTLM authentication is a two stage // process & needs the "phase". To make sure the QAuthenticator uses the current username/password // the phase is reset to Start. - QAuthenticatorPrivate *priv = QAuthenticatorPrivate::getPrivate(authenticator); + priv = QAuthenticatorPrivate::getPrivate(authenticator); if (priv && priv->phase == QAuthenticatorPrivate::Done) priv->phase = QAuthenticatorPrivate::Start; priv = QAuthenticatorPrivate::getPrivate(proxyAuthenticator); diff --git a/src/network/access/qhttpnetworkconnectionchannel_p.h b/src/network/access/qhttpnetworkconnectionchannel_p.h index 7a4dd07db1..b93d002de6 100644 --- a/src/network/access/qhttpnetworkconnectionchannel_p.h +++ b/src/network/access/qhttpnetworkconnectionchannel_p.h @@ -113,6 +113,8 @@ public: QAuthenticatorPrivate::Method proxyAuthMethod; QAuthenticator authenticator; QAuthenticator proxyAuthenticator; + bool authenticationCredentialsSent; + bool proxyCredentialsSent; #ifndef QT_NO_OPENSSL bool ignoreAllSslErrors; QList ignoreSslErrorsList; diff --git a/src/network/access/qnetworkaccessmanager.cpp b/src/network/access/qnetworkaccessmanager.cpp index 3978bd6c85..2146749ea5 100644 --- a/src/network/access/qnetworkaccessmanager.cpp +++ b/src/network/access/qnetworkaccessmanager.cpp @@ -60,7 +60,7 @@ #include "QtCore/qbuffer.h" #include "QtCore/qurl.h" #include "QtCore/qvector.h" -#include "QtNetwork/qauthenticator.h" +#include "QtNetwork/private/qauthenticator_p.h" #include "QtNetwork/qsslconfiguration.h" #include "QtNetwork/qnetworkconfigmanager.h" #include "QtNetwork/qhttpmultipart.h" @@ -1115,14 +1115,8 @@ void QNetworkAccessManagerPrivate::proxyAuthenticationRequired(const QNetworkPro QNetworkProxy *lastProxyAuthentication) { Q_Q(QNetworkAccessManager); - // ### FIXME Tracking of successful authentications - // This code is a bit broken right now for SOCKS authentication - // first request: proxyAuthenticationRequired gets emitted, credentials gets saved - // second request: (proxy != backend->reply->lastProxyAuthentication) does not evaluate to true, - // proxyAuthenticationRequired gets emitted again - // possible solution: some tracking inside the authenticator - // or a new function proxyAuthenticationSucceeded(true|false) - if (proxy != *lastProxyAuthentication) { + QAuthenticatorPrivate *priv = QAuthenticatorPrivate::getPrivate(*authenticator); + if (proxy != *lastProxyAuthentication && (!priv || !priv->hasFailed)) { QNetworkAuthenticationCredential cred = authenticationManager->fetchCachedProxyCredentials(proxy); if (!cred.isNull()) { authenticator->setUser(cred.user); diff --git a/src/network/kernel/qauthenticator.cpp b/src/network/kernel/qauthenticator.cpp index b0d8b07105..8042424372 100644 --- a/src/network/kernel/qauthenticator.cpp +++ b/src/network/kernel/qauthenticator.cpp @@ -326,6 +326,7 @@ bool QAuthenticator::isNull() const QAuthenticatorPrivate::QAuthenticatorPrivate() : ref(0) , method(None) + , hasFailed(false) , phase(Start) , nonceCount(0) { diff --git a/src/network/kernel/qauthenticator_p.h b/src/network/kernel/qauthenticator_p.h index 88a30511b1..937f4e0f04 100644 --- a/src/network/kernel/qauthenticator_p.h +++ b/src/network/kernel/qauthenticator_p.h @@ -77,6 +77,7 @@ public: Method method; QString realm; QByteArray challenge; + bool hasFailed; //credentials have been tried but rejected by server. enum Phase { Start, diff --git a/src/network/socket/qhttpsocketengine.cpp b/src/network/socket/qhttpsocketengine.cpp index fd0119b8fd..f79795b8f8 100644 --- a/src/network/socket/qhttpsocketengine.cpp +++ b/src/network/socket/qhttpsocketengine.cpp @@ -136,6 +136,8 @@ bool QHttpSocketEngine::connectInternal() { Q_D(QHttpSocketEngine); + d->credentialsSent = false; + // If the handshake is done, enter ConnectedState state and return true. if (d->state == Connected) { qWarning("QHttpSocketEngine::connectToHost: called when already connected"); @@ -512,6 +514,7 @@ void QHttpSocketEngine::slotSocketConnected() QAuthenticatorPrivate *priv = QAuthenticatorPrivate::getPrivate(d->authenticator); //qDebug() << "slotSocketConnected: priv=" << priv << (priv ? (int)priv->method : -1); if (priv && priv->method != QAuthenticatorPrivate::None) { + d->credentialsSent = true; data += "Proxy-Authorization: " + priv->calculateResponse(method, path); data += "\r\n"; } @@ -589,15 +592,26 @@ void QHttpSocketEngine::slotSocketReadNotification() d->readBuffer.clear(); // we parsed the proxy protocol response. from now on direct socket reading will be done int statusCode = responseHeader.statusCode(); + QAuthenticatorPrivate *priv = 0; if (statusCode == 200) { d->state = Connected; setLocalAddress(d->socket->localAddress()); setLocalPort(d->socket->localPort()); setState(QAbstractSocket::ConnectedState); + d->authenticator.detach(); + priv = QAuthenticatorPrivate::getPrivate(d->authenticator); + priv->hasFailed = false; } else if (statusCode == 407) { - if (d->authenticator.isNull()) + if (d->credentialsSent) { + //407 response again means the provided username/password were invalid. + d->authenticator = QAuthenticator(); //this is needed otherwise parseHttpResponse won't set the state, and then signal isn't emitted. + d->authenticator.detach(); + priv = QAuthenticatorPrivate::getPrivate(d->authenticator); + priv->hasFailed = true; + } + else if (d->authenticator.isNull()) d->authenticator.detach(); - QAuthenticatorPrivate *priv = QAuthenticatorPrivate::getPrivate(d->authenticator); + priv = QAuthenticatorPrivate::getPrivate(d->authenticator); priv->parseHttpResponse(responseHeader, true); @@ -637,7 +651,6 @@ void QHttpSocketEngine::slotSocketReadNotification() if (priv->phase == QAuthenticatorPrivate::Done) emit proxyAuthenticationRequired(d->proxy, &d->authenticator); - // priv->phase will get reset to QAuthenticatorPrivate::Start if the authenticator got modified in the signal above. if (priv->phase == QAuthenticatorPrivate::Done) { setError(QAbstractSocket::ProxyAuthenticationRequiredError, tr("Authentication required")); @@ -794,6 +807,7 @@ QHttpSocketEnginePrivate::QHttpSocketEnginePrivate() , readNotificationPending(false) , writeNotificationPending(false) , connectionNotificationPending(false) + , credentialsSent(false) , pendingResponseData(0) { socket = 0; diff --git a/src/network/socket/qhttpsocketengine_p.h b/src/network/socket/qhttpsocketengine_p.h index d7cc7c1604..476d689c11 100644 --- a/src/network/socket/qhttpsocketengine_p.h +++ b/src/network/socket/qhttpsocketengine_p.h @@ -182,6 +182,7 @@ public: bool readNotificationPending; bool writeNotificationPending; bool connectionNotificationPending; + bool credentialsSent; uint pendingResponseData; }; -- cgit v1.2.3 From a7b99151f4445755c91d5227607d9ea2f785301f Mon Sep 17 00:00:00 2001 From: Shane Kearns Date: Mon, 19 Dec 2011 15:35:52 +0000 Subject: Fix race in http connection channel When authentication is cancelled, close the channel instead of the underlying socket. The previous behaviour could result in further requests being sent on the closed socket, which caused errors in case of https over a proxy. Change-Id: I3dbfc164de4fb29a426c06acaac8f29b9da1d705 Reviewed-by: Peter Hartmann --- src/network/access/qhttpnetworkconnection.cpp | 1 - src/network/access/qhttpnetworkconnectionchannel.cpp | 3 +++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/network/access/qhttpnetworkconnection.cpp b/src/network/access/qhttpnetworkconnection.cpp index 4a8d672c56..c1544f08c6 100644 --- a/src/network/access/qhttpnetworkconnection.cpp +++ b/src/network/access/qhttpnetworkconnection.cpp @@ -482,7 +482,6 @@ bool QHttpNetworkConnectionPrivate::handleAuthenticateChallenge(QAbstractSocket reply->d_func()->errorString = errorDetail(errorCode, socket); emit reply->finishedWithError(errorCode, reply->d_func()->errorString); // ### at this point the reply could be deleted - socket->close(); return true; } //resend the request diff --git a/src/network/access/qhttpnetworkconnectionchannel.cpp b/src/network/access/qhttpnetworkconnectionchannel.cpp index 02c1cacd9d..07e190a23c 100644 --- a/src/network/access/qhttpnetworkconnectionchannel.cpp +++ b/src/network/access/qhttpnetworkconnectionchannel.cpp @@ -793,6 +793,9 @@ void QHttpNetworkConnectionChannel::handleStatus() closeAndResendCurrentRequest(); QMetaObject::invokeMethod(connection, "_q_startNextRequest", Qt::QueuedConnection); } + } else { + //authentication cancelled, close the channel. + close(); } } else { emit reply->headerChanged(); -- cgit v1.2.3 From ee0a997bcd8d00f0515d037c964d77ecfdd3159f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C4=99drzej=20Nowacki?= Date: Fri, 2 Dec 2011 17:52:00 +0100 Subject: Fix movablity of QVariant. After 8fd64d22ac7892b061a09c42c72aacf033b80876 (Make usage of internal QVariant space.) change QVariant started to "inherit" movablity from interned type. This change fix it by interning only movable type in QVariant and by using external allocation for not movable ones. Obviously, this change has negative impact on QVariant it self, but after it, QVariant will behave a lot nicer with our containers. Change-Id: Ibffc95833918f65be737f52d694ee81a2036c412 Reviewed-by: Friedemann Kleint Reviewed-by: Thiago Macieira --- src/corelib/kernel/qvariant_p.h | 59 +++++++++++++--------- .../auto/corelib/kernel/qvariant/tst_qvariant.cpp | 26 +++++++++- 2 files changed, 59 insertions(+), 26 deletions(-) diff --git a/src/corelib/kernel/qvariant_p.h b/src/corelib/kernel/qvariant_p.h index 3c2176856d..f7f1399312 100644 --- a/src/corelib/kernel/qvariant_p.h +++ b/src/corelib/kernel/qvariant_p.h @@ -58,20 +58,33 @@ #include #include +#include #include "qmetatypeswitcher_p.h" QT_BEGIN_NAMESPACE +namespace { +template +struct QVariantIntegrator +{ + static const bool CanUseInternalSpace = sizeof(T) <= sizeof(QVariant::Private::Data) + && (!QTypeInfo::isStatic); +}; +Q_STATIC_ASSERT(QVariantIntegrator::CanUseInternalSpace); +Q_STATIC_ASSERT(QVariantIntegrator::CanUseInternalSpace); +Q_STATIC_ASSERT(QVariantIntegrator::CanUseInternalSpace); +} // namespace + #ifdef Q_CC_SUN // Sun CC picks the wrong overload, so introduce awful hack template inline T *v_cast(const QVariant::Private *nd, T * = 0) { QVariant::Private *d = const_cast(nd); - return ((sizeof(T) > sizeof(QVariant::Private::Data)) + return !QVariantIntegrator::CanUseInternalSpace ? static_cast(d->data.shared->ptr) - : static_cast(static_cast(&d->data.c))); + : static_cast(static_cast(&d->data.c)); } #else // every other compiler in this world @@ -79,17 +92,17 @@ inline T *v_cast(const QVariant::Private *nd, T * = 0) template inline const T *v_cast(const QVariant::Private *d, T * = 0) { - return ((sizeof(T) > sizeof(QVariant::Private::Data)) + return !QVariantIntegrator::CanUseInternalSpace ? static_cast(d->data.shared->ptr) - : static_cast(static_cast(&d->data.c))); + : static_cast(static_cast(&d->data.c)); } template inline T *v_cast(QVariant::Private *d, T * = 0) { - return ((sizeof(T) > sizeof(QVariant::Private::Data)) + return !QVariantIntegrator::CanUseInternalSpace ? static_cast(d->data.shared->ptr) - : static_cast(static_cast(&d->data.c))); + : static_cast(static_cast(&d->data.c)); } #endif @@ -110,7 +123,7 @@ private: template inline void v_construct(QVariant::Private *x, const void *copy, T * = 0) { - if (sizeof(T) > sizeof(QVariant::Private::Data)) { + if (!QVariantIntegrator::CanUseInternalSpace) { x->data.shared = copy ? new QVariantPrivateSharedEx(*static_cast(copy)) : new QVariantPrivateSharedEx; x->is_shared = true; @@ -125,7 +138,7 @@ inline void v_construct(QVariant::Private *x, const void *copy, T * = 0) template inline void v_construct(QVariant::Private *x, const T &t) { - if (sizeof(T) > sizeof(QVariant::Private::Data)) { + if (!QVariantIntegrator::CanUseInternalSpace) { x->data.shared = new QVariantPrivateSharedEx(t); x->is_shared = true; } else { @@ -138,7 +151,7 @@ template inline void v_clear(QVariant::Private *d, T* = 0) { - if (sizeof(T) > sizeof(QVariant::Private::Data)) { + if (!QVariantIntegrator::CanUseInternalSpace) { //now we need to cast //because QVariant::PrivateShared doesn't have a virtual destructor delete static_cast*>(d->data.shared); @@ -293,11 +306,11 @@ protected: template class QVariantConstructor { - template + template::CanUseInternalSpace> struct CallConstructor {}; template - struct CallConstructor + struct CallConstructor { CallConstructor(const QVariantConstructor &tc) { @@ -310,7 +323,7 @@ class QVariantConstructor }; template - struct CallConstructor + struct CallConstructor { CallConstructor(const QVariantConstructor &tc) { @@ -359,23 +372,21 @@ public: m_x->is_shared = false; return; } - // it is not a static known type, lets ask QMetaType if it can be constructed for us. const uint size = QMetaType::sizeOf(m_x->type); + if (!size) { + m_x->type = QVariant::Invalid; + return; + } - if (size && size <= sizeof(QVariant::Private::Data)) { - void *ptr = QMetaType::construct(m_x->type, &m_x->data.ptr, m_copy); - if (!ptr) { - m_x->type = QVariant::Invalid; - } + // this logic should match with QVariantIntegrator::CanUseInternalSpace + if (size <= sizeof(QVariant::Private::Data) + && (QMetaType::typeFlags(m_x->type) & QMetaType::MovableType)) { + QMetaType::construct(m_x->type, &m_x->data.ptr, m_copy); m_x->is_shared = false; } else { void *ptr = QMetaType::create(m_x->type, m_copy); - if (!ptr) { - m_x->type = QVariant::Invalid; - } else { - m_x->is_shared = true; - m_x->data.shared = new QVariant::PrivateShared(ptr); - } + m_x->is_shared = true; + m_x->data.shared = new QVariant::PrivateShared(ptr); } } diff --git a/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp b/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp index e540474b3e..9404130d35 100644 --- a/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp +++ b/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp @@ -253,6 +253,7 @@ private slots: void numericalConvert(); void moreCustomTypes(); + void movabilityTest(); void variantInVariant(); void colorInteger(); @@ -2006,7 +2007,7 @@ void tst_QVariant::userType() QVariant userVar3; qVariantSetValue(userVar3, data2); - QVERIFY(userVar2 == userVar3); + userVar3 = userVar2; QVERIFY(userVar2 == userVar3); } @@ -2049,7 +2050,7 @@ void tst_QVariant::userType() QCOMPARE(instanceCount, 3); { QVariant second = myCarrier; - QCOMPARE(instanceCount, 4); + QCOMPARE(instanceCount, 3); second.detach(); QCOMPARE(instanceCount, 4); } @@ -3220,6 +3221,27 @@ void tst_QVariant::moreCustomTypes() QCOMPARE(MyMovable::count, 0); } +void tst_QVariant::movabilityTest() +{ + // This test checks if QVariant is movable even if an internal data is not movable. + QVERIFY(!MyNotMovable::count); + { + QVariant variant = QVariant::fromValue(MyNotMovable()); + QVERIFY(MyNotMovable::count); + + // prepare destination memory space to which variant will be moved + QVariant buffer[1]; + QCOMPARE(buffer[0].type(), QVariant::Invalid); + buffer[0].~QVariant(); + + memcpy(buffer, &variant, sizeof(QVariant)); + QCOMPARE(buffer[0].type(), QVariant::UserType); + MyNotMovable tmp(buffer[0].value()); + + new (&variant) QVariant(); + } + QVERIFY(!MyNotMovable::count); +} void tst_QVariant::variantInVariant() { -- cgit v1.2.3 From 4954f71648aa7f74a4cb8b1dd26470b5da44459e Mon Sep 17 00:00:00 2001 From: Shane Kearns Date: Thu, 22 Dec 2011 14:08:17 +0000 Subject: Fix http authentication to a different realm on the same server This is a regression caused by the NTLMv2 authentication patch. I have manually tested NTLMv2 authentication against MS IIS and reverting these two lines does not break it. Task-number: QT-5209 Change-Id: I64159cbe468e1a7f834f8726fd0c9d4ab4c54b38 Reviewed-by: Peter Hartmann --- src/network/kernel/qauthenticator.cpp | 6 ++-- .../access/qnetworkreply/tst_qnetworkreply.cpp | 33 ++++++++++++++++++++++ 2 files changed, 35 insertions(+), 4 deletions(-) diff --git a/src/network/kernel/qauthenticator.cpp b/src/network/kernel/qauthenticator.cpp index 8042424372..ec3abdf029 100644 --- a/src/network/kernel/qauthenticator.cpp +++ b/src/network/kernel/qauthenticator.cpp @@ -388,8 +388,7 @@ void QAuthenticatorPrivate::parseHttpResponse(const QListoptions[QLatin1String("realm")] = realm = QString::fromLatin1(options.value("realm")); + this->options[QLatin1String("realm")] = realm = QString::fromLatin1(options.value("realm")); if (user.isEmpty() && password.isEmpty()) phase = Done; break; @@ -397,8 +396,7 @@ void QAuthenticatorPrivate::parseHttpResponse(const QListoptions[QLatin1String("realm")] = realm = QString::fromLatin1(options.value("realm")); + this->options[QLatin1String("realm")] = realm = QString::fromLatin1(options.value("realm")); if (options.value("stale").toLower() == "true") phase = Start; if (user.isEmpty() && password.isEmpty()) diff --git a/tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp b/tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp index cc520a620a..dc1dd4ab68 100644 --- a/tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp +++ b/tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp @@ -382,6 +382,7 @@ private Q_SLOTS: void httpUserAgent(); void authenticationCacheAfterCancel_data(); void authenticationCacheAfterCancel(); + void authenticationWithDifferentRealm(); void synchronousAuthenticationCache(); // NOTE: This test must be last! @@ -6212,6 +6213,38 @@ void tst_QNetworkReply::authenticationCacheAfterCancel() } +void tst_QNetworkReply::authenticationWithDifferentRealm() +{ + AuthenticationCacheHelper helper; + QNetworkAccessManager manager; +#ifndef QT_NO_OPENSSL + connect(&manager, SIGNAL(sslErrors(QNetworkReply*,QList)), + SLOT(sslErrors(QNetworkReply*,QList))); +#endif + connect(&manager, SIGNAL(proxyAuthenticationRequired(const QNetworkProxy &, QAuthenticator *)), &helper, SLOT(proxyAuthenticationRequired(const QNetworkProxy &, QAuthenticator *))); + connect(&manager, SIGNAL(authenticationRequired(QNetworkReply*,QAuthenticator*)), &helper, SLOT(authenticationRequired(QNetworkReply*,QAuthenticator*))); + + helper.httpUserName = "httptest"; + helper.httpPassword = "httptest"; + + QNetworkRequest request(QUrl("http://" + QtNetworkSettings::serverName() + "/qtest/rfcs-auth/rfc3252.txt")); + QNetworkReply* reply = manager.get(request); + connect(reply, SIGNAL(finished()), &QTestEventLoop::instance(), SLOT(exitLoop()), Qt::QueuedConnection); + QTestEventLoop::instance().enterLoop(10); + QVERIFY(!QTestEventLoop::instance().timeout()); + QCOMPARE(reply->error(), QNetworkReply::NoError); + + helper.httpUserName = "httptest"; + helper.httpPassword = "httptest"; + + request.setUrl(QUrl("http://" + QtNetworkSettings::serverName() + "/qtest/auth-digest/")); + reply = manager.get(request); + connect(reply, SIGNAL(finished()), &QTestEventLoop::instance(), SLOT(exitLoop()), Qt::QueuedConnection); + QTestEventLoop::instance().enterLoop(10); + QVERIFY(!QTestEventLoop::instance().timeout()); + QCOMPARE(reply->error(), QNetworkReply::NoError); +} + class QtBug13431Helper : public QObject { Q_OBJECT public: -- cgit v1.2.3 From 1dc86cbe8570a9aea746700c3564beeabc7aede9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C4=99drzej=20Nowacki?= Date: Mon, 19 Dec 2011 16:55:47 +0100 Subject: Remove redundant template parameter from QMetaType's internal classes. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Filter doesn't have to be a parameter because we always use DefinedTypesFilter. Change-Id: I19b8eb47a4c50e290cf712f909aaead8fdc94cd9 Reviewed-by: João Abecasis Reviewed-by: Olivier Goffart --- src/corelib/kernel/qmetatype.cpp | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/src/corelib/kernel/qmetatype.cpp b/src/corelib/kernel/qmetatype.cpp index 02cf9ae49c..e72cd7c575 100644 --- a/src/corelib/kernel/qmetatype.cpp +++ b/src/corelib/kernel/qmetatype.cpp @@ -1410,9 +1410,8 @@ void QMetaType::destroy(int type, void *data) } namespace { -template class TypeConstructor { - template::IsAccepted> + template::IsAccepted> struct ConstructorImpl { static void *Construct(const int /*type*/, void *where, const T *copy) { return qMetaTypeConstructHelper(where, copy); } }; @@ -1497,15 +1496,14 @@ void *QMetaType::construct(int type, void *where, const void *copy) { if (!where) return 0; - TypeConstructor constructor(type, where); + TypeConstructor constructor(type, where); return QMetaTypeSwitcher::switcher(constructor, type, copy); } namespace { -template class TypeDestructor { - template::IsAccepted> + template::IsAccepted> struct DestructorImpl { static void Destruct(const int /* type */, T *where) { qMetaTypeDestructHelper(where); } }; @@ -1573,15 +1571,14 @@ void QMetaType::destruct(int type, void *where) { if (!where) return; - TypeDestructor destructor(type); + TypeDestructor destructor(type); QMetaTypeSwitcher::switcher(destructor, type, where); } namespace { -template class SizeOf { - template::IsAccepted> + template::IsAccepted> struct SizeOfImpl { static int Size(const int) { return sizeof(T); } }; @@ -1640,7 +1637,7 @@ private: */ int QMetaType::sizeOf(int type) { - SizeOf sizeOf(type); + SizeOf sizeOf(type); return QMetaTypeSwitcher::switcher(sizeOf, type, 0); } -- cgit v1.2.3 From eff09a2794bcb4b5373fcee85faa498b36fac27c Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 19 Dec 2011 12:50:51 +0100 Subject: Fix for -Werror -Wshadow qevent.h:792:49: error: declaration of 'device' shadows a member of 'this' [-Werror=shadow] Change-Id: Iccb7e79dd97d55b17fbd4dfaf3503b9e251adcfc Reviewed-by: Robin Burchell Reviewed-by: Thiago Macieira --- src/gui/kernel/qevent.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gui/kernel/qevent.h b/src/gui/kernel/qevent.h index 4296078cfd..a4d287f16e 100644 --- a/src/gui/kernel/qevent.h +++ b/src/gui/kernel/qevent.h @@ -789,7 +789,7 @@ public: inline void setTarget(QObject *atarget) { _target = atarget; } inline void setTouchPointStates(Qt::TouchPointStates aTouchPointStates) { _touchPointStates = aTouchPointStates; } inline void setTouchPoints(const QList &atouchPoints) { _touchPoints = atouchPoints; } - inline void setDevice(QTouchDevice *device) { _device = device; } + inline void setDevice(QTouchDevice *adevice) { _device = adevice; } protected: QWindow *_window; -- cgit v1.2.3 From ef03396072e3959e7d03f55d91c2ffa1faa51d8d Mon Sep 17 00:00:00 2001 From: Sune Vuorela Date: Tue, 20 Dec 2011 19:46:28 +0100 Subject: QCryptographicHash: allow to hash the content of a QIODevice This adds a new function (and tests) to give the possibility of doing a QCryptographicHash of a QIODevice, like a QFile or whatever people needs. It is a quite handy overload in many cases. Change-Id: I22fd272f05571844641b3daefcc6746be4e5c7c3 Reviewed-by: Thiago Macieira --- src/corelib/tools/qcryptographichash.cpp | 23 +++++++++++++++ src/corelib/tools/qcryptographichash.h | 2 ++ .../data/2c1517dad3678f03917f15849b052fd5.md5 | Bin 0 -> 8375 bytes .../data/d41d8cd98f00b204e9800998ecf8427e.md5 | 0 .../qcryptographichash/qcryptographichash.pro | 12 ++++++++ .../qcryptographichash/tst_qcryptographichash.cpp | 32 +++++++++++++++++++++ 6 files changed, 69 insertions(+) create mode 100644 tests/auto/corelib/tools/qcryptographichash/data/2c1517dad3678f03917f15849b052fd5.md5 create mode 100644 tests/auto/corelib/tools/qcryptographichash/data/d41d8cd98f00b204e9800998ecf8427e.md5 diff --git a/src/corelib/tools/qcryptographichash.cpp b/src/corelib/tools/qcryptographichash.cpp index 89b3bab7c6..e5ac73c3f5 100644 --- a/src/corelib/tools/qcryptographichash.cpp +++ b/src/corelib/tools/qcryptographichash.cpp @@ -50,6 +50,7 @@ #include "../../3rdparty/md4/md4.h" #include "../../3rdparty/md4/md4.cpp" #include "../../3rdparty/sha1/sha1.cpp" +#include QT_BEGIN_NAMESPACE @@ -154,6 +155,28 @@ void QCryptographicHash::addData(const QByteArray &data) addData(data.constData(), data.length()); } +/*! + Reads the data from the open QIODevice \a device until it ends + and hashes it. Returns true if reading was successful. + */ +bool QCryptographicHash::addData(QIODevice* device) +{ + if (!device->isReadable()) + return false; + + if (!device->isOpen()) + return false; + + char buffer[1024]; + int length; + + while ((length = device->read(buffer,sizeof(buffer))) > 0) + addData(buffer,length); + + return device->atEnd(); +} + + /*! Returns the final hash value. diff --git a/src/corelib/tools/qcryptographichash.h b/src/corelib/tools/qcryptographichash.h index b40e8cc25b..15ebd22418 100644 --- a/src/corelib/tools/qcryptographichash.h +++ b/src/corelib/tools/qcryptographichash.h @@ -51,6 +51,7 @@ QT_BEGIN_NAMESPACE QT_MODULE(Core) class QCryptographicHashPrivate; +class QIODevice; class Q_CORE_EXPORT QCryptographicHash { @@ -68,6 +69,7 @@ public: void addData(const char *data, int length); void addData(const QByteArray &data); + bool addData(QIODevice* device); QByteArray result() const; diff --git a/tests/auto/corelib/tools/qcryptographichash/data/2c1517dad3678f03917f15849b052fd5.md5 b/tests/auto/corelib/tools/qcryptographichash/data/2c1517dad3678f03917f15849b052fd5.md5 new file mode 100644 index 0000000000..dd5c63cce1 Binary files /dev/null and b/tests/auto/corelib/tools/qcryptographichash/data/2c1517dad3678f03917f15849b052fd5.md5 differ diff --git a/tests/auto/corelib/tools/qcryptographichash/data/d41d8cd98f00b204e9800998ecf8427e.md5 b/tests/auto/corelib/tools/qcryptographichash/data/d41d8cd98f00b204e9800998ecf8427e.md5 new file mode 100644 index 0000000000..e69de29bb2 diff --git a/tests/auto/corelib/tools/qcryptographichash/qcryptographichash.pro b/tests/auto/corelib/tools/qcryptographichash/qcryptographichash.pro index 39987bac35..fddd67fbd6 100644 --- a/tests/auto/corelib/tools/qcryptographichash/qcryptographichash.pro +++ b/tests/auto/corelib/tools/qcryptographichash/qcryptographichash.pro @@ -2,3 +2,15 @@ CONFIG += testcase parallel_test TARGET = tst_qcryptographichash QT = core testlib SOURCES = tst_qcryptographichash.cpp + + +wince* { + addFiles.files = data/* + addFiles.path = data/ + DEPLOYMENT += addFiles + + DEFINES += SRCDIR=\\\".\\\" +} +else { + DEFINES += SRCDIR=\\\"$$PWD/\\\" +} \ No newline at end of file diff --git a/tests/auto/corelib/tools/qcryptographichash/tst_qcryptographichash.cpp b/tests/auto/corelib/tools/qcryptographichash/tst_qcryptographichash.cpp index b8592e1850..8ca13ff244 100644 --- a/tests/auto/corelib/tools/qcryptographichash/tst_qcryptographichash.cpp +++ b/tests/auto/corelib/tools/qcryptographichash/tst_qcryptographichash.cpp @@ -51,6 +51,8 @@ private slots: void intermediary_result_data(); void intermediary_result(); void sha1(); + void files_data(); + void files(); }; #include @@ -150,5 +152,35 @@ void tst_QCryptographicHash::sha1() } +Q_DECLARE_METATYPE(QCryptographicHash::Algorithm); + +void tst_QCryptographicHash::files_data() { + QTest::addColumn("filename"); + QTest::addColumn("algorithm"); + QTest::addColumn("md5sum"); + QTest::newRow("Line") << QString::fromAscii("data/2c1517dad3678f03917f15849b052fd5.md5") << QCryptographicHash::Md5 << QByteArray("2c1517dad3678f03917f15849b052fd5"); + QTest::newRow("Line") << QString::fromAscii("data/d41d8cd98f00b204e9800998ecf8427e.md5") << QCryptographicHash::Md5 << QByteArray("d41d8cd98f00b204e9800998ecf8427e"); +} + + +void tst_QCryptographicHash::files() +{ + QFETCH(QString, filename); + QFETCH(QCryptographicHash::Algorithm, algorithm); + QFETCH(QByteArray, md5sum); + { + QFile f(QString::fromLocal8Bit(SRCDIR) + filename); + QCryptographicHash hash(algorithm); + QVERIFY(! hash.addData(&f)); // file is not open for reading; + if (f.open(QIODevice::ReadOnly)) { + QVERIFY(hash.addData(&f)); + QCOMPARE(hash.result().toHex(),md5sum); + } else { + QFAIL("Failed to open file for testing. should not happen"); + } + } +} + + QTEST_MAIN(tst_QCryptographicHash) #include "tst_qcryptographichash.moc" -- cgit v1.2.3 From ae8c61db218dbd4329a6b10aa174ed4ef30de7d5 Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Tue, 20 Dec 2011 14:59:09 +0100 Subject: Finish removing Qt3 support Remove the (-no)-qt3support options from configure, and remove the last remaining references to Qt3Support, QT3_SUPPORT, and QEvent::ChildInserted. The compatibilityChildInsertEvents() tests in tst_QObject and tst_QWidget have been renamed to childEvents(), which is a more appropriate name. Change-Id: Id0b45e9b177efcc8dceee8c9ed8afafedeeace2f Reviewed-by: Kai Koehne Reviewed-by: Robin Burchell Reviewed-by: David Faure Reviewed-by: Lars Knoll --- configure | 42 +---- mkspecs/features/qt_module_config.prf | 1 - src/corelib/kernel/qcoreevent.cpp | 3 - src/gui/text/qtextimagehandler.cpp | 9 -- src/gui/text/qtextimagehandler_p.h | 3 - src/gui/text/qtextodfwriter.cpp | 3 - src/tools/moc/keywords.cpp | 85 ++++------ src/tools/moc/moc.cpp | 2 - src/tools/moc/token.cpp | 1 - src/tools/moc/token.h | 1 - src/tools/moc/util/generate_keywords.cpp | 1 - src/tools/uic/qclass_lib_map.h | 186 ---------------------- src/widgets/widgets/qfocusframe.cpp | 2 +- tests/auto/corelib/kernel/qobject/tst_qobject.cpp | 8 +- tests/auto/widgets/kernel/qwidget/tst_qwidget.cpp | 4 +- tools/configure/configureapp.cpp | 14 +- 16 files changed, 44 insertions(+), 321 deletions(-) diff --git a/configure b/configure index 66fa52ae9a..89bd2f1a3a 100755 --- a/configure +++ b/configure @@ -780,7 +780,6 @@ CFG_REDUCE_RELOCATIONS=auto CFG_NAS=no CFG_QWS_DEPTHS=all CFG_ACCESSIBILITY=auto -CFG_QT3SUPPORT=no CFG_ENDIAN=auto CFG_HOST_ENDIAN=auto CFG_DOUBLEFORMAT=auto @@ -1037,7 +1036,7 @@ while [ "$#" -gt 0 ]; do VAL=no ;; #Qt style yes options - -incremental|-qvfb|-profile|-shared|-static|-sm|-xinerama|-xshape|-xsync|-xinput|-xinput2|-egl|-reduce-exports|-pch|-separate-debug-info|-stl|-freetype|-xcursor|-xfixes|-xrandr|-xrender|-mitshm|-fontconfig|-xkb|-xcb|-wayland|-nis|-qdbus|-dbus|-dbus-linked|-glib|-gstreamer|-gtkstyle|-cups|-iconv|-largefile|-h|-help|-v|-verbose|-debug|-release|-fast|-accessibility|-confirm-license|-gnumake|-framework|-qt3support|-debug-and-release|-exceptions|-cocoa|-carbon|-universal|-harfbuzz|-prefix-install|-silent|-armfpa|-optimized-qmake|-dwarf2|-reduce-relocations|-sse|-openssl|-openssl-linked|-xmlpatterns|-phonon|-phonon-backend|-multimedia|-audio-backend|-svg|-v8|-declarative|-declarative-debug|-javascript-jit|-script|-scripttools|-rpath|-force-pkg-config|-icu|-force-asserts|-testcocoon) + -incremental|-qvfb|-profile|-shared|-static|-sm|-xinerama|-xshape|-xsync|-xinput|-xinput2|-egl|-reduce-exports|-pch|-separate-debug-info|-stl|-freetype|-xcursor|-xfixes|-xrandr|-xrender|-mitshm|-fontconfig|-xkb|-xcb|-wayland|-nis|-qdbus|-dbus|-dbus-linked|-glib|-gstreamer|-gtkstyle|-cups|-iconv|-largefile|-h|-help|-v|-verbose|-debug|-release|-fast|-accessibility|-confirm-license|-gnumake|-framework|-debug-and-release|-exceptions|-cocoa|-carbon|-universal|-harfbuzz|-prefix-install|-silent|-armfpa|-optimized-qmake|-dwarf2|-reduce-relocations|-sse|-openssl|-openssl-linked|-xmlpatterns|-phonon|-phonon-backend|-multimedia|-audio-backend|-svg|-v8|-declarative|-declarative-debug|-javascript-jit|-script|-scripttools|-rpath|-force-pkg-config|-icu|-force-asserts|-testcocoon) VAR=`echo $1 | sed "s,^-\(.*\),\1,"` VAL=yes ;; @@ -1236,13 +1235,6 @@ while [ "$#" -gt 0 ]; do UNKNOWN_OPT=no case "$VAR" in - qt3support) - if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then - CFG_QT3SUPPORT="$VAL" - else - UNKNOWN_OPT=yes - fi - ;; accessibility) if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then CFG_ACCESSIBILITY="$VAL" @@ -2384,20 +2376,6 @@ while [ "$#" -gt 0 ]; do fi done -if [ "$CFG_QCONFIG" != "full" ] && [ "$CFG_QT3SUPPORT" = "yes" ]; then - echo "Warning: '-qconfig $CFG_QCONFIG' will disable the qt3support library." - CFG_QT3SUPPORT="no" -fi -if [ "$CFG_GUI" = "no" ]; then - echo "Warning: -no-gui will disable the qt3support library." - CFG_QT3SUPPORT="no" -fi - -#disable Qt3Support for Lighthouse -if [ "$PLATFORM_QPA" = "yes" ]; then - CFG_QT3SUPPORT="no" -fi - # update QT_CONFIG to show our current predefined configuration case "$CFG_QCONFIG" in minimal|small|medium|large|full) @@ -3665,7 +3643,7 @@ Usage: $relconf [-h] [-prefix ] [-prefix-install] [-bindir ] [-libdir [-developer-build] [-shared] [-static] [-no-fast] [-fast] [-no-largefile] [-largefile] [-no-exceptions] [-exceptions] [-no-accessibility] [-accessibility] [-no-stl] [-stl] [-no-sql-] [-sql-] - [-plugin-sql-] [-system-sqlite] [-no-qt3support] [-qt3support] + [-plugin-sql-] [-system-sqlite] [-platform] [-D ] [-I ] [-L ] [-help] [-qt-zlib] [-system-zlib] [-no-gif] [-no-libtiff] [-qt-libtiff] [-system-libtiff] [-no-libpng] [-qt-libpng] [-system-libpng] [-no-libmng] [-qt-libmng] @@ -3807,9 +3785,6 @@ fi -system-sqlite ..... Use sqlite from the operating system. - -no-qt3support ..... Disables the Qt 3 support functionality. - * -qt3support ........ Enables the Qt 3 support functionality. - -no-xmlpatterns .... Do not build the QtXmlPatterns module. + -xmlpatterns ....... Build the QtXmlPatterns module. QtXmlPatterns is built if a decent C++ compiler @@ -6791,18 +6766,6 @@ fi # but disable Cocoa if cross-building for mingw [ "$XPLATFORM_MINGW" = "yes" ] && CFG_MAC_COCOA="no" -# disable Qt 3 support on VxWorks -case "$XPLATFORM" in - unsupported/vxworks*) - CFG_QT3SUPPORT="no" - ;; -esac - -# enable Qt 3 support functionality -if [ "$CFG_QT3SUPPORT" = "yes" ]; then - QT_CONFIG="$QT_CONFIG gui-qt3support" -fi - # enable Phonon if [ "$CFG_PHONON" = "yes" ]; then # No longer needed after modularization @@ -8249,7 +8212,6 @@ if [ "$CFG_DEBUG_RELEASE" = "yes" ]; then else echo "Debug .................. $CFG_DEBUG" fi -echo "Qt 3 compatibility ..... $CFG_QT3SUPPORT" [ "$CFG_DBUS" = "no" ] && echo "QtDBus module .......... no" [ "$CFG_DBUS" = "yes" ] && echo "QtDBus module .......... yes (run-time)" [ "$CFG_DBUS" = "linked" ] && echo "QtDBus module .......... yes (linked)" diff --git a/mkspecs/features/qt_module_config.prf b/mkspecs/features/qt_module_config.prf index 6104362c0b..208ab592e1 100644 --- a/mkspecs/features/qt_module_config.prf +++ b/mkspecs/features/qt_module_config.prf @@ -148,7 +148,6 @@ win32-g++* { contains(QT_PRODUCT, OpenSource.*):DEFINES *= QT_OPENSOURCE DEFINES *= QT_NO_CAST_TO_ASCII QT_ASCII_CAST_WARNINGS -contains(QT_CONFIG, gui-qt3support):DEFINES *= QT3_SUPPORT DEFINES *= QT_MOC_COMPAT #we don't need warnings from calling moc code in our generated code DEFINES *= QT_USE_QSTRINGBUILDER diff --git a/src/corelib/kernel/qcoreevent.cpp b/src/corelib/kernel/qcoreevent.cpp index 213f0e4a58..a4db3eeefd 100644 --- a/src/corelib/kernel/qcoreevent.cpp +++ b/src/corelib/kernel/qcoreevent.cpp @@ -108,7 +108,6 @@ QT_BEGIN_NAMESPACE \value ApplicationPaletteChange The default application palette has changed. \value ApplicationWindowIconChange The application's icon has changed. \value ChildAdded An object gets a child (QChildEvent). - \value ChildInserted An object gets a child (QChildEvent). Qt3Support only, use ChildAdded instead. \value ChildPolished A widget child gets polished (QChildEvent). \value ChildRemoved An object loses a child (QChildEvent). \value Clipboard The clipboard contents have changed (QClipboardEvent). @@ -252,8 +251,6 @@ QT_BEGIN_NAMESPACE \omitvalue AcceptDropsChange \omitvalue ActivateControl \omitvalue CaptionChange - \omitvalue ChildInsertedRequest - \omitvalue ChildInserted \omitvalue Create \omitvalue DeactivateControl \omitvalue Destroy diff --git a/src/gui/text/qtextimagehandler.cpp b/src/gui/text/qtextimagehandler.cpp index 138fb1a168..fb93563d10 100644 --- a/src/gui/text/qtextimagehandler.cpp +++ b/src/gui/text/qtextimagehandler.cpp @@ -52,9 +52,6 @@ QT_BEGIN_NAMESPACE -// set by the mime source factory in Qt3Compat -QTextImageHandler::ExternalImageLoaderFunction QTextImageHandler::externalLoader = 0; - static QPixmap getPixmap(QTextDocument *doc, const QTextImageFormat &format) { QPixmap pm; @@ -79,9 +76,6 @@ static QPixmap getPixmap(QTextDocument *doc, const QTextImageFormat &format) context = browser->source().toString(); #endif QImage img; - if (QTextImageHandler::externalLoader) - img = QTextImageHandler::externalLoader(name, context); - if (img.isNull()) { // try direct loading name = format.name(); // remove qrc:/ prefix again if (name.isEmpty() || !img.load(name)) @@ -157,9 +151,6 @@ static QImage getImage(QTextDocument *doc, const QTextImageFormat &format) if (browser) context = browser->source().toString(); #endif - if (QTextImageHandler::externalLoader) - image = QTextImageHandler::externalLoader(name, context); - if (image.isNull()) { // try direct loading name = format.name(); // remove qrc:/ prefix again if (name.isEmpty() || !image.load(name)) diff --git a/src/gui/text/qtextimagehandler_p.h b/src/gui/text/qtextimagehandler_p.h index 8a14a46d5f..b748a1913f 100644 --- a/src/gui/text/qtextimagehandler_p.h +++ b/src/gui/text/qtextimagehandler_p.h @@ -71,9 +71,6 @@ public: virtual QSizeF intrinsicSize(QTextDocument *doc, int posInDocument, const QTextFormat &format); virtual void drawObject(QPainter *p, const QRectF &rect, QTextDocument *doc, int posInDocument, const QTextFormat &format); QImage image(QTextDocument *doc, const QTextImageFormat &imageFormat); - - typedef QImage (*ExternalImageLoaderFunction)(const QString &name, const QString &context); - static ExternalImageLoaderFunction externalLoader; //this is needed by Qt3Support }; QT_END_NAMESPACE diff --git a/src/gui/text/qtextodfwriter.cpp b/src/gui/text/qtextodfwriter.cpp index 8776b926c5..cb313f64fe 100644 --- a/src/gui/text/qtextodfwriter.cpp +++ b/src/gui/text/qtextodfwriter.cpp @@ -376,9 +376,6 @@ void QTextOdfWriter::writeInlineCharacter(QXmlStreamWriter &writer, const QTextF if (image.isNull()) { QString context; - if (QTextImageHandler::externalLoader) - image = QTextImageHandler::externalLoader(name, context); - if (image.isNull()) { // try direct loading name = imageFormat.name(); // remove qrc:/ prefix again image.load(name); diff --git a/src/tools/moc/keywords.cpp b/src/tools/moc/keywords.cpp index 1440b5ca7b..20b98e2fc1 100644 --- a/src/tools/moc/keywords.cpp +++ b/src/tools/moc/keywords.cpp @@ -43,12 +43,12 @@ // DO NOT EDIT. static const short keyword_trans[][128] = { - {0,0,0,0,0,0,0,0,0,541,538,0,0,0,0,0, + {0,0,0,0,0,0,0,0,0,532,529,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, - 541,252,539,542,0,38,239,540,25,26,236,234,30,235,27,237, + 532,252,530,533,0,38,239,531,25,26,236,234,30,235,27,237, 22,22,22,22,22,22,22,22,22,22,34,41,23,39,24,43, 0,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, - 8,21,8,8,8,8,8,8,8,8,8,31,543,32,238,8, + 8,21,8,8,8,8,8,8,8,8,8,31,534,32,238,8, 0,1,2,3,4,5,6,7,8,9,8,8,10,11,12,13, 14,8,15,16,17,18,19,20,8,8,8,36,245,37,248,0}, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, @@ -190,7 +190,7 @@ static const short keyword_trans[][128] = { {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,42,0,0,0,28,0, - 546,546,546,546,546,546,546,546,546,546,0,0,0,0,0,0, + 537,537,537,537,537,537,537,537,537,537,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, @@ -349,7 +349,7 @@ static const short keyword_trans[][128] = { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0,545,0,0,0,0,544, + 0,0,0,0,0,0,0,0,0,0,536,0,0,0,0,535, 0,0,0,0,0,0,0,0,0,0,0,0,0,258,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, @@ -392,7 +392,7 @@ static const short keyword_trans[][128] = { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,439,388,378,383,364,0,448,0,0,0,0,0,358, - 370,0,530,436,0,0,0,0,0,0,0,0,0,0,0,0, + 370,0,521,436,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, @@ -415,7 +415,7 @@ static const short keyword_trans[][128] = { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, - 0,0,0,513,0,437,0,0,0,465,0,0,471,0,0,0, + 0,0,0,504,0,437,0,0,0,465,0,0,471,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, @@ -424,7 +424,7 @@ static const short keyword_trans[][128] = { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,450,0,506,0,0,0,0,0,0,0,0,0, + 0,0,0,0,450,0,497,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, @@ -432,15 +432,7 @@ static const short keyword_trans[][128] = { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, - 522,0,0,481,0,0,0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, - {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, - 0,0,0,497,0,0,0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,486, + 513,0,0,481,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0} }; @@ -938,7 +930,7 @@ static const struct {CHARACTER, 0, 79, 483, CHARACTER}, {CHARACTER, 0, 84, 484, CHARACTER}, {Q_PRIVATE_SLOT_TOKEN, 0, 0, 0, CHARACTER}, - {CHARACTER, 49, 0, 0, CHARACTER}, + {CHARACTER, 0, 95, 486, CHARACTER}, {CHARACTER, 0, 77, 487, CHARACTER}, {CHARACTER, 0, 79, 488, CHARACTER}, {CHARACTER, 0, 67, 489, CHARACTER}, @@ -950,46 +942,37 @@ static const struct {CHARACTER, 0, 65, 495, CHARACTER}, {CHARACTER, 0, 84, 496, CHARACTER}, {Q_MOC_COMPAT_TOKEN, 0, 0, 0, CHARACTER}, - {CHARACTER, 0, 95, 498, CHARACTER}, - {CHARACTER, 0, 83, 499, CHARACTER}, - {CHARACTER, 0, 85, 500, CHARACTER}, - {CHARACTER, 0, 80, 501, CHARACTER}, - {CHARACTER, 0, 80, 502, CHARACTER}, - {CHARACTER, 0, 79, 503, CHARACTER}, - {CHARACTER, 0, 82, 504, CHARACTER}, - {CHARACTER, 0, 84, 505, CHARACTER}, - {Q_QT3_SUPPORT_TOKEN, 0, 0, 0, CHARACTER}, - {CHARACTER, 0, 79, 507, CHARACTER}, - {CHARACTER, 0, 75, 508, CHARACTER}, + {CHARACTER, 0, 79, 498, CHARACTER}, + {CHARACTER, 0, 75, 499, CHARACTER}, + {CHARACTER, 0, 65, 500, CHARACTER}, + {CHARACTER, 0, 66, 501, CHARACTER}, + {CHARACTER, 0, 76, 502, CHARACTER}, + {CHARACTER, 0, 69, 503, CHARACTER}, + {Q_INVOKABLE_TOKEN, 0, 0, 0, CHARACTER}, + {CHARACTER, 0, 82, 505, CHARACTER}, + {CHARACTER, 0, 73, 506, CHARACTER}, + {CHARACTER, 0, 80, 507, CHARACTER}, + {CHARACTER, 0, 84, 508, CHARACTER}, {CHARACTER, 0, 65, 509, CHARACTER}, {CHARACTER, 0, 66, 510, CHARACTER}, {CHARACTER, 0, 76, 511, CHARACTER}, {CHARACTER, 0, 69, 512, CHARACTER}, - {Q_INVOKABLE_TOKEN, 0, 0, 0, CHARACTER}, + {Q_SCRIPTABLE_TOKEN, 0, 0, 0, CHARACTER}, {CHARACTER, 0, 82, 514, CHARACTER}, - {CHARACTER, 0, 73, 515, CHARACTER}, + {CHARACTER, 0, 79, 515, CHARACTER}, {CHARACTER, 0, 80, 516, CHARACTER}, - {CHARACTER, 0, 84, 517, CHARACTER}, - {CHARACTER, 0, 65, 518, CHARACTER}, - {CHARACTER, 0, 66, 519, CHARACTER}, - {CHARACTER, 0, 76, 520, CHARACTER}, - {CHARACTER, 0, 69, 521, CHARACTER}, - {Q_SCRIPTABLE_TOKEN, 0, 0, 0, CHARACTER}, - {CHARACTER, 0, 82, 523, CHARACTER}, - {CHARACTER, 0, 79, 524, CHARACTER}, - {CHARACTER, 0, 80, 525, CHARACTER}, - {CHARACTER, 0, 69, 526, CHARACTER}, - {CHARACTER, 0, 82, 527, CHARACTER}, - {CHARACTER, 0, 84, 528, CHARACTER}, - {CHARACTER, 0, 89, 529, CHARACTER}, + {CHARACTER, 0, 69, 517, CHARACTER}, + {CHARACTER, 0, 82, 518, CHARACTER}, + {CHARACTER, 0, 84, 519, CHARACTER}, + {CHARACTER, 0, 89, 520, CHARACTER}, {Q_PRIVATE_PROPERTY_TOKEN, 0, 0, 0, CHARACTER}, - {CHARACTER, 0, 69, 531, CHARACTER}, - {CHARACTER, 0, 86, 532, CHARACTER}, - {CHARACTER, 0, 73, 533, CHARACTER}, - {CHARACTER, 0, 83, 534, CHARACTER}, - {CHARACTER, 0, 73, 535, CHARACTER}, - {CHARACTER, 0, 79, 536, CHARACTER}, - {CHARACTER, 0, 78, 537, CHARACTER}, + {CHARACTER, 0, 69, 522, CHARACTER}, + {CHARACTER, 0, 86, 523, CHARACTER}, + {CHARACTER, 0, 73, 524, CHARACTER}, + {CHARACTER, 0, 83, 525, CHARACTER}, + {CHARACTER, 0, 73, 526, CHARACTER}, + {CHARACTER, 0, 79, 527, CHARACTER}, + {CHARACTER, 0, 78, 528, CHARACTER}, {Q_REVISION_TOKEN, 0, 0, 0, CHARACTER}, {NEWLINE, 0, 0, 0, NOTOKEN}, {QUOTE, 0, 0, 0, NOTOKEN}, diff --git a/src/tools/moc/moc.cpp b/src/tools/moc/moc.cpp index d725919cac..4f414ba35e 100644 --- a/src/tools/moc/moc.cpp +++ b/src/tools/moc/moc.cpp @@ -165,7 +165,6 @@ Type Moc::parseType() type.isVolatile = true; continue; case Q_MOC_COMPAT_TOKEN: - case Q_QT3_SUPPORT_TOKEN: case Q_INVOKABLE_TOKEN: case Q_SCRIPTABLE_TOKEN: case Q_SIGNALS_TOKEN: @@ -323,7 +322,6 @@ bool Moc::testFunctionAttribute(Token tok, FunctionDef *def) { switch (tok) { case Q_MOC_COMPAT_TOKEN: - case Q_QT3_SUPPORT_TOKEN: def->isCompat = true; return true; case Q_INVOKABLE_TOKEN: diff --git a/src/tools/moc/token.cpp b/src/tools/moc/token.cpp index 25b5b62d0f..0b702bb2a0 100644 --- a/src/tools/moc/token.cpp +++ b/src/tools/moc/token.cpp @@ -213,7 +213,6 @@ const char *tokenTypeName(Token t) case PP_MOC_FALSE: return "PP_MOC_FALSE"; case Q_DECLARE_METATYPE_TOKEN: return "Q_DECLARE_METATYPE_TOKEN"; case Q_MOC_COMPAT_TOKEN: return "Q_MOC_COMPAT_TOKEN"; - case Q_QT3_SUPPORT_TOKEN: return "Q_QT3_SUPPORT_TOKEN"; case Q_INVOKABLE_TOKEN: return "Q_INVOKABLE_TOKEN"; case Q_SCRIPTABLE_TOKEN: return "Q_SCRIPTABLE_TOKEN"; } diff --git a/src/tools/moc/token.h b/src/tools/moc/token.h index 04e69141b6..3a5f01d638 100644 --- a/src/tools/moc/token.h +++ b/src/tools/moc/token.h @@ -182,7 +182,6 @@ enum Token { Q_SLOT_TOKEN, Q_PRIVATE_SLOT_TOKEN, Q_MOC_COMPAT_TOKEN, - Q_QT3_SUPPORT_TOKEN, Q_INVOKABLE_TOKEN, Q_SCRIPTABLE_TOKEN, Q_PRIVATE_PROPERTY_TOKEN, diff --git a/src/tools/moc/util/generate_keywords.cpp b/src/tools/moc/util/generate_keywords.cpp index c40eb18c1e..0c6f331e64 100644 --- a/src/tools/moc/util/generate_keywords.cpp +++ b/src/tools/moc/util/generate_keywords.cpp @@ -243,7 +243,6 @@ static const Keyword keywords[] = { { "Q_SLOTS", "Q_SLOTS_TOKEN" }, { "Q_PRIVATE_SLOT", "Q_PRIVATE_SLOT_TOKEN" }, { "QT_MOC_COMPAT", "Q_MOC_COMPAT_TOKEN" }, - { "QT3_SUPPORT", "Q_QT3_SUPPORT_TOKEN" }, { "Q_INVOKABLE", "Q_INVOKABLE_TOKEN" }, { "Q_SIGNAL", "Q_SIGNAL_TOKEN" }, { "Q_SLOT", "Q_SLOT_TOKEN" }, diff --git a/src/tools/uic/qclass_lib_map.h b/src/tools/uic/qclass_lib_map.h index 5ad6a4a12c..d4a6c2c96c 100644 --- a/src/tools/uic/qclass_lib_map.h +++ b/src/tools/uic/qclass_lib_map.h @@ -1160,189 +1160,3 @@ QT_CLASS_LIB(QGraphicsSvgItem, QtSvg, qgraphicssvgitem.h) QT_CLASS_LIB(QSvgGenerator, QtSvg, qsvggenerator.h) QT_CLASS_LIB(QSvgRenderer, QtSvg, qsvgrenderer.h) QT_CLASS_LIB(QSvgWidget, QtSvg, qsvgwidget.h) -QT_CLASS_LIB(Q3CanvasItemList, Qt3Support, q3canvas.h) -QT_CLASS_LIB(Q3CanvasItem, Qt3Support, q3canvas.h) -QT_CLASS_LIB(Q3Canvas, Qt3Support, q3canvas.h) -QT_CLASS_LIB(Q3CanvasView, Qt3Support, q3canvas.h) -QT_CLASS_LIB(Q3CanvasPixmap, Qt3Support, q3canvas.h) -QT_CLASS_LIB(Q3CanvasPixmapArray, Qt3Support, q3canvas.h) -QT_CLASS_LIB(Q3CanvasSprite, Qt3Support, q3canvas.h) -QT_CLASS_LIB(Q3CanvasPolygonalItem, Qt3Support, q3canvas.h) -QT_CLASS_LIB(Q3CanvasRectangle, Qt3Support, q3canvas.h) -QT_CLASS_LIB(Q3CanvasPolygon, Qt3Support, q3canvas.h) -QT_CLASS_LIB(Q3CanvasSpline, Qt3Support, q3canvas.h) -QT_CLASS_LIB(Q3CanvasLine, Qt3Support, q3canvas.h) -QT_CLASS_LIB(Q3CanvasEllipse, Qt3Support, q3canvas.h) -QT_CLASS_LIB(Q3CanvasText, Qt3Support, q3canvas.h) -QT_CLASS_LIB(Q3FileIconProvider, Qt3Support, q3filedialog.h) -QT_CLASS_LIB(Q3FilePreview, Qt3Support, q3filedialog.h) -QT_CLASS_LIB(Q3FileDialog, Qt3Support, q3filedialog.h) -QT_CLASS_LIB(Q3ProgressDialog, Qt3Support, q3progressdialog.h) -QT_CLASS_LIB(Q3TabDialog, Qt3Support, q3tabdialog.h) -QT_CLASS_LIB(Q3Wizard, Qt3Support, q3wizard.h) -QT_CLASS_LIB(Q3IconDragItem, Qt3Support, q3iconview.h) -QT_CLASS_LIB(Q3IconDrag, Qt3Support, q3iconview.h) -QT_CLASS_LIB(Q3IconViewItem, Qt3Support, q3iconview.h) -QT_CLASS_LIB(Q3IconView, Qt3Support, q3iconview.h) -QT_CLASS_LIB(Q3ListBox, Qt3Support, q3listbox.h) -QT_CLASS_LIB(Q3ListBoxItem, Qt3Support, q3listbox.h) -QT_CLASS_LIB(Q3ListBoxText, Qt3Support, q3listbox.h) -QT_CLASS_LIB(Q3ListBoxPixmap, Qt3Support, q3listbox.h) -QT_CLASS_LIB(Q3ListViewItem, Qt3Support, q3listview.h) -QT_CLASS_LIB(Q3ListView, Qt3Support, q3listview.h) -QT_CLASS_LIB(Q3CheckListItem, Qt3Support, q3listview.h) -QT_CLASS_LIB(Q3ListViewItemIterator, Qt3Support, q3listview.h) -QT_CLASS_LIB(Q3TableSelection, Qt3Support, q3table.h) -QT_CLASS_LIB(Q3TableItem, Qt3Support, q3table.h) -QT_CLASS_LIB(Q3ComboTableItem, Qt3Support, q3table.h) -QT_CLASS_LIB(Q3CheckTableItem, Qt3Support, q3table.h) -QT_CLASS_LIB(Q3Table, Qt3Support, q3table.h) -QT_CLASS_LIB(Q3Dns, Qt3Support, q3dns.h) -QT_CLASS_LIB(Q3DnsSocket, Qt3Support, q3dns.h) -QT_CLASS_LIB(Q3Ftp, Qt3Support, q3ftp.h) -QT_CLASS_LIB(Q3HttpHeader, Qt3Support, q3http.h) -QT_CLASS_LIB(Q3HttpResponseHeader, Qt3Support, q3http.h) -QT_CLASS_LIB(Q3HttpRequestHeader, Qt3Support, q3http.h) -QT_CLASS_LIB(Q3Http, Qt3Support, q3http.h) -QT_CLASS_LIB(Q3LocalFs, Qt3Support, q3localfs.h) -QT_CLASS_LIB(Q3NetworkProtocolFactoryBase, Qt3Support, q3networkprotocol.h) -QT_CLASS_LIB(Q3NetworkProtocolFactory, Qt3Support, q3networkprotocol.h) -QT_CLASS_LIB(Q3NetworkProtocolDict, Qt3Support, q3networkprotocol.h) -QT_CLASS_LIB(Q3NetworkProtocol, Qt3Support, q3networkprotocol.h) -QT_CLASS_LIB(Q3NetworkOperation, Qt3Support, q3networkprotocol.h) -QT_CLASS_LIB(Q3ServerSocket, Qt3Support, q3serversocket.h) -QT_CLASS_LIB(Q3Socket, Qt3Support, q3socket.h) -QT_CLASS_LIB(Q3SocketDevice, Qt3Support, q3socketdevice.h) -QT_CLASS_LIB(Q3Url, Qt3Support, q3url.h) -QT_CLASS_LIB(Q3UrlOperator, Qt3Support, q3urloperator.h) -QT_CLASS_LIB(Q3Accel, Qt3Support, q3accel.h) -QT_CLASS_LIB(Q3BoxLayout, Qt3Support, q3boxlayout.h) -QT_CLASS_LIB(Q3HBoxLayout, Qt3Support, q3boxlayout.h) -QT_CLASS_LIB(Q3VBoxLayout, Qt3Support, q3boxlayout.h) -QT_CLASS_LIB(Q3DragObject, Qt3Support, q3dragobject.h) -QT_CLASS_LIB(Q3StoredDrag, Qt3Support, q3dragobject.h) -QT_CLASS_LIB(Q3TextDrag, Qt3Support, q3dragobject.h) -QT_CLASS_LIB(Q3ImageDrag, Qt3Support, q3dragobject.h) -QT_CLASS_LIB(Q3UriDrag, Qt3Support, q3dragobject.h) -QT_CLASS_LIB(Q3ColorDrag, Qt3Support, q3dragobject.h) -QT_CLASS_LIB(Q3DropSite, Qt3Support, q3dropsite.h) -QT_CLASS_LIB(Q3GridLayout, Qt3Support, q3gridlayout.h) -QT_CLASS_LIB(Q3MimeSourceFactory, Qt3Support, q3mimefactory.h) -QT_CLASS_LIB(Q3PolygonScanner, Qt3Support, q3polygonscanner.h) -QT_CLASS_LIB(Q3Process, Qt3Support, q3process.h) -QT_CLASS_LIB(Q3PaintDeviceMetrics, Qt3Support, q3paintdevicemetrics.h) -QT_CLASS_LIB(Q3Painter, Qt3Support, q3painter.h) -QT_CLASS_LIB(Q3Picture, Qt3Support, q3picture.h) -QT_CLASS_LIB(Q3PointArray, Qt3Support, q3pointarray.h) -QT_CLASS_LIB(Q3DataBrowser, Qt3Support, q3databrowser.h) -QT_CLASS_LIB(Q3DataTable, Qt3Support, q3datatable.h) -QT_CLASS_LIB(Q3DataView, Qt3Support, q3dataview.h) -QT_CLASS_LIB(Q3EditorFactory, Qt3Support, q3editorfactory.h) -QT_CLASS_LIB(Q3SqlCursor, Qt3Support, q3sqlcursor.h) -QT_CLASS_LIB(Q3SqlEditorFactory, Qt3Support, q3sqleditorfactory.h) -QT_CLASS_LIB(Q3SqlFieldInfo, Qt3Support, q3sqlfieldinfo.h) -QT_CLASS_LIB(Q3SqlForm, Qt3Support, q3sqlform.h) -QT_CLASS_LIB(Q3SqlPropertyMap, Qt3Support, q3sqlpropertymap.h) -QT_CLASS_LIB(Q3SqlFieldInfoList, Qt3Support, q3sqlrecordinfo.h) -QT_CLASS_LIB(Q3SqlRecordInfo, Qt3Support, q3sqlrecordinfo.h) -QT_CLASS_LIB(Q3SqlSelectCursor, Qt3Support, q3sqlselectcursor.h) -QT_CLASS_LIB(Q3MultiLineEdit, Qt3Support, q3multilineedit.h) -QT_CLASS_LIB(Q3SimpleRichText, Qt3Support, q3simplerichtext.h) -QT_CLASS_LIB(Q3StyleSheetItem, Qt3Support, q3stylesheet.h) -QT_CLASS_LIB(Q3StyleSheet, Qt3Support, q3stylesheet.h) -QT_CLASS_LIB(Q3SyntaxHighlighter, Qt3Support, q3syntaxhighlighter.h) -QT_CLASS_LIB(Q3TextBrowser, Qt3Support, q3textbrowser.h) -QT_CLASS_LIB(Q3TextEditOptimPrivate, Qt3Support, q3textedit.h) -QT_CLASS_LIB(Q3TextEdit, Qt3Support, q3textedit.h) -QT_CLASS_LIB(Q3TextStream, Qt3Support, q3textstream.h) -QT_CLASS_LIB(Q3TSFUNC, Qt3Support, q3textstream.h) -QT_CLASS_LIB(Q3TextView, Qt3Support, q3textview.h) -QT_CLASS_LIB(Q3AsciiCache, Qt3Support, q3asciicache.h) -QT_CLASS_LIB(Q3AsciiCacheIterator, Qt3Support, q3asciicache.h) -QT_CLASS_LIB(Q3AsciiDict, Qt3Support, q3asciidict.h) -QT_CLASS_LIB(Q3AsciiDictIterator, Qt3Support, q3asciidict.h) -QT_CLASS_LIB(Q3Cache, Qt3Support, q3cache.h) -QT_CLASS_LIB(Q3CacheIterator, Qt3Support, q3cache.h) -QT_CLASS_LIB(Q3CleanupHandler, Qt3Support, q3cleanuphandler.h) -QT_CLASS_LIB(Q3SingleCleanupHandler, Qt3Support, q3cleanuphandler.h) -QT_CLASS_LIB(Q3CString, Qt3Support, q3cstring.h) -QT_CLASS_LIB(Q3DeepCopy, Qt3Support, q3deepcopy.h) -QT_CLASS_LIB(Q3Dict, Qt3Support, q3dict.h) -QT_CLASS_LIB(Q3DictIterator, Qt3Support, q3dict.h) -QT_CLASS_LIB(Q3GArray, Qt3Support, q3garray.h) -QT_CLASS_LIB(Q3GCache, Qt3Support, q3gcache.h) -QT_CLASS_LIB(Q3GCacheIterator, Qt3Support, q3gcache.h) -QT_CLASS_LIB(Q3BaseBucket, Qt3Support, q3gdict.h) -QT_CLASS_LIB(Q3StringBucket, Qt3Support, q3gdict.h) -QT_CLASS_LIB(Q3AsciiBucket, Qt3Support, q3gdict.h) -QT_CLASS_LIB(Q3IntBucket, Qt3Support, q3gdict.h) -QT_CLASS_LIB(Q3PtrBucket, Qt3Support, q3gdict.h) -QT_CLASS_LIB(Q3GDict, Qt3Support, q3gdict.h) -QT_CLASS_LIB(Q3GDictIterator, Qt3Support, q3gdict.h) -QT_CLASS_LIB(Q3LNode, Qt3Support, q3glist.h) -QT_CLASS_LIB(Q3GList, Qt3Support, q3glist.h) -QT_CLASS_LIB(Q3GListIterator, Qt3Support, q3glist.h) -QT_CLASS_LIB(Q3GListStdIterator, Qt3Support, q3glist.h) -QT_CLASS_LIB(Q3GVector, Qt3Support, q3gvector.h) -QT_CLASS_LIB(Q3IntCache, Qt3Support, q3intcache.h) -QT_CLASS_LIB(Q3IntCacheIterator, Qt3Support, q3intcache.h) -QT_CLASS_LIB(Q3IntDict, Qt3Support, q3intdict.h) -QT_CLASS_LIB(Q3IntDictIterator, Qt3Support, q3intdict.h) -QT_CLASS_LIB(Q3MemArray, Qt3Support, q3memarray.h) -QT_CLASS_LIB(Q3ObjectDictionary, Qt3Support, q3objectdict.h) -QT_CLASS_LIB(Q3PtrCollection, Qt3Support, q3ptrcollection.h) -QT_CLASS_LIB(Q3PtrDict, Qt3Support, q3ptrdict.h) -QT_CLASS_LIB(Q3PtrDictIterator, Qt3Support, q3ptrdict.h) -QT_CLASS_LIB(Q3PtrListStdIterator, Qt3Support, q3ptrlist.h) -QT_CLASS_LIB(Q3PtrList, Qt3Support, q3ptrlist.h) -QT_CLASS_LIB(Q3PtrListIterator, Qt3Support, q3ptrlist.h) -QT_CLASS_LIB(Q3PtrQueue, Qt3Support, q3ptrqueue.h) -QT_CLASS_LIB(Q3PtrStack, Qt3Support, q3ptrstack.h) -QT_CLASS_LIB(Q3PtrVector, Qt3Support, q3ptrvector.h) -QT_CLASS_LIB(Q3Semaphore, Qt3Support, q3semaphore.h) -QT_CLASS_LIB(Q3Shared, Qt3Support, q3shared.h) -QT_CLASS_LIB(Q3Signal, Qt3Support, q3signal.h) -QT_CLASS_LIB(Q3SortedList, Qt3Support, q3sortedlist.h) -QT_CLASS_LIB(Q3StrListIterator, Qt3Support, q3strlist.h) -QT_CLASS_LIB(Q3StrListIterator, Qt3Support, q3strlist.h) -QT_CLASS_LIB(Q3StrList, Qt3Support, q3strlist.h) -QT_CLASS_LIB(Q3StrIList, Qt3Support, q3strlist.h) -QT_CLASS_LIB(Q3StrVec, Qt3Support, q3strvec.h) -QT_CLASS_LIB(Q3StrIVec, Qt3Support, q3strvec.h) -QT_CLASS_LIB(Q3ValueListIterator, Qt3Support, q3valuelist.h) -QT_CLASS_LIB(Q3ValueListConstIterator, Qt3Support, q3valuelist.h) -QT_CLASS_LIB(Q3ValueList, Qt3Support, q3valuelist.h) -QT_CLASS_LIB(Q3ValueStack, Qt3Support, q3valuestack.h) -QT_CLASS_LIB(Q3ValueVector, Qt3Support, q3valuevector.h) -QT_CLASS_LIB(Q3Action, Qt3Support, q3action.h) -QT_CLASS_LIB(Q3ActionGroup, Qt3Support, q3action.h) -QT_CLASS_LIB(Q3Button, Qt3Support, q3button.h) -QT_CLASS_LIB(Q3ButtonGroup, Qt3Support, q3buttongroup.h) -QT_CLASS_LIB(Q3VButtonGroup, Qt3Support, q3buttongroup.h) -QT_CLASS_LIB(Q3HButtonGroup, Qt3Support, q3buttongroup.h) -QT_CLASS_LIB(Q3ComboBox, Qt3Support, q3combobox.h) -QT_CLASS_LIB(Q3DateTimeEditBase, Qt3Support, q3datetimeedit.h) -QT_CLASS_LIB(Q3DateEdit, Qt3Support, q3datetimeedit.h) -QT_CLASS_LIB(Q3TimeEdit, Qt3Support, q3datetimeedit.h) -QT_CLASS_LIB(Q3DateTimeEdit, Qt3Support, q3datetimeedit.h) -QT_CLASS_LIB(Q3DockAreaLayout, Qt3Support, q3dockarea.h) -QT_CLASS_LIB(Q3DockArea, Qt3Support, q3dockarea.h) -QT_CLASS_LIB(Q3DockWindow, Qt3Support, q3dockwindow.h) -QT_CLASS_LIB(Q3Frame, Qt3Support, q3frame.h) -QT_CLASS_LIB(Q3Grid, Qt3Support, q3grid.h) -QT_CLASS_LIB(Q3GridView, Qt3Support, q3gridview.h) -QT_CLASS_LIB(Q3GroupBox, Qt3Support, q3groupbox.h) -QT_CLASS_LIB(Q3HBox, Qt3Support, q3hbox.h) -QT_CLASS_LIB(Q3Header, Qt3Support, q3header.h) -QT_CLASS_LIB(Q3HGroupBox, Qt3Support, q3hgroupbox.h) -QT_CLASS_LIB(Q3MainWindow, Qt3Support, q3mainwindow.h) -QT_CLASS_LIB(Q3PopupMenu, Qt3Support, q3popupmenu.h) -QT_CLASS_LIB(Q3ProgressBar, Qt3Support, q3progressbar.h) -QT_CLASS_LIB(Q3RangeControl, Qt3Support, q3rangecontrol.h) -QT_CLASS_LIB(Q3SpinWidget, Qt3Support, q3rangecontrol.h) -QT_CLASS_LIB(Q3ScrollView, Qt3Support, q3scrollview.h) -QT_CLASS_LIB(Q3ToolBar, Qt3Support, q3toolbar.h) -QT_CLASS_LIB(Q3VBox, Qt3Support, q3vbox.h) -QT_CLASS_LIB(Q3VGroupBox, Qt3Support, q3vgroupbox.h) -QT_CLASS_LIB(Q3WhatsThis, Qt3Support, q3whatsthis.h) -QT_CLASS_LIB(Q3WidgetStack, Qt3Support, q3widgetstack.h) diff --git a/src/widgets/widgets/qfocusframe.cpp b/src/widgets/widgets/qfocusframe.cpp index 86187c2c4a..2dcf973dde 100644 --- a/src/widgets/widgets/qfocusframe.cpp +++ b/src/widgets/widgets/qfocusframe.cpp @@ -147,7 +147,7 @@ void QFocusFrame::initStyleOption(QStyleOption *option) const The focus frame will not monitor \a parent for updates but rather can be placed manually or by using QFocusFrame::setWidget. A QFocusFrame sets Qt::WA_NoChildEventsForParent attribute; as a - result the parent will not receive a QEvent::ChildInserted event, + result the parent will not receive a QEvent::ChildAdded event, this will make it possible to manually set the geometry of the QFocusFrame inside of a QSplitter or other child event monitoring widget. diff --git a/tests/auto/corelib/kernel/qobject/tst_qobject.cpp b/tests/auto/corelib/kernel/qobject/tst_qobject.cpp index cec25136b6..2c99d1b556 100644 --- a/tests/auto/corelib/kernel/qobject/tst_qobject.cpp +++ b/tests/auto/corelib/kernel/qobject/tst_qobject.cpp @@ -97,7 +97,7 @@ private slots: void recursiveSignalEmission(); #endif void blockingQueuedConnection(); - void compatibilityChildInsertedEvents(); + void childEvents(); void installEventFilter(); void deleteSelfInSlot(); void disconnectSelfInSlotAndDeleteAfterEmit(); @@ -2868,7 +2868,7 @@ private: EventList events; }; -void tst_QObject::compatibilityChildInsertedEvents() +void tst_QObject::childEvents() { EventSpy::EventList expected; @@ -2889,7 +2889,7 @@ void tst_QObject::compatibilityChildInsertedEvents() } { - // 2 children, so we expect 2 ChildAdded and 2 ChildInserted events + // 2 children, so we expect 2 ChildAdded events QObject object; EventSpy spy; object.installEventFilter(&spy); @@ -2920,7 +2920,7 @@ void tst_QObject::compatibilityChildInsertedEvents() { // 2 children, but one is reparented away, so we expect: - // 2 ChildAdded, 1 ChildRemoved, and 1 ChildInserted + // 2 ChildAdded, 1 ChildRemoved QObject object; EventSpy spy; object.installEventFilter(&spy); diff --git a/tests/auto/widgets/kernel/qwidget/tst_qwidget.cpp b/tests/auto/widgets/kernel/qwidget/tst_qwidget.cpp index 28daf0ac02..bca6c2b9ea 100644 --- a/tests/auto/widgets/kernel/qwidget/tst_qwidget.cpp +++ b/tests/auto/widgets/kernel/qwidget/tst_qwidget.cpp @@ -301,7 +301,7 @@ private slots: void clean_qt_x11_enforce_cursor(); #endif - void compatibilityChildInsertedEvents(); + void childEvents(); void render(); void renderInvisible(); void renderWithPainter(); @@ -5806,7 +5806,7 @@ private: EventList events; }; -void tst_QWidget::compatibilityChildInsertedEvents() +void tst_QWidget::childEvents() { EventRecorder::EventList expected; bool accessibilityEnabled = false; diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp index 8ae06c3c8a..3251abc421 100644 --- a/tools/configure/configureapp.cpp +++ b/tools/configure/configureapp.cpp @@ -317,7 +317,6 @@ Configure::Configure(int& argc, char** argv) dictionary[ "LIBMNG" ] = "auto"; dictionary[ "FREETYPE" ] = "yes"; - dictionary[ "QT3SUPPORT" ] = "no"; dictionary[ "ACCESSIBILITY" ] = "yes"; dictionary[ "OPENGL" ] = "yes"; dictionary[ "OPENVG" ] = "no"; @@ -685,10 +684,6 @@ void Configure::parseCmdLine() else if (configCmdLine.at(i) == "-no-style-cde") dictionary[ "STYLE_CDE" ] = "no"; - // Qt 3 Support --------------------------------------------- - else if (configCmdLine.at(i) == "-no-qt3support") - dictionary[ "QT3SUPPORT" ] = "no"; - // Work around compiler nesting limitation else continueElse[1] = true; @@ -1444,7 +1439,6 @@ void Configure::applySpecSpecifics() dictionary[ "STYLE_MOTIF" ] = "no"; dictionary[ "STYLE_CDE" ] = "no"; dictionary[ "FREETYPE" ] = "no"; - dictionary[ "QT3SUPPORT" ] = "no"; dictionary[ "OPENGL" ] = "no"; dictionary[ "OPENSSL" ] = "no"; dictionary[ "STL" ] = "no"; @@ -1476,7 +1470,6 @@ void Configure::applySpecSpecifics() dictionary[ "KBD_DRIVERS" ] = "tty"; dictionary[ "GFX_DRIVERS" ] = "linuxfb vnc"; dictionary[ "MOUSE_DRIVERS" ] = "pc linuxtp"; - dictionary[ "QT3SUPPORT" ] = "no"; dictionary[ "OPENGL" ] = "no"; dictionary[ "EXCEPTIONS" ] = "no"; dictionary[ "DBUS"] = "no"; @@ -1552,7 +1545,7 @@ bool Configure::displayHelp() "[-qt-zlib] [-system-zlib] [-no-gif] [-no-libpng]\n" "[-qt-libpng] [-system-libpng] [-no-libtiff] [-qt-libtiff]\n" "[-system-libtiff] [-no-libjpeg] [-qt-libjpeg] [-system-libjpeg]\n" - "[-no-libmng] [-qt-libmng] [-system-libmng] [-no-qt3support] [-mmx]\n" + "[-no-libmng] [-qt-libmng] [-system-libmng] [-mmx]\n" "[-no-mmx] [-3dnow] [-no-3dnow] [-sse] [-no-sse] [-sse2] [-no-sse2]\n" "[-no-iwmmxt] [-iwmmxt] [-openssl] [-openssl-linked]\n" "[-no-openssl] [-no-dbus] [-dbus] [-dbus-linked] [-platform ]\n" @@ -1636,7 +1629,6 @@ bool Configure::displayHelp() desc( "-system-sqlite", "Use sqlite from the operating system.\n"); - desc("QT3SUPPORT", "no","-no-qt3support", "Disables the Qt 3 support functionality.\n"); desc("OPENGL", "no","-no-opengl", "Disables OpenGL functionality\n"); desc("OPENGL", "no","-opengl ", "Enable OpenGL support with specified API version.\n" "Available values for :"); @@ -2438,9 +2430,6 @@ void Configure::generateOutputVars() if (!dictionary["QT_LFLAGS_SQLITE"].isEmpty()) qmakeVars += "QT_LFLAGS_SQLITE += " + escapeSeparators(dictionary["QT_LFLAGS_SQLITE"]); - if (dictionary[ "QT3SUPPORT" ] == "yes") - qtConfig += "gui-qt3support"; - if (dictionary[ "OPENGL" ] == "yes") qtConfig += "opengl"; @@ -3225,7 +3214,6 @@ void Configure::displayConfig() cout << "V8 support.................." << dictionary[ "V8" ] << endl; cout << "QtScript support............" << dictionary[ "SCRIPT" ] << endl; cout << "QtScriptTools support......." << dictionary[ "SCRIPTTOOLS" ] << endl; - cout << "Qt3 compatibility..........." << dictionary[ "QT3SUPPORT" ] << endl; cout << "DirectWrite support........." << dictionary[ "DIRECTWRITE" ] << endl << endl; cout << "Third Party Libraries:" << endl; -- cgit v1.2.3 From a203debb0bae8b342372f18dd0c5db7a33ff2b44 Mon Sep 17 00:00:00 2001 From: Jan-Arve Saether Date: Thu, 22 Dec 2011 11:21:47 +0100 Subject: Fix regression, make sure hit testing work on windows again. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The previous code did not make much sense This regressed due to 74c9f9d83f9f5cb934d0b62b468c74df5a3b9a0d Change-Id: Ia4374623257863edca706a1c3d8b565d0c6bd4c1 Reviewed-by: Morten Johan Sørvig Reviewed-by: Frederik Gladhorn --- .../platforms/windows/qwindowsaccessibility.cpp | 50 ++++++++++++++-------- 1 file changed, 31 insertions(+), 19 deletions(-) diff --git a/src/plugins/platforms/windows/qwindowsaccessibility.cpp b/src/plugins/platforms/windows/qwindowsaccessibility.cpp index daf30ce027..556d516bc0 100644 --- a/src/plugins/platforms/windows/qwindowsaccessibility.cpp +++ b/src/plugins/platforms/windows/qwindowsaccessibility.cpp @@ -746,9 +746,28 @@ HRESULT STDMETHODCALLTYPE QWindowsAccessible::Invoke(long dispIdMember, const _G /* IAccessible + +IAccessible::accHitTest documents the value returned in pvarID like this: + +| *Point location* | *vt member* | *Value member* | ++========================================================+=============+=========================+ +| Outside of the object's boundaries, and either inside | VT_EMPTY | None. | +| or outside of the object's bounding rectangle. | | | ++--------------------------------------------------------+-------------+-------------------------+ +| Within the object but not within a child element or a | VT_I4 | lVal is CHILDID_SELF | +| child object. | | | ++--------------------------------------------------------+-------------+-------------------------+ +| Within a child element. | VT_I4 | lVal contains | +| | | the child ID. | ++--------------------------------------------------------+-------------+-------------------------+ +| Within a child object. | VT_DISPATCH | pdispVal is set to the | +| | | child object's IDispatch| +| | | interface pointer | ++--------------------------------------------------------+-------------+-------------------------+ */ HRESULT STDMETHODCALLTYPE QWindowsAccessible::accHitTest(long xLeft, long yTop, VARIANT *pvarID) { + showDebug(__FUNCTION__, accessible); if (!accessible->isValid()) return E_FAIL; @@ -757,29 +776,22 @@ HRESULT STDMETHODCALLTYPE QWindowsAccessible::accHitTest(long xLeft, long yTop, if (child == 0) { // no child found, return this item if it contains the coordinates if (accessible->rect().contains(xLeft, yTop)) { - IDispatch *iface = 0; - QueryInterface(IID_IDispatch, (void**)&iface); - if (iface) { - (*pvarID).vt = VT_DISPATCH; - (*pvarID).pdispVal = iface; - return S_OK; - } + (*pvarID).vt = VT_I4; + (*pvarID).lVal = CHILDID_SELF; + return S_OK; } - (*pvarID).vt = VT_EMPTY; - return S_FALSE; - } - - QWindowsAccessible* wacc = new QWindowsAccessible(child); - IDispatch *iface = 0; - wacc->QueryInterface(IID_IDispatch, (void**)&iface); - if (iface) { - (*pvarID).vt = VT_DISPATCH; - (*pvarID).pdispVal = iface; - return S_OK; } else { - delete wacc; + QWindowsAccessible* wacc = new QWindowsAccessible(child); + IDispatch *iface = 0; + wacc->QueryInterface(IID_IDispatch, (void**)&iface); + if (iface) { + (*pvarID).vt = VT_DISPATCH; + (*pvarID).pdispVal = iface; + return S_OK; + } } + // Did not find anything (*pvarID).vt = VT_EMPTY; return S_FALSE; } -- cgit v1.2.3 From 57d2306f44889b2a24bba804c9e9473e45005c6a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B8rgen=20Lind?= Date: Fri, 23 Dec 2011 13:51:07 +0100 Subject: Link to X and Xrender libs in glxconvenience Change-Id: I54b2704be678f2c3b9ab8d24d044977c9c01e98e Reviewed-by: Thiago Macieira --- src/platformsupport/glxconvenience/glxconvenience.pri | 1 + 1 file changed, 1 insertion(+) diff --git a/src/platformsupport/glxconvenience/glxconvenience.pri b/src/platformsupport/glxconvenience/glxconvenience.pri index 5b65e13306..bbca6b2460 100644 --- a/src/platformsupport/glxconvenience/glxconvenience.pri +++ b/src/platformsupport/glxconvenience/glxconvenience.pri @@ -1,5 +1,6 @@ contains(QT_CONFIG,xlib) { contains(QT_CONFIG,opengl):!contains(QT_CONFIG,opengles2) { + LIBS += $$QMAKE_LIBS_X11 -lXrender HEADERS += $$PWD/qglxconvenience_p.h SOURCES += $$PWD/qglxconvenience.cpp } -- cgit v1.2.3 From 34ebd0397e4d3fe708780356cded7d85f3dae259 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Sat, 17 Dec 2011 00:47:13 +0100 Subject: Fix cmake files for static builds. Change-Id: I3864017df6fc0daeb31b389c8883401d344730bf Reviewed-by: Alexander Neundorf Reviewed-by: Stephen Kelly --- mkspecs/cmake/Qt5BasicConfig.cmake.in | 6 +++++- mkspecs/features/create_cmake.prf | 33 +++++++++++++++++++++++++-------- 2 files changed, 30 insertions(+), 9 deletions(-) diff --git a/mkspecs/cmake/Qt5BasicConfig.cmake.in b/mkspecs/cmake/Qt5BasicConfig.cmake.in index 55f7909ad6..2c8cd1739a 100644 --- a/mkspecs/cmake/Qt5BasicConfig.cmake.in +++ b/mkspecs/cmake/Qt5BasicConfig.cmake.in @@ -16,7 +16,11 @@ set(_Qt5_MODULE_DEPENDENCIES \"$${CMAKE_MODULE_DEPS}\") if (NOT _Qt5$${CMAKE_MODULE_NAME}_target) set(_Qt5$${CMAKE_MODULE_NAME}_target 1) - add_library(Qt5::$${CMAKE_MODULE_NAME} SHARED IMPORTED) + if (\"$${CMAKE_STATIC_TYPE}\" STREQUAL \"\") + add_library(Qt5::$${CMAKE_MODULE_NAME} SHARED IMPORTED) + else() + add_library(Qt5::$${CMAKE_MODULE_NAME} STATIC IMPORTED) + endif() if (NOT \"$${CMAKE_BUILD_IS_FRAMEWORK}\" STREQUAL \"\") set_property(TARGET Qt5::$${CMAKE_MODULE_NAME} PROPERTY FRAMEWORK 1) endif() diff --git a/mkspecs/features/create_cmake.prf b/mkspecs/features/create_cmake.prf index 7f2a344d37..0a14b5cea4 100644 --- a/mkspecs/features/create_cmake.prf +++ b/mkspecs/features/create_cmake.prf @@ -35,18 +35,33 @@ macx { CMAKE_LIB_FILE_LOCATION_RELEASE = Qt$${CMAKE_MODULE_NAME}$${QT_LIBINFIX}.framework/Qt$${CMAKE_MODULE_NAME}$${QT_LIBINFIX} CMAKE_BUILD_IS_FRAMEWORK = "true" } else { - CMAKE_LIB_FILE_LOCATION_DEBUG = libQt$${CMAKE_MODULE_NAME}$${QT_LIBINFIX}.$$eval(QT.$${MODULE}.VERSION).dylib - CMAKE_LIB_FILE_LOCATION_RELEASE = libQt$${CMAKE_MODULE_NAME}$${QT_LIBINFIX}.$$eval(QT.$${MODULE}.VERSION).dylib + static { + CMAKE_LIB_FILE_LOCATION_DEBUG = libQt$${CMAKE_MODULE_NAME}$${QT_LIBINFIX}.a + CMAKE_LIB_FILE_LOCATION_RELEASE = libQt$${CMAKE_MODULE_NAME}$${QT_LIBINFIX}.a + } else { + CMAKE_LIB_FILE_LOCATION_DEBUG = libQt$${CMAKE_MODULE_NAME}$${QT_LIBINFIX}.$$eval(QT.$${MODULE}.VERSION).dylib + CMAKE_LIB_FILE_LOCATION_RELEASE = libQt$${CMAKE_MODULE_NAME}$${QT_LIBINFIX}.$$eval(QT.$${MODULE}.VERSION).dylib + } } } else:win32 { - CMAKE_LIB_FILE_LOCATION_DEBUG = Qt$${CMAKE_MODULE_NAME}$${QT_LIBINFIX}d$$eval(QT.$${MODULE}.MAJOR_VERSION).dll - CMAKE_LIB_FILE_LOCATION_RELEASE = Qt$${CMAKE_MODULE_NAME}$${QT_LIBINFIX}$$eval(QT.$${MODULE}.MAJOR_VERSION).dll - CMAKE_IMPLIB_FILE_LOCATION_DEBUG = Qt$${CMAKE_MODULE_NAME}$${QT_LIBINFIX}d$$eval(QT.$${MODULE}.MAJOR_VERSION).lib - CMAKE_IMPLIB_FILE_LOCATION_RELEASE = Qt$${CMAKE_MODULE_NAME}$${QT_LIBINFIX}$$eval(QT.$${MODULE}.MAJOR_VERSION).lib + static { + CMAKE_IMPLIB_FILE_LOCATION_DEBUG = Qt$${CMAKE_MODULE_NAME}$${QT_LIBINFIX}d.lib + CMAKE_IMPLIB_FILE_LOCATION_RELEASE = Qt$${CMAKE_MODULE_NAME}$${QT_LIBINFIX}.lib + } else { + CMAKE_LIB_FILE_LOCATION_DEBUG = Qt$${CMAKE_MODULE_NAME}$${QT_LIBINFIX}d$$eval(QT.$${MODULE}.MAJOR_VERSION).dll + CMAKE_LIB_FILE_LOCATION_RELEASE = Qt$${CMAKE_MODULE_NAME}$${QT_LIBINFIX}$$eval(QT.$${MODULE}.MAJOR_VERSION).dll + CMAKE_IMPLIB_FILE_LOCATION_DEBUG = Qt$${CMAKE_MODULE_NAME}$${QT_LIBINFIX}d$$eval(QT.$${MODULE}.MAJOR_VERSION).lib + CMAKE_IMPLIB_FILE_LOCATION_RELEASE = Qt$${CMAKE_MODULE_NAME}$${QT_LIBINFIX}$$eval(QT.$${MODULE}.MAJOR_VERSION).lib + } CMAKE_BIN_SUFFIX = ".exe" } else { - CMAKE_LIB_FILE_LOCATION_DEBUG = libQt$${CMAKE_MODULE_NAME}$${QT_LIBINFIX}.so.$$eval(QT.$${MODULE}.VERSION) - CMAKE_LIB_FILE_LOCATION_RELEASE = libQt$${CMAKE_MODULE_NAME}$${QT_LIBINFIX}.so.$$eval(QT.$${MODULE}.VERSION) + static { + CMAKE_LIB_FILE_LOCATION_DEBUG = libQt$${CMAKE_MODULE_NAME}$${QT_LIBINFIX}.a + CMAKE_LIB_FILE_LOCATION_RELEASE = libQt$${CMAKE_MODULE_NAME}$${QT_LIBINFIX}.a + } else { + CMAKE_LIB_FILE_LOCATION_DEBUG = libQt$${CMAKE_MODULE_NAME}$${QT_LIBINFIX}.so.$$eval(QT.$${MODULE}.VERSION) + CMAKE_LIB_FILE_LOCATION_RELEASE = libQt$${CMAKE_MODULE_NAME}$${QT_LIBINFIX}.so.$$eval(QT.$${MODULE}.VERSION) + } } debug_type = @@ -57,6 +72,8 @@ debug_and_release|release:release_type = release INSTALLS += cmake_qt5_module_files +static:CMAKE_STATIC_TYPE = true + cmake_config_file.input = $$PWD/../cmake/Qt5BasicConfig.cmake.in cmake_config_file.output = $$eval(QT.$${MODULE}.libs)/cmake/Qt5$${CMAKE_MODULE_NAME}/Qt5$${CMAKE_MODULE_NAME}Config.cmake -- cgit v1.2.3 From c580be804fc2b18eee2e14ee978621b1386fbea4 Mon Sep 17 00:00:00 2001 From: Giuseppe D'Angelo Date: Wed, 21 Dec 2011 23:43:00 +0000 Subject: Remove unused -DQT_NO_PCRE from qmake makefiles That define is not used anymore when building qmake. Change-Id: I6a478cf4bb6cc8dfe87a3cc96f1d520b08e4ba6f Reviewed-by: Robin Burchell Reviewed-by: Thiago Macieira --- qmake/Makefile.unix | 1 - qmake/Makefile.win32 | 2 +- qmake/Makefile.win32-g++ | 2 +- qmake/Makefile.win32-g++-sh | 2 +- 4 files changed, 3 insertions(+), 4 deletions(-) diff --git a/qmake/Makefile.unix b/qmake/Makefile.unix index 647c78edb9..286e2ebcbc 100644 --- a/qmake/Makefile.unix +++ b/qmake/Makefile.unix @@ -74,7 +74,6 @@ CPPFLAGS = -g -I. -Igenerators -Igenerators/unix -Igenerators/win32 \ -I$(BUILD_PATH)/include/QtCore/$(QT_VERSION) -I$(BUILD_PATH)/include/QtCore/$(QT_VERSION)/QtCore \ -I$(BUILD_PATH)/src/corelib/global -I$(BUILD_PATH)/src/corelib/xml \ -I$(SOURCE_PATH)/tools/shared \ - -DQT_NO_PCRE \ -DQT_BUILD_QMAKE -DQT_BOOTSTRAPPED \ -DQT_NO_TEXTCODEC -DQT_NO_UNICODETABLES -DQT_NO_COMPONENT -DQT_NO_STL \ -DQT_NO_COMPRESS -I$(QMAKESPEC) -DHAVE_QCONFIG_CPP -DQT_NO_THREAD -DQT_NO_QOBJECT \ diff --git a/qmake/Makefile.win32 b/qmake/Makefile.win32 index 404b2c7171..e767786001 100644 --- a/qmake/Makefile.win32 +++ b/qmake/Makefile.win32 @@ -40,7 +40,7 @@ CFLAGS_BARE = -c -Fo./ \ -I$(SOURCE_PATH)\tools\shared \ -DQT_NO_TEXTCODEC -DQT_NO_UNICODETABLES -DQT_LITE_COMPONENT -DQT_NODLL -DQT_NO_STL \ -DQT_NO_COMPRESS -DUNICODE -DHAVE_QCONFIG_CPP -DQT_BUILD_QMAKE -DQT_NO_THREAD \ - -DQT_NO_QOBJECT -DQT_NO_GEOM_VARIANT -DQT_NO_DATASTREAM -DQT_NO_PCRE -DQT_BOOTSTRAPPED + -DQT_NO_QOBJECT -DQT_NO_GEOM_VARIANT -DQT_NO_DATASTREAM -DQT_BOOTSTRAPPED CFLAGS = -Yuqmake_pch.h -FIqmake_pch.h -Fpqmake_pch.pch $(CFLAGS_BARE) $(CFLAGS) CXXFLAGS_BARE = $(CFLAGS_BARE) diff --git a/qmake/Makefile.win32-g++ b/qmake/Makefile.win32-g++ index 28dbe1cc55..443dba390a 100644 --- a/qmake/Makefile.win32-g++ +++ b/qmake/Makefile.win32-g++ @@ -22,7 +22,7 @@ CFLAGS = -c -o$@ -O \ -I$(BUILD_PATH)/src/corelib/xml \ -I$(SOURCE_PATH)/mkspecs/win32-g++ \ -I$(SOURCE_PATH)/tools/shared \ - -DQT_NO_TEXTCODEC -DQT_NO_UNICODETABLES -DQT_LITE_COMPONENT -DQT_NO_PCRE \ + -DQT_NO_TEXTCODEC -DQT_NO_UNICODETABLES -DQT_LITE_COMPONENT \ -DQT_NODLL -DQT_NO_STL -DQT_NO_COMPRESS -DUNICODE -DHAVE_QCONFIG_CPP \ -DQT_BUILD_QMAKE -DQT_NO_THREAD -DQT_NO_QOBJECT -DQT_NO_GEOM_VARIANT -DQT_NO_DATASTREAM \ -DQT_BOOTSTRAPPED diff --git a/qmake/Makefile.win32-g++-sh b/qmake/Makefile.win32-g++-sh index f68e3bf46d..bc8356e178 100644 --- a/qmake/Makefile.win32-g++-sh +++ b/qmake/Makefile.win32-g++-sh @@ -22,7 +22,7 @@ CFLAGS = -c -o$@ -O \ -I$(BUILD_PATH)/src/corelib/xml \ -I$(SOURCE_PATH)/mkspecs/win32-g++ \ -I$(SOURCE_PATH)/tools/shared \ - -DQT_NO_TEXTCODEC -DQT_NO_UNICODETABLES -DQT_LITE_COMPONENT -DQT_NO_PCRE \ + -DQT_NO_TEXTCODEC -DQT_NO_UNICODETABLES -DQT_LITE_COMPONENT \ -DQT_NODLL -DQT_NO_STL -DQT_NO_COMPRESS -DUNICODE -DHAVE_QCONFIG_CPP \ -DQT_BUILD_QMAKE -DQT_NO_THREAD -DQT_NO_QOBJECT -DQT_NO_GEOM_VARIANT -DQT_NO_DATASTREAM \ -DQT_BOOTSTRAPPED -- cgit v1.2.3 From 1cb96a6809ee99d067ad6a373fcfc69067e683bb Mon Sep 17 00:00:00 2001 From: Holger Hans Peter Freyther Date: Fri, 23 Dec 2011 22:29:13 +0100 Subject: v8: Change the selection of Operating System Instead of doing "I want Linux and do it by selecting Unix and discarding everything not implementing the Linux ABI". Select the other operating system first and have a catch all Linux/Unix anchor. !symbian is left inside as it does not hurt right now but could probably be removed before Qt 5.0.0. Change-Id: I731d8349e4f9c0ac33d547523f0a0f422e994e54 Reviewed-by: Aaron Kennedy --- src/v8/v8.pri | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/src/v8/v8.pri b/src/v8/v8.pri index 11b74c8151..c3a55490a7 100644 --- a/src/v8/v8.pri +++ b/src/v8/v8.pri @@ -231,17 +231,15 @@ SOURCES += \ $$V8SRC/mips/stub-cache-mips.cc } -unix:!symbian:!macx { -SOURCES += \ - $$V8SRC/platform-linux.cc \ - $$V8SRC/platform-posix.cc -} - #os:macos macx { SOURCES += \ $$V8SRC/platform-macos.cc \ $$V8SRC/platform-posix.cc +} else:unix:!symbian { +SOURCES += \ + $$V8SRC/platform-linux.cc \ + $$V8SRC/platform-posix.cc } win32 { -- cgit v1.2.3 From 03b6cb93455475c7e36838e298cefa6f91c1eb6f Mon Sep 17 00:00:00 2001 From: Holger Hans Peter Freyther Date: Fri, 23 Dec 2011 22:35:42 +0100 Subject: v8: Build V8 for FreeBSD For FreeBSD the libexecinfo port needs to be installed and linked to, all tests execute and pass. %uname -a FreeBSD qt-ppa 8.2-STABLE FreeBSD 8.2-STABLE #4: Sun Oct 30 20:43:37 UTC 2011 ich@freebsd:/usr/obj/usr/src/sys/GENERIC amd64 %./tst_v8 ********* Start testing of tst_v8 ********* Config: Using QTest library 5.0.0, Qt 5.0.0 PASS : tst_v8::initTestCase() PASS : tst_v8::eval() PASS : tst_v8::evalwithinwith() PASS : tst_v8::userobjectcompare() PASS : tst_v8::externalteardown() PASS : tst_v8::globalcall() PASS : tst_v8::cleanupTestCase() Totals: 7 passed, 0 failed, 0 skipped ********* Finished testing of tst_v8 ********* Change-Id: Ia8198128126c2931807c7fb872c15baad47022e1 Reviewed-by: Aaron Kennedy --- src/v8/v8.pri | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/v8/v8.pri b/src/v8/v8.pri index c3a55490a7..530b2a729a 100644 --- a/src/v8/v8.pri +++ b/src/v8/v8.pri @@ -236,6 +236,11 @@ macx { SOURCES += \ $$V8SRC/platform-macos.cc \ $$V8SRC/platform-posix.cc +} else:freebsd-* { +SOURCES += \ + $$V8SRC/platform-freebsd.cc \ + $$V8SRC/platform-posix.cc +LIBS += -lexecinfo } else:unix:!symbian { SOURCES += \ $$V8SRC/platform-linux.cc \ -- cgit v1.2.3 From fe089823bc36b7c1ea333cd57fb74541bafba1e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C4=99drzej=20Nowacki?= Date: Thu, 22 Dec 2011 15:44:28 +0100 Subject: Build fix for tst_qprinter with c++11 GCC 4.6 fails to build the test because of narrowing conversion. Change-Id: I927693789be7f3df7bd1a96c8924fc04716a03f0 Reviewed-by: Olivier Goffart Reviewed-by: Thiago Macieira --- tests/auto/gui/painting/qprinter/tst_qprinter.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/tests/auto/gui/painting/qprinter/tst_qprinter.cpp b/tests/auto/gui/painting/qprinter/tst_qprinter.cpp index 88c2a3ee9b..d7b0ccba21 100644 --- a/tests/auto/gui/painting/qprinter/tst_qprinter.cpp +++ b/tests/auto/gui/painting/qprinter/tst_qprinter.cpp @@ -975,7 +975,8 @@ void tst_QPrinter::testPdfTitle() QPainter painter; QPrinter printer; // This string is just the UTF-8 encoding of the string: \()f ø hiragana o - const char title[]={0x5c, 0x28, 0x29, 0x66, 0xc3, 0xb8, 0xe3, 0x81, 0x8a, 0x00}; + const unsigned char titleBuf[]={0x5c, 0x28, 0x29, 0x66, 0xc3, 0xb8, 0xe3, 0x81, 0x8a, 0x00}; + const char *title = reinterpret_cast(titleBuf); printer.setOutputFileName("file.pdf"); printer.setDocName(QString::fromUtf8(title)); painter.begin(&printer); @@ -986,10 +987,11 @@ void tst_QPrinter::testPdfTitle() // The we expect the title to appear in the PDF as: // ASCII('\title (') UTF16(\\\(\)f ø hiragana o) ASCII(')'). // which has the following binary representation - const char expected[] = { + const unsigned char expectedBuf[] = { 0x2f, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x20, 0x28, 0xfe, 0xff, 0x00, 0x5c, 0x5c, 0x00, 0x5c, 0x28, 0x00, 0x5c, 0x29, 0x00, 0x66, 0x00, 0xf8, 0x30, 0x4a, 0x29}; + const char *expected = reinterpret_cast(expectedBuf); QVERIFY(file.readAll().contains(QByteArray(expected, 26))); } -- cgit v1.2.3 From f4c7bbba13f9bdf1ce11334090079a4735684d69 Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Fri, 23 Dec 2011 15:52:54 +1000 Subject: Remove empty functions from QSet autotest. Change-Id: Id6fac3a83e3f4385ee1978a19e6dc92605f4abdb Reviewed-by: Thiago Macieira --- tests/auto/corelib/tools/qset/tst_qset.cpp | 4 ---- 1 file changed, 4 deletions(-) diff --git a/tests/auto/corelib/tools/qset/tst_qset.cpp b/tests/auto/corelib/tools/qset/tst_qset.cpp index f03d769e13..72350de3bc 100644 --- a/tests/auto/corelib/tools/qset/tst_qset.cpp +++ b/tests/auto/corelib/tools/qset/tst_qset.cpp @@ -57,10 +57,6 @@ class tst_QSet : public QObject { Q_OBJECT -public: - tst_QSet() {} - virtual ~tst_QSet() {} - private slots: void operator_eq(); void swap(); -- cgit v1.2.3 From bca775edaa22f383f319aae72799b6cb61bce48c Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Fri, 23 Dec 2011 15:35:32 +1000 Subject: Improve QSettings autotest QTestLib-based autotests cannot perform verification steps in the test class constructor. This needs to be done in initTestCase() instead. Change-Id: Ib1f7f838f052fa0fc5104603bdac01ffd8313aef Reviewed-by: Thiago Macieira --- tests/auto/corelib/io/qsettings/tst_qsettings.cpp | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/tests/auto/corelib/io/qsettings/tst_qsettings.cpp b/tests/auto/corelib/io/qsettings/tst_qsettings.cpp index 2c96339737..58e0b4f5b4 100644 --- a/tests/auto/corelib/io/qsettings/tst_qsettings.cpp +++ b/tests/auto/corelib/io/qsettings/tst_qsettings.cpp @@ -73,10 +73,8 @@ class tst_QSettings : public QObject { Q_OBJECT -public: - tst_QSettings(); - public slots: + void initTestCase(); void init(); void cleanup(); private slots: @@ -270,7 +268,7 @@ static void populateWithFormats() QTest::newRow("custom2") << QSettings::CustomFormat2; } -tst_QSettings::tst_QSettings() +void tst_QSettings::initTestCase() { QSettings::Format custom1 = QSettings::registerFormat("custom1", readCustom1File, writeCustom1File); QSettings::Format custom2 = QSettings::registerFormat("custom2", readCustom2File, writeCustom2File -- cgit v1.2.3 From 8f19f142745f3cb0690dcd51cebc66153e396805 Mon Sep 17 00:00:00 2001 From: Sami Rosendahl Date: Fri, 25 Nov 2011 11:13:46 +0200 Subject: Fix crash in QDBusDemarshaller basic string-like type extraction QDBusArgument string extraction operators and QDBusDemarshaller that implements the extraction do not check the type of the extracted value. When extracting string-like basic DBus type that actually is e.g. an integer the string extraction will crash as it blindly attempts to use the integer as a pointer to char. The fix adds DBus type checks to QDBusArgument string type extraction operator implementations. The checks are as permissive as possible provided crashes are avoided. Previously supported functionality of extracting an object path or type signature to a string type is retained. Task-number: QTBUG-22840 Change-Id: I29be1ae592658ca268c65ed692e1d42619d52280 Reviewed-by: Thiago Macieira --- src/dbus/qdbusargument_p.h | 4 + src/dbus/qdbusdemarshaller.cpp | 51 +++++++-- .../auto/dbus/qdbusmarshall/tst_qdbusmarshall.cpp | 115 +++++++++++++++++++++ 3 files changed, 163 insertions(+), 7 deletions(-) diff --git a/src/dbus/qdbusargument_p.h b/src/dbus/qdbusargument_p.h index d8ca442920..3ecb798f31 100644 --- a/src/dbus/qdbusargument_p.h +++ b/src/dbus/qdbusargument_p.h @@ -201,6 +201,7 @@ public: QVariant toVariantInternal(); QDBusArgument::ElementType currentType(); + bool isCurrentTypeStringLike(); public: DBusMessageIter iterator; @@ -208,6 +209,9 @@ public: private: Q_DISABLE_COPY(QDBusDemarshaller) + QString toStringUnchecked(); + QDBusObjectPath toObjectPathUnchecked(); + QDBusSignature toSignatureUnchecked(); }; inline QDBusMarshaller *QDBusArgumentPrivate::marshaller() diff --git a/src/dbus/qdbusdemarshaller.cpp b/src/dbus/qdbusdemarshaller.cpp index 4103552db1..0b6767f2a0 100644 --- a/src/dbus/qdbusdemarshaller.cpp +++ b/src/dbus/qdbusdemarshaller.cpp @@ -130,19 +130,43 @@ inline double QDBusDemarshaller::toDouble() return qIterGet(&iterator); } -inline QString QDBusDemarshaller::toString() +inline QString QDBusDemarshaller::toStringUnchecked() { return QString::fromUtf8(qIterGet(&iterator)); } +inline QString QDBusDemarshaller::toString() +{ + if (isCurrentTypeStringLike()) + return toStringUnchecked(); + else + return QString(); +} + +inline QDBusObjectPath QDBusDemarshaller::toObjectPathUnchecked() + { + return QDBusObjectPath(QString::fromUtf8(qIterGet(&iterator))); + } + inline QDBusObjectPath QDBusDemarshaller::toObjectPath() { - return QDBusObjectPath(QString::fromUtf8(qIterGet(&iterator))); + if (isCurrentTypeStringLike()) + return toObjectPathUnchecked(); + else + return QDBusObjectPath(); } +inline QDBusSignature QDBusDemarshaller::toSignatureUnchecked() + { + return QDBusSignature(QString::fromUtf8(qIterGet(&iterator))); + } + inline QDBusSignature QDBusDemarshaller::toSignature() { - return QDBusSignature(QString::fromUtf8(qIterGet(&iterator))); + if (isCurrentTypeStringLike()) + return toSignatureUnchecked(); + else + return QDBusSignature(); } inline QDBusUnixFileDescriptor QDBusDemarshaller::toUnixFileDescriptor() @@ -236,11 +260,11 @@ QVariant QDBusDemarshaller::toVariantInternal() case DBUS_TYPE_UINT64: return toULongLong(); case DBUS_TYPE_STRING: - return toString(); + return toStringUnchecked(); case DBUS_TYPE_OBJECT_PATH: - return QVariant::fromValue(toObjectPath()); + return QVariant::fromValue(toObjectPathUnchecked()); case DBUS_TYPE_SIGNATURE: - return QVariant::fromValue(toSignature()); + return QVariant::fromValue(toSignatureUnchecked()); case DBUS_TYPE_VARIANT: return QVariant::fromValue(toVariant()); @@ -280,6 +304,19 @@ QVariant QDBusDemarshaller::toVariantInternal() }; } +bool QDBusDemarshaller::isCurrentTypeStringLike() +{ + const int type = q_dbus_message_iter_get_arg_type(&iterator); + switch (type) { + case DBUS_TYPE_STRING: //FALLTHROUGH + case DBUS_TYPE_OBJECT_PATH: //FALLTHROUGH + case DBUS_TYPE_SIGNATURE: + return true; + default: + return false; + } +} + QStringList QDBusDemarshaller::toStringList() { QStringList list; @@ -288,7 +325,7 @@ QStringList QDBusDemarshaller::toStringList() q_dbus_message_iter_recurse(&iterator, &sub.iterator); q_dbus_message_iter_next(&iterator); while (!sub.atEnd()) - list.append(sub.toString()); + list.append(sub.toStringUnchecked()); return list; } diff --git a/tests/auto/dbus/qdbusmarshall/tst_qdbusmarshall.cpp b/tests/auto/dbus/qdbusmarshall/tst_qdbusmarshall.cpp index 2843e15758..ac8b5c1416 100644 --- a/tests/auto/dbus/qdbusmarshall/tst_qdbusmarshall.cpp +++ b/tests/auto/dbus/qdbusmarshall/tst_qdbusmarshall.cpp @@ -96,6 +96,9 @@ private slots: void demarshallPrimitives_data(); void demarshallPrimitives(); + void demarshallStrings_data(); + void demarshallStrings(); + private: int fileDescriptorForTest(); @@ -1260,5 +1263,117 @@ void tst_QDBusMarshall::demarshallPrimitives() } } +void tst_QDBusMarshall::demarshallStrings_data() +{ + QTest::addColumn("value"); + QTest::addColumn("targetSig"); + QTest::addColumn("expectedValue"); + + // All primitive types demarshall to null string types + typedef QPair ValSigPair; + const QList nullStringTypes + = QList() + << ValSigPair(qVariantFromValue(QString()), 's') + << ValSigPair(qVariantFromValue(QDBusObjectPath()), 'o') + << ValSigPair(qVariantFromValue(QDBusSignature()), 'g'); + foreach (ValSigPair valSigPair, nullStringTypes) { + QTest::newRow("bool(false)") << QVariant(false) << valSigPair.second << valSigPair.first; + QTest::newRow("bool(true)") << QVariant(true) << valSigPair.second << valSigPair.first; + QTest::newRow("byte") << qVariantFromValue(uchar(1)) << valSigPair.second << valSigPair.first; + QTest::newRow("int16") << qVariantFromValue(short(2)) << valSigPair.second << valSigPair.first; + QTest::newRow("uint16") << qVariantFromValue(ushort(3)) << valSigPair.second << valSigPair.first; + QTest::newRow("int") << QVariant(1) << valSigPair.second << valSigPair.first; + QTest::newRow("uint") << QVariant(2U) << valSigPair.second << valSigPair.first; + QTest::newRow("int64") << QVariant(Q_INT64_C(3)) << valSigPair.second << valSigPair.first; + QTest::newRow("uint64") << QVariant(Q_UINT64_C(4)) << valSigPair.second << valSigPair.first; + QTest::newRow("double") << QVariant(42.5) << valSigPair.second << valSigPair.first; + } + + // String types should demarshall to each other. This is a regression test + // to check released functionality is maintained even after checks have + // been added to string demarshalling + QTest::newRow("empty string->invalid objectpath") << QVariant("") + << 'o' << qVariantFromValue(QDBusObjectPath()); + QTest::newRow("null string->invalid objectpath") << QVariant(QString()) + << 'o' << qVariantFromValue(QDBusObjectPath()); + QTest::newRow("string->invalid objectpath") << QVariant("invalid objectpath") + << 'o' << qVariantFromValue(QDBusObjectPath()); + QTest::newRow("string->valid objectpath") << QVariant("/org/kde") + << 'o' << qVariantFromValue(QDBusObjectPath("/org/kde")); + + QTest::newRow("empty string->invalid signature") << QVariant("") + << 'g' << qVariantFromValue(QDBusSignature()); + QTest::newRow("null string->invalid signature") << QVariant(QString()) + << 'g' << qVariantFromValue(QDBusSignature()); + QTest::newRow("string->invalid signature") << QVariant("_invalid signature") + << 'g' << qVariantFromValue(QDBusSignature()); + QTest::newRow("string->valid signature") << QVariant("s") + << 'g' << qVariantFromValue(QDBusSignature("s")); + + QTest::newRow("objectpath->string") << qVariantFromValue(QDBusObjectPath("/org/kde")) + << 's' << qVariantFromValue(QString("/org/kde")); + QTest::newRow("objectpath->invalid signature") << qVariantFromValue(QDBusObjectPath("/org/kde")) + << 'g' << qVariantFromValue(QDBusSignature()); + + QTest::newRow("signature->string") << qVariantFromValue(QDBusSignature("s")) + << 's' << qVariantFromValue(QString("s")); + QTest::newRow("signature->invalid objectpath") << qVariantFromValue(QDBusSignature("s")) + << 'o' << qVariantFromValue(QDBusObjectPath()); +} + +QVariant demarshallAsString(const QDBusArgument& dbusArg, char targetSig) +{ + switch (targetSig) { + case 's': { + QString s; + dbusArg >> s; + return s; + } + case 'o': { + QDBusObjectPath op; + dbusArg >> op; + return qVariantFromValue(op); + } + case 'g' : { + QDBusSignature sig; + dbusArg >> sig; + return qVariantFromValue(sig); + } + default: { + return QVariant(); + } + } +} + +void tst_QDBusMarshall::demarshallStrings() +{ + QFETCH(QVariant, value); + QFETCH(char, targetSig); + QFETCH(QVariant, expectedValue); + + QDBusConnection con = QDBusConnection::sessionBus(); + + QVERIFY(con.isConnected()); + + QDBusMessage msg = QDBusMessage::createMethodCall(serviceName, objectPath, + interfaceName, "ping"); + QDBusArgument sendArg; + sendArg.beginStructure(); + sendArg.appendVariant(value); + sendArg.endStructure(); + msg.setArguments(QVariantList() << qVariantFromValue(sendArg)); + QDBusMessage reply = con.call(msg); + + const QDBusArgument receiveArg = qvariant_cast(reply.arguments().at(0)); + receiveArg.beginStructure(); + + QVariant receiveValue = demarshallAsString(receiveArg, targetSig); + QVERIFY2(receiveValue.isValid(), "Invalid targetSig in demarshallStrings_data()"); + QVERIFY(compare(receiveValue, expectedValue)); + + receiveArg.endStructure(); + QVERIFY(receiveArg.atEnd()); +} + QTEST_MAIN(tst_QDBusMarshall) #include "tst_qdbusmarshall.moc" -- cgit v1.2.3 From b4398dc4e372dbe829b21423e1a0a93a6a542994 Mon Sep 17 00:00:00 2001 From: Sami Rosendahl Date: Mon, 5 Dec 2011 13:06:40 +0200 Subject: Fix crash in QDBusDemarshaller QStringList extraction QDBusArgument QStringList extraction operator and QDBusDemarshaller that implements the extraction do not check the type of the extracted value. When extracting a QStringList and the value actually is e.g. an array of bytes the string list extraction will crash as it interprets the bytes as char pointers. The fix adds DBus type checks to QDBusArgument QStringList extraction operator implementations. The checks are as permissive as possible provided crashes are avoided. Task-number: QTBUG-22840 Change-Id: I4b67d75b59c5052d939f3a69f3e92dabdb3bdd6b Reviewed-by: Thiago Macieira --- src/dbus/qdbusargument_p.h | 1 + src/dbus/qdbusdemarshaller.cpp | 13 +++++- .../auto/dbus/qdbusmarshall/tst_qdbusmarshall.cpp | 52 ++++++++++++++++++++++ 3 files changed, 64 insertions(+), 2 deletions(-) diff --git a/src/dbus/qdbusargument_p.h b/src/dbus/qdbusargument_p.h index 3ecb798f31..df2b2a011b 100644 --- a/src/dbus/qdbusargument_p.h +++ b/src/dbus/qdbusargument_p.h @@ -212,6 +212,7 @@ private: QString toStringUnchecked(); QDBusObjectPath toObjectPathUnchecked(); QDBusSignature toSignatureUnchecked(); + QStringList toStringListUnchecked(); }; inline QDBusMarshaller *QDBusArgumentPrivate::marshaller() diff --git a/src/dbus/qdbusdemarshaller.cpp b/src/dbus/qdbusdemarshaller.cpp index 0b6767f2a0..b7e363a8d2 100644 --- a/src/dbus/qdbusdemarshaller.cpp +++ b/src/dbus/qdbusdemarshaller.cpp @@ -274,7 +274,7 @@ QVariant QDBusDemarshaller::toVariantInternal() // QByteArray return toByteArray(); case DBUS_TYPE_STRING: - return toStringList(); + return toStringListUnchecked(); case DBUS_TYPE_DICT_ENTRY: return QVariant::fromValue(duplicate()); @@ -317,7 +317,7 @@ bool QDBusDemarshaller::isCurrentTypeStringLike() } } -QStringList QDBusDemarshaller::toStringList() +QStringList QDBusDemarshaller::toStringListUnchecked() { QStringList list; @@ -330,6 +330,15 @@ QStringList QDBusDemarshaller::toStringList() return list; } +QStringList QDBusDemarshaller::toStringList() +{ + if (q_dbus_message_iter_get_arg_type(&iterator) == DBUS_TYPE_ARRAY + && q_dbus_message_iter_get_element_type(&iterator) == DBUS_TYPE_STRING) + return toStringListUnchecked(); + else + return QStringList(); +} + QByteArray QDBusDemarshaller::toByteArray() { DBusMessageIter sub; diff --git a/tests/auto/dbus/qdbusmarshall/tst_qdbusmarshall.cpp b/tests/auto/dbus/qdbusmarshall/tst_qdbusmarshall.cpp index ac8b5c1416..8ce456bf0e 100644 --- a/tests/auto/dbus/qdbusmarshall/tst_qdbusmarshall.cpp +++ b/tests/auto/dbus/qdbusmarshall/tst_qdbusmarshall.cpp @@ -99,6 +99,9 @@ private slots: void demarshallStrings_data(); void demarshallStrings(); + void demarshallInvalidStringList_data(); + void demarshallInvalidStringList(); + private: int fileDescriptorForTest(); @@ -1375,5 +1378,54 @@ void tst_QDBusMarshall::demarshallStrings() QVERIFY(receiveArg.atEnd()); } +void tst_QDBusMarshall::demarshallInvalidStringList_data() +{ + addBasicTypesColumns(); + + // None of the basic types should demarshall to a string list + basicNumericTypes_data(); + basicStringTypes_data(); + + // Arrays of non-string type should not demarshall to a string list + QList bools; + QTest::newRow("emptyboollist") << qVariantFromValue(bools); + bools << false << true << false; + QTest::newRow("boollist") << qVariantFromValue(bools); + + // Structures should not demarshall to a QByteArray + QTest::newRow("struct of strings") + << qVariantFromValue(QVariantList() << QString("foo") << QString("bar")); + QTest::newRow("struct of mixed types") + << qVariantFromValue(QVariantList() << QString("foo") << int(42) << double(3.14)); +} + +void tst_QDBusMarshall::demarshallInvalidStringList() +{ + QFETCH(QVariant, value); + + QDBusConnection con = QDBusConnection::sessionBus(); + + QVERIFY(con.isConnected()); + + QDBusMessage msg = QDBusMessage::createMethodCall(serviceName, objectPath, + interfaceName, "ping"); + QDBusArgument sendArg; + sendArg.beginStructure(); + sendArg.appendVariant(value); + sendArg.endStructure(); + msg.setArguments(QVariantList() << qVariantFromValue(sendArg)); + QDBusMessage reply = con.call(msg); + + const QDBusArgument receiveArg = qvariant_cast(reply.arguments().at(0)); + receiveArg.beginStructure(); + + QStringList receiveValue; + receiveArg >> receiveValue; + QCOMPARE(receiveValue, QStringList()); + + receiveArg.endStructure(); + QVERIFY(receiveArg.atEnd()); +} + QTEST_MAIN(tst_QDBusMarshall) #include "tst_qdbusmarshall.moc" -- cgit v1.2.3 From b9acd85b2f92f887521b952f84ced9a2d1a8a57e Mon Sep 17 00:00:00 2001 From: Sami Rosendahl Date: Tue, 22 Nov 2011 13:52:15 +0200 Subject: Fix crashes and non-portable functionality in QDBusDemarshaller QByteArray extraction QDBusArgument QByteArray extraction operator and QDBusDemarshaller that implements the extraction do not check the type of the extracted value. When extracting a QByteArray when the value actually is e.g. a struct of mixed types the byte array extraction will crash as it attempts to extract the struct data as a fixed array. The fix adds DBus type checks to QDBusArgument byte array extraction operator implementations. The checks invalidate extracting arrays of other types than bytes to a QByteArray that worked with the unchecked implementation. The rationale for this restriction is 1) extracting a QByteArray to a variant checks already that the array element type is byte 2) Results of extracting arrays of types wider than a byte to a QByteArray are architecture-dependent making such code inherently non-portable. Task-number: QTBUG-22840 Change-Id: Ie20f2adc06c697a68055c803215fb408568fdd90 Reviewed-by: Thiago Macieira --- src/dbus/qdbusargument_p.h | 1 + src/dbus/qdbusdemarshaller.cpp | 13 +++++- .../auto/dbus/qdbusmarshall/tst_qdbusmarshall.cpp | 53 ++++++++++++++++++++++ 3 files changed, 65 insertions(+), 2 deletions(-) diff --git a/src/dbus/qdbusargument_p.h b/src/dbus/qdbusargument_p.h index df2b2a011b..4327e74267 100644 --- a/src/dbus/qdbusargument_p.h +++ b/src/dbus/qdbusargument_p.h @@ -213,6 +213,7 @@ private: QDBusObjectPath toObjectPathUnchecked(); QDBusSignature toSignatureUnchecked(); QStringList toStringListUnchecked(); + QByteArray toByteArrayUnchecked(); }; inline QDBusMarshaller *QDBusArgumentPrivate::marshaller() diff --git a/src/dbus/qdbusdemarshaller.cpp b/src/dbus/qdbusdemarshaller.cpp index b7e363a8d2..96729fd603 100644 --- a/src/dbus/qdbusdemarshaller.cpp +++ b/src/dbus/qdbusdemarshaller.cpp @@ -272,7 +272,7 @@ QVariant QDBusDemarshaller::toVariantInternal() switch (q_dbus_message_iter_get_element_type(&iterator)) { case DBUS_TYPE_BYTE: // QByteArray - return toByteArray(); + return toByteArrayUnchecked(); case DBUS_TYPE_STRING: return toStringListUnchecked(); case DBUS_TYPE_DICT_ENTRY: @@ -339,7 +339,7 @@ QStringList QDBusDemarshaller::toStringList() return QStringList(); } -QByteArray QDBusDemarshaller::toByteArray() +QByteArray QDBusDemarshaller::toByteArrayUnchecked() { DBusMessageIter sub; q_dbus_message_iter_recurse(&iterator, &sub); @@ -350,6 +350,15 @@ QByteArray QDBusDemarshaller::toByteArray() return QByteArray(data,len); } +QByteArray QDBusDemarshaller::toByteArray() +{ + if (q_dbus_message_iter_get_arg_type(&iterator) == DBUS_TYPE_ARRAY + && q_dbus_message_iter_get_element_type(&iterator) == DBUS_TYPE_BYTE) { + return toByteArrayUnchecked(); + } + return QByteArray(); +} + bool QDBusDemarshaller::atEnd() { // dbus_message_iter_has_next is broken if the list has one single element diff --git a/tests/auto/dbus/qdbusmarshall/tst_qdbusmarshall.cpp b/tests/auto/dbus/qdbusmarshall/tst_qdbusmarshall.cpp index 8ce456bf0e..1886c8fe5a 100644 --- a/tests/auto/dbus/qdbusmarshall/tst_qdbusmarshall.cpp +++ b/tests/auto/dbus/qdbusmarshall/tst_qdbusmarshall.cpp @@ -102,6 +102,9 @@ private slots: void demarshallInvalidStringList_data(); void demarshallInvalidStringList(); + void demarshallInvalidByteArray_data(); + void demarshallInvalidByteArray(); + private: int fileDescriptorForTest(); @@ -1427,5 +1430,55 @@ void tst_QDBusMarshall::demarshallInvalidStringList() QVERIFY(receiveArg.atEnd()); } +void tst_QDBusMarshall::demarshallInvalidByteArray_data() +{ + addBasicTypesColumns(); + + // None of the basic types should demarshall to a QByteArray + basicNumericTypes_data(); + basicStringTypes_data(); + + // Arrays of other types than byte should not demarshall to a QByteArray + QList bools; + QTest::newRow("empty array of bool") << qVariantFromValue(bools); + bools << true << false << true; + QTest::newRow("non-empty array of bool") << qVariantFromValue(bools); + + // Structures should not demarshall to a QByteArray + QTest::newRow("struct of bytes") + << qVariantFromValue(QVariantList() << uchar(1) << uchar(2)); + + QTest::newRow("struct of mixed types") + << qVariantFromValue(QVariantList() << int(42) << QString("foo") << double(3.14)); +} + +void tst_QDBusMarshall::demarshallInvalidByteArray() +{ + QFETCH(QVariant, value); + + QDBusConnection con = QDBusConnection::sessionBus(); + + QVERIFY(con.isConnected()); + + QDBusMessage msg = QDBusMessage::createMethodCall(serviceName, objectPath, + interfaceName, "ping"); + QDBusArgument sendArg; + sendArg.beginStructure(); + sendArg.appendVariant(value); + sendArg.endStructure(); + msg.setArguments(QVariantList() << qVariantFromValue(sendArg)); + QDBusMessage reply = con.call(msg); + + const QDBusArgument receiveArg = qvariant_cast(reply.arguments().at(0)); + receiveArg.beginStructure(); + + QByteArray receiveValue; + receiveArg >> receiveValue; + QCOMPARE(receiveValue, QByteArray()); + + receiveArg.endStructure(); + QVERIFY(receiveArg.atEnd()); +} + QTEST_MAIN(tst_QDBusMarshall) #include "tst_qdbusmarshall.moc" -- cgit v1.2.3 From 1ddecb0aa20c660ab086cbd0b87c8384ed6f444d Mon Sep 17 00:00:00 2001 From: Peter Hartmann Date: Thu, 17 Nov 2011 11:19:33 +0100 Subject: network auto tests: add QNetworkReply test for pipelining Reviewed-by: Markus Goetz Task-number: QTBUG-21369 (cherry picked from commit a32bfdef6d6b45c916f143dcf8495a2e102c3eec) Change-Id: Iecde23c56f128008c5172675601928d83180358a Reviewed-by: Thiago Macieira --- .../access/qnetworkreply/tst_qnetworkreply.cpp | 39 ++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp b/tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp index dc1dd4ab68..41972b7811 100644 --- a/tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp +++ b/tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp @@ -165,6 +165,7 @@ public Q_SLOTS: void gotError(); void authenticationRequired(QNetworkReply*,QAuthenticator*); void proxyAuthenticationRequired(const QNetworkProxy &,QAuthenticator*); + void pipeliningHelperSlot(); #ifndef QT_NO_OPENSSL void sslErrors(QNetworkReply*,const QList &); @@ -384,6 +385,7 @@ private Q_SLOTS: void authenticationCacheAfterCancel(); void authenticationWithDifferentRealm(); void synchronousAuthenticationCache(); + void pipelining(); // NOTE: This test must be last! void parentingRepliesToTheApp(); @@ -6663,6 +6665,43 @@ void tst_QNetworkReply::synchronousAuthenticationCache() } } +void tst_QNetworkReply::pipelining() +{ + QString urlString("http://" + QtNetworkSettings::serverName() + "/qtest/cgi-bin/echo.cgi?"); + QList replies; + for (int a = 0; a < 20; a++) { + QNetworkRequest request(urlString + QString::number(a)); + request.setAttribute(QNetworkRequest::HttpPipeliningAllowedAttribute, QVariant(true)); + replies.append(manager.get(request)); + connect(replies.at(a), SIGNAL(finished()), this, SLOT(pipeliningHelperSlot())); + } + QTestEventLoop::instance().enterLoop(20); + QVERIFY(!QTestEventLoop::instance().timeout()); +} + +void tst_QNetworkReply::pipeliningHelperSlot() { + static int a = 0; + + // check that pipelining was used in at least one of the replies + static bool pipeliningWasUsed = false; + QNetworkReply *reply = qobject_cast(sender()); + bool pipeliningWasUsedInReply = reply->attribute(QNetworkRequest::HttpPipeliningWasUsedAttribute).toBool(); + if (pipeliningWasUsedInReply) + pipeliningWasUsed = true; + + // check that the contents match (the response to echo.cgi?3 should return 3 etc.) + QString urlQueryString = reply->url().queryItems().at(0).first; + QString content = reply->readAll(); + QVERIFY2(urlQueryString == content, "data corruption with pipelining detected"); + + a++; + + if (a == 20) { // all replies have finished + QTestEventLoop::instance().exitLoop(); + QVERIFY2(pipeliningWasUsed, "pipelining was not used in any of the replies when trying to test pipelining"); + } +} + // NOTE: This test must be last testcase in tst_qnetworkreply! void tst_QNetworkReply::parentingRepliesToTheApp() { -- cgit v1.2.3 From ebe43992f922c49091eaaf9e0300b807775f34e9 Mon Sep 17 00:00:00 2001 From: Konstantin Ritt Date: Tue, 18 Oct 2011 19:12:18 +0200 Subject: add tests and benchmarks for QString::toLower()/toUpper()/toCaseFolded() Merge-request: 70 Reviewed-by: Oswald Buddenhagen Change-Id: I3929d4d8963c3cef6d2c6420d8ad1f7a45f7e042 Reviewed-by: Olivier Reviewed-by: Olivier Goffart --- tests/auto/corelib/tools/qstring/tst_qstring.cpp | 92 ++++++++++++++++++++++-- tests/benchmarks/corelib/tools/qstring/main.cpp | 92 +++++++++++++++++++++++- 2 files changed, 178 insertions(+), 6 deletions(-) diff --git a/tests/auto/corelib/tools/qstring/tst_qstring.cpp b/tests/auto/corelib/tools/qstring/tst_qstring.cpp index 80e9984690..0c0d756e48 100644 --- a/tests/auto/corelib/tools/qstring/tst_qstring.cpp +++ b/tests/auto/corelib/tools/qstring/tst_qstring.cpp @@ -121,8 +121,9 @@ private slots: void simplified_data(); void simplified(); void trimmed(); - void toLower(); void toUpper(); + void toLower(); + void toCaseFolded(); void rightJustified(); void leftJustified(); void mid(); @@ -1565,14 +1566,28 @@ void tst_QString::toUpper() QCOMPARE( QString(1, QChar(0xdf)).toUpper(), QString("SS")); - QString lower; + QString lower, upper; lower += QChar(QChar::highSurrogate(0x10428)); lower += QChar(QChar::lowSurrogate(0x10428)); - QString upper; upper += QChar(QChar::highSurrogate(0x10400)); upper += QChar(QChar::lowSurrogate(0x10400)); QCOMPARE( lower.toUpper(), upper); + lower += lower; + upper += upper; + QCOMPARE( lower.toUpper(), upper); + // test for broken surrogate pair handling (low low hi low hi low) + lower.prepend(QChar(QChar::lowSurrogate(0x10428))); + lower.prepend(QChar(QChar::lowSurrogate(0x10428))); + upper.prepend(QChar(QChar::lowSurrogate(0x10428))); + upper.prepend(QChar(QChar::lowSurrogate(0x10428))); + QCOMPARE(lower.toUpper(), upper); + // test for broken surrogate pair handling (low low hi low hi low hi hi) + lower += QChar(QChar::highSurrogate(0x10428)); + lower += QChar(QChar::highSurrogate(0x10428)); + upper += QChar(QChar::highSurrogate(0x10428)); + upper += QChar(QChar::highSurrogate(0x10428)); + QCOMPARE(lower.toUpper(), upper); #ifdef QT_USE_ICU // test doesn't work with ICU support, since QChar is unaware of any locale @@ -1610,13 +1625,28 @@ void tst_QString::toLower() QCOMPARE( QString(1, QChar(0x130)).toLower(), QString(QString(1, QChar(0x69)) + QChar(0x307))); - QString lower; + QString lower, upper; lower += QChar(QChar::highSurrogate(0x10428)); lower += QChar(QChar::lowSurrogate(0x10428)); - QString upper; upper += QChar(QChar::highSurrogate(0x10400)); upper += QChar(QChar::lowSurrogate(0x10400)); QCOMPARE( upper.toLower(), lower); + lower += lower; + upper += upper; + QCOMPARE( upper.toLower(), lower); + + // test for broken surrogate pair handling (low low hi low hi low) + lower.prepend(QChar(QChar::lowSurrogate(0x10400))); + lower.prepend(QChar(QChar::lowSurrogate(0x10400))); + upper.prepend(QChar(QChar::lowSurrogate(0x10400))); + upper.prepend(QChar(QChar::lowSurrogate(0x10400))); + QCOMPARE( upper.toLower(), lower); + // test for broken surrogate pair handling (low low hi low hi low hi hi) + lower += QChar(QChar::highSurrogate(0x10400)); + lower += QChar(QChar::highSurrogate(0x10400)); + upper += QChar(QChar::highSurrogate(0x10400)); + upper += QChar(QChar::highSurrogate(0x10400)); + QCOMPARE( upper.toLower(), lower); #ifdef QT_USE_ICU // test doesn't work with ICU support, since QChar is unaware of any locale @@ -1633,6 +1663,58 @@ void tst_QString::toLower() #endif } +void tst_QString::toCaseFolded() +{ + QCOMPARE( QString().toCaseFolded(), QString() ); + QCOMPARE( QString("").toCaseFolded(), QString("") ); + QCOMPARE( QString("text").toCaseFolded(), QString("text") ); + QCOMPARE( QString("Text").toCaseFolded(), QString("text") ); + QCOMPARE( QString("tExt").toCaseFolded(), QString("text") ); + QCOMPARE( QString("teXt").toCaseFolded(), QString("text") ); + QCOMPARE( QString("texT").toCaseFolded(), QString("text") ); + QCOMPARE( QString("TExt").toCaseFolded(), QString("text") ); + QCOMPARE( QString("teXT").toCaseFolded(), QString("text") ); + QCOMPARE( QString("tEXt").toCaseFolded(), QString("text") ); + QCOMPARE( QString("tExT").toCaseFolded(), QString("text") ); + QCOMPARE( QString("TEXT").toCaseFolded(), QString("text") ); + QCOMPARE( QString("@ABYZ[").toCaseFolded(), QString("@abyz[")); + QCOMPARE( QString("@abyz[").toCaseFolded(), QString("@abyz[")); + QCOMPARE( QString("`ABYZ{").toCaseFolded(), QString("`abyz{")); + QCOMPARE( QString("`abyz{").toCaseFolded(), QString("`abyz{")); + + QString lower, upper; + upper += QChar(QChar::highSurrogate(0x10400)); + upper += QChar(QChar::lowSurrogate(0x10400)); + lower += QChar(QChar::highSurrogate(0x10428)); + lower += QChar(QChar::lowSurrogate(0x10428)); + QCOMPARE( upper.toCaseFolded(), lower); + lower += lower; + upper += upper; + QCOMPARE( upper.toCaseFolded(), lower); + + // test for broken surrogate pair handling (low low hi low hi low) + lower.prepend(QChar(QChar::lowSurrogate(0x10400))); + lower.prepend(QChar(QChar::lowSurrogate(0x10400))); + upper.prepend(QChar(QChar::lowSurrogate(0x10400))); + upper.prepend(QChar(QChar::lowSurrogate(0x10400))); + QCOMPARE(upper.toCaseFolded(), lower); + // test for broken surrogate pair handling (low low hi low hi low hi hi) + lower += QChar(QChar::highSurrogate(0x10400)); + lower += QChar(QChar::highSurrogate(0x10400)); + upper += QChar(QChar::highSurrogate(0x10400)); + upper += QChar(QChar::highSurrogate(0x10400)); + QCOMPARE(upper.toCaseFolded(), lower); + + //### we currently don't support full case foldings + for (int i = 0; i < 65536; ++i) { + QString str(1, QChar(i)); + QString lower = str.toCaseFolded(); + QVERIFY(lower.length() >= 1); + if (lower.length() == 1) + QVERIFY(str.toCaseFolded() == QString(1, QChar(i).toCaseFolded())); + } +} + void tst_QString::trimmed() { QString a; diff --git a/tests/benchmarks/corelib/tools/qstring/main.cpp b/tests/benchmarks/corelib/tools/qstring/main.cpp index 640bd7a625..1b9d366ef3 100644 --- a/tests/benchmarks/corelib/tools/qstring/main.cpp +++ b/tests/benchmarks/corelib/tools/qstring/main.cpp @@ -75,6 +75,13 @@ private slots: void fromLatin1Alternatives() const; void fromUtf8Alternatives_data() const; void fromUtf8Alternatives() const; + + void toUpper_data(); + void toUpper(); + void toLower_data(); + void toLower(); + void toCaseFolded_data(); + void toCaseFolded(); }; void tst_QString::equals() const @@ -2601,6 +2608,89 @@ void tst_QString::fromUtf8Alternatives() const } } -QTEST_MAIN(tst_QString) +void tst_QString::toUpper_data() +{ + QTest::addColumn("s"); + + QString lowerLatin1(300, QChar('a')); + QString upperLatin1(300, QChar('A')); + + QString lowerDeseret; + { + QString pattern; + pattern += QChar(QChar::highSurrogate(0x10428)); + pattern += QChar(QChar::lowSurrogate(0x10428)); + for (int i = 0; i < 300 / pattern.size(); ++i) + lowerDeseret += pattern; + } + QString upperDeseret; + { + QString pattern; + pattern += QChar(QChar::highSurrogate(0x10400)); + pattern += QChar(QChar::lowSurrogate(0x10400)); + for (int i = 0; i < 300 / pattern.size(); ++i) + upperDeseret += pattern; + } + + QString lowerLigature(600, QChar(0xFB03)); + + QTest::newRow("600") << (lowerLatin1 + lowerLatin1); + QTest::newRow("600") << (upperLatin1 + upperLatin1); + + QTest::newRow("300+300") << (lowerLatin1 + upperLatin1); + QTest::newRow("300+300") << (upperLatin1 + lowerLatin1); + + QTest::newRow("300<10428>") << (lowerDeseret + lowerDeseret); + QTest::newRow("300<10400>") << (upperDeseret + upperDeseret); + + QTest::newRow("150<10428>+150<10400>") << (lowerDeseret + upperDeseret); + QTest::newRow("150<10400>+150<10428>") << (upperDeseret + lowerDeseret); + + QTest::newRow("300a+150<10400>") << (lowerLatin1 + upperDeseret); + QTest::newRow("300a+150<10428>") << (lowerLatin1 + lowerDeseret); + QTest::newRow("300A+150<10400>") << (upperLatin1 + upperDeseret); + QTest::newRow("300A+150<10428>") << (upperLatin1 + lowerDeseret); + + QTest::newRow("600 (ligature)") << lowerLigature; +} + +void tst_QString::toUpper() +{ + QFETCH(QString, s); + + QBENCHMARK { + s.toUpper(); + } +} + +void tst_QString::toLower_data() +{ + toUpper_data(); +} + +void tst_QString::toLower() +{ + QFETCH(QString, s); + + QBENCHMARK { + s.toLower(); + } +} + +void tst_QString::toCaseFolded_data() +{ + toUpper_data(); +} + +void tst_QString::toCaseFolded() +{ + QFETCH(QString, s); + + QBENCHMARK { + s.toCaseFolded(); + } +} + +QTEST_APPLESS_MAIN(tst_QString) #include "main.moc" -- cgit v1.2.3 From d17b56f42b77da1fa46c5b0fbc10a9b6c2a1e145 Mon Sep 17 00:00:00 2001 From: "Jonas M. Gastal" Date: Mon, 19 Dec 2011 13:55:29 -0200 Subject: QLocalSocket shouldn't emit disconnected if it isn't connected yet. Task-number: QTBUG-22082 Change-Id: I2e1dae133f50a232d4be3ff63cafaf1b417b286c Reviewed-by: Peter Hartmann --- src/network/socket/qlocalsocket_win.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/network/socket/qlocalsocket_win.cpp b/src/network/socket/qlocalsocket_win.cpp index 1b0ee0d9a0..e049f68c2f 100644 --- a/src/network/socket/qlocalsocket_win.cpp +++ b/src/network/socket/qlocalsocket_win.cpp @@ -100,7 +100,7 @@ void QLocalSocketPrivate::_q_winError(ulong windowsError, const QString &functio if (currentState != state) { q->emit stateChanged(state); - if (state == QLocalSocket::UnconnectedState) + if (state == QLocalSocket::UnconnectedState && currentState != QLocalSocket::ConnectingState) q->emit disconnected(); } emit q->error(error); -- cgit v1.2.3 From 636aebb82372b15440ceba73546067743c7be681 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Mon, 19 Dec 2011 19:08:07 +0100 Subject: Replace a pseudo-virtual slot with a virtual method. Change-Id: I5d0e1e54e0d3d441b71b7594bc14e872512cc937 Reviewed-by: Jonas Gastal Reviewed-by: Thiago Macieira --- src/widgets/widgets/qabstractscrollarea.cpp | 2 +- src/widgets/widgets/qabstractscrollarea.h | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/src/widgets/widgets/qabstractscrollarea.cpp b/src/widgets/widgets/qabstractscrollarea.cpp index 801160d080..901ea99c1b 100644 --- a/src/widgets/widgets/qabstractscrollarea.cpp +++ b/src/widgets/widgets/qabstractscrollarea.cpp @@ -572,7 +572,7 @@ void QAbstractScrollArea::setViewport(QWidget *widget) d->layoutChildren(); if (isVisible()) d->viewport->show(); - QMetaObject::invokeMethod(this, "setupViewport", Q_ARG(QWidget *, widget)); + setupViewport(widget); delete oldViewport; } } diff --git a/src/widgets/widgets/qabstractscrollarea.h b/src/widgets/widgets/qabstractscrollarea.h index 3f2a273297..2288888286 100644 --- a/src/widgets/widgets/qabstractscrollarea.h +++ b/src/widgets/widgets/qabstractscrollarea.h @@ -90,8 +90,7 @@ public: QSize sizeHint() const; -protected Q_SLOTS: - void setupViewport(QWidget *viewport); + virtual void setupViewport(QWidget *viewport); protected: QAbstractScrollArea(QAbstractScrollAreaPrivate &dd, QWidget *parent = 0); -- cgit v1.2.3 From 6bb0fe08d80da01b25c1f2247aa0386e9855d792 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Mon, 19 Dec 2011 18:49:44 +0100 Subject: Increase the value of the UserRole for the ItemDataRole enum. For future proofing. No need for it to be so small. Change-Id: I8a0c734f87671881f114922ada7c5bc9524de19b Reviewed-by: Marius Bugge Monsen Reviewed-by: Thiago Macieira --- src/corelib/global/qnamespace.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/corelib/global/qnamespace.h b/src/corelib/global/qnamespace.h index b1d8ed46b6..4c0b9cc635 100644 --- a/src/corelib/global/qnamespace.h +++ b/src/corelib/global/qnamespace.h @@ -1383,7 +1383,7 @@ public: StatusTipPropertyRole = 30, WhatsThisPropertyRole = 31, // Reserved - UserRole = 32 + UserRole = 0x0100 }; enum ItemFlag { -- cgit v1.2.3 From 38d640ae6718c75532cb4cbd853e926772ff8f46 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Fri, 23 Dec 2011 14:26:59 +0100 Subject: Fix typos parametter -> parameter. Change-Id: I0ebb3658477a1afdc1af5f4f6f64f12dc20ace56 Reviewed-by: Thiago Macieira --- src/corelib/kernel/qobject.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/corelib/kernel/qobject.h b/src/corelib/kernel/qobject.h index 1f7c706741..3ca2e2213d 100644 --- a/src/corelib/kernel/qobject.h +++ b/src/corelib/kernel/qobject.h @@ -296,8 +296,8 @@ public: const QObject *receiver, void **zero) { // This is the overload for when one wish to disconnect a signal from any slot. (slot=0) - // Since the function template parametter cannot be deduced from '0', we use a - // dummy void ** parametter that must be equal to 0 + // Since the function template parameter cannot be deduced from '0', we use a + // dummy void ** parameter that must be equal to 0 Q_ASSERT(!zero); typedef QtPrivate::FunctionPointer SignalType; return disconnectImpl(sender, reinterpret_cast(&signal), receiver, zero, -- cgit v1.2.3 From 7f32f6d6828e7c2c7defc8f476541969e2821cfa Mon Sep 17 00:00:00 2001 From: Robin Burchell Date: Tue, 20 Dec 2011 18:14:58 +0100 Subject: Merge QTextDocumentFragment::toHtml() overload per Qt 5 comment. Change-Id: Ic8850684c2298b996354e27cc96ad6486d7a3679 Reviewed-by: Bradley T. Hughes --- src/gui/text/qtextdocumentfragment.cpp | 10 ---------- src/gui/text/qtextdocumentfragment.h | 3 +-- 2 files changed, 1 insertion(+), 12 deletions(-) diff --git a/src/gui/text/qtextdocumentfragment.cpp b/src/gui/text/qtextdocumentfragment.cpp index 0c8860e98e..5ab7daf6ad 100644 --- a/src/gui/text/qtextdocumentfragment.cpp +++ b/src/gui/text/qtextdocumentfragment.cpp @@ -372,18 +372,8 @@ QString QTextDocumentFragment::toPlainText() const return d->doc->toPlainText(); } -// #### Qt 5: merge with other overload -/*! - \overload -*/ - #ifndef QT_NO_TEXTHTMLPARSER -QString QTextDocumentFragment::toHtml() const -{ - return toHtml(QByteArray()); -} - /*! \since 4.2 diff --git a/src/gui/text/qtextdocumentfragment.h b/src/gui/text/qtextdocumentfragment.h index 151a1a1ba5..2add88233e 100644 --- a/src/gui/text/qtextdocumentfragment.h +++ b/src/gui/text/qtextdocumentfragment.h @@ -69,8 +69,7 @@ public: QString toPlainText() const; #ifndef QT_NO_TEXTHTMLPARSER - QString toHtml() const; - QString toHtml(const QByteArray &encoding) const; + QString toHtml(const QByteArray &encoding = QByteArray()) const; #endif // QT_NO_TEXTHTMLPARSER static QTextDocumentFragment fromPlainText(const QString &plainText); -- cgit v1.2.3 From c559edd76bdb6cdaf86389789ab05cfff648b195 Mon Sep 17 00:00:00 2001 From: Robin Burchell Date: Tue, 20 Dec 2011 15:31:41 +0100 Subject: Remove non-const getters marked for elimination. These all have consted overloads, so there's no need for them. Change-Id: I3d4f63b8eb8f1b7df7fa772d6172e0a954184d24 Reviewed-by: Bradley T. Hughes --- src/gui/kernel/qevent.cpp | 31 ------------------------------- src/gui/kernel/qevent.h | 4 ---- 2 files changed, 35 deletions(-) diff --git a/src/gui/kernel/qevent.cpp b/src/gui/kernel/qevent.cpp index f69445109c..7bcc2b407e 100644 --- a/src/gui/kernel/qevent.cpp +++ b/src/gui/kernel/qevent.cpp @@ -941,15 +941,6 @@ QFocusEvent::~QFocusEvent() { } -// ### Qt 5: remove -/*! - \internal - */ -Qt::FocusReason QFocusEvent::reason() -{ - return m_reason; -} - /*! Returns the reason for this focus event. */ @@ -3232,13 +3223,6 @@ QClipboardEvent::~QClipboardEvent() Returns the key sequence that triggered the event. */ -// ### Qt 5: remove -/*! - \fn const QKeySequence &QShortcutEvent::key() - - \internal -*/ - /*! \fn int QShortcutEvent::shortcutId() const @@ -3248,14 +3232,6 @@ QClipboardEvent::~QClipboardEvent() \sa QShortcut::id() */ -// ### Qt 5: remove -/*! - \fn int QShortcutEvent::shortcutId() - \overload - - \internal -*/ - /*! \fn bool QShortcutEvent::isAmbiguous() const @@ -3265,13 +3241,6 @@ QClipboardEvent::~QClipboardEvent() \sa QShortcut::activatedAmbiguously() */ -// ### Qt 5: remove -/*! - \fn bool QShortcutEvent::isAmbiguous() - - \internal -*/ - /*! \class QWindowStateChangeEvent \ingroup events diff --git a/src/gui/kernel/qevent.h b/src/gui/kernel/qevent.h index a4d287f16e..c8155026cc 100644 --- a/src/gui/kernel/qevent.h +++ b/src/gui/kernel/qevent.h @@ -266,7 +266,6 @@ public: inline bool gotFocus() const { return type() == FocusIn; } inline bool lostFocus() const { return type() == FocusOut; } - Qt::FocusReason reason(); Qt::FocusReason reason() const; private: @@ -639,11 +638,8 @@ public: QShortcutEvent(const QKeySequence &key, int id, bool ambiguous = false); ~QShortcutEvent(); - inline const QKeySequence &key() { return sequence; } inline const QKeySequence &key() const { return sequence; } - inline int shortcutId() { return sid; } inline int shortcutId() const { return sid; } - inline bool isAmbiguous() { return ambig; } inline bool isAmbiguous() const { return ambig; } protected: QKeySequence sequence; -- cgit v1.2.3 From 9fe76bf6a684c61263e1ef584668404d7c215805 Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Wed, 21 Dec 2011 10:47:38 +1000 Subject: Remove mention of Trolltech in QHttp autotest. The data file named "trolltech" has nothing specific to Trolltech in its contents. Rename it to "testhtml". The lack of a file extension is intentional. Task-number: QTBUG-19653 Change-Id: Idc5c5f4ffa447151e47f66ff7364f0fa8753a699 Reviewed-by: Rohan McGovern --- tests/auto/network/access/qhttp/qhttp.pro | 2 +- tests/auto/network/access/qhttp/testhtml | 8 ++++++++ tests/auto/network/access/qhttp/trolltech | 8 -------- tests/auto/network/access/qhttp/tst_qhttp.cpp | 6 +++--- 4 files changed, 12 insertions(+), 12 deletions(-) create mode 100644 tests/auto/network/access/qhttp/testhtml delete mode 100644 tests/auto/network/access/qhttp/trolltech diff --git a/tests/auto/network/access/qhttp/qhttp.pro b/tests/auto/network/access/qhttp/qhttp.pro index d25b321851..d672eb6009 100644 --- a/tests/auto/network/access/qhttp/qhttp.pro +++ b/tests/auto/network/access/qhttp/qhttp.pro @@ -10,7 +10,7 @@ wince*: { webFiles.path = webserver cgi.files = webserver/cgi-bin/* cgi.path = webserver/cgi-bin - addFiles.files = rfc3252.txt trolltech + addFiles.files = rfc3252.txt testhtml addFiles.path = . DEPLOYMENT += addFiles webFiles cgi DEFINES += SRCDIR=\\\"\\\" diff --git a/tests/auto/network/access/qhttp/testhtml b/tests/auto/network/access/qhttp/testhtml new file mode 100644 index 0000000000..c155360e8d --- /dev/null +++ b/tests/auto/network/access/qhttp/testhtml @@ -0,0 +1,8 @@ + + + Test + + +

Test

+ + diff --git a/tests/auto/network/access/qhttp/trolltech b/tests/auto/network/access/qhttp/trolltech deleted file mode 100644 index c155360e8d..0000000000 --- a/tests/auto/network/access/qhttp/trolltech +++ /dev/null @@ -1,8 +0,0 @@ - - - Test - - -

Test

- - diff --git a/tests/auto/network/access/qhttp/tst_qhttp.cpp b/tests/auto/network/access/qhttp/tst_qhttp.cpp index f6514bade1..8adb0ca05d 100644 --- a/tests/auto/network/access/qhttp/tst_qhttp.cpp +++ b/tests/auto/network/access/qhttp/tst_qhttp.cpp @@ -306,9 +306,9 @@ void tst_QHttp::get_data() QByteArray rfc3252 = file.readAll(); file.close(); - file.setFileName( SRCDIR "trolltech" ); + file.setFileName( SRCDIR "testhtml" ); QVERIFY( file.open( QIODevice::ReadOnly ) ); - QByteArray trolltech = file.readAll(); + QByteArray testhtml = file.readAll(); file.close(); // test the two get() modes in one routine @@ -334,7 +334,7 @@ void tst_QHttp::get_data() // qt.nokia.com/doc uses transfer-encoding=chunked /* qt.nokia.com/doc no longer seams to be using chuncked encodig. QTest::newRow( QString("chunked_01_%1").arg(i).toLatin1() ) << QString("test.troll.no") << 80u - << QString("/") << 1 << 200 << trolltech << (bool)(i==1); + << QString("/") << 1 << 200 << testhtml << (bool)(i==1); */ QTest::newRow( QString("chunked_02_%1").arg(i).toLatin1() ) << QtNetworkSettings::serverName() << 80u << QString("/qtest/cgi-bin/rfc.cgi") << 1 << 200 << rfc3252 << (bool)(i==1); -- cgit v1.2.3 From 087c4c6bc14fe48e9b4e5aed7d1f2b8c55d4632f Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Wed, 21 Dec 2011 11:17:39 +1000 Subject: Remove mention of trolltech from QThreadStorage test. Task-number: QTBUG-19653 Change-Id: I6c74a15b6c6db415a545328b73b6dd704d69bfee Reviewed-by: Rohan McGovern --- tests/auto/corelib/thread/qthreadstorage/tst_qthreadstorage.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/auto/corelib/thread/qthreadstorage/tst_qthreadstorage.cpp b/tests/auto/corelib/thread/qthreadstorage/tst_qthreadstorage.cpp index c343d1d8d4..11f2ef5f3f 100644 --- a/tests/auto/corelib/thread/qthreadstorage/tst_qthreadstorage.cpp +++ b/tests/auto/corelib/thread/qthreadstorage/tst_qthreadstorage.cpp @@ -465,7 +465,7 @@ void tst_QThreadStorage::valueBased() t2.someNumber = -128; t3.someNumber = 78; t1.someString = "hello"; - t2.someString = "trolltech"; + t2.someString = "australia"; t3.someString = "nokia"; t1.start(); -- cgit v1.2.3 From 12392e222a6792b87ba7c3c4e67860be589adb23 Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Wed, 21 Dec 2011 11:26:26 +1000 Subject: Remove mentions of Trolltech from QRegExp autotest. Task-number: QTBUG-19653 Change-Id: I55ae6bed6fb2177cdc842de34ef31ae98d0d3237 Reviewed-by: Rohan McGovern --- tests/auto/corelib/tools/qregexp/tst_qregexp.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/auto/corelib/tools/qregexp/tst_qregexp.cpp b/tests/auto/corelib/tools/qregexp/tst_qregexp.cpp index d66e6b35da..b183f9f2c8 100644 --- a/tests/auto/corelib/tools/qregexp/tst_qregexp.cpp +++ b/tests/auto/corelib/tools/qregexp/tst_qregexp.cpp @@ -348,7 +348,7 @@ void tst_QRegExp::indexIn_addMoreRows(const QByteArray &stri) // miscellaneous QTest::newRow( stri + "misc00" ) << QString(email) - << QString("troll1@trolltech.com") << 0 << 20 + << QString("email123@example.com") << 0 << 20 << QStringList(); QTest::newRow( stri + "misc01" ) << QString("[0-9]*\\.[0-9]+") << QString("pi = 3.14") << 5 << 4 << QStringList(); @@ -791,7 +791,7 @@ void tst_QRegExp::wildcard_data() QTest::newRow( "data0" ) << QString("*.html") << QString("test.html") << 0; QTest::newRow( "data1" ) << QString("*.html") << QString("test.htm") << -1; QTest::newRow( "data2" ) << QString("bar*") << QString("foobarbaz") << 3; - QTest::newRow( "data3" ) << QString("*") << QString("Trolltech") << 0; + QTest::newRow( "data3" ) << QString("*") << QString("Qt Rocks!") << 0; QTest::newRow( "data4" ) << QString(".html") << QString("test.html") << 4; QTest::newRow( "data5" ) << QString(".h") << QString("test.cpp") << -1; QTest::newRow( "data6" ) << QString(".???l") << QString("test.html") << 4; -- cgit v1.2.3 From 9e0479496ed17ab0baca882e0928ff198c6cb7b0 Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Wed, 21 Dec 2011 11:28:57 +1000 Subject: Remove mention of Trolltech from QGraphicsScene autotest. Task-number: QTBUG-19653 Change-Id: Iabebf17f5b09c17a767e81a0ccadd03513238a75 Reviewed-by: Rohan McGovern --- tests/auto/widgets/graphicsview/qgraphicsscene/tst_qgraphicsscene.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/auto/widgets/graphicsview/qgraphicsscene/tst_qgraphicsscene.cpp b/tests/auto/widgets/graphicsview/qgraphicsscene/tst_qgraphicsscene.cpp index dc1e1cb804..eebea90a61 100644 --- a/tests/auto/widgets/graphicsview/qgraphicsscene/tst_qgraphicsscene.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicsscene/tst_qgraphicsscene.cpp @@ -3070,7 +3070,7 @@ void tst_QGraphicsScene::tabFocus_sceneWithFocusableItems() item->setFocus(); item->clearFocus(); - QGraphicsTextItem *item2 = scene.addText("Trolltech rocks!"); + QGraphicsTextItem *item2 = scene.addText("Qt rocks!"); item2->setTabChangesFocus(true); item2->setTextInteractionFlags(Qt::TextEditorInteraction); item2->setPos(0, item->boundingRect().bottom()); -- cgit v1.2.3 From 1e7296f3f2e7346f52e8f70d4e531405a248aa8b Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Wed, 21 Dec 2011 11:47:28 +1000 Subject: Remove mention of Trolltech in qlibrary autotest. Task-number: QTBUG-19653 Change-Id: I8cf21bac41b08187528ba7004a7a23b9baa64b17 Reviewed-by: Rohan McGovern --- tests/auto/corelib/plugin/qlibrary/.gitignore | 2 +- tests/auto/corelib/plugin/qlibrary/lib2/lib2.pro | 4 ++-- tests/auto/corelib/plugin/qlibrary/tst_qlibrary.cpp | 10 +++++----- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/tests/auto/corelib/plugin/qlibrary/.gitignore b/tests/auto/corelib/plugin/qlibrary/.gitignore index 38963f2235..3841c7a33c 100644 --- a/tests/auto/corelib/plugin/qlibrary/.gitignore +++ b/tests/auto/corelib/plugin/qlibrary/.gitignore @@ -7,4 +7,4 @@ mylib2.dll mylib2.exp mylib2.lib mylib_noextension -system.trolltech.test.mylib.dll +system.qt.test.mylib.dll diff --git a/tests/auto/corelib/plugin/qlibrary/lib2/lib2.pro b/tests/auto/corelib/plugin/qlibrary/lib2/lib2.pro index 7d319d644e..a15393b214 100644 --- a/tests/auto/corelib/plugin/qlibrary/lib2/lib2.pro +++ b/tests/auto/corelib/plugin/qlibrary/lib2/lib2.pro @@ -21,10 +21,10 @@ win32 { } else { src = $(DESTDIR_TARGET) } - files = mylib.dl2 system.trolltech.test.mylib.dll + files = mylib.dl2 system.qt.test.mylib.dll } else { src = $(DESTDIR)$(TARGET) - files = libmylib.so2 system.trolltech.test.mylib.so + files = libmylib.so2 system.qt.test.mylib.so } # This project is testdata for tst_qlibrary diff --git a/tests/auto/corelib/plugin/qlibrary/tst_qlibrary.cpp b/tests/auto/corelib/plugin/qlibrary/tst_qlibrary.cpp index 5156070a32..6b786c9def 100644 --- a/tests/auto/corelib/plugin/qlibrary/tst_qlibrary.cpp +++ b/tests/auto/corelib/plugin/qlibrary/tst_qlibrary.cpp @@ -203,11 +203,11 @@ void tst_QLibrary::load_data() # if defined(Q_OS_WIN32) || defined(Q_OS_WINCE) QTest::newRow( "ok01 (with suffix)" ) << currDir + "/mylib.dll" << true; QTest::newRow( "ok02 (with non-standard suffix)" ) << currDir + "/mylib.dl2" << true; - QTest::newRow( "ok03 (with many dots)" ) << currDir + "/system.trolltech.test.mylib.dll" << true; + QTest::newRow( "ok03 (with many dots)" ) << currDir + "/system.qt.test.mylib.dll" << true; # elif defined Q_OS_UNIX QTest::newRow( "ok01 (with suffix)" ) << currDir + "/libmylib" SUFFIX << true; QTest::newRow( "ok02 (with non-standard suffix)" ) << currDir + "/libmylib.so2" << true; - QTest::newRow( "ok03 (with many dots)" ) << currDir + "/system.trolltech.test.mylib.so" << true; + QTest::newRow( "ok03 (with many dots)" ) << currDir + "/system.qt.test.mylib.so" << true; # endif // Q_OS_UNIX } @@ -334,7 +334,7 @@ void tst_QLibrary::isLibrary_data() QTest::newRow("bad (libmylib.1.0.0.foo)") << QString("libmylib.1.0.0.foo") << false; #elif defined(Q_OS_WIN) - QTest::newRow("good (with many dots)" ) << "/system.trolltech.test.mylib.dll" << true; + QTest::newRow("good (with many dots)" ) << "/system.qt.test.mylib.dll" << true; #endif } @@ -437,11 +437,11 @@ void tst_QLibrary::loadHints_data() # if defined(Q_OS_WIN32) || defined(Q_OS_WINCE) QTest::newRow( "ok01 (with suffix)" ) << currDir + "/mylib.dll" << int(lh) << true; QTest::newRow( "ok02 (with non-standard suffix)" ) << currDir + "/mylib.dl2" << int(lh) << true; - QTest::newRow( "ok03 (with many dots)" ) << currDir + "/system.trolltech.test.mylib.dll" << int(lh) << true; + QTest::newRow( "ok03 (with many dots)" ) << currDir + "/system.qt.test.mylib.dll" << int(lh) << true; # elif defined Q_OS_UNIX QTest::newRow( "ok01 (with suffix)" ) << currDir + "/libmylib" SUFFIX << int(lh) << true; QTest::newRow( "ok02 (with non-standard suffix)" ) << currDir + "/libmylib.so2" << int(lh) << true; - QTest::newRow( "ok03 (with many dots)" ) << currDir + "/system.trolltech.test.mylib.so" << int(lh) << true; + QTest::newRow( "ok03 (with many dots)" ) << currDir + "/system.qt.test.mylib.so" << int(lh) << true; # endif // Q_OS_UNIX } -- cgit v1.2.3 From ea415e20607016651f3cef02dff109235d84eb4d Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Thu, 22 Dec 2011 17:16:48 +1000 Subject: Cleanup corelib autotests. When using QSignalSpy, always verify that the signal spy is valid. This will cause the test to give a meaningful failure when spying on a non-existant signal. Without this change, tests that spy on a signal to ensure that it is not emitted (i.e. by comparing the spy count to zero) could pass erroneously if something went wrong when creating the signal spy, as an invalid QSignalSpy will always return a count of zero. Change-Id: I41f4a63d9f0de9190a86de237662dc96be802446 Reviewed-by: Thiago Macieira Reviewed-by: Rohan McGovern --- .../qanimationgroup/tst_qanimationgroup.cpp | 1 + .../tst_qparallelanimationgroup.cpp | 22 ++++++ .../qpropertyanimation/tst_qpropertyanimation.cpp | 21 ++++++ .../tst_qsequentialanimationgroup.cpp | 23 +++++++ .../qfuturewatcher/tst_qfuturewatcher.cpp | 36 ++++++++-- tests/auto/corelib/io/qfile/tst_qfile.cpp | 5 +- .../qfilesystemwatcher/tst_qfilesystemwatcher.cpp | 4 ++ tests/auto/corelib/io/qprocess/tst_qprocess.cpp | 38 +++++++++++ .../qabstractitemmodel/tst_qabstractitemmodel.cpp | 44 ++++++++++++ .../tst_qidentityproxymodel.cpp | 20 ++++++ .../tst_qitemselectionmodel.cpp | 10 +++ .../tst_qsortfilterproxymodel.cpp | 51 ++++++++++++++ .../corelib/kernel/qeventloop/tst_qeventloop.cpp | 5 ++ .../corelib/kernel/qitemmodel/tst_qitemmodel.cpp | 17 +++++ .../corelib/kernel/qmetaobject/tst_qmetaobject.cpp | 1 + .../kernel/qsocketnotifier/tst_qsocketnotifier.cpp | 3 + .../plugin/qpluginloader/tst_qpluginloader.cpp | 2 + .../qstatemachine/tst_qstatemachine.cpp | 79 ++++++++++++++++++++++ .../auto/corelib/tools/qtimeline/tst_qtimeline.cpp | 12 ++++ 19 files changed, 386 insertions(+), 8 deletions(-) diff --git a/tests/auto/corelib/animation/qanimationgroup/tst_qanimationgroup.cpp b/tests/auto/corelib/animation/qanimationgroup/tst_qanimationgroup.cpp index 4c111a88d4..d020fe9290 100644 --- a/tests/auto/corelib/animation/qanimationgroup/tst_qanimationgroup.cpp +++ b/tests/auto/corelib/animation/qanimationgroup/tst_qanimationgroup.cpp @@ -138,6 +138,7 @@ void tst_QAnimationGroup::emptyGroup() { QSequentialAnimationGroup group; QSignalSpy groupStateChangedSpy(&group, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); + QVERIFY(groupStateChangedSpy.isValid()); QCOMPARE(group.state(), QAnimationGroup::Stopped); group.start(); diff --git a/tests/auto/corelib/animation/qparallelanimationgroup/tst_qparallelanimationgroup.cpp b/tests/auto/corelib/animation/qparallelanimationgroup/tst_qparallelanimationgroup.cpp index e091666c2a..3f65d079ca 100644 --- a/tests/auto/corelib/animation/qparallelanimationgroup/tst_qparallelanimationgroup.cpp +++ b/tests/auto/corelib/animation/qparallelanimationgroup/tst_qparallelanimationgroup.cpp @@ -261,6 +261,11 @@ void tst_QParallelAnimationGroup::stateChanged() QSignalSpy spy3(anim3, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); QSignalSpy spy4(anim4, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); + QVERIFY(spy1.isValid()); + QVERIFY(spy2.isValid()); + QVERIFY(spy3.isValid()); + QVERIFY(spy4.isValid()); + //first; let's start forward group.start(); //all the animations should be started @@ -432,6 +437,9 @@ void tst_QParallelAnimationGroup::updateChildrenWithRunningGroup() QSignalSpy groupStateChangedSpy(&group, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); QSignalSpy childStateChangedSpy(&anim, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); + QVERIFY(groupStateChangedSpy.isValid()); + QVERIFY(childStateChangedSpy.isValid()); + QCOMPARE(groupStateChangedSpy.count(), 0); QCOMPARE(childStateChangedSpy.count(), 0); QCOMPARE(group.state(), QAnimationGroup::Stopped); @@ -596,6 +604,9 @@ void tst_QParallelAnimationGroup::startGroupWithRunningChild() QSignalSpy stateChangedSpy1(&anim1, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); QSignalSpy stateChangedSpy2(&anim2, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); + QVERIFY(stateChangedSpy1.isValid()); + QVERIFY(stateChangedSpy2.isValid()); + QCOMPARE(stateChangedSpy1.count(), 0); QCOMPARE(stateChangedSpy2.count(), 0); QCOMPARE(group.state(), QAnimationGroup::Stopped); @@ -661,12 +672,21 @@ void tst_QParallelAnimationGroup::zeroDurationAnimation() QSignalSpy stateChangedSpy1(&anim1, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); QSignalSpy finishedSpy1(&anim1, SIGNAL(finished())); + QVERIFY(stateChangedSpy1.isValid()); + QVERIFY(finishedSpy1.isValid()); + QSignalSpy stateChangedSpy2(&anim2, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); QSignalSpy finishedSpy2(&anim2, SIGNAL(finished())); + QVERIFY(stateChangedSpy2.isValid()); + QVERIFY(finishedSpy2.isValid()); + QSignalSpy stateChangedSpy3(&anim3, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); QSignalSpy finishedSpy3(&anim3, SIGNAL(finished())); + QVERIFY(stateChangedSpy3.isValid()); + QVERIFY(finishedSpy3.isValid()); + group.addAnimation(&anim1); group.addAnimation(&anim2); group.addAnimation(&anim3); @@ -741,6 +761,7 @@ void tst_QParallelAnimationGroup::stopUncontrolledAnimations() loopsForever.setLoopCount(-1); QSignalSpy stateChangedSpy(&anim1, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); + QVERIFY(stateChangedSpy.isValid()); group.addAnimation(&anim1); group.addAnimation(¬TimeDriven); @@ -948,6 +969,7 @@ void tst_QParallelAnimationGroup::pauseResume() QParallelAnimationGroup group; TestAnimation2 *anim = new TestAnimation2(250, &group); // 0, duration = 250; QSignalSpy spy(anim, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); + QVERIFY(spy.isValid()); QCOMPARE(group.duration(), 250); group.start(); QTest::qWait(100); diff --git a/tests/auto/corelib/animation/qpropertyanimation/tst_qpropertyanimation.cpp b/tests/auto/corelib/animation/qpropertyanimation/tst_qpropertyanimation.cpp index 51b7359980..61fd31ca69 100644 --- a/tests/auto/corelib/animation/qpropertyanimation/tst_qpropertyanimation.cpp +++ b/tests/auto/corelib/animation/qpropertyanimation/tst_qpropertyanimation.cpp @@ -230,6 +230,10 @@ void tst_QPropertyAnimation::statesAndSignals() QSignalSpy runningSpy(anim, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); QSignalSpy currentLoopSpy(anim, SIGNAL(currentLoopChanged(int))); + QVERIFY(finishedSpy.isValid()); + QVERIFY(runningSpy.isValid()); + QVERIFY(currentLoopSpy.isValid()); + anim->setCurrentTime(1); anim->setCurrentTime(100); QCOMPARE(finishedSpy.count(), 0); @@ -305,6 +309,8 @@ void tst_QPropertyAnimation::deletion1() //test that the animation is deleted correctly depending of the deletion flag passed in start() QSignalSpy runningSpy(anim, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); QSignalSpy finishedSpy(anim, SIGNAL(finished())); + QVERIFY(runningSpy.isValid()); + QVERIFY(finishedSpy.isValid()); anim->setStartValue(10); anim->setEndValue(20); anim->setDuration(200); @@ -348,6 +354,9 @@ void tst_QPropertyAnimation::deletion2() QSignalSpy runningSpy(anim, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); QSignalSpy finishedSpy(anim, SIGNAL(finished())); + QVERIFY(runningSpy.isValid()); + QVERIFY(finishedSpy.isValid()); + anim->setStartValue(10); anim->setEndValue(20); anim->setDuration(200); @@ -378,6 +387,10 @@ void tst_QPropertyAnimation::deletion3() QSignalSpy runningSpy(anim, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); QSignalSpy finishedSpy(anim, SIGNAL(finished())); + + QVERIFY(runningSpy.isValid()); + QVERIFY(finishedSpy.isValid()); + anim->start(); QTest::qWait(50); @@ -474,6 +487,7 @@ void tst_QPropertyAnimation::startWhenAnotherIsRunning() QPointer anim = new QPropertyAnimation(&o, "ole"); anim->setEndValue(100); QSignalSpy runningSpy(anim, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); + QVERIFY(runningSpy.isValid()); anim->start(QVariantAnimation::DeleteWhenStopped); QTest::qWait(anim->duration() + 100); QTRY_COMPARE(runningSpy.count(), 2); //started and then stopped @@ -484,6 +498,7 @@ void tst_QPropertyAnimation::startWhenAnotherIsRunning() QPointer anim = new QPropertyAnimation(&o, "ole"); anim->setEndValue(100); QSignalSpy runningSpy(anim, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); + QVERIFY(runningSpy.isValid()); anim->start(QVariantAnimation::DeleteWhenStopped); QTest::qWait(anim->duration()/2); QPointer anim2 = new QPropertyAnimation(&o, "ole"); @@ -834,6 +849,7 @@ void tst_QPropertyAnimation::zeroDurationStart() { DummyPropertyAnimation anim; QSignalSpy spy(&anim, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); + QVERIFY(spy.isValid()); anim.setDuration(0); QCOMPARE(anim.state(), QAbstractAnimation::Stopped); anim.start(); @@ -911,6 +927,7 @@ void tst_QPropertyAnimation::operationsInStates() QPropertyAnimation anim(&o, "ole"); anim.setEndValue(100); QSignalSpy spy(&anim, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); + QVERIFY(spy.isValid()); anim.stop(); switch (originState) { @@ -1071,6 +1088,7 @@ void tst_QPropertyAnimation::valueChanged() anim.setEndValue(5); anim.setDuration(1000); QSignalSpy spy(&anim, SIGNAL(valueChanged(QVariant))); + QVERIFY(spy.isValid()); anim.start(); QTest::qWait(anim.duration() + 100); @@ -1203,6 +1221,9 @@ void tst_QPropertyAnimation::zeroLoopCount() QSignalSpy runningSpy(anim, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); QSignalSpy finishedSpy(anim, SIGNAL(finished())); + QVERIFY(runningSpy.isValid()); + QVERIFY(finishedSpy.isValid()); + QCOMPARE(anim->state(), QAnimationGroup::Stopped); QCOMPARE(anim->currentValue().toInt(), 0); QCOMPARE(runningSpy.count(), 0); diff --git a/tests/auto/corelib/animation/qsequentialanimationgroup/tst_qsequentialanimationgroup.cpp b/tests/auto/corelib/animation/qsequentialanimationgroup/tst_qsequentialanimationgroup.cpp index c7a996444f..6cc406b8a3 100644 --- a/tests/auto/corelib/animation/qsequentialanimationgroup/tst_qsequentialanimationgroup.cpp +++ b/tests/auto/corelib/animation/qsequentialanimationgroup/tst_qsequentialanimationgroup.cpp @@ -642,6 +642,9 @@ void tst_QSequentialAnimationGroup::pauseAndResume() QSignalSpy a1StateChangedSpy(a1_s_o1, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); QSignalSpy seqStateChangedSpy(sequence, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); + QVERIFY(a1StateChangedSpy.isValid()); + QVERIFY(seqStateChangedSpy.isValid()); + QSequentialAnimationGroup group; group.addAnimation(sequence); @@ -746,6 +749,9 @@ void tst_QSequentialAnimationGroup::restart() QSignalSpy seqCurrentAnimChangedSpy(sequence, SIGNAL(currentAnimationChanged(QAbstractAnimation*))); QSignalSpy seqStateChangedSpy(sequence, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); + QVERIFY(seqCurrentAnimChangedSpy.isValid()); + QVERIFY(seqStateChangedSpy.isValid()); + QVariantAnimation *anims[3]; QSignalSpy *animsStateChanged[3]; @@ -753,6 +759,7 @@ void tst_QSequentialAnimationGroup::restart() anims[i] = new DummyPropertyAnimation; anims[i]->setDuration(100); animsStateChanged[i] = new QSignalSpy(anims[i], SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); + QVERIFY(animsStateChanged[i]->isValid()); } anims[1]->setLoopCount(2); @@ -816,6 +823,11 @@ void tst_QSequentialAnimationGroup::looping() QSignalSpy a3Spy(a3_s_o1, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); QSignalSpy seqSpy(sequence, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); + QVERIFY(a1Spy.isValid()); + QVERIFY(a2Spy.isValid()); + QVERIFY(a3Spy.isValid()); + QVERIFY(seqSpy.isValid()); + a2_s_o1->setLoopCount(2); sequence->addAnimation(a1_s_o1); sequence->addAnimation(a2_s_o1); @@ -824,6 +836,7 @@ void tst_QSequentialAnimationGroup::looping() QSequentialAnimationGroup group; QSignalSpy groupSpy(&group, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); + QVERIFY(groupSpy.isValid()); group.addAnimation(sequence); group.setLoopCount(2); @@ -1093,6 +1106,9 @@ void tst_QSequentialAnimationGroup::updateChildrenWithRunningGroup() QSignalSpy groupStateChangedSpy(&group, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); QSignalSpy childStateChangedSpy(&anim, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); + QVERIFY(groupStateChangedSpy.isValid()); + QVERIFY(childStateChangedSpy.isValid()); + QCOMPARE(groupStateChangedSpy.count(), 0); QCOMPARE(childStateChangedSpy.count(), 0); QCOMPARE(group.state(), QAnimationGroup::Stopped); @@ -1257,6 +1273,9 @@ void tst_QSequentialAnimationGroup::startGroupWithRunningChild() QSignalSpy stateChangedSpy1(anim1, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); QSignalSpy stateChangedSpy2(anim2, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); + QVERIFY(stateChangedSpy1.isValid()); + QVERIFY(stateChangedSpy2.isValid()); + QCOMPARE(stateChangedSpy1.count(), 0); QCOMPARE(stateChangedSpy2.count(), 0); QCOMPARE(group.state(), QAnimationGroup::Stopped); @@ -1329,6 +1348,7 @@ void tst_QSequentialAnimationGroup::zeroDurationAnimation() anim3->setDuration(0); QSignalSpy stateChangedSpy(anim1, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); + QVERIFY(stateChangedSpy.isValid()); group.addAnimation(anim1); group.addAnimation(anim2); @@ -1400,6 +1420,7 @@ void tst_QSequentialAnimationGroup::finishWithUncontrolledAnimation() QSequentialAnimationGroup group; UncontrolledAnimation notTimeDriven(&o1, &group); QSignalSpy spy(&group, SIGNAL(finished())); + QVERIFY(spy.isValid()); group.start(); QCOMPARE(group.state(), QAnimationGroup::Running); @@ -1419,6 +1440,7 @@ void tst_QSequentialAnimationGroup::finishWithUncontrolledAnimation() spy.clear(); DummyPropertyAnimation anim(&group); QSignalSpy animStateChangedSpy(&anim, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); + QVERIFY(animStateChangedSpy.isValid()); group.setCurrentTime(300); QCOMPARE(group.state(), QAnimationGroup::Stopped); @@ -1620,6 +1642,7 @@ void tst_QSequentialAnimationGroup::pauseResume() anim->setDuration(250); anim->setEndValue(250); QSignalSpy spy(anim, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State))); + QVERIFY(spy.isValid()); QCOMPARE(group.duration(), 250); group.start(); QTest::qWait(100); diff --git a/tests/auto/corelib/concurrent/qfuturewatcher/tst_qfuturewatcher.cpp b/tests/auto/corelib/concurrent/qfuturewatcher/tst_qfuturewatcher.cpp index c7e35e2b75..ca0816eca1 100644 --- a/tests/auto/corelib/concurrent/qfuturewatcher/tst_qfuturewatcher.cpp +++ b/tests/auto/corelib/concurrent/qfuturewatcher/tst_qfuturewatcher.cpp @@ -90,17 +90,20 @@ void tst_QFutureWatcher::startFinish() { QFutureWatcher futureWatcher; - QSignalSpy started(&futureWatcher, SIGNAL(started())); - QSignalSpy finished(&futureWatcher, SIGNAL(finished())); + QSignalSpy startedSpy(&futureWatcher, SIGNAL(started())); + QSignalSpy finishedSpy(&futureWatcher, SIGNAL(finished())); + + QVERIFY(startedSpy.isValid()); + QVERIFY(finishedSpy.isValid()); futureWatcher.setFuture(QtConcurrent::run(sleeper)); QTest::qWait(10); // spin the event loop to deliver queued signals. - QCOMPARE(started.count(), 1); - QCOMPARE(finished.count(), 0); + QCOMPARE(startedSpy.count(), 1); + QCOMPARE(finishedSpy.count(), 0); futureWatcher.future().waitForFinished(); QTest::qWait(10); - QCOMPARE(started.count(), 1); - QCOMPARE(finished.count(), 1); + QCOMPARE(startedSpy.count(), 1); + QCOMPARE(finishedSpy.count(), 1); } void mapSleeper(int &) @@ -323,6 +326,7 @@ void tst_QFutureWatcher::futureSignals() f.setFuture(a.future()); QSignalSpy progressSpy(&f, SIGNAL(progressValueChanged(int))); + QVERIFY(progressSpy.isValid()); const int progress = 1; a.setProgressValue(progress); QTest::qWait(10); @@ -333,6 +337,9 @@ void tst_QFutureWatcher::futureSignals() QSignalSpy finishedSpy(&f, SIGNAL(finished())); QSignalSpy resultReadySpy(&f, SIGNAL(resultReadyAt(int))); + QVERIFY(finishedSpy.isValid()); + QVERIFY(resultReadySpy.isValid()); + const int result = 10; a.reportResult(&result); QTest::qWait(10); @@ -375,6 +382,11 @@ void tst_QFutureWatcher::watchFinishedFuture() QSignalSpy resultReadySpy(&watcher, SIGNAL(resultReadyAt(int))); QSignalSpy canceledSpy(&watcher, SIGNAL(canceled())); + QVERIFY(startedSpy.isValid()); + QVERIFY(finishedSpy.isValid()); + QVERIFY(resultReadySpy.isValid()); + QVERIFY(canceledSpy.isValid()); + watcher.setFuture(f); QTest::qWait(10); @@ -404,6 +416,11 @@ void tst_QFutureWatcher::watchCanceledFuture() QSignalSpy resultReadySpy(&watcher, SIGNAL(resultReadyAt(int))); QSignalSpy canceledSpy(&watcher, SIGNAL(canceled())); + QVERIFY(startedSpy.isValid()); + QVERIFY(finishedSpy.isValid()); + QVERIFY(resultReadySpy.isValid()); + QVERIFY(canceledSpy.isValid()); + watcher.setFuture(f); QTest::qWait(10); @@ -428,6 +445,9 @@ void tst_QFutureWatcher::disconnectRunningFuture() QSignalSpy finishedSpy(watcher, SIGNAL(finished())); QSignalSpy resultReadySpy(watcher, SIGNAL(resultReadyAt(int))); + QVERIFY(finishedSpy.isValid()); + QVERIFY(resultReadySpy.isValid()); + const int result = 10; a.reportResult(&result); QTest::qWait(10); @@ -618,6 +638,7 @@ void tst_QFutureWatcher::changeFuture() SignalSlotObject object; connect(&watcher, SIGNAL(resultReadyAt(int)), &object, SLOT(resultReadyAt(int))); QSignalSpy resultReadySpy(&watcher, SIGNAL(resultReadyAt(int))); + QVERIFY(resultReadySpy.isValid()); watcher.setFuture(a); // Watch 'a' which will genere a resultReady event. watcher.setFuture(b); // But oh no! we're switching to another future @@ -649,6 +670,7 @@ void tst_QFutureWatcher::cancelEvents() SignalSlotObject object; connect(&watcher, SIGNAL(resultReadyAt(int)), &object, SLOT(resultReadyAt(int))); QSignalSpy resultReadySpy(&watcher, SIGNAL(resultReadyAt(int))); + QVERIFY(resultReadySpy.isValid()); watcher.setFuture(a); watcher.cancel(); @@ -676,6 +698,7 @@ void tst_QFutureWatcher::pauseEvents() SignalSlotObject object; connect(&watcher, SIGNAL(resultReadyAt(int)), &object, SLOT(resultReadyAt(int))); QSignalSpy resultReadySpy(&watcher, SIGNAL(resultReadyAt(int))); + QVERIFY(resultReadySpy.isValid()); watcher.setFuture(a); watcher.pause(); @@ -701,6 +724,7 @@ void tst_QFutureWatcher::pauseEvents() SignalSlotObject object; connect(&watcher, SIGNAL(resultReadyAt(int)), &object, SLOT(resultReadyAt(int))); QSignalSpy resultReadySpy(&watcher, SIGNAL(resultReadyAt(int))); + QVERIFY(resultReadySpy.isValid()); watcher.setFuture(a); a.pause(); diff --git a/tests/auto/corelib/io/qfile/tst_qfile.cpp b/tests/auto/corelib/io/qfile/tst_qfile.cpp index fdb0a7e59c..cae97f80c4 100644 --- a/tests/auto/corelib/io/qfile/tst_qfile.cpp +++ b/tests/auto/corelib/io/qfile/tst_qfile.cpp @@ -1483,14 +1483,15 @@ void tst_QFile::tailFile() QVERIFY(tailFile.open(QFile::ReadOnly)); tailFile.seek(file.size()); - QSignalSpy readSignal(&tailFile, SIGNAL(readyRead())); + QSignalSpy readSignalSpy(&tailFile, SIGNAL(readyRead())); + QVERIFY(readSignalSpy.isValid()); file.write("", 1); QTestEventLoop::instance().enterLoop(5); QVERIFY(!QTestEventLoop::instance().timeout()); - QCOMPARE(readSignal.count(), 1); + QCOMPARE(readSignalSpy.count(), 1); } void tst_QFile::flush() diff --git a/tests/auto/corelib/io/qfilesystemwatcher/tst_qfilesystemwatcher.cpp b/tests/auto/corelib/io/qfilesystemwatcher/tst_qfilesystemwatcher.cpp index b9840bdb75..0f2c163e24 100644 --- a/tests/auto/corelib/io/qfilesystemwatcher/tst_qfilesystemwatcher.cpp +++ b/tests/auto/corelib/io/qfilesystemwatcher/tst_qfilesystemwatcher.cpp @@ -138,6 +138,7 @@ void tst_QFileSystemWatcher::basicTest() watcher.addPath(testFile.fileName()); QSignalSpy changedSpy(&watcher, SIGNAL(fileChanged(const QString &))); + QVERIFY(changedSpy.isValid()); QEventLoop eventLoop; QTimer timer; connect(&timer, SIGNAL(timeout()), &eventLoop, SLOT(quit())); @@ -273,6 +274,7 @@ void tst_QFileSystemWatcher::watchDirectory() watcher.addPath(testDir.dirName()); QSignalSpy changedSpy(&watcher, SIGNAL(directoryChanged(const QString &))); + QVERIFY(changedSpy.isValid()); QEventLoop eventLoop; QTimer timer; connect(&timer, SIGNAL(timeout()), &eventLoop, SLOT(quit())); @@ -423,6 +425,8 @@ void tst_QFileSystemWatcher::watchFileAndItsDirectory() QSignalSpy fileChangedSpy(&watcher, SIGNAL(fileChanged(const QString &))); QSignalSpy dirChangedSpy(&watcher, SIGNAL(directoryChanged(const QString &))); + QVERIFY(fileChangedSpy.isValid()); + QVERIFY(dirChangedSpy.isValid()); QEventLoop eventLoop; QTimer timer; connect(&timer, SIGNAL(timeout()), &eventLoop, SLOT(quit())); diff --git a/tests/auto/corelib/io/qprocess/tst_qprocess.cpp b/tests/auto/corelib/io/qprocess/tst_qprocess.cpp index 9d0121307c..d8b0b38b0c 100644 --- a/tests/auto/corelib/io/qprocess/tst_qprocess.cpp +++ b/tests/auto/corelib/io/qprocess/tst_qprocess.cpp @@ -239,6 +239,7 @@ void tst_QProcess::simpleStart() process = new QProcess; QSignalSpy spy(process, SIGNAL(stateChanged(QProcess::ProcessState))); + QVERIFY(spy.isValid()); connect(process, SIGNAL(readyRead()), this, SLOT(readFromProcess())); /* valgrind dislike SUID binaries(those that have the `s'-flag set), which @@ -303,6 +304,7 @@ void tst_QProcess::crashTest() #endif process = new QProcess; QSignalSpy stateSpy(process, SIGNAL(stateChanged(QProcess::ProcessState))); + QVERIFY(stateSpy.isValid()); process->start("testProcessCrash/testProcessCrash"); QVERIFY(process->waitForStarted(5000)); @@ -312,6 +314,9 @@ void tst_QProcess::crashTest() QSignalSpy spy(process, SIGNAL(error(QProcess::ProcessError))); QSignalSpy spy2(process, SIGNAL(finished(int, QProcess::ExitStatus))); + QVERIFY(spy.isValid()); + QVERIFY(spy2.isValid()); + QVERIFY(process->waitForFinished(30000)); QCOMPARE(spy.count(), 1); @@ -347,6 +352,9 @@ void tst_QProcess::crashTest2() QSignalSpy spy(process, SIGNAL(error(QProcess::ProcessError))); QSignalSpy spy2(process, SIGNAL(finished(int, QProcess::ExitStatus))); + QVERIFY(spy.isValid()); + QVERIFY(spy2.isValid()); + QObject::connect(process, SIGNAL(finished(int)), this, SLOT(exitLoopSlot())); QTestEventLoop::instance().enterLoop(30); @@ -461,6 +469,9 @@ void tst_QProcess::echoTest2() QSignalSpy spy1(process, SIGNAL(readyReadStandardOutput())); QSignalSpy spy2(process, SIGNAL(readyReadStandardError())); + QVERIFY(spy1.isValid()); + QVERIFY(spy2.isValid()); + QTime stopWatch; stopWatch.start(); forever { @@ -516,6 +527,7 @@ void tst_QProcess::echoTest_performance() qint64 totalBytes = 0; QByteArray dump; QSignalSpy readyReadSpy(&process, SIGNAL(readyRead())); + QVERIFY(readyReadSpy.isValid()); while (stopWatch.elapsed() < 2000) { process.write(array); while (process.bytesToWrite() > 0) { @@ -697,6 +709,7 @@ void tst_QProcess::readTimeoutAndThenCrash() qRegisterMetaType("QProcess::ProcessError"); QSignalSpy spy(process, SIGNAL(error(QProcess::ProcessError))); + QVERIFY(spy.isValid()); process->kill(); @@ -926,6 +939,7 @@ void tst_QProcess::emitReadyReadOnlyWhenNewDataArrives() QProcess proc; connect(&proc, SIGNAL(readyRead()), this, SLOT(exitLoopSlot())); QSignalSpy spy(&proc, SIGNAL(readyRead())); + QVERIFY(spy.isValid()); #ifdef Q_OS_MAC proc.start("testProcessEcho/testProcessEcho.app"); @@ -1307,6 +1321,7 @@ void tst_QProcess::waitForReadyReadInAReadyReadSlot() QVERIFY(process->waitForStarted(5000)); QSignalSpy spy(process, SIGNAL(readyRead())); + QVERIFY(spy.isValid()); process->write("foo"); QTestEventLoop::instance().enterLoop(30); QVERIFY(!QTestEventLoop::instance().timeout()); @@ -1353,6 +1368,7 @@ void tst_QProcess::waitForBytesWrittenInABytesWrittenSlot() qRegisterMetaType("qint64"); QSignalSpy spy(process, SIGNAL(bytesWritten(qint64))); + QVERIFY(spy.isValid()); process->write("f"); QTestEventLoop::instance().enterLoop(30); QVERIFY(!QTestEventLoop::instance().timeout()); @@ -1572,6 +1588,11 @@ void tst_QProcess::failToStart() QSignalSpy finishedSpy(&process, SIGNAL(finished(int))); QSignalSpy finishedSpy2(&process, SIGNAL(finished(int, QProcess::ExitStatus))); + QVERIFY(stateSpy.isValid()); + QVERIFY(errorSpy.isValid()); + QVERIFY(finishedSpy.isValid()); + QVERIFY(finishedSpy2.isValid()); + // Mac OS X and HP-UX have a really low default process limit (~100), so spawning // to many processes here will cause test failures later on. #if defined Q_OS_HPUX @@ -1633,6 +1654,10 @@ void tst_QProcess::failToStartWithWait() QSignalSpy finishedSpy(&process, SIGNAL(finished(int))); QSignalSpy finishedSpy2(&process, SIGNAL(finished(int, QProcess::ExitStatus))); + QVERIFY(errorSpy.isValid()); + QVERIFY(finishedSpy.isValid()); + QVERIFY(finishedSpy2.isValid()); + for (int i = 0; i < 50; ++i) { process.start("/blurp", QStringList() << "-v" << "-debug"); process.waitForStarted(); @@ -1656,6 +1681,10 @@ void tst_QProcess::failToStartWithEventLoop() QSignalSpy finishedSpy(&process, SIGNAL(finished(int))); QSignalSpy finishedSpy2(&process, SIGNAL(finished(int, QProcess::ExitStatus))); + QVERIFY(errorSpy.isValid()); + QVERIFY(finishedSpy.isValid()); + QVERIFY(finishedSpy2.isValid()); + // The error signal may be emitted before start() returns connect(&process, SIGNAL(error(QProcess::ProcessError)), &loop, SLOT(quit()), Qt::QueuedConnection); @@ -1896,6 +1925,11 @@ void tst_QProcess::waitForReadyReadForNonexistantProcess() QSignalSpy errorSpy(&process, SIGNAL(error(QProcess::ProcessError))); QSignalSpy finishedSpy1(&process, SIGNAL(finished(int))); QSignalSpy finishedSpy2(&process, SIGNAL(finished(int, QProcess::ExitStatus))); + + QVERIFY(errorSpy.isValid()); + QVERIFY(finishedSpy1.isValid()); + QVERIFY(finishedSpy2.isValid()); + QVERIFY(!process.waitForReadyRead()); // used to crash process.start("doesntexist"); QVERIFY(!process.waitForReadyRead()); @@ -2233,6 +2267,7 @@ void tst_QProcess::invalidProgramString() qRegisterMetaType("QProcess::ProcessError"); QSignalSpy spy(&process, SIGNAL(error(QProcess::ProcessError))); + QVERIFY(spy.isValid()); process.start(programString); QCOMPARE(process.error(), QProcess::FailedToStart); @@ -2249,6 +2284,9 @@ void tst_QProcess::onlyOneStartedSignal() QSignalSpy spyStarted(&process, SIGNAL(started())); QSignalSpy spyFinished(&process, SIGNAL(finished(int, QProcess::ExitStatus))); + QVERIFY(spyStarted.isValid()); + QVERIFY(spyFinished.isValid()); + process.start("testProcessNormal/testProcessNormal"); QVERIFY(process.waitForStarted(5000)); QVERIFY(process.waitForFinished(5000)); diff --git a/tests/auto/corelib/itemmodels/qabstractitemmodel/tst_qabstractitemmodel.cpp b/tests/auto/corelib/itemmodels/qabstractitemmodel/tst_qabstractitemmodel.cpp index 199d96c0d1..5028728fd6 100644 --- a/tests/auto/corelib/itemmodels/qabstractitemmodel/tst_qabstractitemmodel.cpp +++ b/tests/auto/corelib/itemmodels/qabstractitemmodel/tst_qabstractitemmodel.cpp @@ -720,6 +720,9 @@ void tst_QAbstractItemModel::removeRows() QSignalSpy rowsAboutToBeRemovedSpy(&model, SIGNAL(rowsAboutToBeRemoved( const QModelIndex &, int , int ))); QSignalSpy rowsRemovedSpy(&model, SIGNAL(rowsRemoved( const QModelIndex &, int, int ))); + QVERIFY(rowsAboutToBeRemovedSpy.isValid()); + QVERIFY(rowsRemovedSpy.isValid()); + QCOMPARE(model.removeRows(6, 4), true); QCOMPARE(rowsAboutToBeRemovedSpy.count(), 1); QCOMPARE(rowsRemovedSpy.count(), 1); @@ -732,6 +735,9 @@ void tst_QAbstractItemModel::removeColumns() QSignalSpy columnsAboutToBeRemovedSpy(&model, SIGNAL(columnsAboutToBeRemoved( const QModelIndex &, int , int ))); QSignalSpy columnsRemovedSpy(&model, SIGNAL(columnsRemoved( const QModelIndex &, int, int ))); + QVERIFY(columnsAboutToBeRemovedSpy.isValid()); + QVERIFY(columnsRemovedSpy.isValid()); + QCOMPARE(model.removeColumns(6, 4), true); QCOMPARE(columnsAboutToBeRemovedSpy.count(), 1); QCOMPARE(columnsRemovedSpy.count(), 1); @@ -744,6 +750,9 @@ void tst_QAbstractItemModel::insertRows() QSignalSpy rowsAboutToBeInsertedSpy(&model, SIGNAL(rowsAboutToBeInserted( const QModelIndex &, int , int ))); QSignalSpy rowsInsertedSpy(&model, SIGNAL(rowsInserted( const QModelIndex &, int, int ))); + QVERIFY(rowsAboutToBeInsertedSpy.isValid()); + QVERIFY(rowsInsertedSpy.isValid()); + QCOMPARE(model.insertRows(6, 4), true); QCOMPARE(rowsAboutToBeInsertedSpy.count(), 1); QCOMPARE(rowsInsertedSpy.count(), 1); @@ -756,6 +765,9 @@ void tst_QAbstractItemModel::insertColumns() QSignalSpy columnsAboutToBeInsertedSpy(&model, SIGNAL(columnsAboutToBeInserted( const QModelIndex &, int , int ))); QSignalSpy columnsInsertedSpy(&model, SIGNAL(columnsInserted( const QModelIndex &, int, int ))); + QVERIFY(columnsAboutToBeInsertedSpy.isValid()); + QVERIFY(columnsInsertedSpy.isValid()); + QCOMPARE(model.insertColumns(6, 4), true); QCOMPARE(columnsAboutToBeInsertedSpy.count(), 1); QCOMPARE(columnsInsertedSpy.count(), 1); @@ -766,6 +778,7 @@ void tst_QAbstractItemModel::reset() QtTestModel model(10, 10); QSignalSpy resetSpy(&model, SIGNAL(modelReset())); + QVERIFY(resetSpy.isValid()); model.reset(); QCOMPARE(resetSpy.count(), 1); } @@ -894,6 +907,9 @@ void tst_QAbstractItemModel::testMoveSameParentDown() QSignalSpy beforeSpy(m_model, SIGNAL(rowsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int))); QSignalSpy afterSpy(m_model, SIGNAL(rowsMoved(const QModelIndex &, int, int, const QModelIndex &, int))); + QVERIFY(beforeSpy.isValid()); + QVERIFY(afterSpy.isValid()); + ModelMoveCommand *moveCommand = new ModelMoveCommand(m_model, this); moveCommand->setNumCols(4); if (!topLevel) @@ -1019,6 +1035,8 @@ void tst_QAbstractItemModel::testMoveSameParentUp() QSignalSpy beforeSpy(m_model, SIGNAL(rowsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int))); QSignalSpy afterSpy(m_model, SIGNAL(rowsMoved(const QModelIndex &, int, int, const QModelIndex &, int))); + QVERIFY(beforeSpy.isValid()); + QVERIFY(afterSpy.isValid()); ModelMoveCommand *moveCommand = new ModelMoveCommand(m_model, this); moveCommand->setNumCols(4); @@ -1180,6 +1198,9 @@ void tst_QAbstractItemModel::testMoveToGrandParent() QSignalSpy beforeSpy(m_model, SIGNAL(rowsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int))); QSignalSpy afterSpy(m_model, SIGNAL(rowsMoved(const QModelIndex &, int, int, const QModelIndex &, int))); + QVERIFY(beforeSpy.isValid()); + QVERIFY(afterSpy.isValid()); + QPersistentModelIndex persistentSource = sourceIndex; ModelMoveCommand *moveCommand = new ModelMoveCommand(m_model, this); @@ -1329,6 +1350,9 @@ void tst_QAbstractItemModel::testMoveToSibling() QSignalSpy beforeSpy(m_model, SIGNAL(rowsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int))); QSignalSpy afterSpy(m_model, SIGNAL(rowsMoved(const QModelIndex &, int, int, const QModelIndex &, int))); + QVERIFY(beforeSpy.isValid()); + QVERIFY(afterSpy.isValid()); + QPersistentModelIndex persistentDest = destIndex; ModelMoveCommand *moveCommand = new ModelMoveCommand(m_model, this); @@ -1489,6 +1513,9 @@ void tst_QAbstractItemModel::testMoveToUncle() QSignalSpy beforeSpy(m_model, SIGNAL(rowsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int))); QSignalSpy afterSpy(m_model, SIGNAL(rowsMoved(const QModelIndex &, int, int, const QModelIndex &, int))); + QVERIFY(beforeSpy.isValid()); + QVERIFY(afterSpy.isValid()); + ModelMoveCommand *moveCommand = new ModelMoveCommand(m_model, this); moveCommand->setAncestorRowNumbers(QList() << 9); moveCommand->setNumCols(4); @@ -1604,6 +1631,9 @@ void tst_QAbstractItemModel::testMoveToDescendants() QSignalSpy beforeSpy(m_model, SIGNAL(rowsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int))); QSignalSpy afterSpy(m_model, SIGNAL(rowsMoved(const QModelIndex &, int, int, const QModelIndex &, int))); + QVERIFY(beforeSpy.isValid()); + QVERIFY(afterSpy.isValid()); + ModelMoveCommand *moveCommand; QList ancestors; while (ancestors.size() < depth) @@ -1670,6 +1700,9 @@ void tst_QAbstractItemModel::testMoveWithinOwnRange() QSignalSpy beforeSpy(m_model, SIGNAL(rowsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int))); QSignalSpy afterSpy(m_model, SIGNAL(rowsMoved(const QModelIndex &, int, int, const QModelIndex &, int))); + QVERIFY(beforeSpy.isValid()); + QVERIFY(afterSpy.isValid()); + ModelMoveCommand *moveCommand = new ModelMoveCommand(m_model, this); moveCommand->setNumCols(4); moveCommand->setStartRow(startRow); @@ -1755,6 +1788,8 @@ void tst_QAbstractItemModel::testReset() QSignalSpy beforeResetSpy(m_model, SIGNAL(modelAboutToBeReset())); QSignalSpy afterResetSpy(m_model, SIGNAL(modelReset())); + QVERIFY(beforeResetSpy.isValid()); + QVERIFY(afterResetSpy.isValid()); QSortFilterProxyModel *nullProxy = new QSortFilterProxyModel(this); nullProxy->setSourceModel(m_model); @@ -1821,6 +1856,9 @@ void tst_QAbstractItemModel::testDataChanged() QSignalSpy withRoles(&model, SIGNAL(dataChanged(QModelIndex,QModelIndex,QSet))); QSignalSpy withoutRoles(&model, SIGNAL(dataChanged(QModelIndex,QModelIndex))); + QVERIFY(withRoles.isValid()); + QVERIFY(withoutRoles.isValid()); + model.emitSignals(); QCOMPARE(withRoles.size(), withoutRoles.size()); @@ -1920,6 +1958,9 @@ void tst_QAbstractItemModel::testChildrenLayoutsChanged() QSignalSpy beforeSpy(&model, SIGNAL(layoutAboutToBeChanged(QList))); QSignalSpy afterSpy(&model, SIGNAL(layoutChanged(QList))); + QVERIFY(beforeSpy.isValid()); + QVERIFY(afterSpy.isValid()); + ModelChangeChildrenLayoutsCommand *changeCommand = new ModelChangeChildrenLayoutsCommand(&model, this); changeCommand->setAncestorRowNumbers(QList() << 2); changeCommand->setSecondAncestorRowNumbers(QList() << 5); @@ -1984,6 +2025,9 @@ void tst_QAbstractItemModel::testChildrenLayoutsChanged() QSignalSpy beforeSpy(&model, SIGNAL(layoutAboutToBeChanged(QList))); QSignalSpy afterSpy(&model, SIGNAL(layoutChanged(QList))); + QVERIFY(beforeSpy.isValid()); + QVERIFY(afterSpy.isValid()); + // Because the arguments in the signal are persistent, we need to check them for the aboutToBe // case at emission time - before they get updated. SignalArgumentChecker checker(p1, p2); diff --git a/tests/auto/corelib/itemmodels/qidentityproxymodel/tst_qidentityproxymodel.cpp b/tests/auto/corelib/itemmodels/qidentityproxymodel/tst_qidentityproxymodel.cpp index 86ff00f9d4..2eb17c0305 100644 --- a/tests/auto/corelib/itemmodels/qidentityproxymodel/tst_qidentityproxymodel.cpp +++ b/tests/auto/corelib/itemmodels/qidentityproxymodel/tst_qidentityproxymodel.cpp @@ -169,6 +169,11 @@ void tst_QIdentityProxyModel::insertRows() QSignalSpy proxyBeforeSpy(m_proxy, SIGNAL(rowsAboutToBeInserted(QModelIndex,int,int))); QSignalSpy proxyAfterSpy(m_proxy, SIGNAL(rowsInserted(QModelIndex,int,int))); + QVERIFY(modelBeforeSpy.isValid()); + QVERIFY(modelAfterSpy.isValid()); + QVERIFY(proxyBeforeSpy.isValid()); + QVERIFY(proxyAfterSpy.isValid()); + QStandardItem *item = new QStandardItem(QString("new item")); parentItem->appendRow(item); @@ -205,6 +210,11 @@ void tst_QIdentityProxyModel::removeRows() QSignalSpy proxyBeforeSpy(m_proxy, SIGNAL(rowsAboutToBeRemoved(QModelIndex,int,int))); QSignalSpy proxyAfterSpy(m_proxy, SIGNAL(rowsRemoved(QModelIndex,int,int))); + QVERIFY(modelBeforeSpy.isValid()); + QVERIFY(modelAfterSpy.isValid()); + QVERIFY(proxyBeforeSpy.isValid()); + QVERIFY(proxyAfterSpy.isValid()); + const QModelIndex topLevel = m_model->index(0, 0, QModelIndex()); const QModelIndex secondLevel = m_model->index(0, 0, topLevel); const QModelIndex thirdLevel = m_model->index(0, 0, secondLevel); @@ -254,6 +264,11 @@ void tst_QIdentityProxyModel::moveRows() QSignalSpy proxyBeforeSpy(m_proxy, SIGNAL(rowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int))); QSignalSpy proxyAfterSpy(m_proxy, SIGNAL(rowsMoved(QModelIndex,int,int,QModelIndex,int))); + QVERIFY(modelBeforeSpy.isValid()); + QVERIFY(modelAfterSpy.isValid()); + QVERIFY(proxyBeforeSpy.isValid()); + QVERIFY(proxyAfterSpy.isValid()); + { ModelMoveCommand moveCommand(&model, 0); moveCommand.setAncestorRowNumbers(QList() << 5); @@ -310,6 +325,11 @@ void tst_QIdentityProxyModel::reset() QSignalSpy proxyBeforeSpy(m_proxy, SIGNAL(modelAboutToBeReset())); QSignalSpy proxyAfterSpy(m_proxy, SIGNAL(modelReset())); + QVERIFY(modelBeforeSpy.isValid()); + QVERIFY(modelAfterSpy.isValid()); + QVERIFY(proxyBeforeSpy.isValid()); + QVERIFY(proxyAfterSpy.isValid()); + { ModelResetCommandFixed resetCommand(&model, 0); resetCommand.setAncestorRowNumbers(QList() << 5); diff --git a/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp b/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp index 2097cb31ee..dedcd0f4b1 100644 --- a/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp +++ b/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp @@ -1550,6 +1550,7 @@ void tst_QItemSelectionModel::resetModel() view.setModel(&model); QSignalSpy spy(view.selectionModel(), SIGNAL(selectionChanged(QItemSelection,QItemSelection))); + QVERIFY(spy.isValid()); view.selectionModel()->select(QItemSelection(model.index(0, 0), model.index(5, 5)), QItemSelectionModel::Select); @@ -1612,6 +1613,7 @@ void tst_QItemSelectionModel::removeRows() MyStandardItemModel model(rowCount, columnCount); QItemSelectionModel selections(&model); QSignalSpy spy(&selections, SIGNAL(selectionChanged(QItemSelection,QItemSelection))); + QVERIFY(spy.isValid()); QModelIndex tl = model.index(selectTop, selectLeft); QModelIndex br = model.index(selectBottom, selectRight); @@ -1674,6 +1676,7 @@ void tst_QItemSelectionModel::removeColumns() MyStandardItemModel model(rowCount, columnCount); QItemSelectionModel selections(&model); QSignalSpy spy(&selections, SIGNAL(selectionChanged(QItemSelection,QItemSelection))); + QVERIFY(spy.isValid()); QModelIndex tl = model.index(selectTop, selectLeft); QModelIndex br = model.index(selectBottom, selectRight); @@ -1943,6 +1946,10 @@ void tst_QItemSelectionModel::setCurrentIndex() QSignalSpy columnSpy(selectionModel, SIGNAL(currentColumnChanged(QModelIndex,QModelIndex))); + QVERIFY(currentSpy.isValid()); + QVERIFY(rowSpy.isValid()); + QVERIFY(columnSpy.isValid()); + // Select the same row and column indexes, but with a different parent selectionModel->setCurrentIndex( treemodel->index(0, 0, treemodel->index(1, 0)), @@ -2217,6 +2224,7 @@ void tst_QItemSelectionModel::task232634_childrenDeselectionSignal() selectionModel.select(sel, QItemSelectionModel::SelectCurrent); QSignalSpy deselectSpy(&selectionModel, SIGNAL(selectionChanged(const QItemSelection& , const QItemSelection&))); + QVERIFY(deselectSpy.isValid()); model.removeRows(0, 1, root); QVERIFY(deselectSpy.count() == 1); @@ -2401,6 +2409,7 @@ void tst_QItemSelectionModel::deselectRemovedMiddleRange() RemovalObserver ro(&selModel); QSignalSpy spy(&selModel, SIGNAL(selectionChanged(QItemSelection, QItemSelection))); + QVERIFY(spy.isValid()); bool ok = model.removeRows(4, 2); QVERIFY(ok); @@ -2735,6 +2744,7 @@ void tst_QItemSelectionModel::testClearCurrentIndex() QItemSelectionModel selectionModel(&model, 0); QSignalSpy currentIndexSpy(&selectionModel, SIGNAL(currentChanged(QModelIndex,QModelIndex))); + QVERIFY(currentIndexSpy.isValid()); QModelIndex firstIndex = model.index(0, 0); QVERIFY(firstIndex.isValid()); diff --git a/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp b/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp index cc8299e28f..6d3e8906c9 100644 --- a/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp +++ b/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp @@ -1504,6 +1504,7 @@ void tst_QSortFilterProxyModel::filterCurrent() view.show(); view.setModel(&proxy); QSignalSpy spy(view.selectionModel(), SIGNAL(currentChanged(QModelIndex, QModelIndex))); + QVERIFY(spy.isValid()); view.setCurrentIndex(proxy.index(0, 0)); QCOMPARE(spy.count(), 1); @@ -1628,6 +1629,11 @@ void tst_QSortFilterProxyModel::removeSourceRows() QSignalSpy aboutToRemoveSpy(&proxy, SIGNAL(rowsAboutToBeRemoved(QModelIndex, int, int))); QSignalSpy aboutToInsertSpy(&proxy, SIGNAL(rowsAboutToBeInserted(QModelIndex, int, int))); + QVERIFY(removeSpy.isValid()); + QVERIFY(insertSpy.isValid()); + QVERIFY(aboutToRemoveSpy.isValid()); + QVERIFY(aboutToInsertSpy.isValid()); + model.removeRows(start, count, QModelIndex()); QCOMPARE(aboutToRemoveSpy.count(), expectedRemovedProxyIntervals.count()); @@ -1802,6 +1808,9 @@ void tst_QSortFilterProxyModel::changeFilter() QSignalSpy initialRemoveSpy(&proxy, SIGNAL(rowsRemoved(QModelIndex, int, int))); QSignalSpy initialInsertSpy(&proxy, SIGNAL(rowsInserted(QModelIndex, int, int))); + QVERIFY(initialRemoveSpy.isValid()); + QVERIFY(initialInsertSpy.isValid()); + proxy.setFilterRegExp(initialFilter); QCOMPARE(initialRemoveSpy.count(), initialRemoveIntervals.count()); @@ -1823,6 +1832,9 @@ void tst_QSortFilterProxyModel::changeFilter() QSignalSpy finalRemoveSpy(&proxy, SIGNAL(rowsRemoved(QModelIndex, int, int))); QSignalSpy finalInsertSpy(&proxy, SIGNAL(rowsInserted(QModelIndex, int, int))); + QVERIFY(finalRemoveSpy.isValid()); + QVERIFY(finalInsertSpy.isValid()); + proxy.setFilterRegExp(finalFilter); QCOMPARE(finalRemoveSpy.count(), finalRemoveIntervals.count()); @@ -1971,6 +1983,9 @@ void tst_QSortFilterProxyModel::changeSourceData() QSignalSpy removeSpy(&proxy, SIGNAL(rowsRemoved(QModelIndex, int, int))); QSignalSpy insertSpy(&proxy, SIGNAL(rowsInserted(QModelIndex, int, int))); + QVERIFY(removeSpy.isValid()); + QVERIFY(insertSpy.isValid()); + { QModelIndex index = model.index(row, 0, QModelIndex()); model.setData(index, newValue, Qt::DisplayRole); @@ -2065,6 +2080,7 @@ void tst_QSortFilterProxyModel::selectionFilteredOut() view.show(); view.setModel(&proxy); QSignalSpy spy(view.selectionModel(), SIGNAL(currentChanged(QModelIndex, QModelIndex))); + QVERIFY(spy.isValid()); view.setCurrentIndex(proxy.index(0, 0)); QCOMPARE(spy.count(), 1); @@ -2181,6 +2197,9 @@ void tst_QSortFilterProxyModel::insertIntoChildrenlessItem() QSignalSpy colsInsertedSpy(&proxy, SIGNAL(columnsInserted(const QModelIndex&, int, int))); QSignalSpy rowsInsertedSpy(&proxy, SIGNAL(rowsInserted(const QModelIndex&, int, int))); + QVERIFY(colsInsertedSpy.isValid()); + QVERIFY(rowsInsertedSpy.isValid()); + (void)proxy.rowCount(QModelIndex()); // force mapping of "a", "b", "c" QCOMPARE(colsInsertedSpy.count(), 0); QCOMPARE(rowsInsertedSpy.count(), 0); @@ -2256,6 +2275,7 @@ void tst_QSortFilterProxyModel::insertRowIntoFilteredParent() proxy.setSourceModel(&model); QSignalSpy spy(&proxy, SIGNAL(rowsInserted(const QModelIndex&, int, int))); + QVERIFY(spy.isValid()); QStandardItem *itemA = new QStandardItem(); model.appendRow(itemA); // A will be filtered @@ -2286,6 +2306,9 @@ void tst_QSortFilterProxyModel::filterOutParentAndFilterInChild() QSignalSpy removedSpy(&proxy, SIGNAL(rowsRemoved(const QModelIndex&, int, int))); QSignalSpy insertedSpy(&proxy, SIGNAL(rowsInserted(const QModelIndex&, int, int))); + QVERIFY(removedSpy.isValid()); + QVERIFY(insertedSpy.isValid()); + proxy.setFilterRegExp("C"); // A and B will be filtered out, C filtered in // we should now have been notified that the subtree represented by itemA has been removed @@ -2882,6 +2905,9 @@ void tst_QSortFilterProxyModel::taskQTBUG_7537_appearsAndSort() QSignalSpy spyAbout1(&proxyModel, SIGNAL(layoutAboutToBeChanged())); QSignalSpy spyChanged1(&proxyModel, SIGNAL(layoutChanged())); + QVERIFY(spyAbout1.isValid()); + QVERIFY(spyChanged1.isValid()); + //introducing secondProxyModel to test the layoutChange when many items appears at once QSortFilterProxyModel secondProxyModel; secondProxyModel.setSourceModel(&proxyModel); @@ -2891,6 +2917,9 @@ void tst_QSortFilterProxyModel::taskQTBUG_7537_appearsAndSort() QSignalSpy spyAbout2(&secondProxyModel, SIGNAL(layoutAboutToBeChanged())); QSignalSpy spyChanged2(&secondProxyModel, SIGNAL(layoutChanged())); + QVERIFY(spyAbout2.isValid()); + QVERIFY(spyChanged2.isValid()); + proxyModel.updateXX(); QApplication::processEvents(); //now rows should be visible, and sorted @@ -3248,16 +3277,27 @@ void tst_QSortFilterProxyModel::testParentLayoutChanged() QSignalSpy dataChangedSpy(&model, SIGNAL(dataChanged(QModelIndex,QModelIndex))); + QVERIFY(dataChangedSpy.isValid()); + // Verify that the no-arg signal is still emitted. QSignalSpy layoutAboutToBeChangedSpy(&proxy, SIGNAL(layoutAboutToBeChanged())); QSignalSpy layoutChangedSpy(&proxy, SIGNAL(layoutChanged())); + QVERIFY(layoutAboutToBeChangedSpy.isValid()); + QVERIFY(layoutChangedSpy.isValid()); + QSignalSpy parentsAboutToBeChangedSpy(&proxy, SIGNAL(layoutAboutToBeChanged(QList))); QSignalSpy parentsChangedSpy(&proxy, SIGNAL(layoutChanged(QList))); + QVERIFY(parentsAboutToBeChangedSpy.isValid()); + QVERIFY(parentsChangedSpy.isValid()); + QSignalSpy proxy2ParentsAboutToBeChangedSpy(&proxy2, SIGNAL(layoutAboutToBeChanged(QList))); QSignalSpy proxy2ParentsChangedSpy(&proxy2, SIGNAL(layoutChanged(QList))); + QVERIFY(proxy2ParentsAboutToBeChangedSpy.isValid()); + QVERIFY(proxy2ParentsChangedSpy.isValid()); + QStandardItem *item = model.invisibleRootItem()->child(1)->child(1); // Ensure mapped: @@ -3426,6 +3466,17 @@ void tst_QSortFilterProxyModel::moveSourceRows() QSignalSpy filterBothBeforeParentLayoutSpy(&filterBothProxy, SIGNAL(layoutAboutToBeChanged(QList))); QSignalSpy filterBothAfterParentLayoutSpy(&filterBothProxy, SIGNAL(layoutChanged(QList))); + QVERIFY(modelBeforeSpy.isValid()); + QVERIFY(modelAfterSpy.isValid()); + QVERIFY(proxyBeforeMoveSpy.isValid()); + QVERIFY(proxyAfterMoveSpy.isValid()); + QVERIFY(proxyBeforeParentLayoutSpy.isValid()); + QVERIFY(proxyAfterParentLayoutSpy.isValid()); + QVERIFY(filterBeforeParentLayoutSpy.isValid()); + QVERIFY(filterAfterParentLayoutSpy.isValid()); + QVERIFY(filterBothBeforeParentLayoutSpy.isValid()); + QVERIFY(filterBothAfterParentLayoutSpy.isValid()); + { ModelMoveCommand moveCommand(&model, 0); moveCommand.setAncestorRowNumbers(QList() << 2); diff --git a/tests/auto/corelib/kernel/qeventloop/tst_qeventloop.cpp b/tests/auto/corelib/kernel/qeventloop/tst_qeventloop.cpp index f48a8ebfaf..a2673ab0e3 100644 --- a/tests/auto/corelib/kernel/qeventloop/tst_qeventloop.cpp +++ b/tests/auto/corelib/kernel/qeventloop/tst_qeventloop.cpp @@ -203,6 +203,9 @@ void tst_QEventLoop::processEvents() QSignalSpy spy1(QAbstractEventDispatcher::instance(), SIGNAL(aboutToBlock())); QSignalSpy spy2(QAbstractEventDispatcher::instance(), SIGNAL(awake())); + QVERIFY(spy1.isValid()); + QVERIFY(spy2.isValid()); + QEventLoop eventLoop; QCoreApplication::postEvent(&eventLoop, new QEvent(QEvent::User)); @@ -285,6 +288,7 @@ void tst_QEventLoop::exec() // make sure the eventloop runs QSignalSpy spy(QAbstractEventDispatcher::instance(&thread), SIGNAL(awake())); + QVERIFY(spy.isValid()); thread.cond.wakeOne(); thread.cond.wait(&thread.mutex); QVERIFY(spy.count() > 0); @@ -396,6 +400,7 @@ void tst_QEventLoop::wakeUp() (void) eventLoop.exec(); QSignalSpy spy(QAbstractEventDispatcher::instance(&thread), SIGNAL(awake())); + QVERIFY(spy.isValid()); thread.eventLoop->wakeUp(); // give the thread time to wake up diff --git a/tests/auto/corelib/kernel/qitemmodel/tst_qitemmodel.cpp b/tests/auto/corelib/kernel/qitemmodel/tst_qitemmodel.cpp index a4b1044cab..3f68379542 100644 --- a/tests/auto/corelib/kernel/qitemmodel/tst_qitemmodel.cpp +++ b/tests/auto/corelib/kernel/qitemmodel/tst_qitemmodel.cpp @@ -601,6 +601,7 @@ void tst_QItemModel::setData() QVERIFY(currentModel); qRegisterMetaType("QModelIndex"); QSignalSpy spy(currentModel, SIGNAL(dataChanged(const QModelIndex &, const QModelIndex &))); + QVERIFY(spy.isValid()); QCOMPARE(currentModel->setData(QModelIndex(), QVariant()), false); QCOMPARE(spy.count(), 0); @@ -662,6 +663,7 @@ void tst_QItemModel::setHeaderData() qRegisterMetaType("Qt::Orientation"); QSignalSpy spy(currentModel, SIGNAL(headerDataChanged( Qt::Orientation, int , int ))); + QVERIFY(spy.isValid()); QString text = "Index private pointers should always be the same"; int signalCount = 0; @@ -702,6 +704,7 @@ void tst_QItemModel::sort() QModelIndex index = currentModel->index(0, 0, topIndex); QVERIFY(index.isValid()); QSignalSpy spy(currentModel, SIGNAL(layoutChanged())); + QVERIFY(spy.isValid()); for (int i=-1; i < 10; ++i){ currentModel->sort(i); if (index != currentModel->index(0, 0, topIndex)){ @@ -846,6 +849,13 @@ void tst_QItemModel::remove() QSignalSpy modelResetSpy(currentModel, SIGNAL(modelReset())); QSignalSpy modelLayoutChangedSpy(currentModel, SIGNAL(layoutChanged())); + QVERIFY(columnsAboutToBeRemovedSpy.isValid()); + QVERIFY(rowsAboutToBeRemovedSpy.isValid()); + QVERIFY(columnsRemovedSpy.isValid()); + QVERIFY(rowsRemovedSpy.isValid()); + QVERIFY(modelResetSpy.isValid()); + QVERIFY(modelLayoutChangedSpy.isValid()); + QFETCH(int, numberOfRowsAboutToBeRemovedSignals); QFETCH(int, numberOfColumnsAboutToBeRemovedSignals); QFETCH(int, numberOfRowsRemovedSignals); @@ -1182,6 +1192,13 @@ void tst_QItemModel::insert() QSignalSpy modelResetSpy(currentModel, SIGNAL(modelReset())); QSignalSpy modelLayoutChangedSpy(currentModel, SIGNAL(layoutChanged())); + QVERIFY(columnsAboutToBeInsertedSpy.isValid()); + QVERIFY(rowsAboutToBeInsertedSpy.isValid()); + QVERIFY(columnsInsertedSpy.isValid()); + QVERIFY(rowsInsertedSpy.isValid()); + QVERIFY(modelResetSpy.isValid()); + QVERIFY(modelLayoutChangedSpy.isValid()); + QFETCH(int, numberOfRowsAboutToBeInsertedSignals); QFETCH(int, numberOfColumnsAboutToBeInsertedSignals); QFETCH(int, numberOfRowsInsertedSignals); diff --git a/tests/auto/corelib/kernel/qmetaobject/tst_qmetaobject.cpp b/tests/auto/corelib/kernel/qmetaobject/tst_qmetaobject.cpp index 32d0ccfaac..f08bdd81a4 100644 --- a/tests/auto/corelib/kernel/qmetaobject/tst_qmetaobject.cpp +++ b/tests/auto/corelib/kernel/qmetaobject/tst_qmetaobject.cpp @@ -796,6 +796,7 @@ void tst_QMetaObject::invokeTypedefTypes() qRegisterMetaType("CustomString"); QtTestCustomObject obj; QSignalSpy spy(&obj, SIGNAL(sig_custom(CustomString))); + QVERIFY(spy.isValid()); QCOMPARE(spy.count(), 0); CustomString arg("hello"); diff --git a/tests/auto/corelib/kernel/qsocketnotifier/tst_qsocketnotifier.cpp b/tests/auto/corelib/kernel/qsocketnotifier/tst_qsocketnotifier.cpp index 90c537b9fc..31b6c2c373 100644 --- a/tests/auto/corelib/kernel/qsocketnotifier/tst_qsocketnotifier.cpp +++ b/tests/auto/corelib/kernel/qsocketnotifier/tst_qsocketnotifier.cpp @@ -263,12 +263,15 @@ void tst_QSocketNotifier::posixSockets() QSocketNotifier rn(posixSocket, QSocketNotifier::Read); connect(&rn, SIGNAL(activated(int)), &QTestEventLoop::instance(), SLOT(exitLoop())); QSignalSpy readSpy(&rn, SIGNAL(activated(int))); + QVERIFY(readSpy.isValid()); QSocketNotifier wn(posixSocket, QSocketNotifier::Write); connect(&wn, SIGNAL(activated(int)), &QTestEventLoop::instance(), SLOT(exitLoop())); QSignalSpy writeSpy(&wn, SIGNAL(activated(int))); + QVERIFY(writeSpy.isValid()); QSocketNotifier en(posixSocket, QSocketNotifier::Exception); connect(&en, SIGNAL(activated(int)), &QTestEventLoop::instance(), SLOT(exitLoop())); QSignalSpy errorSpy(&en, SIGNAL(activated(int))); + QVERIFY(errorSpy.isValid()); passive->write("hello",6); passive->waitForBytesWritten(5000); diff --git a/tests/auto/corelib/plugin/qpluginloader/tst_qpluginloader.cpp b/tests/auto/corelib/plugin/qpluginloader/tst_qpluginloader.cpp index c143977a48..2852f9bdce 100644 --- a/tests/auto/corelib/plugin/qpluginloader/tst_qpluginloader.cpp +++ b/tests/auto/corelib/plugin/qpluginloader/tst_qpluginloader.cpp @@ -229,6 +229,8 @@ void tst_QPluginLoader::deleteinstanceOnUnload() QSignalSpy spy1(loader1.instance(), SIGNAL(destroyed())); QSignalSpy spy2(loader2.instance(), SIGNAL(destroyed())); + QVERIFY(spy1.isValid()); + QVERIFY(spy2.isValid()); if (pass == 0) { QCOMPARE(loader2.unload(), false); // refcount not reached 0, not really unloaded QCOMPARE(spy1.count(), 0); diff --git a/tests/auto/corelib/statemachine/qstatemachine/tst_qstatemachine.cpp b/tests/auto/corelib/statemachine/qstatemachine/tst_qstatemachine.cpp index bdb261eefc..773b1ff28d 100644 --- a/tests/auto/corelib/statemachine/qstatemachine/tst_qstatemachine.cpp +++ b/tests/auto/corelib/statemachine/qstatemachine/tst_qstatemachine.cpp @@ -873,6 +873,7 @@ void tst_QStateMachine::historyStateAfterRestart() for (int x = 0; x < 2; ++x) { QSignalSpy startedSpy(&machine, SIGNAL(started())); + QVERIFY(startedSpy.isValid()); machine.start(); QTRY_COMPARE(startedSpy.count(), 1); QCOMPARE(machine.configuration().count(), 1); @@ -908,6 +909,7 @@ void tst_QStateMachine::historyStateAfterRestart() QVERIFY(machine.configuration().contains(s22)); QSignalSpy stoppedSpy(&machine, SIGNAL(stopped())); + QVERIFY(stoppedSpy.isValid()); machine.stop(); QTRY_COMPARE(stoppedSpy.count(), 1); } @@ -1189,6 +1191,11 @@ void tst_QStateMachine::stateEntryAndExit() QSignalSpy startedSpy(&machine, SIGNAL(started())); QSignalSpy stoppedSpy(&machine, SIGNAL(stopped())); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + + QVERIFY(startedSpy.isValid()); + QVERIFY(stoppedSpy.isValid()); + QVERIFY(finishedSpy.isValid()); + machine.setInitialState(s1); QCOMPARE(machine.initialState(), (QAbstractState*)s1); { @@ -1206,6 +1213,13 @@ void tst_QStateMachine::stateEntryAndExit() QSignalSpy tTriggeredSpy(t, SIGNAL(triggered())); QSignalSpy s2EnteredSpy(s2, SIGNAL(entered())); QSignalSpy s2ExitedSpy(s2, SIGNAL(exited())); + + QVERIFY(s1EnteredSpy.isValid()); + QVERIFY(s1ExitedSpy.isValid()); + QVERIFY(tTriggeredSpy.isValid()); + QVERIFY(s2EnteredSpy.isValid()); + QVERIFY(s2ExitedSpy.isValid()); + machine.start(); QTRY_COMPARE(startedSpy.count(), 1); @@ -1256,6 +1270,8 @@ void tst_QStateMachine::stateEntryAndExit() QSignalSpy startedSpy(&machine, SIGNAL(started())); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + QVERIFY(startedSpy.isValid()); + QVERIFY(finishedSpy.isValid()); machine.setInitialState(s1); globalTick = 0; machine.start(); @@ -1329,6 +1345,7 @@ void tst_QStateMachine::assignProperty() { QSignalSpy propertiesAssignedSpy(s1, SIGNAL(propertiesAssigned())); + QVERIFY(propertiesAssignedSpy.isValid()); machine.start(); QTRY_COMPARE(propertiesAssignedSpy.count(), 1); } @@ -1384,6 +1401,7 @@ void tst_QStateMachine::assignPropertyWithAnimation() machine.setInitialState(s1); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + QVERIFY(finishedSpy.isValid()); machine.start(); QTRY_COMPARE(finishedSpy.count(), 1); QCOMPARE(obj.property("foo").toInt(), 456); @@ -1412,6 +1430,7 @@ void tst_QStateMachine::assignPropertyWithAnimation() machine.setInitialState(s1); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + QVERIFY(finishedSpy.isValid()); machine.start(); QTRY_COMPARE(finishedSpy.count(), 1); QCOMPARE(obj.property("foo").toInt(), 456); @@ -1440,6 +1459,7 @@ void tst_QStateMachine::assignPropertyWithAnimation() machine.setInitialState(s1); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + QVERIFY(finishedSpy.isValid()); machine.start(); QTRY_COMPARE(finishedSpy.count(), 1); QCOMPARE(obj.property("foo").toInt(), 456); @@ -1489,6 +1509,7 @@ void tst_QStateMachine::assignPropertyWithAnimation() machine.setInitialState(s1); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + QVERIFY(finishedSpy.isValid()); machine.start(); QTRY_COMPARE(finishedSpy.count(), 1); QCOMPARE(obj.property("foo").toInt(), 321); @@ -1523,6 +1544,7 @@ void tst_QStateMachine::assignPropertyWithAnimation() machine.start(); QTRY_COMPARE(machine.configuration().contains(s1), true); QSignalSpy propertiesAssignedSpy(s2, SIGNAL(propertiesAssigned())); + QVERIFY(propertiesAssignedSpy.isValid()); emitter.emitSignalWithNoArg(); QTRY_COMPARE(machine.configuration().contains(s2), true); QVERIFY(propertiesAssignedSpy.isEmpty()); @@ -1610,6 +1632,7 @@ void tst_QStateMachine::postEvent() machine.addState(s2); machine.setInitialState(s1); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + QVERIFY(finishedSpy.isValid()); machine.start(); QTRY_COMPARE(finishedSpy.count(), 1); QCOMPARE(machine.configuration().size(), 1); @@ -1639,6 +1662,7 @@ void tst_QStateMachine::cancelDelayedEvent() machine.setInitialState(s1); QSignalSpy startedSpy(&machine, SIGNAL(started())); + QVERIFY(startedSpy.isValid()); machine.start(); QTRY_COMPARE(startedSpy.count(), 1); QCOMPARE(machine.configuration().size(), 1); @@ -1658,6 +1682,7 @@ void tst_QStateMachine::cancelDelayedEvent() QVERIFY(!machine.cancelDelayedEvent(id2)); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + QVERIFY(finishedSpy.isValid()); QTRY_COMPARE(finishedSpy.count(), 1); QCOMPARE(machine.configuration().size(), 1); QVERIFY(machine.configuration().contains(s2)); @@ -1672,6 +1697,7 @@ void tst_QStateMachine::postDelayedEventAndStop() machine.setInitialState(s1); QSignalSpy startedSpy(&machine, SIGNAL(started())); + QVERIFY(startedSpy.isValid()); machine.start(); QTRY_COMPARE(startedSpy.count(), 1); QCOMPARE(machine.configuration().size(), 1); @@ -1680,6 +1706,7 @@ void tst_QStateMachine::postDelayedEventAndStop() int id1 = machine.postDelayedEvent(new StringEvent("a"), 0); QVERIFY(id1 != -1); QSignalSpy stoppedSpy(&machine, SIGNAL(stopped())); + QVERIFY(stoppedSpy.isValid()); machine.stop(); QTRY_COMPARE(stoppedSpy.count(), 1); QCOMPARE(machine.configuration().size(), 1); @@ -1707,9 +1734,11 @@ void tst_QStateMachine::stopAndPostEvent() QState *s1 = new QState(&machine); machine.setInitialState(s1); QSignalSpy startedSpy(&machine, SIGNAL(started())); + QVERIFY(startedSpy.isValid()); machine.start(); QTRY_COMPARE(startedSpy.count(), 1); QSignalSpy stoppedSpy(&machine, SIGNAL(stopped())); + QVERIFY(stoppedSpy.isValid()); machine.stop(); QCOMPARE(stoppedSpy.count(), 0); machine.postEvent(new QEvent(QEvent::User)); @@ -1729,6 +1758,7 @@ void tst_QStateMachine::stateFinished() s1->addTransition(s1, SIGNAL(finished()), s2); machine.setInitialState(s1); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + QVERIFY(finishedSpy.isValid()); machine.start(); QTRY_COMPARE(finishedSpy.count(), 1); QCOMPARE(machine.configuration().size(), 1); @@ -1766,6 +1796,7 @@ void tst_QStateMachine::parallelStates() machine.setInitialState(s1); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + QVERIFY(finishedSpy.isValid()); machine.start(); QTRY_COMPARE(finishedSpy.count(), 1); QCOMPARE(machine.configuration().size(), 1); @@ -1788,6 +1819,7 @@ void tst_QStateMachine::parallelRootState() s2->setInitialState(s2_f); QSignalSpy startedSpy(&machine, SIGNAL(started())); + QVERIFY(startedSpy.isValid()); QTest::ignoreMessage(QtWarningMsg, "QStateMachine::start: No initial state set for machine. Refusing to start."); machine.start(); QCoreApplication::processEvents(); @@ -1833,6 +1865,7 @@ void tst_QStateMachine::allSourceToTargetConfigurations() s0->addTransition(new StringTransition("e", s211)); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + QVERIFY(finishedSpy.isValid()); machine.setInitialState(s0); machine.start(); QCoreApplication::processEvents(); @@ -1919,6 +1952,7 @@ void tst_QStateMachine::signalTransitions() QCOMPARE(trans->signal(), QByteArray(SIGNAL(signalWithNoArg()))); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + QVERIFY(finishedSpy.isValid()); machine.setInitialState(s0); machine.start(); QCoreApplication::processEvents(); @@ -1969,6 +2003,7 @@ void tst_QStateMachine::signalTransitions() QCOMPARE(trans->signal(), QByteArray("signalWithNoArg()")); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + QVERIFY(finishedSpy.isValid()); machine.setInitialState(s0); machine.start(); QCoreApplication::processEvents(); @@ -1993,6 +2028,7 @@ void tst_QStateMachine::signalTransitions() s0->addTransition(trans); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + QVERIFY(finishedSpy.isValid()); machine.setInitialState(s0); machine.start(); QCoreApplication::processEvents(); @@ -2014,6 +2050,7 @@ void tst_QStateMachine::signalTransitions() s0->addTransition(trans); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + QVERIFY(finishedSpy.isValid()); machine.setInitialState(s0); machine.start(); QCoreApplication::processEvents(); @@ -2045,6 +2082,7 @@ void tst_QStateMachine::signalTransitions() s0->addTransition(trans); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + QVERIFY(finishedSpy.isValid()); machine.setInitialState(s0); machine.start(); QCoreApplication::processEvents(); @@ -2063,6 +2101,7 @@ void tst_QStateMachine::signalTransitions() QSignalTransition *t1 = s1->addTransition(&emitter, SIGNAL(signalWithNoArg()), s0); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + QVERIFY(finishedSpy.isValid()); machine.setInitialState(s0); machine.start(); QCoreApplication::processEvents(); @@ -2112,6 +2151,8 @@ void tst_QStateMachine::signalTransitions() QSignalSpy startedSpy(&machine, SIGNAL(started())); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + QVERIFY(startedSpy.isValid()); + QVERIFY(finishedSpy.isValid()); machine.setInitialState(s0); machine.start(); @@ -2151,6 +2192,8 @@ void tst_QStateMachine::signalTransitions() QSignalSpy startedSpy(&machine, SIGNAL(started())); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + QVERIFY(startedSpy.isValid()); + QVERIFY(finishedSpy.isValid()); machine.setInitialState(s0); machine.start(); QTRY_COMPARE(startedSpy.count(), 1); @@ -2212,6 +2255,7 @@ void tst_QStateMachine::eventTransitions() s0->addTransition(trans); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + QVERIFY(finishedSpy.isValid()); machine.setInitialState(s0); machine.start(); QCoreApplication::processEvents(); @@ -2264,6 +2308,7 @@ void tst_QStateMachine::eventTransitions() s0->addTransition(trans); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + QVERIFY(finishedSpy.isValid()); machine.setInitialState(s0); machine.start(); QCoreApplication::processEvents(); @@ -2289,6 +2334,7 @@ void tst_QStateMachine::eventTransitions() s0->addTransition(trans); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + QVERIFY(finishedSpy.isValid()); machine.setInitialState(s0); machine.start(); QCoreApplication::processEvents(); @@ -2311,6 +2357,7 @@ void tst_QStateMachine::eventTransitions() s0->addTransition(trans); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + QVERIFY(finishedSpy.isValid()); machine.setInitialState(s0); machine.start(); QCoreApplication::processEvents(); @@ -2336,6 +2383,7 @@ void tst_QStateMachine::eventTransitions() s0->addTransition(trans); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + QVERIFY(finishedSpy.isValid()); machine.setInitialState(s0); machine.start(); QCoreApplication::processEvents(); @@ -2358,6 +2406,7 @@ void tst_QStateMachine::eventTransitions() s1->addTransition(t1); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + QVERIFY(finishedSpy.isValid()); machine.setInitialState(s0); machine.start(); QCoreApplication::processEvents(); @@ -2408,6 +2457,8 @@ void tst_QStateMachine::eventTransitions() QSignalSpy startedSpy(&machine, SIGNAL(started())); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + QVERIFY(startedSpy.isValid()); + QVERIFY(finishedSpy.isValid()); machine.setInitialState(s0); machine.start(); @@ -2435,6 +2486,7 @@ void tst_QStateMachine::eventTransitions() s0->addTransition(trans); QSignalSpy startedSpy(&machine, SIGNAL(started())); + QVERIFY(startedSpy.isValid()); machine.setInitialState(s0); machine.start(); QTest::ignoreMessage(QtWarningMsg, "QObject event transitions are not supported for custom types"); @@ -2452,6 +2504,7 @@ void tst_QStateMachine::eventTransitions() QCOMPARE(trans->eventTypeReceived(), QEvent::None); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + QVERIFY(finishedSpy.isValid()); machine.setInitialState(s0); machine.start(); QCoreApplication::processEvents(); @@ -2481,6 +2534,8 @@ void tst_QStateMachine::graphicsSceneEventTransitions() QSignalSpy startedSpy(&machine, SIGNAL(started())); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + QVERIFY(startedSpy.isValid()); + QVERIFY(finishedSpy.isValid()); machine.start(); QTRY_COMPARE(startedSpy.count(), 1); QVERIFY(finishedSpy.count() == 0); @@ -2527,6 +2582,7 @@ void tst_QStateMachine::historyStates() s0->setInitialState(s00); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + QVERIFY(finishedSpy.isValid()); machine.start(); QCoreApplication::processEvents(); QCOMPARE(machine.configuration().size(), 2); @@ -2565,6 +2621,11 @@ void tst_QStateMachine::startAndStop() QSignalSpy startedSpy(&machine, SIGNAL(started())); QSignalSpy stoppedSpy(&machine, SIGNAL(stopped())); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + + QVERIFY(startedSpy.isValid()); + QVERIFY(stoppedSpy.isValid()); + QVERIFY(finishedSpy.isValid()); + QVERIFY(!machine.isRunning()); QTest::ignoreMessage(QtWarningMsg, "QStateMachine::start: No initial state set for machine. Refusing to start."); machine.start(); @@ -2616,6 +2677,11 @@ void tst_QStateMachine::targetStateWithNoParent() QSignalSpy startedSpy(&machine, SIGNAL(started())); QSignalSpy stoppedSpy(&machine, SIGNAL(stopped())); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + + QVERIFY(startedSpy.isValid()); + QVERIFY(stoppedSpy.isValid()); + QVERIFY(finishedSpy.isValid()); + machine.start(); QTest::ignoreMessage(QtWarningMsg, "Unrecoverable error detected in running state machine: No common ancestor for targets and source of transition from state 's1'"); QTRY_COMPARE(startedSpy.count(), 1); @@ -3045,12 +3111,14 @@ void tst_QStateMachine::propertiesAssignedSignalTransitionsReuseAnimationGroup() QParallelAnimationGroup animationGroup; animationGroup.addAnimation(new QPropertyAnimation(object, "foo")); QSignalSpy animationFinishedSpy(&animationGroup, SIGNAL(finished())); + QVERIFY(animationFinishedSpy.isValid()); s1->addTransition(s1, SIGNAL(propertiesAssigned()), s2)->addAnimation(&animationGroup); s2->addTransition(s2, SIGNAL(propertiesAssigned()), s3)->addAnimation(&animationGroup); s3->addTransition(s3, SIGNAL(propertiesAssigned()), s4); machine.setInitialState(s1); QSignalSpy machineFinishedSpy(&machine, SIGNAL(finished())); + QVERIFY(machineFinishedSpy.isValid()); machine.start(); QTRY_COMPARE(machineFinishedSpy.count(), 1); QCOMPARE(machine.configuration().size(), 1); @@ -3551,6 +3619,8 @@ void tst_QStateMachine::nestedStateMachines() QSignalSpy startedSpy(&machine, SIGNAL(started())); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + QVERIFY(startedSpy.isValid()); + QVERIFY(finishedSpy.isValid()); machine.start(); QTRY_COMPARE(startedSpy.count(), 1); QTRY_COMPARE(machine.configuration().count(), 1+2*3); @@ -3573,6 +3643,7 @@ void tst_QStateMachine::goToState() QState *s2 = new QState(&machine); machine.setInitialState(s1); QSignalSpy startedSpy(&machine, SIGNAL(started())); + QVERIFY(startedSpy.isValid()); machine.start(); QTRY_COMPARE(startedSpy.count(), 1); @@ -3615,6 +3686,7 @@ void tst_QStateMachine::goToStateFromSourceWithTransition() QState *s2 = new QState(&machine); machine.setInitialState(s1); QSignalSpy startedSpy(&machine, SIGNAL(started())); + QVERIFY(startedSpy.isValid()); machine.start(); QTRY_COMPARE(startedSpy.count(), 1); @@ -3704,6 +3776,7 @@ void tst_QStateMachine::postEventFromOtherThread() poster.start(); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + QVERIFY(finishedSpy.isValid()); machine.start(); QTRY_COMPARE(finishedSpy.count(), 1); } @@ -3759,6 +3832,9 @@ void tst_QStateMachine::stopInTransitionToFinalState() QSignalSpy stoppedSpy(&machine, SIGNAL(stopped())); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); QSignalSpy s2EnteredSpy(s2, SIGNAL(entered())); + QVERIFY(stoppedSpy.isValid()); + QVERIFY(finishedSpy.isValid()); + QVERIFY(s2EnteredSpy.isValid()); machine.start(); // Stopping should take precedence over finished. @@ -3799,11 +3875,14 @@ void tst_QStateMachine::stopInEventTest() machine.setInitialState(s1); QSignalSpy startedSpy(&machine, SIGNAL(started())); + QVERIFY(startedSpy.isValid()); machine.start(); QTRY_COMPARE(startedSpy.count(), 1); QSignalSpy stoppedSpy(&machine, SIGNAL(stopped())); QSignalSpy finishedSpy(&machine, SIGNAL(finished())); + QVERIFY(stoppedSpy.isValid()); + QVERIFY(finishedSpy.isValid()); machine.postEvent(new QEvent(QEvent::User), QStateMachine::EventPriority(eventPriority)); QTRY_COMPARE(stoppedSpy.count(), 1); diff --git a/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp b/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp index 0bc1352681..3f994b5928 100644 --- a/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp +++ b/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp @@ -102,6 +102,7 @@ void tst_QTimeLine::range() // Verify that you can change the range in the timeLine timeLine.setFrameRange(10, 20); QSignalSpy spy(&timeLine, SIGNAL(frameChanged(int))); + QVERIFY(spy.isValid()); timeLine.start(); #ifdef Q_OS_WINCE QTest::qWait(1000); @@ -131,6 +132,7 @@ void tst_QTimeLine::currentTime() timeLine.setUpdateInterval((timeLine.duration()/2) / 33); qRegisterMetaType("qreal"); QSignalSpy spy(&timeLine, SIGNAL(valueChanged(qreal))); + QVERIFY(spy.isValid()); timeLine.setFrameRange(10, 20); QCOMPARE(timeLine.currentTime(), 0); timeLine.start(); @@ -200,6 +202,7 @@ void tst_QTimeLine::frameRate() // Default speed timeLine.setUpdateInterval(1000 / 33); QSignalSpy spy(&timeLine, SIGNAL(frameChanged(int))); + QVERIFY(spy.isValid()); timeLine.start(); QTest::qWait(timeLine.duration()*2); QCOMPARE(timeLine.state(), QTimeLine::NotRunning); @@ -223,6 +226,7 @@ void tst_QTimeLine::value() // Default speed qRegisterMetaType("qreal"); QSignalSpy spy(&timeLine, SIGNAL(valueChanged(qreal))); + QVERIFY(spy.isValid()); timeLine.start(); QTest::qWait(timeLine.duration()/3); QVERIFY(timeLine.currentValue() > 0); @@ -253,6 +257,7 @@ void tst_QTimeLine::currentFrame() // Default speed QSignalSpy spy(&timeLine, SIGNAL(frameChanged(int))); + QVERIFY(spy.isValid()); timeLine.start(); QTest::qWait(timeLine.duration()/3); QVERIFY(timeLine.currentFrame() > 10); @@ -284,6 +289,7 @@ void tst_QTimeLine::loopCount() // Default speed infiniti looping QSignalSpy spy(&timeLine, SIGNAL(frameChanged(int))); + QVERIFY(spy.isValid()); timeLine.start(); QTest::qWait(timeLine.duration()); QCOMPARE(timeLine.state(), QTimeLine::Running); @@ -302,6 +308,8 @@ void tst_QTimeLine::loopCount() QSignalSpy finishedSpy(&timeLine, SIGNAL(finished())); QSignalSpy frameChangedSpy(&timeLine, SIGNAL(frameChanged(int))); + QVERIFY(finishedSpy.isValid()); + QVERIFY(frameChangedSpy.isValid()); QEventLoop loop; connect(&timeLine, SIGNAL(finished()), &loop, SLOT(quit())); @@ -451,6 +459,7 @@ void tst_QTimeLine::frameChanged() timeLine.setFrameRange(0,9); timeLine.setUpdateInterval(1000); QSignalSpy spy(&timeLine, SIGNAL(frameChanged(int))); + QVERIFY(spy.isValid()); timeLine.start(); QTest::qWait(timeLine.duration()*2); QCOMPARE(timeLine.state(), QTimeLine::NotRunning); @@ -473,6 +482,7 @@ void tst_QTimeLine::stopped() timeLine.setFrameRange(0, 9); qRegisterMetaType("QTimeLine::State"); QSignalSpy spy(&timeLine, SIGNAL(stateChanged(QTimeLine::State))); + QVERIFY(spy.isValid()); timeLine.start(); QTest::qWait(timeLine.duration()*2); QCOMPARE(timeLine.state(), QTimeLine::NotRunning); @@ -490,6 +500,7 @@ void tst_QTimeLine::finished() QTimeLine timeLine; timeLine.setFrameRange(0,9); QSignalSpy spy(&timeLine, SIGNAL(finished())); + QVERIFY(spy.isValid()); timeLine.start(); QTest::qWait(timeLine.duration()*2); QCOMPARE(timeLine.state(), QTimeLine::NotRunning); @@ -522,6 +533,7 @@ void tst_QTimeLine::multipleTimeLines() QTimeLine timeLine(200); timeLine.setFrameRange(0,99); QSignalSpy spy(&timeLine, SIGNAL(finished())); + QVERIFY(spy.isValid()); QTimeLine timeLineKiller; timeLineKiller.setFrameRange(0,99); -- cgit v1.2.3 From 9f843918f27024181925b53b013666cc75e2d2e2 Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Fri, 23 Dec 2011 11:55:38 +1000 Subject: Remove empty functions from itemmodels tests. Change-Id: I23775a334812b096192c7f44c4a3cb06f4b08705 Reviewed-by: Rohan McGovern --- .../tst_qabstractproxymodel.cpp | 51 ---------------------- .../tst_qidentityproxymodel.cpp | 12 ----- .../tst_qitemselectionmodel.cpp | 6 --- .../tst_qsortfilterproxymodel.cpp | 26 ----------- .../qstringlistmodel/tst_qstringlistmodel.cpp | 43 ------------------ 5 files changed, 138 deletions(-) diff --git a/tests/auto/corelib/itemmodels/qabstractproxymodel/tst_qabstractproxymodel.cpp b/tests/auto/corelib/itemmodels/qabstractproxymodel/tst_qabstractproxymodel.cpp index b6557c45ec..93733070d9 100644 --- a/tests/auto/corelib/itemmodels/qabstractproxymodel/tst_qabstractproxymodel.cpp +++ b/tests/auto/corelib/itemmodels/qabstractproxymodel/tst_qabstractproxymodel.cpp @@ -49,14 +49,7 @@ class tst_QAbstractProxyModel : public QObject { Q_OBJECT -public slots: - void initTestCase(); - void cleanupTestCase(); - void init(); - void cleanup(); - private slots: - void qabstractproxymodel_data(); void qabstractproxymodel(); void data_data(); void data(); @@ -74,9 +67,7 @@ private slots: void mapSelectionToSource(); void mapToSource_data(); void mapToSource(); - void revert_data(); void revert(); - void setSourceModel_data(); void setSourceModel(); void submit_data(); void submit(); @@ -116,32 +107,6 @@ public: } }; -// This will be called before the first test function is executed. -// It is only called once. -void tst_QAbstractProxyModel::initTestCase() -{ -} - -// This will be called after the last test function is executed. -// It is only called once. -void tst_QAbstractProxyModel::cleanupTestCase() -{ -} - -// This will be called before each test function is executed. -void tst_QAbstractProxyModel::init() -{ -} - -// This will be called after every test function. -void tst_QAbstractProxyModel::cleanup() -{ -} - -void tst_QAbstractProxyModel::qabstractproxymodel_data() -{ -} - void tst_QAbstractProxyModel::qabstractproxymodel() { SubQAbstractProxyModel model; @@ -309,32 +274,16 @@ void tst_QAbstractProxyModel::mapToSource() QCOMPARE(model.mapToSource(proxyIndex), mapToSource); } -void tst_QAbstractProxyModel::revert_data() -{ - //QTest::addColumn("foo"); - //QTest::newRow("null") << 0; -} - // public void revert() void tst_QAbstractProxyModel::revert() { - //QFETCH(int, foo); - SubQAbstractProxyModel model; model.revert(); } -void tst_QAbstractProxyModel::setSourceModel_data() -{ - //QTest::addColumn("sourceModelCount"); - //QTest::newRow("null") << 0; -} - // public void setSourceModel(QAbstractItemModel* sourceModel) void tst_QAbstractProxyModel::setSourceModel() { - //QFETCH(int, sourceModelCount); - SubQAbstractProxyModel model; QStandardItemModel *sourceModel = new QStandardItemModel(&model); model.setSourceModel(sourceModel); diff --git a/tests/auto/corelib/itemmodels/qidentityproxymodel/tst_qidentityproxymodel.cpp b/tests/auto/corelib/itemmodels/qidentityproxymodel/tst_qidentityproxymodel.cpp index 2eb17c0305..9e00870082 100644 --- a/tests/auto/corelib/itemmodels/qidentityproxymodel/tst_qidentityproxymodel.cpp +++ b/tests/auto/corelib/itemmodels/qidentityproxymodel/tst_qidentityproxymodel.cpp @@ -55,14 +55,11 @@ class tst_QIdentityProxyModel : public QObject Q_OBJECT public: - tst_QIdentityProxyModel(); - virtual ~tst_QIdentityProxyModel(); public slots: void initTestCase(); void cleanupTestCase(); - void init(); void cleanup(); private slots: @@ -85,11 +82,6 @@ tst_QIdentityProxyModel::tst_QIdentityProxyModel() } -tst_QIdentityProxyModel::~tst_QIdentityProxyModel() -{ - -} - void tst_QIdentityProxyModel::initTestCase() { qRegisterMetaType("QModelIndex"); @@ -104,10 +96,6 @@ void tst_QIdentityProxyModel::cleanupTestCase() delete m_model; } -void tst_QIdentityProxyModel::init() -{ -} - void tst_QIdentityProxyModel::cleanup() { m_model->clear(); diff --git a/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp b/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp index dedcd0f4b1..6d2de19696 100644 --- a/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp +++ b/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp @@ -51,8 +51,6 @@ class tst_QItemSelectionModel : public QObject public: tst_QItemSelectionModel(); - virtual ~tst_QItemSelectionModel(); - public slots: void initTestCase(); @@ -190,10 +188,6 @@ tst_QItemSelectionModel::tst_QItemSelectionModel() : model(0), selection(0) { } -tst_QItemSelectionModel::~tst_QItemSelectionModel() -{ -} - /* This test usually uses a model with a 5x5 table ------------------------------------------- diff --git a/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp b/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp index 6d3e8906c9..1564070c44 100644 --- a/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp +++ b/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp @@ -66,12 +66,10 @@ class tst_QSortFilterProxyModel : public QObject public: tst_QSortFilterProxyModel(); - virtual ~tst_QSortFilterProxyModel(); public slots: void initTestCase(); void cleanupTestCase(); - void init(); void cleanup(); private slots: @@ -84,8 +82,6 @@ private slots: void insertRows_data(); void insertRows(); void prependRow(); -// void insertColumns_data(); -// void insertColumns(); void removeRows_data(); void removeRows(); void removeColumns_data(); @@ -180,11 +176,6 @@ tst_QSortFilterProxyModel::tst_QSortFilterProxyModel() } -tst_QSortFilterProxyModel::~tst_QSortFilterProxyModel() -{ - -} - void tst_QSortFilterProxyModel::initTestCase() { qRegisterMetaType("QModelIndex"); @@ -202,10 +193,6 @@ void tst_QSortFilterProxyModel::cleanupTestCase() delete m_model; } -void tst_QSortFilterProxyModel::init() -{ -} - void tst_QSortFilterProxyModel::cleanup() { m_proxy->setFilterRegExp(QRegExp()); @@ -634,19 +621,6 @@ void tst_QSortFilterProxyModel::prependRow() QCOMPARE(proxy.rowCount(QModelIndex()), 1); //only the "root" item is there } - -/* -void tst_QSortFilterProxyModel::insertColumns_data() -{ - -} - -void tst_QSortFilterProxyModel::insertColumns() -{ - -} -*/ - void tst_QSortFilterProxyModel::removeRows_data() { QTest::addColumn("initial"); diff --git a/tests/auto/corelib/itemmodels/qstringlistmodel/tst_qstringlistmodel.cpp b/tests/auto/corelib/itemmodels/qstringlistmodel/tst_qstringlistmodel.cpp index c8afe5dd75..d0da27d7f5 100644 --- a/tests/auto/corelib/itemmodels/qstringlistmodel/tst_qstringlistmodel.cpp +++ b/tests/auto/corelib/itemmodels/qstringlistmodel/tst_qstringlistmodel.cpp @@ -90,19 +90,7 @@ class tst_QStringListModel : public QObject { Q_OBJECT -public: - - tst_QStringListModel(); - virtual ~tst_QStringListModel(); - - -public slots: - void initTestCase(); - void cleanupTestCase(); - void init(); - void cleanup(); private slots: - void rowsAboutToBeRemoved_rowsRemoved(); void rowsAboutToBeRemoved_rowsRemoved_data(); @@ -110,37 +98,6 @@ private slots: void rowsAboutToBeInserted_rowsInserted_data(); }; - -tst_QStringListModel::tst_QStringListModel() - -{ -} - -tst_QStringListModel::~tst_QStringListModel() -{ -} - -void tst_QStringListModel::initTestCase() -{ -} - -void tst_QStringListModel::cleanupTestCase() -{ -} - -void tst_QStringListModel::init() -{ -} - -void tst_QStringListModel::cleanup() -{ -} - -/* - tests -*/ - - void tst_QStringListModel::rowsAboutToBeRemoved_rowsRemoved_data() { QTest::addColumn("input"); -- cgit v1.2.3 From 613d0e407e80f6439951597592523ac772f4c87c Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Fri, 23 Dec 2011 13:13:08 +1000 Subject: Cleanup itemmodel autotests. Bring the code closer to compliance with Qt's coding style guidelines and eliminate excessive vertical whitespace. Change-Id: Iaa29f8edf326ddb80cbadb6c18cca4fea88fd9b2 Reviewed-by: Rohan McGovern --- .../qabstractitemmodel/tst_qabstractitemmodel.cpp | 311 ++++------- .../tst_qabstractproxymodel.cpp | 26 +- .../tst_qidentityproxymodel.cpp | 3 - .../qitemselectionmodel/qitemselectionmodel.pro | 2 - .../tst_qitemselectionmodel.cpp | 584 ++++++++++----------- .../tst_qsortfilterproxymodel.cpp | 213 ++++---- .../itemmodels/qstringlistmodel/qmodellistener.h | 5 +- .../qstringlistmodel/qstringlistmodel.pro | 6 +- .../qstringlistmodel/tst_qstringlistmodel.cpp | 30 +- 9 files changed, 530 insertions(+), 650 deletions(-) diff --git a/tests/auto/corelib/itemmodels/qabstractitemmodel/tst_qabstractitemmodel.cpp b/tests/auto/corelib/itemmodels/qabstractitemmodel/tst_qabstractitemmodel.cpp index 5028728fd6..88b61395a2 100644 --- a/tests/auto/corelib/itemmodels/qabstractitemmodel/tst_qabstractitemmodel.cpp +++ b/tests/auto/corelib/itemmodels/qabstractitemmodel/tst_qabstractitemmodel.cpp @@ -682,7 +682,6 @@ void tst_QAbstractItemModel::dropMimeData() } } - void tst_QAbstractItemModel::changePersistentIndex() { QtTestModel model(3, 3); @@ -843,7 +842,6 @@ void tst_QAbstractItemModel::complexChangesWithPersistent() QVERIFY(!e[i].isValid()); for (int i=6; i <10 ; i++) QVERIFY(e[i] == model.index(2, i-2 , QModelIndex())); - } void tst_QAbstractItemModel::testMoveSameParentDown_data() @@ -871,20 +869,18 @@ void tst_QAbstractItemModel::testMoveSameParentDown_data() void tst_QAbstractItemModel::testMoveSameParentDown() { - QFETCH( int, startRow); - QFETCH( int, endRow); - QFETCH( int, destRow); - QFETCH( bool, topLevel); + QFETCH(int, startRow); + QFETCH(int, endRow); + QFETCH(int, destRow); + QFETCH(bool, topLevel); QModelIndex moveParent = topLevel ? QModelIndex() : m_model->index(5, 0); QList persistentList; QModelIndexList indexList; - for (int column = 0; column < m_model->columnCount(); ++column) - { - for (int row= 0; row < m_model->rowCount(); ++row) - { + for (int column = 0; column < m_model->columnCount(); ++column) { + for (int row = 0; row < m_model->rowCount(); ++row) { QModelIndex idx = m_model->index(row, column); QVERIFY(idx.isValid()); indexList << idx; @@ -893,10 +889,8 @@ void tst_QAbstractItemModel::testMoveSameParentDown() } QModelIndex parent = m_model->index(5, 0); - for (int column = 0; column < m_model->columnCount(); ++column) - { - for (int row= 0; row < m_model->rowCount(parent); ++row) - { + for (int column = 0; column < m_model->columnCount(); ++column) { + for (int row = 0; row < m_model->rowCount(parent); ++row) { QModelIndex idx = m_model->index(row, column, parent); QVERIFY(idx.isValid()); indexList << idx; @@ -938,37 +932,29 @@ void tst_QAbstractItemModel::testMoveSameParentDown() QCOMPARE(afterSignal.at(3).value(), moveParent); QCOMPARE(afterSignal.at(4).toInt(), destRow); - for (int i = 0; i < indexList.size(); i++) - { + for (int i = 0; i < indexList.size(); i++) { QModelIndex idx = indexList.at(i); QModelIndex persistentIndex = persistentList.at(i); - if (idx.parent() == moveParent) - { + if (idx.parent() == moveParent) { int row = idx.row(); - if ( row >= startRow) - { - if (row <= endRow) - { - QCOMPARE(row + destRow - endRow - 1, persistentIndex.row() ); + if ( row >= startRow) { + if (row <= endRow) { + QCOMPARE(row + destRow - endRow - 1, persistentIndex.row()); QCOMPARE(idx.column(), persistentIndex.column()); QCOMPARE(idx.parent(), persistentIndex.parent()); QCOMPARE(idx.model(), persistentIndex.model()); - } else if ( row < destRow) - { - QCOMPARE(row - (endRow - startRow + 1), persistentIndex.row() ); + } else if (row < destRow) { + QCOMPARE(row - (endRow - startRow + 1), persistentIndex.row()); QCOMPARE(idx.column(), persistentIndex.column()); QCOMPARE(idx.parent(), persistentIndex.parent()); QCOMPARE(idx.model(), persistentIndex.model()); - } else - { - QCOMPARE(idx, persistentIndex); + } else { + QCOMPARE(idx, persistentIndex); } - } else - { + } else { QCOMPARE(idx, persistentIndex); } - } else - { + } else { QCOMPARE(idx, persistentIndex); } } @@ -998,21 +984,18 @@ void tst_QAbstractItemModel::testMoveSameParentUp_data() void tst_QAbstractItemModel::testMoveSameParentUp() { - - QFETCH( int, startRow); - QFETCH( int, endRow); - QFETCH( int, destRow); - QFETCH( bool, topLevel); + QFETCH(int, startRow); + QFETCH(int, endRow); + QFETCH(int, destRow); + QFETCH(bool, topLevel); QModelIndex moveParent = topLevel ? QModelIndex() : m_model->index(5, 0); QList persistentList; QModelIndexList indexList; - for (int column = 0; column < m_model->columnCount(); ++column) - { - for (int row= 0; row < m_model->rowCount(); ++row) - { + for (int column = 0; column < m_model->columnCount(); ++column) { + for (int row = 0; row < m_model->rowCount(); ++row) { QModelIndex idx = m_model->index(row, column); QVERIFY(idx.isValid()); indexList << idx; @@ -1021,10 +1004,8 @@ void tst_QAbstractItemModel::testMoveSameParentUp() } QModelIndex parent = m_model->index(2, 0); - for (int column = 0; column < m_model->columnCount(); ++column) - { - for (int row= 0; row < m_model->rowCount(parent); ++row) - { + for (int column = 0; column < m_model->columnCount(); ++column) { + for (int row = 0; row < m_model->rowCount(parent); ++row) { QModelIndex idx = m_model->index(row, column, parent); QVERIFY(idx.isValid()); indexList << idx; @@ -1066,38 +1047,29 @@ void tst_QAbstractItemModel::testMoveSameParentUp() QCOMPARE(afterSignal.at(3).value(), moveParent); QCOMPARE(afterSignal.at(4).toInt(), destRow); - - for (int i = 0; i < indexList.size(); i++) - { + for (int i = 0; i < indexList.size(); i++) { QModelIndex idx = indexList.at(i); QModelIndex persistentIndex = persistentList.at(i); - if (idx.parent() == moveParent) - { + if (idx.parent() == moveParent) { int row = idx.row(); - if ( row >= destRow) - { - if (row < startRow) - { - QCOMPARE(row + endRow - startRow + 1, persistentIndex.row() ); + if ( row >= destRow) { + if (row < startRow) { + QCOMPARE(row + endRow - startRow + 1, persistentIndex.row()); QCOMPARE(idx.column(), persistentIndex.column()); QCOMPARE(idx.parent(), persistentIndex.parent()); QCOMPARE(idx.model(), persistentIndex.model()); - } else if ( row <= endRow) - { - QCOMPARE(row + destRow - startRow, persistentIndex.row() ); + } else if (row <= endRow) { + QCOMPARE(row + destRow - startRow, persistentIndex.row()); QCOMPARE(idx.column(), persistentIndex.column()); QCOMPARE(idx.parent(), persistentIndex.parent()); QCOMPARE(idx.model(), persistentIndex.model()); - } else - { + } else { QCOMPARE(idx, persistentIndex); } - } else - { + } else { QCOMPARE(idx, persistentIndex); } - } else - { + } else { QCOMPARE(idx, persistentIndex); } } @@ -1161,19 +1133,16 @@ void tst_QAbstractItemModel::testMoveToGrandParent_data() void tst_QAbstractItemModel::testMoveToGrandParent() { - - QFETCH( int, startRow); - QFETCH( int, endRow); - QFETCH( int, destRow); + QFETCH(int, startRow); + QFETCH(int, endRow); + QFETCH(int, destRow); QList persistentList; QModelIndexList indexList; QModelIndexList parentsList; - for (int column = 0; column < m_model->columnCount(); ++column) - { - for (int row= 0; row < m_model->rowCount(); ++row) - { + for (int column = 0; column < m_model->columnCount(); ++column) { + for (int row = 0; row < m_model->rowCount(); ++row) { QModelIndex idx = m_model->index(row, column); QVERIFY(idx.isValid()); indexList << idx; @@ -1183,10 +1152,8 @@ void tst_QAbstractItemModel::testMoveToGrandParent() } QModelIndex sourceIndex = m_model->index(5, 0); - for (int column = 0; column < m_model->columnCount(); ++column) - { - for (int row= 0; row < m_model->rowCount(sourceIndex); ++row) - { + for (int column = 0; column < m_model->columnCount(); ++column) { + for (int row = 0; row < m_model->rowCount(sourceIndex); ++row) { QModelIndex idx = m_model->index(row, column, sourceIndex); QVERIFY(idx.isValid()); indexList << idx; @@ -1228,46 +1195,37 @@ void tst_QAbstractItemModel::testMoveToGrandParent() QCOMPARE(afterSignal.at(3).value(), QModelIndex()); QCOMPARE(afterSignal.at(4).toInt(), destRow); - for (int i = 0; i < indexList.size(); i++) - { + for (int i = 0; i < indexList.size(); i++) { QModelIndex idx = indexList.at(i); QModelIndex idxParent = parentsList.at(i); QModelIndex persistentIndex = persistentList.at(i); int row = idx.row(); - if (idxParent == QModelIndex()) - { - if ( row >= destRow) - { - QCOMPARE(row + endRow - startRow + 1, persistentIndex.row() ); - QCOMPARE(idx.column(), persistentIndex.column()); - QCOMPARE(idxParent, persistentIndex.parent()); - QCOMPARE(idx.model(), persistentIndex.model()); - } else - { + if (idxParent == QModelIndex()) { + if (row >= destRow) { + QCOMPARE(row + endRow - startRow + 1, persistentIndex.row()); + QCOMPARE(idx.column(), persistentIndex.column()); + QCOMPARE(idxParent, persistentIndex.parent()); + QCOMPARE(idx.model(), persistentIndex.model()); + } else { QCOMPARE(idx, persistentIndex); } - } else - { - if (row < startRow) - { + } else { + if (row < startRow) { QCOMPARE(idx, persistentIndex); - } else if (row <= endRow) - { - QCOMPARE(row + destRow - startRow, persistentIndex.row() ); + } else if (row <= endRow) { + QCOMPARE(row + destRow - startRow, persistentIndex.row()); QCOMPARE(idx.column(), persistentIndex.column()); QCOMPARE(QModelIndex(), persistentIndex.parent()); QCOMPARE(idx.model(), persistentIndex.model()); } else { - QCOMPARE(row - (endRow - startRow + 1), persistentIndex.row() ); + QCOMPARE(row - (endRow - startRow + 1), persistentIndex.row()); QCOMPARE(idx.column(), persistentIndex.column()); - if (idxParent.row() >= destRow) - { + if (idxParent.row() >= destRow) { QModelIndex adjustedParent; - adjustedParent = idxParent.sibling( idxParent.row() + endRow - startRow + 1, idxParent.column()); + adjustedParent = idxParent.sibling(idxParent.row() + endRow - startRow + 1, idxParent.column()); QCOMPARE(adjustedParent, persistentIndex.parent()); - } else - { + } else { QCOMPARE(idxParent, persistentIndex.parent()); } QCOMPARE(idx.model(), persistentIndex.model()); @@ -1316,10 +1274,9 @@ void tst_QAbstractItemModel::testMoveToSibling_data() void tst_QAbstractItemModel::testMoveToSibling() { - - QFETCH( int, startRow); - QFETCH( int, endRow); - QFETCH( int, destRow); + QFETCH(int, startRow); + QFETCH(int, endRow); + QFETCH(int, destRow); QList persistentList; QModelIndexList indexList; @@ -1327,8 +1284,7 @@ void tst_QAbstractItemModel::testMoveToSibling() const int column = 0; - for (int i= 0; i < m_model->rowCount(); ++i) - { + for (int i = 0; i < m_model->rowCount(); ++i) { QModelIndex idx = m_model->index(i, column); QVERIFY(idx.isValid()); indexList << idx; @@ -1338,8 +1294,7 @@ void tst_QAbstractItemModel::testMoveToSibling() QModelIndex destIndex = m_model->index(5, 0); QModelIndex sourceIndex; - for (int i= 0; i < m_model->rowCount(destIndex); ++i) - { + for (int i = 0; i < m_model->rowCount(destIndex); ++i) { QModelIndex idx = m_model->index(i, column, destIndex); QVERIFY(idx.isValid()); indexList << idx; @@ -1380,51 +1335,41 @@ void tst_QAbstractItemModel::testMoveToSibling() QCOMPARE(afterSignal.at(3).value(), static_cast(persistentDest)); QCOMPARE(afterSignal.at(4).toInt(), destRow); - for (int i = 0; i < indexList.size(); i++) - { + for (int i = 0; i < indexList.size(); i++) { QModelIndex idx = indexList.at(i); QModelIndex idxParent = parentsList.at(i); QModelIndex persistentIndex = persistentList.at(i); QModelIndex adjustedDestination = destIndex.sibling(destIndex.row() - (endRow - startRow + 1), destIndex.column()); int row = idx.row(); - if (idxParent == destIndex) - { - if ( row >= destRow) - { - QCOMPARE(row + endRow - startRow + 1, persistentIndex.row() ); - QCOMPARE(idx.column(), persistentIndex.column()); - if (idxParent.row() > startRow) - { - QCOMPARE(adjustedDestination, persistentIndex.parent()); - } else { - QCOMPARE(destIndex, persistentIndex.parent()); - } - QCOMPARE(idx.model(), persistentIndex.model()); - } else - { + if (idxParent == destIndex) { + if (row >= destRow) { + QCOMPARE(row + endRow - startRow + 1, persistentIndex.row()); + QCOMPARE(idx.column(), persistentIndex.column()); + if (idxParent.row() > startRow) { + QCOMPARE(adjustedDestination, persistentIndex.parent()); + } else { + QCOMPARE(destIndex, persistentIndex.parent()); + } + QCOMPARE(idx.model(), persistentIndex.model()); + } else { QCOMPARE(idx, persistentIndex); } - } else - { - if (row < startRow) - { + } else { + if (row < startRow) { QCOMPARE(idx, persistentIndex); - } else if (row <= endRow) - { - QCOMPARE(row + destRow - startRow, persistentIndex.row() ); + } else if (row <= endRow) { + QCOMPARE(row + destRow - startRow, persistentIndex.row()); QCOMPARE(idx.column(), persistentIndex.column()); - if (destIndex.row() > startRow) - { + if (destIndex.row() > startRow) { QCOMPARE(adjustedDestination, persistentIndex.parent()); } else { QCOMPARE(destIndex, persistentIndex.parent()); } QCOMPARE(idx.model(), persistentIndex.model()); - } else { - QCOMPARE(row - (endRow - startRow + 1), persistentIndex.row() ); + QCOMPARE(row - (endRow - startRow + 1), persistentIndex.row()); QCOMPARE(idx.column(), persistentIndex.column()); QCOMPARE(idxParent, persistentIndex.parent()); QCOMPARE(idx.model(), persistentIndex.model()); @@ -1435,7 +1380,6 @@ void tst_QAbstractItemModel::testMoveToSibling() void tst_QAbstractItemModel::testMoveToUncle_data() { - QTest::addColumn("startRow"); QTest::addColumn("endRow"); QTest::addColumn("destRow"); @@ -1480,9 +1424,9 @@ void tst_QAbstractItemModel::testMoveToUncle() insertCommand->setEndRow(9); insertCommand->doCommand(); - QFETCH( int, startRow); - QFETCH( int, endRow); - QFETCH( int, destRow); + QFETCH(int, startRow); + QFETCH(int, endRow); + QFETCH(int, destRow); QList persistentList; QModelIndexList indexList; @@ -1491,8 +1435,7 @@ void tst_QAbstractItemModel::testMoveToUncle() const int column = 0; QModelIndex sourceIndex = m_model->index(9, 0); - for (int i= 0; i < m_model->rowCount(sourceIndex); ++i) - { + for (int i = 0; i < m_model->rowCount(sourceIndex); ++i) { QModelIndex idx = m_model->index(i, column, sourceIndex); QVERIFY(idx.isValid()); indexList << idx; @@ -1501,8 +1444,7 @@ void tst_QAbstractItemModel::testMoveToUncle() } QModelIndex destIndex = m_model->index(5, 0); - for (int i= 0; i < m_model->rowCount(destIndex); ++i) - { + for (int i = 0; i < m_model->rowCount(destIndex); ++i) { QModelIndex idx = m_model->index(i, column, destIndex); QVERIFY(idx.isValid()); indexList << idx; @@ -1542,39 +1484,31 @@ void tst_QAbstractItemModel::testMoveToUncle() QCOMPARE(afterSignal.at(3).value(), destIndex); QCOMPARE(afterSignal.at(4).toInt(), destRow); - for (int i = 0; i < indexList.size(); i++) - { + for (int i = 0; i < indexList.size(); i++) { QModelIndex idx = indexList.at(i); QModelIndex idxParent = parentsList.at(i); QModelIndex persistentIndex = persistentList.at(i); int row = idx.row(); - if (idxParent == destIndex) - { - if ( row >= destRow) - { - QCOMPARE(row + endRow - startRow + 1, persistentIndex.row() ); - QCOMPARE(idx.column(), persistentIndex.column()); - QCOMPARE(destIndex, persistentIndex.parent()); - QCOMPARE(idx.model(), persistentIndex.model()); - } else - { + if (idxParent == destIndex) { + if (row >= destRow) { + QCOMPARE(row + endRow - startRow + 1, persistentIndex.row()); + QCOMPARE(idx.column(), persistentIndex.column()); + QCOMPARE(destIndex, persistentIndex.parent()); + QCOMPARE(idx.model(), persistentIndex.model()); + } else { QCOMPARE(idx, persistentIndex); } - } else - { - if (row < startRow) - { + } else { + if (row < startRow) { QCOMPARE(idx, persistentIndex); - } else if (row <= endRow) - { - QCOMPARE(row + destRow - startRow, persistentIndex.row() ); + } else if (row <= endRow) { + QCOMPARE(row + destRow - startRow, persistentIndex.row()); QCOMPARE(idx.column(), persistentIndex.column()); QCOMPARE(destIndex, persistentIndex.parent()); QCOMPARE(idx.model(), persistentIndex.model()); - } else { - QCOMPARE(row - (endRow - startRow + 1), persistentIndex.row() ); + QCOMPARE(row - (endRow - startRow + 1), persistentIndex.row()); QCOMPARE(idx.column(), persistentIndex.column()); QCOMPARE(idxParent, persistentIndex.parent()); QCOMPARE(idx.model(), persistentIndex.model()); @@ -1591,8 +1525,7 @@ void tst_QAbstractItemModel::testMoveToDescendants() // Need to have some extra rows available in a tree. QList rows; ModelInsertCommand *insertCommand; - for (int i = 0; i < depth; i++) - { + for (int i = 0; i < depth; i++) { insertCommand = new ModelInsertCommand(m_model, this); insertCommand->setAncestorRowNumbers(rows); insertCommand->setNumCols(4); @@ -1609,8 +1542,7 @@ void tst_QAbstractItemModel::testMoveToDescendants() const int column = 0; QModelIndex sourceIndex = m_model->index(9, 0); - for (int i= 0; i < m_model->rowCount(sourceIndex); ++i) - { + for (int i = 0; i < m_model->rowCount(sourceIndex); ++i) { QModelIndex idx = m_model->index(i, column, sourceIndex); QVERIFY(idx.isValid()); indexList << idx; @@ -1619,8 +1551,7 @@ void tst_QAbstractItemModel::testMoveToDescendants() } QModelIndex destIndex = m_model->index(5, 0); - for (int i= 0; i < m_model->rowCount(destIndex); ++i) - { + for (int i = 0; i < m_model->rowCount(destIndex); ++i) { QModelIndex idx = m_model->index(i, column, destIndex); QVERIFY(idx.isValid()); indexList << idx; @@ -1636,11 +1567,9 @@ void tst_QAbstractItemModel::testMoveToDescendants() ModelMoveCommand *moveCommand; QList ancestors; - while (ancestors.size() < depth) - { + while (ancestors.size() < depth) { ancestors << 9; - for (int row = 0; row <= 9; row++) - { + for (int row = 0; row <= 9; row++) { moveCommand = new ModelMoveCommand(m_model, this); moveCommand->setNumCols(4); moveCommand->setStartRow(9); @@ -1686,16 +1615,13 @@ void tst_QAbstractItemModel::testMoveWithinOwnRange_data() QTest::newRow("move20") << 8 << 9 << 10; QTest::newRow("move21") << 9 << 9 << 9; QTest::newRow("move22") << 0 << 9 << 10; - } void tst_QAbstractItemModel::testMoveWithinOwnRange() { - - QFETCH( int, startRow); - QFETCH( int, endRow); - QFETCH( int, destRow); - + QFETCH(int, startRow); + QFETCH(int, endRow); + QFETCH(int, destRow); QSignalSpy beforeSpy(m_model, SIGNAL(rowsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int))); QSignalSpy afterSpy(m_model, SIGNAL(rowsMoved(const QModelIndex &, int, int, const QModelIndex &, int))); @@ -1712,13 +1638,11 @@ void tst_QAbstractItemModel::testMoveWithinOwnRange() QVERIFY(beforeSpy.size() == 0); QVERIFY(afterSpy.size() == 0); - - } class ListenerObject : public QObject { - Q_OBJECT + Q_OBJECT public: ListenerObject(QAbstractProxyModel *parent); @@ -1750,14 +1674,11 @@ void ListenerObject::fillIndexStores(const QModelIndex &parent) const int column = 0; int row = 0; QModelIndex idx = m_model->index(row, column, parent); - while (idx.isValid()) - { + while (idx.isValid()) { m_persistentIndexes << QPersistentModelIndex(idx); m_nonPersistentIndexes << idx; if (m_model->hasChildren(idx)) - { fillIndexStores(idx); - } ++row; idx = m_model->index(row, column, parent); } @@ -1766,8 +1687,7 @@ void ListenerObject::fillIndexStores(const QModelIndex &parent) void ListenerObject::slotAboutToBeReset() { // Nothing has been changed yet. All indexes should be the same. - for (int i = 0; i < m_persistentIndexes.size(); ++i) - { + for (int i = 0; i < m_persistentIndexes.size(); ++i) { QModelIndex idx = m_persistentIndexes.at(i); QVERIFY(idx == m_nonPersistentIndexes.at(i)); QVERIFY(m_model->mapToSource(idx).isValid()); @@ -1776,13 +1696,11 @@ void ListenerObject::slotAboutToBeReset() void ListenerObject::slotReset() { - foreach(const QModelIndex &idx, m_persistentIndexes) - { + foreach (const QModelIndex &idx, m_persistentIndexes) { QVERIFY(!idx.isValid()); } } - void tst_QAbstractItemModel::testReset() { QSignalSpy beforeResetSpy(m_model, SIGNAL(modelAboutToBeReset())); @@ -1814,7 +1732,6 @@ void tst_QAbstractItemModel::testReset() QVERIFY(m_model->rowCount() == 9); QModelIndex destIndex = m_model->index(4, 0); QVERIFY(m_model->rowCount(destIndex) == 11); - } class CustomRoleModel : public QStringListModel @@ -1831,7 +1748,6 @@ public: CustomRoleModel(QObject *parent = 0) : QStringListModel(QStringList() << "a" << "b" << "c", parent) { - } void emitSignals() @@ -1991,7 +1907,6 @@ void tst_QAbstractItemModel::testChildrenLayoutsChanged() QVERIFY(p1LastPersistent.row() == 0); QVERIFY(p2FirstPersistent.row() == 9); QVERIFY(p2LastPersistent.row() == 8); - } insertCommand = new ModelInsertCommand(&model, this); diff --git a/tests/auto/corelib/itemmodels/qabstractproxymodel/tst_qabstractproxymodel.cpp b/tests/auto/corelib/itemmodels/qabstractproxymodel/tst_qabstractproxymodel.cpp index 93733070d9..d99512e75c 100644 --- a/tests/auto/corelib/itemmodels/qabstractproxymodel/tst_qabstractproxymodel.cpp +++ b/tests/auto/corelib/itemmodels/qabstractproxymodel/tst_qabstractproxymodel.cpp @@ -39,7 +39,6 @@ ** ****************************************************************************/ - #include #include #include @@ -330,18 +329,18 @@ public: class AnotherStandardItemModelWithCustomRoleNames : public QStandardItemModel { - public: - enum CustomRole { - AnotherCustomRole1 = Qt::UserRole + 10, // Different to StandardItemModelWithCustomRoleNames::CustomRole1 - AnotherCustomRole2 - }; - - AnotherStandardItemModelWithCustomRoleNames() { - QHash _roleNames = roleNames(); - _roleNames.insert(AnotherCustomRole1, "another_custom1"); - _roleNames.insert(AnotherCustomRole2, "another_custom2"); - setRoleNames(_roleNames); - } +public: + enum CustomRole { + AnotherCustomRole1 = Qt::UserRole + 10, // Different to StandardItemModelWithCustomRoleNames::CustomRole1 + AnotherCustomRole2 + }; + + AnotherStandardItemModelWithCustomRoleNames() { + QHash _roleNames = roleNames(); + _roleNames.insert(AnotherCustomRole1, "another_custom1"); + _roleNames.insert(AnotherCustomRole2, "another_custom2"); + setRoleNames(_roleNames); + } }; /** @@ -390,7 +389,6 @@ void tst_QAbstractProxyModel::testRoleNames() QVERIFY( proxy2RoleNames.contains(StandardItemModelWithCustomRoleNames::CustomRole2)); QVERIFY( proxy2RoleNames.value(StandardItemModelWithCustomRoleNames::CustomRole1) == "custom1" ); QVERIFY( proxy2RoleNames.value(StandardItemModelWithCustomRoleNames::CustomRole2) == "custom2" ); - } QTEST_MAIN(tst_QAbstractProxyModel) diff --git a/tests/auto/corelib/itemmodels/qidentityproxymodel/tst_qidentityproxymodel.cpp b/tests/auto/corelib/itemmodels/qidentityproxymodel/tst_qidentityproxymodel.cpp index 9e00870082..ec59bcd216 100644 --- a/tests/auto/corelib/itemmodels/qidentityproxymodel/tst_qidentityproxymodel.cpp +++ b/tests/auto/corelib/itemmodels/qidentityproxymodel/tst_qidentityproxymodel.cpp @@ -39,7 +39,6 @@ ** ****************************************************************************/ - #include #include #include @@ -79,7 +78,6 @@ private: tst_QIdentityProxyModel::tst_QIdentityProxyModel() : m_model(0), m_proxy(0) { - } void tst_QIdentityProxyModel::initTestCase() @@ -177,7 +175,6 @@ void tst_QIdentityProxyModel::insertRows() QVERIFY(modelAfterSpy.first().at(2) == proxyAfterSpy.first().at(2)); verifyIdentity(m_model); - } void tst_QIdentityProxyModel::removeRows() diff --git a/tests/auto/corelib/itemmodels/qitemselectionmodel/qitemselectionmodel.pro b/tests/auto/corelib/itemmodels/qitemselectionmodel/qitemselectionmodel.pro index a4c7ba3786..aff9b3102d 100644 --- a/tests/auto/corelib/itemmodels/qitemselectionmodel/qitemselectionmodel.pro +++ b/tests/auto/corelib/itemmodels/qitemselectionmodel/qitemselectionmodel.pro @@ -2,5 +2,3 @@ CONFIG += testcase TARGET = tst_qitemselectionmodel QT += widgets testlib SOURCES += tst_qitemselectionmodel.cpp - - diff --git a/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp b/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp index 6d2de19696..12d0301ff4 100644 --- a/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp +++ b/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp @@ -39,7 +39,6 @@ ** ****************************************************************************/ - #include #include @@ -114,7 +113,6 @@ typedef QList IntList; typedef QPair IntPair; typedef QList PairList; - Q_DECLARE_METATYPE(PairList) Q_DECLARE_METATYPE(QModelIndex) Q_DECLARE_METATYPE(QModelIndexList) @@ -184,7 +182,8 @@ QDataStream &operator>>(QDataStream &s, QModelIndexList &output) return s; } -tst_QItemSelectionModel::tst_QItemSelectionModel() : model(0), selection(0) +tst_QItemSelectionModel::tst_QItemSelectionModel() + : model(0), selection(0) { } @@ -315,7 +314,7 @@ void tst_QItemSelectionModel::clearAndSelect() // populate selectionmodel selection->select(model->index(1, 1, QModelIndex()), QItemSelectionModel::Select); QCOMPARE(selection->selectedIndexes().count(), 1); - QVERIFY(selection->hasSelection()); + QVERIFY(selection->hasSelection()); // ClearAndSelect with empty selection QItemSelection emptySelection; @@ -323,40 +322,38 @@ void tst_QItemSelectionModel::clearAndSelect() // verify the selectionmodel is empty QVERIFY(selection->selectedIndexes().isEmpty()); - QVERIFY(selection->hasSelection()==false); + QVERIFY(selection->hasSelection()==false); } void tst_QItemSelectionModel::toggleSelection() { - //test the toggle selection and checks whether selectedIndex - //and hasSelection returns the correct value + //test the toggle selection and checks whether selectedIndex + //and hasSelection returns the correct value - selection->clearSelection(); + selection->clearSelection(); QCOMPARE(selection->selectedIndexes().count(), 0); - QVERIFY(selection->hasSelection()==false); + QVERIFY(selection->hasSelection()==false); - QModelIndex index=model->index(1, 1, QModelIndex()); + QModelIndex index=model->index(1, 1, QModelIndex()); // populate selectionmodel selection->select(index, QItemSelectionModel::Toggle); QCOMPARE(selection->selectedIndexes().count(), 1); - QVERIFY(selection->hasSelection()==true); + QVERIFY(selection->hasSelection()==true); selection->select(index, QItemSelectionModel::Toggle); QCOMPARE(selection->selectedIndexes().count(), 0); - QVERIFY(selection->hasSelection()==false); + QVERIFY(selection->hasSelection()==false); // populate selectionmodel with rows selection->select(index, QItemSelectionModel::Toggle | QItemSelectionModel::Rows); QCOMPARE(selection->selectedIndexes().count(), model->columnCount()); - QVERIFY(selection->hasSelection()==true); + QVERIFY(selection->hasSelection()==true); selection->select(index, QItemSelectionModel::Toggle | QItemSelectionModel::Rows); QCOMPARE(selection->selectedIndexes().count(), 0); - QVERIFY(selection->hasSelection()==false); - + QVERIFY(selection->hasSelection()==false); } - void tst_QItemSelectionModel::select_data() { QTest::addColumn("indexList"); @@ -1181,54 +1178,54 @@ void tst_QItemSelectionModel::select_data() } { QModelIndexList indexes; - IntList commands; - QModelIndexList expected; - - indexes << model->index(0, 0, QModelIndex()) << model->index(0, 0, QModelIndex()) // press 0 - << model->index(0, 0, QModelIndex()) << model->index(0, 0, QModelIndex()) // release 0 - << model->index(1, 0, QModelIndex()) << model->index(1, 0, QModelIndex()) // press 1 - << model->index(1, 0, QModelIndex()) << model->index(1, 0, QModelIndex()) // release 1 - << model->index(2, 0, QModelIndex()) << model->index(2, 0, QModelIndex()) // press 2 - << model->index(2, 0, QModelIndex()) << model->index(2, 0, QModelIndex()) // release 2 - << model->index(3, 0, QModelIndex()) << model->index(3, 0, QModelIndex()) // press 3 - << model->index(3, 0, QModelIndex()) << model->index(3, 0, QModelIndex()) // release 3 - << model->index(2, 0, QModelIndex()) << model->index(2, 0, QModelIndex()) // press 2 again - << model->index(2, 0, QModelIndex()) << model->index(2, 0, QModelIndex());// move 2 - - commands << (QItemSelectionModel::NoUpdate) // press 0 - << (QItemSelectionModel::Toggle|QItemSelectionModel::Rows) // release 0 - << (QItemSelectionModel::NoUpdate) // press 1 - << (QItemSelectionModel::Toggle|QItemSelectionModel::Rows) // release 1 - << (QItemSelectionModel::NoUpdate) // press 2 - << (QItemSelectionModel::Toggle|QItemSelectionModel::Rows) // release 2 - << (QItemSelectionModel::NoUpdate) // press 3 - << (QItemSelectionModel::Toggle|QItemSelectionModel::Rows) // release 3 - << (QItemSelectionModel::NoUpdate) // press 2 again - << (QItemSelectionModel::Toggle/*Current*/|QItemSelectionModel::Rows);// move 2 - - expected << model->index(0, 0, QModelIndex()) - << model->index(0, 1, QModelIndex()) - << model->index(0, 2, QModelIndex()) - << model->index(0, 3, QModelIndex()) - << model->index(0, 4, QModelIndex()) - - << model->index(1, 0, QModelIndex()) - << model->index(1, 1, QModelIndex()) - << model->index(1, 2, QModelIndex()) - << model->index(1, 3, QModelIndex()) - << model->index(1, 4, QModelIndex()) - /* - << model->index(2, 0, QModelIndex()) - << model->index(2, 1, QModelIndex()) - << model->index(2, 2, QModelIndex()) - << model->index(2, 3, QModelIndex()) - << model->index(2, 4, QModelIndex()) - */ - << model->index(3, 0, QModelIndex()) - << model->index(3, 1, QModelIndex()) - << model->index(3, 2, QModelIndex()) - << model->index(3, 3, QModelIndex()) - << model->index(3, 4, QModelIndex()); + IntList commands; + QModelIndexList expected; + + indexes << model->index(0, 0, QModelIndex()) << model->index(0, 0, QModelIndex()) // press 0 + << model->index(0, 0, QModelIndex()) << model->index(0, 0, QModelIndex()) // release 0 + << model->index(1, 0, QModelIndex()) << model->index(1, 0, QModelIndex()) // press 1 + << model->index(1, 0, QModelIndex()) << model->index(1, 0, QModelIndex()) // release 1 + << model->index(2, 0, QModelIndex()) << model->index(2, 0, QModelIndex()) // press 2 + << model->index(2, 0, QModelIndex()) << model->index(2, 0, QModelIndex()) // release 2 + << model->index(3, 0, QModelIndex()) << model->index(3, 0, QModelIndex()) // press 3 + << model->index(3, 0, QModelIndex()) << model->index(3, 0, QModelIndex()) // release 3 + << model->index(2, 0, QModelIndex()) << model->index(2, 0, QModelIndex()) // press 2 again + << model->index(2, 0, QModelIndex()) << model->index(2, 0, QModelIndex());// move 2 + + commands << (QItemSelectionModel::NoUpdate) // press 0 + << (QItemSelectionModel::Toggle|QItemSelectionModel::Rows) // release 0 + << (QItemSelectionModel::NoUpdate) // press 1 + << (QItemSelectionModel::Toggle|QItemSelectionModel::Rows) // release 1 + << (QItemSelectionModel::NoUpdate) // press 2 + << (QItemSelectionModel::Toggle|QItemSelectionModel::Rows) // release 2 + << (QItemSelectionModel::NoUpdate) // press 3 + << (QItemSelectionModel::Toggle|QItemSelectionModel::Rows) // release 3 + << (QItemSelectionModel::NoUpdate) // press 2 again + << (QItemSelectionModel::Toggle/*Current*/|QItemSelectionModel::Rows);// move 2 + + expected << model->index(0, 0, QModelIndex()) + << model->index(0, 1, QModelIndex()) + << model->index(0, 2, QModelIndex()) + << model->index(0, 3, QModelIndex()) + << model->index(0, 4, QModelIndex()) + + << model->index(1, 0, QModelIndex()) + << model->index(1, 1, QModelIndex()) + << model->index(1, 2, QModelIndex()) + << model->index(1, 3, QModelIndex()) + << model->index(1, 4, QModelIndex()) + /* + << model->index(2, 0, QModelIndex()) + << model->index(2, 1, QModelIndex()) + << model->index(2, 2, QModelIndex()) + << model->index(2, 3, QModelIndex()) + << model->index(2, 4, QModelIndex()) + */ + << model->index(3, 0, QModelIndex()) + << model->index(3, 1, QModelIndex()) + << model->index(3, 2, QModelIndex()) + << model->index(3, 3, QModelIndex()) + << model->index(3, 4, QModelIndex()); QTest::newRow("simulated treeview multiselection behavior") << indexes @@ -1337,140 +1334,140 @@ void tst_QItemSelectionModel::persistentselections_data() << insertRows << insertColumns << deleteRows << deleteColumns << expected; - index.clear(); expected.clear(); command.clear(); - insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); - index << IntPair(0, 0); - command << QItemSelectionModel::ClearAndSelect; - deleteRows << 0 << 1; - QTest::newRow("ClearAndSelect (0, 0). Delete first row.") - << index << command - << insertRows << insertColumns << deleteRows << deleteColumns - << expected; - - index.clear(); expected.clear(); command.clear(); - insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); - index << IntPair(1, 0); - command << QItemSelectionModel::ClearAndSelect; - deleteRows << 0 << 1; - expected << IntPair(0, 0); - QTest::newRow("ClearAndSelect (1, 0). Delete first row.") - << index << command - << insertRows << insertColumns << deleteRows << deleteColumns - << expected; - - index.clear(); expected.clear(); command.clear(); - insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); - index << IntPair(0, 0); - command << QItemSelectionModel::ClearAndSelect; - insertRows << 5 << 1; - expected << IntPair(0, 0); - QTest::newRow("ClearAndSelect (0, 0). Append row.") - << index << command - << insertRows << insertColumns << deleteRows << deleteColumns - << expected; - - index.clear(); expected.clear(); command.clear(); - insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); - index << IntPair(0, 0); - command << QItemSelectionModel::ClearAndSelect; - insertRows << 0 << 1; - expected << IntPair(1, 0); - QTest::newRow("ClearAndSelect (0, 0). Insert before first row.") - << index << command - << insertRows << insertColumns << deleteRows << deleteColumns - << expected; - - index.clear(); expected.clear(); command.clear(); - insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); - index << IntPair(0, 0) - << IntPair(4, 0); - command << QItemSelectionModel::ClearAndSelect; - insertRows << 5 << 1; - expected << IntPair(0, 0) - << IntPair(1, 0) - << IntPair(2, 0) - << IntPair(3, 0) - << IntPair(4, 0); - QTest::newRow("ClearAndSelect (0, 0) to (4, 0). Append row.") - << index << command - << insertRows << insertColumns << deleteRows << deleteColumns - << expected; - - index.clear(); expected.clear(); command.clear(); - insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); - index << IntPair(0, 0) - << IntPair(4, 0); - command << QItemSelectionModel::ClearAndSelect; - insertRows << 0 << 1; - expected << IntPair(1, 0) - << IntPair(2, 0) - << IntPair(3, 0) - << IntPair(4, 0) - << IntPair(5, 0); - QTest::newRow("ClearAndSelect (0, 0) to (4, 0). Insert before first row.") - << index << command - << insertRows << insertColumns << deleteRows << deleteColumns - << expected; - - index.clear(); expected.clear(); command.clear(); - insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); - index << IntPair(0, 0) - << IntPair(4, 0); - command << QItemSelectionModel::ClearAndSelect; - deleteRows << 0 << 1; - expected << IntPair(0, 0) - << IntPair(1, 0) - << IntPair(2, 0) - << IntPair(3, 0); - QTest::newRow("ClearAndSelect (0, 0) to (4, 0). Delete first row.") - << index << command - << insertRows << insertColumns << deleteRows << deleteColumns - << expected; - - index.clear(); expected.clear(); command.clear(); - insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); - index << IntPair(0, 0) - << IntPair(4, 0); - command << QItemSelectionModel::ClearAndSelect; - deleteRows << 4 << 1; - expected << IntPair(0, 0) - << IntPair(1, 0) - << IntPair(2, 0) - << IntPair(3, 0); - QTest::newRow("ClearAndSelect (0, 0) to (4, 0). Delete last row.") - << index << command - << insertRows << insertColumns << deleteRows << deleteColumns - << expected; - - index.clear(); expected.clear(); command.clear(); - insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); - index << IntPair(0, 0) - << IntPair(4, 0); - command << QItemSelectionModel::ClearAndSelect; - deleteRows << 1 << 3; - expected << IntPair(0, 0) - << IntPair(1, 0); - QTest::newRow("ClearAndSelect (0, 0) to (4, 0). Deleting all but first and last row.") - << index << command - << insertRows << insertColumns << deleteRows << deleteColumns - << expected; - - index.clear(); expected.clear(); command.clear(); - insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); - index << IntPair(0, 0) - << IntPair(4, 0); - command << QItemSelectionModel::ClearAndSelect; - insertRows << 1 << 1; - expected << IntPair(0, 0) - // the inserted row should not be selected - << IntPair(2, 0) - << IntPair(3, 0) - << IntPair(4, 0) - << IntPair(5, 0); - QTest::newRow("ClearAndSelect (0, 0) to (4, 0). Insert after first row.") - << index << command - << insertRows << insertColumns << deleteRows << deleteColumns - << expected; + index.clear(); expected.clear(); command.clear(); + insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); + index << IntPair(0, 0); + command << QItemSelectionModel::ClearAndSelect; + deleteRows << 0 << 1; + QTest::newRow("ClearAndSelect (0, 0). Delete first row.") + << index << command + << insertRows << insertColumns << deleteRows << deleteColumns + << expected; + + index.clear(); expected.clear(); command.clear(); + insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); + index << IntPair(1, 0); + command << QItemSelectionModel::ClearAndSelect; + deleteRows << 0 << 1; + expected << IntPair(0, 0); + QTest::newRow("ClearAndSelect (1, 0). Delete first row.") + << index << command + << insertRows << insertColumns << deleteRows << deleteColumns + << expected; + + index.clear(); expected.clear(); command.clear(); + insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); + index << IntPair(0, 0); + command << QItemSelectionModel::ClearAndSelect; + insertRows << 5 << 1; + expected << IntPair(0, 0); + QTest::newRow("ClearAndSelect (0, 0). Append row.") + << index << command + << insertRows << insertColumns << deleteRows << deleteColumns + << expected; + + index.clear(); expected.clear(); command.clear(); + insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); + index << IntPair(0, 0); + command << QItemSelectionModel::ClearAndSelect; + insertRows << 0 << 1; + expected << IntPair(1, 0); + QTest::newRow("ClearAndSelect (0, 0). Insert before first row.") + << index << command + << insertRows << insertColumns << deleteRows << deleteColumns + << expected; + + index.clear(); expected.clear(); command.clear(); + insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); + index << IntPair(0, 0) + << IntPair(4, 0); + command << QItemSelectionModel::ClearAndSelect; + insertRows << 5 << 1; + expected << IntPair(0, 0) + << IntPair(1, 0) + << IntPair(2, 0) + << IntPair(3, 0) + << IntPair(4, 0); + QTest::newRow("ClearAndSelect (0, 0) to (4, 0). Append row.") + << index << command + << insertRows << insertColumns << deleteRows << deleteColumns + << expected; + + index.clear(); expected.clear(); command.clear(); + insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); + index << IntPair(0, 0) + << IntPair(4, 0); + command << QItemSelectionModel::ClearAndSelect; + insertRows << 0 << 1; + expected << IntPair(1, 0) + << IntPair(2, 0) + << IntPair(3, 0) + << IntPair(4, 0) + << IntPair(5, 0); + QTest::newRow("ClearAndSelect (0, 0) to (4, 0). Insert before first row.") + << index << command + << insertRows << insertColumns << deleteRows << deleteColumns + << expected; + + index.clear(); expected.clear(); command.clear(); + insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); + index << IntPair(0, 0) + << IntPair(4, 0); + command << QItemSelectionModel::ClearAndSelect; + deleteRows << 0 << 1; + expected << IntPair(0, 0) + << IntPair(1, 0) + << IntPair(2, 0) + << IntPair(3, 0); + QTest::newRow("ClearAndSelect (0, 0) to (4, 0). Delete first row.") + << index << command + << insertRows << insertColumns << deleteRows << deleteColumns + << expected; + + index.clear(); expected.clear(); command.clear(); + insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); + index << IntPair(0, 0) + << IntPair(4, 0); + command << QItemSelectionModel::ClearAndSelect; + deleteRows << 4 << 1; + expected << IntPair(0, 0) + << IntPair(1, 0) + << IntPair(2, 0) + << IntPair(3, 0); + QTest::newRow("ClearAndSelect (0, 0) to (4, 0). Delete last row.") + << index << command + << insertRows << insertColumns << deleteRows << deleteColumns + << expected; + + index.clear(); expected.clear(); command.clear(); + insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); + index << IntPair(0, 0) + << IntPair(4, 0); + command << QItemSelectionModel::ClearAndSelect; + deleteRows << 1 << 3; + expected << IntPair(0, 0) + << IntPair(1, 0); + QTest::newRow("ClearAndSelect (0, 0) to (4, 0). Deleting all but first and last row.") + << index << command + << insertRows << insertColumns << deleteRows << deleteColumns + << expected; + + index.clear(); expected.clear(); command.clear(); + insertRows.clear(); insertColumns.clear(); deleteRows.clear(); deleteColumns.clear(); + index << IntPair(0, 0) + << IntPair(4, 0); + command << QItemSelectionModel::ClearAndSelect; + insertRows << 1 << 1; + expected << IntPair(0, 0) + // the inserted row should not be selected + << IntPair(2, 0) + << IntPair(3, 0) + << IntPair(4, 0) + << IntPair(5, 0); + QTest::newRow("ClearAndSelect (0, 0) to (4, 0). Insert after first row.") + << index << command + << insertRows << insertColumns << deleteRows << deleteColumns + << expected; } void tst_QItemSelectionModel::persistentselections() @@ -1783,7 +1780,7 @@ void tst_QItemSelectionModel::modelLayoutChanged() // verify that selection is as expected QItemSelection selection = selectionModel.selection(); QCOMPARE(selection.count(), expectedSelectedRanges.count()); - QVERIFY(selectionModel.hasSelection() == !expectedSelectedRanges.isEmpty()); + QVERIFY(selectionModel.hasSelection() == !expectedSelectedRanges.isEmpty()); for (int i = 0; i < expectedSelectedRanges.count(); ++i) { IntPairPair expectedRange = expectedSelectedRanges.at(i); @@ -2035,27 +2032,28 @@ void tst_QItemSelectionModel::task220420_selectedIndexes() class QtTestTableModel: public QAbstractTableModel { Q_OBJECT +public: + QtTestTableModel(int rows = 0, int columns = 0, QObject *parent = 0) + : QAbstractTableModel(parent) + , row_count(rows) + , column_count(columns) + { + } - public: - QtTestTableModel(int rows = 0, int columns = 0, QObject *parent = 0) - : QAbstractTableModel(parent), - row_count(rows), - column_count(columns) {} - - int rowCount(const QModelIndex& = QModelIndex()) const { return row_count; } - int columnCount(const QModelIndex& = QModelIndex()) const { return column_count; } - bool isEditable(const QModelIndex &) const { return true; } + int rowCount(const QModelIndex& = QModelIndex()) const { return row_count; } + int columnCount(const QModelIndex& = QModelIndex()) const { return column_count; } + bool isEditable(const QModelIndex &) const { return true; } - QVariant data(const QModelIndex &idx, int role) const - { - if (role == Qt::DisplayRole || role == Qt::EditRole) - return QString("[%1,%2]").arg(idx.row()).arg(idx.column()); - return QVariant(); - } + QVariant data(const QModelIndex &idx, int role) const + { + if (role == Qt::DisplayRole || role == Qt::EditRole) + return QString("[%1,%2]").arg(idx.row()).arg(idx.column()); + return QVariant(); + } - int row_count; - int column_count; - friend class tst_QItemSelectionModel; + int row_count; + int column_count; + friend class tst_QItemSelectionModel; }; @@ -2127,7 +2125,6 @@ void tst_QItemSelectionModel::merge_data() << r1; } - void tst_QItemSelectionModel::merge() { QFETCH(QItemSelection, init); @@ -2317,7 +2314,6 @@ void tst_QItemSelectionModel::QTBUG5671_layoutChangedWithAllSelected() } } - QCOMPARE(model.rowCount(), int(cNumRows)); QCOMPARE(proxy.rowCount(), int(cNumRows/2)); @@ -2381,7 +2377,6 @@ public slots: } QVERIFY(m_itemSelectionModel->selection().size() == 2); } - }; void tst_QItemSelectionModel::deselectRemovedMiddleRange() @@ -2434,9 +2429,9 @@ static QStandardItemModel* getModel(QObject *parent) } enum Result { - LessThan, - NotLessThan, - NotEqual + LessThan, + NotLessThan, + NotEqual }; Q_DECLARE_METATYPE(Result); @@ -2502,70 +2497,70 @@ void tst_QItemSelectionModel::rangeOperatorLessThan_data() void tst_QItemSelectionModel::rangeOperatorLessThan() { - QStandardItemModel *model1 = getModel(this); - QStandardItemModel *model2 = getModel(this); + QStandardItemModel *model1 = getModel(this); + QStandardItemModel *model2 = getModel(this); - QFETCH(int, parent1); - QFETCH(int, top1); - QFETCH(int, left1); - QFETCH(int, bottom1); - QFETCH(int, right1); - QFETCH(int, parent2); - QFETCH(int, top2); - QFETCH(int, left2); - QFETCH(int, bottom2); - QFETCH(int, right2); - QFETCH(Result, result); + QFETCH(int, parent1); + QFETCH(int, top1); + QFETCH(int, left1); + QFETCH(int, bottom1); + QFETCH(int, right1); + QFETCH(int, parent2); + QFETCH(int, top2); + QFETCH(int, left2); + QFETCH(int, bottom2); + QFETCH(int, right2); + QFETCH(Result, result); - QModelIndex p1 = model1->index(parent1, 0); + QModelIndex p1 = model1->index(parent1, 0); - QModelIndex tl1 = model1->index(top1, left1, p1); - QModelIndex br1 = model1->index(bottom1, right1, p1); + QModelIndex tl1 = model1->index(top1, left1, p1); + QModelIndex br1 = model1->index(bottom1, right1, p1); - QItemSelectionRange r1(tl1, br1); + QItemSelectionRange r1(tl1, br1); - QModelIndex p2 = model1->index(parent2, 0); + QModelIndex p2 = model1->index(parent2, 0); - QModelIndex tl2 = model1->index(top2, left2, p2); - QModelIndex br2 = model1->index(bottom2, right2, p2); + QModelIndex tl2 = model1->index(top2, left2, p2); + QModelIndex br2 = model1->index(bottom2, right2, p2); - QItemSelectionRange r2(tl2, br2); + QItemSelectionRange r2(tl2, br2); - if (result == LessThan) - QVERIFY(r1 < r2); - else if (result == NotLessThan) - QVERIFY(!(r1 < r2)); - else if (result == NotEqual) - if (!(r1 < r2)) - QVERIFY(r2 < r1); + if (result == LessThan) + QVERIFY(r1 < r2); + else if (result == NotLessThan) + QVERIFY(!(r1 < r2)); + else if (result == NotEqual) + if (!(r1 < r2)) + QVERIFY(r2 < r1); - // Ranges in different models are always non-equal + // Ranges in different models are always non-equal - QModelIndex p3 = model2->index(parent1, 0); + QModelIndex p3 = model2->index(parent1, 0); - QModelIndex tl3 = model2->index(top1, left1, p3); - QModelIndex br3 = model2->index(bottom1, right1, p3); + QModelIndex tl3 = model2->index(top1, left1, p3); + QModelIndex br3 = model2->index(bottom1, right1, p3); - QItemSelectionRange r3(tl3, br3); + QItemSelectionRange r3(tl3, br3); - if (!(r1 < r3)) - QVERIFY(r3 < r1); + if (!(r1 < r3)) + QVERIFY(r3 < r1); - if (!(r2 < r3)) - QVERIFY(r3 < r2); + if (!(r2 < r3)) + QVERIFY(r3 < r2); - QModelIndex p4 = model2->index(parent2, 0); + QModelIndex p4 = model2->index(parent2, 0); - QModelIndex tl4 = model2->index(top2, left2, p4); - QModelIndex br4 = model2->index(bottom2, right2, p4); + QModelIndex tl4 = model2->index(top2, left2, p4); + QModelIndex br4 = model2->index(bottom2, right2, p4); - QItemSelectionRange r4(tl4, br4); + QItemSelectionRange r4(tl4, br4); - if (!(r1 < r4)) - QVERIFY(r4 < r1); + if (!(r1 < r4)) + QVERIFY(r4 < r1); - if (!(r2 < r4)) - QVERIFY(r4 < r2); + if (!(r2 < r4)) + QVERIFY(r4 < r2); } void tst_QItemSelectionModel::testDifferentModels() @@ -2578,7 +2573,6 @@ void tst_QItemSelectionModel::testDifferentModels() model1.appendColumn(QList() << &top11 << &top12 << &top13); model2.appendColumn(QList() << &top21 << &top22 << &top23); - QModelIndex topIndex1 = model1.index(0, 0); QModelIndex bottomIndex1 = model1.index(2, 0); QModelIndex topIndex2 = model2.index(0, 0); @@ -2596,10 +2590,10 @@ void tst_QItemSelectionModel::testDifferentModels() class SelectionObserver : public QObject { - Q_OBJECT + Q_OBJECT public: SelectionObserver(QAbstractItemModel *model, QObject *parent = 0) - : QObject(parent), m_model(model), m_selectionModel(0) + : QObject(parent), m_model(model), m_selectionModel(0) { connect(model, SIGNAL(modelReset()), SLOT(modelReset())); } @@ -2610,7 +2604,7 @@ public: connect(m_selectionModel, SIGNAL(selectionChanged(QItemSelection,QItemSelection)), SLOT(selectionChanged(QItemSelection,QItemSelection))); } - private slots: +private slots: void modelReset() { const QModelIndex idx = m_model->index(2, 0); @@ -2660,37 +2654,35 @@ void tst_QItemSelectionModel::testValidRangesInSelectionsAfterReset() class DuplicateItemSelectionModel : public QItemSelectionModel { - Q_OBJECT + Q_OBJECT public: - DuplicateItemSelectionModel(QItemSelectionModel *target, QAbstractItemModel *model, QObject *parent = 0) - : QItemSelectionModel(model, parent), m_target(target) - { - - } + DuplicateItemSelectionModel(QItemSelectionModel *target, QAbstractItemModel *model, QObject *parent = 0) + : QItemSelectionModel(model, parent), m_target(target) + { + } - void select(const QItemSelection &selection, QItemSelectionModel::SelectionFlags command) - { - QItemSelectionModel::select(selection, command); - m_target->select(selection, command); - } + void select(const QItemSelection &selection, QItemSelectionModel::SelectionFlags command) + { + QItemSelectionModel::select(selection, command); + m_target->select(selection, command); + } - using QItemSelectionModel::select; + using QItemSelectionModel::select; - void setCurrentIndex(const QModelIndex &index, QItemSelectionModel::SelectionFlags command) - { - QItemSelectionModel::setCurrentIndex(index, command); - m_target->setCurrentIndex(index, command); - } + void setCurrentIndex(const QModelIndex &index, QItemSelectionModel::SelectionFlags command) + { + QItemSelectionModel::setCurrentIndex(index, command); + m_target->setCurrentIndex(index, command); + } - void clearCurrentIndex() - { - QItemSelectionModel::clearCurrentIndex(); - m_target->clearCurrentIndex(); - } + void clearCurrentIndex() + { + QItemSelectionModel::clearCurrentIndex(); + m_target->clearCurrentIndex(); + } private: - QItemSelectionModel *m_target; - + QItemSelectionModel *m_target; }; void tst_QItemSelectionModel::testChainedSelectionClear() diff --git a/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp b/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp index 1564070c44..ae9a420ac0 100644 --- a/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp +++ b/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp @@ -39,7 +39,6 @@ ** ****************************************************************************/ - #include #include "dynamictreemodel.h" #include "modeltest.h" @@ -62,9 +61,7 @@ Q_DECLARE_METATYPE(QModelIndex) class tst_QSortFilterProxyModel : public QObject { Q_OBJECT - public: - tst_QSortFilterProxyModel(); public slots: @@ -173,7 +170,6 @@ void tst_QSortFilterProxyModel::getSetCheck() tst_QSortFilterProxyModel::tst_QSortFilterProxyModel() : m_model(0), m_proxy(0) { - } void tst_QSortFilterProxyModel::initTestCase() @@ -337,7 +333,6 @@ void tst_QSortFilterProxyModel::sort_data() << (QStringList() << "BETA" << "Gamma" << "alpha" << "delta"); - QStringList list; for (int i = 10000; i < 20000; ++i) list.append(QString("Number: %1").arg(i)); @@ -392,7 +387,6 @@ void tst_QSortFilterProxyModel::sort() QModelIndex index = m_proxy->index(row, 0, QModelIndex()); QCOMPARE(m_proxy->data(index, Qt::DisplayRole).toString(), initial.at(row)); } - } void tst_QSortFilterProxyModel::sortHierarchy_data() @@ -580,7 +574,7 @@ void tst_QSortFilterProxyModel::insertRows() for (int i = 0; i < insert.count(); ++i) { QModelIndex index = m_proxy->index(position + i, 0, QModelIndex()); m_proxy->setData(index, insert.at(i), Qt::DisplayRole); - } + } // make sure the model correct after insert for (int row = 0; row < m_model->rowCount(QModelIndex()); ++row) { @@ -599,7 +593,7 @@ void tst_QSortFilterProxyModel::prependRow() { //this tests that data is correctly handled by the sort filter when prepending a row QStandardItemModel model; - QSortFilterProxyModel proxy; + QSortFilterProxyModel proxy; proxy.setSourceModel(&model); QStandardItem item("root"); @@ -1171,7 +1165,6 @@ void tst_QSortFilterProxyModel::removeColumns() } } - void tst_QSortFilterProxyModel::filterColumns_data() { QTest::addColumn("pattern"); @@ -1398,8 +1391,6 @@ void tst_QSortFilterProxyModel::checkHierarchy(const QStringList &l, const QAbst } } - - class TestModel: public QAbstractTableModel { public: @@ -2320,7 +2311,6 @@ void tst_QSortFilterProxyModel::sourceInsertRows() void tst_QSortFilterProxyModel::sourceModelDeletion() { - QSortFilterProxyModel proxyModel; { QStandardItemModel model; @@ -2328,7 +2318,6 @@ void tst_QSortFilterProxyModel::sourceModelDeletion() QCOMPARE(proxyModel.sourceModel(), static_cast(&model)); } QCOMPARE(proxyModel.sourceModel(), static_cast(0)); - } void tst_QSortFilterProxyModel::sortColumnTracking1() @@ -2390,11 +2379,11 @@ void tst_QSortFilterProxyModel::sortColumnTracking2() void tst_QSortFilterProxyModel::sortStable() { QStandardItemModel* model = new QStandardItemModel(5, 2); - for (int r=0; r<5; r++) { - for (int c=0; c<2; c++) { + for (int r = 0; r < 5; r++) { + for (int c = 0; c < 2; c++) { QStandardItem* item = new QStandardItem( QString("Row:%0, Column:%1").arg(r).arg(c) ); - for( int i=0; i<3; i++ ) { + for (int i = 0; i < 3; i++) { QStandardItem* child = new QStandardItem( QString("Item %0").arg(i) ); item->appendRow( child ); @@ -2403,8 +2392,7 @@ void tst_QSortFilterProxyModel::sortStable() } } model->setHorizontalHeaderItem( 0, new QStandardItem( "Name" )); - model->setHorizontalHeaderItem( 1, new QStandardItem( "Value" ) ); - + model->setHorizontalHeaderItem( 1, new QStandardItem( "Value" )); QSortFilterProxyModel *filterModel = new QSortFilterProxyModel(model); filterModel->setSourceModel(model); @@ -2522,7 +2510,6 @@ void tst_QSortFilterProxyModel::task248868_staticSorting() QModelIndex index = proxy.index(row, 0, QModelIndex()); QCOMPARE(proxy.data(index, Qt::DisplayRole).toString(), expected.at(row)); } - } void tst_QSortFilterProxyModel::task248868_dynamicSorting() @@ -2587,71 +2574,82 @@ void tst_QSortFilterProxyModel::task248868_dynamicSorting() class QtTestModel: public QAbstractItemModel { - public: - QtTestModel(int _rows, int _cols, QObject *parent = 0): QAbstractItemModel(parent), - rows(_rows), cols(_cols), wrongIndex(false) { } +public: + QtTestModel(int _rows, int _cols, QObject *parent = 0) + : QAbstractItemModel(parent) + , rows(_rows) + , cols(_cols) + , wrongIndex(false) + { + } - bool canFetchMore(const QModelIndex &idx) const { - return !fetched.contains(idx); - } + bool canFetchMore(const QModelIndex &idx) const + { + return !fetched.contains(idx); + } - void fetchMore(const QModelIndex &idx) { - if (fetched.contains(idx)) - return; - beginInsertRows(idx, 0, rows-1); - fetched.insert(idx); - endInsertRows(); - } + void fetchMore(const QModelIndex &idx) + { + if (fetched.contains(idx)) + return; + beginInsertRows(idx, 0, rows-1); + fetched.insert(idx); + endInsertRows(); + } - bool hasChildren(const QModelIndex & = QModelIndex()) const { - return true; - } + bool hasChildren(const QModelIndex & = QModelIndex()) const + { + return true; + } - int rowCount(const QModelIndex& parent = QModelIndex()) const { - return fetched.contains(parent) ? rows : 0; - } - int columnCount(const QModelIndex& parent = QModelIndex()) const { - Q_UNUSED(parent); - return cols; - } + int rowCount(const QModelIndex& parent = QModelIndex()) const + { + return fetched.contains(parent) ? rows : 0; + } - QModelIndex index(int row, int column, const QModelIndex &parent = QModelIndex()) const - { - if (row < 0 || column < 0 || column >= cols || row >= rows) { - return QModelIndex(); - } - QModelIndex i = createIndex(row, column, int(parent.internalId() + 1)); - parentHash[i] = parent; - return i; - } + int columnCount(const QModelIndex& parent = QModelIndex()) const + { + Q_UNUSED(parent); + return cols; + } - QModelIndex parent(const QModelIndex &index) const - { - if (!parentHash.contains(index)) - return QModelIndex(); - return parentHash[index]; + QModelIndex index(int row, int column, const QModelIndex &parent = QModelIndex()) const + { + if (row < 0 || column < 0 || column >= cols || row >= rows) { + return QModelIndex(); } + QModelIndex i = createIndex(row, column, int(parent.internalId() + 1)); + parentHash[i] = parent; + return i; + } - QVariant data(const QModelIndex &idx, int role) const - { - if (!idx.isValid()) - return QVariant(); - - if (role == Qt::DisplayRole) { - if (idx.row() < 0 || idx.column() < 0 || idx.column() >= cols || idx.row() >= rows) { - wrongIndex = true; - qWarning("Invalid modelIndex [%d,%d,%p]", idx.row(), idx.column(), - idx.internalPointer()); - } - return QString("[%1,%2]").arg(idx.row()).arg(idx.column()); - } + QModelIndex parent(const QModelIndex &index) const + { + if (!parentHash.contains(index)) + return QModelIndex(); + return parentHash[index]; + } + + QVariant data(const QModelIndex &idx, int role) const + { + if (!idx.isValid()) return QVariant(); + + if (role == Qt::DisplayRole) { + if (idx.row() < 0 || idx.column() < 0 || idx.column() >= cols || idx.row() >= rows) { + wrongIndex = true; + qWarning("Invalid modelIndex [%d,%d,%p]", idx.row(), idx.column(), + idx.internalPointer()); + } + return QString("[%1,%2]").arg(idx.row()).arg(idx.column()); } + return QVariant(); + } - QSet fetched; - int rows, cols; - mutable bool wrongIndex; - mutable QMap parentHash; + QSet fetched; + int rows, cols; + mutable bool wrongIndex; + mutable QMap parentHash; }; void tst_QSortFilterProxyModel::task250023_fetchMore() @@ -2753,7 +2751,6 @@ static QStandardItem *addEntry(QStandardItem* pParent, const QString &descriptio return pItem; } - void tst_QSortFilterProxyModel::task255652_removeRowsRecursive() { QStandardItemModel pModel; @@ -2844,25 +2841,24 @@ void tst_QSortFilterProxyModel::taskQTBUG_7537_appearsAndSort() { class PModel : public QSortFilterProxyModel { - public: - PModel() : mVisible(false) {}; - protected: - bool filterAcceptsRow(int, const QModelIndex &) const - { - return mVisible; - } + public: + PModel() : mVisible(false) {}; + protected: + bool filterAcceptsRow(int, const QModelIndex &) const + { + return mVisible; + } - public: - void updateXX() - { - mVisible = true; - invalidate(); - } - private: - bool mVisible; + public: + void updateXX() + { + mVisible = true; + invalidate(); + } + private: + bool mVisible; } proxyModel; - QStringListModel sourceModel; QStringList list; list << "b" << "a" << "c"; @@ -2996,7 +2992,6 @@ private slots: private: QItemSelectionModel *selectionModel; - }; void tst_QSortFilterProxyModel::testMultipleProxiesWithSelection() @@ -3023,13 +3018,13 @@ void tst_QSortFilterProxyModel::testMultipleProxiesWithSelection() // trick the proxy into emitting begin/end reset signals. proxy.setSourceModel(0); - } -static bool isValid(const QItemSelection &selection) { - foreach(const QItemSelectionRange &range, selection) - if (!range.isValid()) - return false; +static bool isValid(const QItemSelection &selection) +{ + foreach (const QItemSelectionRange &range, selection) + if (!range.isValid()) + return false; return true; } @@ -3126,19 +3121,18 @@ void tst_QSortFilterProxyModel::taskQTBUG_10287_unnecessaryMapCreation() class FilteredColumnProxyModel : public QSortFilterProxyModel { - Q_OBJECT + Q_OBJECT public: - FilteredColumnProxyModel(QObject *parent = 0) - : QSortFilterProxyModel(parent) - { - - } + FilteredColumnProxyModel(QObject *parent = 0) + : QSortFilterProxyModel(parent) + { + } protected: - bool filterAcceptsColumn(int column, const QModelIndex & /* source_parent */) const - { - return column % 2 != 0; - } + bool filterAcceptsColumn(int column, const QModelIndex & /* source_parent */) const + { + return column % 2 != 0; + } }; void tst_QSortFilterProxyModel::filteredColumns() @@ -3176,10 +3170,12 @@ void tst_QSortFilterProxyModel::taskQTBUG_17812_resetInvalidate() struct Proxy : QSortFilterProxyModel { QString pattern; - virtual bool filterAcceptsRow(int source_row, const QModelIndex&) const { + virtual bool filterAcceptsRow(int source_row, const QModelIndex&) const + { return sourceModel()->data(sourceModel()->index(source_row, 0)).toString().contains(pattern); } - void notifyChange(int test) { + void notifyChange(int test) + { switch (test) { case 0: break; case 1: reset(); break; @@ -3313,7 +3309,6 @@ void tst_QSortFilterProxyModel::testParentLayoutChanged() QVERIFY(beforeParents.contains(proxy2.mapToSource(idx))); foreach (const QPersistentModelIndex &idx, proxy2AfterList) QVERIFY(afterParents.contains(proxy2.mapToSource(idx))); - } class SignalArgumentChecker : public QObject diff --git a/tests/auto/corelib/itemmodels/qstringlistmodel/qmodellistener.h b/tests/auto/corelib/itemmodels/qstringlistmodel/qmodellistener.h index f3ed3c1793..a95de96008 100644 --- a/tests/auto/corelib/itemmodels/qstringlistmodel/qmodellistener.h +++ b/tests/auto/corelib/itemmodels/qstringlistmodel/qmodellistener.h @@ -38,11 +38,11 @@ ** $QT_END_LICENSE$ ** ****************************************************************************/ + #include #include #include - QT_FORWARD_DECLARE_CLASS(QStringListModel) class QModelListener : public QObject @@ -56,7 +56,7 @@ public: virtual ~QModelListener() { } void setTestData(QStringList *pAboutToStringlist, QStringList *pExpectedStringlist, QStringListModel *pModel) - { + { m_pAboutToStringlist = pAboutToStringlist; m_pExpectedStringlist = pExpectedStringlist; m_pModel = pModel; @@ -70,6 +70,5 @@ private: public slots: void rowsAboutToBeRemovedOrInserted(const QModelIndex & parent, int start, int end ); void rowsRemovedOrInserted(const QModelIndex & parent, int start, int end ); - }; diff --git a/tests/auto/corelib/itemmodels/qstringlistmodel/qstringlistmodel.pro b/tests/auto/corelib/itemmodels/qstringlistmodel/qstringlistmodel.pro index ecdd30cae2..821a48038b 100644 --- a/tests/auto/corelib/itemmodels/qstringlistmodel/qstringlistmodel.pro +++ b/tests/auto/corelib/itemmodels/qstringlistmodel/qstringlistmodel.pro @@ -2,8 +2,4 @@ CONFIG += testcase TARGET = tst_qstringlistmodel QT += widgets testlib HEADERS += qmodellistener.h - -SOURCES += tst_qstringlistmodel.cpp - - - +SOURCES += tst_qstringlistmodel.cpp diff --git a/tests/auto/corelib/itemmodels/qstringlistmodel/tst_qstringlistmodel.cpp b/tests/auto/corelib/itemmodels/qstringlistmodel/tst_qstringlistmodel.cpp index d0da27d7f5..eab8851772 100644 --- a/tests/auto/corelib/itemmodels/qstringlistmodel/tst_qstringlistmodel.cpp +++ b/tests/auto/corelib/itemmodels/qstringlistmodel/tst_qstringlistmodel.cpp @@ -39,7 +39,6 @@ ** ****************************************************************************/ - #include #include #include @@ -52,20 +51,17 @@ void QModelListener::rowsAboutToBeRemovedOrInserted(const QModelIndex & parent, int start, int end ) { - int i; - for (i = 0; start + i <= end; i++) - { + for (int i = 0; start + i <= end; i++) { QModelIndex mIndex = m_pModel->index(start + i, 0, parent); QVariant var = m_pModel->data(mIndex, Qt::DisplayRole); QString str = var.toString(); - + QCOMPARE(str, m_pAboutToStringlist->at(i)); } } void QModelListener::rowsRemovedOrInserted(const QModelIndex & parent, int , int) { - int i; // Can the rows that *are* removed be iterated now ? // What about rowsAboutToBeInserted - what will the indices be? @@ -74,18 +70,16 @@ void QModelListener::rowsRemovedOrInserted(const QModelIndex & parent, int , int // RemoveColumn. Does that also fire the rowsRemoved-family signals? - for (i = 0; i < m_pExpectedStringlist->size(); i++) - { + for (int i = 0; i < m_pExpectedStringlist->size(); i++) { QModelIndex mIndex = m_pModel->index(i, 0, parent); QVariant var = m_pModel->data(mIndex, Qt::DisplayRole); QString str = var.toString(); - + //qDebug() << "index: " << i << " start: " << start << "end: " << end; QCOMPARE(str, m_pExpectedStringlist->at(i)); } } - class tst_QStringListModel : public QObject { Q_OBJECT @@ -152,21 +146,20 @@ void tst_QStringListModel::rowsAboutToBeRemoved_rowsRemoved() QStringListModel *model = new QStringListModel(input); QModelListener *pListener = new QModelListener(&aboutto, &res, model); - pListener->connect(model, SIGNAL( rowsAboutToBeRemoved(const QModelIndex & , int , int )), + pListener->connect(model, SIGNAL( rowsAboutToBeRemoved(const QModelIndex & , int , int )), pListener, SLOT( rowsAboutToBeRemovedOrInserted(const QModelIndex & , int , int )) ); - pListener->connect(model, SIGNAL( rowsRemoved(const QModelIndex & , int , int )), + pListener->connect(model, SIGNAL( rowsRemoved(const QModelIndex & , int , int )), pListener, SLOT( rowsRemovedOrInserted(const QModelIndex & , int , int )) ); model->removeRows(row,count); - // At this point, control goes to our connected slots inn this order: + // At this point, control goes to our connected slots inn this order: // 1. rowsAboutToBeRemovedOrInserted // 2. rowsRemovedOrInserted // Control returns here delete pListener; delete model; - } void tst_QStringListModel::rowsAboutToBeInserted_rowsInserted_data() @@ -217,24 +210,21 @@ void tst_QStringListModel::rowsAboutToBeInserted_rowsInserted() QStringListModel *model = new QStringListModel(input); QModelListener *pListener = new QModelListener(&aboutto, &res, model); - connect(model, SIGNAL( rowsAboutToBeInserted(const QModelIndex & , int , int )), + connect(model, SIGNAL( rowsAboutToBeInserted(const QModelIndex & , int , int )), pListener, SLOT( rowsAboutToBeRemovedOrInserted(const QModelIndex & , int , int )) ); - connect(model, SIGNAL( rowsInserted(const QModelIndex & , int , int )), + connect(model, SIGNAL( rowsInserted(const QModelIndex & , int , int )), pListener, SLOT( rowsRemovedOrInserted(const QModelIndex & , int , int )) ); model->insertRows(row,count); - // At this point, control goes to our connected slots inn this order: + // At this point, control goes to our connected slots inn this order: // 1. rowsAboutToBeRemovedOrInserted // 2. rowsRemovedOrInserted // Control returns here delete pListener; delete model; - } - QTEST_MAIN(tst_QStringListModel) #include "tst_qstringlistmodel.moc" - -- cgit v1.2.3 From 6b6406d659ad60af4c33c32d4b17ba0282d269f0 Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Fri, 23 Dec 2011 13:54:39 +1000 Subject: Reinstate commented test data in QItemSelectionModel test. The restored test data was marked as failing, but appears to pass, and the available history does not explain why it was commented out. Change-Id: I7e9e3ba72fc8fef42c91ee882efa98d25b3d8317 Reviewed-by: Rohan McGovern --- .../corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp | 2 -- 1 file changed, 2 deletions(-) diff --git a/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp b/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp index 12d0301ff4..459224429b 100644 --- a/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp +++ b/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp @@ -619,7 +619,6 @@ void tst_QItemSelectionModel::select_data() << command << expected; } - /* ### FAILS { QModelIndexList index; QModelIndexList expected; @@ -633,7 +632,6 @@ void tst_QItemSelectionModel::select_data() << command << expected; } - */ { QModelIndexList index; QModelIndexList expected; -- cgit v1.2.3 From 4ae3fea1635c0e5d0696fa5c1e043fac2f95202d Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Fri, 23 Dec 2011 14:14:07 +1000 Subject: Remove old debug code from itemmodel tests. Change-Id: I7c6aeed2d3b593a4dac89e54ef22743d5f736d42 Reviewed-by: Rohan McGovern --- .../itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp | 6 ------ .../corelib/itemmodels/qstringlistmodel/tst_qstringlistmodel.cpp | 1 - 2 files changed, 7 deletions(-) diff --git a/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp b/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp index 459224429b..3cc5613d12 100644 --- a/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp +++ b/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp @@ -1258,12 +1258,6 @@ void tst_QItemSelectionModel::select() QVERIFY(selection->hasSelection()!=selectedList.isEmpty()); - // debug output -// for (int i=0; idata(mIndex, Qt::DisplayRole); QString str = var.toString(); - //qDebug() << "index: " << i << " start: " << start << "end: " << end; QCOMPARE(str, m_pExpectedStringlist->at(i)); } } -- cgit v1.2.3 From 79b64957b00f027673782e88eae8518b8c5be79e Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Fri, 23 Dec 2011 14:55:15 +1000 Subject: Cleanup itemmodel autotests. Avoid using bug tracker identifiers in test function names. These identifiers lose their meaning when the bug tracker is replaced. Change-Id: Ia867f7c2ec2ab9ed546588843d532ac615a34031 Reviewed-by: Rohan McGovern --- .../tst_qitemselectionmodel.cpp | 132 ++++++++++----------- .../tst_qsortfilterproxymodel.cpp | 60 +++++----- 2 files changed, 96 insertions(+), 96 deletions(-) diff --git a/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp b/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp index 3cc5613d12..1a71f187c3 100644 --- a/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp +++ b/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp @@ -77,18 +77,18 @@ private slots: void selectedColumns(); void setCurrentIndex(); void splitOnInsert(); - void task196285_rowIntersectsSelection(); + void rowIntersectsSelection1(); + void rowIntersectsSelection2(); void unselectable(); - void task220420_selectedIndexes(); - void task240734_layoutChanged(); + void selectedIndexes(); + void layoutChanged(); void merge_data(); void merge(); - void task119433_isRowSelected(); - void task252069_rowIntersectsSelection(); - void task232634_childrenDeselectionSignal(); - void task260134_layoutChangedWithAllSelected(); - void QTBUG5671_layoutChangedWithAllSelected(); - void QTBUG2804_layoutChangedTreeSelection(); + void isRowSelected(); + void childrenDeselectionSignal(); + void layoutChangedWithAllSelected1(); + void layoutChangedWithAllSelected2(); + void layoutChangedTreeSelection(); void deselectRemovedMiddleRange(); void rangeOperatorLessThan_data(); void rangeOperatorLessThan(); @@ -1964,7 +1964,7 @@ void tst_QItemSelectionModel::splitOnInsert() QVERIFY(!selectionModel.isSelected(model.index(1, 0))); } -void tst_QItemSelectionModel::task196285_rowIntersectsSelection() +void tst_QItemSelectionModel::rowIntersectsSelection1() { QTableWidget table; table.setColumnCount(1); @@ -1991,6 +1991,52 @@ void tst_QItemSelectionModel::task196285_rowIntersectsSelection() QVERIFY(!selectionModel->columnIntersectsSelection(0, QModelIndex())); } +void tst_QItemSelectionModel::rowIntersectsSelection2() +{ + QStandardItemModel m; + for (int i=0; i<8; ++i) { + for (int j=0; j<8; ++j) { + QStandardItem *item = new QStandardItem(QString("Item number %1").arg(i)); + if ((i % 2 == 0 && j == 0) || + (j % 2 == 0 && i == 0) || + j == 5 || i == 5 ) { + item->setEnabled(false); + //item->setSelectable(false); + } + m.setItem(i, j, item); + } + } + + QItemSelectionModel selected(&m); + //nothing is selected + QVERIFY(!selected.rowIntersectsSelection(0, QModelIndex())); + QVERIFY(!selected.rowIntersectsSelection(2, QModelIndex())); + QVERIFY(!selected.rowIntersectsSelection(3, QModelIndex())); + QVERIFY(!selected.rowIntersectsSelection(5, QModelIndex())); + QVERIFY(!selected.columnIntersectsSelection(0, QModelIndex())); + QVERIFY(!selected.columnIntersectsSelection(2, QModelIndex())); + QVERIFY(!selected.columnIntersectsSelection(3, QModelIndex())); + QVERIFY(!selected.columnIntersectsSelection(5, QModelIndex())); + selected.select(m.index(2, 0), QItemSelectionModel::Select | QItemSelectionModel::Rows); + QVERIFY(!selected.rowIntersectsSelection(0, QModelIndex())); + QVERIFY( selected.rowIntersectsSelection(2, QModelIndex())); + QVERIFY(!selected.rowIntersectsSelection(3, QModelIndex())); + QVERIFY(!selected.rowIntersectsSelection(5, QModelIndex())); + QVERIFY(!selected.columnIntersectsSelection(0, QModelIndex())); + QVERIFY( selected.columnIntersectsSelection(2, QModelIndex())); + QVERIFY( selected.columnIntersectsSelection(3, QModelIndex())); + QVERIFY(!selected.columnIntersectsSelection(5, QModelIndex())); + selected.select(m.index(0, 5), QItemSelectionModel::Select | QItemSelectionModel::Columns); + QVERIFY(!selected.rowIntersectsSelection(0, QModelIndex())); + QVERIFY( selected.rowIntersectsSelection(2, QModelIndex())); + QVERIFY(!selected.rowIntersectsSelection(3, QModelIndex())); + QVERIFY(!selected.rowIntersectsSelection(5, QModelIndex())); + QVERIFY(!selected.columnIntersectsSelection(0, QModelIndex())); + QVERIFY( selected.columnIntersectsSelection(2, QModelIndex())); + QVERIFY( selected.columnIntersectsSelection(3, QModelIndex())); + QVERIFY(!selected.columnIntersectsSelection(5, QModelIndex())); +} + void tst_QItemSelectionModel::unselectable() { QTreeWidget w; @@ -2005,7 +2051,7 @@ void tst_QItemSelectionModel::unselectable() QCOMPARE(w.selectionModel()->selectedRows().count(), 0); } -void tst_QItemSelectionModel::task220420_selectedIndexes() +void tst_QItemSelectionModel::selectedIndexes() { QStandardItemModel model(2, 2); QItemSelectionModel selectionModel(&model); @@ -2049,7 +2095,7 @@ public: }; -void tst_QItemSelectionModel::task240734_layoutChanged() +void tst_QItemSelectionModel::layoutChanged() { QtTestTableModel model(1,1); QItemSelectionModel selectionModel(&model); @@ -2132,7 +2178,7 @@ void tst_QItemSelectionModel::merge() QVERIFY(init.contains(idx)); } -void tst_QItemSelectionModel::task119433_isRowSelected() +void tst_QItemSelectionModel::isRowSelected() { QStandardItemModel model(2,2); model.setData(model.index(0,0), 0, Qt::UserRole - 1); @@ -2142,53 +2188,7 @@ void tst_QItemSelectionModel::task119433_isRowSelected() QVERIFY(sel.isRowSelected(0, QModelIndex())); } -void tst_QItemSelectionModel::task252069_rowIntersectsSelection() -{ - QStandardItemModel m; - for (int i=0; i<8; ++i) { - for (int j=0; j<8; ++j) { - QStandardItem *item = new QStandardItem(QString("Item number %1").arg(i)); - if ((i % 2 == 0 && j == 0) || - (j % 2 == 0 && i == 0) || - j == 5 || i == 5 ) { - item->setEnabled(false); - //item->setSelectable(false); - } - m.setItem(i, j, item); - } - } - - QItemSelectionModel selected(&m); - //nothing is selected - QVERIFY(!selected.rowIntersectsSelection(0, QModelIndex())); - QVERIFY(!selected.rowIntersectsSelection(2, QModelIndex())); - QVERIFY(!selected.rowIntersectsSelection(3, QModelIndex())); - QVERIFY(!selected.rowIntersectsSelection(5, QModelIndex())); - QVERIFY(!selected.columnIntersectsSelection(0, QModelIndex())); - QVERIFY(!selected.columnIntersectsSelection(2, QModelIndex())); - QVERIFY(!selected.columnIntersectsSelection(3, QModelIndex())); - QVERIFY(!selected.columnIntersectsSelection(5, QModelIndex())); - selected.select(m.index(2, 0), QItemSelectionModel::Select | QItemSelectionModel::Rows); - QVERIFY(!selected.rowIntersectsSelection(0, QModelIndex())); - QVERIFY( selected.rowIntersectsSelection(2, QModelIndex())); - QVERIFY(!selected.rowIntersectsSelection(3, QModelIndex())); - QVERIFY(!selected.rowIntersectsSelection(5, QModelIndex())); - QVERIFY(!selected.columnIntersectsSelection(0, QModelIndex())); - QVERIFY( selected.columnIntersectsSelection(2, QModelIndex())); - QVERIFY( selected.columnIntersectsSelection(3, QModelIndex())); - QVERIFY(!selected.columnIntersectsSelection(5, QModelIndex())); - selected.select(m.index(0, 5), QItemSelectionModel::Select | QItemSelectionModel::Columns); - QVERIFY(!selected.rowIntersectsSelection(0, QModelIndex())); - QVERIFY( selected.rowIntersectsSelection(2, QModelIndex())); - QVERIFY(!selected.rowIntersectsSelection(3, QModelIndex())); - QVERIFY(!selected.rowIntersectsSelection(5, QModelIndex())); - QVERIFY(!selected.columnIntersectsSelection(0, QModelIndex())); - QVERIFY( selected.columnIntersectsSelection(2, QModelIndex())); - QVERIFY( selected.columnIntersectsSelection(3, QModelIndex())); - QVERIFY(!selected.columnIntersectsSelection(5, QModelIndex())); -} - -void tst_QItemSelectionModel::task232634_childrenDeselectionSignal() +void tst_QItemSelectionModel::childrenDeselectionSignal() { QStandardItemModel model; @@ -2242,7 +2242,7 @@ void tst_QItemSelectionModel::task232634_childrenDeselectionSignal() QVERIFY(selectionModel.selection().contains(sel2)); } -void tst_QItemSelectionModel::task260134_layoutChangedWithAllSelected() +void tst_QItemSelectionModel::layoutChangedWithAllSelected1() { QStringListModel model( QStringList() << "foo" << "bar" << "foo2"); QSortFilterProxyModel proxy; @@ -2273,8 +2273,9 @@ void tst_QItemSelectionModel::task260134_layoutChangedWithAllSelected() QVERIFY(selection.isSelected(index)); } - -void tst_QItemSelectionModel::QTBUG5671_layoutChangedWithAllSelected() +// Same as layoutChangedWithAllSelected1, but with a slightly bigger model. +// This test is a regression test for QTBUG-5671. +void tst_QItemSelectionModel::layoutChangedWithAllSelected2() { struct MyFilterModel : public QSortFilterProxyModel { // Override sort filter proxy to remove even numbered rows. @@ -2285,8 +2286,6 @@ void tst_QItemSelectionModel::QTBUG5671_layoutChangedWithAllSelected() } }; - //same as task260134_layoutChangedWithAllSelected but with a sightly bigger model - enum { cNumRows=30, cNumCols=20 }; QStandardItemModel model(cNumRows, cNumCols); @@ -2325,7 +2324,8 @@ void tst_QItemSelectionModel::QTBUG5671_layoutChangedWithAllSelected() QVERIFY(selection.isSelected(index)); } -void tst_QItemSelectionModel::QTBUG2804_layoutChangedTreeSelection() +// This test is a regression test for QTBUG-2804. +void tst_QItemSelectionModel::layoutChangedTreeSelection() { QStandardItemModel model; QStandardItem top1("Child1"), top2("Child2"), top3("Child3"); diff --git a/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp b/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp index ae9a420ac0..7b591be8cc 100644 --- a/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp +++ b/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp @@ -121,20 +121,20 @@ private slots: void sortStable(); - void task236755_hiddenColumns(); - void task247867_insertRowsSort(); - void task248868_staticSorting(); - void task248868_dynamicSorting(); - void task250023_fetchMore(); - void task251296_hiddenChildren(); - void task252507_mapFromToSource(); - void task255652_removeRowsRecursive(); - void taskQTBUG_6205_doubleProxySelectionSetSourceModel(); - void taskQTBUG_7537_appearsAndSort(); - void taskQTBUG_7716_unnecessaryDynamicSorting(); - void taskQTBUG_10287_unnecessaryMapCreation(); - void taskQTBUG_17812_resetInvalidate_data(); - void taskQTBUG_17812_resetInvalidate(); + void hiddenColumns(); + void insertRowsSort(); + void staticSorting(); + void dynamicSorting(); + void fetchMore(); + void hiddenChildren(); + void mapFromToSource(); + void removeRowsRecursive(); + void doubleProxySelectionSetSourceModel(); + void appearsAndSort(); + void unnecessaryDynamicSorting(); + void unnecessaryMapCreation(); + void resetInvalidate_data(); + void resetInvalidate(); void testMultipleProxiesWithSelection(); void mapSelectionFromSource(); @@ -2409,7 +2409,7 @@ void tst_QSortFilterProxyModel::sortStable() QCOMPARE(lastItemData, filterModel->index(2,0, firstRoot).data()); } -void tst_QSortFilterProxyModel::task236755_hiddenColumns() +void tst_QSortFilterProxyModel::hiddenColumns() { class MyStandardItemModel : public QStandardItemModel { @@ -2433,12 +2433,12 @@ void tst_QSortFilterProxyModel::task236755_hiddenColumns() model.blockSignals(false); model.reset(); - //in the initial task this would be false because resetting - //model would also reset the hidden columns + // In the initial bug report that spawned this test, this would be false + // because resetting model would also reset the hidden columns. QVERIFY(view.isColumnHidden(0)); } -void tst_QSortFilterProxyModel::task247867_insertRowsSort() +void tst_QSortFilterProxyModel::insertRowsSort() { QStandardItemModel model(2,2); QSortFilterProxyModel proxyModel; @@ -2454,7 +2454,7 @@ void tst_QSortFilterProxyModel::task247867_insertRowsSort() QCOMPARE(proxyModel.sortColumn(), 0); } -void tst_QSortFilterProxyModel::task248868_staticSorting() +void tst_QSortFilterProxyModel::staticSorting() { QStandardItemModel model(0, 1); QSortFilterProxyModel proxy; @@ -2512,7 +2512,7 @@ void tst_QSortFilterProxyModel::task248868_staticSorting() } } -void tst_QSortFilterProxyModel::task248868_dynamicSorting() +void tst_QSortFilterProxyModel::dynamicSorting() { QStringListModel model1; const QStringList initial = QString("bateau avion dragon hirondelle flamme camion elephant").split(" "); @@ -2652,7 +2652,7 @@ public: mutable QMap parentHash; }; -void tst_QSortFilterProxyModel::task250023_fetchMore() +void tst_QSortFilterProxyModel::fetchMore() { QtTestModel model(10,10); QSortFilterProxyModel proxy; @@ -2674,7 +2674,7 @@ void tst_QSortFilterProxyModel::task250023_fetchMore() QCOMPARE(proxy.columnCount(idx), 10); } -void tst_QSortFilterProxyModel::task251296_hiddenChildren() +void tst_QSortFilterProxyModel::hiddenChildren() { QStandardItemModel model; QSortFilterProxyModel proxy; @@ -2725,7 +2725,7 @@ void tst_QSortFilterProxyModel::task251296_hiddenChildren() QCOMPARE(proxy.rowCount(indexA) , 0); } -void tst_QSortFilterProxyModel::task252507_mapFromToSource() +void tst_QSortFilterProxyModel::mapFromToSource() { QtTestModel source(10,10); source.fetchMore(QModelIndex()); @@ -2751,7 +2751,7 @@ static QStandardItem *addEntry(QStandardItem* pParent, const QString &descriptio return pItem; } -void tst_QSortFilterProxyModel::task255652_removeRowsRecursive() +void tst_QSortFilterProxyModel::removeRowsRecursive() { QStandardItemModel pModel; QStandardItem *pItem1 = new QStandardItem("root"); @@ -2801,7 +2801,7 @@ void tst_QSortFilterProxyModel::task255652_removeRowsRecursive() delete pItem11; } -void tst_QSortFilterProxyModel::taskQTBUG_6205_doubleProxySelectionSetSourceModel() +void tst_QSortFilterProxyModel::doubleProxySelectionSetSourceModel() { QStandardItemModel *model1 = new QStandardItemModel; QStandardItem *parentItem = model1->invisibleRootItem(); @@ -2837,7 +2837,7 @@ void tst_QSortFilterProxyModel::taskQTBUG_6205_doubleProxySelectionSetSourceMode QVERIFY(ism.selection().isEmpty()); } -void tst_QSortFilterProxyModel::taskQTBUG_7537_appearsAndSort() +void tst_QSortFilterProxyModel::appearsAndSort() { class PModel : public QSortFilterProxyModel { @@ -2910,7 +2910,7 @@ void tst_QSortFilterProxyModel::taskQTBUG_7537_appearsAndSort() QCOMPARE(spyChanged2.count(), 1); } -void tst_QSortFilterProxyModel::taskQTBUG_7716_unnecessaryDynamicSorting() +void tst_QSortFilterProxyModel::unnecessaryDynamicSorting() { QStringListModel model; const QStringList initial = QString("bravo charlie delta echo").split(" "); @@ -3111,7 +3111,7 @@ protected: } }; -void tst_QSortFilterProxyModel::taskQTBUG_10287_unnecessaryMapCreation() +void tst_QSortFilterProxyModel::unnecessaryMapCreation() { Model10287 m; Proxy10287 p(&m); @@ -3152,7 +3152,7 @@ void tst_QSortFilterProxyModel::filteredColumns() insertCommand->doCommand(); } -void tst_QSortFilterProxyModel::taskQTBUG_17812_resetInvalidate_data() +void tst_QSortFilterProxyModel::resetInvalidate_data() { QTest::addColumn("test"); QTest::addColumn("works"); @@ -3163,7 +3163,7 @@ void tst_QSortFilterProxyModel::taskQTBUG_17812_resetInvalidate_data() QTest::newRow("invalidate_filter") << 3 << true; } -void tst_QSortFilterProxyModel::taskQTBUG_17812_resetInvalidate() +void tst_QSortFilterProxyModel::resetInvalidate() { QFETCH(int, test); QFETCH(bool, works); -- cgit v1.2.3 From 36eb666391ec4d51ab1a9d6d1a4125bdcfd2bcbf Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Fri, 23 Dec 2011 15:18:16 +1000 Subject: Improve qtconcurrentthreadengine autotest. The threadCount() test function is unstable and had been disabled by making it not be a slot. It is better to disable it with QSKIP so that the test output shows that the test function exists and is in need of repair. Change-Id: Iccdc8da31e0d15d922f7e9606835d1ff1a3a4966 Reviewed-by: Rohan McGovern --- .../qtconcurrentthreadengine/tst_qtconcurrentthreadengine.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/tests/auto/corelib/concurrent/qtconcurrentthreadengine/tst_qtconcurrentthreadengine.cpp b/tests/auto/corelib/concurrent/qtconcurrentthreadengine/tst_qtconcurrentthreadengine.cpp index e020190ae3..d1350ba84a 100644 --- a/tests/auto/corelib/concurrent/qtconcurrentthreadengine/tst_qtconcurrentthreadengine.cpp +++ b/tests/auto/corelib/concurrent/qtconcurrentthreadengine/tst_qtconcurrentthreadengine.cpp @@ -48,14 +48,13 @@ using namespace QtConcurrent; class tst_QtConcurrentThreadEngine: public QObject { Q_OBJECT -public: - void threadCount(); private slots: void runDirectly(); void result(); void runThroughStarter(); void cancel(); void throttle(); + void threadCount(); void multipleResults(); void stresstest(); void cancelQueuedSlowUser(); @@ -279,6 +278,8 @@ public: void tst_QtConcurrentThreadEngine::threadCount() { + QSKIP("QTBUG-23333: This test is unstable"); + const int repeats = 10; for (int i = 0; i < repeats; ++i) { ThreadCountUser t; -- cgit v1.2.3 From b2f22587194c3c2e51a11eb97630ea08e3c2062c Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Wed, 28 Dec 2011 15:40:50 +1000 Subject: Avoid repeatedly registering the same meta-type Register the meta-type in initTestCase(), which is run once, rather than in init(), which is run before every test function is run. Change-Id: Ic62a2469da6a2a85254ffc7c4d893395202c50d8 Reviewed-by: Rohan McGovern --- tests/auto/corelib/animation/qanimationgroup/tst_qanimationgroup.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/auto/corelib/animation/qanimationgroup/tst_qanimationgroup.cpp b/tests/auto/corelib/animation/qanimationgroup/tst_qanimationgroup.cpp index d020fe9290..223998b000 100644 --- a/tests/auto/corelib/animation/qanimationgroup/tst_qanimationgroup.cpp +++ b/tests/auto/corelib/animation/qanimationgroup/tst_qanimationgroup.cpp @@ -51,7 +51,7 @@ class tst_QAnimationGroup : public QObject { Q_OBJECT public Q_SLOTS: - void init(); + void initTestCase(); private slots: void construction(); @@ -63,7 +63,7 @@ private slots: void loopWithoutStartValue(); }; -void tst_QAnimationGroup::init() +void tst_QAnimationGroup::initTestCase() { qRegisterMetaType("QAbstractAnimation::State"); } -- cgit v1.2.3 From 7dffcf8a74de16c977ddff930dd17973d2abdf9d Mon Sep 17 00:00:00 2001 From: "Jonas M. Gastal" Date: Tue, 27 Dec 2011 17:20:04 -0200 Subject: Clarifying the flow of signals on QNetworkAccessManager. Task-number: QTBUG-22858 Change-Id: I07eaecebf17e73f9c3148465d8970ca7672a900c Reviewed-by: Thiago Macieira --- src/network/access/qnetworkaccessmanager.cpp | 7 ++++++- src/network/kernel/qauthenticator.cpp | 4 ++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/src/network/access/qnetworkaccessmanager.cpp b/src/network/access/qnetworkaccessmanager.cpp index 2146749ea5..5b6919bc33 100644 --- a/src/network/access/qnetworkaccessmanager.cpp +++ b/src/network/access/qnetworkaccessmanager.cpp @@ -285,11 +285,16 @@ static void ensureInitialized() again, without emitting the authenticationRequired() signal. If it rejects the credentials, this signal will be emitted again. + \note To have the request not send credentials you must not call + setUser() or setPassword() on the \a authenticator object. This + will result in the the \l finished() signal being emitted with a + \l QNetworkReply with error \l AuthenticationRequiredError. + \note It is not possible to use a QueuedConnection to connect to this signal, as the connection will fail if the authenticator has not been filled in with new information when the signal returns. - \sa proxyAuthenticationRequired() + \sa proxyAuthenticationRequired(), QAuthenticator::setUser(), QAuthenticator::setPassword() */ /*! diff --git a/src/network/kernel/qauthenticator.cpp b/src/network/kernel/qauthenticator.cpp index ec3abdf029..3fa25368bb 100644 --- a/src/network/kernel/qauthenticator.cpp +++ b/src/network/kernel/qauthenticator.cpp @@ -206,6 +206,8 @@ QString QAuthenticator::user() const /*! Sets the \a user used for authentication. + + \sa QNetworkAccessManager::authenticationRequired() */ void QAuthenticator::setUser(const QString &user) { @@ -244,6 +246,8 @@ QString QAuthenticator::password() const /*! Sets the \a password used for authentication. + + \sa QNetworkAccessManager::authenticationRequired() */ void QAuthenticator::setPassword(const QString &password) { -- cgit v1.2.3 From b4557829f47fd293fcf7fc73d705a7b11e3fb49b Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Wed, 28 Dec 2011 16:52:24 +1000 Subject: Don't allow QThreadPool test to hang on failure. Use QTRY_VERIFY() to fail after a reasonable timeout rather than putting the test into an infinite loop. Change-Id: Ie0917556e15999a94cc0587f3f4c11c0d743a228 Reviewed-by: Rohan McGovern --- tests/auto/corelib/concurrent/qthreadpool/tst_qthreadpool.cpp | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/tests/auto/corelib/concurrent/qthreadpool/tst_qthreadpool.cpp b/tests/auto/corelib/concurrent/qthreadpool/tst_qthreadpool.cpp index ff26d5d2c3..ab67160450 100644 --- a/tests/auto/corelib/concurrent/qthreadpool/tst_qthreadpool.cpp +++ b/tests/auto/corelib/concurrent/qthreadpool/tst_qthreadpool.cpp @@ -205,9 +205,7 @@ void tst_QThreadPool::runTask() QThreadPool manager; ran = false; manager.start(new TestTask()); - // Hang if task is not runned. - while (ran == false) - QTest::qSleep(100); // no busy loop - this doesn't work with FIFO schedulers + QTRY_VERIFY(ran); } /* @@ -217,8 +215,7 @@ void tst_QThreadPool::singleton() { ran = false; QThreadPool::globalInstance()->start(new TestTask()); - while (ran == false) - QTest::qSleep(100); // no busy loop - this doesn't work with FIFO schedulers + QTRY_VERIFY(ran); } int *value = 0; -- cgit v1.2.3 From fb9b5d65d89d74050cf8cbb62485a70b54e3a1c6 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Tue, 27 Dec 2011 15:06:57 +0100 Subject: Enable variadic macros if building in c++0x mode. Change-Id: I40d1f1f64ad31a299ccad9258f70e9bf3255c3cd Reviewed-by: Thiago Macieira Reviewed-by: Olivier Goffart --- src/corelib/global/qglobal.h | 1 + 1 file changed, 1 insertion(+) diff --git a/src/corelib/global/qglobal.h b/src/corelib/global/qglobal.h index c60796ccf1..e75118fc3a 100644 --- a/src/corelib/global/qglobal.h +++ b/src/corelib/global/qglobal.h @@ -482,6 +482,7 @@ namespace QT_NAMESPACE {} # if defined(__GXX_EXPERIMENTAL_CXX0X__) # if (__GNUC__ * 100 + __GNUC_MINOR__) >= 403 /* C++0x features supported in GCC 4.3: */ +# define Q_COMPILER_VARIADIC_MACROS # define Q_COMPILER_RVALUE_REFS # define Q_COMPILER_DECLTYPE # define Q_COMPILER_STATIC_ASSERT -- cgit v1.2.3 From 78c27380c6b029b7908642b92ea68aca649e2384 Mon Sep 17 00:00:00 2001 From: Sergio Ahumada Date: Wed, 28 Dec 2011 21:28:51 +0100 Subject: Fix printerPaperSize and some tst_qprinter test failures Removing QEXPECT_FAIL accordingly. Task-number: QTBUG-22296 Task-number: QTBUG-22562 Change-Id: I128a78897722cc067168ee50dbcbfc7537abdfcd Reviewed-by: Thiago Macieira --- src/printsupport/kernel/qprintengine_pdf.cpp | 2 +- tests/auto/gui/painting/qprinter/tst_qprinter.cpp | 4 ---- 2 files changed, 1 insertion(+), 5 deletions(-) diff --git a/src/printsupport/kernel/qprintengine_pdf.cpp b/src/printsupport/kernel/qprintengine_pdf.cpp index c8ce2cfa0f..7489d7118a 100644 --- a/src/printsupport/kernel/qprintengine_pdf.cpp +++ b/src/printsupport/kernel/qprintengine_pdf.cpp @@ -303,7 +303,7 @@ QVariant QPdfPrintEngine::property(PrintEnginePropertyKey key) const ret = d->pageOrder; break; case PPK_PaperSize: - ret = d->paperSize; + ret = d->printerPaperSize; break; case PPK_PaperSource: ret = d->paperSource; diff --git a/tests/auto/gui/painting/qprinter/tst_qprinter.cpp b/tests/auto/gui/painting/qprinter/tst_qprinter.cpp index d7b0ccba21..4767048929 100644 --- a/tests/auto/gui/painting/qprinter/tst_qprinter.cpp +++ b/tests/auto/gui/painting/qprinter/tst_qprinter.cpp @@ -191,7 +191,6 @@ void tst_QPrinter::getSetCheck() obj1.setPageSize(QPrinter::PageSize(QPrinter::A4)); QCOMPARE(QPrinter::PageSize(QPrinter::A4), obj1.pageSize()); obj1.setPageSize(QPrinter::PageSize(QPrinter::Letter)); - QEXPECT_FAIL("", "QTBUG-22562, QTBUG-22296", Abort); QCOMPARE(QPrinter::PageSize(QPrinter::Letter), obj1.pageSize()); obj1.setPageSize(QPrinter::PageSize(QPrinter::Legal)); QCOMPARE(QPrinter::PageSize(QPrinter::Legal), obj1.pageSize()); @@ -517,7 +516,6 @@ void tst_QPrinter::setGetPaperSize() p.setOutputFormat(QPrinter::PdfFormat); QSizeF size(500, 10); p.setPaperSize(size, QPrinter::Millimeter); - QEXPECT_FAIL("", "QTBUG-22562, QTBUG-22296", Abort); QCOMPARE(p.paperSize(QPrinter::Millimeter), size); QSizeF ptSize = p.paperSize(QPrinter::Point); //qDebug() << ptSize; @@ -760,7 +758,6 @@ void tst_QPrinter::valuePreservation() printer.setPageSize(QPrinter::B5); printer.setOutputFormat(newFormat); - QEXPECT_FAIL("", "QTBUG-22562, QTBUG-22296", Abort); QCOMPARE(printer.pageSize(), QPrinter::B5); printer.setOutputFormat(oldFormat); QCOMPARE(printer.pageSize(), QPrinter::B5); @@ -881,7 +878,6 @@ void tst_QPrinter::testCustomPageSizes() p.setPaperSize(customSize, QPrinter::Inch); QSizeF paperSize = p.paperSize(QPrinter::Inch); - QEXPECT_FAIL("", "QTBUG-22562, QTBUG-22296", Abort); QCOMPARE(paperSize, customSize); QPrinter p2(QPrinter::HighResolution); -- cgit v1.2.3 From 4c1469f7da33dd65eb5e8e9a50b79d935eb4add0 Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Thu, 29 Dec 2011 15:45:04 +1000 Subject: Improve QTextCodec::codecForLocale() test. Don't call QSKIP when omitting the optional part of the test, as doing so hides the fact that the rest of the test passed. Change-Id: I9c102e8daeaf9586b2e510c4c9ce697ead290795 Reviewed-by: Thiago Macieira --- .../auto/corelib/codecs/qtextcodec/tst_qtextcodec.cpp | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/tests/auto/corelib/codecs/qtextcodec/tst_qtextcodec.cpp b/tests/auto/corelib/codecs/qtextcodec/tst_qtextcodec.cpp index deb983c262..9c5a15d92c 100644 --- a/tests/auto/corelib/codecs/qtextcodec/tst_qtextcodec.cpp +++ b/tests/auto/corelib/codecs/qtextcodec/tst_qtextcodec.cpp @@ -356,17 +356,18 @@ void tst_QTextCodec::codecForLocale() break; } } - if (!codec2) { - QSKIP("Could not find a codec that is not already the codecForLocale()"); - } - // set it, codecForLocale() should return it now - QTextCodec::setCodecForLocale(codec2); - QCOMPARE(QTextCodec::codecForLocale(), codec2); + // Only run the rest of the test if we could find a codec that is not + // already the codecForLocale(). + if (codec2) { + // set it, codecForLocale() should return it now + QTextCodec::setCodecForLocale(codec2); + QCOMPARE(QTextCodec::codecForLocale(), codec2); - // reset back to the default - QTextCodec::setCodecForLocale(0); - QCOMPARE(QTextCodec::codecForLocale(), codec); + // reset back to the default + QTextCodec::setCodecForLocale(0); + QCOMPARE(QTextCodec::codecForLocale(), codec); + } #endif } -- cgit v1.2.3 From 231369eb043e9c5221da1a4f2a724643a3f380f3 Mon Sep 17 00:00:00 2001 From: "Jonas M. Gastal" Date: Thu, 29 Dec 2011 12:24:17 -0200 Subject: Make qDecodeDataUrl return bool. Change-Id: I23b9fed39af7bea6c171b35e10bd72c424bd903e Reviewed-by: Thiago Macieira --- src/corelib/io/qdataurl.cpp | 66 ++++++++++++++-------------- src/corelib/io/qdataurl_p.h | 2 +- src/gui/text/qtextdocument.cpp | 8 +++- src/network/access/qnetworkreplydataimpl.cpp | 15 +++---- src/network/access/qnetworkreplydataimpl_p.h | 1 - 5 files changed, 45 insertions(+), 47 deletions(-) diff --git a/src/corelib/io/qdataurl.cpp b/src/corelib/io/qdataurl.cpp index ed8abdd839..2764212279 100644 --- a/src/corelib/io/qdataurl.cpp +++ b/src/corelib/io/qdataurl.cpp @@ -51,51 +51,49 @@ QT_BEGIN_NAMESPACE Decode a data: URL into its mimetype and payload. Returns a null string if the URL could not be decoded. */ -Q_CORE_EXPORT QPair qDecodeDataUrl(const QUrl &uri) +Q_CORE_EXPORT bool qDecodeDataUrl(const QUrl &uri, QString &mimeType, QByteArray &payload) { - QString mimeType; - QByteArray payload; + if (uri.scheme() != QLatin1String("data") || !uri.host().isEmpty()) + return false; - if (uri.scheme() == QLatin1String("data") && uri.host().isEmpty()) { - mimeType = QLatin1String("text/plain;charset=US-ASCII"); + mimeType = QLatin1String("text/plain;charset=US-ASCII"); - // the following would have been the correct thing, but - // reality often differs from the specification. People have - // data: URIs with ? and # - //QByteArray data = QByteArray::fromPercentEncoding(uri.encodedPath()); - QByteArray data = QByteArray::fromPercentEncoding(uri.toEncoded()); + // the following would have been the correct thing, but + // reality often differs from the specification. People have + // data: URIs with ? and # + //QByteArray data = QByteArray::fromPercentEncoding(uri.encodedPath()); + QByteArray data = QByteArray::fromPercentEncoding(uri.toEncoded()); - // remove the data: scheme - data.remove(0, 5); + // remove the data: scheme + data.remove(0, 5); - // parse it: - int pos = data.indexOf(','); - if (pos != -1) { - payload = data.mid(pos + 1); - data.truncate(pos); - data = data.trimmed(); + // parse it: + int pos = data.indexOf(','); + if (pos != -1) { + payload = data.mid(pos + 1); + data.truncate(pos); + data = data.trimmed(); - // find out if the payload is encoded in Base64 - if (data.endsWith(";base64")) { - payload = QByteArray::fromBase64(payload); - data.chop(7); - } + // find out if the payload is encoded in Base64 + if (data.endsWith(";base64")) { + payload = QByteArray::fromBase64(payload); + data.chop(7); + } - if (data.toLower().startsWith("charset")) { - int i = 7; // strlen("charset") - while (data.at(i) == ' ') - ++i; - if (data.at(i) == '=') - data.prepend("text/plain;"); - } + if (data.toLower().startsWith("charset")) { + int i = 7; // strlen("charset") + while (data.at(i) == ' ') + ++i; + if (data.at(i) == '=') + data.prepend("text/plain;"); + } - if (!data.isEmpty()) - mimeType = QLatin1String(data.trimmed()); + if (!data.isEmpty()) + mimeType = QLatin1String(data.trimmed()); - } } - return QPair(mimeType,payload); + return true; } QT_END_NAMESPACE diff --git a/src/corelib/io/qdataurl_p.h b/src/corelib/io/qdataurl_p.h index d666d9e52a..a8c9ed847b 100644 --- a/src/corelib/io/qdataurl_p.h +++ b/src/corelib/io/qdataurl_p.h @@ -60,7 +60,7 @@ QT_BEGIN_NAMESPACE -Q_CORE_EXPORT QPair qDecodeDataUrl(const QUrl &url); +Q_CORE_EXPORT bool qDecodeDataUrl(const QUrl &url, QString &mimeType, QByteArray &payload); QT_END_NAMESPACE diff --git a/src/gui/text/qtextdocument.cpp b/src/gui/text/qtextdocument.cpp index 8d9a8c405a..1028a2329a 100644 --- a/src/gui/text/qtextdocument.cpp +++ b/src/gui/text/qtextdocument.cpp @@ -1925,8 +1925,12 @@ QVariant QTextDocument::loadResource(int type, const QUrl &name) #endif // handle data: URLs - if (r.isNull() && name.scheme().compare(QLatin1String("data"), Qt::CaseInsensitive) == 0) - r = qDecodeDataUrl(name).second; + if (r.isNull() && name.scheme().compare(QLatin1String("data"), Qt::CaseInsensitive) == 0) { + QString mimetype; + QByteArray payload; + if (qDecodeDataUrl(name, mimetype, payload)) + r = payload; + } // if resource was not loaded try to load it here if (!doc && r.isNull() && name.isRelative()) { diff --git a/src/network/access/qnetworkreplydataimpl.cpp b/src/network/access/qnetworkreplydataimpl.cpp index 0cd10ce13b..285b41190d 100644 --- a/src/network/access/qnetworkreplydataimpl.cpp +++ b/src/network/access/qnetworkreplydataimpl.cpp @@ -70,19 +70,16 @@ QNetworkReplyDataImpl::QNetworkReplyDataImpl(QObject *parent, const QNetworkRequ QNetworkReply::open(QIODevice::ReadOnly); QUrl url = req.url(); - - // FIXME qDecodeDataUrl should instead be rewritten to have the QByteArray - // and the mime type as an output parameter and return a bool instead - d->decodeDataUrlResult = qDecodeDataUrl(url); - - if (! d->decodeDataUrlResult.first.isNull()) { - QString &mimeType = d->decodeDataUrlResult.first; - qint64 size = d->decodeDataUrlResult.second.size(); + QString mimeType; + QByteArray payload; + if (qDecodeDataUrl(url, mimeType, payload)) { + QString &mimeType = mimeType; + qint64 size = payload.size(); setHeader(QNetworkRequest::ContentTypeHeader, mimeType); setHeader(QNetworkRequest::ContentLengthHeader, size); QMetaObject::invokeMethod(this, "metaDataChanged", Qt::QueuedConnection); - d->decodedData.setBuffer(&d->decodeDataUrlResult.second); + d->decodedData.setBuffer(&payload); d->decodedData.open(QIODevice::ReadOnly); QMetaObject::invokeMethod(this, "downloadProgress", Qt::QueuedConnection, diff --git a/src/network/access/qnetworkreplydataimpl_p.h b/src/network/access/qnetworkreplydataimpl_p.h index a63c4b1eec..11e17d1c43 100644 --- a/src/network/access/qnetworkreplydataimpl_p.h +++ b/src/network/access/qnetworkreplydataimpl_p.h @@ -87,7 +87,6 @@ public: QNetworkReplyDataImplPrivate(); ~QNetworkReplyDataImplPrivate(); - QPair decodeDataUrlResult; QBuffer decodedData; Q_DECLARE_PUBLIC(QNetworkReplyDataImpl) -- cgit v1.2.3 From 18d2528b6c774c349f304b741a4d436d35f2d024 Mon Sep 17 00:00:00 2001 From: Robin Burchell Date: Tue, 27 Dec 2011 19:46:18 +0100 Subject: Change test to use new QTRY_COMPARE/QTRY_VERIFY macros. When verifying nonzero results (i.e. that something expected *did* happen), using these macros allows bailing out of the timer much earlier than the potential 5 seconds. My running this on Linux goes from ~147 seconds to ~91 seconds. Change-Id: Ie1e41252eb4eb295b5c8e795ded02f00eb7f9387 Reviewed-by: Rohan McGovern --- .../qfilesystemwatcher/tst_qfilesystemwatcher.cpp | 36 ++++++---------------- 1 file changed, 10 insertions(+), 26 deletions(-) diff --git a/tests/auto/corelib/io/qfilesystemwatcher/tst_qfilesystemwatcher.cpp b/tests/auto/corelib/io/qfilesystemwatcher/tst_qfilesystemwatcher.cpp index 0f2c163e24..0e7172143b 100644 --- a/tests/auto/corelib/io/qfilesystemwatcher/tst_qfilesystemwatcher.cpp +++ b/tests/auto/corelib/io/qfilesystemwatcher/tst_qfilesystemwatcher.cpp @@ -160,10 +160,7 @@ void tst_QFileSystemWatcher::basicTest() testFile.close(); // waiting max 5 seconds for notification for file modification to trigger - timer.start(5000); - eventLoop.exec(); - - QCOMPARE(changedSpy.count(), 1); + QTRY_COMPARE(changedSpy.count(), 1); QCOMPARE(changedSpy.at(0).count(), 1); QString fileName = changedSpy.at(0).at(0).toString(); @@ -189,10 +186,7 @@ void tst_QFileSystemWatcher::basicTest() testFile.write(QByteArray("hello multiverse!")); testFile.close(); - timer.start(5000); - eventLoop.exec(); - - QVERIFY(changedSpy.count() > 0); + QTRY_VERIFY(changedSpy.count() > 0); watcher.removePath(testFile.fileName().prepend("./")); @@ -205,10 +199,7 @@ void tst_QFileSystemWatcher::basicTest() testFile.setPermissions(QFile::ReadOwner); // waiting max 5 seconds for notification for file permission modification to trigger - timer.start(5000); - eventLoop.exec(); - - QCOMPARE(changedSpy.count(), 1); + QTRY_COMPARE(changedSpy.count(), 1); QCOMPARE(changedSpy.at(0).count(), 1); fileName = changedSpy.at(0).at(0).toString(); @@ -233,10 +224,9 @@ void tst_QFileSystemWatcher::basicTest() QVERIFY(testFile.remove()); // waiting max 5 seconds for notification for file removal to trigger - timer.start(5000); - eventLoop.exec(); - - QVERIFY(changedSpy.count() == 1 || changedSpy.count() == 2); // removing a file on some filesystems seems to deliver 2 notifications + // > 0 && < 3 because some platforms may emit two changes + // XXX: which platforms? (QTBUG-23370) + QTRY_VERIFY(changedSpy.count() > 0 && changedSpy.count() < 3); QCOMPARE(changedSpy.at(0).count(), 1); fileName = changedSpy.at(0).at(0).toString(); @@ -309,13 +299,10 @@ void tst_QFileSystemWatcher::watchDirectory() QVERIFY(QDir().rmdir("testDir")); // waiting max 5 seconds for notification for directory removal to trigger - timer.start(5000); - eventLoop.exec(); - #ifdef Q_OS_WINCE QEXPECT_FAIL("poller", "Directory does not get updated on file removal(See #137910)", Abort); #endif - QCOMPARE(changedSpy.count(), 2); + QTRY_COMPARE(changedSpy.count(), 2); QCOMPARE(changedSpy.at(0).count(), 1); QCOMPARE(changedSpy.at(1).count(), 1); @@ -440,9 +427,8 @@ void tst_QFileSystemWatcher::watchFileAndItsDirectory() testFile.write(QByteArray("hello again")); testFile.close(); - timer.start(3000); - eventLoop.exec(); - QVERIFY(fileChangedSpy.count() > 0); + QTRY_VERIFY(fileChangedSpy.count() > 0); + //according to Qt 4 documentation: //void QFileSystemWatcher::directoryChanged ( const QString & path ) [signal] //This signal is emitted when the directory at a specified path, is modified @@ -474,9 +460,7 @@ void tst_QFileSystemWatcher::watchFileAndItsDirectory() QFile::remove(testFileName); - timer.start(3000); - eventLoop.exec(); - QVERIFY(fileChangedSpy.count() > 0); + QTRY_VERIFY(fileChangedSpy.count() > 0); QCOMPARE(dirChangedSpy.count(), 1); fileChangedSpy.clear(); -- cgit v1.2.3 From 8b66c46c18a219090e450203f958c6ea1e8c004b Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Thu, 29 Dec 2011 11:11:41 +1000 Subject: Correct misspelt function name in qtconcurrentfilter test. Change-Id: Ie7ea2defac407d099d7bb27cccfb34911b832626 Reviewed-by: Rohan McGovern --- .../corelib/concurrent/qtconcurrentfilter/tst_qtconcurrentfilter.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/auto/corelib/concurrent/qtconcurrentfilter/tst_qtconcurrentfilter.cpp b/tests/auto/corelib/concurrent/qtconcurrentfilter/tst_qtconcurrentfilter.cpp index 91d61e29d4..34e0201ce3 100644 --- a/tests/auto/corelib/concurrent/qtconcurrentfilter/tst_qtconcurrentfilter.cpp +++ b/tests/auto/corelib/concurrent/qtconcurrentfilter/tst_qtconcurrentfilter.cpp @@ -59,7 +59,7 @@ private slots: void filteredReduced(); void resultAt(); void incrementalResults(); - void noDetatch(); + void noDetach(); #ifndef QT_NO_STL void stlContainers(); #endif @@ -1461,7 +1461,7 @@ void tst_QtConcurrentFilter::incrementalResults() QCOMPARE(future.results().count(), count / 2); } -void tst_QtConcurrentFilter::noDetatch() +void tst_QtConcurrentFilter::noDetach() { { QList l = QList() << 1; -- cgit v1.2.3 From 0372d5bf0d0702e7610d265532109aa6cbfd792c Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Thu, 29 Dec 2011 11:38:45 +1000 Subject: Correct misspelt function name in qtconcurrentmap test. Change-Id: I79b54b4e0de6319add89d220d3c3306556ab4ccc Reviewed-by: Rohan McGovern --- tests/auto/corelib/concurrent/qtconcurrentmap/tst_qtconcurrentmap.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/auto/corelib/concurrent/qtconcurrentmap/tst_qtconcurrentmap.cpp b/tests/auto/corelib/concurrent/qtconcurrentmap/tst_qtconcurrentmap.cpp index a1dd1c7ab9..c55317d171 100644 --- a/tests/auto/corelib/concurrent/qtconcurrentmap/tst_qtconcurrentmap.cpp +++ b/tests/auto/corelib/concurrent/qtconcurrentmap/tst_qtconcurrentmap.cpp @@ -74,7 +74,7 @@ private slots: void exceptions(); #endif void incrementalResults(); - void noDetatch(); + void noDetach(); #ifndef QT_NO_STL void stlContainers(); #endif @@ -2279,7 +2279,7 @@ void tst_QtConcurrentMap::incrementalResults() Test that mapped does not cause deep copies when holding references to Qt containers. */ -void tst_QtConcurrentMap::noDetatch() +void tst_QtConcurrentMap::noDetach() { { QList l = QList() << 1; -- cgit v1.2.3 From fb83806138ed8fc86aed4a0ad9747f8a47f10088 Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Thu, 29 Dec 2011 11:53:54 +1000 Subject: Correct misspelt function names in QFutureWatcher test. Change-Id: I60965f3475f83a7c42d2efc6ed8adf9a1403e144 Reviewed-by: Rohan McGovern --- .../auto/corelib/concurrent/qfuturewatcher/tst_qfuturewatcher.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tests/auto/corelib/concurrent/qfuturewatcher/tst_qfuturewatcher.cpp b/tests/auto/corelib/concurrent/qfuturewatcher/tst_qfuturewatcher.cpp index ca0816eca1..8cd77b88f7 100644 --- a/tests/auto/corelib/concurrent/qfuturewatcher/tst_qfuturewatcher.cpp +++ b/tests/auto/corelib/concurrent/qfuturewatcher/tst_qfuturewatcher.cpp @@ -67,7 +67,7 @@ private slots: void watchFinishedFuture(); void watchCanceledFuture(); void disconnectRunningFuture(); - void toMuchProgress(); + void tooMuchProgress(); void progressText(); void sharedFutureInterface(); void changeFuture(); @@ -77,7 +77,7 @@ private slots: void throttling(); void incrementalMapResults(); void incrementalFilterResults(); - void qfutureSynchornizer(); + void qfutureSynchronizer(); void warnRace(); }; @@ -476,7 +476,7 @@ public: } }; -void tst_QFutureWatcher::toMuchProgress() +void tst_QFutureWatcher::tooMuchProgress() { progressValues.clear(); ProgressObject o; @@ -891,7 +891,7 @@ void tst_QFutureWatcher::incrementalFilterResults() future.waitForFinished(); } -void tst_QFutureWatcher::qfutureSynchornizer() +void tst_QFutureWatcher::qfutureSynchronizer() { int taskCount = 1000; QTime t; -- cgit v1.2.3 From d8f1749a7472ce924304d45cdd94f8488b1e65fd Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Thu, 29 Dec 2011 13:34:25 +1000 Subject: Use QVERIFY2 to output verbose failure messages. Change-Id: I2ce96d9d9f582e99c1d9f6dd6e6e80ce42d6e61d Reviewed-by: Rohan McGovern --- .../tst_qtconcurrentthreadengine.cpp | 22 ++++++---------------- 1 file changed, 6 insertions(+), 16 deletions(-) diff --git a/tests/auto/corelib/concurrent/qtconcurrentthreadengine/tst_qtconcurrentthreadengine.cpp b/tests/auto/corelib/concurrent/qtconcurrentthreadengine/tst_qtconcurrentthreadengine.cpp index d1350ba84a..d5b58c892d 100644 --- a/tests/auto/corelib/concurrent/qtconcurrentthreadengine/tst_qtconcurrentthreadengine.cpp +++ b/tests/auto/corelib/concurrent/qtconcurrentthreadengine/tst_qtconcurrentthreadengine.cpp @@ -446,8 +446,7 @@ void tst_QtConcurrentThreadEngine::exceptions() } catch (const Exception &) { caught = true; } - if (!caught) - QFAIL("did not get exception"); + QVERIFY2(caught, "did not get exception"); } // Blocking mode: @@ -460,9 +459,7 @@ void tst_QtConcurrentThreadEngine::exceptions() } catch (const Exception &) { caught = true; } - - if (!caught) - QFAIL("did not get exception"); + QVERIFY2(caught, "did not get exception"); } // test throwing the exception from the main thread (different code path) @@ -474,9 +471,7 @@ void tst_QtConcurrentThreadEngine::exceptions() } catch (const Exception &) { caught = true; } - - if (!caught) - QFAIL("did not get exception"); + QVERIFY2(caught, "did not get exception"); } // Asynchronous mode: @@ -489,8 +484,7 @@ void tst_QtConcurrentThreadEngine::exceptions() } catch (const QtConcurrent::UnhandledException &) { caught = true; } - if (!caught) - QFAIL("did not get exception"); + QVERIFY2(caught, "did not get exception"); } // Blocking mode: @@ -503,9 +497,7 @@ void tst_QtConcurrentThreadEngine::exceptions() } catch (const QtConcurrent::UnhandledException &) { caught = true; } - - if (!caught) - QFAIL("did not get exception"); + QVERIFY2(caught, "did not get exception"); } // test throwing the exception from the main thread (different code path) @@ -517,9 +509,7 @@ void tst_QtConcurrentThreadEngine::exceptions() } catch (const QtConcurrent::UnhandledException &) { caught = true; } - - if (!caught) - QFAIL("did not get exception"); + QVERIFY2(caught, "did not get exception"); } } -- cgit v1.2.3 From 14e139f39187a6e87d6eed332b11b8a3f8521906 Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Fri, 30 Dec 2011 10:58:14 +1000 Subject: Prevent qDebug test bypassing the testlib message handler. Several of the test functions in the QDebug autotest call qInstallMsgHandler() to temporarily use a custom message handler. Unfortunately, these test functions were then resetting the message handler back to Qt's default handler at the end of the test. QTestLib also calls qInstallMsgHandler() to set a message handler that redirects debug/warning/fatal messages into the test log. When the test resets the message handler back to Qt's default handler, testlib's message handler is bypassed for the rest of the test, preventing any subsequent debug/warning/fatal messages from being visible in the test log or subject to testlib's ignoreMessage() function. This error also caused several of the test functions to fail if they were run manually. The "defaultMessagehandler" test would fail if it was run before any other test function and the "assignment" test would fail if it was run after any other test function. This commit fixes these failures by using a helper class to ensure that the previously active message handler is restored at the end of each test function, even if the test function fails or throws an exception. Change-Id: I51376724d164c8ad126e5b9be76890bf3e6a9fb0 Reviewed-by: Rohan McGovern --- tests/auto/corelib/io/qdebug/tst_qdebug.cpp | 38 ++++++++++++++++++++--------- 1 file changed, 26 insertions(+), 12 deletions(-) diff --git a/tests/auto/corelib/io/qdebug/tst_qdebug.cpp b/tests/auto/corelib/io/qdebug/tst_qdebug.cpp index f33a7eef5a..86872a4dd1 100644 --- a/tests/auto/corelib/io/qdebug/tst_qdebug.cpp +++ b/tests/auto/corelib/io/qdebug/tst_qdebug.cpp @@ -81,16 +81,34 @@ static void myMessageHandler(QtMsgType type, const char *msg) s_msgType = type; } +// Helper class to ensure that the testlib message handler gets +// restored at the end of each test function, even if the test +// fails or throws an exception. +class MessageHandlerSetter +{ +public: + MessageHandlerSetter(QtMsgHandler newMsgHandler) + : oldMsgHandler(qInstallMsgHandler(newMsgHandler)) + { } + + ~MessageHandlerSetter() + { + qInstallMsgHandler(oldMsgHandler); + } + +private: + QtMsgHandler oldMsgHandler; +}; + /*! \internal The qWarning() stream should be usable even if QT_NO_DEBUG is defined. */ void tst_QDebug::warningWithoutDebug() const { - qInstallMsgHandler(myMessageHandler); + MessageHandlerSetter mhs(myMessageHandler); { qWarning() << "A qWarning() message"; } QCOMPARE(s_msgType, QtWarningMsg); QCOMPARE(QString::fromLatin1(s_msg.data()), QString::fromLatin1("A qWarning() message ")); - qInstallMsgHandler(0); } /*! \internal @@ -98,25 +116,23 @@ void tst_QDebug::warningWithoutDebug() const */ void tst_QDebug::criticalWithoutDebug() const { - qInstallMsgHandler(myMessageHandler); + MessageHandlerSetter mhs(myMessageHandler); { qCritical() << "A qCritical() message"; } QCOMPARE(s_msgType, QtCriticalMsg); QCOMPARE(QString::fromLatin1(s_msg), QString::fromLatin1("A qCritical() message ")); - qInstallMsgHandler(0); } void tst_QDebug::debugWithQBool() const { - qInstallMsgHandler(myMessageHandler); + MessageHandlerSetter mhs(myMessageHandler); { qDebug() << QBool(false) << QBool(true); } QCOMPARE(s_msgType, QtDebugMsg); QCOMPARE(QString::fromLatin1(s_msg), QString::fromLatin1("false true ")); - qInstallMsgHandler(0); } void tst_QDebug::veryLongWarningMessage() const { - qInstallMsgHandler(myMessageHandler); + MessageHandlerSetter mhs(myMessageHandler); QString test; { QString part("0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789\n"); @@ -126,7 +142,6 @@ void tst_QDebug::veryLongWarningMessage() const } QCOMPARE(s_msgType, QtWarningMsg); QCOMPARE(QString::fromLatin1(s_msg), QString::fromLatin1("Test output:\n")+test+QString::fromLatin1("\nend")); - qInstallMsgHandler(0); } void tst_QDebug::qDebugQStringRef() const @@ -136,27 +151,26 @@ void tst_QDebug::qDebugQStringRef() const const QString in(QLatin1String("input")); const QStringRef inRef(&in); - qInstallMsgHandler(myMessageHandler); + MessageHandlerSetter mhs(myMessageHandler); { qDebug() << inRef; } QCOMPARE(s_msgType, QtDebugMsg); QCOMPARE(QString::fromLatin1(s_msg), QString::fromLatin1("\"input\" ")); - qInstallMsgHandler(0); } /* Use a null QStringRef. */ { const QStringRef inRef; - qInstallMsgHandler(myMessageHandler); + MessageHandlerSetter mhs(myMessageHandler); { qDebug() << inRef; } QCOMPARE(s_msgType, QtDebugMsg); QCOMPARE(QString::fromLatin1(s_msg), QString::fromLatin1("\"\" ")); - qInstallMsgHandler(0); } } void tst_QDebug::defaultMessagehandler() const { + MessageHandlerSetter mhs(0); QtMsgHandler defaultMessageHandler1 = qInstallMsgHandler(0); QtMsgHandler defaultMessageHandler2 = qInstallMsgHandler(myMessageHandler); bool same = (*defaultMessageHandler1 == *defaultMessageHandler2); -- cgit v1.2.3 From b83e98d22c667ae36be5ed85b863c7086482afa4 Mon Sep 17 00:00:00 2001 From: Pekka Vuorela Date: Thu, 15 Dec 2011 16:22:52 +0200 Subject: Adapt QGraphicsScene test to use QPlatformInputContext Change-Id: Iaf61798cc78e57563fee088711d39090b722a946 Reviewed-by: Joona Petrell --- .../qgraphicsscene/tst_qgraphicsscene.cpp | 41 ++++----- tests/auto/widgets/shared/platforminputcontext.h | 101 +++++++++++++++++++++ 2 files changed, 118 insertions(+), 24 deletions(-) create mode 100644 tests/auto/widgets/shared/platforminputcontext.h diff --git a/tests/auto/widgets/graphicsview/qgraphicsscene/tst_qgraphicsscene.cpp b/tests/auto/widgets/graphicsview/qgraphicsscene/tst_qgraphicsscene.cpp index eebea90a61..d359581f1a 100644 --- a/tests/auto/widgets/graphicsview/qgraphicsscene/tst_qgraphicsscene.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicsscene/tst_qgraphicsscene.cpp @@ -51,6 +51,8 @@ #include #include #include "../../../gui/painting/qpathclipper/pathcompare.h" +#include "../../shared/platforminputcontext.h" +#include #if defined(Q_OS_WIN) && !defined(Q_OS_WINCE) #include @@ -186,6 +188,7 @@ class tst_QGraphicsScene : public QObject Q_OBJECT public slots: void initTestCase(); + void cleanup(); private slots: void construction(); @@ -289,6 +292,13 @@ void tst_QGraphicsScene::initTestCase() #endif } +void tst_QGraphicsScene::cleanup() +{ + // ensure not even skipped tests with custom input context leave it dangling + QInputPanelPrivate *inputPanelPrivate = QInputPanelPrivate::get(qApp->inputPanel()); + inputPanelPrivate->testContext = 0; +} + void tst_QGraphicsScene::construction() { QGraphicsScene scene; @@ -3753,25 +3763,12 @@ public: mutable int queryCalls; }; -class TestInputContext : public QInputContext -{ -public: - TestInputContext() {} - - QString identifierName() { return QString(); } - QString language() { return QString(); } - - void reset() { - ++resetCalls; - sendEvent(QInputMethodEvent()); } - - bool isComposing() const { return false; } - - int resetCalls; -}; - void tst_QGraphicsScene::inputMethod() { + PlatformInputContext inputContext; + QInputPanelPrivate *inputPanelPrivate = QInputPanelPrivate::get(qApp->inputPanel()); + inputPanelPrivate->testContext = &inputContext; + QFETCH(int, flags); QFETCH(bool, callFocusItem); @@ -3780,21 +3777,19 @@ void tst_QGraphicsScene::inputMethod() QGraphicsScene scene; QGraphicsView view(&scene); - TestInputContext *inputContext = new TestInputContext; - qApp->setInputContext(inputContext); view.show(); QApplication::setActiveWindow(&view); view.setFocus(); QTest::qWaitForWindowShown(&view); QTRY_COMPARE(QApplication::activeWindow(), static_cast(&view)); - inputContext->resetCalls = 0; + inputContext.m_resetCallCount = 0; scene.addItem(item); QInputMethodEvent event; scene.setFocusItem(item); QCOMPARE(!!(item->flags() & QGraphicsItem::ItemIsFocusable), scene.focusItem() == item); - QCOMPARE(inputContext->resetCalls, 0); + QCOMPARE(inputContext.m_resetCallCount, 0); item->eventCalls = 0; qApp->sendEvent(&scene, &event); @@ -3807,9 +3802,7 @@ void tst_QGraphicsScene::inputMethod() scene.setFocusItem(0); // the input context is reset twice, once because an item has lost focus and again because // the Qt::WA_InputMethodEnabled flag is cleared because no item has focus. - QEXPECT_FAIL("3", "QTBUG-22456", Abort); - QCOMPARE(inputContext->resetCalls, callFocusItem ? 2 : 0); - QCOMPARE(item->eventCalls, callFocusItem ? 2 : 0); // verify correct delivery of "reset" event + QCOMPARE(inputContext.m_resetCallCount, callFocusItem ? 2 : 0); QCOMPARE(item->queryCalls, callFocusItem ? 1 : 0); // verify that value is unaffected item->eventCalls = 0; diff --git a/tests/auto/widgets/shared/platforminputcontext.h b/tests/auto/widgets/shared/platforminputcontext.h new file mode 100644 index 0000000000..63a47f013f --- /dev/null +++ b/tests/auto/widgets/shared/platforminputcontext.h @@ -0,0 +1,101 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include + +class PlatformInputContext : public QPlatformInputContext +{ +public: + PlatformInputContext() : + m_animating(false), + m_visible(false), + m_updateCallCount(0), + m_resetCallCount(0), + m_commitCallCount(0), + m_lastQueries(Qt::ImhNone), + m_action(QInputPanel::Click), + m_cursorPosition(0), + m_lastEventType(QEvent::None) + {} + + virtual QRectF keyboardRect() const { return m_keyboardRect; } + virtual bool isAnimating() const { return m_animating; } + virtual void reset() { m_resetCallCount++; } + virtual void commit() { m_commitCallCount++; } + + virtual void update(Qt::InputMethodQueries queries) + { + m_updateCallCount++; + m_lastQueries = queries; + } + virtual void invokeAction(QInputPanel::Action action, int cursorPosition) + { + m_action = action; + m_cursorPosition = cursorPosition; + } + virtual bool filterEvent(const QEvent *event) + { + m_lastEventType = event->type(); return false; + } + virtual void showInputPanel() + { + m_visible = true; + } + virtual void hideInputPanel() + { + m_visible = false; + } + virtual bool isInputPanelVisible() const + { + return m_visible; + } + + bool m_animating; + bool m_visible; + int m_updateCallCount; + int m_resetCallCount; + int m_commitCallCount; + Qt::InputMethodQueries m_lastQueries; + QInputPanel::Action m_action; + int m_cursorPosition; + int m_lastEventType; + QRectF m_keyboardRect; +}; -- cgit v1.2.3 From 6576fda2ade4b61ee19896a431e97e870d62974f Mon Sep 17 00:00:00 2001 From: Pekka Vuorela Date: Thu, 15 Dec 2011 16:49:43 +0200 Subject: Adapt QGraphicsView test to QPlatformInputContext Change-Id: I9562a0b763fe7d77cd08451426bf2ceaec00acf9 Reviewed-by: Lars Knoll Reviewed-by: Joona Petrell --- .../qgraphicsview/tst_qgraphicsview.cpp | 53 +++++++++++----------- 1 file changed, 26 insertions(+), 27 deletions(-) diff --git a/tests/auto/widgets/graphicsview/qgraphicsview/tst_qgraphicsview.cpp b/tests/auto/widgets/graphicsview/qgraphicsview/tst_qgraphicsview.cpp index bf8ece42e2..8f2f8930c6 100644 --- a/tests/auto/widgets/graphicsview/qgraphicsview/tst_qgraphicsview.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicsview/tst_qgraphicsview.cpp @@ -68,10 +68,11 @@ #include #include #include -#include #include #include #include "../../../platformquirks.h" +#include "../../shared/platforminputcontext.h" +#include Q_DECLARE_METATYPE(QList) Q_DECLARE_METATYPE(QList) @@ -141,6 +142,7 @@ class tst_QGraphicsView : public QObject private slots: void initTestCase(); + void cleanup(); void construction(); void renderHints(); void alignment(); @@ -259,6 +261,13 @@ void tst_QGraphicsView::initTestCase() #endif } +void tst_QGraphicsView::cleanup() +{ + // ensure not even skipped tests with custom input context leave it dangling + QInputPanelPrivate *inputPanelPrivate = QInputPanelPrivate::get(qApp->inputPanel()); + inputPanelPrivate->testContext = 0; +} + void tst_QGraphicsView::construction() { QGraphicsView view; @@ -4100,26 +4109,16 @@ void tst_QGraphicsView::inputMethodSensitivity() QCOMPARE(scene.focusItem(), static_cast(item)); } -class InputContextTester : public QInputContext -{ - Q_OBJECT -public: - QString identifierName() { return QString(); } - bool isComposing() const { return false; } - QString language() { return QString(); } - void reset() { ++resets; } - int resets; -}; - void tst_QGraphicsView::inputContextReset() { + PlatformInputContext inputContext; + QInputPanelPrivate *inputPanelPrivate = QInputPanelPrivate::get(qApp->inputPanel()); + inputPanelPrivate->testContext = &inputContext; + QGraphicsScene scene; QGraphicsView view(&scene); QVERIFY(view.testAttribute(Qt::WA_InputMethodEnabled)); - InputContextTester *inputContext = new InputContextTester; - qApp->setInputContext(inputContext); - view.show(); QTest::qWaitForWindowShown(&view); QApplication::setActiveWindow(&view); @@ -4128,40 +4127,40 @@ void tst_QGraphicsView::inputContextReset() QGraphicsItem *item1 = new QGraphicsRectItem; item1->setFlags(QGraphicsItem::ItemIsFocusable | QGraphicsItem::ItemAcceptsInputMethod); - inputContext->resets = 0; + inputContext.m_resetCallCount = 0; scene.addItem(item1); - QCOMPARE(inputContext->resets, 0); + QCOMPARE(inputContext.m_resetCallCount, 0); - inputContext->resets = 0; + inputContext.m_resetCallCount = 0; scene.setFocusItem(item1); QCOMPARE(scene.focusItem(), (QGraphicsItem *)item1); QVERIFY(view.testAttribute(Qt::WA_InputMethodEnabled)); - QCOMPARE(inputContext->resets, 0); + QCOMPARE(inputContext.m_resetCallCount, 0); - inputContext->resets = 0; + inputContext.m_resetCallCount = 0; scene.setFocusItem(0); // the input context is reset twice, once because an item has lost focus and again because // the Qt::WA_InputMethodEnabled flag is cleared because no item has focus. - QEXPECT_FAIL("", "QTBUG-22454", Abort); - QCOMPARE(inputContext->resets, 2); + // QEXPECT_FAIL("", "QTBUG-22454", Abort); + QCOMPARE(inputContext.m_resetCallCount, 2); // introduce another item that is focusable but does not accept input methods QGraphicsItem *item2 = new QGraphicsRectItem; item2->setFlags(QGraphicsItem::ItemIsFocusable); scene.addItem(item2); - inputContext->resets = 0; + inputContext.m_resetCallCount = 0; scene.setFocusItem(item2); - QCOMPARE(inputContext->resets, 0); + QCOMPARE(inputContext.m_resetCallCount, 0); - inputContext->resets = 0; + inputContext.m_resetCallCount = 0; scene.setFocusItem(item1); - QCOMPARE(inputContext->resets, 0); + QCOMPARE(inputContext.m_resetCallCount, 0); // test changing between between items that accept input methods. item2->setFlags(QGraphicsItem::ItemIsFocusable | QGraphicsItem::ItemAcceptsInputMethod); scene.setFocusItem(item2); - QCOMPARE(inputContext->resets, 1); + QCOMPARE(inputContext.m_resetCallCount, 1); } void tst_QGraphicsView::indirectPainting() -- cgit v1.2.3 From 7f4c45390d4ad3f3fcff5faadfc2870624efa0cb Mon Sep 17 00:00:00 2001 From: Toby Tomkins Date: Thu, 29 Dec 2011 17:26:48 +1000 Subject: Flag udpTest as insignificant, fails on Ubuntu 11.10 x64. This testcase fails on the Ubuntu 11.10 x64 platform, add flag to .pro file so test is ignored on this platform. Task-number: QTBUG-23380 Change-Id: I51831df8c8e9bfcf63d3689e37552ca1a62691cd Reviewed-by: Thiago Macieira --- tests/auto/network/socket/qsocks5socketengine/qsocks5socketengine.pro | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tests/auto/network/socket/qsocks5socketengine/qsocks5socketengine.pro b/tests/auto/network/socket/qsocks5socketengine/qsocks5socketengine.pro index f3c24e19fd..389c8ca4dc 100644 --- a/tests/auto/network/socket/qsocks5socketengine/qsocks5socketengine.pro +++ b/tests/auto/network/socket/qsocks5socketengine/qsocks5socketengine.pro @@ -10,4 +10,7 @@ MOC_DIR=tmp QT = core-private network-private testlib +# QTBUG-23380 - udpTest failing on Ubuntu 11.10 x64 +linux-*:system(". /etc/lsb-release && [ $DISTRIB_CODENAME = oneiric ]"):CONFIG += insignificant_test + requires(contains(QT_CONFIG,private_tests)) -- cgit v1.2.3 From 69a44f9cfc569f447567179279363e608b53ff49 Mon Sep 17 00:00:00 2001 From: Robin Burchell Date: Fri, 9 Dec 2011 15:05:10 +0100 Subject: Change event posting to use a QVector. This provides a ~10% improvement to the newly introduced QCoreApplication event_posting_benchmark (a simple synthetic benchmark of creating a bunch of events, posting them, and sending the queue). before: ********* Start testing of QCoreApplicationBenchmark ********* Config: Using QTest library 5.0.0, Qt 5.0.0 PASS : QCoreApplicationBenchmark::initTestCase() RESULT : QCoreApplicationBenchmark::signal_slot_benchmark():"1000": 0.82 msecs per iteration (total: 53, iterations: 64) RESULT : QCoreApplicationBenchmark::signal_slot_benchmark():"10000": 8.6 msecs per iteration (total: 69, iterations: 8) RESULT : QCoreApplicationBenchmark::signal_slot_benchmark():"100000": 84 msecs per iteration (total: 84, iterations: 1) RESULT : QCoreApplicationBenchmark::signal_slot_benchmark():"1000000": 874 msecs per iteration (total: 874, iterations: 1) PASS : QCoreApplicationBenchmark::signal_slot_benchmark() PASS : QCoreApplicationBenchmark::cleanupTestCase() Totals: 3 passed, 0 failed, 0 skipped ********* Finished testing of QCoreApplicationBenchmark ********* after: ********* Start testing of QCoreApplicationBenchmark ********* Config: Using QTest library 5.0.0, Qt 5.0.0 PASS : QCoreApplicationBenchmark::initTestCase() RESULT : QCoreApplicationBenchmark::event_posting_benchmark():"1000 events": 0.781 msecs per iteration (total: 100, iterations: 128) RESULT : QCoreApplicationBenchmark::event_posting_benchmark():"10000 events": 7.8 msecs per iteration (total: 63, iterations: 8) RESULT : QCoreApplicationBenchmark::event_posting_benchmark():"100000 events": 75 msecs per iteration (total: 75, iterations: 1) RESULT : QCoreApplicationBenchmark::event_posting_benchmark():"1000000 events": 774 msecs per iteration (total: 774, iterations: 1) PASS : QCoreApplicationBenchmark::event_posting_benchmark() PASS : QCoreApplicationBenchmark::cleanupTestCase() Totals: 3 passed, 0 failed, 0 skipped ********* Finished testing of QCoreApplicationBenchmark ********* Change-Id: Ibf56d9526b0a8cbaf171008da4104bb457628172 Reviewed-by: Sergio Ahumada --- src/corelib/kernel/qcoreapplication.cpp | 15 +++- src/corelib/thread/qthread_p.h | 14 ++-- tests/benchmarks/corelib/kernel/kernel.pro | 3 +- .../corelib/kernel/qcoreapplication/main.cpp | 82 ++++++++++++++++++++++ .../kernel/qcoreapplication/qcoreapplication.pro | 9 +++ 5 files changed, 114 insertions(+), 9 deletions(-) create mode 100644 tests/benchmarks/corelib/kernel/qcoreapplication/main.cpp create mode 100644 tests/benchmarks/corelib/kernel/qcoreapplication/qcoreapplication.pro diff --git a/src/corelib/kernel/qcoreapplication.cpp b/src/corelib/kernel/qcoreapplication.cpp index 6f26be2928..e105100e3e 100644 --- a/src/corelib/kernel/qcoreapplication.cpp +++ b/src/corelib/kernel/qcoreapplication.cpp @@ -1405,9 +1405,18 @@ void QCoreApplicationPrivate::sendPostedEvents(QObject *receiver, int event_type if (!allowDeferredDelete) { // cannot send deferred delete if (!event_type && !receiver) { - // don't lose the event - data->postEventList.addEvent(pe); + // we must copy it first; we want to re-post the event + // with the event pointer intact, but we can't delay + // nulling the event ptr until after re-posting, as + // addEvent may invalidate pe. + QPostEvent pe_copy = pe; + + // null out the event so if sendPostedEvents recurses, it + // will ignore this one, as it's been re-posted. const_cast(pe).event = 0; + + // re-post the copied event so it isn't lost + data->postEventList.addEvent(pe_copy); } continue; } @@ -1509,7 +1518,7 @@ void QCoreApplication::removePostedEvents(QObject *receiver, int eventType) const_cast(pe).event = 0; } else if (!data->postEventList.recursion) { if (i != j) - data->postEventList.swap(i, j); + qSwap(data->postEventList[i], data->postEventList[j]); ++j; } } diff --git a/src/corelib/thread/qthread_p.h b/src/corelib/thread/qthread_p.h index bbaf664a2d..8be9f134ae 100644 --- a/src/corelib/thread/qthread_p.h +++ b/src/corelib/thread/qthread_p.h @@ -81,6 +81,8 @@ public: : receiver(r), event(e), priority(p) { } }; +Q_DECLARE_TYPEINFO(QPostEvent, Q_MOVABLE_TYPE); + inline bool operator<(int priority, const QPostEvent &pe) { return pe.priority < priority; @@ -92,7 +94,7 @@ inline bool operator<(const QPostEvent &pe, int priority) // This class holds the list of posted events. // The list has to be kept sorted by priority -class QPostEventList : public QList +class QPostEventList : public QVector { public: // recursion == recursion count for sendPostedEvents() @@ -106,12 +108,14 @@ public: QMutex mutex; inline QPostEventList() - : QList(), recursion(0), startOffset(0), insertionOffset(0) + : QVector(), recursion(0), startOffset(0), insertionOffset(0) { } void addEvent(const QPostEvent &ev) { int priority = ev.priority; - if (isEmpty() || last().priority >= priority) { + if (isEmpty() || + last().priority >= priority || + begin() + insertionOffset >= end()) { // optimization: we can simply append if the last event in // the queue has higher or equal priority append(ev); @@ -125,8 +129,8 @@ public: } private: //hides because they do not keep that list sorted. addEvent must be used - using QList::append; - using QList::insert; + using QVector::append; + using QVector::insert; }; #ifndef QT_NO_THREAD diff --git a/tests/benchmarks/corelib/kernel/kernel.pro b/tests/benchmarks/corelib/kernel/kernel.pro index da3f0d609f..8b7d8c8f90 100644 --- a/tests/benchmarks/corelib/kernel/kernel.pro +++ b/tests/benchmarks/corelib/kernel/kernel.pro @@ -4,4 +4,5 @@ SUBDIRS = \ qmetaobject \ qmetatype \ qobject \ - qvariant + qvariant \ + qcoreapplication diff --git a/tests/benchmarks/corelib/kernel/qcoreapplication/main.cpp b/tests/benchmarks/corelib/kernel/qcoreapplication/main.cpp new file mode 100644 index 0000000000..e1e4e2cc9a --- /dev/null +++ b/tests/benchmarks/corelib/kernel/qcoreapplication/main.cpp @@ -0,0 +1,82 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Robin Burchell +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +#include +#include +#include + +class QCoreApplicationBenchmark : public QObject +{ +Q_OBJECT +private slots: + void event_posting_benchmark_data(); + void event_posting_benchmark(); +}; + +void QCoreApplicationBenchmark::event_posting_benchmark_data() +{ + QTest::addColumn("size"); + QTest::newRow("50 events") << 50; + QTest::newRow("100 events") << 100; + QTest::newRow("200 events") << 200; + QTest::newRow("1000 events") << 1000; + QTest::newRow("10000 events") << 10000; + QTest::newRow("100000 events") << 100000; + QTest::newRow("1000000 events") << 1000000; +} + +void QCoreApplicationBenchmark::event_posting_benchmark() +{ + QFETCH(int, size); + + int type = QEvent::registerEventType(); + QCoreApplication *app = QCoreApplication::instance(); + + // benchmark posting & sending events + QBENCHMARK { + for (int i = 0; i < size; ++i) + QCoreApplication::postEvent(app, new QEvent(QEvent::Type(type))); + QCoreApplication::sendPostedEvents(); + } +} + +QTEST_MAIN(QCoreApplicationBenchmark) + +#include "main.moc" diff --git a/tests/benchmarks/corelib/kernel/qcoreapplication/qcoreapplication.pro b/tests/benchmarks/corelib/kernel/qcoreapplication/qcoreapplication.pro new file mode 100644 index 0000000000..2c29fafca4 --- /dev/null +++ b/tests/benchmarks/corelib/kernel/qcoreapplication/qcoreapplication.pro @@ -0,0 +1,9 @@ +QT += testlib + +TEMPLATE = app +TARGET = tst_bench_qcoreapplication +DEPENDPATH += . +INCLUDEPATH += . + +# Input +SOURCES += main.cpp -- cgit v1.2.3 From dce0563b27269bb01b5d0bcc79066e95e4447ef6 Mon Sep 17 00:00:00 2001 From: Sergio Ahumada Date: Sun, 1 Jan 2012 14:36:09 +0100 Subject: Unbreak cross-compilation to ARM. v8snapshot is not required to build V8 Change-Id: I75f728a1237acaac9d3a10a87673fb2b6dd2dc91 Reviewed-by: Thiago Macieira --- src/src.pro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/src.pro b/src/src.pro index 0f7a380984..04e3688900 100644 --- a/src/src.pro +++ b/src/src.pro @@ -65,7 +65,7 @@ src_platformsupport.target = sub-platformsupport src_declarative.depends += src_opengl src_webkit.depends += src_opengl } - src_v8.depends += src_tools_mkv8snapshot + contains(QT_CONFIG, v8snapshot):src_v8.depends += src_tools_mkv8snapshot } -- cgit v1.2.3 From 628d3f85d2d06e25851684aede396fd1b0a12db9 Mon Sep 17 00:00:00 2001 From: Sergio Ahumada Date: Sun, 1 Jan 2012 21:24:28 +0100 Subject: tests: use contains(QT_CONFIG,private_tests) consistently These tests used requires(contains(QT_CONFIG,private_tests)) in their .pro file, but did not subtract themselves from their parent project SUBDIRS when private_tests weren't enabled. In the best case, this wastes a little time as qmake iterates over these projects which won't be built. In some worse esoteric cases, this may break compilation or packaging. Change-Id: If36b1b8f69c3509128786fec67899ae18ffaa2bc Reviewed-by: Toby Tomkins Reviewed-by: Thiago Macieira --- tests/auto/network/socket/socket.pro | 9 ++++----- tests/auto/network/ssl/ssl.pro | 5 +++++ 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/tests/auto/network/socket/socket.pro b/tests/auto/network/socket/socket.pro index 49fb52d1a5..426dca2277 100644 --- a/tests/auto/network/socket/socket.pro +++ b/tests/auto/network/socket/socket.pro @@ -10,8 +10,7 @@ SUBDIRS=\ platformsocketengine \ !contains(QT_CONFIG, private_tests): SUBDIRS -= \ - platformsocketengine \ - qhttpsocketengine \ - qsocks5socketengine \ - - + platformsocketengine \ + qtcpsocket \ + qhttpsocketengine \ + qsocks5socketengine \ diff --git a/tests/auto/network/ssl/ssl.pro b/tests/auto/network/ssl/ssl.pro index dd92ec0358..294caeba5a 100644 --- a/tests/auto/network/ssl/ssl.pro +++ b/tests/auto/network/ssl/ssl.pro @@ -7,3 +7,8 @@ SUBDIRS=\ qsslsocket \ qsslsocket_onDemandCertificates_member \ qsslsocket_onDemandCertificates_static \ + +!contains(QT_CONFIG, private_tests): SUBDIRS -= \ + qsslsocket \ + qsslsocket_onDemandCertificates_member \ + qsslsocket_onDemandCertificates_static \ -- cgit v1.2.3 From 05ca21411eaaf3ea5e9cc9d82ecfaa8753f9f319 Mon Sep 17 00:00:00 2001 From: David Faure Date: Thu, 22 Dec 2011 19:02:34 +0100 Subject: Handle -1 (Invalid Key) and Qt::Key_unknown gracefully in encodeString. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Previously they would fall into the unicode handling and return very strange values. Change-Id: I62a53894c0983bf53fd79f924b40a6fd3ba02993 Reviewed-by: Morten Johan Sørvig --- src/gui/kernel/qkeysequence.cpp | 5 +++++ .../gui/kernel/qkeysequence/tst_qkeysequence.cpp | 20 ++++++++++++++++++++ 2 files changed, 25 insertions(+) diff --git a/src/gui/kernel/qkeysequence.cpp b/src/gui/kernel/qkeysequence.cpp index 9c0b07c64e..c17d41ba6f 100644 --- a/src/gui/kernel/qkeysequence.cpp +++ b/src/gui/kernel/qkeysequence.cpp @@ -1342,6 +1342,11 @@ QString QKeySequencePrivate::encodeString(int key, QKeySequence::SequenceFormat { bool nativeText = (format == QKeySequence::NativeText); QString s; + + // Handle -1 (Invalid Key) and Qt::Key_unknown gracefully + if (key == -1 || key == Qt::Key_unknown) + return s; + #if defined(Q_OS_MAC) if (nativeText) { // On Mac OS X the order (by default) is Meta, Alt, Shift, Control. diff --git a/tests/auto/gui/kernel/qkeysequence/tst_qkeysequence.cpp b/tests/auto/gui/kernel/qkeysequence/tst_qkeysequence.cpp index 9845b388b4..f8eae2067e 100644 --- a/tests/auto/gui/kernel/qkeysequence/tst_qkeysequence.cpp +++ b/tests/auto/gui/kernel/qkeysequence/tst_qkeysequence.cpp @@ -122,6 +122,8 @@ private slots: void mnemonic(); void toString_data(); void toString(); + void toStringFromKeycode_data(); + void toStringFromKeycode(); void streamOperators_data(); void streamOperators(); void parseString_data(); @@ -476,6 +478,24 @@ void tst_QKeySequence::toString() } +void tst_QKeySequence::toStringFromKeycode_data() +{ + QTest::addColumn("keycode"); + QTest::addColumn("expectedString"); + + QTest::newRow("A") << QKeySequence(Qt::Key_A) << "A"; + QTest::newRow("-1") << QKeySequence(-1) << ""; + QTest::newRow("Unknown") << QKeySequence(Qt::Key_unknown) << ""; +} + +void tst_QKeySequence::toStringFromKeycode() +{ + QFETCH(QKeySequence, keycode); + QFETCH(QString, expectedString); + + QCOMPARE(QKeySequence(keycode).toString(), expectedString); +} + void tst_QKeySequence::streamOperators_data() { operatorQString_data(); -- cgit v1.2.3 From ef60ed1c9dbc87d9f8401036cc254a9c45cd8ca8 Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Wed, 21 Dec 2011 11:32:43 +0100 Subject: Add Qt::TimerType and the QTimer::timerType property The timer type will control the accuracy of the timer. By default, all timers are CoarseTimers, which allows for +/- 5% interval adjustment. PreciseTimers will not have any interval adjustments, VeryCoarseTimers will have intervals adjusted to full second resolution. Use QTimer::setTimerType() or the QTimer::singleShot() overload to specify the type. QObject::startTimer() now takes a Qt::TimerType argument which defaults to Qt::CoarseTimer. QBasicTimer::startTimer() gets an overload that takes a Qt::TimerType argument. The argument is unused for now, since the QAbstractEventDispatcher interface needs to change (done in a separate commit). Author: Thiago Macieira Change-Id: I3100da5aa1fe17ec30b8644897d0fe6ec4a07f52 Reviewed-by: Thiago Macieira --- src/corelib/global/qnamespace.h | 7 +++++++ src/corelib/global/qnamespace.qdoc | 10 +++++++++ src/corelib/kernel/qbasictimer.cpp | 19 ++++++++++++++++- src/corelib/kernel/qbasictimer.h | 2 ++ src/corelib/kernel/qobject.cpp | 12 ++++++----- src/corelib/kernel/qobject.h | 2 +- src/corelib/kernel/qtimer.cpp | 43 +++++++++++++++++++++++++++++++------- src/corelib/kernel/qtimer.h | 7 +++++++ 8 files changed, 87 insertions(+), 15 deletions(-) diff --git a/src/corelib/global/qnamespace.h b/src/corelib/global/qnamespace.h index 4c0b9cc635..1927323ea7 100644 --- a/src/corelib/global/qnamespace.h +++ b/src/corelib/global/qnamespace.h @@ -97,6 +97,7 @@ Qt { Q_ENUMS(GestureType) #endif Q_ENUMS(CursorMoveStyle) + Q_ENUMS(TimerType) #endif // defined(Q_MOC_RUN) #if defined(Q_MOC_RUN) @@ -1527,6 +1528,12 @@ public: LogicalMoveStyle, VisualMoveStyle }; + + enum TimerType { + PreciseTimer, + CoarseTimer, + VeryCoarseTimer + }; } #ifdef Q_MOC_RUN ; diff --git a/src/corelib/global/qnamespace.qdoc b/src/corelib/global/qnamespace.qdoc index 4abe981b59..20ae1baa80 100644 --- a/src/corelib/global/qnamespace.qdoc +++ b/src/corelib/global/qnamespace.qdoc @@ -2865,3 +2865,13 @@ \sa QApplication::setNavigationMode() \sa QApplication::navigationMode() */ + +/*! + \enum Qt::TimerType + + The timer type indicates how accurate a timer can be. + + \value PreciseTimer Precise timers try to keep millisecond accuracy + \value CoarseTimer Coarse timers try to keep accuracy within 5% of the desired interval + \value VeryCoarseTimer Very coarse timers only keep full second accuracy +*/ diff --git a/src/corelib/kernel/qbasictimer.cpp b/src/corelib/kernel/qbasictimer.cpp index 8efeea6fae..d91c5a9ffe 100644 --- a/src/corelib/kernel/qbasictimer.cpp +++ b/src/corelib/kernel/qbasictimer.cpp @@ -40,7 +40,6 @@ ****************************************************************************/ #include "qbasictimer.h" -#include "qcoreapplication.h" #include "qabstracteventdispatcher.h" QT_BEGIN_NAMESPACE @@ -120,6 +119,24 @@ void QBasicTimer::start(int msec, QObject *obj) id = obj->startTimer(msec); } +/*! + \overload + + Starts (or restarts) the timer with a \a msec milliseconds timeout and the + given \a timerType. See Qt::TimerType for information on the different + timer types. + + The given \a object will receive timer events. + + \sa stop() isActive() QObject::timerEvent() Qt::TimerType + */ +void QBasicTimer::start(int msec, Qt::TimerType timerType, QObject *obj) +{ + stop(); + if (obj) + id = obj->startTimer(msec, timerType); +} + /*! Stops the timer. diff --git a/src/corelib/kernel/qbasictimer.h b/src/corelib/kernel/qbasictimer.h index f13848cb85..ae5401e99c 100644 --- a/src/corelib/kernel/qbasictimer.h +++ b/src/corelib/kernel/qbasictimer.h @@ -43,6 +43,7 @@ #define QBASICTIMER_H #include +#include QT_BEGIN_HEADER @@ -63,6 +64,7 @@ public: inline int timerId() const { return id; } void start(int msec, QObject *obj); + void start(int msec, Qt::TimerType timerType, QObject *obj); void stop(); }; Q_DECLARE_TYPEINFO(QBasicTimer, Q_MOVABLE_TYPE); diff --git a/src/corelib/kernel/qobject.cpp b/src/corelib/kernel/qobject.cpp index 4e8d2fc265..8db8aceced 100644 --- a/src/corelib/kernel/qobject.cpp +++ b/src/corelib/kernel/qobject.cpp @@ -1358,10 +1358,12 @@ void QObjectPrivate::_q_reregisterTimers(void *pointer) \snippet doc/src/snippets/code/src_corelib_kernel_qobject.cpp 8 - Note that QTimer's accuracy depends on the underlying operating - system and hardware. Most platforms support an accuracy of 20 - milliseconds; some provide more. If Qt is unable to deliver the - requested number of timer events, it will silently discard some. + Note that QTimer's accuracy depends on the underlying operating system and + hardware. The \a timerType argument allows you to customize the accuracy of + the timer. See Qt::TimerType for information on the different timer types. + Most platforms support an accuracy of 20 milliseconds; some provide more. + If Qt is unable to deliver the requested number of timer events, it will + silently discard some. The QTimer class provides a high-level programming interface with single-shot timers and timer signals instead of events. There is @@ -1371,7 +1373,7 @@ void QObjectPrivate::_q_reregisterTimers(void *pointer) \sa timerEvent(), killTimer(), QTimer::singleShot() */ -int QObject::startTimer(int interval) +int QObject::startTimer(int interval, Qt::TimerType timerType) { Q_D(QObject); diff --git a/src/corelib/kernel/qobject.h b/src/corelib/kernel/qobject.h index 3ca2e2213d..a5ac8feafd 100644 --- a/src/corelib/kernel/qobject.h +++ b/src/corelib/kernel/qobject.h @@ -150,7 +150,7 @@ public: QThread *thread() const; void moveToThread(QThread *thread); - int startTimer(int interval); + int startTimer(int interval, Qt::TimerType timerType = Qt::CoarseTimer); void killTimer(int id); template diff --git a/src/corelib/kernel/qtimer.cpp b/src/corelib/kernel/qtimer.cpp index 9be661e42f..e89abade2c 100644 --- a/src/corelib/kernel/qtimer.cpp +++ b/src/corelib/kernel/qtimer.cpp @@ -134,7 +134,6 @@ QT_BEGIN_NAMESPACE {Analog Clock Example}, {Wiggly Example} */ - static const int INV_TIMER = -1; // invalid timer id /*! @@ -142,7 +141,7 @@ static const int INV_TIMER = -1; // invalid timer id */ QTimer::QTimer(QObject *parent) - : QObject(parent), id(INV_TIMER), inter(0), del(0), single(0), nulltimer(0) + : QObject(parent), id(INV_TIMER), inter(0), del(0), single(0), nulltimer(0), type(Qt::CoarseTimer) { } @@ -203,7 +202,7 @@ void QTimer::start() if (id != INV_TIMER) // stop running timer stop(); nulltimer = (!inter && single); - id = QObject::startTimer(inter); + id = QObject::startTimer(inter, Qt::TimerType(type)); } /*! @@ -257,18 +256,18 @@ class QSingleShotTimer : public QObject int timerId; public: ~QSingleShotTimer(); - QSingleShotTimer(int msec, QObject *r, const char * m); + QSingleShotTimer(int msec, Qt::TimerType timerType, QObject *r, const char * m); Q_SIGNALS: void timeout(); protected: void timerEvent(QTimerEvent *); }; -QSingleShotTimer::QSingleShotTimer(int msec, QObject *receiver, const char *member) +QSingleShotTimer::QSingleShotTimer(int msec, Qt::TimerType timerType, QObject *receiver, const char *member) : QObject(QAbstractEventDispatcher::instance()) { connect(this, SIGNAL(timeout()), receiver, member); - timerId = startTimer(msec); + timerId = startTimer(msec, timerType); } QSingleShotTimer::~QSingleShotTimer() @@ -317,6 +316,25 @@ QT_END_INCLUDE_NAMESPACE */ void QTimer::singleShot(int msec, QObject *receiver, const char *member) +{ + singleShot(msec, Qt::CoarseTimer, receiver, member); +} + +/*! \overload + \reentrant + This static function calls a slot after a given time interval. + + It is very convenient to use this function because you do not need + to bother with a \link QObject::timerEvent() timerEvent\endlink or + create a local QTimer object. + + The \a receiver is the receiving object and the \a member is the slot. The + time interval is \a msec milliseconds. The \a timerType affects the + accuracy of the timer. + + \sa start() +*/ +void QTimer::singleShot(int msec, Qt::TimerType timerType, QObject *receiver, const char *member) { if (receiver && member) { if (msec == 0) { @@ -330,7 +348,7 @@ void QTimer::singleShot(int msec, QObject *receiver, const char *member) QMetaObject::invokeMethod(receiver, methodName.constData(), Qt::QueuedConnection); return; } - (void) new QSingleShotTimer(msec, receiver, member); + (void) new QSingleShotTimer(msec, timerType, receiver, member); } } @@ -361,8 +379,17 @@ void QTimer::setInterval(int msec) inter = msec; if (id != INV_TIMER) { // create new timer QObject::killTimer(id); // restart timer - id = QObject::startTimer(msec); + id = QObject::startTimer(msec, Qt::TimerType(type)); } } +/*! + \property QTimer::timerType + \brief controls the accuracy of the timer + + The default value for this property is \c Qt::CoarseTimer. + + \sa Qt::TimerType +*/ + QT_END_NAMESPACE diff --git a/src/corelib/kernel/qtimer.h b/src/corelib/kernel/qtimer.h index 707bc83d3c..5b7dbd1b36 100644 --- a/src/corelib/kernel/qtimer.h +++ b/src/corelib/kernel/qtimer.h @@ -58,6 +58,7 @@ class Q_CORE_EXPORT QTimer : public QObject Q_OBJECT Q_PROPERTY(bool singleShot READ isSingleShot WRITE setSingleShot) Q_PROPERTY(int interval READ interval WRITE setInterval) + Q_PROPERTY(Qt::TimerType timerType READ timerType WRITE setTimerType) Q_PROPERTY(bool active READ isActive) public: explicit QTimer(QObject *parent = 0); @@ -69,10 +70,14 @@ public: void setInterval(int msec); int interval() const { return inter; } + void setTimerType(Qt::TimerType type) { this->type = type; } + Qt::TimerType timerType() const { return Qt::TimerType(type); } + inline void setSingleShot(bool singleShot); inline bool isSingleShot() const { return single; } static void singleShot(int msec, QObject *receiver, const char *member); + static void singleShot(int msec, Qt::TimerType timerType, QObject *receiver, const char *member); public Q_SLOTS: void start(int msec); @@ -95,6 +100,8 @@ private: int id, inter, del; uint single : 1; uint nulltimer : 1; + uint type : 2; + // reserved : 28 }; inline void QTimer::setSingleShot(bool asingleShot) { single = asingleShot; } -- cgit v1.2.3 From 2bbf9befd8879dcfca9f48ac9ac13daf40f48847 Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Wed, 21 Dec 2011 11:33:33 +0100 Subject: Add Qt::TimerType argument to QAbstractEventDispatcher::registerTimer() ... and deprecate the old registerTimer() functions. The new pure- virtual registerTimer() breaks source-compatibility. Subclasses cannot be instantiated anymore, since the pure virtual function signature has changed. QAbstractEventDispatcher::TimerInfo is no longer a QPair. It is now a struct with timerId, interval, and timerType members. This is a source incompatibility that should only affect subclasses of QAbstractEventDispatcher, which will need to pass 3 arguments to the TimerInfo constructor instead of 2. If the subclass used QPair instead of the TimerInfo typedef, the QPair declarations will need to be replaced with TimerInfo. Call the new registerTimer() function with the type from QObject::startTimer(). Change all subclasses of QAbstractEventDispatcher to reimplement the new virtual function. The type argument is unused at the momemnt, except to ensure that registeredTimers() returns the type each timer was registered with. Implementations for the various dispatchers will be done in separate commits. Author: Thiago Macieira Change-Id: Ia22697e0ab0847810c5d162ef473e0e5a17a904b Reviewed-by: Thiago Macieira --- dist/changes-5.0.0 | 12 ++++++++ src/corelib/kernel/qabstracteventdispatcher.cpp | 35 +++++++++++++++++----- src/corelib/kernel/qabstracteventdispatcher.h | 22 +++++++++++--- src/corelib/kernel/qeventdispatcher_glib.cpp | 4 +-- src/corelib/kernel/qeventdispatcher_glib_p.h | 2 +- src/corelib/kernel/qeventdispatcher_unix.cpp | 4 +-- src/corelib/kernel/qeventdispatcher_unix_p.h | 2 +- src/corelib/kernel/qeventdispatcher_win.cpp | 5 ++-- src/corelib/kernel/qeventdispatcher_win_p.h | 3 +- src/corelib/kernel/qobject.cpp | 12 ++++---- src/corelib/kernel/qtimerinfo_unix.cpp | 9 +++--- src/corelib/kernel/qtimerinfo_unix_p.h | 9 +++--- .../platforms/cocoa/qcocoaeventdispatcher.h | 3 +- .../platforms/cocoa/qcocoaeventdispatcher.mm | 5 ++-- .../qcoreapplication/tst_qcoreapplication.cpp | 2 +- tests/auto/corelib/thread/qthread/tst_qthread.cpp | 2 +- .../tst_benchlibeventcounter.cpp | 3 +- .../benchliboptions/tst_benchliboptions.cpp | 3 +- 18 files changed, 92 insertions(+), 45 deletions(-) diff --git a/dist/changes-5.0.0 b/dist/changes-5.0.0 index 159ef73341..7f253a6036 100644 --- a/dist/changes-5.0.0 +++ b/dist/changes-5.0.0 @@ -123,6 +123,18 @@ information about a particular change. - The previously exported function qt_translateRawTouchEvent() has been removed. Use QWindowSystemInterface::handleTouchEvent() instead. +- QAbstractEventDispatcher + + * The signature for the pure-virtual registerTimer() has changed. Subclasses + of QAbstractEventDispatcher will need to be updated to reimplement the new + pure-virtual 'virtual void registerTimer(int timerId, int interval, + Qt::TimerType timerType, QObject *object) = 0;' + + * QAbstractEventDispatcher::TimerInfo is no longer a QPair. It is + now a struct with 3 members: struct TimerInfo { int timerId; int interval; + Qt::TimerType timerType; }; Reimplementations of + QAbstractEventDispatcher::registeredTimers() will need to be updated to pass + 3 arguments to the TimerInfo constructor (instead of 2). **************************************************************************** * General * diff --git a/src/corelib/kernel/qabstracteventdispatcher.cpp b/src/corelib/kernel/qabstracteventdispatcher.cpp index b936ac4ed2..910b2908f1 100644 --- a/src/corelib/kernel/qabstracteventdispatcher.cpp +++ b/src/corelib/kernel/qabstracteventdispatcher.cpp @@ -230,22 +230,39 @@ QAbstractEventDispatcher *QAbstractEventDispatcher::instance(QThread *thread) */ /*! + \obsolete + \fn int QAbstractEventDispatcher::registerTimer(int interval, QObject *object) - Registers a timer with the specified \a interval for the given \a object. + Registers a timer with the specified \a interval for the given \a object + and returns the timer id. +*/ + +/*! + \obsolete + + \fn void QAbstractEventDispatcher::registerTimer(int timerId, int interval, QObject *object) + + Register a timer with the specified \a timerId and \a interval for the + given \a object. +*/ + +/*! + Registers a timer with the specified \a interval and \a timerType for the + given \a object and returns the timer id. */ -int QAbstractEventDispatcher::registerTimer(int interval, QObject *object) +int QAbstractEventDispatcher::registerTimer(int interval, Qt::TimerType timerType, QObject *object) { int id = QAbstractEventDispatcherPrivate::allocateTimerId(); - registerTimer(id, interval, object); + registerTimer(id, interval, timerType, object); return id; } /*! - \fn void QAbstractEventDispatcher::registerTimer(int timerId, int interval, QObject *object) + \fn void QAbstractEventDispatcher::registerTimer(int timerId, int interval, Qt::TimerType timerType, QObject *object) - Register a timer with the specified \a timerId and \a interval for - the given \a object. + Register a timer with the specified \a timerId, \a interval, and \a + timerType for the given \a object. */ /*! @@ -269,8 +286,10 @@ int QAbstractEventDispatcher::registerTimer(int interval, QObject *object) /*! \fn QList QAbstractEventDispatcher::registeredTimers(QObject *object) const - Returns a list of registered timers for \a object. The timer ID - is the first member in each pair; the interval is the second. + Returns a list of registered timers for \a object. The TimerInfo struct has + \c timerId, \c interval, and \c timerType members. + + \sa Qt::TimerType */ /*! \fn void QAbstractEventDispatcher::wakeUp() diff --git a/src/corelib/kernel/qabstracteventdispatcher.h b/src/corelib/kernel/qabstracteventdispatcher.h index 36bd1be368..0add7bc71a 100644 --- a/src/corelib/kernel/qabstracteventdispatcher.h +++ b/src/corelib/kernel/qabstracteventdispatcher.h @@ -53,7 +53,6 @@ QT_MODULE(Core) class QAbstractEventDispatcherPrivate; class QSocketNotifier; -template struct QPair; class Q_CORE_EXPORT QAbstractEventDispatcher : public QObject { @@ -61,7 +60,16 @@ class Q_CORE_EXPORT QAbstractEventDispatcher : public QObject Q_DECLARE_PRIVATE(QAbstractEventDispatcher) public: - typedef QPair TimerInfo; + struct TimerInfo + { + int timerId; + int interval; + Qt::TimerType timerType; + + inline TimerInfo(int id, int i, Qt::TimerType t) + : timerId(id), interval(i), timerType(t) + { } + }; explicit QAbstractEventDispatcher(QObject *parent = 0); ~QAbstractEventDispatcher(); @@ -74,8 +82,14 @@ public: virtual void registerSocketNotifier(QSocketNotifier *notifier) = 0; virtual void unregisterSocketNotifier(QSocketNotifier *notifier) = 0; - int registerTimer(int interval, QObject *object); - virtual void registerTimer(int timerId, int interval, QObject *object) = 0; +#if QT_DEPRECATED_SINCE(5,0) + QT_DEPRECATED inline int registerTimer(int interval, QObject *object) + { return registerTimer(interval, Qt::CoarseTimer, object); } + QT_DEPRECATED inline void registerTimer(int timerId, int interval, QObject *object) + { registerTimer(timerId, interval, Qt::CoarseTimer, object); } +#endif + int registerTimer(int interval, Qt::TimerType timerType, QObject *object); + virtual void registerTimer(int timerId, int interval, Qt::TimerType timerType, QObject *object) = 0; virtual bool unregisterTimer(int timerId) = 0; virtual bool unregisterTimers(QObject *object) = 0; virtual QList registeredTimers(QObject *object) const = 0; diff --git a/src/corelib/kernel/qeventdispatcher_glib.cpp b/src/corelib/kernel/qeventdispatcher_glib.cpp index 0773915391..261d8d3b4c 100644 --- a/src/corelib/kernel/qeventdispatcher_glib.cpp +++ b/src/corelib/kernel/qeventdispatcher_glib.cpp @@ -509,7 +509,7 @@ void QEventDispatcherGlib::unregisterSocketNotifier(QSocketNotifier *notifier) } } -void QEventDispatcherGlib::registerTimer(int timerId, int interval, QObject *object) +void QEventDispatcherGlib::registerTimer(int timerId, int interval, Qt::TimerType timerType, QObject *object) { #ifndef QT_NO_DEBUG if (timerId < 1 || interval < 0 || !object) { @@ -522,7 +522,7 @@ void QEventDispatcherGlib::registerTimer(int timerId, int interval, QObject *obj #endif Q_D(QEventDispatcherGlib); - d->timerSource->timerList.registerTimer(timerId, interval, object); + d->timerSource->timerList.registerTimer(timerId, interval, timerType, object); } bool QEventDispatcherGlib::unregisterTimer(int timerId) diff --git a/src/corelib/kernel/qeventdispatcher_glib_p.h b/src/corelib/kernel/qeventdispatcher_glib_p.h index 419f2f3dc0..1c3b7e8645 100644 --- a/src/corelib/kernel/qeventdispatcher_glib_p.h +++ b/src/corelib/kernel/qeventdispatcher_glib_p.h @@ -80,7 +80,7 @@ public: void registerSocketNotifier(QSocketNotifier *socketNotifier); void unregisterSocketNotifier(QSocketNotifier *socketNotifier); - void registerTimer(int timerId, int interval, QObject *object); + void registerTimer(int timerId, int interval, Qt::TimerType timerType, QObject *object); bool unregisterTimer(int timerId); bool unregisterTimers(QObject *object); QList registeredTimers(QObject *object) const; diff --git a/src/corelib/kernel/qeventdispatcher_unix.cpp b/src/corelib/kernel/qeventdispatcher_unix.cpp index 3420990969..4b61667710 100644 --- a/src/corelib/kernel/qeventdispatcher_unix.cpp +++ b/src/corelib/kernel/qeventdispatcher_unix.cpp @@ -330,7 +330,7 @@ int QEventDispatcherUNIX::select(int nfds, fd_set *readfds, fd_set *writefds, fd /*! \internal */ -void QEventDispatcherUNIX::registerTimer(int timerId, int interval, QObject *obj) +void QEventDispatcherUNIX::registerTimer(int timerId, int interval, Qt::TimerType timerType, QObject *obj) { #ifndef QT_NO_DEBUG if (timerId < 1 || interval < 0 || !obj) { @@ -343,7 +343,7 @@ void QEventDispatcherUNIX::registerTimer(int timerId, int interval, QObject *obj #endif Q_D(QEventDispatcherUNIX); - d->timerList.registerTimer(timerId, interval, obj); + d->timerList.registerTimer(timerId, interval, timerType, obj); } /*! diff --git a/src/corelib/kernel/qeventdispatcher_unix_p.h b/src/corelib/kernel/qeventdispatcher_unix_p.h index e96be68db8..07cbf92d6a 100644 --- a/src/corelib/kernel/qeventdispatcher_unix_p.h +++ b/src/corelib/kernel/qeventdispatcher_unix_p.h @@ -111,7 +111,7 @@ public: void registerSocketNotifier(QSocketNotifier *notifier); void unregisterSocketNotifier(QSocketNotifier *notifier); - void registerTimer(int timerId, int interval, QObject *object); + void registerTimer(int timerId, int interval, Qt::TimerType timerType, QObject *object); bool unregisterTimer(int timerId); bool unregisterTimers(QObject *object); QList registeredTimers(QObject *object) const; diff --git a/src/corelib/kernel/qeventdispatcher_win.cpp b/src/corelib/kernel/qeventdispatcher_win.cpp index afee536d02..58a927969c 100644 --- a/src/corelib/kernel/qeventdispatcher_win.cpp +++ b/src/corelib/kernel/qeventdispatcher_win.cpp @@ -859,7 +859,7 @@ void QEventDispatcherWin32::unregisterSocketNotifier(QSocketNotifier *notifier) d->doWsaAsyncSelect(sockfd); } -void QEventDispatcherWin32::registerTimer(int timerId, int interval, QObject *object) +void QEventDispatcherWin32::registerTimer(int timerId, int interval, Qt::TimerType timerType, QObject *object) { if (timerId < 1 || interval < 0 || !object) { qWarning("QEventDispatcherWin32::registerTimer: invalid arguments"); @@ -875,6 +875,7 @@ void QEventDispatcherWin32::registerTimer(int timerId, int interval, QObject *ob t->dispatcher = this; t->timerId = timerId; t->interval = interval; + t->timerType = timerType; t->obj = object; t->inTimerEvent = false; t->fastTimerId = 0; @@ -953,7 +954,7 @@ QEventDispatcherWin32::registeredTimers(QObject *object) const for (int i = 0; i < d->timerVec.size(); ++i) { const WinTimerInfo *t = d->timerVec.at(i); if (t && t->obj == object) - list << TimerInfo(t->timerId, t->interval); + list << TimerInfo(t->timerId, t->interval, t->timerType); } return list; } diff --git a/src/corelib/kernel/qeventdispatcher_win_p.h b/src/corelib/kernel/qeventdispatcher_win_p.h index 4a7aac0c04..300449d6cf 100644 --- a/src/corelib/kernel/qeventdispatcher_win_p.h +++ b/src/corelib/kernel/qeventdispatcher_win_p.h @@ -84,7 +84,7 @@ public: void registerSocketNotifier(QSocketNotifier *notifier); void unregisterSocketNotifier(QSocketNotifier *notifier); - void registerTimer(int timerId, int interval, QObject *object); + void registerTimer(int timerId, int interval, Qt::TimerType timerType, QObject *object); bool unregisterTimer(int timerId); bool unregisterTimers(QObject *object); QList registeredTimers(QObject *object) const; @@ -120,6 +120,7 @@ struct WinTimerInfo { // internal timer info QObject *dispatcher; int timerId; int interval; + Qt::TimerType timerType; QObject *obj; // - object to receive events bool inTimerEvent; int fastTimerId; diff --git a/src/corelib/kernel/qobject.cpp b/src/corelib/kernel/qobject.cpp index 8db8aceced..db2ab4218d 100644 --- a/src/corelib/kernel/qobject.cpp +++ b/src/corelib/kernel/qobject.cpp @@ -1017,7 +1017,7 @@ bool QObject::event(QEvent *e) QThreadData *threadData = d->threadData; QAbstractEventDispatcher *eventDispatcher = threadData->eventDispatcher; if (eventDispatcher) { - QList > timers = eventDispatcher->registeredTimers(this); + QList timers = eventDispatcher->registeredTimers(this); if (!timers.isEmpty()) { // set inThreadChangeEvent to true to tell the dispatcher not to release out timer ids // back to the pool (since the timer ids are moving to a new thread). @@ -1025,7 +1025,7 @@ bool QObject::event(QEvent *e) eventDispatcher->unregisterTimers(this); d->inThreadChangeEvent = false; QMetaObject::invokeMethod(this, "_q_reregisterTimers", Qt::QueuedConnection, - Q_ARG(void*, (new QList >(timers)))); + Q_ARG(void*, (new QList(timers)))); } } break; @@ -1322,11 +1322,11 @@ void QObjectPrivate::setThreadData_helper(QThreadData *currentData, QThreadData void QObjectPrivate::_q_reregisterTimers(void *pointer) { Q_Q(QObject); - QList > *timerList = reinterpret_cast > *>(pointer); + QList *timerList = reinterpret_cast *>(pointer); QAbstractEventDispatcher *eventDispatcher = threadData->eventDispatcher; for (int i = 0; i < timerList->size(); ++i) { - const QPair &pair = timerList->at(i); - eventDispatcher->registerTimer(pair.first, pair.second, q); + const QAbstractEventDispatcher::TimerInfo &ti = timerList->at(i); + eventDispatcher->registerTimer(ti.timerId, ti.interval, ti.timerType, q); } delete timerList; } @@ -1388,7 +1388,7 @@ int QObject::startTimer(int interval, Qt::TimerType timerType) qWarning("QObject::startTimer: QTimer can only be used with threads started with QThread"); return 0; } - return d->threadData->eventDispatcher->registerTimer(interval, this); + return d->threadData->eventDispatcher->registerTimer(interval, timerType, this); } /*! diff --git a/src/corelib/kernel/qtimerinfo_unix.cpp b/src/corelib/kernel/qtimerinfo_unix.cpp index 0bb61de02e..8a0c6c5ac2 100644 --- a/src/corelib/kernel/qtimerinfo_unix.cpp +++ b/src/corelib/kernel/qtimerinfo_unix.cpp @@ -228,10 +228,11 @@ bool QTimerInfoList::timerWait(timeval &tm) return true; } -void QTimerInfoList::registerTimer(int timerId, int interval, QObject *object) +void QTimerInfoList::registerTimer(int timerId, int interval, Qt::TimerType timerType, QObject *object) { QTimerInfo *t = new QTimerInfo; t->id = timerId; + t->timerType = timerType; t->interval.tv_sec = interval / 1000; t->interval.tv_usec = (interval % 1000) * 1000; t->timeout = updateCurrentTime() + t->interval; @@ -292,13 +293,13 @@ bool QTimerInfoList::unregisterTimers(QObject *object) return true; } -QList > QTimerInfoList::registeredTimers(QObject *object) const +QList QTimerInfoList::registeredTimers(QObject *object) const { - QList > list; + QList list; for (int i = 0; i < count(); ++i) { register const QTimerInfo * const t = at(i); if (t->obj == object) - list << QPair(t->id, t->interval.tv_sec * 1000 + t->interval.tv_usec / 1000); + list << QAbstractEventDispatcher::TimerInfo(t->id, t->interval.tv_sec * 1000 + t->interval.tv_usec / 1000, t->timerType); } return list; } diff --git a/src/corelib/kernel/qtimerinfo_unix_p.h b/src/corelib/kernel/qtimerinfo_unix_p.h index d464a146e3..82acb439e7 100644 --- a/src/corelib/kernel/qtimerinfo_unix_p.h +++ b/src/corelib/kernel/qtimerinfo_unix_p.h @@ -53,9 +53,7 @@ // We mean it. // -#include -#include -#include +#include "qabstracteventdispatcher.h" #include // struct timeval @@ -64,6 +62,7 @@ QT_BEGIN_NAMESPACE // internal timer info struct QTimerInfo { int id; // - timer identifier + Qt::TimerType timerType; // - timer type timeval interval; // - timer interval timeval timeout; // - when to sent event QObject *obj; // - object to receive event @@ -97,10 +96,10 @@ public: void timerInsert(QTimerInfo *); void timerRepair(const timeval &); - void registerTimer(int timerId, int interval, QObject *object); + void registerTimer(int timerId, int interval, Qt::TimerType timerType, QObject *object); bool unregisterTimer(int timerId); bool unregisterTimers(QObject *object); - QList > registeredTimers(QObject *object) const; + QList registeredTimers(QObject *object) const; int activateTimers(); }; diff --git a/src/plugins/platforms/cocoa/qcocoaeventdispatcher.h b/src/plugins/platforms/cocoa/qcocoaeventdispatcher.h index 7184db84fa..688cd75e29 100644 --- a/src/plugins/platforms/cocoa/qcocoaeventdispatcher.h +++ b/src/plugins/platforms/cocoa/qcocoaeventdispatcher.h @@ -121,7 +121,7 @@ public: void registerSocketNotifier(QSocketNotifier *notifier); void unregisterSocketNotifier(QSocketNotifier *notifier); - void registerTimer(int timerId, int interval, QObject *object); + void registerTimer(int timerId, int interval, Qt::TimerType timerType, QObject *object); bool unregisterTimer(int timerId); bool unregisterTimers(QObject *object); QList registeredTimers(QObject *object) const; @@ -137,6 +137,7 @@ private: struct MacTimerInfo { int id; int interval; + Qt::TimerType timerType; QObject *obj; bool pending; CFRunLoopTimerRef runLoopTimer; diff --git a/src/plugins/platforms/cocoa/qcocoaeventdispatcher.mm b/src/plugins/platforms/cocoa/qcocoaeventdispatcher.mm index 8cdf40be78..d55b28ffcc 100644 --- a/src/plugins/platforms/cocoa/qcocoaeventdispatcher.mm +++ b/src/plugins/platforms/cocoa/qcocoaeventdispatcher.mm @@ -139,7 +139,7 @@ void QCocoaEventDispatcherPrivate::activateTimer(CFRunLoopTimerRef, void *info) } -void QCocoaEventDispatcher::registerTimer(int timerId, int interval, QObject *obj) +void QCocoaEventDispatcher::registerTimer(int timerId, int interval, Qt::TimerType timerType, QObject *obj) { #ifndef QT_NO_DEBUG if (timerId < 1 || interval < 0 || !obj) { @@ -154,6 +154,7 @@ void QCocoaEventDispatcher::registerTimer(int timerId, int interval, QObject *ob MacTimerInfo *t = new MacTimerInfo(); t->id = timerId; t->interval = interval; + t->timerType = timerType; t->obj = obj; t->runLoopTimer = 0; t->pending = false; @@ -241,7 +242,7 @@ QCocoaEventDispatcher::registeredTimers(QObject *object) const while (it != QCocoaEventDispatcherPrivate::macTimerHash.constEnd()) { MacTimerInfo *t = it.value(); if (t->obj == object) - list << TimerInfo(t->id, t->interval); + list << TimerInfo(t->id, t->interval, t->timerType); ++it; } return list; diff --git a/tests/auto/corelib/kernel/qcoreapplication/tst_qcoreapplication.cpp b/tests/auto/corelib/kernel/qcoreapplication/tst_qcoreapplication.cpp index 6a2d04d46d..d166b40c78 100644 --- a/tests/auto/corelib/kernel/qcoreapplication/tst_qcoreapplication.cpp +++ b/tests/auto/corelib/kernel/qcoreapplication/tst_qcoreapplication.cpp @@ -601,7 +601,7 @@ public: } void registerSocketNotifier(QSocketNotifier *) {} void unregisterSocketNotifier(QSocketNotifier *) {} - void registerTimer(int , int , QObject *) {} + void registerTimer(int , int , Qt::TimerType, QObject *) {} bool unregisterTimer(int ) { return false; } bool unregisterTimers(QObject *) { return false; } QList registeredTimers(QObject *) const { return QList(); } diff --git a/tests/auto/corelib/thread/qthread/tst_qthread.cpp b/tests/auto/corelib/thread/qthread/tst_qthread.cpp index 7fc8710ccf..1f8a3e03d9 100644 --- a/tests/auto/corelib/thread/qthread/tst_qthread.cpp +++ b/tests/auto/corelib/thread/qthread/tst_qthread.cpp @@ -1228,7 +1228,7 @@ public: } void registerSocketNotifier(QSocketNotifier *) {} void unregisterSocketNotifier(QSocketNotifier *) {} - void registerTimer(int , int , QObject *) {} + void registerTimer(int, int, Qt::TimerType, QObject *) {} bool unregisterTimer(int ) { return false; } bool unregisterTimers(QObject *) { return false; } QList registeredTimers(QObject *) const { return QList(); } diff --git a/tests/auto/testlib/selftests/benchlibeventcounter/tst_benchlibeventcounter.cpp b/tests/auto/testlib/selftests/benchlibeventcounter/tst_benchlibeventcounter.cpp index ccb69ddb6a..df7a6908f8 100644 --- a/tests/auto/testlib/selftests/benchlibeventcounter/tst_benchlibeventcounter.cpp +++ b/tests/auto/testlib/selftests/benchlibeventcounter/tst_benchlibeventcounter.cpp @@ -57,8 +57,7 @@ public: void interrupt() {} bool processEvents(QEventLoop::ProcessEventsFlags) { return false; } void registerSocketNotifier(QSocketNotifier*) {} - int registerTimer(int,QObject*) { return -1; } - void registerTimer(int,int,QObject*) {} + void registerTimer(int,int,Qt::TimerType,QObject*) {} QList registeredTimers(QObject*) const { return QList(); } void unregisterSocketNotifier(QSocketNotifier*) {} bool unregisterTimer(int) { return false; } diff --git a/tests/auto/testlib/selftests/benchliboptions/tst_benchliboptions.cpp b/tests/auto/testlib/selftests/benchliboptions/tst_benchliboptions.cpp index cbe5af5ce8..bfb431e705 100644 --- a/tests/auto/testlib/selftests/benchliboptions/tst_benchliboptions.cpp +++ b/tests/auto/testlib/selftests/benchliboptions/tst_benchliboptions.cpp @@ -57,8 +57,7 @@ public: void interrupt() {} bool processEvents(QEventLoop::ProcessEventsFlags) { return false; } void registerSocketNotifier(QSocketNotifier*) {} - int registerTimer(int,QObject*) { return -1; } - void registerTimer(int,int,QObject*) {} + void registerTimer(int,int,Qt::TimerType,QObject*) {} QList registeredTimers(QObject*) const { return QList(); } void unregisterSocketNotifier(QSocketNotifier*) {} bool unregisterTimer(int) { return false; } -- cgit v1.2.3 From 6fc9820d2a3f349f04a2ea9c39261de0168d2331 Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Wed, 21 Dec 2011 11:33:56 +0100 Subject: Change QTimerInfo (UNIX) to keep the interval in milliseconds. The API passes the interval as an int, there's no reason to convert it to a timeval struct. This also prepares for changing the UNIX timer code to support the different timer types. Author: Thiago Macieira Change-Id: Ie3cc1ae8f1be6a9ad3f1766051642cbf3e614418 Reviewed-by: Thiago Macieira --- src/corelib/kernel/qtimerinfo_unix.cpp | 20 ++++++++++++++++---- src/corelib/kernel/qtimerinfo_unix_p.h | 2 +- 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/src/corelib/kernel/qtimerinfo_unix.cpp b/src/corelib/kernel/qtimerinfo_unix.cpp index 8a0c6c5ac2..568f789700 100644 --- a/src/corelib/kernel/qtimerinfo_unix.cpp +++ b/src/corelib/kernel/qtimerinfo_unix.cpp @@ -185,6 +185,19 @@ void QTimerInfoList::timerRepair(const timeval &diff) } } +inline timeval &operator+=(timeval &t1, int ms) +{ + t1.tv_sec += ms / 1000; + t1.tv_usec += ms % 1000 * 1000; + return normalizedTimeval(t1); +} + +inline timeval operator+(const timeval &t1, int ms) +{ + timeval t2 = t1; + return t2 += ms; +} + static timeval roundToMillisecond(timeval val) { // always round up @@ -232,9 +245,8 @@ void QTimerInfoList::registerTimer(int timerId, int interval, Qt::TimerType time { QTimerInfo *t = new QTimerInfo; t->id = timerId; + t->interval = interval; t->timerType = timerType; - t->interval.tv_sec = interval / 1000; - t->interval.tv_usec = (interval % 1000) * 1000; t->timeout = updateCurrentTime() + t->interval; t->obj = object; t->activateRef = 0; @@ -299,7 +311,7 @@ QList QTimerInfoList::registeredTimers(QObj for (int i = 0; i < count(); ++i) { register const QTimerInfo * const t = at(i); if (t->obj == object) - list << QAbstractEventDispatcher::TimerInfo(t->id, t->interval.tv_sec * 1000 + t->interval.tv_usec / 1000, t->timerType); + list << QAbstractEventDispatcher::TimerInfo(t->id, t->interval, t->timerType); } return list; } @@ -355,7 +367,7 @@ int QTimerInfoList::activateTimers() // reinsert timer timerInsert(currentTimerInfo); - if (currentTimerInfo->interval.tv_usec > 0 || currentTimerInfo->interval.tv_sec > 0) + if (currentTimerInfo->interval > 0) n_act++; if (!currentTimerInfo->activateRef) { diff --git a/src/corelib/kernel/qtimerinfo_unix_p.h b/src/corelib/kernel/qtimerinfo_unix_p.h index 82acb439e7..b551f472df 100644 --- a/src/corelib/kernel/qtimerinfo_unix_p.h +++ b/src/corelib/kernel/qtimerinfo_unix_p.h @@ -62,8 +62,8 @@ QT_BEGIN_NAMESPACE // internal timer info struct QTimerInfo { int id; // - timer identifier + int interval; // - timer interval in milliseconds Qt::TimerType timerType; // - timer type - timeval interval; // - timer interval timeval timeout; // - when to sent event QObject *obj; // - object to receive event QTimerInfo **activateRef; // - ref from activateTimers -- cgit v1.2.3 From 4e1ad49998cf782ccc88e7e80fbd05c722658a16 Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Wed, 21 Dec 2011 11:33:07 +0100 Subject: Make QTimer::singleShot use Qt::PreciseTimer for lower timeouts. CoarseTimers are worst in their first firing, so we prefer a PreciseTimer for something that happens only once. If the timeout is too big, we use a CoarseTimer anyway (current threshold is 2000ms). Author: Thiago Macieira Change-Id: I30b20acf506e442cd58126abfe3a4d70fc13b075 Reviewed-by: Thiago Macieira --- src/corelib/kernel/qtimer.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/corelib/kernel/qtimer.cpp b/src/corelib/kernel/qtimer.cpp index e89abade2c..8bf65c3c0e 100644 --- a/src/corelib/kernel/qtimer.cpp +++ b/src/corelib/kernel/qtimer.cpp @@ -317,7 +317,10 @@ QT_END_INCLUDE_NAMESPACE void QTimer::singleShot(int msec, QObject *receiver, const char *member) { - singleShot(msec, Qt::CoarseTimer, receiver, member); + // coarse timers are worst in their first firing + // so we prefer a high precision timer for something that happens only once + // unless the timeout is too big, in which case we go for coarse anyway + singleShot(msec, msec >= 2000 ? Qt::CoarseTimer : Qt::PreciseTimer, receiver, member); } /*! \overload -- cgit v1.2.3 From 9a17df0090b6a58480646db3c4e4146c20797cbd Mon Sep 17 00:00:00 2001 From: Holger Hans Peter Freyther Date: Sun, 1 Jan 2012 13:34:03 +0100 Subject: raster: Fix typo in a function argument MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I903e1245667680f43414414bb0b4bfaa6240ea04 Reviewed-by: Robin Burchell Reviewed-by: Samuel Rødal Reviewed-by: Jørgen Lind --- src/gui/painting/qpaintengine_raster_p.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gui/painting/qpaintengine_raster_p.h b/src/gui/painting/qpaintengine_raster_p.h index a87f1d4c35..446d26d450 100644 --- a/src/gui/painting/qpaintengine_raster_p.h +++ b/src/gui/painting/qpaintengine_raster_p.h @@ -178,7 +178,7 @@ public: void drawPixmap(const QRectF &r, const QPixmap &pm, const QRectF &sr); void drawImage(const QPointF &p, const QImage &img); void drawImage(const QRectF &r, const QImage &pm, const QRectF &sr, - Qt::ImageConversionFlags falgs = Qt::AutoColor); + Qt::ImageConversionFlags flags = Qt::AutoColor); void drawTiledPixmap(const QRectF &r, const QPixmap &pm, const QPointF &sr); void drawTextItem(const QPointF &p, const QTextItem &textItem); -- cgit v1.2.3 From 1180de6d9850bd2bcfd280f331940aba25f12658 Mon Sep 17 00:00:00 2001 From: Holger Hans Peter Freyther Date: Sun, 1 Jan 2012 19:43:30 +0100 Subject: blitter: Style changes to the code MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Spend some bytes for spaces after comma and keywords. This should now mostly follow the Qt style guidelines. Change-Id: I3298c8d41d40ab5b0153a33d44b1b607a2edca8e Reviewed-by: Jørgen Lind --- src/gui/painting/qpaintengine_blitter.cpp | 143 ++++++++++++++---------------- 1 file changed, 65 insertions(+), 78 deletions(-) diff --git a/src/gui/painting/qpaintengine_blitter.cpp b/src/gui/painting/qpaintengine_blitter.cpp index 4f9861da44..528a8cfbdd 100644 --- a/src/gui/painting/qpaintengine_blitter.cpp +++ b/src/gui/painting/qpaintengine_blitter.cpp @@ -79,58 +79,52 @@ class CapabilitiesToStateMask { public: CapabilitiesToStateMask(QBlittable::Capabilities capabilities) - : m_capabilities(capabilities), - fillRectMask(0), - drawRectMask(0), - drawPixmapMask(0), - capabillitiesState(0) + : m_capabilities(capabilities) + , fillRectMask(0) + , drawRectMask(0) + , drawPixmapMask(0) + , capabillitiesState(0) { - if (capabilities & QBlittable::SolidRectCapability) { + if (capabilities & QBlittable::SolidRectCapability) setFillRectMask(); - } - if (capabilities & QBlittable::SourcePixmapCapability) { + if (capabilities & QBlittable::SourcePixmapCapability) setSourcePixmapMask(); - } - if (capabilities & QBlittable::SourceOverPixmapCapability) { + if (capabilities & QBlittable::SourceOverPixmapCapability) setSourceOverPixmapMask(); - } - if (capabilities & QBlittable::SourceOverScaledPixmapCapability) { + if (capabilities & QBlittable::SourceOverScaledPixmapCapability) setSourceOverScaledPixmapMask(); - } } inline bool canBlitterFillRect() const { - return checkStateAgainstMask(capabillitiesState,fillRectMask); + return checkStateAgainstMask(capabillitiesState, fillRectMask); } inline bool canBlitterDrawRectMask() const { - return checkStateAgainstMask(capabillitiesState,drawRectMask); + return checkStateAgainstMask(capabillitiesState, drawRectMask); } bool canBlitterDrawPixmap(const QRectF &r, const QPixmap &pm, const QRectF &sr) const { if (pm.handle()->classId() != QPlatformPixmap::BlitterClass) return false; - if (checkStateAgainstMask(capabillitiesState,drawPixmapMask)) { + if (checkStateAgainstMask(capabillitiesState, drawPixmapMask)) { if (m_capabilities & (QBlittable::SourceOverPixmapCapability | QBlittable::SourceOverScaledPixmapCapability)) { - if (r.size() != sr.size()) { + if (r.size() != sr.size()) return m_capabilities & QBlittable::SourceOverScaledPixmapCapability; - } else { + else return m_capabilities & QBlittable::SourceOverPixmapCapability; - } } - if ((m_capabilities & QBlittable::SourcePixmapCapability) && r.size() == sr.size() && !pm.hasAlphaChannel()) { + if ((m_capabilities & QBlittable::SourcePixmapCapability) && r.size() == sr.size() && !pm.hasAlphaChannel()) return m_capabilities & QBlittable::SourcePixmapCapability; - } } return false; } inline void updateState(uint mask, bool on) { - updateStateBits(&capabillitiesState,mask,on); + updateStateBits(&capabillitiesState, mask, on); } public: @@ -191,10 +185,10 @@ class QBlitterPaintEnginePrivate : public QPaintEngineExPrivate Q_DECLARE_PUBLIC(QBlitterPaintEngine); public: QBlitterPaintEnginePrivate(QBlittablePlatformPixmap *p) - : QPaintEngineExPrivate(), - pmData(p), - isBlitterLocked(false), - hasXForm(false) + : QPaintEngineExPrivate() + , pmData(p) + , isBlitterLocked(false) + , hasXForm(false) { raster.reset(new QRasterPaintEngine(p->buffer())); @@ -219,9 +213,8 @@ public: Q_Q(QBlitterPaintEngine); pmData->unmarkRasterOverlay(rect); QRectF targetRect = rect; - if (hasXForm) { + if (hasXForm) targetRect = q->state()->matrix.mapRect(rect); - } const QClipData *clipData = q->clipData();; if (clipData) { if (clipData->hasRectClip) { @@ -229,11 +222,11 @@ public: pmData->blittable()->fillRect(targetRect & clipData->clipRect, color); } else if (clipData->hasRegionClip) { QVector rects = clipData->clipRegion.rects(); - for ( int i = 0; i < rects.size(); i++ ) { + for (int i = 0; i < rects.size(); ++i) { QRect intersectRect = rects.at(i).intersected(targetRect.toRect()); if (!intersectRect.isEmpty()) { unlock(); - pmData->blittable()->fillRect(intersectRect,color); + pmData->blittable()->fillRect(intersectRect, color); } } } @@ -242,11 +235,11 @@ public: && targetRect.width() <= raster->paintDevice()->width() && targetRect.height() <= raster->paintDevice()->height()) { unlock(); - pmData->blittable()->fillRect(targetRect,color); + pmData->blittable()->fillRect(targetRect, color); } else { - QRectF deviceRect(0,0,raster->paintDevice()->width(), raster->paintDevice()->height()); + QRectF deviceRect(0, 0, raster->paintDevice()->width(), raster->paintDevice()->height()); unlock(); - pmData->blittable()->fillRect(deviceRect&targetRect,color); + pmData->blittable()->fillRect(deviceRect & targetRect, color); } } } @@ -256,12 +249,12 @@ public: if (intersectedRect.isEmpty()) return; QRectF source = sr; - if(intersectedRect.size() != target.size()) { + if (intersectedRect.size() != target.size()) { qreal deltaTop = target.top() - intersectedRect.top(); qreal deltaLeft = target.left() - intersectedRect.left(); qreal deltaBottom = target.bottom() - intersectedRect.bottom(); qreal deltaRight = target.right() - intersectedRect.right(); - source.adjust(-deltaLeft,-deltaTop,-deltaRight,-deltaBottom); + source.adjust(-deltaLeft, -deltaTop, -deltaRight, -deltaBottom); } pmData->unmarkRasterOverlay(intersectedRect); pmData->blittable()->drawPixmap(intersectedRect, pm, source); @@ -290,12 +283,10 @@ public: QBlitterPaintEngine::QBlitterPaintEngine(QBlittablePlatformPixmap *p) : QPaintEngineEx(*(new QBlitterPaintEnginePrivate(p))) -{ -} +{} QBlitterPaintEngine::~QBlitterPaintEngine() -{ -} +{} QPainterState *QBlitterPaintEngine::createState(QPainterState *orig) const { @@ -355,19 +346,17 @@ void QBlitterPaintEngine::fillRect(const QRectF &rect, const QColor &color) void QBlitterPaintEngine::fillRect(const QRectF &rect, const QBrush &brush) { - if(rect.size().isEmpty()) + if (rect.size().isEmpty()) return; Q_D(QBlitterPaintEngine); if (qbrush_style(brush) == Qt::SolidPattern && qbrush_color(brush).alpha() == 0xff - && d->capabillities->canBlitterFillRect()) - { + && d->capabillities->canBlitterFillRect()) { d->fillRect(rect, qbrush_color(brush)); - }else if (brush.style() == Qt::TexturePattern - && d->capabillities->canBlitterDrawPixmap(rect,brush.texture(),rect)) - { + } else if (brush.style() == Qt::TexturePattern + && d->capabillities->canBlitterDrawPixmap(rect, brush.texture(), rect)) { bool rectIsFilled = false; QRectF transformedRect = state()->matrix.mapRect(rect); qreal x = transformedRect.x(); @@ -390,35 +379,35 @@ void QBlitterPaintEngine::fillRect(const QRectF &rect, const QBrush &brush) blitHeight = transformedRect.bottom() - y; const QClipData *clipData = this->clipData(); if (clipData->hasRectClip) { - QRect targetRect = QRect(x,y,blitWidth,blitHeight).intersected(clipData->clipRect); + QRect targetRect = QRect(x, y, blitWidth, blitHeight).intersected(clipData->clipRect); if (targetRect.isValid()) { int tmpSrcX = srcX + (targetRect.x() - x); int tmpSrcY = srcY + (targetRect.y() - y); - QRect srcRect(tmpSrcX,tmpSrcY,targetRect.width(),targetRect.height()); - d->pmData->blittable()->drawPixmap(targetRect,pm,srcRect); + QRect srcRect(tmpSrcX, tmpSrcY, targetRect.width(), targetRect.height()); + d->pmData->blittable()->drawPixmap(targetRect, pm, srcRect); } } else if (clipData->hasRegionClip) { QVector clipRects = clipData->clipRegion.rects(); - QRect unclippedTargetRect(x,y,blitWidth,blitHeight); + QRect unclippedTargetRect(x, y, blitWidth, blitHeight); QRegion intersectedRects = clipData->clipRegion.intersected(unclippedTargetRect); - for ( int i = 0; i < intersectedRects.rects().size(); i++ ) { + for (int i = 0; i < intersectedRects.rects().size(); ++i) { QRect targetRect = intersectedRects.rects().at(i); if (!targetRect.isValid() || targetRect.isEmpty()) continue; int tmpSrcX = srcX + (targetRect.x() - x); int tmpSrcY = srcY + (targetRect.y() - y); - QRect srcRect(tmpSrcX,tmpSrcY,targetRect.width(),targetRect.height()); - d->pmData->blittable()->drawPixmap(targetRect,pm,srcRect); + QRect srcRect(tmpSrcX, tmpSrcY, targetRect.width(), targetRect.height()); + d->pmData->blittable()->drawPixmap(targetRect, pm, srcRect); } } x+=blitWidth; - if (x>=transformedRect.right()) { + if (x >= transformedRect.right()) { x = transformedRect.x(); srcX = startX; srcY = 0; - y+=blitHeight; - if (y>=transformedRect.bottom()) + y += blitHeight; + if (y >= transformedRect.bottom()) rectIsFilled = true; } else srcX = 0; @@ -446,17 +435,19 @@ void QBlitterPaintEngine::clip(const QVectorPath &path, Qt::ClipOperation op) d->raster->clip(path, op); d->updateClip(); } + void QBlitterPaintEngine::clip(const QRect &rect, Qt::ClipOperation op){ Q_D(QBlitterPaintEngine); d->lock(); - d->raster->clip(rect,op); + d->raster->clip(rect, op); d->updateClip(); } + void QBlitterPaintEngine::clip(const QRegion ®ion, Qt::ClipOperation op) { Q_D(QBlitterPaintEngine); d->lock(); - d->raster->clip(region,op); + d->raster->clip(region, op); d->updateClip(); } @@ -472,7 +463,7 @@ void QBlitterPaintEngine::penChanged() Q_D(QBlitterPaintEngine); d->lock(); d->raster->penChanged(); - d->capabillities->updateState(STATE_PEN_ENABLED,qpen_style(state()->pen) != Qt::NoPen); + d->capabillities->updateState(STATE_PEN_ENABLED, qpen_style(state()->pen) != Qt::NoPen); } void QBlitterPaintEngine::brushChanged() @@ -484,7 +475,7 @@ void QBlitterPaintEngine::brushChanged() d->capabillities->updateState(STATE_BRUSH_PATTERN, !solid); d->capabillities->updateState(STATE_BRUSH_ALPHA, - qbrush_color(state()->brush).alpha() < 255); + qbrush_color(state()->brush).alpha() < 255); } void QBlitterPaintEngine::brushOriginChanged() @@ -499,7 +490,7 @@ void QBlitterPaintEngine::opacityChanged() d->raster->opacityChanged(); bool translucent = state()->opacity < 1; - d->capabillities->updateState(STATE_ALPHA,translucent); + d->capabillities->updateState(STATE_ALPHA, translucent); } void QBlitterPaintEngine::compositionModeChanged() @@ -510,7 +501,7 @@ void QBlitterPaintEngine::compositionModeChanged() bool nonTrivial = state()->composition_mode != QPainter::CompositionMode_SourceOver && state()->composition_mode != QPainter::CompositionMode_Source; - d->capabillities->updateState(STATE_BLENDING_COMPLEX,nonTrivial); + d->capabillities->updateState(STATE_BLENDING_COMPLEX, nonTrivial); } void QBlitterPaintEngine::renderHintsChanged() @@ -541,11 +532,10 @@ void QBlitterPaintEngine::drawRects(const QRect *rects, int rectCount) { Q_D(QBlitterPaintEngine); if (d->capabillities->canBlitterDrawRectMask()) { - for (int i=0; ifillRect(rects[i], qbrush_color(state()->brush)); - } } else { - d->pmData->markRasterOverlay(rects,rectCount); + d->pmData->markRasterOverlay(rects, rectCount); QPaintEngineEx::drawRects(rects, rectCount); } } @@ -554,11 +544,10 @@ void QBlitterPaintEngine::drawRects(const QRectF *rects, int rectCount) { Q_D(QBlitterPaintEngine); if (d->capabillities->canBlitterDrawRectMask()) { - for (int i=0; ifillRect(rects[i], qbrush_color(state()->brush)); - } } else { - d->pmData->markRasterOverlay(rects,rectCount); + d->pmData->markRasterOverlay(rects, rectCount); QPaintEngineEx::drawRects(rects, rectCount); } } @@ -566,26 +555,24 @@ void QBlitterPaintEngine::drawRects(const QRectF *rects, int rectCount) void QBlitterPaintEngine::drawPixmap(const QRectF &r, const QPixmap &pm, const QRectF &sr) { Q_D(QBlitterPaintEngine); - if (d->capabillities->canBlitterDrawPixmap(r,pm,sr)) { + if (d->capabillities->canBlitterDrawPixmap(r, pm, sr)) { d->unlock(); QRectF targetRect = r; - if (d->hasXForm) { + if (d->hasXForm) targetRect = state()->matrix.mapRect(r); - } const QClipData *clipData = this->clipData(); if (clipData) { if (clipData->hasRectClip) { - d->clipAndDrawPixmap(clipData->clipRect,targetRect,pm,sr); - }else if (clipData->hasRegionClip) { + d->clipAndDrawPixmap(clipData->clipRect, targetRect, pm, sr); + } else if (clipData->hasRegionClip) { QVectorrects = clipData->clipRegion.rects(); - for (int i = 0; iclipAndDrawPixmap(rects.at(i),targetRect,pm,sr); - } + for (int i = 0; iclipAndDrawPixmap(rects.at(i), targetRect, pm, sr); } } else { - QRectF deviceRect(0,0,d->raster->paintDevice()->width(), d->raster->paintDevice()->height()); - d->clipAndDrawPixmap(deviceRect,targetRect,pm,sr); + QRectF deviceRect(0, 0, d->raster->paintDevice()->width(), d->raster->paintDevice()->height()); + d->clipAndDrawPixmap(deviceRect, targetRect, pm, sr); } }else { d->lock(); @@ -609,7 +596,7 @@ void QBlitterPaintEngine::drawTextItem(const QPointF &pos, const QTextItem &ti) Q_D(QBlitterPaintEngine); d->lock(); d->raster->drawTextItem(pos, ti); - d->pmData->markRasterOverlay(pos,ti); + d->pmData->markRasterOverlay(pos, ti); } void QBlitterPaintEngine::drawStaticTextItem(QStaticTextItem *sti) -- cgit v1.2.3 From 24c88ebcde0d43884303e3238bd068c23135f08b Mon Sep 17 00:00:00 2001 From: Holger Hans Peter Freyther Date: Sun, 1 Jan 2012 19:50:16 +0100 Subject: blitter: Use CapabilitiesToStateMask as a class member MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Move the bit helper functions into CapabilitiesToStateMask as they are only used in this class, allocate the class as part of the QBlitterPaintEnginePrivate, shorten the name as well. Change-Id: If22ddd117a9789cd98edb08f23fd0ffabb17d5a5 Reviewed-by: Jørgen Lind --- src/gui/painting/qpaintengine_blitter.cpp | 60 +++++++++++++++---------------- 1 file changed, 29 insertions(+), 31 deletions(-) diff --git a/src/gui/painting/qpaintengine_blitter.cpp b/src/gui/painting/qpaintengine_blitter.cpp index 528a8cfbdd..c37355bd64 100644 --- a/src/gui/painting/qpaintengine_blitter.cpp +++ b/src/gui/painting/qpaintengine_blitter.cpp @@ -65,16 +65,6 @@ QT_BEGIN_NAMESPACE #define STATE_CLIP_COMPLEX 0x00020000 -static inline void updateStateBits(uint *state, uint mask, bool on) -{ - *state = on ? (*state | mask) : (*state & ~mask); -} - -static inline bool checkStateAgainstMask(uint state, uint mask) -{ - return !state || (state & mask && !(state & ~mask)); -} - class CapabilitiesToStateMask { public: @@ -127,7 +117,17 @@ public: updateStateBits(&capabillitiesState, mask, on); } -public: +private: + + static inline void updateStateBits(uint *state, uint mask, bool on) + { + *state = on ? (*state | mask) : (*state & ~mask); + } + + static inline bool checkStateAgainstMask(uint state, uint mask) + { + return !state || (state & mask && !(state & ~mask)); + } void setFillRectMask() { updateStateBits(&fillRectMask, STATE_XFORM_SCALE, false); @@ -187,12 +187,12 @@ public: QBlitterPaintEnginePrivate(QBlittablePlatformPixmap *p) : QPaintEngineExPrivate() , pmData(p) + , caps(pmData->blittable()->capabilities()) , isBlitterLocked(false) , hasXForm(false) { raster.reset(new QRasterPaintEngine(p->buffer())); - capabillities.reset(new CapabilitiesToStateMask(pmData->blittable()->capabilities())); } inline void lock() { @@ -264,7 +264,7 @@ public: Q_Q(QBlitterPaintEngine); const QClipData *clip = q->clipData(); bool complex = clip && !(clip->hasRectClip || clip->hasRegionClip); - capabillities->updateState(STATE_CLIP_COMPLEX, complex); + caps.updateState(STATE_CLIP_COMPLEX, complex); } void systemStateChanged() { @@ -274,10 +274,8 @@ public: QScopedPointer raster; QBlittablePlatformPixmap *pmData; + CapabilitiesToStateMask caps; bool isBlitterLocked; - - QScopedPointer capabillities; - uint hasXForm; }; @@ -335,7 +333,7 @@ void QBlitterPaintEngine::fill(const QVectorPath &path, const QBrush &brush) void QBlitterPaintEngine::fillRect(const QRectF &rect, const QColor &color) { Q_D(QBlitterPaintEngine); - if (d->capabillities->canBlitterFillRect() && color.alpha() == 0xff) { + if (d->caps.canBlitterFillRect() && color.alpha() == 0xff) { d->fillRect(rect, color); } else { d->lock(); @@ -353,10 +351,10 @@ void QBlitterPaintEngine::fillRect(const QRectF &rect, const QBrush &brush) if (qbrush_style(brush) == Qt::SolidPattern && qbrush_color(brush).alpha() == 0xff - && d->capabillities->canBlitterFillRect()) { + && d->caps.canBlitterFillRect()) { d->fillRect(rect, qbrush_color(brush)); } else if (brush.style() == Qt::TexturePattern - && d->capabillities->canBlitterDrawPixmap(rect, brush.texture(), rect)) { + && d->caps.canBlitterDrawPixmap(rect, brush.texture(), rect)) { bool rectIsFilled = false; QRectF transformedRect = state()->matrix.mapRect(rect); qreal x = transformedRect.x(); @@ -463,7 +461,7 @@ void QBlitterPaintEngine::penChanged() Q_D(QBlitterPaintEngine); d->lock(); d->raster->penChanged(); - d->capabillities->updateState(STATE_PEN_ENABLED, qpen_style(state()->pen) != Qt::NoPen); + d->caps.updateState(STATE_PEN_ENABLED, qpen_style(state()->pen) != Qt::NoPen); } void QBlitterPaintEngine::brushChanged() @@ -473,9 +471,9 @@ void QBlitterPaintEngine::brushChanged() bool solid = qbrush_style(state()->brush) == Qt::SolidPattern; - d->capabillities->updateState(STATE_BRUSH_PATTERN, !solid); - d->capabillities->updateState(STATE_BRUSH_ALPHA, - qbrush_color(state()->brush).alpha() < 255); + d->caps.updateState(STATE_BRUSH_PATTERN, !solid); + d->caps.updateState(STATE_BRUSH_ALPHA, + qbrush_color(state()->brush).alpha() < 255); } void QBlitterPaintEngine::brushOriginChanged() @@ -490,7 +488,7 @@ void QBlitterPaintEngine::opacityChanged() d->raster->opacityChanged(); bool translucent = state()->opacity < 1; - d->capabillities->updateState(STATE_ALPHA, translucent); + d->caps.updateState(STATE_ALPHA, translucent); } void QBlitterPaintEngine::compositionModeChanged() @@ -501,7 +499,7 @@ void QBlitterPaintEngine::compositionModeChanged() bool nonTrivial = state()->composition_mode != QPainter::CompositionMode_SourceOver && state()->composition_mode != QPainter::CompositionMode_Source; - d->capabillities->updateState(STATE_BLENDING_COMPLEX, nonTrivial); + d->caps.updateState(STATE_BLENDING_COMPLEX, nonTrivial); } void QBlitterPaintEngine::renderHintsChanged() @@ -510,7 +508,7 @@ void QBlitterPaintEngine::renderHintsChanged() d->raster->renderHintsChanged(); bool aa = state()->renderHints & QPainter::Antialiasing; - d->capabillities->updateState(STATE_ANTIALIASING, aa); + d->caps.updateState(STATE_ANTIALIASING, aa); } @@ -521,8 +519,8 @@ void QBlitterPaintEngine::transformChanged() QTransform::TransformationType type = state()->matrix.type(); - d->capabillities->updateState(STATE_XFORM_COMPLEX, type > QTransform::TxScale); - d->capabillities->updateState(STATE_XFORM_SCALE, type > QTransform::TxTranslate); + d->caps.updateState(STATE_XFORM_COMPLEX, type > QTransform::TxScale); + d->caps.updateState(STATE_XFORM_SCALE, type > QTransform::TxTranslate); d->hasXForm = type >= QTransform::TxTranslate; @@ -531,7 +529,7 @@ void QBlitterPaintEngine::transformChanged() void QBlitterPaintEngine::drawRects(const QRect *rects, int rectCount) { Q_D(QBlitterPaintEngine); - if (d->capabillities->canBlitterDrawRectMask()) { + if (d->caps.canBlitterDrawRectMask()) { for (int i=0; ifillRect(rects[i], qbrush_color(state()->brush)); } else { @@ -543,7 +541,7 @@ void QBlitterPaintEngine::drawRects(const QRect *rects, int rectCount) void QBlitterPaintEngine::drawRects(const QRectF *rects, int rectCount) { Q_D(QBlitterPaintEngine); - if (d->capabillities->canBlitterDrawRectMask()) { + if (d->caps.canBlitterDrawRectMask()) { for (int i = 0; i < rectCount; ++i) d->fillRect(rects[i], qbrush_color(state()->brush)); } else { @@ -555,7 +553,7 @@ void QBlitterPaintEngine::drawRects(const QRectF *rects, int rectCount) void QBlitterPaintEngine::drawPixmap(const QRectF &r, const QPixmap &pm, const QRectF &sr) { Q_D(QBlitterPaintEngine); - if (d->capabillities->canBlitterDrawPixmap(r, pm, sr)) { + if (d->caps.canBlitterDrawPixmap(r, pm, sr)) { d->unlock(); QRectF targetRect = r; -- cgit v1.2.3 From 3ec27f827e64b4d69f7c6ec7357dc6b03b601fc9 Mon Sep 17 00:00:00 2001 From: Holger Hans Peter Freyther Date: Sun, 1 Jan 2012 19:58:20 +0100 Subject: blitter: Kill the isBlitterLocked variable of the QBlitterPaintEngine MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit It starts with being initialized wrongly, the call to buffer() will lock the data while we think it is not locked, it can also get out of sync by someone calling buffer() again. Remove the variable and check with the QBlittable if we need to lock the resource into memory. Change-Id: I350375011138d1b4c2c48c100b7b30b8ea2ae460 Reviewed-by: Jørgen Lind --- src/gui/painting/qblittable.cpp | 6 ++++++ src/gui/painting/qblittable_p.h | 2 ++ src/gui/painting/qpaintengine_blitter.cpp | 13 +++---------- 3 files changed, 11 insertions(+), 10 deletions(-) diff --git a/src/gui/painting/qblittable.cpp b/src/gui/painting/qblittable.cpp index 11058582ef..fe51f7adb0 100644 --- a/src/gui/painting/qblittable.cpp +++ b/src/gui/painting/qblittable.cpp @@ -100,6 +100,12 @@ void QBlittable::unlock() } } +bool QBlittable::isLocked() const +{ + Q_D(const QBlittable); + return d->locked; +} + QT_END_NAMESPACE #endif //QT_NO_BLITTABLE diff --git a/src/gui/painting/qblittable_p.h b/src/gui/painting/qblittable_p.h index a843733a56..248183d2e6 100644 --- a/src/gui/painting/qblittable_p.h +++ b/src/gui/painting/qblittable_p.h @@ -80,6 +80,8 @@ public: QImage *lock(); void unlock(); + bool isLocked() const; + protected: virtual QImage *doLock() = 0; virtual void doUnlock() = 0; diff --git a/src/gui/painting/qpaintengine_blitter.cpp b/src/gui/painting/qpaintengine_blitter.cpp index c37355bd64..a798efb63d 100644 --- a/src/gui/painting/qpaintengine_blitter.cpp +++ b/src/gui/painting/qpaintengine_blitter.cpp @@ -188,7 +188,6 @@ public: : QPaintEngineExPrivate() , pmData(p) , caps(pmData->blittable()->capabilities()) - , isBlitterLocked(false) , hasXForm(false) { @@ -196,17 +195,12 @@ public: } inline void lock() { - if (!isBlitterLocked) { - raster->d_func()->rasterBuffer->prepare(pmData->blittable()->lock()); - isBlitterLocked = true; - } + if (!pmData->blittable()->isLocked()) + raster->d_func()->rasterBuffer->prepare(pmData->buffer()); } inline void unlock() { - if (isBlitterLocked) { - pmData->blittable()->unlock(); - isBlitterLocked = false; - } + pmData->blittable()->unlock(); } void fillRect(const QRectF &rect, const QColor &color) { @@ -275,7 +269,6 @@ public: QBlittablePlatformPixmap *pmData; CapabilitiesToStateMask caps; - bool isBlitterLocked; uint hasXForm; }; -- cgit v1.2.3 From e02749fe7ec4e1a869f2d19c9efacbd88eebcf42 Mon Sep 17 00:00:00 2001 From: Holger Hans Peter Freyther Date: Sun, 1 Jan 2012 20:08:47 +0100 Subject: blitter: Move the definition out of the class MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cosmetic change to remove four spaces of indention from some of the deeply nested methods. Change-Id: I67fdd0ab722b7c7c67c4da7a0a0bd86459751700 Reviewed-by: Jørgen Lind --- src/gui/painting/qpaintengine_blitter.cpp | 131 ++++++++++++++++-------------- 1 file changed, 72 insertions(+), 59 deletions(-) diff --git a/src/gui/painting/qpaintengine_blitter.cpp b/src/gui/painting/qpaintengine_blitter.cpp index a798efb63d..e0049075dc 100644 --- a/src/gui/painting/qpaintengine_blitter.cpp +++ b/src/gui/painting/qpaintengine_blitter.cpp @@ -194,65 +194,10 @@ public: raster.reset(new QRasterPaintEngine(p->buffer())); } - inline void lock() { - if (!pmData->blittable()->isLocked()) - raster->d_func()->rasterBuffer->prepare(pmData->buffer()); - } - - inline void unlock() { - pmData->blittable()->unlock(); - } - - void fillRect(const QRectF &rect, const QColor &color) { - Q_Q(QBlitterPaintEngine); - pmData->unmarkRasterOverlay(rect); - QRectF targetRect = rect; - if (hasXForm) - targetRect = q->state()->matrix.mapRect(rect); - const QClipData *clipData = q->clipData();; - if (clipData) { - if (clipData->hasRectClip) { - unlock(); - pmData->blittable()->fillRect(targetRect & clipData->clipRect, color); - } else if (clipData->hasRegionClip) { - QVector rects = clipData->clipRegion.rects(); - for (int i = 0; i < rects.size(); ++i) { - QRect intersectRect = rects.at(i).intersected(targetRect.toRect()); - if (!intersectRect.isEmpty()) { - unlock(); - pmData->blittable()->fillRect(intersectRect, color); - } - } - } - } else { - if (targetRect.x() >= 0 && targetRect.y() >= 0 - && targetRect.width() <= raster->paintDevice()->width() - && targetRect.height() <= raster->paintDevice()->height()) { - unlock(); - pmData->blittable()->fillRect(targetRect, color); - } else { - QRectF deviceRect(0, 0, raster->paintDevice()->width(), raster->paintDevice()->height()); - unlock(); - pmData->blittable()->fillRect(deviceRect & targetRect, color); - } - } - } - - void clipAndDrawPixmap(const QRectF &clip, const QRectF &target, const QPixmap &pm, const QRectF &sr) { - QRectF intersectedRect = clip.intersected(target); - if (intersectedRect.isEmpty()) - return; - QRectF source = sr; - if (intersectedRect.size() != target.size()) { - qreal deltaTop = target.top() - intersectedRect.top(); - qreal deltaLeft = target.left() - intersectedRect.left(); - qreal deltaBottom = target.bottom() - intersectedRect.bottom(); - qreal deltaRight = target.right() - intersectedRect.right(); - source.adjust(-deltaLeft, -deltaTop, -deltaRight, -deltaBottom); - } - pmData->unmarkRasterOverlay(intersectedRect); - pmData->blittable()->drawPixmap(intersectedRect, pm, source); - } + void lock(); + void unlock(); + void fillRect(const QRectF &rect, const QColor &color); + void clipAndDrawPixmap(const QRectF &clip, const QRectF &target, const QPixmap &pm, const QRectF &sr); void updateClip() { Q_Q(QBlitterPaintEngine); @@ -272,6 +217,74 @@ public: uint hasXForm; }; + +inline void QBlitterPaintEnginePrivate::lock() +{ + if (!pmData->blittable()->isLocked()) + raster->d_func()->rasterBuffer->prepare(pmData->buffer()); +} + +inline void QBlitterPaintEnginePrivate::unlock() +{ + pmData->blittable()->unlock(); +} + +void QBlitterPaintEnginePrivate::fillRect(const QRectF &rect, const QColor &color) +{ + Q_Q(QBlitterPaintEngine); + pmData->unmarkRasterOverlay(rect); + QRectF targetRect = rect; + if (hasXForm) + targetRect = q->state()->matrix.mapRect(rect); + const QClipData *clipData = q->clipData();; + if (clipData) { + if (clipData->hasRectClip) { + unlock(); + pmData->blittable()->fillRect(targetRect & clipData->clipRect, color); + } else if (clipData->hasRegionClip) { + QVector rects = clipData->clipRegion.rects(); + for (int i = 0; i < rects.size(); ++i) { + QRect intersectRect = rects.at(i).intersected(targetRect.toRect()); + if (!intersectRect.isEmpty()) { + unlock(); + pmData->blittable()->fillRect(intersectRect, color); + } + } + } + } else { + if (targetRect.x() >= 0 && targetRect.y() >= 0 + && targetRect.width() <= raster->paintDevice()->width() + && targetRect.height() <= raster->paintDevice()->height()) { + unlock(); + pmData->blittable()->fillRect(targetRect, color); + } else { + QRectF deviceRect(0, 0, raster->paintDevice()->width(), raster->paintDevice()->height()); + unlock(); + pmData->blittable()->fillRect(deviceRect & targetRect, color); + } + } +} + +void QBlitterPaintEnginePrivate::clipAndDrawPixmap(const QRectF &clip, + const QRectF &target, + const QPixmap &pm, + const QRectF &sr) +{ + QRectF intersectedRect = clip.intersected(target); + if (intersectedRect.isEmpty()) + return; + QRectF source = sr; + if (intersectedRect.size() != target.size()) { + qreal deltaTop = target.top() - intersectedRect.top(); + qreal deltaLeft = target.left() - intersectedRect.left(); + qreal deltaBottom = target.bottom() - intersectedRect.bottom(); + qreal deltaRight = target.right() - intersectedRect.right(); + source.adjust(-deltaLeft, -deltaTop, -deltaRight, -deltaBottom); + } + pmData->unmarkRasterOverlay(intersectedRect); + pmData->blittable()->drawPixmap(intersectedRect, pm, source); +} + QBlitterPaintEngine::QBlitterPaintEngine(QBlittablePlatformPixmap *p) : QPaintEngineEx(*(new QBlitterPaintEnginePrivate(p))) {} -- cgit v1.2.3 From feb6211dfbee0c73b0749cfe6be8b6504ea056e6 Mon Sep 17 00:00:00 2001 From: Holger Hans Peter Freyther Date: Sun, 1 Jan 2012 20:56:38 +0100 Subject: blitter: Move state updates into new methods MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Create updateCompleteState(QPainterState*) so we don't need to call into the paintengine, move all state methods into the QBlitterPaintEnginePrivate class. Change-Id: If30fdcc3f63755e0443bced7d9d9fb993d4ec2b7 Reviewed-by: Jørgen Lind --- src/gui/painting/qpaintengine_blitter.cpp | 131 ++++++++++++++++++++---------- 1 file changed, 86 insertions(+), 45 deletions(-) diff --git a/src/gui/painting/qpaintengine_blitter.cpp b/src/gui/painting/qpaintengine_blitter.cpp index e0049075dc..039e69e048 100644 --- a/src/gui/painting/qpaintengine_blitter.cpp +++ b/src/gui/painting/qpaintengine_blitter.cpp @@ -199,12 +199,15 @@ public: void fillRect(const QRectF &rect, const QColor &color); void clipAndDrawPixmap(const QRectF &clip, const QRectF &target, const QPixmap &pm, const QRectF &sr); - void updateClip() { - Q_Q(QBlitterPaintEngine); - const QClipData *clip = q->clipData(); - bool complex = clip && !(clip->hasRectClip || clip->hasRegionClip); - caps.updateState(STATE_CLIP_COMPLEX, complex); - } + + void updateCompleteState(QPainterState *s); + void updatePenState(QPainterState *s); + void updateBrushState(QPainterState *s); + void updateOpacityState(QPainterState *s); + void updateCompositionModeState(QPainterState *s); + void updateRenderHintsState(QPainterState *s); + void updateTransformState(QPainterState *s); + void updateClipState(QPainterState *s); void systemStateChanged() { raster->d_func()->systemStateChanged(); @@ -229,6 +232,71 @@ inline void QBlitterPaintEnginePrivate::unlock() pmData->blittable()->unlock(); } +// State tracking to make decisions +void QBlitterPaintEnginePrivate::updateCompleteState(QPainterState *s) +{ + updatePenState(s); + updateBrushState(s); + updateOpacityState(s); + updateCompositionModeState(s); + updateRenderHintsState(s); + updateTransformState(s); + updateClipState(s); +} + +void QBlitterPaintEnginePrivate::updatePenState(QPainterState *s) +{ + caps.updateState(STATE_PEN_ENABLED, qpen_style(s->pen) != Qt::NoPen); +} + +void QBlitterPaintEnginePrivate::updateBrushState(QPainterState *s) +{ + bool solid = qbrush_style(s->brush) == Qt::SolidPattern; + + caps.updateState(STATE_BRUSH_PATTERN, !solid); + caps.updateState(STATE_BRUSH_ALPHA, + qbrush_color(s->brush).alpha() < 255); +} + +void QBlitterPaintEnginePrivate::updateOpacityState(QPainterState *s) +{ + bool translucent = s->opacity < 1; + caps.updateState(STATE_ALPHA, translucent); +} + +void QBlitterPaintEnginePrivate::updateCompositionModeState(QPainterState *s) +{ + bool nonTrivial = s->composition_mode != QPainter::CompositionMode_SourceOver + && s->composition_mode != QPainter::CompositionMode_Source; + + caps.updateState(STATE_BLENDING_COMPLEX, nonTrivial); +} + +void QBlitterPaintEnginePrivate::updateRenderHintsState(QPainterState *s) +{ + bool aa = s->renderHints & QPainter::Antialiasing; + caps.updateState(STATE_ANTIALIASING, aa); +} + +void QBlitterPaintEnginePrivate::updateTransformState(QPainterState *s) +{ + QTransform::TransformationType type = s->matrix.type(); + + caps.updateState(STATE_XFORM_COMPLEX, type > QTransform::TxScale); + caps.updateState(STATE_XFORM_SCALE, type > QTransform::TxTranslate); + + hasXForm = type >= QTransform::TxTranslate; +} + +void QBlitterPaintEnginePrivate::updateClipState(QPainterState *) +{ + Q_Q(QBlitterPaintEngine); + + const QClipData *clip = q->clipData(); + bool complexClip = clip && !(clip->hasRectClip || clip->hasRegionClip); + caps.updateState(STATE_CLIP_COMPLEX, complexClip); +} + void QBlitterPaintEnginePrivate::fillRect(const QRectF &rect, const QColor &color) { Q_Q(QBlitterPaintEngine); @@ -437,14 +505,14 @@ void QBlitterPaintEngine::clip(const QVectorPath &path, Qt::ClipOperation op) Q_D(QBlitterPaintEngine); d->lock(); d->raster->clip(path, op); - d->updateClip(); + d->updateClipState(state()); } void QBlitterPaintEngine::clip(const QRect &rect, Qt::ClipOperation op){ Q_D(QBlitterPaintEngine); d->lock(); d->raster->clip(rect, op); - d->updateClip(); + d->updateClipState(state()); } void QBlitterPaintEngine::clip(const QRegion ®ion, Qt::ClipOperation op) @@ -452,7 +520,7 @@ void QBlitterPaintEngine::clip(const QRegion ®ion, Qt::ClipOperation op) Q_D(QBlitterPaintEngine); d->lock(); d->raster->clip(region, op); - d->updateClip(); + d->updateClipState(state()); } void QBlitterPaintEngine::clipEnabledChanged() @@ -460,6 +528,7 @@ void QBlitterPaintEngine::clipEnabledChanged() Q_D(QBlitterPaintEngine); d->lock(); d->raster->clipEnabledChanged(); + d->updateClipState(state()); } void QBlitterPaintEngine::penChanged() @@ -467,7 +536,8 @@ void QBlitterPaintEngine::penChanged() Q_D(QBlitterPaintEngine); d->lock(); d->raster->penChanged(); - d->caps.updateState(STATE_PEN_ENABLED, qpen_style(state()->pen) != Qt::NoPen); + + d->updatePenState(state()); } void QBlitterPaintEngine::brushChanged() @@ -475,11 +545,7 @@ void QBlitterPaintEngine::brushChanged() Q_D(QBlitterPaintEngine); d->raster->brushChanged(); - bool solid = qbrush_style(state()->brush) == Qt::SolidPattern; - - d->caps.updateState(STATE_BRUSH_PATTERN, !solid); - d->caps.updateState(STATE_BRUSH_ALPHA, - qbrush_color(state()->brush).alpha() < 255); + d->updateBrushState(state()); } void QBlitterPaintEngine::brushOriginChanged() @@ -492,44 +558,28 @@ void QBlitterPaintEngine::opacityChanged() { Q_D(QBlitterPaintEngine); d->raster->opacityChanged(); - - bool translucent = state()->opacity < 1; - d->caps.updateState(STATE_ALPHA, translucent); + d->updateOpacityState(state()); } void QBlitterPaintEngine::compositionModeChanged() { Q_D(QBlitterPaintEngine); d->raster->compositionModeChanged(); - - bool nonTrivial = state()->composition_mode != QPainter::CompositionMode_SourceOver - && state()->composition_mode != QPainter::CompositionMode_Source; - - d->caps.updateState(STATE_BLENDING_COMPLEX, nonTrivial); + d->updateCompositionModeState(state()); } void QBlitterPaintEngine::renderHintsChanged() { Q_D(QBlitterPaintEngine); d->raster->renderHintsChanged(); - - bool aa = state()->renderHints & QPainter::Antialiasing; - d->caps.updateState(STATE_ANTIALIASING, aa); - + d->updateRenderHintsState(state()); } void QBlitterPaintEngine::transformChanged() { Q_D(QBlitterPaintEngine); d->raster->transformChanged(); - - QTransform::TransformationType type = state()->matrix.type(); - - d->caps.updateState(STATE_XFORM_COMPLEX, type > QTransform::TxScale); - d->caps.updateState(STATE_XFORM_SCALE, type > QTransform::TxTranslate); - - d->hasXForm = type >= QTransform::TxTranslate; - + d->updateTransformState(state()); } void QBlitterPaintEngine::drawRects(const QRect *rects, int rectCount) @@ -630,16 +680,7 @@ void QBlitterPaintEngine::setState(QPainterState *s) QPaintEngineEx::setState(s); d->raster->setState(s); - clipEnabledChanged(); - penChanged(); - brushChanged(); - brushOriginChanged(); - opacityChanged(); - compositionModeChanged(); - renderHintsChanged(); - transformChanged(); - - d->updateClip(); + d->updateCompleteState(s); } inline QRasterPaintEngine *QBlitterPaintEngine::raster() const -- cgit v1.2.3 From cef3eb52110c140a09f41276a1452f80f21fb9c6 Mon Sep 17 00:00:00 2001 From: Holger Hans Peter Freyther Date: Sun, 1 Jan 2012 15:49:44 +0100 Subject: blitter: Fix the 'solid' detection for the brush in case of fillRect MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit A default QPainter will set a QBrush with Qt::NoBrush BrushStyle, the current code detects this as a non solid fill and all calls with fillRect and a color will not go through QBlittable. Check for Solid or NoBrush style. Manually verified that a p.fillRect(rect, Qt::red) goes through the accelerated path now. Change-Id: Ic0d98030e94f5d11abbe61628fbf71d1e08219c2 Reviewed-by: Jørgen Lind --- src/gui/painting/qpaintengine_blitter.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/gui/painting/qpaintengine_blitter.cpp b/src/gui/painting/qpaintengine_blitter.cpp index 039e69e048..0b7571b949 100644 --- a/src/gui/painting/qpaintengine_blitter.cpp +++ b/src/gui/painting/qpaintengine_blitter.cpp @@ -251,9 +251,9 @@ void QBlitterPaintEnginePrivate::updatePenState(QPainterState *s) void QBlitterPaintEnginePrivate::updateBrushState(QPainterState *s) { - bool solid = qbrush_style(s->brush) == Qt::SolidPattern; + Qt::BrushStyle style = qbrush_style(s->brush); - caps.updateState(STATE_BRUSH_PATTERN, !solid); + caps.updateState(STATE_BRUSH_PATTERN, style > Qt::SolidPattern); caps.updateState(STATE_BRUSH_ALPHA, qbrush_color(s->brush).alpha() < 255); } -- cgit v1.2.3 From ca1921ffe99c95847b810317f9143e27a7cb0967 Mon Sep 17 00:00:00 2001 From: Holger Hans Peter Freyther Date: Sun, 1 Jan 2012 21:26:56 +0100 Subject: blitter: Group code by functionality in header and cpp file MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Group code responsible for tracking the render pipeline state to check if we can easily accelerate it * Code that will call into the QBlittable * Code that will lock the QBlittable before calling into raster Change-Id: I862e242d59805de5094ed363b486afcdbc23ff78 Reviewed-by: Jørgen Lind --- src/gui/painting/qpaintengine_blitter.cpp | 217 +++++++++++++++--------------- src/gui/painting/qpaintengine_blitter_p.h | 21 ++- 2 files changed, 118 insertions(+), 120 deletions(-) diff --git a/src/gui/painting/qpaintengine_blitter.cpp b/src/gui/painting/qpaintengine_blitter.cpp index 0b7571b949..6eeb97bb82 100644 --- a/src/gui/painting/qpaintengine_blitter.cpp +++ b/src/gui/painting/qpaintengine_blitter.cpp @@ -360,6 +360,58 @@ QBlitterPaintEngine::QBlitterPaintEngine(QBlittablePlatformPixmap *p) QBlitterPaintEngine::~QBlitterPaintEngine() {} +// State tracking +void QBlitterPaintEngine::penChanged() +{ + Q_D(QBlitterPaintEngine); + d->lock(); + d->raster->penChanged(); + + d->updatePenState(state()); +} + +void QBlitterPaintEngine::brushChanged() +{ + Q_D(QBlitterPaintEngine); + d->raster->brushChanged(); + + d->updateBrushState(state()); +} + +void QBlitterPaintEngine::brushOriginChanged() +{ + Q_D(QBlitterPaintEngine); + d->raster->brushOriginChanged(); +} + +void QBlitterPaintEngine::opacityChanged() +{ + Q_D(QBlitterPaintEngine); + d->raster->opacityChanged(); + d->updateOpacityState(state()); +} + +void QBlitterPaintEngine::compositionModeChanged() +{ + Q_D(QBlitterPaintEngine); + d->raster->compositionModeChanged(); + d->updateCompositionModeState(state()); +} + +void QBlitterPaintEngine::renderHintsChanged() +{ + Q_D(QBlitterPaintEngine); + d->raster->renderHintsChanged(); + d->updateRenderHintsState(state()); +} + +void QBlitterPaintEngine::transformChanged() +{ + Q_D(QBlitterPaintEngine); + d->raster->transformChanged(); + d->updateTransformState(state()); +} + QPainterState *QBlitterPaintEngine::createState(QPainterState *orig) const { Q_D(const QBlitterPaintEngine); @@ -378,7 +430,6 @@ bool QBlitterPaintEngine::begin(QPaintDevice *pdev) return ok; } - bool QBlitterPaintEngine::end() { Q_D(QBlitterPaintEngine); @@ -390,7 +441,23 @@ bool QBlitterPaintEngine::end() return d->raster->end(); } +void QBlitterPaintEngine::setState(QPainterState *s) +{ + Q_D(QBlitterPaintEngine); + d->lock(); + QPaintEngineEx::setState(s); + d->raster->setState(s); + + d->updateCompleteState(s); +} +inline QRasterPaintEngine *QBlitterPaintEngine::raster() const +{ + Q_D(const QBlitterPaintEngine); + return d->raster.data(); +} + +// Accelerated paths void QBlitterPaintEngine::fill(const QVectorPath &path, const QBrush &brush) { Q_D(QBlitterPaintEngine); @@ -492,96 +559,6 @@ void QBlitterPaintEngine::fillRect(const QRectF &rect, const QBrush &brush) } -void QBlitterPaintEngine::stroke(const QVectorPath &path, const QPen &pen) -{ - Q_D(QBlitterPaintEngine); - d->lock(); - d->pmData->markRasterOverlay(path); - d->raster->stroke(path, pen); -} - -void QBlitterPaintEngine::clip(const QVectorPath &path, Qt::ClipOperation op) -{ - Q_D(QBlitterPaintEngine); - d->lock(); - d->raster->clip(path, op); - d->updateClipState(state()); -} - -void QBlitterPaintEngine::clip(const QRect &rect, Qt::ClipOperation op){ - Q_D(QBlitterPaintEngine); - d->lock(); - d->raster->clip(rect, op); - d->updateClipState(state()); -} - -void QBlitterPaintEngine::clip(const QRegion ®ion, Qt::ClipOperation op) -{ - Q_D(QBlitterPaintEngine); - d->lock(); - d->raster->clip(region, op); - d->updateClipState(state()); -} - -void QBlitterPaintEngine::clipEnabledChanged() -{ - Q_D(QBlitterPaintEngine); - d->lock(); - d->raster->clipEnabledChanged(); - d->updateClipState(state()); -} - -void QBlitterPaintEngine::penChanged() -{ - Q_D(QBlitterPaintEngine); - d->lock(); - d->raster->penChanged(); - - d->updatePenState(state()); -} - -void QBlitterPaintEngine::brushChanged() -{ - Q_D(QBlitterPaintEngine); - d->raster->brushChanged(); - - d->updateBrushState(state()); -} - -void QBlitterPaintEngine::brushOriginChanged() -{ - Q_D(QBlitterPaintEngine); - d->raster->brushOriginChanged(); -} - -void QBlitterPaintEngine::opacityChanged() -{ - Q_D(QBlitterPaintEngine); - d->raster->opacityChanged(); - d->updateOpacityState(state()); -} - -void QBlitterPaintEngine::compositionModeChanged() -{ - Q_D(QBlitterPaintEngine); - d->raster->compositionModeChanged(); - d->updateCompositionModeState(state()); -} - -void QBlitterPaintEngine::renderHintsChanged() -{ - Q_D(QBlitterPaintEngine); - d->raster->renderHintsChanged(); - d->updateRenderHintsState(state()); -} - -void QBlitterPaintEngine::transformChanged() -{ - Q_D(QBlitterPaintEngine); - d->raster->transformChanged(); - d->updateTransformState(state()); -} - void QBlitterPaintEngine::drawRects(const QRect *rects, int rectCount) { Q_D(QBlitterPaintEngine); @@ -635,6 +612,46 @@ void QBlitterPaintEngine::drawPixmap(const QRectF &r, const QPixmap &pm, const Q } } +// Overriden methods to lock the graphics memory +void QBlitterPaintEngine::stroke(const QVectorPath &path, const QPen &pen) +{ + Q_D(QBlitterPaintEngine); + d->lock(); + d->pmData->markRasterOverlay(path); + d->raster->stroke(path, pen); +} + +void QBlitterPaintEngine::clip(const QVectorPath &path, Qt::ClipOperation op) +{ + Q_D(QBlitterPaintEngine); + d->lock(); + d->raster->clip(path, op); + d->updateClipState(state()); +} + +void QBlitterPaintEngine::clip(const QRect &rect, Qt::ClipOperation op){ + Q_D(QBlitterPaintEngine); + d->lock(); + d->raster->clip(rect, op); + d->updateClipState(state()); +} + +void QBlitterPaintEngine::clip(const QRegion ®ion, Qt::ClipOperation op) +{ + Q_D(QBlitterPaintEngine); + d->lock(); + d->raster->clip(region, op); + d->updateClipState(state()); +} + +void QBlitterPaintEngine::clipEnabledChanged() +{ + Q_D(QBlitterPaintEngine); + d->lock(); + d->raster->clipEnabledChanged(); + d->updateClipState(state()); +} + void QBlitterPaintEngine::drawImage(const QRectF &r, const QImage &pm, const QRectF &sr, Qt::ImageConversionFlags flags) { @@ -644,7 +661,6 @@ void QBlitterPaintEngine::drawImage(const QRectF &r, const QImage &pm, const QRe d->raster->drawImage(r, pm, sr, flags); } - void QBlitterPaintEngine::drawTextItem(const QPointF &pos, const QTextItem &ti) { Q_D(QBlitterPaintEngine); @@ -664,7 +680,6 @@ void QBlitterPaintEngine::drawStaticTextItem(QStaticTextItem *sti) } - void QBlitterPaintEngine::drawEllipse(const QRectF &r) { Q_D(QBlitterPaintEngine); @@ -673,22 +688,6 @@ void QBlitterPaintEngine::drawEllipse(const QRectF &r) d->raster->drawEllipse(r); } -void QBlitterPaintEngine::setState(QPainterState *s) -{ - Q_D(QBlitterPaintEngine); - d->lock(); - QPaintEngineEx::setState(s); - d->raster->setState(s); - - d->updateCompleteState(s); -} - -inline QRasterPaintEngine *QBlitterPaintEngine::raster() const -{ - Q_D(const QBlitterPaintEngine); - return d->raster.data(); -} - QT_END_NAMESPACE #endif //QT_NO_BLITTABLE diff --git a/src/gui/painting/qpaintengine_blitter_p.h b/src/gui/painting/qpaintengine_blitter_p.h index 13a059705c..105cf489c2 100644 --- a/src/gui/painting/qpaintengine_blitter_p.h +++ b/src/gui/painting/qpaintengine_blitter_p.h @@ -66,12 +66,14 @@ public: virtual bool begin(QPaintDevice *pdev); virtual bool end(); + // Call down into QBlittable virtual void fill(const QVectorPath &path, const QBrush &brush); virtual void stroke(const QVectorPath &path, const QPen &pen); - - virtual void clip(const QVectorPath &path, Qt::ClipOperation op); - virtual void clip(const QRect &rect, Qt::ClipOperation op); - virtual void clip(const QRegion ®ion, Qt::ClipOperation op); + virtual void fillRect(const QRectF &rect, const QBrush &brush); + virtual void fillRect(const QRectF &rect, const QColor &color); + virtual void drawRects(const QRect *rects, int rectCount); + virtual void drawRects(const QRectF *rects, int rectCount); + virtual void drawPixmap(const QRectF &r, const QPixmap &pm, const QRectF &sr); virtual void clipEnabledChanged(); virtual void penChanged(); @@ -82,13 +84,10 @@ public: virtual void renderHintsChanged(); virtual void transformChanged(); - virtual void fillRect(const QRectF &rect, const QBrush &brush); - virtual void fillRect(const QRectF &rect, const QColor &color); - - virtual void drawRects(const QRect *rects, int rectCount); - virtual void drawRects(const QRectF *rects, int rectCount); - - virtual void drawPixmap(const QRectF &r, const QPixmap &pm, const QRectF &sr); + // Override to lock the QBlittable before using raster + virtual void clip(const QVectorPath &path, Qt::ClipOperation op); + virtual void clip(const QRect &rect, Qt::ClipOperation op); + virtual void clip(const QRegion ®ion, Qt::ClipOperation op); virtual void drawImage(const QRectF &r, const QImage &pm, const QRectF &sr, Qt::ImageConversionFlags flags); -- cgit v1.2.3 From 6a1ee9667f42b98bd0a28d4beef8e15adbc241e1 Mon Sep 17 00:00:00 2001 From: Holger Hans Peter Freyther Date: Sun, 1 Jan 2012 22:12:34 +0100 Subject: blitter: Base QBlitterPaintEngine on QRasterPaintEngine MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The original intention was to identify a clipping bug, it turns out that during a ::begin() (and systemChanged) we should forward the QPaintEnginePrivate state to our proxy engine. Instead of using the proxy-pattern subclass rasterengine and specialize the paths we are able to accelerate using the blitter interface. This will avoid similiar problems in the future. I have no performance measurement to show which of the two approaches is faster/slower. Change-Id: I39bff11b32b1fe20284c7e8df60050de5991bb6e Reviewed-by: Jørgen Lind --- src/gui/image/qpixmap_blitter_p.h | 32 +++++ src/gui/painting/qpaintengine_blitter.cpp | 190 ++++++++++++++++-------------- src/gui/painting/qpaintengine_blitter_p.h | 46 +++----- 3 files changed, 151 insertions(+), 117 deletions(-) diff --git a/src/gui/image/qpixmap_blitter_p.h b/src/gui/image/qpixmap_blitter_p.h index b0a9b7f848..50ac16889a 100644 --- a/src/gui/image/qpixmap_blitter_p.h +++ b/src/gui/image/qpixmap_blitter_p.h @@ -72,8 +72,11 @@ public: void markRasterOverlay(const QRectF &); void markRasterOverlay(const QPointF &, const QTextItem &); void markRasterOverlay(const QVectorPath &); + void markRasterOverlay(const QPainterPath &); void markRasterOverlay(const QRect *rects, int rectCount); void markRasterOverlay(const QRectF *rects, int rectCount); + void markRasterOverlay(const QPointF *points, int pointCount); + void markRasterOverlay(const QPoint *points, int pointCount); void unmarkRasterOverlay(const QRectF &); #ifdef QT_BLITTER_RASTEROVERLAY @@ -153,6 +156,35 @@ inline void QBlittablePlatformPixmap::markRasterOverlay(const QRectF *rects, int #endif } +inline void QBlittablePlatformPixmap::markRasterOverlay(const QPointF *points, int pointCount) +{ +#ifdef QT_BLITTER_RASTEROVERLAY +#error "not ported yet" +#else + Q_UNUSED(points); + Q_UNUSED(pointCount); +#endif +} + +inline void QBlittablePlatformPixmap::markRasterOverlay(const QPoint *points, int pointCount) +{ +#ifdef QT_BLITTER_RASTEROVERLAY +#error "not ported yet" +#else + Q_UNUSED(points); + Q_UNUSED(pointCount); +#endif +} + +inline void QBlittablePlatformPixmap::markRasterOverlay(const QPainterPath& path) +{ +#ifdef QT_BLITTER_RASTEROVERLAY +#error "not ported yet" +#else + Q_UNUSED(path); +#endif +} + inline void QBlittablePlatformPixmap::unmarkRasterOverlay(const QRectF &rect) { #ifdef QT_BLITTER_RASTEROVERLAY diff --git a/src/gui/painting/qpaintengine_blitter.cpp b/src/gui/painting/qpaintengine_blitter.cpp index 6eeb97bb82..f8d6f037fa 100644 --- a/src/gui/painting/qpaintengine_blitter.cpp +++ b/src/gui/painting/qpaintengine_blitter.cpp @@ -180,19 +180,17 @@ private: uint capabillitiesState; }; -class QBlitterPaintEnginePrivate : public QPaintEngineExPrivate +class QBlitterPaintEnginePrivate : public QRasterPaintEnginePrivate { Q_DECLARE_PUBLIC(QBlitterPaintEngine); public: QBlitterPaintEnginePrivate(QBlittablePlatformPixmap *p) - : QPaintEngineExPrivate() + : QRasterPaintEnginePrivate() , pmData(p) , caps(pmData->blittable()->capabilities()) , hasXForm(false) - { - raster.reset(new QRasterPaintEngine(p->buffer())); - } + {} void lock(); void unlock(); @@ -209,12 +207,6 @@ public: void updateTransformState(QPainterState *s); void updateClipState(QPainterState *s); - void systemStateChanged() { - raster->d_func()->systemStateChanged(); - } - - QScopedPointer raster; - QBlittablePlatformPixmap *pmData; CapabilitiesToStateMask caps; uint hasXForm; @@ -224,7 +216,7 @@ public: inline void QBlitterPaintEnginePrivate::lock() { if (!pmData->blittable()->isLocked()) - raster->d_func()->rasterBuffer->prepare(pmData->buffer()); + rasterBuffer->prepare(pmData->buffer()); } inline void QBlitterPaintEnginePrivate::unlock() @@ -290,10 +282,8 @@ void QBlitterPaintEnginePrivate::updateTransformState(QPainterState *s) void QBlitterPaintEnginePrivate::updateClipState(QPainterState *) { - Q_Q(QBlitterPaintEngine); - - const QClipData *clip = q->clipData(); - bool complexClip = clip && !(clip->hasRectClip || clip->hasRegionClip); + const QClipData *clipData = clip(); + bool complexClip = clipData && !(clipData->hasRectClip || clipData->hasRegionClip); caps.updateState(STATE_CLIP_COMPLEX, complexClip); } @@ -304,7 +294,7 @@ void QBlitterPaintEnginePrivate::fillRect(const QRectF &rect, const QColor &colo QRectF targetRect = rect; if (hasXForm) targetRect = q->state()->matrix.mapRect(rect); - const QClipData *clipData = q->clipData();; + const QClipData *clipData = clip(); if (clipData) { if (clipData->hasRectClip) { unlock(); @@ -321,12 +311,12 @@ void QBlitterPaintEnginePrivate::fillRect(const QRectF &rect, const QColor &colo } } else { if (targetRect.x() >= 0 && targetRect.y() >= 0 - && targetRect.width() <= raster->paintDevice()->width() - && targetRect.height() <= raster->paintDevice()->height()) { + && targetRect.width() <= q->paintDevice()->width() + && targetRect.height() <= q->paintDevice()->height()) { unlock(); pmData->blittable()->fillRect(targetRect, color); } else { - QRectF deviceRect(0, 0, raster->paintDevice()->width(), raster->paintDevice()->height()); + QRectF deviceRect(0, 0, q->paintDevice()->width(), q->paintDevice()->height()); unlock(); pmData->blittable()->fillRect(deviceRect & targetRect, color); } @@ -354,77 +344,70 @@ void QBlitterPaintEnginePrivate::clipAndDrawPixmap(const QRectF &clip, } QBlitterPaintEngine::QBlitterPaintEngine(QBlittablePlatformPixmap *p) - : QPaintEngineEx(*(new QBlitterPaintEnginePrivate(p))) -{} - -QBlitterPaintEngine::~QBlitterPaintEngine() + : QRasterPaintEngine(*(new QBlitterPaintEnginePrivate(p)), p->buffer()) {} // State tracking void QBlitterPaintEngine::penChanged() { Q_D(QBlitterPaintEngine); - d->lock(); - d->raster->penChanged(); + QRasterPaintEngine::penChanged(); d->updatePenState(state()); } void QBlitterPaintEngine::brushChanged() { Q_D(QBlitterPaintEngine); - d->raster->brushChanged(); + QRasterPaintEngine::brushChanged(); d->updateBrushState(state()); } -void QBlitterPaintEngine::brushOriginChanged() -{ - Q_D(QBlitterPaintEngine); - d->raster->brushOriginChanged(); -} - void QBlitterPaintEngine::opacityChanged() { Q_D(QBlitterPaintEngine); - d->raster->opacityChanged(); + + QRasterPaintEngine::opacityChanged(); d->updateOpacityState(state()); } void QBlitterPaintEngine::compositionModeChanged() { Q_D(QBlitterPaintEngine); - d->raster->compositionModeChanged(); + + QRasterPaintEngine::compositionModeChanged(); d->updateCompositionModeState(state()); } void QBlitterPaintEngine::renderHintsChanged() { Q_D(QBlitterPaintEngine); - d->raster->renderHintsChanged(); + + QRasterPaintEngine::renderHintsChanged(); d->updateRenderHintsState(state()); } void QBlitterPaintEngine::transformChanged() { Q_D(QBlitterPaintEngine); - d->raster->transformChanged(); + + QRasterPaintEngine::transformChanged(); d->updateTransformState(state()); } -QPainterState *QBlitterPaintEngine::createState(QPainterState *orig) const +void QBlitterPaintEngine::clipEnabledChanged() { - Q_D(const QBlitterPaintEngine); - return d->raster->createState(orig); + Q_D(QBlitterPaintEngine); + QRasterPaintEngine::clipEnabledChanged(); + d->updateClipState(state()); } bool QBlitterPaintEngine::begin(QPaintDevice *pdev) { - Q_D(QBlitterPaintEngine); - - setActive(true); - bool ok = d->raster->begin(pdev); + bool ok = QRasterPaintEngine::begin(pdev); #ifdef QT_BLITTER_RASTEROVERLAY + Q_D(QBlitterPaintEngine); d->pmData->unmergeOverlay(); #endif return ok; @@ -432,31 +415,22 @@ bool QBlitterPaintEngine::begin(QPaintDevice *pdev) bool QBlitterPaintEngine::end() { - Q_D(QBlitterPaintEngine); - - setActive(false); #ifdef QT_BLITTER_RASTEROVERLAY + Q_D(QBlitterPaintEngine); d->pmData->mergeOverlay(); #endif - return d->raster->end(); + + return QRasterPaintEngine::end(); } void QBlitterPaintEngine::setState(QPainterState *s) { Q_D(QBlitterPaintEngine); - d->lock(); - QPaintEngineEx::setState(s); - d->raster->setState(s); + QRasterPaintEngine::setState(s); d->updateCompleteState(s); } -inline QRasterPaintEngine *QBlitterPaintEngine::raster() const -{ - Q_D(const QBlitterPaintEngine); - return d->raster.data(); -} - // Accelerated paths void QBlitterPaintEngine::fill(const QVectorPath &path, const QBrush &brush) { @@ -467,7 +441,7 @@ void QBlitterPaintEngine::fill(const QVectorPath &path, const QBrush &brush) } else { d->lock(); d->pmData->markRasterOverlay(path); - d->raster->fill(path, brush); + QRasterPaintEngine::fill(path, brush); } } @@ -479,7 +453,7 @@ void QBlitterPaintEngine::fillRect(const QRectF &rect, const QColor &color) } else { d->lock(); d->pmData->markRasterOverlay(rect); - d->raster->fillRect(rect, color); + QRasterPaintEngine::fillRect(rect, color); } } @@ -516,7 +490,7 @@ void QBlitterPaintEngine::fillRect(const QRectF &rect, const QBrush &brush) blitWidth = transformedRect.right() -x; if (y + blitHeight > transformedRect.bottom()) blitHeight = transformedRect.bottom() - y; - const QClipData *clipData = this->clipData(); + const QClipData *clipData = d->clip(); if (clipData->hasRectClip) { QRect targetRect = QRect(x, y, blitWidth, blitHeight).intersected(clipData->clipRect); if (targetRect.isValid()) { @@ -554,7 +528,7 @@ void QBlitterPaintEngine::fillRect(const QRectF &rect, const QBrush &brush) } else { d->lock(); d->pmData->markRasterOverlay(rect); - d->raster->fillRect(rect, brush); + QRasterPaintEngine::fillRect(rect, brush); } } @@ -567,7 +541,7 @@ void QBlitterPaintEngine::drawRects(const QRect *rects, int rectCount) d->fillRect(rects[i], qbrush_color(state()->brush)); } else { d->pmData->markRasterOverlay(rects, rectCount); - QPaintEngineEx::drawRects(rects, rectCount); + QRasterPaintEngine::drawRects(rects, rectCount); } } @@ -579,10 +553,15 @@ void QBlitterPaintEngine::drawRects(const QRectF *rects, int rectCount) d->fillRect(rects[i], qbrush_color(state()->brush)); } else { d->pmData->markRasterOverlay(rects, rectCount); - QPaintEngineEx::drawRects(rects, rectCount); + QRasterPaintEngine::drawRects(rects, rectCount); } } +void QBlitterPaintEngine::drawPixmap(const QPointF &pos, const QPixmap &pm) +{ + drawPixmap(QRectF(pos, pm.size()), pm, pm.rect()); +} + void QBlitterPaintEngine::drawPixmap(const QRectF &r, const QPixmap &pm, const QRectF &sr) { Q_D(QBlitterPaintEngine); @@ -592,7 +571,7 @@ void QBlitterPaintEngine::drawPixmap(const QRectF &r, const QPixmap &pm, const Q QRectF targetRect = r; if (d->hasXForm) targetRect = state()->matrix.mapRect(r); - const QClipData *clipData = this->clipData(); + const QClipData *clipData = d->clip(); if (clipData) { if (clipData->hasRectClip) { d->clipAndDrawPixmap(clipData->clipRect, targetRect, pm, sr); @@ -602,54 +581,60 @@ void QBlitterPaintEngine::drawPixmap(const QRectF &r, const QPixmap &pm, const Q d->clipAndDrawPixmap(rects.at(i), targetRect, pm, sr); } } else { - QRectF deviceRect(0, 0, d->raster->paintDevice()->width(), d->raster->paintDevice()->height()); + QRectF deviceRect(0, 0, paintDevice()->width(), paintDevice()->height()); d->clipAndDrawPixmap(deviceRect, targetRect, pm, sr); } }else { d->lock(); d->pmData->markRasterOverlay(r); - d->raster->drawPixmap(r, pm, sr); + QRasterPaintEngine::drawPixmap(r, pm, sr); } } // Overriden methods to lock the graphics memory -void QBlitterPaintEngine::stroke(const QVectorPath &path, const QPen &pen) +void QBlitterPaintEngine::drawPolygon(const QPointF *points, int pointCount, PolygonDrawMode mode) { Q_D(QBlitterPaintEngine); d->lock(); - d->pmData->markRasterOverlay(path); - d->raster->stroke(path, pen); + d->pmData->markRasterOverlay(points, pointCount); + QRasterPaintEngine::drawPolygon(points, pointCount, mode); } -void QBlitterPaintEngine::clip(const QVectorPath &path, Qt::ClipOperation op) +void QBlitterPaintEngine::drawPolygon(const QPoint *points, int pointCount, PolygonDrawMode mode) { Q_D(QBlitterPaintEngine); d->lock(); - d->raster->clip(path, op); - d->updateClipState(state()); + d->pmData->markRasterOverlay(points, pointCount); + QRasterPaintEngine::drawPolygon(points, pointCount, mode); } -void QBlitterPaintEngine::clip(const QRect &rect, Qt::ClipOperation op){ +void QBlitterPaintEngine::fillPath(const QPainterPath &path, QSpanData *fillData) +{ Q_D(QBlitterPaintEngine); d->lock(); - d->raster->clip(rect, op); - d->updateClipState(state()); + d->pmData->markRasterOverlay(path); + QRasterPaintEngine::fillPath(path, fillData); } -void QBlitterPaintEngine::clip(const QRegion ®ion, Qt::ClipOperation op) +void QBlitterPaintEngine::fillPolygon(const QPointF *points, int pointCount, PolygonDrawMode mode) { Q_D(QBlitterPaintEngine); d->lock(); - d->raster->clip(region, op); - d->updateClipState(state()); + d->pmData->markRasterOverlay(points, pointCount); + QRasterPaintEngine::fillPolygon(points, pointCount, mode); } -void QBlitterPaintEngine::clipEnabledChanged() +void QBlitterPaintEngine::drawEllipse(const QRectF &r) { Q_D(QBlitterPaintEngine); d->lock(); - d->raster->clipEnabledChanged(); - d->updateClipState(state()); + d->pmData->markRasterOverlay(r); + QRasterPaintEngine::drawEllipse(r); +} + +void QBlitterPaintEngine::drawImage(const QPointF &pos, const QImage &image) +{ + drawImage(QRectF(pos, image.size()), image, image.rect()); } void QBlitterPaintEngine::drawImage(const QRectF &r, const QImage &pm, const QRectF &sr, @@ -658,34 +643,59 @@ void QBlitterPaintEngine::drawImage(const QRectF &r, const QImage &pm, const QRe Q_D(QBlitterPaintEngine); d->lock(); d->pmData->markRasterOverlay(r); - d->raster->drawImage(r, pm, sr, flags); + QRasterPaintEngine::drawImage(r, pm, sr, flags); +} + +void QBlitterPaintEngine::drawTiledPixmap(const QRectF &r, const QPixmap &pm, const QPointF &sr) +{ + Q_D(QBlitterPaintEngine); + d->lock(); + d->pmData->markRasterOverlay(r); + QRasterPaintEngine::drawTiledPixmap(r, pm, sr); } void QBlitterPaintEngine::drawTextItem(const QPointF &pos, const QTextItem &ti) { Q_D(QBlitterPaintEngine); d->lock(); - d->raster->drawTextItem(pos, ti); d->pmData->markRasterOverlay(pos, ti); + QRasterPaintEngine::drawTextItem(pos, ti); } -void QBlitterPaintEngine::drawStaticTextItem(QStaticTextItem *sti) +void QBlitterPaintEngine::drawPoints(const QPointF *points, int pointCount) { Q_D(QBlitterPaintEngine); d->lock(); - d->raster->drawStaticTextItem(sti); + d->pmData->markRasterOverlay(points, pointCount); + QRasterPaintEngine::drawPoints(points, pointCount); +} -//#### d->pmData->markRasterOverlay(sti); - qWarning("not implemented: markRasterOverlay for QStaticTextItem"); +void QBlitterPaintEngine::drawPoints(const QPoint *points, int pointCount) +{ + Q_D(QBlitterPaintEngine); + d->lock(); + d->pmData->markRasterOverlay(points, pointCount); + QRasterPaintEngine::drawPoints(points, pointCount); +} +void QBlitterPaintEngine::stroke(const QVectorPath &path, const QPen &pen) +{ + Q_D(QBlitterPaintEngine); + d->lock(); + d->pmData->markRasterOverlay(path); + QRasterPaintEngine::stroke(path, pen); } -void QBlitterPaintEngine::drawEllipse(const QRectF &r) +void QBlitterPaintEngine::drawStaticTextItem(QStaticTextItem *sti) { Q_D(QBlitterPaintEngine); d->lock(); - d->pmData->markRasterOverlay(r); - d->raster->drawEllipse(r); + QRasterPaintEngine::drawStaticTextItem(sti); + +#ifdef QT_BLITTER_RASTEROVERLAY +//#### d->pmData->markRasterOverlay(sti); + qWarning("not implemented: markRasterOverlay for QStaticTextItem"); +#endif } QT_END_NAMESPACE diff --git a/src/gui/painting/qpaintengine_blitter_p.h b/src/gui/painting/qpaintengine_blitter_p.h index 105cf489c2..bb6eba496f 100644 --- a/src/gui/painting/qpaintengine_blitter_p.h +++ b/src/gui/painting/qpaintengine_blitter_p.h @@ -42,7 +42,6 @@ #ifndef QPAINTENGINE_BLITTER_P_H #define QPAINTENGINE_BLITTER_P_H -#include "private/qpaintengineex_p.h" #include "private/qpaintengine_raster_p.h" #ifndef QT_NO_BLITTABLE @@ -52,14 +51,11 @@ class QBlitterPaintEnginePrivate; class QBlittablePlatformPixmap; class QBlittable; -class Q_GUI_EXPORT QBlitterPaintEngine : public QPaintEngineEx +class Q_GUI_EXPORT QBlitterPaintEngine : public QRasterPaintEngine { Q_DECLARE_PRIVATE(QBlitterPaintEngine); public: QBlitterPaintEngine(QBlittablePlatformPixmap *p); - ~QBlitterPaintEngine(); - - virtual QPainterState *createState(QPainterState *orig) const; virtual QPaintEngine::Type type() const { return Blitter; } @@ -68,42 +64,38 @@ public: // Call down into QBlittable virtual void fill(const QVectorPath &path, const QBrush &brush); - virtual void stroke(const QVectorPath &path, const QPen &pen); virtual void fillRect(const QRectF &rect, const QBrush &brush); virtual void fillRect(const QRectF &rect, const QColor &color); virtual void drawRects(const QRect *rects, int rectCount); virtual void drawRects(const QRectF *rects, int rectCount); - virtual void drawPixmap(const QRectF &r, const QPixmap &pm, const QRectF &sr); + void drawPixmap(const QPointF &p, const QPixmap &pm); + void drawPixmap(const QRectF &r, const QPixmap &pm, const QRectF &sr); + // State tracking + void setState(QPainterState *s); virtual void clipEnabledChanged(); virtual void penChanged(); virtual void brushChanged(); - virtual void brushOriginChanged(); virtual void opacityChanged(); virtual void compositionModeChanged(); virtual void renderHintsChanged(); virtual void transformChanged(); // Override to lock the QBlittable before using raster - virtual void clip(const QVectorPath &path, Qt::ClipOperation op); - virtual void clip(const QRect &rect, Qt::ClipOperation op); - virtual void clip(const QRegion ®ion, Qt::ClipOperation op); - - virtual void drawImage(const QRectF &r, const QImage &pm, const QRectF &sr, Qt::ImageConversionFlags flags); - - virtual void drawTextItem(const QPointF &pos, const QTextItem &ti); - virtual void drawStaticTextItem(QStaticTextItem *); - - virtual void drawEllipse(const QRectF &r); - - virtual void setState(QPainterState *s); - - inline QPainterState *state() { return raster()->state(); } - inline const QPainterState *state() const { const QPainterState *state = raster()->state(); return state;} - inline const QClipData *clipData(){return raster()->d_func()->clip();} - -private: - QRasterPaintEngine *raster() const; + void drawPolygon(const QPointF *points, int pointCount, PolygonDrawMode mode); + void drawPolygon(const QPoint *points, int pointCount, PolygonDrawMode mode); + void fillPath(const QPainterPath &path, QSpanData *fillData); + void fillPolygon(const QPointF *points, int pointCount, PolygonDrawMode mode); + void drawEllipse(const QRectF &rect); + void drawImage(const QPointF &p, const QImage &img); + void drawImage(const QRectF &r, const QImage &pm, const QRectF &sr, + Qt::ImageConversionFlags flags = Qt::AutoColor); + void drawTiledPixmap(const QRectF &r, const QPixmap &pm, const QPointF &sr); + void drawTextItem(const QPointF &p, const QTextItem &textItem); + void drawPoints(const QPointF *points, int pointCount); + void drawPoints(const QPoint *points, int pointCount); + void stroke(const QVectorPath &path, const QPen &pen); + void drawStaticTextItem(QStaticTextItem *); }; QT_END_NAMESPACE -- cgit v1.2.3 From 1323eebfbf1285dc349f1730f30c91d1c7214132 Mon Sep 17 00:00:00 2001 From: Frederik Gladhorn Date: Fri, 30 Dec 2011 12:45:52 +0100 Subject: Remove env var to enable accessibility on linux. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Usually we don't have a plugin for this on linux anyway. But if we do, we should actually allow it to interface with the system. When using AT-SPI the plugin can detect if it should be active. Other plugins can fall back to using an env var if really needed. Change-Id: Ic9dcfa305e7cdafbf4a93bcc2dc9a0fcd9b9a7a2 Reviewed-by: Jan-Arve Sæther --- src/gui/accessible/qplatformaccessibility_qpa.cpp | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/src/gui/accessible/qplatformaccessibility_qpa.cpp b/src/gui/accessible/qplatformaccessibility_qpa.cpp index 7df827552d..722e8a59bd 100644 --- a/src/gui/accessible/qplatformaccessibility_qpa.cpp +++ b/src/gui/accessible/qplatformaccessibility_qpa.cpp @@ -123,10 +123,7 @@ void QPlatformAccessibility::initialize() if (isInit) return; isInit = true; // ### not atomic -#ifdef Q_OS_UNIX - if (qgetenv("QT_ACCESSIBILITY") != "1") - return; -#endif + #ifndef QT_NO_LIBRARY const QStringList l = bridgeloader()->keys(); for (int i = 0; i < l.count(); ++i) { -- cgit v1.2.3 From 8cb0ef0793c292d546acabc813d8af6a026dc7bf Mon Sep 17 00:00:00 2001 From: Robin Burchell Date: Sat, 17 Dec 2011 23:33:51 +0100 Subject: Inline some methods in qgrayraster. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit gray_conic_to, gray_cubic_to and gray_line_to were all single line wrappers around their equivilent gray_render counterparts, with an additional lie of error handling that never actually happened. Since this doesn't really do anything except confuse the reader, let's ... not do it :) Change-Id: Id5d86c49174acb92514b628a70bd32d6c6640a5d Reviewed-by: Samuel Rødal --- src/gui/painting/qgrayraster.c | 60 +++++------------------------------------- 1 file changed, 7 insertions(+), 53 deletions(-) diff --git a/src/gui/painting/qgrayraster.c b/src/gui/painting/qgrayraster.c index 5334f97782..837bf0292a 100644 --- a/src/gui/painting/qgrayraster.c +++ b/src/gui/painting/qgrayraster.c @@ -1090,37 +1090,6 @@ return 0; } - - static int - gray_line_to( const QT_FT_Vector* to, - PWorker worker ) - { - gray_render_line( worker, UPSCALE( to->x ), UPSCALE( to->y ) ); - return 0; - } - - - static int - gray_conic_to( const QT_FT_Vector* control, - const QT_FT_Vector* to, - PWorker worker ) - { - gray_render_conic( worker, control, to ); - return 0; - } - - - static int - gray_cubic_to( const QT_FT_Vector* control1, - const QT_FT_Vector* control2, - const QT_FT_Vector* to, - PWorker worker ) - { - gray_render_cubic( worker, control1, control2, to ); - return 0; - } - - static void gray_render_span( int count, const QT_FT_Span* spans, @@ -1464,9 +1433,7 @@ vec.x = SCALED( point->x ); vec.y = SCALED( point->y ); - error = gray_line_to( &vec, user ); - if ( error ) - goto Exit; + gray_render_line(user, UPSCALE(vec.x), UPSCALE(vec.y)); continue; } @@ -1491,10 +1458,7 @@ if ( tag == QT_FT_CURVE_TAG_ON ) { - error = gray_conic_to( &v_control, &vec, - user ); - if ( error ) - goto Exit; + gray_render_conic(user, &v_control, &vec); continue; } @@ -1504,17 +1468,12 @@ v_middle.x = ( v_control.x + vec.x ) / 2; v_middle.y = ( v_control.y + vec.y ) / 2; - error = gray_conic_to( &v_control, &v_middle, - user ); - if ( error ) - goto Exit; - + gray_render_conic(user, &v_control, &v_middle); v_control = vec; goto Do_Conic; } - error = gray_conic_to( &v_control, &v_start, - user ); + gray_render_conic(user, &v_control, &v_start); goto Close; } @@ -1544,25 +1503,20 @@ vec.x = SCALED( point->x ); vec.y = SCALED( point->y ); - error = gray_cubic_to( &vec1, &vec2, &vec, user ); - if ( error ) - goto Exit; + gray_render_cubic(user, &vec1, &vec2, &vec); continue; } - error = gray_cubic_to( &vec1, &vec2, &v_start, user ); + gray_render_cubic(user, &vec1, &vec2, &v_start); goto Close; } } } /* close the contour with a line segment */ - error = gray_line_to( &v_start, user ); + gray_render_line(user, UPSCALE(v_start.x), UPSCALE(v_start.y)); Close: - if ( error ) - goto Exit; - first = last + 1; } -- cgit v1.2.3 From 5a3b08e994b9120a370123d1a8d96f28216eaeca Mon Sep 17 00:00:00 2001 From: Denis Dzyubenko Date: Fri, 30 Dec 2011 14:18:28 +0100 Subject: Do not unconditionally define QT_BEGIN_MOC_NAMESPACE Qt5 modules are supposed to be in a namespace, but if the namespace definition is hidden in a macro, then moc doesn't know about it and generates invalid moc_xx.cpp that cannot be compiled due to usage of classes outside of their namespaces - e.g. in qtjsondb we have QtAddOn::JsonDb::Foo class, but the moc_foo.cpp expects to find that class in the global namespace instead. Fixed it in QtJsonDb to define QT_BEGIN_MOC_NAMESPACE="QT_USE_NAMESPACE QT_ADDON_JSONDB_USE_NAMESPACE", however we need to ensure qglobal.h doesn't re-define that macro back. Change-Id: Ic8407f50c11d2d787167ad2f92457aa3ec126d45 Reviewed-by: Andy Shaw Reviewed-by: Richard J. Moore Reviewed-by: Toby Tomkins Reviewed-by: Olivier Goffart --- src/corelib/global/qglobal.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/corelib/global/qglobal.h b/src/corelib/global/qglobal.h index e75118fc3a..785ee4a49a 100644 --- a/src/corelib/global/qglobal.h +++ b/src/corelib/global/qglobal.h @@ -76,8 +76,12 @@ # define QT_END_NAMESPACE # define QT_BEGIN_INCLUDE_NAMESPACE # define QT_END_INCLUDE_NAMESPACE +#ifndef QT_BEGIN_MOC_NAMESPACE # define QT_BEGIN_MOC_NAMESPACE +#endif +#ifndef QT_END_MOC_NAMESPACE # define QT_END_MOC_NAMESPACE +#endif # define QT_FORWARD_DECLARE_CLASS(name) class name; # define QT_FORWARD_DECLARE_STRUCT(name) struct name; # define QT_MANGLE_NAMESPACE(name) name @@ -90,8 +94,12 @@ # define QT_END_NAMESPACE } # define QT_BEGIN_INCLUDE_NAMESPACE } # define QT_END_INCLUDE_NAMESPACE namespace QT_NAMESPACE { +#ifndef QT_BEGIN_MOC_NAMESPACE # define QT_BEGIN_MOC_NAMESPACE QT_USE_NAMESPACE +#endif +#ifndef QT_END_MOC_NAMESPACE # define QT_END_MOC_NAMESPACE +#endif # define QT_FORWARD_DECLARE_CLASS(name) \ QT_BEGIN_NAMESPACE class name; QT_END_NAMESPACE \ using QT_PREPEND_NAMESPACE(name); -- cgit v1.2.3 From 467a000089f741dd6def17dacb7f1bcc98a9249a Mon Sep 17 00:00:00 2001 From: Robin Burchell Date: Tue, 27 Dec 2011 18:11:08 +0100 Subject: Remove Symbian support from src/corelib/io/. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I52c2a58396e03f29ca478de34c914535c7ae1012 Reviewed-by: Thiago Macieira Reviewed-by: Lars Knoll Reviewed-by: Bradley T. Hughes Reviewed-by: João Abecasis --- src/corelib/io/io.pri | 25 +- src/corelib/io/qfilesystemengine_symbian.cpp | 406 --------- src/corelib/io/qfilesystemiterator_symbian.cpp | 127 --- src/corelib/io/qfilesystemwatcher.cpp | 4 - src/corelib/io/qfilesystemwatcher_symbian.cpp | 273 ------ src/corelib/io/qfilesystemwatcher_symbian_p.h | 130 --- src/corelib/io/qprocess_symbian.cpp | 1072 ------------------------ 7 files changed, 7 insertions(+), 2030 deletions(-) delete mode 100644 src/corelib/io/qfilesystemengine_symbian.cpp delete mode 100644 src/corelib/io/qfilesystemiterator_symbian.cpp delete mode 100644 src/corelib/io/qfilesystemwatcher_symbian.cpp delete mode 100644 src/corelib/io/qfilesystemwatcher_symbian_p.h delete mode 100644 src/corelib/io/qprocess_symbian.cpp diff --git a/src/corelib/io/io.pri b/src/corelib/io/io.pri index 84bc6f3d5e..a8c12227bf 100644 --- a/src/corelib/io/io.pri +++ b/src/corelib/io/io.pri @@ -83,16 +83,12 @@ win32 { SOURCES += io/qfilesystemiterator_win.cpp SOURCES += io/qstandardpaths_win.cpp } else:unix { - SOURCES += io/qfsfileengine_unix.cpp - symbian { - SOURCES += io/qfilesystemengine_symbian.cpp - SOURCES += io/qprocess_symbian.cpp - SOURCES += io/qfilesystemiterator_symbian.cpp - } else { - SOURCES += io/qfilesystemengine_unix.cpp - SOURCES += io/qprocess_unix.cpp - SOURCES += io/qfilesystemiterator_unix.cpp - } + SOURCES += \ + io/qfsfileengine_unix.cpp \ + io/qfilesystemengine_unix.cpp \ + io/qprocess_unix.cpp \ + io/qfilesystemiterator_unix.cpp \ + !nacl:macx-*: { HEADERS += io/qfilesystemwatcher_fsevents_p.h SOURCES += io/qfilesystemengine_mac.cpp @@ -104,7 +100,7 @@ win32 { SOURCES += io/qstandardpaths_unix.cpp } - linux-*:!symbian { + linux-* { SOURCES += \ io/qfilesystemwatcher_inotify.cpp \ io/qfilesystemwatcher_dnotify.cpp @@ -120,13 +116,6 @@ win32 { HEADERS += io/qfilesystemwatcher_kqueue_p.h } } - - symbian { - SOURCES += io/qfilesystemwatcher_symbian.cpp - HEADERS += io/qfilesystemwatcher_symbian_p.h - INCLUDEPATH += $$MW_LAYER_SYSTEMINCLUDE - LIBS += -lplatformenv -lesock - } } integrity { SOURCES += io/qfsfileengine_unix.cpp \ diff --git a/src/corelib/io/qfilesystemengine_symbian.cpp b/src/corelib/io/qfilesystemengine_symbian.cpp deleted file mode 100644 index c8c1dfdc84..0000000000 --- a/src/corelib/io/qfilesystemengine_symbian.cpp +++ /dev/null @@ -1,406 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtCore module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "qfilesystemengine_p.h" -#include "qfsfileengine.h" -#include -#include - -#include -#include -#include - -QT_BEGIN_NAMESPACE - -bool QFileSystemEngine::isCaseSensitive() -{ - return false; -} - -//TODO: resolve this with QDir::cleanPath, without breaking the behaviour of that -//function which is documented only by autotest -//input: a dirty absolute path, e.g. c:/../../foo/./ -//output: a clean absolute path, e.g. c:/foo/ -static QString symbianCleanAbsolutePath(const QString& path) -{ - bool isDir = path.endsWith(QLatin1Char('/')); - //using SkipEmptyParts flag to eliminate duplicated slashes - QStringList components = path.split(QLatin1Char('/'), QString::SkipEmptyParts); - int cdups = 0; - for(int i=components.count() - 1; i>=0; --i) { - if(components.at(i) == QLatin1String("..")) { - components.removeAt(i); - cdups++; - } - else if(components.at(i) == QLatin1String(".")) { - components.removeAt(i); - } - else if(cdups && i > 0) { - --cdups; - components.removeAt(i); - } - } - QString result = components.join(QLatin1String("/")); - if ((isDir&& !result.endsWith(QLatin1Char('/'))) - || (result.length() == 2 && result.at(1).unicode() == ':')) - result.append(QLatin1Char('/')); - return result; -} - -//static -QFileSystemEntry QFileSystemEngine::getLinkTarget(const QFileSystemEntry &link, QFileSystemMetaData &data) -{ - Q_UNUSED(data); - return link; -} - -//static -QFileSystemEntry QFileSystemEngine::canonicalName(const QFileSystemEntry &entry, QFileSystemMetaData &data) -{ - if (entry.isEmpty() || entry.isRoot()) - return entry; - - QFileSystemEntry result = absoluteName(entry); - if (!data.hasFlags(QFileSystemMetaData::ExistsAttribute)) - fillMetaData(result, data, QFileSystemMetaData::ExistsAttribute); - if (!data.exists()) { - // file doesn't exist - return QFileSystemEntry(); - } else { - return result; - } -} - -//static -QFileSystemEntry QFileSystemEngine::absoluteName(const QFileSystemEntry &entry) -{ - QString orig = entry.filePath(); - const bool isAbsolute = entry.isAbsolute(); - const bool isDirty = !entry.isClean(); - if (isAbsolute && !isDirty) - return entry; - - const bool isRelative = entry.isRelative(); - const bool needsDrive = (!orig.isEmpty() && orig.at(0).unicode() == '/'); - const bool isDriveLetter = !needsDrive && !isAbsolute && !isRelative && orig.length() == 2; - const bool isDriveRelative = !needsDrive && !isAbsolute && !isRelative && orig.length() > 2; - - QString result; - if (needsDrive || isDriveLetter || isDriveRelative || !isAbsolute || orig.isEmpty()) { - QFileSystemEntry cur(currentPath()); - if(needsDrive) - result = cur.filePath().left(2); - else if(isDriveRelative && cur.filePath().at(0) != orig.at(0)) - result = orig.left(2); // for BC, see tst_QFileInfo::absolutePath(:my.dll) - else - result = cur.filePath(); - if(isDriveLetter) { - result[0] = orig.at(0); //copy drive letter - orig.clear(); - } - if(isDriveRelative) { - orig = orig.mid(2); //discard the drive specifier from orig - } - } - if (!orig.isEmpty() && !(orig.length() == 1 && orig.at(0).unicode() == '.')) { - if (!result.isEmpty() && !result.endsWith(QLatin1Char('/'))) - result.append(QLatin1Char('/')); - result.append(orig); - } - - return QFileSystemEntry(symbianCleanAbsolutePath(result), QFileSystemEntry::FromInternalPath()); -} - -void QFileSystemMetaData::fillFromTEntry(const TEntry& entry) -{ - entryFlags &= ~(QFileSystemMetaData::SymbianTEntryFlags); - knownFlagsMask |= QFileSystemMetaData::SymbianTEntryFlags; - //Symbian doesn't have unix type file permissions - entryFlags |= QFileSystemMetaData::ReadPermissions; - if(!entry.IsReadOnly()) { - entryFlags |= QFileSystemMetaData::WritePermissions; - } - //set the type - if(entry.IsDir()) - entryFlags |= (QFileSystemMetaData::DirectoryType | QFileSystemMetaData::ExecutePermissions); - else - entryFlags |= QFileSystemMetaData::FileType; - - //set the attributes - entryFlags |= QFileSystemMetaData::ExistsAttribute; - if(entry.IsHidden()) - entryFlags |= QFileSystemMetaData::HiddenAttribute; - -#ifdef SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API - size_ = entry.FileSize(); -#else - size_ = (TUint)(entry.iSize); -#endif - - modificationTime_ = entry.iModified; -} - -void QFileSystemMetaData::fillFromVolumeInfo(const TVolumeInfo& info) -{ - entryFlags &= ~(QFileSystemMetaData::SymbianTEntryFlags); - knownFlagsMask |= QFileSystemMetaData::SymbianTEntryFlags; - entryFlags |= QFileSystemMetaData::ExistsAttribute; - entryFlags |= QFileSystemMetaData::Permissions; - if(info.iDrive.iDriveAtt & KDriveAttRom) { - entryFlags &= ~(QFileSystemMetaData::WritePermissions); - } - entryFlags |= QFileSystemMetaData::DirectoryType; - size_ = info.iSize; - modificationTime_ = qt_symbian_time_t_To_TTime(0); -} - -//static -bool QFileSystemEngine::fillMetaData(const QFileSystemEntry &entry, QFileSystemMetaData &data, QFileSystemMetaData::MetaDataFlags what) -{ - if (what & QFileSystemMetaData::SymbianTEntryFlags) { - RFs& fs(qt_s60GetRFs()); - TInt err; - QFileSystemEntry absentry(absoluteName(entry)); - if (entry.isEmpty()) { - err = KErrNotFound; - } else if (absentry.isRoot()) { - //Root directories don't have an entry, and Entry() returns KErrBadName. - //Therefore get information about the volume instead. - TInt drive; - err = RFs::CharToDrive(TChar(absentry.nativeFilePath().at(0).unicode()), drive); - if (!err) { - TVolumeInfo info; - err = fs.Volume(info, drive); - if (!err) - data.fillFromVolumeInfo(info); - } - } else { - TEntry ent; - err = fs.Entry(qt_QString2TPtrC(absentry.nativeFilePath()), ent); - if (!err) - data.fillFromTEntry(ent); - } - if (err) { - data.size_ = 0; - data.modificationTime_ = TTime(0); - data.entryFlags &= ~(QFileSystemMetaData::SymbianTEntryFlags); - } - //files in /sys/bin on any drive are executable, even though we don't normally have permission to check whether they exist or not - if(absentry.filePath().midRef(1,10).compare(QLatin1String(":/sys/bin/"), Qt::CaseInsensitive) == 0) - data.entryFlags |= QFileSystemMetaData::ExecutePermissions; - } - return data.hasFlags(what); -} - -//static -bool QFileSystemEngine::createDirectory(const QFileSystemEntry &entry, bool createParents) -{ - QString abspath = absoluteName(entry).nativeFilePath(); - if (!abspath.endsWith(QLatin1Char('\\'))) - abspath.append(QLatin1Char('\\')); - TInt r; - if (createParents) - r = qt_s60GetRFs().MkDirAll(qt_QString2TPtrC(abspath)); - else - r = qt_s60GetRFs().MkDir(qt_QString2TPtrC(abspath)); - if (createParents && r == KErrAlreadyExists) - return true; //# Qt5 - QDir::mkdir returns false for existing dir, QDir::mkpath returns true (should be made consistent in Qt 5) - return (r == KErrNone); -} - -//static -bool QFileSystemEngine::removeDirectory(const QFileSystemEntry &entry, bool removeEmptyParents) -{ - QString abspath = absoluteName(entry).nativeFilePath(); - if (!abspath.endsWith(QLatin1Char('\\'))) - abspath.append(QLatin1Char('\\')); - TPtrC dir(qt_QString2TPtrC(abspath)); - RFs& fs = qt_s60GetRFs(); - bool ok = false; - //behaviour of FS file engine: - //returns true if the directory could be removed - //success/failure of removing parent directories does not matter - while (KErrNone == fs.RmDir(dir)) { - ok = true; - if (!removeEmptyParents) - break; - //RFs::RmDir treats "c:\foo\bar" and "c:\foo\" the same, so it is sufficient to remove the last \ to the end - dir.Set(dir.Left(dir.LocateReverse(TChar('\\')))); - } - return ok; -} - -//static -bool QFileSystemEngine::createLink(const QFileSystemEntry &source, const QFileSystemEntry &target, QSystemError &error) -{ - Q_UNUSED(source) - Q_UNUSED(target) - error = QSystemError(KErrNotSupported, QSystemError::NativeError); - return false; -} - -//static -bool QFileSystemEngine::copyFile(const QFileSystemEntry &source, const QFileSystemEntry &target, QSystemError &error) -{ - //CFileMan is allocated each time because it is not thread-safe - CFileMan *fm = 0; - TRAPD(err, fm = CFileMan::NewL(qt_s60GetRFs())); - if (err == KErrNone) { - err = fm->Copy(qt_QString2TPtrC(absoluteName(source).nativeFilePath()), qt_QString2TPtrC(absoluteName(target).nativeFilePath()), 0); - delete fm; - } - if (err == KErrNone) - return true; - error = QSystemError(err, QSystemError::NativeError); - return false; -} - -//static -bool QFileSystemEngine::renameFile(const QFileSystemEntry &source, const QFileSystemEntry &target, QSystemError &error) -{ - QString sourcepath = absoluteName(source).nativeFilePath(); - QString targetpath = absoluteName(target).nativeFilePath(); - RFs& fs(qt_s60GetRFs()); - TInt err = fs.Rename(qt_QString2TPtrC(sourcepath), qt_QString2TPtrC(targetpath)); - if (err == KErrNone) - return true; - error = QSystemError(err, QSystemError::NativeError); - return false; -} - -//static -bool QFileSystemEngine::removeFile(const QFileSystemEntry &entry, QSystemError &error) -{ - QString targetpath = absoluteName(entry).nativeFilePath(); - RFs& fs(qt_s60GetRFs()); - TInt err = fs.Delete(qt_QString2TPtrC(targetpath)); - if (err == KErrNone) - return true; - error = QSystemError(err, QSystemError::NativeError); - return false; -} - -//static -bool QFileSystemEngine::setPermissions(const QFileSystemEntry &entry, QFile::Permissions permissions, QSystemError &error, QFileSystemMetaData *data) -{ - QString targetpath = absoluteName(entry).nativeFilePath(); - TUint setmask = 0; - TUint clearmask = 0; - RFs& fs(qt_s60GetRFs()); - if (permissions & (QFile::WriteOwner | QFile::WriteUser | QFile::WriteGroup | QFile::WriteOther)) - clearmask = KEntryAttReadOnly; //if anyone can write, it's not read-only - else - setmask = KEntryAttReadOnly; - TInt err = fs.SetAtt(qt_QString2TPtrC(targetpath), setmask, clearmask); - if (data && !err) { - data->entryFlags &= ~QFileSystemMetaData::Permissions; - data->entryFlags |= QFileSystemMetaData::MetaDataFlag(uint(permissions)); - data->knownFlagsMask |= QFileSystemMetaData::Permissions; - } - if (err == KErrNone) - return true; - error = QSystemError(err, QSystemError::NativeError); - return false; -} - -QString QFileSystemEngine::homePath() -{ - QString home = QDir::fromNativeSeparators(qt_TDesC2QString(PathInfo::PhoneMemoryRootPath())); - if(home.endsWith(QLatin1Char('/'))) - home.chop(1); - return home; -} - -QString QFileSystemEngine::rootPath() -{ - TChar drive; - TInt err = RFs::DriveToChar(RFs::GetSystemDrive(), drive); //RFs::GetSystemDriveChar not supported on S60 3.1 - Q_ASSERT(err == KErrNone); //RFs::GetSystemDrive() shall always return a convertible drive number on a valid OS configuration - return QString(QChar(drive)).append(QLatin1String(":/")); -} - -QString QFileSystemEngine::tempPath() -{ - return rootPath().append(QLatin1String("system/temp")); -} - -//static -bool QFileSystemEngine::setCurrentPath(const QFileSystemEntry &entry) -{ - QFileSystemMetaData meta; - QFileSystemEntry absname = absoluteName(entry); - fillMetaData(absname, meta, QFileSystemMetaData::ExistsAttribute | QFileSystemMetaData::DirectoryType); - if(!(meta.exists() && meta.isDirectory())) - return false; - - RFs& fs = qt_s60GetRFs(); - QString abspath = absname.nativeFilePath(); - if(!abspath.endsWith(QLatin1Char('\\'))) - abspath.append(QLatin1Char('\\')); - TInt r = fs.SetSessionPath(qt_QString2TPtrC(abspath)); - //SetSessionPath succeeds for non existent directory, which is why it's checked above - if (r == KErrNone) { - __ASSERT_COMPILE(sizeof(wchar_t) == sizeof(unsigned short)); - //attempt to set open C to the same path - r = ::wchdir(reinterpret_cast(absname.filePath().utf16())); - if (r < 0) - qWarning("failed to sync path to open C"); - return true; - } - return false; -} - -//static -QFileSystemEntry QFileSystemEngine::currentPath() -{ - TFileName fn; - QFileSystemEntry ret; - TInt r = qt_s60GetRFs().SessionPath(fn); - if(r == KErrNone) { - //remove terminating slash from non root paths (session path is clean, absolute and always ends in a \) - if(fn.Length() > 3 && fn[fn.Length() - 1] == '\\') - fn.SetLength(fn.Length() - 1); - ret = QFileSystemEntry(qt_TDesC2QString(fn), QFileSystemEntry::FromNativePath()); - } - return ret; -} - -QT_END_NAMESPACE diff --git a/src/corelib/io/qfilesystemiterator_symbian.cpp b/src/corelib/io/qfilesystemiterator_symbian.cpp deleted file mode 100644 index 4347f6acba..0000000000 --- a/src/corelib/io/qfilesystemiterator_symbian.cpp +++ /dev/null @@ -1,127 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtCore module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "qfilesystemiterator_p.h" -#include "qfilesystemengine_p.h" -#include - -QT_BEGIN_NAMESPACE - -QFileSystemIterator::QFileSystemIterator(const QFileSystemEntry &path, QDir::Filters filters, - const QStringList &nameFilters, QDirIterator::IteratorFlags iteratorFlags) - : lastError(KErrNone), entryIndex(-1) -{ - RFs& fs = qt_s60GetRFs(); - - nativePath = path.nativeFilePath(); - if (!nativePath.endsWith(QLatin1Char('\\'))) - nativePath.append(QLatin1Char('\\')); - - QString absPath = QFileSystemEngine::absoluteName(path).nativeFilePath(); - - if (!absPath.endsWith(QLatin1Char('\\'))) - absPath.append(QLatin1Char('\\')); - - int pathLen = absPath.length(); - if (pathLen > KMaxFileName) { - lastError = KErrBadName; - return; - } - - //set up server side filtering to reduce IPCs - //RDir won't accept all valid name filters e.g. "*. bar" - if (nameFilters.count() == 1 && !(filters & QDir::AllDirs) && iteratorFlags - == QDirIterator::NoIteratorFlags && pathLen + nameFilters[0].length() - <= KMaxFileName) { - //server side supports one mask - skip this for recursive mode or if only files should be filtered - absPath.append(nameFilters[0]); - } - - TUint symbianMask = 0; - if ((filters & QDir::Dirs) || (filters & QDir::AllDirs) || (iteratorFlags - & QDirIterator::Subdirectories)) - symbianMask |= KEntryAttDir; //include directories - if (filters & QDir::Hidden) - symbianMask |= KEntryAttHidden; - if (filters & QDir::System) - symbianMask |= KEntryAttSystem; - if (((filters & QDir::Files) == 0) && symbianMask == KEntryAttDir) - symbianMask |= KEntryAttMatchExclusive; //exclude non-directories - else if (symbianMask == 0) { - if ((filters & QDir::PermissionMask) == QDir::Writable) - symbianMask = KEntryAttMatchExclude | KEntryAttReadOnly; - } - - lastError = dirHandle.Open(fs, qt_QString2TPtrC(absPath), symbianMask); -} - -QFileSystemIterator::~QFileSystemIterator() -{ - dirHandle.Close(); -} - -bool QFileSystemIterator::advance(QFileSystemEntry &fileEntry, QFileSystemMetaData &metaData) -{ - //1st time, lastError is result of dirHandle.Open(), entries.Count() is 0 and entryIndex is -1 so initial read is triggered - //subsequent times, read is triggered each time we reach the end of the entry list - //final time, lastError is KErrEof so we don't need to read anymore. - ++entryIndex; - if (lastError == KErrNone && entryIndex >= entries.Count()) { - lastError = dirHandle.Read(entries); - entryIndex = 0; - } - - //each call to advance() gets the next entry from the entry list. - //from the final (or only) read call, KErrEof is returned together with a full buffer so we still need to go through the list - if ((lastError == KErrNone || lastError == KErrEof) && entryIndex < entries.Count()) { - Q_ASSERT(entryIndex >= 0); - const TEntry &entry(entries[entryIndex]); - fileEntry = QFileSystemEntry(nativePath + qt_TDesC2QString(entry.iName), QFileSystemEntry::FromNativePath()); - metaData.fillFromTEntry(entry); - return true; - } - - //TODO: error reporting, to allow user to distinguish empty directory from error condition. - - return false; -} - -QT_END_NAMESPACE diff --git a/src/corelib/io/qfilesystemwatcher.cpp b/src/corelib/io/qfilesystemwatcher.cpp index 9739067c06..302b6e5b06 100644 --- a/src/corelib/io/qfilesystemwatcher.cpp +++ b/src/corelib/io/qfilesystemwatcher.cpp @@ -62,8 +62,6 @@ # include "qfilesystemwatcher_fsevents_p.h" # endif //MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5) # include "qfilesystemwatcher_kqueue_p.h" -#elif defined(Q_OS_SYMBIAN) -# include "qfilesystemwatcher_symbian_p.h" #endif QT_BEGIN_NAMESPACE @@ -260,8 +258,6 @@ QFileSystemWatcherEngine *QFileSystemWatcherPrivate::createNativeEngine() else # endif return QKqueueFileSystemWatcherEngine::create(); -#elif defined(Q_OS_SYMBIAN) - return new QSymbianFileSystemWatcherEngine; #else return 0; #endif diff --git a/src/corelib/io/qfilesystemwatcher_symbian.cpp b/src/corelib/io/qfilesystemwatcher_symbian.cpp deleted file mode 100644 index 6e5e91114c..0000000000 --- a/src/corelib/io/qfilesystemwatcher_symbian.cpp +++ /dev/null @@ -1,273 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtCore module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "qfilesystemwatcher.h" -#include "qfilesystemwatcher_symbian_p.h" -#include "qfileinfo.h" -#include "qdebug.h" -#include "private/qcore_symbian_p.h" -#include - -#ifndef QT_NO_FILESYSTEMWATCHER - - -QT_BEGIN_NAMESPACE - -QNotifyChangeEvent::QNotifyChangeEvent(RFs &fs, const TDesC &file, - QSymbianFileSystemWatcherEngine *e, bool aIsDir, - TInt aPriority) : - CActive(aPriority), - isDir(aIsDir), - fsSession(fs), - watchedPath(file), - engine(e), - failureCount(0) -{ - if (isDir) { - fsSession.NotifyChange(ENotifyEntry, iStatus, file); - } else { - fsSession.NotifyChange(ENotifyAll, iStatus, file); - } - CActiveScheduler::Add(this); - SetActive(); -} - -QNotifyChangeEvent::~QNotifyChangeEvent() -{ - Cancel(); -} - -void QNotifyChangeEvent::RunL() -{ - if(iStatus.Int() == KErrNone) { - failureCount = 0; - } else { - qWarning("QNotifyChangeEvent::RunL() - Failed to order change notifications: %d", iStatus.Int()); - failureCount++; - } - - // Re-request failed notification once, but if it won't start working, - // we can't do much besides just not request any more notifications. - if (failureCount < 2) { - if (isDir) { - fsSession.NotifyChange(ENotifyEntry, iStatus, watchedPath); - } else { - fsSession.NotifyChange(ENotifyAll, iStatus, watchedPath); - } - SetActive(); - - if (!failureCount) { - int err; - QT_TRYCATCH_ERROR(err, engine->emitPathChanged(this)); - if (err != KErrNone) - qWarning("QNotifyChangeEvent::RunL() - emitPathChanged threw exception (Converted error code: %d)", err); - } - } -} - -void QNotifyChangeEvent::DoCancel() -{ - fsSession.NotifyChangeCancel(iStatus); -} - -QSymbianFileSystemWatcherEngine::QSymbianFileSystemWatcherEngine() : - watcherStarted(false) -{ - moveToThread(this); -} - -QSymbianFileSystemWatcherEngine::~QSymbianFileSystemWatcherEngine() -{ - stop(); -} - -QStringList QSymbianFileSystemWatcherEngine::addPaths(const QStringList &paths, QStringList *files, - QStringList *directories) -{ - QMutexLocker locker(&mutex); - QStringList p = paths; - - startWatcher(); - - QMutableListIterator it(p); - while (it.hasNext()) { - QString path = it.next(); - QFileInfo fi(path); - if (!fi.exists()) - continue; - - bool isDir = fi.isDir(); - if (isDir) { - if (directories->contains(path)) - continue; - } else { - if (files->contains(path)) - continue; - } - - // Use absolute filepath as relative paths seem to have some issues. - QString filePath = fi.absoluteFilePath(); - if (isDir && filePath.at(filePath.size() - 1) != QChar(L'/')) { - filePath += QChar(L'/'); - } - - currentAddEvent = NULL; - QMetaObject::invokeMethod(this, - "addNativeListener", - Qt::QueuedConnection, - Q_ARG(QString, filePath)); - - syncCondition.wait(&mutex); - if (currentAddEvent) { - currentAddEvent->isDir = isDir; - - activeObjectToPath.insert(currentAddEvent, path); - it.remove(); - - if (isDir) - directories->append(path); - else - files->append(path); - } - } - - return p; -} - -QStringList QSymbianFileSystemWatcherEngine::removePaths(const QStringList &paths, - QStringList *files, - QStringList *directories) -{ - QMutexLocker locker(&mutex); - - QStringList p = paths; - QMutableListIterator it(p); - while (it.hasNext()) { - QString path = it.next(); - - currentRemoveEvent = activeObjectToPath.key(path); - if (!currentRemoveEvent) - continue; - activeObjectToPath.remove(currentRemoveEvent); - - QMetaObject::invokeMethod(this, - "removeNativeListener", - Qt::QueuedConnection); - - syncCondition.wait(&mutex); - - it.remove(); - - files->removeAll(path); - directories->removeAll(path); - } - - return p; -} - -void QSymbianFileSystemWatcherEngine::emitPathChanged(QNotifyChangeEvent *e) -{ - QMutexLocker locker(&mutex); - - QString path = activeObjectToPath.value(e); - QFileInfo fi(path); - - if (e->isDir) - emit directoryChanged(path, !fi.exists()); - else - emit fileChanged(path, !fi.exists()); -} - -void QSymbianFileSystemWatcherEngine::stop() -{ - quit(); - wait(); -} - -// This method must be called inside mutex -void QSymbianFileSystemWatcherEngine::startWatcher() -{ - if (!watcherStarted) { - setStackSize(0x5000); - start(); - syncCondition.wait(&mutex); - watcherStarted = true; - } -} - - -void QSymbianFileSystemWatcherEngine::run() -{ - mutex.lock(); - syncCondition.wakeOne(); - mutex.unlock(); - - exec(); - - foreach(QNotifyChangeEvent *e, activeObjectToPath.keys()) { - e->Cancel(); - delete e; - } - - activeObjectToPath.clear(); -} - -void QSymbianFileSystemWatcherEngine::addNativeListener(const QString &directoryPath) -{ - QMutexLocker locker(&mutex); - QString nativeDir(QDir::toNativeSeparators(directoryPath)); - TPtrC ptr(qt_QString2TPtrC(nativeDir)); - currentAddEvent = new QNotifyChangeEvent(qt_s60GetRFs(), ptr, this, directoryPath.endsWith(QChar(L'/'), Qt::CaseSensitive)); - syncCondition.wakeOne(); -} - -void QSymbianFileSystemWatcherEngine::removeNativeListener() -{ - QMutexLocker locker(&mutex); - currentRemoveEvent->Cancel(); - delete currentRemoveEvent; - currentRemoveEvent = NULL; - syncCondition.wakeOne(); -} - - -QT_END_NAMESPACE -#endif // QT_NO_FILESYSTEMWATCHER diff --git a/src/corelib/io/qfilesystemwatcher_symbian_p.h b/src/corelib/io/qfilesystemwatcher_symbian_p.h deleted file mode 100644 index 0b317a062f..0000000000 --- a/src/corelib/io/qfilesystemwatcher_symbian_p.h +++ /dev/null @@ -1,130 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtCore module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef QFILESYSTEMWATCHER_SYMBIAN_P_H -#define QFILESYSTEMWATCHER_SYMBIAN_P_H - -// -// W A R N I N G -// ------------- -// -// This file is not part of the Qt API. It exists purely as an -// implementation detail. This header file may change from version to -// version without notice, or even be removed. -// -// We mean it. -// - -#include "qfilesystemwatcher_p.h" - -#ifndef QT_NO_FILESYSTEMWATCHER - -#include "qhash.h" -#include "qmutex.h" -#include "qwaitcondition.h" - -#include -#include - -QT_BEGIN_NAMESPACE - -class QSymbianFileSystemWatcherEngine; - -class QNotifyChangeEvent : public CActive -{ -public: - QNotifyChangeEvent(RFs &fsSession, const TDesC &file, QSymbianFileSystemWatcherEngine *engine, - bool aIsDir, TInt aPriority = EPriorityStandard); - ~QNotifyChangeEvent(); - - bool isDir; - -private: - void RunL(); - void DoCancel(); - - RFs &fsSession; - TPath watchedPath; - QSymbianFileSystemWatcherEngine *engine; - - int failureCount; -}; - -class QSymbianFileSystemWatcherEngine : public QFileSystemWatcherEngine -{ - Q_OBJECT - -public: - QSymbianFileSystemWatcherEngine(); - ~QSymbianFileSystemWatcherEngine(); - - QStringList addPaths(const QStringList &paths, QStringList *files, QStringList *directories); - QStringList removePaths(const QStringList &paths, QStringList *files, - QStringList *directories); - - void stop(); - -protected: - void run(); - -public Q_SLOTS: - void addNativeListener(const QString &directoryPath); - void removeNativeListener(); - -private: - friend class QNotifyChangeEvent; - void emitPathChanged(QNotifyChangeEvent *e); - - void startWatcher(); - - QHash activeObjectToPath; - QMutex mutex; - QWaitCondition syncCondition; - bool watcherStarted; - QNotifyChangeEvent *currentAddEvent; - QNotifyChangeEvent *currentRemoveEvent; -}; - -#endif // QT_NO_FILESYSTEMWATCHER - -QT_END_NAMESPACE - -#endif // QFILESYSTEMWATCHER_WIN_P_H diff --git a/src/corelib/io/qprocess_symbian.cpp b/src/corelib/io/qprocess_symbian.cpp deleted file mode 100644 index 9fd0c3aa65..0000000000 --- a/src/corelib/io/qprocess_symbian.cpp +++ /dev/null @@ -1,1072 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtCore module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -//#define QPROCESS_DEBUG - -#ifdef QPROCESS_DEBUG -#include "qdebug.h" -#define QPROCESS_DEBUG_PRINT(args...) qDebug(args); -#else -#define QPROCESS_DEBUG_PRINT(args...) -#endif - -#ifndef QT_NO_PROCESS - -#define QPROCESS_ASSERT(check, panicReason, args...) \ - if (!(check)) { \ - qWarning(args); \ - User::Panic(KQProcessPanic, panicReason); \ - } - -#include -#include -#include -#include -#include "qplatformdefs.h" - -#include "qdir.h" -#include "qstring.h" -#include "qprocess.h" -#include "qprocess_p.h" -#include "private/qeventdispatcher_symbian_p.h" - -#include -#include -#include -#include - -#include - - -QT_BEGIN_NAMESPACE - -_LIT(KQProcessManagerThreadName, "QProcManThread"); -_LIT(KQProcessPanic, "QPROCESS"); -enum TQProcessPanic { - EProcessManagerMediatorRunError = 1, - EProcessManagerMediatorInactive = 2, - EProcessManagerMediatorNotPending = 3, - EProcessManagerMediatorInvalidCmd = 4, - EProcessManagerMediatorCreationFailed = 5, - EProcessManagerMediatorThreadOpenFailed = 6, - EProcessManagerMediatorNullObserver = 7, - EProcessActiveRunError = 10, - EProcessActiveNullParameter = 11, - EProcessManagerMutexCreationFail = 20, - EProcessManagerThreadCreationFail = 21, - EProcessManagerSchedulerCreationFail = 22, - EProcessManagerNullParam = 23 -}; - -// Forward declarations -class QProcessManager; - - -// Active object to listen for child process death -class QProcessActive : public CActive -{ -public: - static QProcessActive *construct(QProcess *process, - RProcess **proc, - int serial, - int deathPipe); - - virtual ~QProcessActive(); - - void start(); - void stop(); - - bool error(); - -protected: - - // Inherited from CActive - void RunL(); - TInt RunError(TInt aError); - void DoCancel(); - - QProcessActive(); - -private: - - QProcess *process; - RProcess **pproc; - int serial; - int deathPipe; - bool errorValue; -}; - -// Active object to communicate synchronously with process manager thread -class QProcessManagerMediator : public CActive -{ -public: - static QProcessManagerMediator *construct(); - - virtual ~QProcessManagerMediator(); - - bool add(QProcessActive *processObserver); - void remove(QProcessActive *processObserver); - void terminate(); - -protected: - - enum Commands { - ENoCommand, - EAdd, - ERemove, - ETerminate - }; - - // Inherited from CActive - void RunL(); - TInt RunError(TInt aError); - void DoCancel(); - - QProcessManagerMediator(); - - bool notify(QProcessActive *processObserver, Commands command); - -private: - QProcessActive *currentObserver; - Commands currentCommand; - - RThread processManagerThread; -}; - -// Process manager manages child process death listeners. -// -// Note: Because QProcess can be used outside event loop, we cannot be guaranteed -// an active scheduler exists for us to add our process death listener objects. -// We can't just install active scheduler on the calling thread, as that would block it -// if we want to actually use it, so a separate manager thread is required. -class QProcessManager -{ -public: - QProcessManager(); - ~QProcessManager(); - - void startThread(); - - TInt run(void *param); - bool add(QProcess *process); - void remove(QProcess *process); - - inline void setMediator(QProcessManagerMediator *newMediator) { - mediator = newMediator; - }; - -private: - inline void lock() { - managerMutex.Wait(); - }; - inline void unlock() { - managerMutex.Signal(); - }; - - QMap children; - QProcessManagerMediator *mediator; - RMutex managerMutex; - bool threadStarted; - RThread managerThread; -}; - -static bool qt_rprocess_running(RProcess *proc) -{ - if (proc && proc->Handle()) { - TExitType et = proc->ExitType(); - if (et == EExitPending) - return true; - } - - return false; -} - -static void qt_create_symbian_commandline( - const QStringList &arguments, const QString &nativeArguments, QString &commandLine) -{ - for (int i = 0; i < arguments.size(); ++i) { - QString tmp = arguments.at(i); - // in the case of \" already being in the string the \ must also be escaped - tmp.replace(QLatin1String("\\\""), QLatin1String("\\\\\"")); - // escape a single " because the arguments will be parsed - tmp.replace(QLatin1String("\""), QLatin1String("\\\"")); - if (tmp.isEmpty() || tmp.contains(QLatin1Char(' ')) || tmp.contains(QLatin1Char('\t'))) { - // The argument must not end with a \ since this would be interpreted - // as escaping the quote -- rather put the \ behind the quote: e.g. - // rather use "foo"\ than "foo\" - QString endQuote(QLatin1String("\"")); - int i = tmp.length(); - while (i > 0 && tmp.at(i - 1) == QLatin1Char('\\')) { - --i; - endQuote += QLatin1String("\\"); - } - commandLine += QLatin1String("\"") + tmp.left(i) + endQuote + QLatin1Char(' '); - } else { - commandLine += tmp + QLatin1Char(' '); - } - } - - if (!nativeArguments.isEmpty()) - commandLine += nativeArguments; - else if (!commandLine.isEmpty()) // Chop the extra trailing space if any arguments were appended - commandLine.chop(1); -} - -static TInt qt_create_symbian_process(RProcess **proc, - const QString &programName, const QStringList &arguments, const QString &nativeArguments) -{ - RProcess *newProc = NULL; - newProc = new RProcess(); - - if (!newProc) - return KErrNoMemory; - - QString commandLine; - qt_create_symbian_commandline(arguments, nativeArguments, commandLine); - - TPtrC program_ptr(reinterpret_cast(programName.constData())); - TPtrC cmdline_ptr(reinterpret_cast(commandLine.constData())); - - TInt err = newProc->Create(program_ptr, cmdline_ptr); - - if (err == KErrNotFound) { - // Strip path from program name and try again (i.e. try from default location "\sys\bin") - int index = programName.lastIndexOf(QDir::separator()); - int index2 = programName.lastIndexOf(QChar(QLatin1Char('/'))); - index = qMax(index, index2); - - if (index != -1 && programName.length() >= index) { - QString strippedName; - strippedName = programName.mid(index + 1); - QPROCESS_DEBUG_PRINT("qt_create_symbian_process() Executable '%s' not found, trying stripped version '%s'", - qPrintable(programName), qPrintable(strippedName)); - - TPtrC stripped_ptr(reinterpret_cast(strippedName.constData())); - err = newProc->Create(stripped_ptr, cmdline_ptr); - - if (err != KErrNone) { - QPROCESS_DEBUG_PRINT("qt_create_symbian_process() Unable to create process '%s': %d", - qPrintable(strippedName), err); - } - } - } - - if (err == KErrNone) - *proc = newProc; - else - delete newProc; - - return err; -} - -static qint64 qt_native_read(int fd, char *data, qint64 maxlen) -{ - qint64 ret = 0; - do { - ret = ::read(fd, data, maxlen); - } while (ret == -1 && errno == EINTR); - - QPROCESS_DEBUG_PRINT("qt_native_read(): fd: %d, result: %d, errno = %d", fd, (int)ret, errno); - - return ret; -} - -static qint64 qt_native_write(int fd, const char *data, qint64 len) -{ - qint64 ret = 0; - do { - ret = ::write(fd, data, len); - } while (ret == -1 && errno == EINTR); - - QPROCESS_DEBUG_PRINT("qt_native_write(): fd: %d, result: %d, errno = %d", fd, (int)ret, errno); - - return ret; -} - -static void qt_native_close(int fd) -{ - int ret; - do { - ret = ::close(fd); - } while (ret == -1 && errno == EINTR); -} - -static void qt_create_pipe(int *pipe) -{ - if (pipe[0] != -1) - qt_native_close(pipe[0]); - if (pipe[1] != -1) - qt_native_close(pipe[1]); - if (::pipe(pipe) != 0) { - qWarning("QProcessPrivate::createPipe: Cannot create pipe %p: %s", - pipe, qPrintable(qt_error_string(errno))); - } else { - QPROCESS_DEBUG_PRINT("qt_create_pipe(): Created pipe %d - %d", pipe[0], pipe[1]); - } -} - -// Called from ProcessManagerThread -QProcessActive *QProcessActive::construct(QProcess *process, - RProcess **proc, - int serial, - int deathPipe) -{ - QPROCESS_ASSERT((process || proc || *proc), - EProcessActiveNullParameter, - "QProcessActive::construct(): process (0x%x), proc (0x%x) or *proc == NULL, not creating an instance", process, proc) - - QProcessActive *newInstance = new QProcessActive(); - - if (!newInstance) { - QPROCESS_DEBUG_PRINT("QProcessActive::construct(): Failed to create new instance"); - } else { - newInstance->process = process; - newInstance->pproc = proc; - newInstance->serial = serial; - newInstance->deathPipe = deathPipe; - newInstance->errorValue = false; - } - - return newInstance; -} - -// Called from ProcessManagerThread -QProcessActive::QProcessActive() - : CActive(CActive::EPriorityStandard) -{ - // Nothing to do -} - -// Called from main thread -QProcessActive::~QProcessActive() -{ - process = NULL; - pproc = NULL; -} - -// Called from ProcessManagerThread -void QProcessActive::start() -{ - if (qt_rprocess_running(*pproc)) { - CActiveScheduler::Add(this); - (*pproc)->Logon(iStatus); - SetActive(); - QPROCESS_DEBUG_PRINT("QProcessActive::start(): Started monitoring for process exit."); - } else { - QPROCESS_DEBUG_PRINT("QProcessActive::start(): Process doesn't exist or is already dead"); - // Assume process has already died - qt_native_write(deathPipe, "", 1); - errorValue = true; - } -} - -// Called from ProcessManagerThread -void QProcessActive::stop() -{ - QPROCESS_DEBUG_PRINT("QProcessActive::stop()"); - - // Remove this from scheduler (also cancels the request) - Deque(); -} - -bool QProcessActive::error() -{ - return errorValue; -} - -// Called from ProcessManagerThread -void QProcessActive::RunL() -{ - // If this method gets executed, the monitored process has died - - // Notify main thread - qt_native_write(deathPipe, "", 1); - QPROCESS_DEBUG_PRINT("QProcessActive::RunL() sending death notice to %d", deathPipe); -} - -// Called from ProcessManagerThread -TInt QProcessActive::RunError(TInt aError) -{ - Q_UNUSED(aError); - // Handle RunL leave (should never happen) - QPROCESS_ASSERT(0, EProcessActiveRunError, "QProcessActive::RunError(): Should never get here!") - return 0; -} - -// Called from ProcessManagerThread -void QProcessActive::DoCancel() -{ - QPROCESS_DEBUG_PRINT("QProcessActive::DoCancel()"); - - if (qt_rprocess_running(*pproc)) { - (*pproc)->LogonCancel(iStatus); - QPROCESS_DEBUG_PRINT("QProcessActive::DoCancel(): Stopped monitoring for process exit."); - } else { - QPROCESS_DEBUG_PRINT("QProcessActive::DoCancel(): Process doesn't exist"); - } -} - - -// Called from ProcessManagerThread -QProcessManagerMediator *QProcessManagerMediator::construct() -{ - QProcessManagerMediator *newInstance = new QProcessManagerMediator; - TInt err(KErrNone); - - newInstance->currentCommand = ENoCommand; - newInstance->currentObserver = NULL; - - if (newInstance) { - err = newInstance->processManagerThread.Open(newInstance->processManagerThread.Id()); - QPROCESS_ASSERT((err == KErrNone), - EProcessManagerMediatorThreadOpenFailed, - "QProcessManagerMediator::construct(): Failed to open processManagerThread (err:%d)", err) - } else { - QPROCESS_ASSERT(0, - EProcessManagerMediatorCreationFailed, - "QProcessManagerMediator::construct(): Failed to open construct mediator") - } - - // Activate mediator - CActiveScheduler::Add(newInstance); - newInstance->iStatus = KRequestPending; - newInstance->SetActive(); - QPROCESS_DEBUG_PRINT("QProcessManagerMediator::construct(): new instance successfully created and activated"); - - return newInstance; -} - -// Called from ProcessManagerThread -QProcessManagerMediator::QProcessManagerMediator() - : CActive(CActive::EPriorityStandard) -{ - // Nothing to do -} - -// Called from main thread -QProcessManagerMediator::~QProcessManagerMediator() -{ - processManagerThread.Close(); - currentCommand = ENoCommand; - currentObserver = NULL; -} - -// Called from main thread -bool QProcessManagerMediator::add(QProcessActive *processObserver) -{ - QPROCESS_DEBUG_PRINT("QProcessManagerMediator::add()"); - return notify(processObserver, EAdd); -} - -// Called from main thread -void QProcessManagerMediator::remove(QProcessActive *processObserver) -{ - QPROCESS_DEBUG_PRINT("QProcessManagerMediator::remove()"); - notify(processObserver, ERemove); -} - -// Called from main thread -void QProcessManagerMediator::terminate() -{ - QPROCESS_DEBUG_PRINT("QProcessManagerMediator::terminate()"); - notify(NULL, ETerminate); -} - -// Called from main thread -bool QProcessManagerMediator::notify(QProcessActive *processObserver, Commands command) -{ - bool success(true); - - QPROCESS_DEBUG_PRINT("QProcessManagerMediator::Notify(): Command: %d, processObserver: 0x%x", command, processObserver); - - QPROCESS_ASSERT((command == ETerminate || processObserver), - EProcessManagerMediatorNullObserver, - "QProcessManagerMediator::Notify(): NULL processObserver not allowed for command: %d", command) - - QPROCESS_ASSERT(IsActive(), - EProcessManagerMediatorInactive, - "QProcessManagerMediator::Notify(): Mediator is not active!") - - QPROCESS_ASSERT(iStatus == KRequestPending, - EProcessManagerMediatorNotPending, - "QProcessManagerMediator::Notify(): Mediator request not pending!") - - currentObserver = processObserver; - currentCommand = command; - - // Sync with process manager thread - TRequestStatus pmStatus; - processManagerThread.Rendezvous(pmStatus); - - // Complete request -> RunL will run in the process manager thread - TRequestStatus *status = &iStatus; - processManagerThread.RequestComplete(status, command); - - QPROCESS_DEBUG_PRINT("QProcessManagerMediator::Notify(): Waiting process manager to complete..."); - User::WaitForRequest(pmStatus); - QPROCESS_DEBUG_PRINT("QProcessManagerMediator::Notify(): Wait over"); - - if (currentObserver) { - success = !(currentObserver->error()); - QPROCESS_DEBUG_PRINT("QProcessManagerMediator::Notify(): success = %d", success); - } - - currentObserver = NULL; - currentCommand = ENoCommand; - - return success; -} - -// Called from ProcessManagerThread -void QProcessManagerMediator::RunL() -{ - QPROCESS_DEBUG_PRINT("QProcessManagerMediator::RunL(): currentCommand: %d, iStatus: %d", currentCommand, iStatus.Int()); - switch (currentCommand) { - case EAdd: - currentObserver->start(); - break; - case ERemove: - currentObserver->stop(); - break; - case ETerminate: - Deque(); - CActiveScheduler::Stop(); - return; - default: - QPROCESS_ASSERT(0, - EProcessManagerMediatorInvalidCmd, - "QProcessManagerMediator::RunL(): Invalid command!") - break; - } - - iStatus = KRequestPending; - SetActive(); - - // Notify main thread that we are done - RThread::Rendezvous(KErrNone); -} - -// Called from ProcessManagerThread -TInt QProcessManagerMediator::RunError(TInt aError) -{ - Q_UNUSED(aError); - // Handle RunL leave (should never happen) - QPROCESS_ASSERT(0, - EProcessManagerMediatorRunError, - "QProcessManagerMediator::RunError(): Should never get here!") - return 0; -} - -// Called from ProcessManagerThread -void QProcessManagerMediator::DoCancel() -{ - QPROCESS_DEBUG_PRINT("QProcessManagerMediator::DoCancel()"); - TRequestStatus *status = &iStatus; - processManagerThread.RequestComplete(status, KErrCancel); -} - -Q_GLOBAL_STATIC(QProcessManager, processManager) - -TInt processManagerThreadFunction(TAny *param) -{ - QPROCESS_ASSERT(param, - EProcessManagerNullParam, - "processManagerThreadFunction(): NULL param") - - QProcessManager *manager = reinterpret_cast(param); - - CActiveScheduler *scheduler = new CQtActiveScheduler(); - - QPROCESS_ASSERT(scheduler, - EProcessManagerSchedulerCreationFail, - "processManagerThreadFunction(): Scheduler creation failed") - - CActiveScheduler::Install(scheduler); - - //Creating mediator also adds it to scheduler and activates it. Failure will panic. - manager->setMediator(QProcessManagerMediator::construct()); - RThread::Rendezvous(KErrNone); - - CActiveScheduler::Start(); - - CActiveScheduler::Install(NULL); - delete scheduler; - - return KErrNone; -} - -QProcessManager::QProcessManager() - : mediator(NULL), threadStarted(false) -{ - TInt err = managerMutex.CreateLocal(); - - QPROCESS_ASSERT(err == KErrNone, - EProcessManagerMutexCreationFail, - "QProcessManager::QProcessManager(): Failed to create new managerMutex (err: %d)", err) -} - -QProcessManager::~QProcessManager() -{ - QPROCESS_DEBUG_PRINT("QProcessManager::~QProcessManager()"); - - // Check if manager thread is still alive. If this destructor is ran as part of global - // static cleanup, manager thread will most likely be terminated by kernel at this point, - // so trying to delete QProcessActives and QProcessMediators will panic as they - // will still be active. They can also no longer be canceled as the thread is already gone. - // In case manager thread has already died, we simply do nothing and let the deletion of - // the main heap at process exit take care of stray objects. - - if (managerThread.Handle() && managerThread.ExitType() == EExitPending) { - // Cancel death listening for all child processes - if (mediator) { - QMap::Iterator it = children.begin(); - while (it != children.end()) { - // Remove all monitors - QProcessActive *active = it.value(); - mediator->remove(active); - - QPROCESS_DEBUG_PRINT("QProcessManager::~QProcessManager() removed listening for a process"); - ++it; - } - - // Terminate process manager thread. - mediator->terminate(); - delete mediator; - } - - qDeleteAll(children.values()); - children.clear(); - } - - managerThread.Close(); - managerMutex.Close(); -} - -void QProcessManager::startThread() -{ - lock(); - - if (!threadStarted) { - TInt err = managerThread.Create(KQProcessManagerThreadName, - processManagerThreadFunction, - 0x5000, - (RAllocator*)NULL, - (TAny*)this, - EOwnerProcess); - - QPROCESS_ASSERT(err == KErrNone, - EProcessManagerThreadCreationFail, - "QProcessManager::startThread(): Failed to create new managerThread (err:%d)", err) - - threadStarted = true; - - // Manager thread must start running before we continue, so sync with rendezvous - TRequestStatus status; - managerThread.Rendezvous(status); - managerThread.Resume(); - User::WaitForRequest(status); - } - - unlock(); -} - -static QBasicAtomicInt idCounter = Q_BASIC_ATOMIC_INITIALIZER(1); - -bool QProcessManager::add(QProcess *process) -{ - QPROCESS_ASSERT(process, - EProcessManagerNullParam, - "QProcessManager::add(): Failed to add QProcessActive to ProcessManager - NULL process") - - lock(); - - int serial = idCounter.fetchAndAddRelaxed(1); - process->d_func()->serial = serial; - - QPROCESS_DEBUG_PRINT("QProcessManager::add(): serial: %d, deathPipe: %d - %d, symbianProcess: 0x%x", serial, process->d_func()->deathPipe[0], process->d_func()->deathPipe[1], process->d_func()->symbianProcess); - - QProcessActive *newActive = - QProcessActive::construct(process, - &(process->d_func()->symbianProcess), - serial, - process->d_func()->deathPipe[1]); - - if (newActive) { - if (mediator->add(newActive)) { - children.insert(serial, newActive); - unlock(); - return true; - } else { - QPROCESS_DEBUG_PRINT("QProcessManager::add(): Failed to add QProcessActive to ProcessManager"); - delete newActive; - } - } - - unlock(); - - return false; -} - -void QProcessManager::remove(QProcess *process) -{ - QPROCESS_ASSERT(process, - EProcessManagerNullParam, - "QProcessManager::remove(): Failed to remove QProcessActive from ProcessManager - NULL process") - - lock(); - - int serial = process->d_func()->serial; - QProcessActive *active = children.value(serial); - if (!active) { - unlock(); - return; - } - - mediator->remove(active); - - children.remove(serial); - delete active; - - unlock(); -} - -void QProcessPrivate::destroyPipe(int *pipe) -{ - if (pipe[1] != -1) { - qt_native_close(pipe[1]); - pipe[1] = -1; - } - if (pipe[0] != -1) { - qt_native_close(pipe[0]); - pipe[0] = -1; - } -} - -bool QProcessPrivate::createChannel(Channel &channel) -{ - Q_UNUSED(channel); - // No channels used - return false; -} - -void QProcessPrivate::startProcess() -{ - Q_Q(QProcess); - - QPROCESS_DEBUG_PRINT("QProcessPrivate::startProcess()"); - - // Start the process (platform dependent) - q->setProcessState(QProcess::Starting); - - processManager()->startThread(); - - qt_create_pipe(deathPipe); - if (threadData->eventDispatcher) { - deathNotifier = new QSocketNotifier(deathPipe[0], - QSocketNotifier::Read, q); - QObject::connect(deathNotifier, SIGNAL(activated(int)), - q, SLOT(_q_processDied())); - } - - TInt err = qt_create_symbian_process(&symbianProcess, program, arguments, nativeArguments); - - if (err == KErrNone) { - pid = symbianProcess->Id().Id(); - - ::fcntl(deathPipe[0], F_SETFL, ::fcntl(deathPipe[0], F_GETFL) | O_NONBLOCK); - - if (!processManager()->add(q)) { - qWarning("QProcessPrivate::startProcess(): Failed to start monitoring for process death."); - err = KErrNoMemory; - } - } - - if (err != KErrNone) { - // Cleanup, report error and return - QPROCESS_DEBUG_PRINT("QProcessPrivate::startProcess() Process open failed, err: %d, '%s'", err, qPrintable(program)); - q->setProcessState(QProcess::NotRunning); - processError = QProcess::FailedToStart; - q->setErrorString(QLatin1String(QT_TRANSLATE_NOOP(QProcess, "Resource error (qt_create_symbian_process failure)"))); - emit q->error(processError); - cleanup(); - return; - } - - processLaunched = true; - - symbianProcess->Resume(); - - QPROCESS_DEBUG_PRINT("QProcessPrivate::startProcess(): this: 0x%x, pid: %ld", this, pid); - - // Notify child start - _q_startupNotification(); - -} - -bool QProcessPrivate::processStarted() -{ - QPROCESS_DEBUG_PRINT("QProcessPrivate::processStarted() == %s", processLaunched ? "true" : "false"); - - // Since we cannot get information whether process has actually been launched - // or not in Symbian, we need to fake it. Assume process is started if launch was - // successful. - - return processLaunched; -} - -qint64 QProcessPrivate::bytesAvailableFromStdout() const -{ - // In Symbian, stdout is not supported - return 0; -} - -qint64 QProcessPrivate::bytesAvailableFromStderr() const -{ - // In Symbian, stderr is not supported - return 0; -} - -qint64 QProcessPrivate::readFromStdout(char *data, qint64 maxlen) -{ - Q_UNUSED(data); - Q_UNUSED(maxlen); - // In Symbian, stdout is not supported - return 0; -} - -qint64 QProcessPrivate::readFromStderr(char *data, qint64 maxlen) -{ - Q_UNUSED(data); - Q_UNUSED(maxlen); - // In Symbian, stderr is not supported - return 0; -} - -qint64 QProcessPrivate::writeToStdin(const char *data, qint64 maxlen) -{ - Q_UNUSED(data); - Q_UNUSED(maxlen); - // In Symbian, stdin is not supported - return 0; -} - -void QProcessPrivate::terminateProcess() -{ - // Needs PowerMgmt capability if process has been started; will panic kern-exec 46 otherwise. - // Always works if process is not yet started. - if (qt_rprocess_running(symbianProcess)) { - symbianProcess->Terminate(0); - } else { - QPROCESS_DEBUG_PRINT("QProcessPrivate::terminateProcess(), Process not running"); - } -} - -void QProcessPrivate::killProcess() -{ - // Needs PowerMgmt capability if process has been started; will panic kern-exec 46 otherwise. - // Always works if process is not yet started. - if (qt_rprocess_running(symbianProcess)) { - symbianProcess->Kill(0); - } else { - QPROCESS_DEBUG_PRINT("QProcessPrivate::killProcess(), Process not running"); - } -} - -bool QProcessPrivate::waitForStarted(int msecs) -{ - Q_UNUSED(msecs); - // Since we can get no actual feedback from process beyond its death, - // assume that started has already been emitted if process has been launched - return processLaunched; -} - -bool QProcessPrivate::waitForReadyRead(int msecs) -{ - // Functionality not supported in Symbian - Q_UNUSED(msecs); - return false; -} - -bool QProcessPrivate::waitForBytesWritten(int msecs) -{ - // Functionality not supported in Symbian - Q_UNUSED(msecs); - return false; -} - -bool QProcessPrivate::waitForFinished(int msecs) -{ - Q_Q(QProcess); - QPROCESS_DEBUG_PRINT("QProcessPrivate::waitForFinished(%d)", msecs); - - TRequestStatus timerStatus = KErrNone; - TRequestStatus logonStatus = KErrNone; - bool timeoutOccurred = false; - - // Logon to process to observe its death - if (qt_rprocess_running(symbianProcess)) { - symbianProcess->Logon(logonStatus); - - if (msecs < 0) { - // If timeout is negative, there is no timeout - QPROCESS_DEBUG_PRINT("QProcessPrivate::waitForFinished() - Waiting (just logon)..."); - User::WaitForRequest(logonStatus); - QPROCESS_DEBUG_PRINT("QProcessPrivate::waitForFinished() - Wait completed"); - } else { - // Create timer - RTimer timer; - timer.CreateLocal(); - TTimeIntervalMicroSeconds32 interval(msecs*1000); - timer.After(timerStatus, interval); - - QPROCESS_DEBUG_PRINT("QProcessPrivate::waitForFinished() - Waiting (logon + timer)..."); - User::WaitForRequest(logonStatus, timerStatus); - QPROCESS_DEBUG_PRINT("QProcessPrivate::waitForFinished() - Wait completed"); - - if (logonStatus != KRequestPending) { - timer.Cancel(); - User::WaitForRequest(timerStatus); - } else { - timeoutOccurred = true; - symbianProcess->LogonCancel(logonStatus); - User::WaitForRequest(logonStatus); - } - timer.Close(); - } - } else { - QPROCESS_DEBUG_PRINT("QProcessPrivate::waitForFinished(), qt_rprocess_running returned false"); - } - - if (timeoutOccurred) { - processError = QProcess::Timedout; - q->setErrorString(QLatin1String(QT_TRANSLATE_NOOP(QProcess, "Process operation timed out"))); - return false; - } - - _q_processDied(); - - return true; -} - -bool QProcessPrivate::waitForWrite(int msecs) -{ - // Functionality not supported in Symbian - Q_UNUSED(msecs); - return false; -} - -// Deceptively named function. Exit code is actually got in waitForDeadChild(). -void QProcessPrivate::findExitCode() -{ - Q_Q(QProcess); - processManager()->remove(q); -} - -bool QProcessPrivate::waitForDeadChild() -{ - Q_Q(QProcess); - - // read a byte from the death pipe - char c; - qt_native_read(deathPipe[0], &c, 1); - - if (symbianProcess && symbianProcess->Handle()) { - TExitType et = symbianProcess->ExitType(); - QPROCESS_DEBUG_PRINT("QProcessPrivate::waitForDeadChild() symbianProcess->ExitType: %d", et); - if (et != EExitPending) { - processManager()->remove(q); - exitCode = symbianProcess->ExitReason(); - crashed = (et == EExitPanic); -#if defined QPROCESS_DEBUG - TExitCategoryName catName = symbianProcess->ExitCategory(); - qDebug() << "QProcessPrivate::waitForDeadChild() dead with exitCode" - << exitCode << ", crashed:" << crashed - << ", category:" << QString((const QChar *)catName.Ptr()); -#endif - } else { - QPROCESS_DEBUG_PRINT("QProcessPrivate::waitForDeadChild() not dead!"); - } - } - - return true; -} - -void QProcessPrivate::_q_notified() -{ - // Nothing to do in Symbian -} - -bool QProcessPrivate::startDetached(const QString &program, const QStringList &arguments, const QString &workingDirectory, qint64 *pid) -{ - QPROCESS_DEBUG_PRINT("QProcessPrivate::startDetached()"); - Q_UNUSED(workingDirectory); - - RProcess *newProc = NULL; - - TInt err = qt_create_symbian_process(&newProc, program, arguments, QString()); - - if (err == KErrNone) { - if (pid) - *pid = newProc->Id().Id(); - - newProc->Resume(); - newProc->Close(); - delete newProc; - return true; - } - - return false; -} - - -void QProcessPrivate::initializeProcessManager() -{ - (void) processManager(); -} - -QProcessEnvironment QProcessEnvironment::systemEnvironment() -{ - return QProcessEnvironment(); -} - -QT_END_NAMESPACE - -#endif // QT_NO_PROCESS -- cgit v1.2.3 From fb7404e569b5c69dd9e1c6eab3157826442872e8 Mon Sep 17 00:00:00 2001 From: Robin Burchell Date: Wed, 14 Dec 2011 17:49:35 +0100 Subject: Implement (and unit test) simple QVarLengthArray::first()/last(). MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Pure syntactical sugar, to match up with what the other container classes offer. Change-Id: I0f97de011923d9d204cca0fa906b059dc5054a89 Reviewed-by: João Abecasis Reviewed-by: Bradley T. Hughes --- src/corelib/tools/qvarlengtharray.h | 4 ++ src/corelib/tools/qvarlengtharray.qdoc | 30 ++++++++++++++ .../tools/qvarlengtharray/tst_qvarlengtharray.cpp | 46 ++++++++++++++++++++++ 3 files changed, 80 insertions(+) diff --git a/src/corelib/tools/qvarlengtharray.h b/src/corelib/tools/qvarlengtharray.h index fd8c26c128..48b14e6816 100644 --- a/src/corelib/tools/qvarlengtharray.h +++ b/src/corelib/tools/qvarlengtharray.h @@ -96,6 +96,10 @@ public: inline int size() const { return s; } inline int count() const { return s; } inline int length() const { return s; } + inline T& first() { Q_ASSERT(!isEmpty()); return *begin(); } + inline const T& first() const { Q_ASSERT(!isEmpty()); return *begin(); } + T& last() { Q_ASSERT(!isEmpty()); return *(end() - 1); } + const T& last() const { Q_ASSERT(!isEmpty()); return *(end() - 1); } inline bool isEmpty() const { return (s == 0); } inline void resize(int size); inline void clear() { resize(0); } diff --git a/src/corelib/tools/qvarlengtharray.qdoc b/src/corelib/tools/qvarlengtharray.qdoc index a932e9fbcb..032521d1c2 100644 --- a/src/corelib/tools/qvarlengtharray.qdoc +++ b/src/corelib/tools/qvarlengtharray.qdoc @@ -125,6 +125,36 @@ \sa isEmpty(), resize() */ +/*! \fn T& QVarLengthArray::first() + + Returns a reference to the first item in the array. The array must + not be empty. If the array can be empty, check isEmpty() before + calling this function. + + \sa last(), isEmpty() +*/ + +/*! \fn const T& QVarLengthArray::first() const + + \overload +*/ + +/*! \fn T& QVarLengthArray::last() + + Returns a reference to the last item in the array. The array must + not be empty. If the array can be empty, check isEmpty() before + calling this function. + + \sa first(), isEmpty() +*/ + +/*! \fn const T& QVarLengthArray::last() const + + \overload +*/ + + + /*! \fn bool QVarLengthArray::isEmpty() const Returns true if the array has size 0; otherwise returns false. diff --git a/tests/auto/corelib/tools/qvarlengtharray/tst_qvarlengtharray.cpp b/tests/auto/corelib/tools/qvarlengtharray/tst_qvarlengtharray.cpp index 54bab55360..105b7f7314 100644 --- a/tests/auto/corelib/tools/qvarlengtharray/tst_qvarlengtharray.cpp +++ b/tests/auto/corelib/tools/qvarlengtharray/tst_qvarlengtharray.cpp @@ -56,6 +56,8 @@ private slots: void resize(); void realloc(); void count(); + void first(); + void last(); }; int fooCtor = 0; @@ -655,5 +657,49 @@ void tst_QVarLengthArray::count() } } +void tst_QVarLengthArray::first() +{ + // append some items, make sure it stays sane + QVarLengthArray list; + list.append(27); + QCOMPARE(list.first(), 27); + list.append(4); + QCOMPARE(list.first(), 27); + list.append(1987); + QCOMPARE(list.first(), 27); + QCOMPARE(list.length(), 3); + + // remove some, make sure it stays sane + list.removeLast(); + QCOMPARE(list.first(), 27); + QCOMPARE(list.length(), 2); + + list.removeLast(); + QCOMPARE(list.first(), 27); + QCOMPARE(list.length(), 1); +} + +void tst_QVarLengthArray::last() +{ + // append some items, make sure it stays sane + QVarLengthArray list; + list.append(27); + QCOMPARE(list.last(), 27); + list.append(4); + QCOMPARE(list.last(), 4); + list.append(1987); + QCOMPARE(list.last(), 1987); + QCOMPARE(list.length(), 3); + + // remove some, make sure it stays sane + list.removeLast(); + QCOMPARE(list.last(), 4); + QCOMPARE(list.length(), 2); + + list.removeLast(); + QCOMPARE(list.last(), 27); + QCOMPARE(list.length(), 1); +} + QTEST_APPLESS_MAIN(tst_QVarLengthArray) #include "tst_qvarlengtharray.moc" -- cgit v1.2.3 From 16696ce49373d3ea2b4d12e28b85ca3275f73b82 Mon Sep 17 00:00:00 2001 From: Holger Hans Peter Freyther Date: Mon, 2 Jan 2012 13:31:46 +0100 Subject: corelib: Introduce Q_ALLOC_SIZE and use it on qMalloc and friends GCC 4.3 introduced the alloc_size attribute to hint the compiler that allocated memory will be returned, inform the compiler which parameter holds the size of the allocation. Change-Id: I8734868f6bd19e201abdacd0a1b0fb80a27883c0 Reviewed-by: Thiago Macieira --- src/corelib/global/qglobal.h | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/src/corelib/global/qglobal.h b/src/corelib/global/qglobal.h index 785ee4a49a..ac721f19ba 100644 --- a/src/corelib/global/qglobal.h +++ b/src/corelib/global/qglobal.h @@ -487,6 +487,9 @@ namespace QT_NAMESPACE {} # define QT_NO_ARM_EABI # endif # endif +# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 403 +# define Q_ALLOC_SIZE(x) __attribute__((alloc_size(x))) +# endif # if defined(__GXX_EXPERIMENTAL_CXX0X__) # if (__GNUC__ * 100 + __GNUC_MINOR__) >= 403 /* C++0x features supported in GCC 4.3: */ @@ -793,6 +796,10 @@ namespace QT_NAMESPACE {} # define Q_UNLIKELY(x) (x) #endif +#ifndef Q_ALLOC_SIZE +# define Q_ALLOC_SIZE(x) +#endif + #ifndef Q_CONSTRUCTOR_FUNCTION # define Q_CONSTRUCTOR_FUNCTION0(AFUNC) \ namespace { \ @@ -2161,11 +2168,11 @@ Q_DECLARE_TYPEINFO(long double, Q_PRIMITIVE_TYPE); These functions make it possible to use standard C++ functions with a similar name from Qt header files (especially template classes). */ -Q_CORE_EXPORT void *qMalloc(size_t size); +Q_CORE_EXPORT void *qMalloc(size_t size) Q_ALLOC_SIZE(1); Q_CORE_EXPORT void qFree(void *ptr); -Q_CORE_EXPORT void *qRealloc(void *ptr, size_t size); -Q_CORE_EXPORT void *qMallocAligned(size_t size, size_t alignment); -Q_CORE_EXPORT void *qReallocAligned(void *ptr, size_t size, size_t oldsize, size_t alignment); +Q_CORE_EXPORT void *qRealloc(void *ptr, size_t size) Q_ALLOC_SIZE(2); +Q_CORE_EXPORT void *qMallocAligned(size_t size, size_t alignment) Q_ALLOC_SIZE(1); +Q_CORE_EXPORT void *qReallocAligned(void *ptr, size_t size, size_t oldsize, size_t alignment) Q_ALLOC_SIZE(2); Q_CORE_EXPORT void qFreeAligned(void *ptr); Q_CORE_EXPORT void *qMemCopy(void *dest, const void *src, size_t n); Q_CORE_EXPORT void *qMemSet(void *dest, int c, size_t n); -- cgit v1.2.3 From a23a5487eb60c0f8b3c99d32a5e8e3cf636e4911 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20R=C3=B8dal?= Date: Fri, 9 Dec 2011 17:29:25 +0100 Subject: Send ApplicationActivate and ApplicationDeactivate from QtGui. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Instead of only from QApplication in QtWidgets, as we need these events for example in QDeclarativeApplication. Task-number: QTBUG-21573 Task-number: QTBUG-23331 Change-Id: I0c960bd1c7911d306d274a6e9a1838f158235ed0 Reviewed-by: Tor Arne Vestbø --- src/gui/kernel/qguiapplication.cpp | 15 ++++++++++----- src/widgets/kernel/qapplication.cpp | 14 -------------- 2 files changed, 10 insertions(+), 19 deletions(-) diff --git a/src/gui/kernel/qguiapplication.cpp b/src/gui/kernel/qguiapplication.cpp index f669a8f3d5..c3dddddf3b 100644 --- a/src/gui/kernel/qguiapplication.cpp +++ b/src/gui/kernel/qguiapplication.cpp @@ -753,9 +753,6 @@ void QGuiApplicationPrivate::processLeaveEvent(QWindowSystemInterfacePrivate::Le void QGuiApplicationPrivate::processActivatedEvent(QWindowSystemInterfacePrivate::ActivatedWindowEvent *e) { - if (!e->activated) - return; - QWindow *previous = QGuiApplicationPrivate::focus_window; QGuiApplicationPrivate::focus_window = e->activated.data(); @@ -765,10 +762,18 @@ void QGuiApplicationPrivate::processActivatedEvent(QWindowSystemInterfacePrivate if (previous) { QFocusEvent focusOut(QEvent::FocusOut); QCoreApplication::sendSpontaneousEvent(previous, &focusOut); + } else { + QEvent appActivate(QEvent::ApplicationActivate); + qApp->sendSpontaneousEvent(qApp, &appActivate); } - QFocusEvent focusIn(QEvent::FocusIn); - QCoreApplication::sendSpontaneousEvent(QGuiApplicationPrivate::focus_window, &focusIn); + if (QGuiApplicationPrivate::focus_window) { + QFocusEvent focusIn(QEvent::FocusIn); + QCoreApplication::sendSpontaneousEvent(QGuiApplicationPrivate::focus_window, &focusIn); + } else { + QEvent appActivate(QEvent::ApplicationDeactivate); + qApp->sendSpontaneousEvent(qApp, &appActivate); + } if (self) self->notifyActiveWindowChange(previous); diff --git a/src/widgets/kernel/qapplication.cpp b/src/widgets/kernel/qapplication.cpp index 10a6ed7c59..414a520a53 100644 --- a/src/widgets/kernel/qapplication.cpp +++ b/src/widgets/kernel/qapplication.cpp @@ -2326,13 +2326,6 @@ void QApplication::setActiveWindow(QWidget* act) QEvent windowActivate(QEvent::WindowActivate); QEvent windowDeactivate(QEvent::WindowDeactivate); -#if !defined(Q_WS_MAC) - if (!previousActiveWindow) { - QEvent appActivate(QEvent::ApplicationActivate); - sendSpontaneousEvent(qApp, &appActivate); - } -#endif - for (int i = 0; i < toBeActivated.size(); ++i) { QWidget *w = toBeActivated.at(i); sendSpontaneousEvent(w, &windowActivate); @@ -2352,13 +2345,6 @@ void QApplication::setActiveWindow(QWidget* act) sendSpontaneousEvent(w, &activationChange); } -#if !defined(Q_WS_MAC) - if (!QApplicationPrivate::active_window) { - QEvent appDeactivate(QEvent::ApplicationDeactivate); - sendSpontaneousEvent(qApp, &appDeactivate); - } -#endif - if (QApplicationPrivate::popupWidgets == 0) { // !inPopupMode() // then focus events if (!QApplicationPrivate::active_window && QApplicationPrivate::focus_widget) { -- cgit v1.2.3 From f29e55448b8e0c0a156e3af960589c6733cc4d7d Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Tue, 20 Dec 2011 12:56:01 +0100 Subject: Change the default value of QSortFilterProxyModel::dynamicSortFilter The value is changed to true. It is a common bug that developers expect this proxy model to reflect the source model when the source changes. That requires setDynamicSortFilter(true), so we change the default to optimize for the common case. Change-Id: I9bf7efdbda10309fa77aed9391c33054aaae4a29 Reviewed-by: Olivier Goffart --- dist/changes-5.0.0 | 3 +++ examples/itemviews/addressbook/addresswidget.cpp | 3 +-- examples/itemviews/basicsortfiltermodel/window.cpp | 1 - examples/itemviews/customsortfiltermodel/window.cpp | 1 - src/corelib/itemmodels/qsortfilterproxymodel.cpp | 6 +++--- .../itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp | 2 +- tests/auto/corelib/kernel/qitemmodel/modelstotest.cpp | 2 +- 7 files changed, 9 insertions(+), 9 deletions(-) diff --git a/dist/changes-5.0.0 b/dist/changes-5.0.0 index 7f253a6036..b16eb666ae 100644 --- a/dist/changes-5.0.0 +++ b/dist/changes-5.0.0 @@ -167,6 +167,9 @@ QtCore should now also connect to (and disconnect from) the rowsAboutToBeMoved and rowsMoved signals. +* The default value of the property QSortFilterProxyModel::dynamicSortFilter was + changed from false to true. + QtGui ----- * Accessibility has been refactored. The hierachy of accessible objects is implemented via diff --git a/examples/itemviews/addressbook/addresswidget.cpp b/examples/itemviews/addressbook/addresswidget.cpp index d9d3f46fed..82ae5083f3 100644 --- a/examples/itemviews/addressbook/addresswidget.cpp +++ b/examples/itemviews/addressbook/addresswidget.cpp @@ -167,8 +167,7 @@ void AddressWidget::setupTabs() proxyModel = new QSortFilterProxyModel(this); proxyModel->setSourceModel(table); - proxyModel->setDynamicSortFilter(true); - + QTableView *tableView = new QTableView; tableView->setModel(proxyModel); tableView->setSortingEnabled(true); diff --git a/examples/itemviews/basicsortfiltermodel/window.cpp b/examples/itemviews/basicsortfiltermodel/window.cpp index 08bdc04009..02d96667cd 100644 --- a/examples/itemviews/basicsortfiltermodel/window.cpp +++ b/examples/itemviews/basicsortfiltermodel/window.cpp @@ -45,7 +45,6 @@ Window::Window() { proxyModel = new QSortFilterProxyModel; - proxyModel->setDynamicSortFilter(true); sourceView = new QTreeView; sourceView->setRootIsDecorated(false); diff --git a/examples/itemviews/customsortfiltermodel/window.cpp b/examples/itemviews/customsortfiltermodel/window.cpp index 95b5f581d7..7b08491232 100644 --- a/examples/itemviews/customsortfiltermodel/window.cpp +++ b/examples/itemviews/customsortfiltermodel/window.cpp @@ -47,7 +47,6 @@ Window::Window() { proxyModel = new MySortFilterProxyModel(this); - proxyModel->setDynamicSortFilter(true); //! [0] //! [1] diff --git a/src/corelib/itemmodels/qsortfilterproxymodel.cpp b/src/corelib/itemmodels/qsortfilterproxymodel.cpp index 4a9c100613..085ade1680 100644 --- a/src/corelib/itemmodels/qsortfilterproxymodel.cpp +++ b/src/corelib/itemmodels/qsortfilterproxymodel.cpp @@ -1528,7 +1528,7 @@ void QSortFilterProxyModelPrivate::_q_sourceColumnsMoved( or vice versa, use mapToSource(), mapFromSource(), mapSelectionToSource(), and mapSelectionFromSource(). - \note By default, the model does not dynamically re-sort and re-filter data + \note By default, the model dynamically re-sorts and re-filters data whenever the original model changes. This behavior can be changed by setting the \l{QSortFilterProxyModel::dynamicSortFilter}{dynamicSortFilter} property. @@ -1657,7 +1657,7 @@ QSortFilterProxyModel::QSortFilterProxyModel(QObject *parent) d->sort_localeaware = false; d->filter_column = 0; d->filter_role = Qt::DisplayRole; - d->dynamic_sortfilter = false; + d->dynamic_sortfilter = true; connect(this, SIGNAL(modelReset()), this, SLOT(_q_clearMapping())); } @@ -2402,7 +2402,7 @@ void QSortFilterProxyModel::setFilterFixedString(const QString &pattern) call \l{QSortFilterProxyModel::}{sort()} after adding items to the QComboBox. - The default value is false. + The default value is true. */ bool QSortFilterProxyModel::dynamicSortFilter() const { diff --git a/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp b/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp index 7b591be8cc..67b55a92e7 100644 --- a/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp +++ b/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp @@ -2518,6 +2518,7 @@ void tst_QSortFilterProxyModel::dynamicSorting() const QStringList initial = QString("bateau avion dragon hirondelle flamme camion elephant").split(" "); model1.setStringList(initial); QSortFilterProxyModel proxy1; + proxy1.setDynamicSortFilter(false); proxy1.sort(0); proxy1.setSourceModel(&model1); @@ -2563,7 +2564,6 @@ void tst_QSortFilterProxyModel::dynamicSorting() //set up the sorting before seting the model up QSortFilterProxyModel proxy2; - proxy2.setDynamicSortFilter(true); proxy2.sort(0); proxy2.setSourceModel(&model2); for (int row = 0; row < proxy2.rowCount(QModelIndex()); ++row) { diff --git a/tests/auto/corelib/kernel/qitemmodel/modelstotest.cpp b/tests/auto/corelib/kernel/qitemmodel/modelstotest.cpp index 496789d408..67d5024944 100644 --- a/tests/auto/corelib/kernel/qitemmodel/modelstotest.cpp +++ b/tests/auto/corelib/kernel/qitemmodel/modelstotest.cpp @@ -163,7 +163,7 @@ QAbstractItemModel *ModelsToTest::createModel(const QString &modelType) QStandardItemModel *standardItemModel = new QStandardItemModel; model->setSourceModel(standardItemModel); populateTestArea(model); - model->setFilterRegExp(QRegExp("(^$|0.*)")); + model->setFilterRegExp(QRegExp("(^$|I.*)")); return model; } -- cgit v1.2.3 From 5295aab4e60ead820305d66ab8a6b5712e5fca33 Mon Sep 17 00:00:00 2001 From: Jiang Jiang Date: Fri, 16 Dec 2011 14:21:49 +0100 Subject: Fix crash in positionInLigature Check boundary of pos before accessing attributes. Task-number: QTBUG-23104 Change-Id: I0bc93dbe320badc65acc75bb59b27f481e69b93e Reviewed-by: Eskil Reviewed-by: Jiang Jiang --- src/gui/text/qtextengine.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gui/text/qtextengine.cpp b/src/gui/text/qtextengine.cpp index d223b2ec37..d2c37d451d 100644 --- a/src/gui/text/qtextengine.cpp +++ b/src/gui/text/qtextengine.cpp @@ -2692,7 +2692,7 @@ int QTextEngine::positionInLigature(const QScriptItem *si, int end, closestItem--; int pos = si->position + clusterStart + closestItem; // Jump to the next charStop - while (!attrs[pos].charStop && pos < end) + while (pos < end && !attrs[pos].charStop) pos++; return pos; } -- cgit v1.2.3 From 9fbfddfe8afe7a73b1136f20211da7274217b9e1 Mon Sep 17 00:00:00 2001 From: Robin Burchell Date: Tue, 27 Dec 2011 18:28:21 +0100 Subject: Merge integrity support into unix. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Similarly to ec9ea7f3e819cb0c2da8c8977f9cc44688c9b6f6, the code in unix (non-Linux/OS X) is actually the same as for integrity, so merge the conditionals together to save duplication. This should have the side-effect of unbreaking Qt 5 on integrity wrt the new QStandardPaths introduction, which was not added to the integrity block. Change-Id: Ib512fa781f5ceb240069888ce6958c9af2990d37 Reviewed-by: Rolland Dudemaine Reviewed-by: Thiago Macieira Reviewed-by: João Abecasis --- src/corelib/io/io.pri | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/src/corelib/io/io.pri b/src/corelib/io/io.pri index a8c12227bf..521039d5d5 100644 --- a/src/corelib/io/io.pri +++ b/src/corelib/io/io.pri @@ -82,7 +82,7 @@ win32 { SOURCES += io/qfilesystemengine_win.cpp SOURCES += io/qfilesystemiterator_win.cpp SOURCES += io/qstandardpaths_win.cpp -} else:unix { +} else:unix|integrity { SOURCES += \ io/qfsfileengine_unix.cpp \ io/qfilesystemengine_unix.cpp \ @@ -117,9 +117,4 @@ win32 { } } } -integrity { - SOURCES += io/qfsfileengine_unix.cpp \ - io/qfsfileengine_iterator.cpp \ - io/qfilesystemengine_unix.cpp \ - io/qfilesystemiterator_unix.cpp -} + -- cgit v1.2.3 From d4514b63c7297dad8ca6710d71bee4db4431d6dc Mon Sep 17 00:00:00 2001 From: Robin Burchell Date: Tue, 27 Dec 2011 18:24:57 +0100 Subject: Remove support for dnotify QFileSystemWatcher. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Inotify has been available in Linux for some ~6 years now, 7 when Qt 5 will actually be released, so I'd say it's safe to remove this fallback path now, particularly as the autotest notes that it's broken. Change-Id: I49dbb161d4765d63e92f512a6375323c7d37ccbe Reviewed-by: João Abecasis Reviewed-by: Bradley T. Hughes --- src/corelib/io/io.pri | 9 +- src/corelib/io/qfilesystemwatcher.cpp | 51 +-- src/corelib/io/qfilesystemwatcher_dnotify.cpp | 461 --------------------- src/corelib/io/qfilesystemwatcher_dnotify_p.h | 131 ------ src/corelib/io/qfilesystemwatcher_p.h | 3 +- .../qfilesystemwatcher/tst_qfilesystemwatcher.cpp | 33 +- 6 files changed, 8 insertions(+), 680 deletions(-) delete mode 100644 src/corelib/io/qfilesystemwatcher_dnotify.cpp delete mode 100644 src/corelib/io/qfilesystemwatcher_dnotify_p.h diff --git a/src/corelib/io/io.pri b/src/corelib/io/io.pri index 521039d5d5..4eb8c76a8d 100644 --- a/src/corelib/io/io.pri +++ b/src/corelib/io/io.pri @@ -101,13 +101,8 @@ win32 { } linux-* { - SOURCES += \ - io/qfilesystemwatcher_inotify.cpp \ - io/qfilesystemwatcher_dnotify.cpp - - HEADERS += \ - io/qfilesystemwatcher_inotify_p.h \ - io/qfilesystemwatcher_dnotify_p.h + SOURCES += io/qfilesystemwatcher_inotify.cpp + HEADERS += io/qfilesystemwatcher_inotify_p.h } !nacl { diff --git a/src/corelib/io/qfilesystemwatcher.cpp b/src/corelib/io/qfilesystemwatcher.cpp index 302b6e5b06..efa9029d56 100644 --- a/src/corelib/io/qfilesystemwatcher.cpp +++ b/src/corelib/io/qfilesystemwatcher.cpp @@ -56,7 +56,6 @@ # include "qfilesystemwatcher_win_p.h" #elif defined(Q_OS_LINUX) # include "qfilesystemwatcher_inotify_p.h" -# include "qfilesystemwatcher_dnotify_p.h" #elif defined(Q_OS_FREEBSD) || defined(Q_OS_MAC) # if (defined Q_OS_MAC) && (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5) # include "qfilesystemwatcher_fsevents_p.h" @@ -247,10 +246,9 @@ QFileSystemWatcherEngine *QFileSystemWatcherPrivate::createNativeEngine() #if defined(Q_OS_WIN) return new QWindowsFileSystemWatcherEngine; #elif defined(Q_OS_LINUX) - QFileSystemWatcherEngine *eng = QInotifyFileSystemWatcherEngine::create(); - if(!eng) - eng = QDnotifyFileSystemWatcherEngine::create(); - return eng; + // there is a chance that inotify may fail on Linux pre-2.6.13 (August + // 2005), so we can't just new inotify directly. + return QInotifyFileSystemWatcherEngine::create(); #elif defined(Q_OS_FREEBSD) || defined(Q_OS_MAC) # if 0 && defined(Q_OS_MAC) && (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5) if (QSysInfo::MacintoshVersion >= QSysInfo::MV_10_5) @@ -264,7 +262,7 @@ QFileSystemWatcherEngine *QFileSystemWatcherPrivate::createNativeEngine() } QFileSystemWatcherPrivate::QFileSystemWatcherPrivate() - : native(0), poller(0), forced(0) + : native(0), poller(0) { } @@ -284,35 +282,6 @@ void QFileSystemWatcherPrivate::init() } } -void QFileSystemWatcherPrivate::initForcedEngine(const QString &forceName) -{ - if(forced) - return; - - Q_Q(QFileSystemWatcher); - -#if defined(Q_OS_LINUX) - if(forceName == QLatin1String("inotify")) { - forced = QInotifyFileSystemWatcherEngine::create(); - } else if(forceName == QLatin1String("dnotify")) { - forced = QDnotifyFileSystemWatcherEngine::create(); - } -#else - Q_UNUSED(forceName); -#endif - - if(forced) { - QObject::connect(forced, - SIGNAL(fileChanged(QString,bool)), - q, - SLOT(_q_fileChanged(QString,bool))); - QObject::connect(forced, - SIGNAL(directoryChanged(QString,bool)), - q, - SLOT(_q_directoryChanged(QString,bool))); - } -} - void QFileSystemWatcherPrivate::initPollerEngine() { if(poller) @@ -444,12 +413,6 @@ QFileSystemWatcher::~QFileSystemWatcher() delete d->poller; d->poller = 0; } - if (d->forced) { - d->forced->stop(); - d->forced->wait(); - delete d->forced; - d->forced = 0; - } } /*! @@ -526,10 +489,6 @@ void QFileSystemWatcher::addPaths(const QStringList &paths) } else if(forceName == QLatin1String("native")) { qDebug() << "QFileSystemWatcher: skipping polling engine, using only native engine"; engine = d->native; - } else { - qDebug() << "QFileSystemWatcher: skipping polling and native engine, using only explicit" << forceName << "engine"; - d_func()->initForcedEngine(forceName); - engine = d->forced; } } @@ -572,8 +531,6 @@ void QFileSystemWatcher::removePaths(const QStringList &paths) p = d->native->removePaths(p, &d->files, &d->directories); if (d->poller) p = d->poller->removePaths(p, &d->files, &d->directories); - if (d->forced) - p = d->forced->removePaths(p, &d->files, &d->directories); } /*! diff --git a/src/corelib/io/qfilesystemwatcher_dnotify.cpp b/src/corelib/io/qfilesystemwatcher_dnotify.cpp deleted file mode 100644 index 46c3b46467..0000000000 --- a/src/corelib/io/qfilesystemwatcher_dnotify.cpp +++ /dev/null @@ -1,461 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtCore module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "qplatformdefs.h" -#include "qfilesystemwatcher.h" -#include "qfilesystemwatcher_dnotify_p.h" - -#ifndef QT_NO_FILESYSTEMWATCHER - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include "private/qcore_unix_p.h" - -#ifdef QT_LINUXBASE - -/* LSB doesn't standardize these */ -#define F_NOTIFY 1026 -#define DN_ACCESS 0x00000001 -#define DN_MODIFY 0x00000002 -#define DN_CREATE 0x00000004 -#define DN_DELETE 0x00000008 -#define DN_RENAME 0x00000010 -#define DN_ATTRIB 0x00000020 -#define DN_MULTISHOT 0x80000000 - -#endif - -QT_BEGIN_NAMESPACE - -static int qfswd_fileChanged_pipe[2]; -static void (*qfswd_old_sigio_handler)(int) = 0; -static void (*qfswd_old_sigio_action)(int, siginfo_t *, void *) = 0; -static void qfswd_sigio_monitor(int signum, siginfo_t *i, void *v) -{ - qt_safe_write(qfswd_fileChanged_pipe[1], reinterpret_cast(&i->si_fd), sizeof(int)); - - if (qfswd_old_sigio_handler && qfswd_old_sigio_handler != SIG_IGN) - qfswd_old_sigio_handler(signum); - if (qfswd_old_sigio_action) - qfswd_old_sigio_action(signum, i, v); -} - -class QDnotifySignalThread : public QThread -{ -Q_OBJECT -public: - QDnotifySignalThread(); - virtual ~QDnotifySignalThread(); - - void startNotify(); - - virtual void run(); - -signals: - void fdChanged(int); - -protected: - virtual bool event(QEvent *); - -private slots: - void readFromDnotify(); - -private: - QMutex mutex; - QWaitCondition wait; - bool isExecing; -}; - -Q_GLOBAL_STATIC(QDnotifySignalThread, dnotifySignal) - -QDnotifySignalThread::QDnotifySignalThread() -: isExecing(false) -{ - moveToThread(this); - - qt_safe_pipe(qfswd_fileChanged_pipe, O_NONBLOCK); - - struct sigaction oldAction; - struct sigaction action; - memset(&action, 0, sizeof(action)); - action.sa_sigaction = qfswd_sigio_monitor; - action.sa_flags = SA_SIGINFO; - ::sigaction(SIGIO, &action, &oldAction); - if (!(oldAction.sa_flags & SA_SIGINFO)) - qfswd_old_sigio_handler = oldAction.sa_handler; - else - qfswd_old_sigio_action = oldAction.sa_sigaction; -} - -QDnotifySignalThread::~QDnotifySignalThread() -{ - if(isRunning()) { - quit(); - QThread::wait(); - } -} - -bool QDnotifySignalThread::event(QEvent *e) -{ - if(e->type() == QEvent::User) { - QMutexLocker locker(&mutex); - isExecing = true; - wait.wakeAll(); - return true; - } else { - return QThread::event(e); - } -} - -void QDnotifySignalThread::startNotify() -{ - // Note: All this fancy waiting for the thread to enter its event - // loop is to avoid nasty messages at app shutdown when the - // QDnotifySignalThread singleton is deleted - start(); - mutex.lock(); - while(!isExecing) - wait.wait(&mutex); - mutex.unlock(); -} - -void QDnotifySignalThread::run() -{ - QSocketNotifier sn(qfswd_fileChanged_pipe[0], QSocketNotifier::Read, this); - connect(&sn, SIGNAL(activated(int)), SLOT(readFromDnotify())); - - QCoreApplication::instance()->postEvent(this, new QEvent(QEvent::User)); - (void) exec(); -} - -void QDnotifySignalThread::readFromDnotify() -{ - int fd; - int readrv = qt_safe_read(qfswd_fileChanged_pipe[0], reinterpret_cast(&fd), sizeof(int)); - // Only expect EAGAIN or EINTR. Other errors are assumed to be impossible. - if(readrv != -1) { - Q_ASSERT(readrv == sizeof(int)); - Q_UNUSED(readrv); - - if(0 == fd) - quit(); - else - emit fdChanged(fd); - } -} - -QDnotifyFileSystemWatcherEngine::QDnotifyFileSystemWatcherEngine() -{ - QObject::connect(dnotifySignal(), SIGNAL(fdChanged(int)), - this, SLOT(refresh(int)), Qt::DirectConnection); -} - -QDnotifyFileSystemWatcherEngine::~QDnotifyFileSystemWatcherEngine() -{ - QMutexLocker locker(&mutex); - - for(QHash::ConstIterator iter = fdToDirectory.constBegin(); - iter != fdToDirectory.constEnd(); - ++iter) { - qt_safe_close(iter->fd); - if(iter->parentFd) - qt_safe_close(iter->parentFd); - } -} - -QDnotifyFileSystemWatcherEngine *QDnotifyFileSystemWatcherEngine::create() -{ - return new QDnotifyFileSystemWatcherEngine(); -} - -void QDnotifyFileSystemWatcherEngine::run() -{ - qFatal("QDnotifyFileSystemWatcherEngine thread should not be run"); -} - -QStringList QDnotifyFileSystemWatcherEngine::addPaths(const QStringList &paths, QStringList *files, QStringList *directories) -{ - QMutexLocker locker(&mutex); - - QStringList p = paths; - QMutableListIterator it(p); - - while (it.hasNext()) { - QString path = it.next(); - - QFileInfo fi(path); - - if(!fi.exists()) { - continue; - } - - bool isDir = fi.isDir(); - - if (isDir && directories->contains(path)) { - continue; // Skip monitored directories - } else if(!isDir && files->contains(path)) { - continue; // Skip monitored files - } - - if(!isDir) - path = fi.canonicalPath(); - - // Locate the directory entry (creating if needed) - int fd = pathToFD[path]; - - if(fd == 0) { - - QT_DIR *d = QT_OPENDIR(path.toUtf8().constData()); - if(!d) continue; // Could not open directory - QT_DIR *parent = 0; - - QDir parentDir(path); - if(!parentDir.isRoot()) { - parentDir.cdUp(); - parent = QT_OPENDIR(parentDir.path().toUtf8().constData()); - if(!parent) { - QT_CLOSEDIR(d); - continue; - } - } - - fd = qt_safe_dup(::dirfd(d)); - int parentFd = parent ? qt_safe_dup(::dirfd(parent)) : 0; - - QT_CLOSEDIR(d); - if(parent) QT_CLOSEDIR(parent); - - Q_ASSERT(fd); - if(::fcntl(fd, F_SETSIG, SIGIO) || - ::fcntl(fd, F_NOTIFY, DN_MODIFY | DN_CREATE | DN_DELETE | - DN_RENAME | DN_ATTRIB | DN_MULTISHOT) || - (parent && ::fcntl(parentFd, F_SETSIG, SIGIO)) || - (parent && ::fcntl(parentFd, F_NOTIFY, DN_DELETE | DN_RENAME | - DN_MULTISHOT))) { - continue; // Could not set appropriate flags - } - - Directory dir; - dir.path = path; - dir.fd = fd; - dir.parentFd = parentFd; - - fdToDirectory.insert(fd, dir); - pathToFD.insert(path, fd); - if(parentFd) - parentToFD.insert(parentFd, fd); - } - - Directory &directory = fdToDirectory[fd]; - - if(isDir) { - directory.isMonitored = true; - } else { - Directory::File file; - file.path = fi.filePath(); - file.lastWrite = fi.lastModified(); - directory.files.append(file); - pathToFD.insert(fi.filePath(), fd); - } - - it.remove(); - - if(isDir) { - directories->append(path); - } else { - files->append(fi.filePath()); - } - } - - dnotifySignal()->startNotify(); - - return p; -} - -QStringList QDnotifyFileSystemWatcherEngine::removePaths(const QStringList &paths, QStringList *files, QStringList *directories) -{ - QMutexLocker locker(&mutex); - - QStringList p = paths; - QMutableListIterator it(p); - while (it.hasNext()) { - - QString path = it.next(); - int fd = pathToFD.take(path); - - if(!fd) - continue; - - Directory &directory = fdToDirectory[fd]; - bool isDir = false; - if(directory.path == path) { - isDir = true; - directory.isMonitored = false; - } else { - for(int ii = 0; ii < directory.files.count(); ++ii) { - if(directory.files.at(ii).path == path) { - directory.files.removeAt(ii); - break; - } - } - } - - if(!directory.isMonitored && directory.files.isEmpty()) { - // No longer needed - qt_safe_close(directory.fd); - pathToFD.remove(directory.path); - fdToDirectory.remove(fd); - } - - if(isDir) { - directories->removeAll(path); - } else { - files->removeAll(path); - } - - it.remove(); - } - - return p; -} - -void QDnotifyFileSystemWatcherEngine::refresh(int fd) -{ - QMutexLocker locker(&mutex); - - bool wasParent = false; - QHash::Iterator iter = fdToDirectory.find(fd); - if(iter == fdToDirectory.end()) { - QHash::Iterator pIter = parentToFD.find(fd); - if(pIter == parentToFD.end()) - return; - - iter = fdToDirectory.find(*pIter); - if (iter == fdToDirectory.end()) - return; - wasParent = true; - } - - Directory &directory = *iter; - - if(!wasParent) { - for(int ii = 0; ii < directory.files.count(); ++ii) { - Directory::File &file = directory.files[ii]; - if(file.updateInfo()) { - // Emit signal - QString filePath = file.path; - bool removed = !QFileInfo(filePath).exists(); - - if(removed) { - directory.files.removeAt(ii); - --ii; - } - - emit fileChanged(filePath, removed); - } - } - } - - if(directory.isMonitored) { - // Emit signal - bool removed = !QFileInfo(directory.path).exists(); - QString path = directory.path; - - if(removed) - directory.isMonitored = false; - - emit directoryChanged(path, removed); - } - - if(!directory.isMonitored && directory.files.isEmpty()) { - qt_safe_close(directory.fd); - if(directory.parentFd) { - qt_safe_close(directory.parentFd); - parentToFD.remove(directory.parentFd); - } - fdToDirectory.erase(iter); - } -} - -void QDnotifyFileSystemWatcherEngine::stop() -{ -} - -bool QDnotifyFileSystemWatcherEngine::Directory::File::updateInfo() -{ - QFileInfo fi(path); - QDateTime nLastWrite = fi.lastModified(); - uint nOwnerId = fi.ownerId(); - uint nGroupId = fi.groupId(); - QFile::Permissions nPermissions = fi.permissions(); - - if(nLastWrite != lastWrite || - nOwnerId != ownerId || - nGroupId != groupId || - nPermissions != permissions) { - ownerId = nOwnerId; - groupId = nGroupId; - permissions = nPermissions; - lastWrite = nLastWrite; - return true; - } else { - return false; - } -} - -QT_END_NAMESPACE - -#include "qfilesystemwatcher_dnotify.moc" - -#endif // QT_NO_FILESYSTEMWATCHER diff --git a/src/corelib/io/qfilesystemwatcher_dnotify_p.h b/src/corelib/io/qfilesystemwatcher_dnotify_p.h deleted file mode 100644 index f759e87d89..0000000000 --- a/src/corelib/io/qfilesystemwatcher_dnotify_p.h +++ /dev/null @@ -1,131 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtCore module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef QFILESYSTEMWATCHER_DNOTIFY_P_H -#define QFILESYSTEMWATCHER_DNOTIFY_P_H - -// -// W A R N I N G -// ------------- -// -// This file is not part of the Qt API. It exists for the convenience -// of the QLibrary class. This header file may change from -// version to version without notice, or even be removed. -// -// We mean it. -// - -#include "qfilesystemwatcher_p.h" - -#ifndef QT_NO_FILESYSTEMWATCHER - -#include -#include -#include -#include - -QT_BEGIN_NAMESPACE - -class QDnotifyFileSystemWatcherEngine : public QFileSystemWatcherEngine -{ - Q_OBJECT - -public: - virtual ~QDnotifyFileSystemWatcherEngine(); - - static QDnotifyFileSystemWatcherEngine *create(); - - void run(); - - QStringList addPaths(const QStringList &paths, QStringList *files, QStringList *directories); - QStringList removePaths(const QStringList &paths, QStringList *files, QStringList *directories); - - void stop(); - -private Q_SLOTS: - void refresh(int); - -private: - struct Directory { - Directory() : fd(0), parentFd(0), isMonitored(false) {} - Directory(const Directory &o) : path(o.path), - fd(o.fd), - parentFd(o.parentFd), - isMonitored(o.isMonitored), - files(o.files) {} - QString path; - int fd; - int parentFd; - bool isMonitored; - - struct File { - File() : ownerId(0u), groupId(0u), permissions(0u) { } - File(const File &o) : path(o.path), - ownerId(o.ownerId), - groupId(o.groupId), - permissions(o.permissions), - lastWrite(o.lastWrite) {} - QString path; - - bool updateInfo(); - - uint ownerId; - uint groupId; - QFile::Permissions permissions; - QDateTime lastWrite; - }; - - QList files; - }; - - QDnotifyFileSystemWatcherEngine(); - - QMutex mutex; - QHash pathToFD; - QHash fdToDirectory; - QHash parentToFD; -}; - - - -QT_END_NAMESPACE -#endif // QT_NO_FILESYSTEMWATCHER -#endif // QFILESYSTEMWATCHER_DNOTIFY_P_H diff --git a/src/corelib/io/qfilesystemwatcher_p.h b/src/corelib/io/qfilesystemwatcher_p.h index e136273b36..52e88002ef 100644 --- a/src/corelib/io/qfilesystemwatcher_p.h +++ b/src/corelib/io/qfilesystemwatcher_p.h @@ -105,9 +105,8 @@ public: QFileSystemWatcherPrivate(); void init(); void initPollerEngine(); - void initForcedEngine(const QString &); - QFileSystemWatcherEngine *native, *poller, *forced; + QFileSystemWatcherEngine *native, *poller; QStringList files, directories; // private slots diff --git a/tests/auto/corelib/io/qfilesystemwatcher/tst_qfilesystemwatcher.cpp b/tests/auto/corelib/io/qfilesystemwatcher/tst_qfilesystemwatcher.cpp index 0e7172143b..bc2b1940b9 100644 --- a/tests/auto/corelib/io/qfilesystemwatcher/tst_qfilesystemwatcher.cpp +++ b/tests/auto/corelib/io/qfilesystemwatcher/tst_qfilesystemwatcher.cpp @@ -56,9 +56,6 @@ class tst_QFileSystemWatcher : public QObject { Q_OBJECT -public: - tst_QFileSystemWatcher(); - private slots: void basicTest_data(); void basicTest(); @@ -81,37 +78,12 @@ private slots: void cleanup(); void destroyAfterQCoreApplication(); -private: - QStringList do_force_engines; - bool do_force_native; }; -tst_QFileSystemWatcher::tst_QFileSystemWatcher() - : do_force_native(false) -{ -#ifdef Q_OS_LINUX - // the inotify implementation in the kernel is known to be buggy in certain versions of the linux kernel - do_force_engines << "native"; - do_force_engines << "dnotify"; - -#ifdef QT_NO_INOTIFY - if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,13)) - do_force_engines << "inotify"; -#else - if (inotify_init() != -1) - do_force_engines << "inotify"; -#endif -#elif defined(Q_OS_WIN) || defined(Q_OS_DARWIN) || defined(Q_OS_FREEBSD) - // we have native engines for win32, macosx and freebsd - do_force_engines << "native"; -#endif -} - void tst_QFileSystemWatcher::basicTest_data() { QTest::addColumn("backend"); - foreach(QString engine, do_force_engines) - QTest::newRow(engine.toLatin1().constData()) << engine; + QTest::newRow("native") << "native"; QTest::newRow("poller") << "poller"; } @@ -438,9 +410,6 @@ void tst_QFileSystemWatcher::watchFileAndItsDirectory() //sequence of changes will always generate this signal. QVERIFY(dirChangedSpy.count() < 2); - if (backend == "dnotify") - QSKIP("dnotify is broken, skipping the rest of the test."); - fileChangedSpy.clear(); dirChangedSpy.clear(); QFile secondFile(secondFileName); -- cgit v1.2.3 From 39f3ee8a5dd499cf86f95e7fc9200eb3226b16be Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Mon, 2 Jan 2012 15:14:48 +0100 Subject: Close bracket in documentation. Change-Id: Iabc7c6a9f5554450e766dc63f518595871a3abb7 Reviewed-by: Richard J. Moore --- src/corelib/thread/qreadwritelock.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/corelib/thread/qreadwritelock.cpp b/src/corelib/thread/qreadwritelock.cpp index b3f791589e..5ae672b844 100644 --- a/src/corelib/thread/qreadwritelock.cpp +++ b/src/corelib/thread/qreadwritelock.cpp @@ -506,7 +506,7 @@ void QReadWriteLock::unlock() \ingroup thread - The purpose of QWriteLocker (and QReadLocker is to simplify + The purpose of QWriteLocker (and QReadLocker) is to simplify QReadWriteLock locking and unlocking. Locking and unlocking statements or in exception handling code is error-prone and difficult to debug. QWriteLocker can be used in such situations -- cgit v1.2.3 From fda36df6babf20bcfd04a54a1336a9c26e72a8ef Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Fri, 30 Dec 2011 15:51:05 +1000 Subject: Use true and false in preference to TRUE and FALSE in tests. Use the C++ boolean constants true and false instead of the C macros TRUE and FALSE (which are actually integers), and use QVERIFY instead of QCOMPARE for verifying simple boolean expressions. Change-Id: Ie76dfcab6722df6b93b3fa62b0f3437901482932 Reviewed-by: Rohan McGovern --- .../corelib/io/qdatastream/tst_qdatastream.cpp | 74 +++++----- tests/auto/corelib/io/qfile/tst_qfile.cpp | 24 ++-- tests/auto/corelib/io/qsettings/tst_qsettings.cpp | 2 +- tests/auto/corelib/kernel/qobject/tst_qobject.cpp | 156 ++++++++++----------- .../thread/qwaitcondition/tst_qwaitcondition.cpp | 16 +-- .../gui/kernel/qmouseevent/tst_qmouseevent.cpp | 8 +- tests/auto/gui/kernel/qshortcut/tst_qshortcut.cpp | 2 - tests/auto/gui/painting/qpainter/tst_qpainter.cpp | 2 +- .../painting/qpainter/utils/createImages/main.cpp | 4 +- tests/auto/gui/painting/qpen/tst_qpen.cpp | 12 +- tests/auto/gui/painting/qpolygon/tst_qpolygon.cpp | 2 +- tests/auto/gui/painting/qprinter/tst_qprinter.cpp | 24 ++-- tests/auto/network/access/qftp/tst_qftp.cpp | 36 ++--- .../kernel/qhostaddress/tst_qhostaddress.cpp | 118 ++++++++-------- .../other/exceptionsafety_objects/oomsimulator.h | 6 +- .../other/qaccessibility/tst_qaccessibility.cpp | 2 +- tests/auto/other/qfocusevent/tst_qfocusevent.cpp | 20 +-- tests/auto/widgets/dialogs/qdialog/tst_qdialog.cpp | 18 +-- .../dialogs/qfontdialog/tst_qfontdialog.cpp | 6 +- tests/auto/widgets/kernel/qwidget/tst_qwidget.cpp | 36 ++--- .../qabstractbutton/tst_qabstractbutton.cpp | 42 +++--- .../widgets/widgets/qcheckbox/tst_qcheckbox.cpp | 34 ++--- .../qcommandlinkbutton/tst_qcommandlinkbutton.cpp | 42 +++--- tests/auto/widgets/widgets/qlabel/tst_qlabel.cpp | 2 +- .../auto/widgets/widgets/qmenubar/tst_qmenubar.cpp | 4 +- .../widgets/qpushbutton/tst_qpushbutton.cpp | 42 +++--- .../auto/widgets/widgets/qtoolbox/tst_qtoolbox.cpp | 10 +- .../widgets/widgets/qworkspace/tst_qworkspace.cpp | 2 +- tests/auto/xml/dom/qdom/tst_qdom.cpp | 64 ++++----- .../xml/sax/qxmlsimplereader/parser/parser.cpp | 52 +++---- 30 files changed, 430 insertions(+), 432 deletions(-) diff --git a/tests/auto/corelib/io/qdatastream/tst_qdatastream.cpp b/tests/auto/corelib/io/qdatastream/tst_qdatastream.cpp index 9e7e93255d..6e91780ecc 100644 --- a/tests/auto/corelib/io/qdatastream/tst_qdatastream.cpp +++ b/tests/auto/corelib/io/qdatastream/tst_qdatastream.cpp @@ -873,7 +873,7 @@ static void QBitArrayData(QBitArray *b, int index) for (int i = 0; i < filler.length(); ++i) { if (filler.at(i) == '1') - b->setBit(i, TRUE); + b->setBit(i, true); } } @@ -1313,83 +1313,83 @@ void tst_QDataStream::readQDateTime(QDataStream *s) static QFont qFontData(int index) { switch (index) { - case 0: return QFont("Courier", 20, QFont::Bold, TRUE); - case 1: return QFont("Courier", 18, QFont::Bold, FALSE); - case 2: return QFont("Courier", 16, QFont::Light, TRUE); - case 3: return QFont("Courier", 14, QFont::Normal, FALSE); - case 4: return QFont("Courier", 12, QFont::DemiBold, TRUE); - case 5: return QFont("Courier", 10, QFont::Black, FALSE); + case 0: return QFont("Courier", 20, QFont::Bold, true); + case 1: return QFont("Courier", 18, QFont::Bold, false); + case 2: return QFont("Courier", 16, QFont::Light, true); + case 3: return QFont("Courier", 14, QFont::Normal, false); + case 4: return QFont("Courier", 12, QFont::DemiBold, true); + case 5: return QFont("Courier", 10, QFont::Black, false); case 6: { - QFont f("Helvetica", 10, QFont::Normal, FALSE); + QFont f("Helvetica", 10, QFont::Normal, false); f.setPixelSize(2); - f.setUnderline(FALSE); - f.setStrikeOut(FALSE); - f.setFixedPitch(FALSE); + f.setUnderline(false); + f.setStrikeOut(false); + f.setFixedPitch(false); return f; } case 7: { - QFont f("Helvetica", 10, QFont::Bold, FALSE); + QFont f("Helvetica", 10, QFont::Bold, false); f.setPixelSize(4); - f.setUnderline(TRUE); - f.setStrikeOut(FALSE); - f.setFixedPitch(FALSE); + f.setUnderline(true); + f.setStrikeOut(false); + f.setFixedPitch(false); return f; } case 8: { - QFont f("Helvetica", 10, QFont::Light, FALSE); + QFont f("Helvetica", 10, QFont::Light, false); f.setPixelSize(6); - f.setUnderline(FALSE); - f.setStrikeOut(TRUE); - f.setFixedPitch(FALSE); + f.setUnderline(false); + f.setStrikeOut(true); + f.setFixedPitch(false); return f; } case 9: { - QFont f("Helvetica", 10, QFont::DemiBold, FALSE); + QFont f("Helvetica", 10, QFont::DemiBold, false); f.setPixelSize(8); - f.setUnderline(FALSE); - f.setStrikeOut(FALSE); - f.setFixedPitch(TRUE); + f.setUnderline(false); + f.setStrikeOut(false); + f.setFixedPitch(true); return f; } case 10: { - QFont f("Helvetica", 10, QFont::Black, FALSE); + QFont f("Helvetica", 10, QFont::Black, false); f.setPixelSize(10); - f.setUnderline(TRUE); - f.setStrikeOut(TRUE); - f.setFixedPitch(FALSE); + f.setUnderline(true); + f.setStrikeOut(true); + f.setFixedPitch(false); return f; } case 11: { - QFont f("Helvetica", 10, QFont::Normal, TRUE); + QFont f("Helvetica", 10, QFont::Normal, true); f.setPixelSize(12); - f.setUnderline(FALSE); - f.setStrikeOut(TRUE); - f.setFixedPitch(TRUE); + f.setUnderline(false); + f.setStrikeOut(true); + f.setFixedPitch(true); return f; } case 12: { - QFont f("Helvetica", 10, QFont::Bold, TRUE); + QFont f("Helvetica", 10, QFont::Bold, true); f.setPixelSize(14); - f.setUnderline(TRUE); - f.setStrikeOut(TRUE); - f.setFixedPitch(TRUE); + f.setUnderline(true); + f.setStrikeOut(true); + f.setFixedPitch(true); return f; } case 13: { - QFont f("Helvetica", 10, QFont::Bold, TRUE); + QFont f("Helvetica", 10, QFont::Bold, true); f.setStretch(200); return f; } } - return QFont("Courier", 18, QFont::Bold, TRUE); + return QFont("Courier", 18, QFont::Bold, true); } #define MAX_QFONT_DATA 14 diff --git a/tests/auto/corelib/io/qfile/tst_qfile.cpp b/tests/auto/corelib/io/qfile/tst_qfile.cpp index cae97f80c4..ccdbc85293 100644 --- a/tests/auto/corelib/io/qfile/tst_qfile.cpp +++ b/tests/auto/corelib/io/qfile/tst_qfile.cpp @@ -404,7 +404,7 @@ void tst_QFile::cleanupTestCase() void tst_QFile::exists() { QFile f( QFINDTESTDATA("testfile.txt") ); - QCOMPARE( f.exists(), (bool)TRUE ); + QVERIFY(f.exists()); QFile file("nobodyhassuchafile"); file.remove(); @@ -443,41 +443,41 @@ void tst_QFile::open_data() #endif QTest::newRow( "exist_readOnly" ) << QString(QFINDTESTDATA("testfile.txt")) << int(QIODevice::ReadOnly) - << (bool)TRUE << QFile::NoError; + << true << QFile::NoError; QTest::newRow( "exist_writeOnly" ) << QString("readonlyfile") << int(QIODevice::WriteOnly) - << (bool)FALSE + << false << QFile::OpenError; QTest::newRow( "exist_append" ) << QString("readonlyfile") << int(QIODevice::Append) - << (bool)FALSE << QFile::OpenError; + << false << QFile::OpenError; QTest::newRow( "nonexist_readOnly" ) << QString("nonExist.txt") << int(QIODevice::ReadOnly) - << (bool)FALSE << QFile::OpenError; + << false << QFile::OpenError; QTest::newRow("emptyfile") << QString("") << int(QIODevice::ReadOnly) - << (bool)FALSE + << false << QFile::OpenError; - QTest::newRow("nullfile") << QString() << int(QIODevice::ReadOnly) << (bool)FALSE + QTest::newRow("nullfile") << QString() << int(QIODevice::ReadOnly) << false << QFile::OpenError; - QTest::newRow("two-dots") << QString(QFINDTESTDATA("two.dots.file")) << int(QIODevice::ReadOnly) << (bool)TRUE + QTest::newRow("two-dots") << QString(QFINDTESTDATA("two.dots.file")) << int(QIODevice::ReadOnly) << true << QFile::NoError; QTest::newRow("readonlyfile") << QString("readonlyfile") << int(QIODevice::WriteOnly) - << (bool)FALSE << QFile::OpenError; + << false << QFile::OpenError; QTest::newRow("noreadfile") << QString("noreadfile") << int(QIODevice::ReadOnly) - << (bool)FALSE << QFile::OpenError; + << false << QFile::OpenError; #if defined(Q_OS_WIN) && !defined(Q_OS_WINCE) QTest::newRow("//./PhysicalDrive0") << QString("//./PhysicalDrive0") << int(QIODevice::ReadOnly) - << (bool)TRUE << QFile::NoError; + << true << QFile::NoError; QTest::newRow("uncFile") << "//" + QtNetworkSettings::winServerName() + "/testshare/test.pri" << int(QIODevice::ReadOnly) << true << QFile::NoError; #endif @@ -694,7 +694,7 @@ void tst_QFile::atEnd() bool end = f.atEnd(); f.close(); - QCOMPARE( end, (bool)TRUE ); + QVERIFY(end); } void tst_QFile::readLine() diff --git a/tests/auto/corelib/io/qsettings/tst_qsettings.cpp b/tests/auto/corelib/io/qsettings/tst_qsettings.cpp index 58e0b4f5b4..ac2345d002 100644 --- a/tests/auto/corelib/io/qsettings/tst_qsettings.cpp +++ b/tests/auto/corelib/io/qsettings/tst_qsettings.cpp @@ -3158,7 +3158,7 @@ void tst_QSettings::consistentRegistryStorage() // Not tested at the moment. void tst_QSettings::oldSubkeyList() { - QVERIFY( TRUE ); + QVERIFY( true ); } */ diff --git a/tests/auto/corelib/kernel/qobject/tst_qobject.cpp b/tests/auto/corelib/kernel/qobject/tst_qobject.cpp index 2c99d1b556..7d54409c23 100644 --- a/tests/auto/corelib/kernel/qobject/tst_qobject.cpp +++ b/tests/auto/corelib/kernel/qobject/tst_qobject.cpp @@ -260,10 +260,10 @@ void tst_QObject::disconnect() s->emitSignal3(); s->emitSignal4(); - QCOMPARE( r1->called(1), TRUE ); - QCOMPARE( r1->called(2), TRUE ); - QCOMPARE( r1->called(3), TRUE ); - QCOMPARE( r1->called(4), TRUE ); + QVERIFY(r1->called(1)); + QVERIFY(r1->called(2)); + QVERIFY(r1->called(3)); + QVERIFY(r1->called(4)); r1->reset(); // usual disconnect with all parameters given @@ -271,12 +271,12 @@ void tst_QObject::disconnect() s->emitSignal1(); - QCOMPARE( r1->called(1), FALSE ); + QVERIFY(!r1->called(1)); r1->reset(); - QCOMPARE( ret, TRUE ); + QVERIFY(ret); ret = QObject::disconnect( s, SIGNAL( signal1() ), r1, SLOT( slot1() ) ); - QCOMPARE( ret, FALSE ); + QVERIFY(!ret); // disconnect all signals from s from all slots from r1 QObject::disconnect( s, 0, r1, 0 ); @@ -285,9 +285,9 @@ void tst_QObject::disconnect() s->emitSignal3(); s->emitSignal4(); - QCOMPARE( r1->called(2), FALSE ); - QCOMPARE( r1->called(3), FALSE ); - QCOMPARE( r1->called(4), FALSE ); + QVERIFY(!r1->called(2)); + QVERIFY(!r1->called(3)); + QVERIFY(!r1->called(4)); r1->reset(); connect( s, SIGNAL( signal1() ), r1, SLOT( slot1() ) ); @@ -301,10 +301,10 @@ void tst_QObject::disconnect() s->emitSignal1(); s->emitSignal2(); - QCOMPARE( r1->called(1), FALSE ); - QCOMPARE( r1->called(2), FALSE ); - QCOMPARE( r1->called(3), FALSE ); - QCOMPARE( r1->called(4), TRUE ); + QVERIFY(!r1->called(1)); + QVERIFY(!r1->called(2)); + QVERIFY(!r1->called(3)); + QVERIFY(r1->called(4)); r1->reset(); // make sure all is disconnected again QObject::disconnect( s, 0, r1, 0 ); @@ -322,12 +322,12 @@ void tst_QObject::disconnect() s->emitSignal2(); s->emitSignal3(); - QCOMPARE( r1->called(1), FALSE ); - QCOMPARE( r2->called(1), FALSE ); - QCOMPARE( r1->called(2), TRUE ); - QCOMPARE( r2->called(2), TRUE ); - QCOMPARE( r1->called(2), TRUE ); - QCOMPARE( r2->called(2), TRUE ); + QVERIFY(!r1->called(1)); + QVERIFY(!r2->called(1)); + QVERIFY(r1->called(2)); + QVERIFY(r2->called(2)); + QVERIFY(r1->called(2)); + QVERIFY(r2->called(2)); r1->reset(); r2->reset(); @@ -335,10 +335,10 @@ void tst_QObject::disconnect() // disconnect all signals of s from all receivers QObject::disconnect( s, 0, 0, 0 ); - QCOMPARE( r1->called(2), FALSE ); - QCOMPARE( r2->called(2), FALSE ); - QCOMPARE( r1->called(2), FALSE ); - QCOMPARE( r2->called(2), FALSE ); + QVERIFY(!r1->called(2)); + QVERIFY(!r2->called(2)); + QVERIFY(!r1->called(2)); + QVERIFY(!r2->called(2)); delete r2; delete r1; @@ -979,14 +979,14 @@ void tst_QObject::emitInDefinedOrder() SequenceObject::sequence = sequence = 0; sender2->emitSignal1(); - QCOMPARE(seq1.called(1), TRUE); - QCOMPARE(seq2.called(1), TRUE); - QCOMPARE(seq3->called(1), FALSE); - QCOMPARE(seq4.called(1), TRUE); - QCOMPARE(seq1.called(2), TRUE); - QCOMPARE(seq2.called(2), TRUE); - QCOMPARE(seq3->called(2), FALSE); - QCOMPARE(seq4.called(2), TRUE); + QVERIFY(seq1.called(1)); + QVERIFY(seq2.called(1)); + QVERIFY(!seq3->called(1)); + QVERIFY(seq4.called(1)); + QVERIFY(seq1.called(2)); + QVERIFY(seq2.called(2)); + QVERIFY(!seq3->called(2)); + QVERIFY(seq4.called(2)); QCOMPARE(seq1.sequence_slot1, ++sequence); QCOMPARE(seq2.sequence_slot1, ++sequence); QCOMPARE(seq4.sequence_slot1, ++sequence); @@ -1015,14 +1015,14 @@ void tst_QObject::emitInDefinedOrder() SequenceObject::sequence = sequence = 0; sender2->emitSignal1(); - QCOMPARE(seq1.called(2), TRUE); - QCOMPARE(seq2.called(2), TRUE); - QCOMPARE(seq3->called(2), FALSE); - QCOMPARE(seq4.called(2), TRUE); - QCOMPARE(seq1.called(1), TRUE); - QCOMPARE(seq2.called(1), TRUE); - QCOMPARE(seq3->called(1), FALSE); - QCOMPARE(seq4.called(1), TRUE); + QVERIFY(seq1.called(2)); + QVERIFY(seq2.called(2)); + QVERIFY(!seq3->called(2)); + QVERIFY(seq4.called(2)); + QVERIFY(seq1.called(1)); + QVERIFY(seq2.called(1)); + QVERIFY(!seq3->called(1)); + QVERIFY(seq4.called(1)); QCOMPARE(seq1.sequence_slot2, ++sequence); QCOMPARE(seq2.sequence_slot2, ++sequence); QCOMPARE(seq4.sequence_slot2, ++sequence); @@ -1051,14 +1051,14 @@ void tst_QObject::emitInDefinedOrder() SequenceObject::sequence = sequence = 0; sender2->emitSignal1(); - QCOMPARE(seq1.called(1), TRUE); - QCOMPARE(seq2.called(1), TRUE); - QCOMPARE(seq3->called(1), FALSE); - QCOMPARE(seq4.called(1), TRUE); - QCOMPARE(seq1.called(2), TRUE); - QCOMPARE(seq2.called(2), TRUE); - QCOMPARE(seq3->called(2), FALSE); - QCOMPARE(seq4.called(2), TRUE); + QVERIFY(seq1.called(1)); + QVERIFY(seq2.called(1)); + QVERIFY(!seq3->called(1)); + QVERIFY(seq4.called(1)); + QVERIFY(seq1.called(2)); + QVERIFY(seq2.called(2)); + QVERIFY(!seq3->called(2)); + QVERIFY(seq4.called(2)); QCOMPARE(seq1.sequence_slot1, ++sequence); QCOMPARE(seq2.sequence_slot1, ++sequence); QCOMPARE(seq4.sequence_slot1, ++sequence); @@ -1092,12 +1092,12 @@ void tst_QObject::emitInDefinedOrder() sender2->emitSignal1(); QCOMPARE(static_cast(psender), static_cast(0)); QCOMPARE(static_cast(pseq3), static_cast(0)); - QCOMPARE(seq1.called(1), TRUE); - QCOMPARE(seq2.called(1), TRUE); - QCOMPARE(seq4.called(1), TRUE); - QCOMPARE(seq1.called(2), TRUE); - QCOMPARE(seq2.called(2), TRUE); - QCOMPARE(seq4.called(2), FALSE); + QVERIFY(seq1.called(1)); + QVERIFY(seq2.called(1)); + QVERIFY(seq4.called(1)); + QVERIFY(seq1.called(2)); + QVERIFY(seq2.called(2)); + QVERIFY(!seq4.called(2)); QCOMPARE(seq1.sequence_slot1, ++sequence); QCOMPARE(seq2.sequence_slot1, ++sequence); QCOMPARE(seq4.sequence_slot1, ++sequence); @@ -4209,10 +4209,10 @@ void tst_QObject::pointerDisconnect() s->emitSignal3(); s->emitSignal4(); - QCOMPARE( r1->called(1), TRUE ); - QCOMPARE( r1->called(2), TRUE ); - QCOMPARE( r1->called(3), TRUE ); - QCOMPARE( r1->called(4), TRUE ); + QVERIFY(r1->called(1)); + QVERIFY(r1->called(2)); + QVERIFY(r1->called(3)); + QVERIFY(r1->called(4)); r1->reset(); // usual disconnect with all parameters given @@ -4220,12 +4220,12 @@ void tst_QObject::pointerDisconnect() s->emitSignal1(); - QCOMPARE( r1->called(1), FALSE ); + QVERIFY(!r1->called(1)); r1->reset(); - QCOMPARE( ret, TRUE ); + QVERIFY(ret); ret = QObject::disconnect( s, &SenderObject::signal1, r1, &ReceiverObject::slot1 ); - QCOMPARE( ret, FALSE ); + QVERIFY(!ret); // disconnect all signals from s from all slots from r1 QObject::disconnect( s, 0, r1, 0 ); @@ -4234,9 +4234,9 @@ void tst_QObject::pointerDisconnect() s->emitSignal3(); s->emitSignal4(); - QCOMPARE( r1->called(2), FALSE ); - QCOMPARE( r1->called(3), FALSE ); - QCOMPARE( r1->called(4), FALSE ); + QVERIFY(!r1->called(2)); + QVERIFY(!r1->called(3)); + QVERIFY(!r1->called(4)); r1->reset(); connect( s, &SenderObject::signal1, r1, &ReceiverObject::slot1 ); @@ -4250,10 +4250,10 @@ void tst_QObject::pointerDisconnect() s->emitSignal1(); s->emitSignal2(); - QCOMPARE( r1->called(1), FALSE ); - QCOMPARE( r1->called(2), FALSE ); - QCOMPARE( r1->called(3), FALSE ); - QCOMPARE( r1->called(4), TRUE ); + QVERIFY(!r1->called(1)); + QVERIFY(!r1->called(2)); + QVERIFY(!r1->called(3)); + QVERIFY(r1->called(4)); r1->reset(); // make sure all is disconnected again QObject::disconnect( s, 0, r1, 0 ); @@ -4271,12 +4271,12 @@ void tst_QObject::pointerDisconnect() s->emitSignal2(); s->emitSignal3(); - QCOMPARE( r1->called(1), FALSE ); - QCOMPARE( r2->called(1), FALSE ); - QCOMPARE( r1->called(2), TRUE ); - QCOMPARE( r2->called(2), TRUE ); - QCOMPARE( r1->called(2), TRUE ); - QCOMPARE( r2->called(2), TRUE ); + QVERIFY(!r1->called(1)); + QVERIFY(!r2->called(1)); + QVERIFY(r1->called(2)); + QVERIFY(r2->called(2)); + QVERIFY(r1->called(2)); + QVERIFY(r2->called(2)); r1->reset(); r2->reset(); @@ -4284,10 +4284,10 @@ void tst_QObject::pointerDisconnect() // disconnect all signals of s from all receivers QObject::disconnect( s, 0, 0, 0 ); - QCOMPARE( r1->called(2), FALSE ); - QCOMPARE( r2->called(2), FALSE ); - QCOMPARE( r1->called(2), FALSE ); - QCOMPARE( r2->called(2), FALSE ); + QVERIFY(!r1->called(2)); + QVERIFY(!r2->called(2)); + QVERIFY(!r1->called(2)); + QVERIFY(!r2->called(2)); delete r2; delete r1; diff --git a/tests/auto/corelib/thread/qwaitcondition/tst_qwaitcondition.cpp b/tests/auto/corelib/thread/qwaitcondition/tst_qwaitcondition.cpp index 4ffde9fcb8..4237b41e57 100644 --- a/tests/auto/corelib/thread/qwaitcondition/tst_qwaitcondition.cpp +++ b/tests/auto/corelib/thread/qwaitcondition/tst_qwaitcondition.cpp @@ -443,7 +443,7 @@ void tst_QWaitCondition::wakeOne() for (x = 0; x < ThreadCount; ++x) { thread[x].mutex = &mutex; thread[x].cond = &cond; - thread_exited[x] = FALSE; + thread_exited[x] = false; thread[x].start(); // wait for thread to start QVERIFY(thread[x].started.wait(&mutex, 1000)); @@ -468,7 +468,7 @@ void tst_QWaitCondition::wakeOne() if (thread_exited[y]) continue; if (thread[y].wait(exited > 0 ? 10 : 1000)) { - thread_exited[y] = TRUE; + thread_exited[y] = true; ++exited; } } @@ -487,7 +487,7 @@ void tst_QWaitCondition::wakeOne() for (x = 0; x < ThreadCount; ++x) { rwthread[x].readWriteLock = &readWriteLock; rwthread[x].cond = &cond; - thread_exited[x] = FALSE; + thread_exited[x] = false; rwthread[x].start(); // wait for thread to start QVERIFY(rwthread[x].started.wait(&readWriteLock, 1000)); @@ -512,7 +512,7 @@ void tst_QWaitCondition::wakeOne() if (thread_exited[y]) continue; if (rwthread[y].wait(exited > 0 ? 10 : 1000)) { - thread_exited[y] = TRUE; + thread_exited[y] = true; ++exited; } } @@ -537,7 +537,7 @@ void tst_QWaitCondition::wakeOne() for (x = 0; x < ThreadCount; ++x) { thread[x].mutex = &mutex; thread[x].cond = &cond; - thread_exited[x] = FALSE; + thread_exited[x] = false; thread[x].start(); // wait for thread to start QVERIFY(thread[x].started.wait(&mutex, 1000)); @@ -564,7 +564,7 @@ void tst_QWaitCondition::wakeOne() if (thread_exited[y]) continue; if (thread[y].wait(exited > 0 ? 10 : 1000)) { - thread_exited[y] = TRUE; + thread_exited[y] = true; ++exited; } } @@ -583,7 +583,7 @@ void tst_QWaitCondition::wakeOne() for (x = 0; x < ThreadCount; ++x) { rwthread[x].readWriteLock = &readWriteLock; rwthread[x].cond = &cond; - thread_exited[x] = FALSE; + thread_exited[x] = false; rwthread[x].start(); // wait for thread to start QVERIFY(rwthread[x].started.wait(&readWriteLock, 1000)); @@ -610,7 +610,7 @@ void tst_QWaitCondition::wakeOne() if (thread_exited[y]) continue; if (rwthread[y].wait(exited > 0 ? 10 : 1000)) { - thread_exited[y] = TRUE; + thread_exited[y] = true; ++exited; } } diff --git a/tests/auto/gui/kernel/qmouseevent/tst_qmouseevent.cpp b/tests/auto/gui/kernel/qmouseevent/tst_qmouseevent.cpp index 370338d24a..bbfaf4c408 100644 --- a/tests/auto/gui/kernel/qmouseevent/tst_qmouseevent.cpp +++ b/tests/auto/gui/kernel/qmouseevent/tst_qmouseevent.cpp @@ -72,7 +72,7 @@ protected: mousePressButton = e->button(); mousePressButtons = e->buttons(); mousePressModifiers = e->modifiers(); - mousePressEventRecieved = TRUE; + mousePressEventRecieved = true; e->accept(); } void mouseReleaseEvent(QMouseEvent *e) @@ -81,7 +81,7 @@ protected: mouseReleaseButton = e->button(); mouseReleaseButtons = e->buttons(); mouseReleaseModifiers = e->modifiers(); - mouseReleaseEventRecieved = TRUE; + mouseReleaseEventRecieved = true; e->accept(); } }; @@ -134,8 +134,8 @@ void tst_QMouseEvent::cleanupTestCase() void tst_QMouseEvent::init() { - testMouseWidget->mousePressEventRecieved = FALSE; - testMouseWidget->mouseReleaseEventRecieved = FALSE; + testMouseWidget->mousePressEventRecieved = false; + testMouseWidget->mouseReleaseEventRecieved = false; testMouseWidget->mousePressButton = 0; testMouseWidget->mousePressButtons = 0; testMouseWidget->mousePressModifiers = 0; diff --git a/tests/auto/gui/kernel/qshortcut/tst_qshortcut.cpp b/tests/auto/gui/kernel/qshortcut/tst_qshortcut.cpp index d3a087eefc..af472c6c8e 100644 --- a/tests/auto/gui/kernel/qshortcut/tst_qshortcut.cpp +++ b/tests/auto/gui/kernel/qshortcut/tst_qshortcut.cpp @@ -1254,10 +1254,8 @@ void tst_QShortcut::testElement() if (action == ClearAll) { clearAllShortcuts(); - QCOMPARE(TRUE, TRUE); } else if (action == SetupAccel) { setupShortcut(testWidget, txt, k1, k2, k3, k4); - QCOMPARE(TRUE, TRUE); } else { sendKeyEvents(k1, c1, k2, c2, k3, c3, k4, c4); QCOMPARE(int(currentResult), result); diff --git a/tests/auto/gui/painting/qpainter/tst_qpainter.cpp b/tests/auto/gui/painting/qpainter/tst_qpainter.cpp index c868e9fa39..4faecad104 100644 --- a/tests/auto/gui/painting/qpainter/tst_qpainter.cpp +++ b/tests/auto/gui/painting/qpainter/tst_qpainter.cpp @@ -347,7 +347,7 @@ Q_DECLARE_METATYPE(QRegion) tst_QPainter::tst_QPainter() { // QtTestCase sets this to false, but this turns off alpha pixmaps on Unix. - QApplication::setDesktopSettingsAware(TRUE); + QApplication::setDesktopSettingsAware(true); } tst_QPainter::~tst_QPainter() diff --git a/tests/auto/gui/painting/qpainter/utils/createImages/main.cpp b/tests/auto/gui/painting/qpainter/utils/createImages/main.cpp index 418c385717..a5a948a8e1 100644 --- a/tests/auto/gui/painting/qpainter/utils/createImages/main.cpp +++ b/tests/auto/gui/painting/qpainter/utils/createImages/main.cpp @@ -127,7 +127,7 @@ static QBitmap createSrcBitmap( int size, int border ) painter.drawRect( border, border, size, size2 ); painter.end(); if ( border > 0 ) { - QBitmap mask( totalSize, totalSize, TRUE ); + QBitmap mask( totalSize, totalSize, true ); QPainter painter; painter.begin( &mask ); painter.setPen( QPen( Qt::color1, 1 ) ); @@ -171,7 +171,7 @@ int main( int argc, char **argv ) QBitmap src_tmp = createSrcBitmap( 32, 0 ).xForm( QWMatrix( 1, 0, 0, -1, 0, 0 ) ); src_tmp.resize( 32, 48 ); QBitmap src2 = src_tmp.xForm( QWMatrix( 1, 0, 0, -1, 0, 0 ) ); - QBitmap mask( 32, 48, TRUE ); + QBitmap mask( 32, 48, true ); { QPainter painter; painter.begin( &mask ); diff --git a/tests/auto/gui/painting/qpen/tst_qpen.cpp b/tests/auto/gui/painting/qpen/tst_qpen.cpp index eeb5aae96d..832e9c2daa 100644 --- a/tests/auto/gui/painting/qpen/tst_qpen.cpp +++ b/tests/auto/gui/painting/qpen/tst_qpen.cpp @@ -117,22 +117,22 @@ void tst_QPen::operator_eq_eq_data() QTest::newRow("differentColor") << QPen(Qt::red) << QPen(Qt::blue) - << bool(FALSE); + << false; QTest::newRow("differentWidth") << QPen(Qt::red, 2) << QPen(Qt::red, 3) - << bool(FALSE); + << false; QTest::newRow("differentPenStyle") << QPen(Qt::red, 2, Qt::DashLine) << QPen(Qt::red, 2, Qt::DotLine) - << bool(FALSE); + << false; QTest::newRow("differentCapStyle") << QPen(Qt::red, 2, Qt::DashLine, Qt::RoundCap, Qt::BevelJoin) << QPen(Qt::red, 2, Qt::DashLine, Qt::SquareCap, Qt::BevelJoin) - << bool(FALSE); + << false; QTest::newRow("differentJoinStyle") << QPen(Qt::red, 2, Qt::DashLine, Qt::RoundCap, Qt::BevelJoin) << QPen(Qt::red, 2, Qt::DashLine, Qt::RoundCap, Qt::MiterJoin) - << bool(FALSE); + << false; QTest::newRow("same") << QPen(Qt::red, 2, Qt::DashLine, Qt::RoundCap, Qt::BevelJoin) << QPen(Qt::red, 2, Qt::DashLine, Qt::RoundCap, Qt::BevelJoin) - << bool(TRUE); + << true; } diff --git a/tests/auto/gui/painting/qpolygon/tst_qpolygon.cpp b/tests/auto/gui/painting/qpolygon/tst_qpolygon.cpp index 8d0bed6128..f69e058183 100644 --- a/tests/auto/gui/painting/qpolygon/tst_qpolygon.cpp +++ b/tests/auto/gui/painting/qpolygon/tst_qpolygon.cpp @@ -76,7 +76,7 @@ void tst_QPolygon::makeEllipse() int i; // make sure that all points are R+-1 away from the center - bool err = FALSE; + bool err = false; for (i = 1; i < pa.size(); i++) { QPoint p = pa.at( i ); double r = sqrt( pow( double(p.x() - R), 2.0 ) + pow( double(p.y() - R), 2.0 ) ); diff --git a/tests/auto/gui/painting/qprinter/tst_qprinter.cpp b/tests/auto/gui/painting/qprinter/tst_qprinter.cpp index 4767048929..2bb3cbeeef 100644 --- a/tests/auto/gui/painting/qprinter/tst_qprinter.cpp +++ b/tests/auto/gui/painting/qprinter/tst_qprinter.cpp @@ -315,25 +315,25 @@ void tst_QPrinter::testSetOptions() QPrintDialog dlg(&prn); // Verify default values - MYCOMPARE(dlg.isOptionEnabled(QAbstractPrintDialog::PrintToFile), TRUE); - MYCOMPARE(dlg.isOptionEnabled(QAbstractPrintDialog::PrintSelection), FALSE); - MYCOMPARE(dlg.isOptionEnabled(QAbstractPrintDialog::PrintPageRange), TRUE); + MYCOMPARE(dlg.isOptionEnabled(QAbstractPrintDialog::PrintToFile), true); + MYCOMPARE(dlg.isOptionEnabled(QAbstractPrintDialog::PrintSelection), false); + MYCOMPARE(dlg.isOptionEnabled(QAbstractPrintDialog::PrintPageRange), true); dlg.setEnabledOptions(QAbstractPrintDialog::PrintPageRange); - MYCOMPARE(dlg.isOptionEnabled(QAbstractPrintDialog::PrintToFile), FALSE); - MYCOMPARE(dlg.isOptionEnabled(QAbstractPrintDialog::PrintSelection), FALSE); - MYCOMPARE(dlg.isOptionEnabled(QAbstractPrintDialog::PrintPageRange), TRUE); + MYCOMPARE(dlg.isOptionEnabled(QAbstractPrintDialog::PrintToFile), false); + MYCOMPARE(dlg.isOptionEnabled(QAbstractPrintDialog::PrintSelection), false); + MYCOMPARE(dlg.isOptionEnabled(QAbstractPrintDialog::PrintPageRange), true); dlg.setEnabledOptions((QAbstractPrintDialog::PrintDialogOptions(QAbstractPrintDialog::PrintSelection | QAbstractPrintDialog::PrintPageRange))); - MYCOMPARE(dlg.isOptionEnabled(QAbstractPrintDialog::PrintToFile), FALSE); - MYCOMPARE(dlg.isOptionEnabled(QAbstractPrintDialog::PrintSelection), TRUE); - MYCOMPARE(dlg.isOptionEnabled(QAbstractPrintDialog::PrintPageRange), TRUE); + MYCOMPARE(dlg.isOptionEnabled(QAbstractPrintDialog::PrintToFile), false); + MYCOMPARE(dlg.isOptionEnabled(QAbstractPrintDialog::PrintSelection), true); + MYCOMPARE(dlg.isOptionEnabled(QAbstractPrintDialog::PrintPageRange), true); dlg.setEnabledOptions(QAbstractPrintDialog::PrintSelection); - MYCOMPARE(dlg.isOptionEnabled(QAbstractPrintDialog::PrintToFile), FALSE); - MYCOMPARE(dlg.isOptionEnabled(QAbstractPrintDialog::PrintSelection), TRUE); - MYCOMPARE(dlg.isOptionEnabled(QAbstractPrintDialog::PrintPageRange), FALSE); + MYCOMPARE(dlg.isOptionEnabled(QAbstractPrintDialog::PrintToFile), false); + MYCOMPARE(dlg.isOptionEnabled(QAbstractPrintDialog::PrintSelection), true); + MYCOMPARE(dlg.isOptionEnabled(QAbstractPrintDialog::PrintPageRange), false); } void tst_QPrinter::testMargins_data() diff --git a/tests/auto/network/access/qftp/tst_qftp.cpp b/tests/auto/network/access/qftp/tst_qftp.cpp index 2e484d5bb5..904e23a756 100644 --- a/tests/auto/network/access/qftp/tst_qftp.cpp +++ b/tests/auto/network/access/qftp/tst_qftp.cpp @@ -278,7 +278,7 @@ void tst_QFtp::init() bytesAvailable_finished = 1234567890; bytesAvailable_done = 1234567890; - inFileDirExistsFunction = FALSE; + inFileDirExistsFunction = false; #if !defined(Q_OS_WINCE) srand(time(0)); @@ -435,12 +435,12 @@ void tst_QFtp::close_data() QTest::addColumn("password"); QTest::addColumn("login"); - QTest::newRow( "login01" ) << QtNetworkSettings::serverName() << (uint)21 << QString() << QString() << (bool)TRUE; - QTest::newRow( "login02" ) << QtNetworkSettings::serverName() << (uint)21 << QString("ftp") << QString() << (bool)TRUE; - QTest::newRow( "login03" ) << QtNetworkSettings::serverName() << (uint)21 << QString("ftp") << QString("foo") << (bool)TRUE; - QTest::newRow( "login04" ) << QtNetworkSettings::serverName() << (uint)21 << QString("ftptest") << QString("password") << (bool)TRUE; + QTest::newRow( "login01" ) << QtNetworkSettings::serverName() << (uint)21 << QString() << QString() << true; + QTest::newRow( "login02" ) << QtNetworkSettings::serverName() << (uint)21 << QString("ftp") << QString() << true; + QTest::newRow( "login03" ) << QtNetworkSettings::serverName() << (uint)21 << QString("ftp") << QString("foo") << true; + QTest::newRow( "login04" ) << QtNetworkSettings::serverName() << (uint)21 << QString("ftptest") << QString("password") << true; - QTest::newRow( "no-login01" ) << QtNetworkSettings::serverName() << (uint)21 << QString("") << QString("") << (bool)FALSE; + QTest::newRow( "no-login01" ) << QtNetworkSettings::serverName() << (uint)21 << QString("") << QString("") << false; } void tst_QFtp::close() @@ -1963,12 +1963,12 @@ bool tst_QFtp::fileExists( const QString &host, quint16 port, const QString &use // ### make these tests work if (ftp->currentId() != 0) { qWarning("ftp->currentId() != 0"); - return FALSE; + return false; } if (ftp->state() != QFtp::Unconnected) { qWarning("ftp->state() != QFtp::Unconnected"); - return FALSE; + return false; } addCommand( QFtp::ConnectToHost, ftp->connectToHost( host, port ) ); @@ -1978,39 +1978,39 @@ bool tst_QFtp::fileExists( const QString &host, quint16 port, const QString &use addCommand( QFtp::List, ftp->list( file ) ); addCommand( QFtp::Close, ftp->close() ); - inFileDirExistsFunction = TRUE; + inFileDirExistsFunction = true; QTestEventLoop::instance().enterLoop( 30 ); delete ftp; ftp = 0; if ( QTestEventLoop::instance().timeout() ) { // ### make this test work qWarning("tst_QFtp::fileExists: Network operation timed out"); - return FALSE; + return false; } - inFileDirExistsFunction = FALSE; + inFileDirExistsFunction = false; ResMapIt it = resultMap.find( QFtp::ConnectToHost ); // ### make these tests work if (it == resultMap.end()) { qWarning("it != resultMap.end()"); - return FALSE; + return false; } if (it.value().success == -1) { qWarning("it.value().success != -1"); - return FALSE; + return false; } if ( it.value().success == 1 ) { for ( uint i=0; i < (uint) listInfo_i.count(); i++ ) { if ( QFileInfo(listInfo_i[i].name()).fileName() == QFileInfo(file).fileName() ) - return TRUE; + return true; } } //this is not a good warning considering sometime this function is used to test that a file does not exist //qWarning("file doesn't exist"); - return FALSE; + return false; } bool tst_QFtp::dirExists( const QString &host, quint16 port, const QString &user, const QString &password, const QString &cdDir, const QString &dirToCreate ) @@ -2029,7 +2029,7 @@ bool tst_QFtp::dirExists( const QString &host, quint16 port, const QString &user addCommand( QFtp::Cd, ftp->cd( cdDir + "/" + dirToCreate ) ); addCommand( QFtp::Close, ftp->close() ); - inFileDirExistsFunction = TRUE; + inFileDirExistsFunction = true; QTestEventLoop::instance().enterLoop( 30 ); delete ftp; ftp = 0; @@ -2037,9 +2037,9 @@ bool tst_QFtp::dirExists( const QString &host, quint16 port, const QString &user // ### make this test work // QFAIL( "Network operation timed out" ); qWarning("tst_QFtp::dirExists: Network operation timed out"); - return FALSE; + return false; } - inFileDirExistsFunction = FALSE; + inFileDirExistsFunction = false; ResMapIt it = resultMap.find( QFtp::Cd ); // ### make these tests work diff --git a/tests/auto/network/kernel/qhostaddress/tst_qhostaddress.cpp b/tests/auto/network/kernel/qhostaddress/tst_qhostaddress.cpp index 8af3a37665..bf7a6a0f64 100644 --- a/tests/auto/network/kernel/qhostaddress/tst_qhostaddress.cpp +++ b/tests/auto/network/kernel/qhostaddress/tst_qhostaddress.cpp @@ -157,67 +157,67 @@ void tst_QHostAddress::setAddress_QString_data() QTest::addColumn("protocol"); // 4: IPv4, 6: IPv6, other: undefined //next we fill it with data - QTest::newRow("ip4_00") << QString("127.0.0.1") << (bool)TRUE << QString("127.0.0.1") << 4; - QTest::newRow("ip4_01") << QString("255.3.2.1") << (bool)TRUE << QString("255.3.2.1") << 4; - QTest::newRow("ip4_03") << QString(" 255.3.2.1") << (bool)TRUE << QString("255.3.2.1") << 4; - QTest::newRow("ip4_04") << QString("255.3.2.1\r ") << (bool)TRUE << QString("255.3.2.1") << 4; - QTest::newRow("ip4_05") << QString("0.0.0.0") << (bool)TRUE << QString("0.0.0.0") << 4; + QTest::newRow("ip4_00") << QString("127.0.0.1") << true << QString("127.0.0.1") << 4; + QTest::newRow("ip4_01") << QString("255.3.2.1") << true << QString("255.3.2.1") << 4; + QTest::newRow("ip4_03") << QString(" 255.3.2.1") << true << QString("255.3.2.1") << 4; + QTest::newRow("ip4_04") << QString("255.3.2.1\r ") << true << QString("255.3.2.1") << 4; + QTest::newRow("ip4_05") << QString("0.0.0.0") << true << QString("0.0.0.0") << 4; // for the format of IPv6 addresses see also RFC 5952 - QTest::newRow("ip6_00") << QString("FEDC:BA98:7654:3210:FEDC:BA98:7654:3210") << (bool)TRUE << QString("FEDC:BA98:7654:3210:FEDC:BA98:7654:3210") << 6; - QTest::newRow("ip6_01") << QString("1080:0000:0000:0000:0008:0800:200C:417A") << (bool)TRUE << QString("1080::8:800:200C:417A") << 6; - QTest::newRow("ip6_02") << QString("1080:0:0:0:8:800:200C:417A") << (bool)TRUE << QString("1080::8:800:200C:417A") << 6; - QTest::newRow("ip6_03") << QString("1080::8:800:200C:417A") << (bool)TRUE << QString("1080::8:800:200C:417A") << 6; - QTest::newRow("ip6_04") << QString("FF01::43") << (bool)TRUE << QString("FF01::43") << 6; - QTest::newRow("ip6_05") << QString("::1") << (bool)TRUE << QString("::1") << 6; - QTest::newRow("ip6_06") << QString("1::") << (bool)TRUE << QString("1::") << 6; - QTest::newRow("ip6_07") << QString("::") << (bool)TRUE << QString("::") << 6; - QTest::newRow("ip6_08") << QString("0:0:0:0:0:0:13.1.68.3") << (bool)TRUE << QString("::D01:4403") << 6; - QTest::newRow("ip6_09") << QString("::13.1.68.3") << (bool)TRUE << QString("::D01:4403") << 6; - QTest::newRow("ip6_10") << QString("0:0:0:0:0:FFFF:129.144.52.38") << (bool)TRUE << QString("::FFFF:8190:3426") << 6; - QTest::newRow("ip6_11") << QString("::FFFF:129.144.52.38") << (bool)TRUE << QString("::FFFF:8190:3426") << 6; - QTest::newRow("ip6_12") << QString("1::FFFF:129.144.52.38") << (bool)TRUE << QString("1::FFFF:8190:3426") << 6; - QTest::newRow("ip6_13") << QString("A:B::D:E") << (bool)TRUE << QString("A:B::D:E") << 6; - QTest::newRow("ip6_14") << QString("1080:0:1:0:8:800:200C:417A") << (bool)TRUE << QString("1080:0:1:0:8:800:200C:417A") << 6; - QTest::newRow("ip6_15") << QString("1080:0:1:0:8:800:200C:0") << (bool)TRUE << QString("1080:0:1:0:8:800:200C:0") << 6; - QTest::newRow("ip6_16") << QString("1080:0:1:0:8:800:0:0") << (bool)TRUE << QString("1080:0:1:0:8:800::") << 6; - QTest::newRow("ip6_17") << QString("1080:0:0:0:8:800:0:0") << (bool)TRUE << QString("1080::8:800:0:0") << 6; - QTest::newRow("ip6_18") << QString("0:1:1:1:8:800:0:0") << (bool)TRUE << QString("0:1:1:1:8:800::") << 6; - QTest::newRow("ip6_19") << QString("0:1:1:1:8:800:0:1") << (bool)TRUE << QString("0:1:1:1:8:800:0:1") << 6; - - QTest::newRow("error_00") << QString("foobarcom") << (bool)FALSE << QString() << 0; - QTest::newRow("error_01") << QString("foo.bar.com") << (bool)FALSE << QString() << 0; - QTest::newRow("error_02") << QString("") << (bool)FALSE << QString() << 0; - QTest::newRow("error_03") << QString() << (bool)FALSE << QString() << 0; - QTest::newRow("error_04") << QString(" \t\r") << (bool)FALSE << QString() << 0; - - QTest::newRow("error_ip4_00") << QString("256.9.9.9") << (bool)FALSE << QString() << 0; - QTest::newRow("error_ip4_01") << QString("-1.9.9.9") << (bool)FALSE << QString() << 0; - QTest::newRow("error_ip4_02") << QString("123.0.0") << (bool)FALSE << QString() << 0; - QTest::newRow("error_ip4_03") << QString("123.0.0.0.0") << (bool)FALSE << QString() << 0; - QTest::newRow("error_ip4_04") << QString("255.2 3.2.1") << (bool)FALSE << QString() << 0; - - QTest::newRow("error_ip6_00") << QString(":") << (bool)FALSE << QString() << 0; - QTest::newRow("error_ip6_01") << QString(":::") << (bool)FALSE << QString() << 0; - QTest::newRow("error_ip6_02") << QString("::AAAA:") << (bool)FALSE << QString() << 0; - QTest::newRow("error_ip6_03") << QString(":AAAA::") << (bool)FALSE << QString() << 0; - QTest::newRow("error_ip6_04") << QString("FFFF:::129.144.52.38") << (bool)FALSE << QString() << 0; - QTest::newRow("error_ip6_05") << QString("FEDC:BA98:7654:3210:FEDC:BA98:7654:3210:1234") << (bool)FALSE << QString() << 0; - QTest::newRow("error_ip6_06") << QString("129.144.52.38::") << (bool)FALSE << QString() << 0; - QTest::newRow("error_ip6_07") << QString("::129.144.52.38:129.144.52.38") << (bool)FALSE << QString() << 0; - QTest::newRow("error_ip6_08") << QString(":::129.144.52.38") << (bool)FALSE << QString() << 0; - QTest::newRow("error_ip6_09") << QString("1FEDC:BA98:7654:3210:FEDC:BA98:7654:3210") << (bool)FALSE << QString() << 0; - QTest::newRow("error_ip6_10") << QString("::FFFFFFFF") << (bool)FALSE << QString() << 0; - QTest::newRow("error_ip6_11") << QString("::EFGH") << (bool)FALSE << QString() << 0; - QTest::newRow("error_ip6_12") << QString("ABCD:ABCD:ABCD") << (bool)FALSE << QString() << 0; - QTest::newRow("error_ip6_13") << QString("::ABCD:ABCD::") << (bool)FALSE << QString() << 0; - QTest::newRow("error_ip6_14") << QString("1::2::3") << (bool)FALSE << QString() << 0; - QTest::newRow("error_ip6_15") << QString("1:2:::") << (bool)FALSE << QString() << 0; - QTest::newRow("error_ip6_16") << QString(":::1:2") << (bool)FALSE << QString() << 0; - QTest::newRow("error_ip6_17") << QString("1:::2") << (bool)FALSE << QString() << 0; - QTest::newRow("error_ip6_18") << QString("FEDC::7654:3210:FEDC:BA98::3210") << (bool)FALSE << QString() << 0; - QTest::newRow("error_ip6_19") << QString("ABCD:ABCD:ABCD:1.2.3.4") << (bool)FALSE << QString() << 0; - QTest::newRow("error_ip6_20") << QString("ABCD::ABCD::ABCD:1.2.3.4") << (bool)FALSE << QString() << 0; + QTest::newRow("ip6_00") << QString("FEDC:BA98:7654:3210:FEDC:BA98:7654:3210") << true << QString("FEDC:BA98:7654:3210:FEDC:BA98:7654:3210") << 6; + QTest::newRow("ip6_01") << QString("1080:0000:0000:0000:0008:0800:200C:417A") << true << QString("1080::8:800:200C:417A") << 6; + QTest::newRow("ip6_02") << QString("1080:0:0:0:8:800:200C:417A") << true << QString("1080::8:800:200C:417A") << 6; + QTest::newRow("ip6_03") << QString("1080::8:800:200C:417A") << true << QString("1080::8:800:200C:417A") << 6; + QTest::newRow("ip6_04") << QString("FF01::43") << true << QString("FF01::43") << 6; + QTest::newRow("ip6_05") << QString("::1") << true << QString("::1") << 6; + QTest::newRow("ip6_06") << QString("1::") << true << QString("1::") << 6; + QTest::newRow("ip6_07") << QString("::") << true << QString("::") << 6; + QTest::newRow("ip6_08") << QString("0:0:0:0:0:0:13.1.68.3") << true << QString("::D01:4403") << 6; + QTest::newRow("ip6_09") << QString("::13.1.68.3") << true << QString("::D01:4403") << 6; + QTest::newRow("ip6_10") << QString("0:0:0:0:0:FFFF:129.144.52.38") << true << QString("::FFFF:8190:3426") << 6; + QTest::newRow("ip6_11") << QString("::FFFF:129.144.52.38") << true << QString("::FFFF:8190:3426") << 6; + QTest::newRow("ip6_12") << QString("1::FFFF:129.144.52.38") << true << QString("1::FFFF:8190:3426") << 6; + QTest::newRow("ip6_13") << QString("A:B::D:E") << true << QString("A:B::D:E") << 6; + QTest::newRow("ip6_14") << QString("1080:0:1:0:8:800:200C:417A") << true << QString("1080:0:1:0:8:800:200C:417A") << 6; + QTest::newRow("ip6_15") << QString("1080:0:1:0:8:800:200C:0") << true << QString("1080:0:1:0:8:800:200C:0") << 6; + QTest::newRow("ip6_16") << QString("1080:0:1:0:8:800:0:0") << true << QString("1080:0:1:0:8:800::") << 6; + QTest::newRow("ip6_17") << QString("1080:0:0:0:8:800:0:0") << true << QString("1080::8:800:0:0") << 6; + QTest::newRow("ip6_18") << QString("0:1:1:1:8:800:0:0") << true << QString("0:1:1:1:8:800::") << 6; + QTest::newRow("ip6_19") << QString("0:1:1:1:8:800:0:1") << true << QString("0:1:1:1:8:800:0:1") << 6; + + QTest::newRow("error_00") << QString("foobarcom") << false << QString() << 0; + QTest::newRow("error_01") << QString("foo.bar.com") << false << QString() << 0; + QTest::newRow("error_02") << QString("") << false << QString() << 0; + QTest::newRow("error_03") << QString() << false << QString() << 0; + QTest::newRow("error_04") << QString(" \t\r") << false << QString() << 0; + + QTest::newRow("error_ip4_00") << QString("256.9.9.9") << false << QString() << 0; + QTest::newRow("error_ip4_01") << QString("-1.9.9.9") << false << QString() << 0; + QTest::newRow("error_ip4_02") << QString("123.0.0") << false << QString() << 0; + QTest::newRow("error_ip4_03") << QString("123.0.0.0.0") << false << QString() << 0; + QTest::newRow("error_ip4_04") << QString("255.2 3.2.1") << false << QString() << 0; + + QTest::newRow("error_ip6_00") << QString(":") << false << QString() << 0; + QTest::newRow("error_ip6_01") << QString(":::") << false << QString() << 0; + QTest::newRow("error_ip6_02") << QString("::AAAA:") << false << QString() << 0; + QTest::newRow("error_ip6_03") << QString(":AAAA::") << false << QString() << 0; + QTest::newRow("error_ip6_04") << QString("FFFF:::129.144.52.38") << false << QString() << 0; + QTest::newRow("error_ip6_05") << QString("FEDC:BA98:7654:3210:FEDC:BA98:7654:3210:1234") << false << QString() << 0; + QTest::newRow("error_ip6_06") << QString("129.144.52.38::") << false << QString() << 0; + QTest::newRow("error_ip6_07") << QString("::129.144.52.38:129.144.52.38") << false << QString() << 0; + QTest::newRow("error_ip6_08") << QString(":::129.144.52.38") << false << QString() << 0; + QTest::newRow("error_ip6_09") << QString("1FEDC:BA98:7654:3210:FEDC:BA98:7654:3210") << false << QString() << 0; + QTest::newRow("error_ip6_10") << QString("::FFFFFFFF") << false << QString() << 0; + QTest::newRow("error_ip6_11") << QString("::EFGH") << false << QString() << 0; + QTest::newRow("error_ip6_12") << QString("ABCD:ABCD:ABCD") << false << QString() << 0; + QTest::newRow("error_ip6_13") << QString("::ABCD:ABCD::") << false << QString() << 0; + QTest::newRow("error_ip6_14") << QString("1::2::3") << false << QString() << 0; + QTest::newRow("error_ip6_15") << QString("1:2:::") << false << QString() << 0; + QTest::newRow("error_ip6_16") << QString(":::1:2") << false << QString() << 0; + QTest::newRow("error_ip6_17") << QString("1:::2") << false << QString() << 0; + QTest::newRow("error_ip6_18") << QString("FEDC::7654:3210:FEDC:BA98::3210") << false << QString() << 0; + QTest::newRow("error_ip6_19") << QString("ABCD:ABCD:ABCD:1.2.3.4") << false << QString() << 0; + QTest::newRow("error_ip6_20") << QString("ABCD::ABCD::ABCD:1.2.3.4") << false << QString() << 0; } diff --git a/tests/auto/other/exceptionsafety_objects/oomsimulator.h b/tests/auto/other/exceptionsafety_objects/oomsimulator.h index 15500f590b..15b13a48a7 100644 --- a/tests/auto/other/exceptionsafety_objects/oomsimulator.h +++ b/tests/auto/other/exceptionsafety_objects/oomsimulator.h @@ -173,17 +173,17 @@ static int qCrtAllocHook(int allocType, void * /*userData*/, size_t /*size*/, const unsigned char * /*filename*/, int /*lineNumber*/) { if (blockType == _CRT_BLOCK) - return TRUE; // ignore allocations from the C library + return true; // ignore allocations from the C library switch (allocType) { case _HOOK_ALLOC: case _HOOK_REALLOC: ++mallocCount; if (mallocFailActive && --mallocFailIndex < 0) - return FALSE; // simulate OOM + return false; // simulate OOM } - return TRUE; + return true; } static struct QCrtDebugRegistrator diff --git a/tests/auto/other/qaccessibility/tst_qaccessibility.cpp b/tests/auto/other/qaccessibility/tst_qaccessibility.cpp index 9b14fb9e22..dd81fba5b8 100644 --- a/tests/auto/other/qaccessibility/tst_qaccessibility.cpp +++ b/tests/auto/other/qaccessibility/tst_qaccessibility.cpp @@ -1060,7 +1060,7 @@ void tst_QAccessibility::buttonTest() // tristate checkbox QCheckBox tristate("Tristate!", &window); - tristate.setTristate(TRUE); + tristate.setTristate(true); // radiobutton QRadioButton radio("Radio me!", &window); diff --git a/tests/auto/other/qfocusevent/tst_qfocusevent.cpp b/tests/auto/other/qfocusevent/tst_qfocusevent.cpp index a0803b029c..cf7aada811 100644 --- a/tests/auto/other/qfocusevent/tst_qfocusevent.cpp +++ b/tests/auto/other/qfocusevent/tst_qfocusevent.cpp @@ -73,14 +73,14 @@ protected: QLineEdit::focusInEvent( e ); focusInEventReason = e->reason(); focusInEventGotFocus = e->gotFocus(); - focusInEventRecieved = TRUE; + focusInEventRecieved = true; } void focusOutEvent( QFocusEvent* e ) { QLineEdit::focusOutEvent( e ); focusOutEventReason = e->reason(); focusOutEventLostFocus = !e->gotFocus(); - focusOutEventRecieved = TRUE; + focusOutEventRecieved = true; } }; @@ -173,17 +173,17 @@ void tst_QFocusEvent::initWidget() // The first lineedit should have focus QVERIFY( childFocusWidgetOne->hasFocus() ); - childFocusWidgetOne->focusInEventRecieved = FALSE; - childFocusWidgetOne->focusInEventGotFocus = FALSE; + childFocusWidgetOne->focusInEventRecieved = false; + childFocusWidgetOne->focusInEventGotFocus = false; childFocusWidgetOne->focusInEventReason = -1; - childFocusWidgetOne->focusOutEventRecieved = FALSE; - childFocusWidgetOne->focusOutEventLostFocus = FALSE; + childFocusWidgetOne->focusOutEventRecieved = false; + childFocusWidgetOne->focusOutEventLostFocus = false; childFocusWidgetOne->focusOutEventReason = -1; - childFocusWidgetTwo->focusInEventRecieved = FALSE; - childFocusWidgetTwo->focusInEventGotFocus = FALSE; + childFocusWidgetTwo->focusInEventRecieved = false; + childFocusWidgetTwo->focusInEventGotFocus = false; childFocusWidgetTwo->focusInEventReason = -1; - childFocusWidgetTwo->focusOutEventRecieved = FALSE; - childFocusWidgetTwo->focusOutEventLostFocus = FALSE; + childFocusWidgetTwo->focusOutEventRecieved = false; + childFocusWidgetTwo->focusOutEventLostFocus = false; childFocusWidgetTwo->focusOutEventReason = -1; } diff --git a/tests/auto/widgets/dialogs/qdialog/tst_qdialog.cpp b/tests/auto/widgets/dialogs/qdialog/tst_qdialog.cpp index 0ebe27f053..ea28234e0c 100644 --- a/tests/auto/widgets/dialogs/qdialog/tst_qdialog.cpp +++ b/tests/auto/widgets/dialogs/qdialog/tst_qdialog.cpp @@ -170,10 +170,10 @@ void tst_QDialog::showExtension_data() QTest::addColumn("result"); //next we fill it with data - QTest::newRow( "data0" ) << QSize(100,100) << QSize(50,50) << (bool)FALSE << QSize(100,150); - QTest::newRow( "data1" ) << QSize(100,100) << QSize(120,50) << (bool)FALSE << QSize(120,150); - QTest::newRow( "data2" ) << QSize(100,100) << QSize(50,50) << (bool)TRUE << QSize(150,100); - QTest::newRow( "data3" ) << QSize(100,100) << QSize(50,120) << (bool)TRUE << QSize(150,120); + QTest::newRow( "data0" ) << QSize(100,100) << QSize(50,50) << false << QSize(100,150); + QTest::newRow( "data1" ) << QSize(100,100) << QSize(120,50) << false << QSize(120,150); + QTest::newRow( "data2" ) << QSize(100,100) << QSize(50,50) << true << QSize(150,100); + QTest::newRow( "data3" ) << QSize(100,100) << QSize(50,120) << true << QSize(150,120); } void tst_QDialog::showExtension() @@ -193,7 +193,7 @@ void tst_QDialog::showExtension() QPoint oldPosition = testWidget->pos(); // show - ((DummyDialog*)testWidget)->showExtension( TRUE ); + ((DummyDialog*)testWidget)->showExtension( true ); // while ( testWidget->size() == dlgSize ) // qApp->processEvents(); @@ -202,7 +202,7 @@ void tst_QDialog::showExtension() QCOMPARE(testWidget->pos(), oldPosition); // hide extension. back to old size ? - ((DummyDialog*)testWidget)->showExtension( FALSE ); + ((DummyDialog*)testWidget)->showExtension( false ); QCOMPARE( testWidget->size(), dlgSize ); testWidget->setExtension( 0 ); @@ -214,14 +214,14 @@ void tst_QDialog::defaultButtons() QPushButton *push = new QPushButton("Button 1", testWidget); QPushButton *pushTwo = new QPushButton("Button 2", testWidget); QPushButton *pushThree = new QPushButton("Button 3", testWidget); - pushThree->setAutoDefault(FALSE); + pushThree->setAutoDefault(false); //we need to show the buttons. Otherwise they won't get the focus push->show(); pushTwo->show(); pushThree->show(); - push->setDefault(TRUE); + push->setDefault(true); QVERIFY(push->isDefault()); pushTwo->setFocus(); @@ -231,7 +231,7 @@ void tst_QDialog::defaultButtons() lineEdit->setFocus(); QVERIFY(push->isDefault()); - pushTwo->setDefault(TRUE); + pushTwo->setDefault(true); QVERIFY(pushTwo->isDefault()); pushTwo->setFocus(); diff --git a/tests/auto/widgets/dialogs/qfontdialog/tst_qfontdialog.cpp b/tests/auto/widgets/dialogs/qfontdialog/tst_qfontdialog.cpp index 855cc14095..f3efbc181f 100644 --- a/tests/auto/widgets/dialogs/qfontdialog/tst_qfontdialog.cpp +++ b/tests/auto/widgets/dialogs/qfontdialog/tst_qfontdialog.cpp @@ -119,10 +119,10 @@ void tst_QFontDialog::postKeyReturn() { void tst_QFontDialog::defaultOkButton() { - bool ok = FALSE; + bool ok = false; QTimer::singleShot(2000, this, SLOT(postKeyReturn())); QFontDialog::getFont(&ok); - QVERIFY(ok == TRUE); + QVERIFY(ok); } @@ -132,7 +132,7 @@ void tst_QFontDialog::setFont() while the font dialog was open. Task #27662 */ - bool ok = FALSE; + bool ok = false; #if defined Q_OS_HPUX QString fontName = "Courier"; int fontSize = 25; diff --git a/tests/auto/widgets/kernel/qwidget/tst_qwidget.cpp b/tests/auto/widgets/kernel/qwidget/tst_qwidget.cpp index bca6c2b9ea..a3e48fe53a 100644 --- a/tests/auto/widgets/kernel/qwidget/tst_qwidget.cpp +++ b/tests/auto/widgets/kernel/qwidget/tst_qwidget.cpp @@ -726,7 +726,7 @@ void BezierViewer::paintEvent( QPaintEvent* ) /* Write number of vertices */ painter.setPen( Qt::red ); - painter.setFont( QFont("Helvetica", 14, QFont::DemiBold, TRUE ) ); + painter.setFont( QFont("Helvetica", 14, QFont::DemiBold, true ) ); QString caption; caption.setNum( bezier.size() ); caption += QString::fromLatin1( " vertices" ); @@ -759,24 +759,24 @@ void tst_QWidget::fontPropagation() childWidget->show(); QCOMPARE( font, childWidget->font() ); - font.setBold( TRUE ); + font.setBold( true ); testWidget->setFont( font ); QCOMPARE( font, testWidget->font() ); QCOMPARE( font, childWidget->font() ); QFont newFont = font; - newFont.setItalic( TRUE ); + newFont.setItalic( true ); childWidget->setFont( newFont ); QWidget* grandChildWidget = new QWidget( childWidget ); QCOMPARE( font, testWidget->font() ); QCOMPARE( newFont, grandChildWidget->font() ); - font.setUnderline( TRUE ); + font.setUnderline( true ); testWidget->setFont( font ); // the child and grand child should now have merged bold and // underline - newFont.setUnderline( TRUE ); + newFont.setUnderline( true ); QCOMPARE( newFont, childWidget->font() ); QCOMPARE( newFont, grandChildWidget->font() ); @@ -1074,32 +1074,32 @@ void tst_QWidget::enabledPropagation() QVERIFY( testWidget->isEnabled() ); QVERIFY( childWidget->isEnabled() ); - testWidget->setEnabled( FALSE ); + testWidget->setEnabled( false ); QVERIFY( !testWidget->isEnabled() ); QVERIFY( !childWidget->isEnabled() ); - testWidget->setDisabled( FALSE ); + testWidget->setDisabled( false ); QVERIFY( testWidget->isEnabled() ); QVERIFY( childWidget->isEnabled() ); QWidget* grandChildWidget = new QWidget( childWidget ); QVERIFY( grandChildWidget->isEnabled() ); - testWidget->setDisabled( TRUE ); + testWidget->setDisabled( true ); QVERIFY( !testWidget->isEnabled() ); QVERIFY( !childWidget->isEnabled() ); QVERIFY( !grandChildWidget->isEnabled() ); - grandChildWidget->setEnabled( FALSE ); - testWidget->setEnabled( TRUE ); + grandChildWidget->setEnabled( false ); + testWidget->setEnabled( true ); QVERIFY( testWidget->isEnabled() ); QVERIFY( childWidget->isEnabled() ); QVERIFY( !grandChildWidget->isEnabled() ); - grandChildWidget->setEnabled( TRUE ); - testWidget->setEnabled( FALSE ); - childWidget->setDisabled( TRUE ); - testWidget->setEnabled( TRUE ); + grandChildWidget->setEnabled( true ); + testWidget->setEnabled( false ); + childWidget->setDisabled( true ); + testWidget->setEnabled( true ); QVERIFY( testWidget->isEnabled() ); QVERIFY( !childWidget->isEnabled() ); QVERIFY( !grandChildWidget->isEnabled() ); @@ -1162,7 +1162,7 @@ void tst_QWidget::isEnabledTo() QVERIFY( childWidget->isEnabledTo( testWidget ) ); QVERIFY( grandChildWidget->isEnabledTo( testWidget ) ); - childWidget->setEnabled( FALSE ); + childWidget->setEnabled( false ); QVERIFY( !childWidget->isEnabledTo( testWidget ) ); QVERIFY( grandChildWidget->isEnabledTo( childWidget ) ); QVERIFY( !grandChildWidget->isEnabledTo( testWidget ) ); @@ -1245,7 +1245,7 @@ void tst_QWidget::visible_setWindowOpacity() QVERIFY( !testWidget->isVisible() ); testWidget->setWindowOpacity(0.5); #ifdef Q_OS_WIN - QVERIFY(::IsWindowVisible(winHandleOf(testWidget)) == FALSE); + QVERIFY(!::IsWindowVisible(winHandleOf(testWidget))); #endif testWidget->setWindowOpacity(1.0); } @@ -1638,12 +1638,12 @@ public: void tab() { - focusNextPrevChild(TRUE); + focusNextPrevChild(true); } void backTab() { - focusNextPrevChild(FALSE); + focusNextPrevChild(false); } }; diff --git a/tests/auto/widgets/widgets/qabstractbutton/tst_qabstractbutton.cpp b/tests/auto/widgets/widgets/qabstractbutton/tst_qabstractbutton.cpp index 5d4c346adb..4d689bbed0 100644 --- a/tests/auto/widgets/widgets/qabstractbutton/tst_qabstractbutton.cpp +++ b/tests/auto/widgets/widgets/qabstractbutton/tst_qabstractbutton.cpp @@ -182,9 +182,9 @@ void tst_QAbstractButton::cleanupTestCase() void tst_QAbstractButton::init() { testWidget->setText("Test"); - testWidget->setEnabled( TRUE ); - testWidget->setDown( FALSE ); - testWidget->setAutoRepeat( FALSE ); + testWidget->setEnabled( true ); + testWidget->setDown( false ); + testWidget->setAutoRepeat( false ); QKeySequence seq; testWidget->setShortcut( seq ); @@ -257,16 +257,16 @@ void tst_QAbstractButton::setAutoRepeat() break; case 1: // check if we can toggle the mode - testWidget->setAutoRepeat( TRUE ); + testWidget->setAutoRepeat( true ); QVERIFY( testWidget->autoRepeat() ); - testWidget->setAutoRepeat( FALSE ); + testWidget->setAutoRepeat( false ); QVERIFY( !testWidget->autoRepeat() ); break; case 2: // check that the button is down if we press space and not in autorepeat - testWidget->setDown( FALSE ); - testWidget->setAutoRepeat( FALSE ); + testWidget->setDown( false ); + testWidget->setAutoRepeat( false ); QTest::keyPress( testWidget, Qt::Key_Space ); QTest::qWait( REPEAT_DELAY ); @@ -295,9 +295,9 @@ void tst_QAbstractButton::setAutoRepeat() QVERIFY(click_count > 1); break; case 4: - // check that pressing ENTER has no effect when autorepeat is FALSE - testWidget->setDown( FALSE ); - testWidget->setAutoRepeat( FALSE ); + // check that pressing ENTER has no effect when autorepeat is false + testWidget->setDown( false ); + testWidget->setAutoRepeat( false ); QTest::keyPress( testWidget, Qt::Key_Enter ); QTest::qWait( REPEAT_DELAY ); @@ -312,9 +312,9 @@ void tst_QAbstractButton::setAutoRepeat() QVERIFY( click_count == 0 ); break; case 5: - // check that pressing ENTER has no effect when autorepeat is TRUE - testWidget->setDown( FALSE ); - testWidget->setAutoRepeat( TRUE ); + // check that pressing ENTER has no effect when autorepeat is true + testWidget->setDown( false ); + testWidget->setAutoRepeat( true ); QTest::keyPress( testWidget, Qt::Key_Enter ); QTest::qWait( REPEAT_DELAY ); @@ -427,11 +427,11 @@ void tst_QAbstractButton::setIcon() void tst_QAbstractButton::setEnabled() { - testWidget->setEnabled( FALSE ); + testWidget->setEnabled( false ); QVERIFY( !testWidget->isEnabled() ); // QTEST( testWidget, "disabled" ); - testWidget->setEnabled( TRUE ); + testWidget->setEnabled( true ); QVERIFY( testWidget->isEnabled() ); // QTEST( testWidget, "enabled" ); } @@ -443,14 +443,14 @@ void tst_QAbstractButton::isCheckable() void tst_QAbstractButton::setDown() { - testWidget->setDown( FALSE ); + testWidget->setDown( false ); QVERIFY( !testWidget->isDown() ); - testWidget->setDown( TRUE ); + testWidget->setDown( true ); QTest::qWait(300); QVERIFY( testWidget->isDown() ); - testWidget->setDown( TRUE ); + testWidget->setDown( true ); // add some debugging stuff QWidget *grab = QWidget::keyboardGrabber(); @@ -466,13 +466,13 @@ void tst_QAbstractButton::setDown() void tst_QAbstractButton::isChecked() { - testWidget->setDown( FALSE ); + testWidget->setDown( false ); QVERIFY( !testWidget->isChecked() ); - testWidget->setDown( TRUE ); + testWidget->setDown( true ); QVERIFY( !testWidget->isChecked() ); - testWidget->setDown( FALSE ); + testWidget->setDown( false ); testWidget->toggle(); QVERIFY( testWidget->isChecked() == testWidget->isCheckable() ); } diff --git a/tests/auto/widgets/widgets/qcheckbox/tst_qcheckbox.cpp b/tests/auto/widgets/widgets/qcheckbox/tst_qcheckbox.cpp index 404f3f30b9..ec52abed57 100644 --- a/tests/auto/widgets/widgets/qcheckbox/tst_qcheckbox.cpp +++ b/tests/auto/widgets/widgets/qcheckbox/tst_qcheckbox.cpp @@ -121,9 +121,9 @@ void tst_QCheckBox::cleanupTestCase() void tst_QCheckBox::init() { - testWidget->setTristate( FALSE ); - testWidget->setChecked( FALSE ); - testWidget->setAutoRepeat( FALSE ); + testWidget->setTristate( false ); + testWidget->setChecked( false ); + testWidget->setAutoRepeat( false ); } void tst_QCheckBox::cleanup() @@ -158,17 +158,17 @@ void tst_QCheckBox::onToggled( bool /*on*/ ) void tst_QCheckBox::setChecked() { - testWidget->setChecked( TRUE ); + testWidget->setChecked( true ); QVERIFY( testWidget->isChecked() ); QVERIFY( testWidget->isChecked() ); QVERIFY( testWidget->checkState() == Qt::Checked ); - testWidget->setChecked( FALSE ); + testWidget->setChecked( false ); QVERIFY( !testWidget->isChecked() ); QVERIFY( !testWidget->isChecked() ); QVERIFY( testWidget->checkState() == Qt::Unchecked ); - testWidget->setChecked( FALSE ); + testWidget->setChecked( false ); QTest::keyClick( testWidget, ' ' ); QVERIFY( testWidget->isChecked() ); @@ -178,34 +178,34 @@ void tst_QCheckBox::setChecked() void tst_QCheckBox::setTriState() { - testWidget->setTristate( TRUE ); + testWidget->setTristate( true ); QVERIFY( testWidget->isTristate() ); QVERIFY( testWidget->checkState() == Qt::Unchecked ); testWidget->setCheckState(Qt::PartiallyChecked); QVERIFY( testWidget->checkState() == Qt::PartiallyChecked ); - testWidget->setChecked( TRUE ); + testWidget->setChecked( true ); QVERIFY( testWidget->isChecked() ); QVERIFY( testWidget->checkState() == Qt::Checked ); - testWidget->setChecked( FALSE ); + testWidget->setChecked( false ); QVERIFY( !testWidget->isChecked() ); QVERIFY( testWidget->checkState() == Qt::Unchecked ); testWidget->setCheckState(Qt::PartiallyChecked); QVERIFY( testWidget->checkState() == Qt::PartiallyChecked ); - testWidget->setTristate( FALSE ); + testWidget->setTristate( false ); QVERIFY( !testWidget->isTristate() ); testWidget->setCheckState(Qt::PartiallyChecked); QVERIFY( testWidget->checkState() == Qt::PartiallyChecked ); - testWidget->setChecked( TRUE ); + testWidget->setChecked( true ); QVERIFY( testWidget->checkState() == Qt::Checked ); - testWidget->setChecked( FALSE ); + testWidget->setChecked( false ); QVERIFY( testWidget->checkState() == Qt::Unchecked ); } @@ -237,10 +237,10 @@ void tst_QCheckBox::setText() void tst_QCheckBox::setDown() { - testWidget->setDown( TRUE ); + testWidget->setDown( true ); QVERIFY( testWidget->isDown() ); - testWidget->setDown( FALSE ); + testWidget->setDown( false ); QVERIFY( !testWidget->isDown() ); } @@ -272,7 +272,7 @@ void tst_QCheckBox::pressed() connect(testWidget, SIGNAL(released()), this, SLOT(onReleased())); press_count = 0; release_count = 0; - testWidget->setDown(FALSE); + testWidget->setDown(false); QVERIFY( !testWidget->isChecked() ); QTest::keyPress( testWidget, Qt::Key_Space ); @@ -315,12 +315,12 @@ void tst_QCheckBox::stateChanged() QSignalSpy stateChangedSpy(testWidget, SIGNAL(stateChanged(int))); connect(testWidget, SIGNAL(stateChanged(int)), this, SLOT(onStateChanged(int))); cur_state = -1; - testWidget->setChecked( TRUE ); + testWidget->setChecked( true ); qApp->processEvents(); QCOMPARE( cur_state, (int)2 ); cur_state = -1; - testWidget->setChecked( FALSE ); + testWidget->setChecked( false ); qApp->processEvents(); QCOMPARE( cur_state, (int)0 ); diff --git a/tests/auto/widgets/widgets/qcommandlinkbutton/tst_qcommandlinkbutton.cpp b/tests/auto/widgets/widgets/qcommandlinkbutton/tst_qcommandlinkbutton.cpp index 7d550bcf9c..2c583cf6d8 100644 --- a/tests/auto/widgets/widgets/qcommandlinkbutton/tst_qcommandlinkbutton.cpp +++ b/tests/auto/widgets/widgets/qcommandlinkbutton/tst_qcommandlinkbutton.cpp @@ -154,11 +154,11 @@ void tst_QCommandLinkButton::cleanupTestCase() void tst_QCommandLinkButton::init() { - testWidget->setAutoRepeat( FALSE ); - testWidget->setDown( FALSE ); + testWidget->setAutoRepeat( false ); + testWidget->setDown( false ); testWidget->setText("Test"); testWidget->setDescription("Description text."); - testWidget->setEnabled( TRUE ); + testWidget->setEnabled( true ); QKeySequence seq; testWidget->setShortcut( seq ); @@ -215,17 +215,17 @@ void tst_QCommandLinkButton::setAutoRepeat() QVERIFY( !tmp.autoRepeat() ); // check if we can toggle the mode - testWidget->setAutoRepeat( TRUE ); + testWidget->setAutoRepeat( true ); QVERIFY( testWidget->autoRepeat() ); - testWidget->setAutoRepeat( FALSE ); + testWidget->setAutoRepeat( false ); QVERIFY( !testWidget->autoRepeat() ); resetCounters(); // check that the button is down if we press space and not in autorepeat - testWidget->setDown( FALSE ); - testWidget->setAutoRepeat( FALSE ); + testWidget->setDown( false ); + testWidget->setAutoRepeat( false ); QTest::keyPress( testWidget, Qt::Key_Space ); QTest::qWait( 300 ); @@ -242,8 +242,8 @@ void tst_QCommandLinkButton::setAutoRepeat() // check that the button is down if we press space while in autorepeat // we can't actually confirm how many times it is fired, more than 1 is enough. - testWidget->setDown( FALSE ); - testWidget->setAutoRepeat( TRUE ); + testWidget->setDown( false ); + testWidget->setAutoRepeat( true ); QTest::keyPress( testWidget, Qt::Key_Space ); QTest::qWait(900); QVERIFY( testWidget->isDown() ); @@ -257,8 +257,8 @@ void tst_QCommandLinkButton::setAutoRepeat() // check that pressing ENTER has no effect resetCounters(); - testWidget->setDown( FALSE ); - testWidget->setAutoRepeat( FALSE ); + testWidget->setDown( false ); + testWidget->setAutoRepeat( false ); QTest::keyPress( testWidget, Qt::Key_Enter ); QTest::qWait( 300 ); @@ -272,8 +272,8 @@ void tst_QCommandLinkButton::setAutoRepeat() // check that pressing ENTER has no effect resetCounters(); - testWidget->setDown( FALSE ); - testWidget->setAutoRepeat( TRUE ); + testWidget->setDown( false ); + testWidget->setAutoRepeat( true ); QTest::keyClick( testWidget, Qt::Key_Enter ); QTest::qWait( 300 ); QVERIFY( !testWidget->isDown() ); @@ -318,26 +318,26 @@ void tst_QCommandLinkButton::isCheckable() void tst_QCommandLinkButton::setDown() { - testWidget->setDown( FALSE ); + testWidget->setDown( false ); QVERIFY( !testWidget->isDown() ); - testWidget->setDown( TRUE ); + testWidget->setDown( true ); QVERIFY( testWidget->isDown() ); - testWidget->setDown( TRUE ); + testWidget->setDown( true ); QTest::keyClick( testWidget, Qt::Key_Escape ); QVERIFY( !testWidget->isDown() ); } void tst_QCommandLinkButton::isChecked() { - testWidget->setDown( FALSE ); + testWidget->setDown( false ); QVERIFY( !testWidget->isChecked() ); - testWidget->setDown( TRUE ); + testWidget->setDown( true ); QVERIFY( !testWidget->isChecked() ); - testWidget->setDown( FALSE ); + testWidget->setDown( false ); testWidget->toggle(); QVERIFY( testWidget->isChecked() == testWidget->isCheckable() ); } @@ -346,7 +346,7 @@ void tst_QCommandLinkButton::toggle() { // the pushbutton shouldn't toggle the button. testWidget->toggle(); - QVERIFY( testWidget->isChecked() == FALSE ); + QVERIFY(!testWidget->isChecked()); } void tst_QCommandLinkButton::toggled() @@ -432,7 +432,7 @@ void tst_QCommandLinkButton::clicked() press_count = 0; release_count = 0; - testWidget->setDown(FALSE); + testWidget->setDown(false); for (uint i=0; i<10; i++) QTest::mouseClick( testWidget, Qt::LeftButton ); QCOMPARE( press_count, (uint)10 ); diff --git a/tests/auto/widgets/widgets/qlabel/tst_qlabel.cpp b/tests/auto/widgets/widgets/qlabel/tst_qlabel.cpp index 18da7fdf5f..b70a8a67e1 100644 --- a/tests/auto/widgets/widgets/qlabel/tst_qlabel.cpp +++ b/tests/auto/widgets/widgets/qlabel/tst_qlabel.cpp @@ -181,7 +181,7 @@ void tst_QLabel::init() testWidget->setBuddy( 0 ); testWidget->setIndent( 0 ); testWidget->setAlignment( Qt::AlignLeft | Qt::AlignVCenter ); - testWidget->setScaledContents( FALSE ); + testWidget->setScaledContents( false ); } void tst_QLabel::cleanup() diff --git a/tests/auto/widgets/widgets/qmenubar/tst_qmenubar.cpp b/tests/auto/widgets/widgets/qmenubar/tst_qmenubar.cpp index ad7071f651..5dd783537a 100644 --- a/tests/auto/widgets/widgets/qmenubar/tst_qmenubar.cpp +++ b/tests/auto/widgets/widgets/qmenubar/tst_qmenubar.cpp @@ -722,7 +722,7 @@ void tst_QMenuBar::check_homeKey() { // I'm temporarily shutting up this testcase. // Seems like the behaviour i'm expecting isn't ok. - QVERIFY( TRUE ); + QVERIFY( true ); return; QEXPECT_FAIL( "0", "Popupmenu should respond to a Home key", Abort ); @@ -760,7 +760,7 @@ void tst_QMenuBar::check_endKey() { // I'm temporarily silenting this testcase. // Seems like the behaviour i'm expecting isn't ok. - QVERIFY( TRUE ); + QVERIFY( true ); return; QEXPECT_FAIL( "0", "Popupmenu should respond to an End key", Abort ); diff --git a/tests/auto/widgets/widgets/qpushbutton/tst_qpushbutton.cpp b/tests/auto/widgets/widgets/qpushbutton/tst_qpushbutton.cpp index 3a0a320831..496b3774a1 100644 --- a/tests/auto/widgets/widgets/qpushbutton/tst_qpushbutton.cpp +++ b/tests/auto/widgets/widgets/qpushbutton/tst_qpushbutton.cpp @@ -152,10 +152,10 @@ void tst_QPushButton::cleanupTestCase() void tst_QPushButton::init() { - testWidget->setAutoRepeat( FALSE ); - testWidget->setDown( FALSE ); + testWidget->setAutoRepeat( false ); + testWidget->setDown( false ); testWidget->setText("Test"); - testWidget->setEnabled( TRUE ); + testWidget->setEnabled( true ); QKeySequence seq; testWidget->setShortcut( seq ); @@ -206,17 +206,17 @@ void tst_QPushButton::autoRepeat() QVERIFY( !tmp.autoRepeat() ); // check if we can toggle the mode - testWidget->setAutoRepeat( TRUE ); + testWidget->setAutoRepeat( true ); QVERIFY( testWidget->autoRepeat() ); - testWidget->setAutoRepeat( FALSE ); + testWidget->setAutoRepeat( false ); QVERIFY( !testWidget->autoRepeat() ); resetCounters(); // check that the button is down if we press space and not in autorepeat - testWidget->setDown( FALSE ); - testWidget->setAutoRepeat( FALSE ); + testWidget->setDown( false ); + testWidget->setAutoRepeat( false ); QTest::keyPress( testWidget, Qt::Key_Space ); QTest::qWait( 300 ); @@ -233,8 +233,8 @@ void tst_QPushButton::autoRepeat() // check that the button is down if we press space while in autorepeat // we can't actually confirm how many times it is fired, more than 1 is enough. - testWidget->setDown( FALSE ); - testWidget->setAutoRepeat( TRUE ); + testWidget->setDown( false ); + testWidget->setAutoRepeat( true ); QTest::keyPress( testWidget, Qt::Key_Space ); QTest::qWait(900); QVERIFY( testWidget->isDown() ); @@ -248,8 +248,8 @@ void tst_QPushButton::autoRepeat() // check that pressing ENTER has no effect resetCounters(); - testWidget->setDown( FALSE ); - testWidget->setAutoRepeat( FALSE ); + testWidget->setDown( false ); + testWidget->setAutoRepeat( false ); QTest::keyPress( testWidget, Qt::Key_Enter ); QTest::qWait( 300 ); @@ -263,8 +263,8 @@ void tst_QPushButton::autoRepeat() // check that pressing ENTER has no effect resetCounters(); - testWidget->setDown( FALSE ); - testWidget->setAutoRepeat( TRUE ); + testWidget->setDown( false ); + testWidget->setAutoRepeat( true ); QTest::keyClick( testWidget, Qt::Key_Enter ); QTest::qWait( 300 ); QVERIFY( !testWidget->isDown() ); @@ -307,26 +307,26 @@ void tst_QPushButton::isCheckable() void tst_QPushButton::setDown() { - testWidget->setDown( FALSE ); + testWidget->setDown( false ); QVERIFY( !testWidget->isDown() ); - testWidget->setDown( TRUE ); + testWidget->setDown( true ); QVERIFY( testWidget->isDown() ); - testWidget->setDown( TRUE ); + testWidget->setDown( true ); QTest::keyClick( testWidget, Qt::Key_Escape ); QVERIFY( !testWidget->isDown() ); } void tst_QPushButton::isChecked() { - testWidget->setDown( FALSE ); + testWidget->setDown( false ); QVERIFY( !testWidget->isChecked() ); - testWidget->setDown( TRUE ); + testWidget->setDown( true ); QVERIFY( !testWidget->isChecked() ); - testWidget->setDown( FALSE ); + testWidget->setDown( false ); testWidget->toggle(); QVERIFY( testWidget->isChecked() == testWidget->isCheckable() ); } @@ -335,7 +335,7 @@ void tst_QPushButton::toggle() { // the pushbutton shouldn't toggle the button. testWidget->toggle(); - QVERIFY( testWidget->isChecked() == FALSE ); + QVERIFY( testWidget->isChecked() == false ); } void tst_QPushButton::toggled() @@ -421,7 +421,7 @@ void tst_QPushButton::clicked() press_count = 0; release_count = 0; - testWidget->setDown(FALSE); + testWidget->setDown(false); for (uint i=0; i<10; i++) QTest::mouseClick( testWidget, Qt::LeftButton ); QCOMPARE( press_count, (uint)10 ); diff --git a/tests/auto/widgets/widgets/qtoolbox/tst_qtoolbox.cpp b/tests/auto/widgets/widgets/qtoolbox/tst_qtoolbox.cpp index ca3fb34632..6d0af0779d 100644 --- a/tests/auto/widgets/widgets/qtoolbox/tst_qtoolbox.cpp +++ b/tests/auto/widgets/widgets/qtoolbox/tst_qtoolbox.cpp @@ -273,23 +273,23 @@ void tst_QToolBox::change() QCOMPARE( currentIndex, 1 ); QCOMPARE( testWidget->currentIndex(), 1 ); - testWidget->setItemEnabled( testWidget->currentIndex(), FALSE ); + testWidget->setItemEnabled( testWidget->currentIndex(), false ); QCOMPARE( currentIndex, 2 ); QCOMPARE( testWidget->currentIndex(), 2 ); currentIndex = -1; - testWidget->setItemEnabled( testWidget->indexOf(lastItem), FALSE ); + testWidget->setItemEnabled( testWidget->indexOf(lastItem), false ); QCOMPARE( currentIndex, -1 ); QCOMPARE( testWidget->currentIndex(), 2 ); - testWidget->setItemEnabled( testWidget->currentIndex(), FALSE ); + testWidget->setItemEnabled( testWidget->currentIndex(), false ); QCOMPARE( currentIndex, 0 ); currentIndex = -1; - testWidget->setItemEnabled( testWidget->currentIndex(), FALSE ); + testWidget->setItemEnabled( testWidget->currentIndex(), false ); QCOMPARE( currentIndex, -1 ); - testWidget->setItemEnabled( 1, TRUE ); + testWidget->setItemEnabled( 1, true ); } void tst_QToolBox::clear() diff --git a/tests/auto/widgets/widgets/qworkspace/tst_qworkspace.cpp b/tests/auto/widgets/widgets/qworkspace/tst_qworkspace.cpp index 28ffb4280f..133f3cef79 100644 --- a/tests/auto/widgets/widgets/qworkspace/tst_qworkspace.cpp +++ b/tests/auto/widgets/widgets/qworkspace/tst_qworkspace.cpp @@ -303,7 +303,7 @@ void tst_QWorkspace::windowActivatedWithMinimize() void tst_QWorkspace::accelActivated() { - accelPressed = TRUE; + accelPressed = true; } void tst_QWorkspace::showWindows() diff --git a/tests/auto/xml/dom/qdom/tst_qdom.cpp b/tests/auto/xml/dom/qdom/tst_qdom.cpp index 734d7b473b..a206271a13 100644 --- a/tests/auto/xml/dom/qdom/tst_qdom.cpp +++ b/tests/auto/xml/dom/qdom/tst_qdom.cpp @@ -261,11 +261,11 @@ void tst_QDom::setContent() QStringList::Iterator it; for ( it = featuresTrue.begin(); it != featuresTrue.end(); ++it ) { QVERIFY( reader.hasFeature( *it ) ); - reader.setFeature( *it, TRUE ); + reader.setFeature( *it, true ); } for ( it = featuresFalse.begin(); it != featuresFalse.end(); ++it ) { QVERIFY( reader.hasFeature( *it ) ); - reader.setFeature( *it, FALSE ); + reader.setFeature( *it, false ); } QDomDocument domDoc; @@ -386,7 +386,7 @@ void tst_QDom::hasAttributes_data() } /* - This function tests that QDomNode::hasAttributes() returns TRUE if and only + This function tests that QDomNode::hasAttributes() returns true if and only if the node has attributes (i.e. QDomNode::attributes() returns a list with attributes in it). */ @@ -588,13 +588,13 @@ void tst_QDom::cloneNode_data() QTest::addColumn >("pathToNode"); QTest::addColumn("deep"); - QTest::newRow( "noDeep_01" ) << doc01 << nodeB1 << (bool)FALSE; - QTest::newRow( "noDeep_02" ) << doc01 << nodeC1 << (bool)FALSE; - QTest::newRow( "noDeep_03" ) << doc01 << nodeC2 << (bool)FALSE; + QTest::newRow( "noDeep_01" ) << doc01 << nodeB1 << false; + QTest::newRow( "noDeep_02" ) << doc01 << nodeC1 << false; + QTest::newRow( "noDeep_03" ) << doc01 << nodeC2 << false; - QTest::newRow( "deep_01" ) << doc01 << nodeB1 << (bool)TRUE; - QTest::newRow( "deep_02" ) << doc01 << nodeC1 << (bool)TRUE; - QTest::newRow( "deep_03" ) << doc01 << nodeC2 << (bool)TRUE; + QTest::newRow( "deep_01" ) << doc01 << nodeB1 << true; + QTest::newRow( "deep_02" ) << doc01 << nodeC1 << true; + QTest::newRow( "deep_03" ) << doc01 << nodeC2 << true; } void tst_QDom::cloneNode() @@ -732,14 +732,14 @@ void tst_QDom::ownerDocumentTask27424_data() QTest::addColumn("insertLevel2AfterCstr"); QTest::addColumn("insertLevel3AfterCstr"); - QTest::newRow( "000" ) << (bool)FALSE << (bool)FALSE << (bool)FALSE; - QTest::newRow( "001" ) << (bool)FALSE << (bool)FALSE << (bool)TRUE; - QTest::newRow( "010" ) << (bool)FALSE << (bool)TRUE << (bool)FALSE; - QTest::newRow( "011" ) << (bool)FALSE << (bool)TRUE << (bool)TRUE; - QTest::newRow( "100" ) << (bool)TRUE << (bool)FALSE << (bool)FALSE; - QTest::newRow( "101" ) << (bool)TRUE << (bool)FALSE << (bool)TRUE; - QTest::newRow( "110" ) << (bool)TRUE << (bool)TRUE << (bool)FALSE; - QTest::newRow( "111" ) << (bool)TRUE << (bool)TRUE << (bool)TRUE; + QTest::newRow( "000" ) << false << false << false; + QTest::newRow( "001" ) << false << false << true; + QTest::newRow( "010" ) << false << true << false; + QTest::newRow( "011" ) << false << true << true; + QTest::newRow( "100" ) << true << false << false; + QTest::newRow( "101" ) << true << false << true; + QTest::newRow( "110" ) << true << true << false; + QTest::newRow( "111" ) << true << true << true; } void tst_QDom::ownerDocumentTask27424() @@ -858,14 +858,14 @@ void tst_QDom::documentCreationTask27424_data() QTest::addColumn("insertLevel2AfterCstr"); QTest::addColumn("insertLevel3AfterCstr"); - QTest::newRow( "000" ) << (bool)FALSE << (bool)FALSE << (bool)FALSE; - QTest::newRow( "001" ) << (bool)FALSE << (bool)FALSE << (bool)TRUE; - QTest::newRow( "010" ) << (bool)FALSE << (bool)TRUE << (bool)FALSE; - QTest::newRow( "011" ) << (bool)FALSE << (bool)TRUE << (bool)TRUE; - QTest::newRow( "100" ) << (bool)TRUE << (bool)FALSE << (bool)FALSE; - QTest::newRow( "101" ) << (bool)TRUE << (bool)FALSE << (bool)TRUE; - QTest::newRow( "110" ) << (bool)TRUE << (bool)TRUE << (bool)FALSE; - QTest::newRow( "111" ) << (bool)TRUE << (bool)TRUE << (bool)TRUE; + QTest::newRow( "000" ) << false << false << false; + QTest::newRow( "001" ) << false << false << true; + QTest::newRow( "010" ) << false << true << false; + QTest::newRow( "011" ) << false << true << true; + QTest::newRow( "100" ) << true << false << false; + QTest::newRow( "101" ) << true << false << true; + QTest::newRow( "110" ) << true << true << false; + QTest::newRow( "111" ) << true << true << true; } void tst_QDom::documentCreationTask27424() @@ -961,9 +961,9 @@ bool tst_QDom::isDeepEqual(const QDomNode &n1, const QDomNode &n2) } /* - Returns TRUE if \a doc1 and \a doc2 represent the same XML document, i.e. + Returns true if \a doc1 and \a doc2 represent the same XML document, i.e. they have the same informational content. Otherwise, this function returns - FALSE. + false. */ bool tst_QDom::compareDocuments( const QDomDocument &doc1, const QDomDocument &doc2 ) { @@ -971,12 +971,12 @@ bool tst_QDom::compareDocuments( const QDomDocument &doc1, const QDomDocument &d } /* - Returns TRUE if \a node1 and \a node2 represent the same XML node, i.e. + Returns true if \a node1 and \a node2 represent the same XML node, i.e. they have the same informational content. Otherwise, this function returns - FALSE. + false. - If \a deep is TRUE, children of the nodes are also tested. If \a deep is - FALSE, only \a node1 and \a node 2 are compared. + If \a deep is true, children of the nodes are also tested. If \a deep is + false, only \a node1 and \a node 2 are compared. */ bool tst_QDom::compareNodes( const QDomNode &node1, const QDomNode &node2, bool deep ) { @@ -995,7 +995,7 @@ bool tst_QDom::compareNodes( const QDomNode &node1, const QDomNode &node2, bool } if ( node1.isNull() && node2.isNull() ) - return TRUE; + return true; // ### I am not sure if this test is complete bool equal = node1.nodeName() == node2.nodeName(); equal = equal && node1.nodeType() == node2.nodeType(); diff --git a/tests/auto/xml/sax/qxmlsimplereader/parser/parser.cpp b/tests/auto/xml/sax/qxmlsimplereader/parser/parser.cpp index d1f1c3cfda..99a833231e 100644 --- a/tests/auto/xml/sax/qxmlsimplereader/parser/parser.cpp +++ b/tests/auto/xml/sax/qxmlsimplereader/parser/parser.cpp @@ -124,7 +124,7 @@ bool ContentHandler::startDocument() m_result += nestPrefix(); m_result += "startDocument()\n"; ++m_nest; - return TRUE; + return true; } bool ContentHandler::endDocument() @@ -132,7 +132,7 @@ bool ContentHandler::endDocument() --m_nest; m_result += nestPrefix(); m_result += "endDocument()\n"; - return TRUE; + return true; } bool ContentHandler::startElement(const QString &namespaceURI, @@ -146,7 +146,7 @@ bool ContentHandler::startElement(const QString &namespaceURI, + "\", qName=\"" + escapeStr(qName) + "\", atts=[" + formatAttributes(atts) + "])\n"; ++m_nest; - return TRUE; + return true; } QString ContentHandler::escapeStr(const QString &s) @@ -183,14 +183,14 @@ bool ContentHandler::endElement(const QString &namespaceURI, m_result += "endElement(namespaceURI=\"" + escapeStr(namespaceURI) + "\", localName=\"" + escapeStr(localName) + "\", qName=\"" + escapeStr(qName) + "\")\n"; - return TRUE; + return true; } bool ContentHandler::characters(const QString &ch) { m_result += nestPrefix(); m_result += "characters(ch=\"" + escapeStr(ch) + "\")\n"; - return TRUE; + return true; } void ContentHandler::setDocumentLocator(QXmlLocator *locator) @@ -208,7 +208,7 @@ bool ContentHandler::startPrefixMapping (const QString &prefix, const QString & m_result += "startPrefixMapping(prefix=\"" + escapeStr(prefix) + "\", uri=\"" + escapeStr(uri) + "\")\n"; ++m_nest; - return TRUE; + return true; } bool ContentHandler::endPrefixMapping(const QString &prefix) @@ -216,14 +216,14 @@ bool ContentHandler::endPrefixMapping(const QString &prefix) --m_nest; m_result += nestPrefix(); m_result += "endPrefixMapping(prefix=\"" + escapeStr(prefix) + "\")\n"; - return TRUE; + return true; } bool ContentHandler::ignorableWhitespace(const QString & ch) { m_result += nestPrefix(); m_result += "ignorableWhitespace(ch=\"" + escapeStr(ch) + "\")\n"; - return TRUE; + return true; } bool ContentHandler::processingInstruction(const QString &target, const QString &data) @@ -231,14 +231,14 @@ bool ContentHandler::processingInstruction(const QString &target, const QString m_result += nestPrefix(); m_result += "processingInstruction(target=\"" + escapeStr(target) + "\", data=\"" + escapeStr(data) + "\")\n"; - return TRUE; + return true; } bool ContentHandler::skippedEntity (const QString & name) { m_result += nestPrefix(); m_result += "skippedEntity(name=\"" + escapeStr(name) + "\")\n"; - return TRUE; + return true; } bool ContentHandler::warning(const QXmlParseException & exception) @@ -256,7 +256,7 @@ bool ContentHandler::warning(const QXmlParseException & exception) + "\", systemId=\"" + escapeStr(exception.systemId()) + "\", message=\"" + escapeStr(exception.message()) + "\"})\n"; - return TRUE; + return true; } bool ContentHandler::error(const QXmlParseException & exception) @@ -274,7 +274,7 @@ bool ContentHandler::error(const QXmlParseException & exception) + "\", systemId=\"" + escapeStr(exception.systemId()) + "\", message=\"" + escapeStr(exception.message()) + "\"})\n"; - return TRUE; + return true; } bool ContentHandler::fatalError(const QXmlParseException & exception) @@ -292,7 +292,7 @@ bool ContentHandler::fatalError(const QXmlParseException & exception) + "\", systemId=\"" + escapeStr(exception.systemId()) + "\", message=\"" + escapeStr(exception.message()) + "\"})\n"; - return TRUE; + return true; } bool ContentHandler::notationDecl ( const QString & name, @@ -303,7 +303,7 @@ bool ContentHandler::notationDecl ( const QString & name, m_result += "notationDecl(name=\"" + escapeStr(name) + "\", publicId=\"" + escapeStr(publicId) + "\", systemId=\"" + escapeStr(systemId) + "\")\n"; - return TRUE; + return true; } bool ContentHandler::unparsedEntityDecl ( const QString & name, @@ -317,7 +317,7 @@ bool ContentHandler::unparsedEntityDecl ( const QString & name, + "\", systemId=\"" + escapeStr(systemId) + "\", notationName=\"" + escapeStr(notationName) + "\")\n"; - return TRUE; + return true; } bool ContentHandler::resolveEntity(const QString & publicId, @@ -328,7 +328,7 @@ bool ContentHandler::resolveEntity(const QString & publicId, m_result += "resolveEntity(publicId=\"" + escapeStr(publicId) + "\", systemId=\"" + escapeStr(systemId) + "\", ret={})\n"; - return TRUE; + return true; } bool ContentHandler::startDTD ( const QString & name, const QString & publicId, const QString & systemId ) @@ -338,7 +338,7 @@ bool ContentHandler::startDTD ( const QString & name, const QString & publicId, + "\", publicId=\"" + escapeStr(publicId) + "\", systemId=\"" + escapeStr(systemId) + "\")\n"; ++m_nest; - return TRUE; + return true; } bool ContentHandler::endDTD () @@ -346,7 +346,7 @@ bool ContentHandler::endDTD () --m_nest; m_result += nestPrefix(); m_result += "endDTD()\n"; - return TRUE; + return true; } bool ContentHandler::startEntity ( const QString & name ) @@ -354,7 +354,7 @@ bool ContentHandler::startEntity ( const QString & name ) m_result += nestPrefix(); m_result += "startEntity(name=\"" + escapeStr(name) + "\")\n"; ++m_nest; - return TRUE; + return true; } bool ContentHandler::endEntity ( const QString & name ) @@ -362,7 +362,7 @@ bool ContentHandler::endEntity ( const QString & name ) --m_nest; m_result += nestPrefix(); m_result += "endEntity(name=\"" + escapeStr(name) + "\")\n"; - return TRUE; + return true; } bool ContentHandler::startCDATA () @@ -370,7 +370,7 @@ bool ContentHandler::startCDATA () m_result += nestPrefix(); m_result += "startCDATA()\n"; ++m_nest; - return TRUE; + return true; } bool ContentHandler::endCDATA () @@ -378,14 +378,14 @@ bool ContentHandler::endCDATA () --m_nest; m_result += nestPrefix(); m_result += "endCDATA()\n"; - return TRUE; + return true; } bool ContentHandler::comment ( const QString & ch ) { m_result += nestPrefix(); m_result += "comment(ch=\"" + escapeStr(ch) + "\")\n"; - return TRUE; + return true; } bool ContentHandler::attributeDecl ( const QString & eName, @@ -399,7 +399,7 @@ bool ContentHandler::attributeDecl ( const QString & eName, + escapeStr(aName) + "\", type=\"" + escapeStr(type) + "\", valueDefault=\"" + escapeStr(valueDefault) + "\", value=\"" + escapeStr(value) + "\")\n"; - return TRUE; + return true; } bool ContentHandler::internalEntityDecl ( const QString & name, @@ -408,7 +408,7 @@ bool ContentHandler::internalEntityDecl ( const QString & name, m_result += nestPrefix(); m_result += "internatlEntityDecl(name=\"" + escapeStr(name) + "\", value=\"" + escapeStr(value) + "\")\n"; - return TRUE; + return true; } bool ContentHandler::externalEntityDecl ( const QString & name, @@ -419,7 +419,7 @@ bool ContentHandler::externalEntityDecl ( const QString & name, m_result += "externalEntityDecl(name=\"" + escapeStr(name) + "\", publicId=\"" + escapeStr(publicId) + "\", systemId=\"" + escapeStr(systemId) + "\")\n"; - return TRUE; + return true; } Parser::Parser() -- cgit v1.2.3 From c0542c607bc2ba43ac6dbe3118a4be600ea85c09 Mon Sep 17 00:00:00 2001 From: Yuchen Deng Date: Fri, 30 Dec 2011 21:02:17 +0800 Subject: Build fix if using '-no-stl' configure option MSVC2010SP1: error C3861: 'wmemcpy': identifier not found Change-Id: Ib28edb5e38d691635c56dac846134e1c88c3f312 Reviewed-by: Robin Burchell Reviewed-by: Lars Knoll Reviewed-by: Friedemann Kleint --- src/plugins/platforms/windows/qwindowsfontdatabase.cpp | 2 ++ src/plugins/platforms/windows/qwindowsfontdatabase_ft.cpp | 2 ++ 2 files changed, 4 insertions(+) diff --git a/src/plugins/platforms/windows/qwindowsfontdatabase.cpp b/src/plugins/platforms/windows/qwindowsfontdatabase.cpp index b96ae6f3da..7741aeb9a8 100644 --- a/src/plugins/platforms/windows/qwindowsfontdatabase.cpp +++ b/src/plugins/platforms/windows/qwindowsfontdatabase.cpp @@ -51,6 +51,8 @@ #include #include +#include + #if !defined(QT_NO_DIRECTWRITE) # include # include diff --git a/src/plugins/platforms/windows/qwindowsfontdatabase_ft.cpp b/src/plugins/platforms/windows/qwindowsfontdatabase_ft.cpp index 1c4a855255..a7861998b9 100644 --- a/src/plugins/platforms/windows/qwindowsfontdatabase_ft.cpp +++ b/src/plugins/platforms/windows/qwindowsfontdatabase_ft.cpp @@ -51,6 +51,8 @@ #include #include +#include + static inline QFontDatabase::WritingSystem writingSystemFromScript(const QString &scriptName) { if (scriptName == QStringLiteral("Western") -- cgit v1.2.3 From 991b91ce57f7a71cc90f3ae4e159b6a23e043af2 Mon Sep 17 00:00:00 2001 From: Holger Hans Peter Freyther Date: Mon, 2 Jan 2012 17:14:38 +0100 Subject: directfb: Refer to the right class in the error message MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I41d0b95092d16bc3a643fca903c68be82813dad6 Reviewed-by: Jørgen Lind --- src/plugins/platforms/directfb/qdirectfbwindow.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/plugins/platforms/directfb/qdirectfbwindow.cpp b/src/plugins/platforms/directfb/qdirectfbwindow.cpp index 4648ed42f0..ed26ce2c63 100644 --- a/src/plugins/platforms/directfb/qdirectfbwindow.cpp +++ b/src/plugins/platforms/directfb/qdirectfbwindow.cpp @@ -82,7 +82,7 @@ QDirectFbWindow::QDirectFbWindow(QWindow *tlw, QDirectFbInput *inputhandler) DFBResult result = layer->CreateWindow(layer, &description, m_dfbWindow.outPtr()); if (result != DFB_OK) { - DirectFBError("QDirectFbGraphicsSystemScreen: failed to create window",result); + DirectFBError("QDirectFbWindow: failed to create window", result); } m_dfbWindow->SetOpacity(m_dfbWindow.data(), 0xff); -- cgit v1.2.3 From 68202f646aa9a8d3e695cd76006940f500687b0e Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Mon, 2 Jan 2012 12:38:45 +0100 Subject: Make sure tst_QThreadStorage finds its subprocess On Mac, the application's dir is in the bundle, so we need to "escape" the bundle when looking for the an executable relative to the application's dir path. Change-Id: I5c01f7d816ec8cc30f5277202f4eefb0c49a2bc3 Reviewed-by: Rohan McGovern --- tests/auto/corelib/thread/qthreadstorage/tst_qthreadstorage.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/tests/auto/corelib/thread/qthreadstorage/tst_qthreadstorage.cpp b/tests/auto/corelib/thread/qthreadstorage/tst_qthreadstorage.cpp index 11f2ef5f3f..f5f92d151c 100644 --- a/tests/auto/corelib/thread/qthreadstorage/tst_qthreadstorage.cpp +++ b/tests/auto/corelib/thread/qthreadstorage/tst_qthreadstorage.cpp @@ -290,7 +290,11 @@ void tst_QThreadStorage::crashOnExit() QProcess process; // crashOnExit is always expected to be in the same directory // as this test binary +#ifdef Q_OS_MAC + process.start(QCoreApplication::applicationDirPath() + "/../../../crashOnExit"); +#else process.start(QCoreApplication::applicationDirPath() + "/crashOnExit"); +#endif QVERIFY(process.waitForFinished()); QVERIFY(process.exitStatus() != QProcess::CrashExit); } -- cgit v1.2.3 From bff6cf7b5bb3661c3810312dbe36a942f0a2f6f1 Mon Sep 17 00:00:00 2001 From: Pekka Vuorela Date: Mon, 2 Jan 2012 16:34:19 +0200 Subject: QLineEdit to use Qt::ImhSensitiveData input hint on password echo modes Change-Id: I6922e41e7e57563f1190f46e0890b71e5c4b7ef4 Reviewed-by: Joona Petrell --- src/widgets/widgets/qlineedit.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/widgets/widgets/qlineedit.cpp b/src/widgets/widgets/qlineedit.cpp index 5b6a413b40..bd94f07b11 100644 --- a/src/widgets/widgets/qlineedit.cpp +++ b/src/widgets/widgets/qlineedit.cpp @@ -486,9 +486,9 @@ void QLineEdit::setEchoMode(EchoMode mode) imHints &= ~Qt::ImhHiddenText; } if (mode != Normal) { - imHints |= (Qt::ImhNoAutoUppercase | Qt::ImhNoPredictiveText); + imHints |= (Qt::ImhNoAutoUppercase | Qt::ImhNoPredictiveText | Qt::ImhSensitiveData); } else { - imHints &= ~(Qt::ImhNoAutoUppercase | Qt::ImhNoPredictiveText); + imHints &= ~(Qt::ImhNoAutoUppercase | Qt::ImhNoPredictiveText | Qt::ImhSensitiveData); } setInputMethodHints(imHints); d->control->setEchoMode(mode); -- cgit v1.2.3 From 053676a80e6fd3d415fd1915968b22bd5fb87704 Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 2 Jan 2012 23:36:05 +0100 Subject: QStandardPaths: add GenericCacheLocation. Much like DataLocation = GenericDataLocation + domain + appname, this makes CacheLocation = GenericCacheLocation + domain + appname. This way a framework library can have an application-independent cache (like ksycoca). Change-Id: I6a8c47ff85b7d5c68b594cc8b071a752d96b029d Reviewed-by: Bradley T. Hughes Reviewed-by: Thiago Macieira --- src/corelib/io/qstandardpaths.cpp | 2 ++ src/corelib/io/qstandardpaths.h | 3 ++- src/corelib/io/qstandardpaths_mac.cpp | 4 +++- src/corelib/io/qstandardpaths_unix.cpp | 11 +++++++---- src/corelib/io/qstandardpaths_win.cpp | 3 +++ 5 files changed, 17 insertions(+), 6 deletions(-) diff --git a/src/corelib/io/qstandardpaths.cpp b/src/corelib/io/qstandardpaths.cpp index 43ae5c07ab..2f5a01a7b5 100644 --- a/src/corelib/io/qstandardpaths.cpp +++ b/src/corelib/io/qstandardpaths.cpp @@ -83,6 +83,8 @@ QT_BEGIN_NAMESPACE returned for GenericDataLocation. \value CacheLocation Returns a directory location where user-specific non-essential (cached) data should be written. + \value GenericCacheLocation Returns a directory location where user-specific + non-essential (cached) data, shared across applications, should be written. \value GenericDataLocation Returns a directory location where persistent data shared across applications can be stored. \value RuntimeLocation Returns a directory location where runtime communication diff --git a/src/corelib/io/qstandardpaths.h b/src/corelib/io/qstandardpaths.h index d91da9de2f..af74bfec10 100644 --- a/src/corelib/io/qstandardpaths.h +++ b/src/corelib/io/qstandardpaths.h @@ -73,7 +73,8 @@ public: GenericDataLocation, RuntimeLocation, ConfigLocation, - DownloadLocation + DownloadLocation, + GenericCacheLocation }; static QString writableLocation(StandardLocation type); diff --git a/src/corelib/io/qstandardpaths_mac.cpp b/src/corelib/io/qstandardpaths_mac.cpp index 84fc81494c..104ba221fa 100644 --- a/src/corelib/io/qstandardpaths_mac.cpp +++ b/src/corelib/io/qstandardpaths_mac.cpp @@ -82,6 +82,7 @@ OSType translateLocation(QStandardPaths::StandardLocation type) case QStandardPaths::RuntimeLocation: case QStandardPaths::DataLocation: return kApplicationSupportFolderType; + case QStandardPaths::GenericCacheLocation: case QStandardPaths::CacheLocation: return kCachedDataFolderType; default: @@ -128,6 +129,7 @@ QString QStandardPaths::writableLocation(StandardLocation type) return QDir::tempPath(); case GenericDataLocation: case DataLocation: + case GenericCacheLocation: case CacheLocation: case RuntimeLocation: return macLocation(type, kUserDomain); @@ -140,7 +142,7 @@ QStringList QStandardPaths::standardLocations(StandardLocation type) { QStringList dirs; - if (type == GenericDataLocation || type == DataLocation || type == CacheLocation) { + if (type == GenericDataLocation || type == DataLocation || type == GenericCacheLocation || type == CacheLocation) { const QString path = macLocation(type, kOnAppropriateDisk); if (!path.isEmpty()) dirs.append(path); diff --git a/src/corelib/io/qstandardpaths_unix.cpp b/src/corelib/io/qstandardpaths_unix.cpp index b1c5869f71..4a4b5049aa 100644 --- a/src/corelib/io/qstandardpaths_unix.cpp +++ b/src/corelib/io/qstandardpaths_unix.cpp @@ -62,15 +62,18 @@ QString QStandardPaths::writableLocation(StandardLocation type) case TempLocation: return QDir::tempPath(); case CacheLocation: + case GenericCacheLocation: { // http://standards.freedesktop.org/basedir-spec/basedir-spec-0.6.html QString xdgCacheHome = QFile::decodeName(qgetenv("XDG_CACHE_HOME")); if (xdgCacheHome.isEmpty()) xdgCacheHome = QDir::homePath() + QLatin1String("/.cache"); - if (!QCoreApplication::organizationName().isEmpty()) - xdgCacheHome += QLatin1Char('/') + QCoreApplication::organizationName(); - if (!QCoreApplication::applicationName().isEmpty()) - xdgCacheHome += QLatin1Char('/') + QCoreApplication::applicationName(); + if (type == QStandardPaths::CacheLocation) { + if (!QCoreApplication::organizationName().isEmpty()) + xdgCacheHome += QLatin1Char('/') + QCoreApplication::organizationName(); + if (!QCoreApplication::applicationName().isEmpty()) + xdgCacheHome += QLatin1Char('/') + QCoreApplication::applicationName(); + } return xdgCacheHome; } case DataLocation: diff --git a/src/corelib/io/qstandardpaths_win.cpp b/src/corelib/io/qstandardpaths_win.cpp index e9093649f3..7b21363858 100644 --- a/src/corelib/io/qstandardpaths_win.cpp +++ b/src/corelib/io/qstandardpaths_win.cpp @@ -160,6 +160,9 @@ QString QStandardPaths::writableLocation(StandardLocation type) // cache directory located in their AppData directory return writableLocation(DataLocation) + QLatin1String("\\cache"); + case GenericCacheLocation: + return writableLocation(GenericDataLocation) + QLatin1String("\\cache"); + case RuntimeLocation: case HomeLocation: result = QDir::homePath(); -- cgit v1.2.3 From 82f9ad6295fb35e138841810a05075214a2f2690 Mon Sep 17 00:00:00 2001 From: Richard Moore Date: Tue, 27 Dec 2011 16:09:59 +0000 Subject: Always load the openssl configuration. This change makes Qt load the default openssl config always, not just when compiled with OPENSSL_LOAD_CONF. This means that facilities like openssl engines (and their configuration) are usable. An alternative would be to call OPENSSL_config(NULL) ourselves, but that's exactly what the OPENSSL_add_all_algorithms_conf does for us. Task-number: QTBUG-16018 Change-Id: I4cda701f82627e0541b6225009f4e1249aec9d47 Reviewed-by: Thiago Macieira --- dist/changes-5.0.0 | 3 +++ src/network/ssl/qsslsocket_openssl_symbols_p.h | 4 ---- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/dist/changes-5.0.0 b/dist/changes-5.0.0 index b16eb666ae..84add0dfcc 100644 --- a/dist/changes-5.0.0 +++ b/dist/changes-5.0.0 @@ -193,6 +193,9 @@ QtNetwork * QSslCertificate::serialNumber() now always returns the serial number in hexadecimal format. +* The openssl network backend now reads the ssl configuration file allowing + the use of openssl engines. + QtOpenGL -------- diff --git a/src/network/ssl/qsslsocket_openssl_symbols_p.h b/src/network/ssl/qsslsocket_openssl_symbols_p.h index ecade35793..cc3da512dc 100644 --- a/src/network/ssl/qsslsocket_openssl_symbols_p.h +++ b/src/network/ssl/qsslsocket_openssl_symbols_p.h @@ -427,11 +427,7 @@ DSA *q_d2i_DSAPrivateKey(DSA **a, unsigned char **pp, long length); (char *)(rsa)) #define q_EVP_PKEY_assign_DSA(pkey,dsa) q_EVP_PKEY_assign((pkey),EVP_PKEY_DSA,\ (char *)(dsa)) -#ifdef OPENSSL_LOAD_CONF #define q_OpenSSL_add_all_algorithms() q_OPENSSL_add_all_algorithms_conf() -#else -#define q_OpenSSL_add_all_algorithms() q_OPENSSL_add_all_algorithms_noconf() -#endif void q_OPENSSL_add_all_algorithms_noconf(); void q_OPENSSL_add_all_algorithms_conf(); int q_SSL_CTX_load_verify_locations(SSL_CTX *ctx, const char *CAfile, const char *CApath); -- cgit v1.2.3 From 9ea608cb54569f1e4a68c787fe2f5013a57c9722 Mon Sep 17 00:00:00 2001 From: Frederik Gladhorn Date: Fri, 9 Dec 2011 11:06:28 +0100 Subject: Use meta object to get string rep of QAccessible::Role. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I69320b69ea13ebc594575277e39d30a066df61fd Reviewed-by: Jan-Arve Sæther --- src/gui/accessible/qaccessible.cpp | 24 +++++-- src/gui/accessible/qaccessible.h | 3 + .../platforms/windows/qwindowsaccessibility.cpp | 77 +--------------------- 3 files changed, 23 insertions(+), 81 deletions(-) diff --git a/src/gui/accessible/qaccessible.cpp b/src/gui/accessible/qaccessible.cpp index 7c23ede6fc..3251e46a96 100644 --- a/src/gui/accessible/qaccessible.cpp +++ b/src/gui/accessible/qaccessible.cpp @@ -50,10 +50,8 @@ #include #include "qplatformaccessibility_qpa.h" -#include -#include -#include -#include +#include +#include #include QT_BEGIN_NAMESPACE @@ -1209,6 +1207,22 @@ QVariant QAccessibleInterface::virtual_hook(const QVariant &) return QVariant(); } +/*! \internal */ +const char *qAccessibleRoleString(QAccessible::Role role) +{ + if (role >=0x40) + role = QAccessible::UserRole; + static int roleEnum = QAccessible::staticMetaObject.indexOfEnumerator("Role"); + return QAccessible::staticMetaObject.enumerator(roleEnum).valueToKey(role); +} + +/*! \internal */ +const char *qAccessibleEventString(QAccessible::Event event) +{ + static int eventEnum = QAccessible::staticMetaObject.indexOfEnumerator("Event"); + return QAccessible::staticMetaObject.enumerator(eventEnum).valueToKey(event); +} + #ifndef QT_NO_DEBUG_STREAM Q_GUI_EXPORT QDebug operator<<(QDebug d, const QAccessibleInterface *iface) { @@ -1220,7 +1234,7 @@ Q_GUI_EXPORT QDebug operator<<(QDebug d, const QAccessibleInterface *iface) d << "QAccessibleInterface(" << hex << (void *) iface << dec; if (iface->isValid()) { d << " name=" << iface->text(QAccessible::Name) << " "; - d << "role=" << iface->role() << " "; + d << "role=" << qAccessibleRoleString(iface->role()) << " "; if (iface->childCount()) d << "childc=" << iface->childCount() << " "; if (iface->object()) { diff --git a/src/gui/accessible/qaccessible.h b/src/gui/accessible/qaccessible.h index 3831b7d8e1..55541810a3 100644 --- a/src/gui/accessible/qaccessible.h +++ b/src/gui/accessible/qaccessible.h @@ -439,6 +439,9 @@ inline QAccessibleEvent::QAccessibleEvent(Type atype) #define QAccessibleInterface_iid "com.trolltech.Qt.QAccessibleInterface" Q_DECLARE_INTERFACE(QAccessibleInterface, QAccessibleInterface_iid) +Q_GUI_EXPORT const char *qAccessibleRoleString(QAccessible::Role role); +Q_GUI_EXPORT const char *qAccessibleEventString(QAccessible::Event event); + #ifndef QT_NO_DEBUG_STREAM Q_GUI_EXPORT QDebug operator<<(QDebug d, const QAccessibleInterface *iface); #endif diff --git a/src/plugins/platforms/windows/qwindowsaccessibility.cpp b/src/plugins/platforms/windows/qwindowsaccessibility.cpp index 556d516bc0..5539079725 100644 --- a/src/plugins/platforms/windows/qwindowsaccessibility.cpp +++ b/src/plugins/platforms/windows/qwindowsaccessibility.cpp @@ -92,81 +92,6 @@ QT_BEGIN_INCLUDE_NAMESPACE #include QT_END_INCLUDE_NAMESPACE -static const char *roleString(QAccessible::Role role) -{ - static const char *roles[] = { - "NoRole" /* = 0x00000000 */, - "TitleBar" /* = 0x00000001 */, - "MenuBar" /* = 0x00000002 */, - "ScrollBar" /* = 0x00000003 */, - "Grip" /* = 0x00000004 */, - "Sound" /* = 0x00000005 */, - "Cursor" /* = 0x00000006 */, - "Caret" /* = 0x00000007 */, - "AlertMessage" /* = 0x00000008 */, - "Window" /* = 0x00000009 */, - "Client" /* = 0x0000000A */, - "PopupMenu" /* = 0x0000000B */, - "MenuItem" /* = 0x0000000C */, - "ToolTip" /* = 0x0000000D */, - "Application" /* = 0x0000000E */, - "Document" /* = 0x0000000F */, - "Pane" /* = 0x00000010 */, - "Chart" /* = 0x00000011 */, - "Dialog" /* = 0x00000012 */, - "Border" /* = 0x00000013 */, - "Grouping" /* = 0x00000014 */, - "Separator" /* = 0x00000015 */, - "ToolBar" /* = 0x00000016 */, - "StatusBar" /* = 0x00000017 */, - "Table" /* = 0x00000018 */, - "ColumnHeader" /* = 0x00000019 */, - "RowHeader" /* = 0x0000001A */, - "Column" /* = 0x0000001B */, - "Row" /* = 0x0000001C */, - "Cell" /* = 0x0000001D */, - "Link" /* = 0x0000001E */, - "HelpBalloon" /* = 0x0000001F */, - "Assistant" /* = 0x00000020 */, - "List" /* = 0x00000021 */, - "ListItem" /* = 0x00000022 */, - "Tree" /* = 0x00000023 */, - "TreeItem" /* = 0x00000024 */, - "PageTab" /* = 0x00000025 */, - "PropertyPage" /* = 0x00000026 */, - "Indicator" /* = 0x00000027 */, - "Graphic" /* = 0x00000028 */, - "StaticText" /* = 0x00000029 */, - "EditableText" /* = 0x0000002A */, // Editable, selectable, etc. - "PushButton" /* = 0x0000002B */, - "CheckBox" /* = 0x0000002C */, - "RadioButton" /* = 0x0000002D */, - "ComboBox" /* = 0x0000002E */, - "DropList" /* = 0x0000002F */, // commented out - "ProgressBar" /* = 0x00000030 */, - "Dial" /* = 0x00000031 */, - "HotkeyField" /* = 0x00000032 */, - "Slider" /* = 0x00000033 */, - "SpinBox" /* = 0x00000034 */, - "Canvas" /* = 0x00000035 */, - "Animation" /* = 0x00000036 */, - "Equation" /* = 0x00000037 */, - "ButtonDropDown" /* = 0x00000038 */, - "ButtonMenu" /* = 0x00000039 */, - "ButtonDropGrid" /* = 0x0000003A */, - "Whitespace" /* = 0x0000003B */, - "PageTabList" /* = 0x0000003C */, - "Clock" /* = 0x0000003D */, - "Splitter" /* = 0x0000003E */, - "LayeredPane" /* = 0x0000003F */, - "UserRole" /* = 0x0000ffff*/ - }; - - if (role >=0x40) - role = QAccessible::UserRole; - return roles[int(role)]; -} - static const char *eventString(QAccessible::Event ev) { static const char *events[] = { @@ -269,7 +194,7 @@ static const char *eventString(QAccessible::Event ev) void showDebug(const char* funcName, const QAccessibleInterface *iface) { - qDebug() << "Role:" << roleString(iface->role(0)) + qDebug() << "Role:" << qAccessibleRoleString(iface->role(0)) << "Name:" << iface->text(QAccessible::Name, 0) << "State:" << QString::number(int(iface->state(0)), 16) << QLatin1String(funcName); -- cgit v1.2.3 From 7a597e6c43295c629f389203059d51f869ec02e0 Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Mon, 2 Jan 2012 09:23:49 +0100 Subject: Make QCocoaEventDispatcher inherit from QAbstractEventDispatcher MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ... instead of QEventDispatcherUNIX. The Cocoa dispatcher does not use any of the facilities of the UNIX dispatcher, and it reimplements every virtual method already (with the exception of flush(), which just needs an empty implementation). Change-Id: I24aefd169888946afac7800192a0f96770787718 Reviewed-by: Robin Burchell Reviewed-by: Morten Johan Sørvig --- src/plugins/platforms/cocoa/qcocoaeventdispatcher.h | 8 +++++--- src/plugins/platforms/cocoa/qcocoaeventdispatcher.mm | 5 ++++- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/src/plugins/platforms/cocoa/qcocoaeventdispatcher.h b/src/plugins/platforms/cocoa/qcocoaeventdispatcher.h index 688cd75e29..a83bde03ea 100644 --- a/src/plugins/platforms/cocoa/qcocoaeventdispatcher.h +++ b/src/plugins/platforms/cocoa/qcocoaeventdispatcher.h @@ -87,10 +87,11 @@ // We mean it. // +#include #include #include #include -#include +#include #include @@ -104,7 +105,7 @@ typedef struct _QCocoaModalSessionInfo { } QCocoaModalSessionInfo; class QCocoaEventDispatcherPrivate; -class QCocoaEventDispatcher : public QEventDispatcherUNIX +class QCocoaEventDispatcher : public QAbstractEventDispatcher { Q_OBJECT Q_DECLARE_PRIVATE(QCocoaEventDispatcher) @@ -128,6 +129,7 @@ public: void wakeUp(); void interrupt(); + void flush(); private: //friend void qt_mac_select_timer_callbk(__EventLoopTimer*, void*); @@ -157,7 +159,7 @@ struct MacSocketInfo { }; typedef QHash MacSocketHash; -class QCocoaEventDispatcherPrivate : public QEventDispatcherUNIXPrivate +class QCocoaEventDispatcherPrivate : public QAbstractEventDispatcherPrivate { Q_DECLARE_PUBLIC(QCocoaEventDispatcher) diff --git a/src/plugins/platforms/cocoa/qcocoaeventdispatcher.mm b/src/plugins/platforms/cocoa/qcocoaeventdispatcher.mm index d55b28ffcc..1095d4b29a 100644 --- a/src/plugins/platforms/cocoa/qcocoaeventdispatcher.mm +++ b/src/plugins/platforms/cocoa/qcocoaeventdispatcher.mm @@ -904,7 +904,7 @@ QCocoaEventDispatcherPrivate::QCocoaEventDispatcherPrivate() } QCocoaEventDispatcher::QCocoaEventDispatcher(QObject *parent) - : QEventDispatcherUNIX(*new QCocoaEventDispatcherPrivate, parent) + : QAbstractEventDispatcher(*new QCocoaEventDispatcherPrivate, parent) { Q_D(QCocoaEventDispatcher); CFRunLoopSourceContext context; @@ -1051,6 +1051,9 @@ void QCocoaEventDispatcher::interrupt() d->cancelWaitForMoreEvents(); } +void QCocoaEventDispatcher::flush() +{ } + QCocoaEventDispatcher::~QCocoaEventDispatcher() { Q_D(QCocoaEventDispatcher); -- cgit v1.2.3 From e3e234b5eb9e9d65894e2f7c58c15b1d19c9414f Mon Sep 17 00:00:00 2001 From: Denis Dzyubenko Date: Tue, 3 Jan 2012 17:05:49 +0100 Subject: Fixed static assert in qvariant template magic MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit CallConstructor is called when we need to construct an object that couldn't be fit in qvariantdata, meaning either it is not a POD type (Q_PRIMITIVE_TYPE), or it is simply too large to fit there. Change-Id: Ied122b4a6f600e14312a8d515f5b3e91214a94f1 Reviewed-by: JÄ™drzej Nowacki --- src/corelib/kernel/qvariant_p.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/corelib/kernel/qvariant_p.h b/src/corelib/kernel/qvariant_p.h index f7f1399312..a90164fa71 100644 --- a/src/corelib/kernel/qvariant_p.h +++ b/src/corelib/kernel/qvariant_p.h @@ -327,7 +327,7 @@ class QVariantConstructor { CallConstructor(const QVariantConstructor &tc) { - Q_STATIC_ASSERT(QTypeInfo::isComplex); + Q_STATIC_ASSERT(QTypeInfo::isComplex || sizeof(T) > sizeof(QVariant::Private::Data)); tc.m_x->data.shared = tc.m_copy ? new QVariantPrivateSharedEx(*static_cast(tc.m_copy)) : new QVariantPrivateSharedEx; tc.m_x->is_shared = true; -- cgit v1.2.3 From afd22f52f8b0e4d2d90ebbead2a1d40040bc44cd Mon Sep 17 00:00:00 2001 From: Frederik Gladhorn Date: Thu, 8 Dec 2011 14:10:46 +0100 Subject: Accessibility: extend listview unit test. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Test more functions from Table Cell. Change-Id: I43b8766138350ece781bdaba7ab10fde8542aa4f Reviewed-by: Jan-Arve Sæther --- .../other/qaccessibility/tst_qaccessibility.cpp | 60 ++++++++++++++-------- 1 file changed, 39 insertions(+), 21 deletions(-) diff --git a/tests/auto/other/qaccessibility/tst_qaccessibility.cpp b/tests/auto/other/qaccessibility/tst_qaccessibility.cpp index dd81fba5b8..3640c65155 100644 --- a/tests/auto/other/qaccessibility/tst_qaccessibility.cpp +++ b/tests/auto/other/qaccessibility/tst_qaccessibility.cpp @@ -66,6 +66,8 @@ inline bool IsValidCEPlatform() { } #endif +typedef QSharedPointer QAIPtr; + static inline bool verifyChild(QWidget *child, QAccessibleInterface *interface, int index, const QRect &domain) { @@ -2469,6 +2471,7 @@ void tst_QAccessibility::scrollAreaTest() void tst_QAccessibility::listTest() { + { QListWidget *listView = new QListWidget; listView->addItem("Oslo"); listView->addItem("Berlin"); @@ -2479,33 +2482,29 @@ void tst_QAccessibility::listTest() QCoreApplication::processEvents(); QTest::qWait(100); - QAccessibleInterface *iface = QAccessible::queryAccessibleInterface(listView); - QCOMPARE(verifyHierarchy(iface), 0); + QAIPtr iface = QAIPtr(QAccessible::queryAccessibleInterface(listView)); + QCOMPARE(verifyHierarchy(iface.data()), 0); QCOMPARE((int)iface->role(), (int)QAccessible::List); QCOMPARE(iface->childCount(), 3); - QAccessibleInterface *child1 = 0; - child1 = iface->child(0); + { + QAIPtr child1 = QAIPtr(iface->child(0)); QVERIFY(child1); - QCOMPARE(iface->indexOfChild(child1), 1); + QCOMPARE(iface->indexOfChild(child1.data()), 1); QCOMPARE(child1->text(QAccessible::Name), QString("Oslo")); QCOMPARE(child1->role(), QAccessible::ListItem); - delete child1; - QAccessibleInterface *child2 = 0; - child2 = iface->child(1); + QAIPtr child2 = QAIPtr(iface->child(1)); QVERIFY(child2); - QCOMPARE(iface->indexOfChild(child2), 2); + QCOMPARE(iface->indexOfChild(child2.data()), 2); QCOMPARE(child2->text(QAccessible::Name), QString("Berlin")); - delete child2; - QAccessibleInterface *child3 = 0; - child3 = iface->child(2); + QAIPtr child3 = QAIPtr(iface->child(2)); QVERIFY(child3); - QCOMPARE(iface->indexOfChild(child3), 3); + QCOMPARE(iface->indexOfChild(child3.data()), 3); QCOMPARE(child3->text(QAccessible::Name), QString("Brisbane")); - delete child3; + } QTestAccessibility::clearEvents(); // Check for events @@ -2524,11 +2523,12 @@ void tst_QAccessibility::listTest() QVERIFY(table2); QCOMPARE(table2->columnCount(), 1); QCOMPARE(table2->rowCount(), 4); - QAccessibleInterface *cell1; - QVERIFY(cell1 = table2->cellAt(0,0)); + QAIPtr cell1 = QAIPtr(table2->cellAt(0,0)); + QVERIFY(cell1); QCOMPARE(cell1->text(QAccessible::Name), QString("Oslo")); - QAccessibleInterface *cell4; - QVERIFY(cell4 = table2->cellAt(3,0)); + + QAIPtr cell4 = QAIPtr(table2->cellAt(3,0)); + QVERIFY(cell4); QCOMPARE(cell4->text(QAccessible::Name), QString("Munich")); QCOMPARE(cell4->role(), QAccessible::ListItem); @@ -2536,12 +2536,30 @@ void tst_QAccessibility::listTest() QVERIFY(cellInterface); QCOMPARE(cellInterface->rowIndex(), 3); QCOMPARE(cellInterface->columnIndex(), 0); + QCOMPARE(cellInterface->rowExtent(), 1); + QCOMPARE(cellInterface->columnExtent(), 1); + QCOMPARE(cellInterface->rowHeaderCells(), QList()); + QCOMPARE(cellInterface->columnHeaderCells(), QList()); + + QCOMPARE(QAIPtr(cellInterface->table())->object(), listView); + + listView->clearSelection(); QVERIFY(!(cell4->state() & QAccessible::Expandable)); + QVERIFY( (cell4->state() & QAccessible::Selectable)); + QVERIFY(!(cell4->state() & QAccessible::Selected)); + table2->selectRow(3); + QCOMPARE(listView->selectedItems().size(), 1); + QCOMPARE(listView->selectedItems().at(0)->text(), QLatin1String("Munich")); + QVERIFY(cell4->state() & QAccessible::Selected); + QVERIFY(cellInterface->isSelected()); + + QVERIFY(table2->cellAt(-1, 0) == 0); + QVERIFY(table2->cellAt(0, -1) == 0); + QVERIFY(table2->cellAt(0, 1) == 0); + QVERIFY(table2->cellAt(4, 0) == 0); - delete cell4; - delete cell1; - delete iface; delete listView; + } QTestAccessibility::clearEvents(); } -- cgit v1.2.3 From edbd3d6a9430391843385b2466461426e1623e78 Mon Sep 17 00:00:00 2001 From: Frederik Gladhorn Date: Tue, 3 Jan 2012 17:50:02 +0100 Subject: Add virtual destructors to accessible interfaces. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I60a6033911757f86c70f06c2d8d4240d2332b4cf Reviewed-by: Jan-Arve Sæther Reviewed-by: Alban Crequy --- src/gui/accessible/qaccessible2.h | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/gui/accessible/qaccessible2.h b/src/gui/accessible/qaccessible2.h index 93db869364..e83268c520 100644 --- a/src/gui/accessible/qaccessible2.h +++ b/src/gui/accessible/qaccessible2.h @@ -163,6 +163,8 @@ public: class Q_GUI_EXPORT QAccessibleTableCellInterface { public: + virtual ~QAccessibleTableCellInterface() {} + // Returns the number of columns occupied by this cell accessible. virtual int columnExtent() const = 0; @@ -189,6 +191,7 @@ public: class Q_GUI_EXPORT QAccessibleTableInterface { public: + virtual ~QAccessibleTableInterface() {} // Returns the cell at the specified row and column in the table. virtual QAccessibleInterface *cellAt (int row, int column) const = 0; @@ -249,6 +252,7 @@ class Q_GUI_EXPORT QAccessibleActionInterface { Q_DECLARE_TR_FUNCTIONS(QAccessibleActionInterface) public: + virtual ~QAccessibleActionInterface() {} virtual QStringList actionNames() const = 0; virtual QString localizedActionName(const QString &name) const; @@ -268,6 +272,7 @@ public: class Q_GUI_EXPORT QAccessibleImageInterface { public: + virtual ~QAccessibleImageInterface() {} virtual QString imageDescription() = 0; virtual QSize imageSize() = 0; -- cgit v1.2.3 From 20f0196a2cddf6927c34d8e3a93ea7ca074c7a53 Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Tue, 3 Jan 2012 14:33:44 +1000 Subject: Remove redundant debug code from QFileSystemWatcher test. There is no need to print out the name of the backend used by each test run of a test function as every message output by the test function will have the name of the current data row included. Change-Id: Ie69881d2ecedce728ea67b5aae1c1196776552a5 Reviewed-by: Rohan McGovern Reviewed-by: Robin Burchell --- tests/auto/corelib/io/qfilesystemwatcher/tst_qfilesystemwatcher.cpp | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/tests/auto/corelib/io/qfilesystemwatcher/tst_qfilesystemwatcher.cpp b/tests/auto/corelib/io/qfilesystemwatcher/tst_qfilesystemwatcher.cpp index bc2b1940b9..d0eb360d43 100644 --- a/tests/auto/corelib/io/qfilesystemwatcher/tst_qfilesystemwatcher.cpp +++ b/tests/auto/corelib/io/qfilesystemwatcher/tst_qfilesystemwatcher.cpp @@ -83,14 +83,13 @@ private slots: void tst_QFileSystemWatcher::basicTest_data() { QTest::addColumn("backend"); - QTest::newRow("native") << "native"; - QTest::newRow("poller") << "poller"; + QTest::newRow("native backend") << "native"; + QTest::newRow("poller backend") << "poller"; } void tst_QFileSystemWatcher::basicTest() { QFETCH(QString, backend); - qDebug() << "Testing" << backend << "engine"; // create test file QFile testFile("testfile.txt"); @@ -223,7 +222,6 @@ void tst_QFileSystemWatcher::basicTest() void tst_QFileSystemWatcher::watchDirectory() { QFETCH(QString, backend); - qDebug() << "Testing" << backend << "engine"; QDir().mkdir("testDir"); QDir testDir("testDir"); -- cgit v1.2.3 From 0afe9907149b94d8cc4600f1a2b23b99067d030f Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Tue, 3 Jan 2012 15:16:14 +1000 Subject: Avoid QCOMPARE outside test function in QSettings test. QCOMPARE and friends should only be called in a test function. Instead of calling QCOMPARE elsewhere, keep a count of the number of errors and QCOMPARE that count with zero in the test function. Change-Id: I9a264e91169a98c30980fdc04a3e45bfb0ca8063 Reviewed-by: Rohan McGovern --- tests/auto/corelib/io/qsettings/tst_qsettings.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/tests/auto/corelib/io/qsettings/tst_qsettings.cpp b/tests/auto/corelib/io/qsettings/tst_qsettings.cpp index ac2345d002..f16dcd1ccc 100644 --- a/tests/auto/corelib/io/qsettings/tst_qsettings.cpp +++ b/tests/auto/corelib/io/qsettings/tst_qsettings.cpp @@ -1694,6 +1694,7 @@ void tst_QSettings::testUpdateRequestEvent() const int NumIterations = 5; const int NumThreads = 4; +int numThreadSafetyFailures; class SettingsThread : public QThread { @@ -1711,7 +1712,10 @@ void SettingsThread::run() QSettings settings("software.org", "KillerAPP"); settings.setValue(QString::number((param * NumIterations) + i), param); settings.sync(); - QCOMPARE((int)settings.status(), (int)QSettings::NoError); + if (settings.status() != QSettings::NoError) { + QWARN(qPrintable(QString("Unexpected QSettings status %1").arg((int)settings.status()))); + ++numThreadSafetyFailures; + } } } @@ -1720,6 +1724,8 @@ void tst_QSettings::testThreadSafety() SettingsThread threads[NumThreads]; int i, j; + numThreadSafetyFailures = 0; + for (i = 0; i < NumThreads; ++i) threads[i].start(i + 1); for (i = 0; i < NumThreads; ++i) @@ -1732,6 +1738,8 @@ void tst_QSettings::testThreadSafety() QCOMPARE(settings.value(QString::number((param * NumIterations) + j)).toInt(), param); } } + + QCOMPARE(numThreadSafetyFailures, 0); } void tst_QSettings::testNormalizedKey_data() -- cgit v1.2.3 From 01674860ac85a42eb152092c6e99f7ad03346977 Mon Sep 17 00:00:00 2001 From: Denis Dzyubenko Date: Mon, 2 Jan 2012 17:16:04 +0100 Subject: Marked QUuid as Q_MOVABLE_TYPE in the metatype system. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I3d343b71294ad5640636694d1a079ea9dcca6348 Reviewed-by: JÄ™drzej Nowacki Reviewed-by: Robin Burchell Reviewed-by: Olivier Goffart Reviewed-by: Prasanth Ullattil --- src/corelib/plugin/quuid.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/corelib/plugin/quuid.h b/src/corelib/plugin/quuid.h index b941079df0..4557199dc3 100644 --- a/src/corelib/plugin/quuid.h +++ b/src/corelib/plugin/quuid.h @@ -184,6 +184,8 @@ struct Q_CORE_EXPORT QUuid uchar data4[8]; }; +Q_DECLARE_TYPEINFO(QUuid, Q_MOVABLE_TYPE); + #ifndef QT_NO_DATASTREAM Q_CORE_EXPORT QDataStream &operator<<(QDataStream &, const QUuid &); Q_CORE_EXPORT QDataStream &operator>>(QDataStream &, QUuid &); -- cgit v1.2.3 From e570cad9d7c980ca13f4342c124c06b4bde0e313 Mon Sep 17 00:00:00 2001 From: Denis Dzyubenko Date: Mon, 2 Jan 2012 22:34:50 +0100 Subject: Deinlined QLocale::operator== Some time ago this was a blocker that didn't allow to refactor QLocale implementation due without making binary incompatible changes. Deinlining those functions for Qt5, it shouldn't be performance critical code path. Change-Id: I6cb19e32188a2df223d04be0c613a6176ad8d118 Reviewed-by: Lars Knoll --- src/corelib/tools/qlocale.cpp | 10 ++++++++++ src/corelib/tools/qlocale.h | 8 ++------ 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/src/corelib/tools/qlocale.cpp b/src/corelib/tools/qlocale.cpp index d2bb752c6d..595f178009 100644 --- a/src/corelib/tools/qlocale.cpp +++ b/src/corelib/tools/qlocale.cpp @@ -775,6 +775,16 @@ QLocale &QLocale::operator=(const QLocale &other) return *this; } +bool QLocale::operator==(const QLocale &other) const +{ + return d() == other.d() && numberOptions() == other.numberOptions(); +} + +bool QLocale::operator!=(const QLocale &other) const +{ + return d() != other.d() || numberOptions() != other.numberOptions(); +} + /*! \since 4.2 diff --git a/src/corelib/tools/qlocale.h b/src/corelib/tools/qlocale.h index 55dd55b984..dca3dd7259 100644 --- a/src/corelib/tools/qlocale.h +++ b/src/corelib/tools/qlocale.h @@ -739,8 +739,8 @@ public: QStringList uiLanguages() const; - inline bool operator==(const QLocale &other) const; - inline bool operator!=(const QLocale &other) const; + bool operator==(const QLocale &other) const; + bool operator!=(const QLocale &other) const; static QString languageToString(Language language); static QString countryToString(Country country); @@ -789,10 +789,6 @@ inline QString QLocale::toString(uint i) const { return toString(qulonglong(i)); } inline QString QLocale::toString(float i, char f, int prec) const { return toString(double(i), f, prec); } -inline bool QLocale::operator==(const QLocale &other) const - { return d() == other.d() && numberOptions() == other.numberOptions(); } -inline bool QLocale::operator!=(const QLocale &other) const - { return d() != other.d() || numberOptions() != other.numberOptions(); } inline QString QLocale::toCurrencyString(short i, const QString &symbol) const { return toCurrencyString(qlonglong(i), symbol); } -- cgit v1.2.3 From a4533b450378cc8910f6491286087207dd097875 Mon Sep 17 00:00:00 2001 From: Joerg Bornemann Date: Mon, 2 Jan 2012 11:43:48 +0100 Subject: fix invalid connection in tst_QProcess::lockupsInStartDetached Change-Id: I06f2d56f5c45c13bbe08707e6baad4f2aece39b8 Reviewed-by: Thiago Macieira Reviewed-by: Jason McDonald --- tests/auto/corelib/io/qprocess/tst_qprocess.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tests/auto/corelib/io/qprocess/tst_qprocess.cpp b/tests/auto/corelib/io/qprocess/tst_qprocess.cpp index d8b0b38b0c..0482b2d85e 100644 --- a/tests/auto/corelib/io/qprocess/tst_qprocess.cpp +++ b/tests/auto/corelib/io/qprocess/tst_qprocess.cpp @@ -1885,7 +1885,8 @@ void tst_QProcess::lockupsInStartDetached() // doesn't exist. Before Qt 4.2, this used to lock up on Unix due // to calling ::exit instead of ::_exit if execve failed. - QHostInfo::lookupHost(QString("something.invalid"), 0, 0); + QObject *dummy = new QObject(this); + QHostInfo::lookupHost(QString("something.invalid"), dummy, SLOT(deleteLater())); QProcess::execute("yjhbrty"); QProcess::startDetached("yjhbrty"); } -- cgit v1.2.3 From 7929a910c49736bd8fd74763a5765bec078a3142 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B8rgen?= Date: Mon, 2 Jan 2012 10:20:14 +0100 Subject: Export QOpenGLTextureCache MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit because it can be useful outside QtGui. The function QOpenGLTextureCache::bindTexture gives a very convenient way to get a texture from an image. Change-Id: I2e22c0a3a8f1f307d0b558280043f726e3d8093a Reviewed-by: Robin Burchell Reviewed-by: Samuel Rødal --- src/gui/opengl/qopengltexturecache_p.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gui/opengl/qopengltexturecache_p.h b/src/gui/opengl/qopengltexturecache_p.h index bdee9f4e83..74166cbabc 100644 --- a/src/gui/opengl/qopengltexturecache_p.h +++ b/src/gui/opengl/qopengltexturecache_p.h @@ -73,7 +73,7 @@ private: QOpenGLSharedResourceGuard *m_resource; }; -class QOpenGLTextureCache : public QOpenGLSharedResource +class Q_GUI_EXPORT QOpenGLTextureCache : public QOpenGLSharedResource { public: static QOpenGLTextureCache *cacheForContext(QOpenGLContext *context); -- cgit v1.2.3 From 52fc6694b87e93fe0828424bb26d9279785de3e7 Mon Sep 17 00:00:00 2001 From: Kai Koehne Date: Tue, 3 Jan 2012 16:01:40 +0100 Subject: configure: Remove -nokia-developer option There's no good reason to still differentiate between 'Nokia' developers, and Qt developers outside of Nokia, inside configure. Just use -developer-build -opensource -confirm-license. Change-Id: I8726947dae0c70412eb52bf9d88eda4aa061ef26 Reviewed-by: Lars Knoll Reviewed-by: Robin Burchell --- configure | 22 +++------------------- tools/configure/configureapp.cpp | 13 ++----------- 2 files changed, 5 insertions(+), 30 deletions(-) diff --git a/configure b/configure index 89bd2f1a3a..a5e1f395ce 100755 --- a/configure +++ b/configure @@ -229,7 +229,6 @@ fi #------------------------------------------------------------------------------- COMMERCIAL_USER=ask CFG_DEV=no -CFG_NOKIA=no CFG_EMBEDDED=no CFG_RTOS_ENABLED=yes EditionString=Commercial @@ -346,11 +345,6 @@ earlyArgParse() developer-build) CFG_DEV="yes" ;; - nokia-developer) - CFG_DEV="yes" - CFG_NOKIA="yes" - COMMERCIAL_USER="no" - ;; commercial) COMMERCIAL_USER="yes" ;; @@ -385,13 +379,7 @@ if [ "$COMMERCIAL_USER" = "ask" ]; then done fi -if [ "$CFG_NOKIA" = "yes" ]; then - Licensee="Nokia" - Edition="NokiaInternalBuild" - EditionString="Nokia Internal Build" - QT_EDITION="QT_EDITION_OPENSOURCE" - [ "$PLATFORM_MAC" = "maybe" ] && PLATFORM_MAC=yes -elif [ -f "$relpath"/LICENSE.PREVIEW.COMMERCIAL ] && [ $COMMERCIAL_USER = "yes" ]; then +if [ -f "$relpath"/LICENSE.PREVIEW.COMMERCIAL ] && [ $COMMERCIAL_USER = "yes" ]; then # Commercial preview release [ "$PLATFORM_MAC" = "maybe" ] && PLATFORM_MAC=yes Licensee="Preview" @@ -1586,7 +1574,7 @@ while [ "$#" -gt 0 ]; do debug) CFG_DEBUG="$VAL" ;; - developer-build|commercial|opensource|nokia-developer) + developer-build|commercial|opensource) # These switches have been dealt with already ;; static) @@ -4370,11 +4358,7 @@ echo echo "This is the $Platform ${EditionString} Edition." echo -if [ "$Edition" = "NokiaInternalBuild" ]; then - echo "Detected -nokia-developer option" - echo "Nokia employees and agents are allowed to use this software under" - echo "the authority of Nokia Corporation and/or its subsidiary(-ies)" -elif [ "$Edition" = "OpenSource" ]; then +if [ "$Edition" = "OpenSource" ]; then while true; do echo "You are licensed to use this software under the terms of" echo "the Lesser GNU General Public License (LGPL) versions 2.1." diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp index 3251abc421..92cc2af843 100644 --- a/tools/configure/configureapp.cpp +++ b/tools/configure/configureapp.cpp @@ -300,7 +300,6 @@ Configure::Configure(int& argc, char** argv) dictionary[ "BUILDTYPE" ] = "none"; dictionary[ "BUILDDEV" ] = "no"; - dictionary[ "BUILDNOKIA" ] = "no"; dictionary[ "SHARED" ] = "yes"; @@ -481,14 +480,6 @@ void Configure::parseCmdLine() dictionary[ "SHARED" ] = "no"; else if (configCmdLine.at(i) == "-developer-build") dictionary[ "BUILDDEV" ] = "yes"; - else if (configCmdLine.at(i) == "-nokia-developer") { - cout << "Detected -nokia-developer option" << endl; - cout << "Nokia employees and agents are allowed to use this software under" << endl; - cout << "the authority of Nokia Corporation and/or its subsidiary(-ies)" << endl; - dictionary[ "BUILDNOKIA" ] = "yes"; - dictionary[ "BUILDDEV" ] = "yes"; - dictionary["LICENSE_CONFIRMED"] = "yes"; - } else if (configCmdLine.at(i) == "-opensource") { dictionary[ "BUILDTYPE" ] = "opensource"; } @@ -3788,7 +3779,7 @@ void Configure::readLicense() bool openSource = false; bool hasOpenSource = QFile::exists(dictionary["LICENSE FILE"] + "/LICENSE.GPL3") || QFile::exists(dictionary["LICENSE FILE"] + "/LICENSE.LGPL"); - if (dictionary["BUILDNOKIA"] == "yes" || dictionary["BUILDTYPE"] == "commercial") { + if (dictionary["BUILDTYPE"] == "commercial") { openSource = false; } else if (dictionary["BUILDTYPE"] == "opensource") { openSource = true; @@ -3828,7 +3819,7 @@ void Configure::readLicense() #ifdef COMMERCIAL_VERSION else { Tools::checkLicense(dictionary, licenseInfo, firstLicensePath()); - if (dictionary["DONE"] != "error" && dictionary["BUILDNOKIA"] != "yes") { + if (dictionary["DONE"] != "error") { // give the user some feedback, and prompt for license acceptance cout << endl << "This is the " << dictionary["PLATFORM NAME"] << " " << dictionary["EDITION"] << " Edition."<< endl << endl; if (!showLicense(dictionary["LICENSE FILE"])) { -- cgit v1.2.3 From 08863b6fdaa8383e2274826db3ec42c4d4f11576 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C4=99drzej=20Nowacki?= Date: Tue, 29 Nov 2011 15:42:33 +0100 Subject: Refactor QVariant handlers. QVariant implementation is based on delegation to a handler. The handler has rather simple construction, it is a set of function that implements a switch statement over known types and redirects calls to a right method of an encapsulated types instance. Unfortunately after qt modularization project, it is not easy to use types directly from different modules, as they can be undefined or completely unaccessible. Which means that each module has to implement own handler to cooperate correctly with QVariant. We can suspect that list of modules known to QVariant will grow and it is not limited to GUI, Widgets and Core, therefore it would be nice to have an unified, from performance and source code point of view, way of working with handlers. This patch is an attempt to cleanup handlers. Keynotes: - Each handler is working only on types defined in the same module - Core handler implements handling of primitive types too - Custom types have an own handler - Each handler is independent which means that dispatch between handlers is done on QVariant level - Handlers might be registered / unregistered using same interface Change-Id: Ib096df65e2c4ce464bc7a684aade5af7d1264c24 Reviewed-by: Olivier Goffart --- src/corelib/kernel/qmetatype_p.h | 34 ++- src/corelib/kernel/qvariant.cpp | 261 +++++++++++++++++---- src/corelib/kernel/qvariant.h | 19 +- src/corelib/kernel/qvariant_p.h | 54 +---- src/gui/kernel/qguivariant.cpp | 72 ++---- src/widgets/kernel/qwidgetsvariant.cpp | 27 ++- .../auto/corelib/kernel/qvariant/tst_qvariant.cpp | 30 ++- 7 files changed, 321 insertions(+), 176 deletions(-) diff --git a/src/corelib/kernel/qmetatype_p.h b/src/corelib/kernel/qmetatype_p.h index 46c5697678..391f37c93d 100644 --- a/src/corelib/kernel/qmetatype_p.h +++ b/src/corelib/kernel/qmetatype_p.h @@ -57,11 +57,22 @@ QT_BEGIN_NAMESPACE -enum { /* TYPEMODULEINFO flags */ - Q_CORE_TYPE = 1, - Q_GUI_TYPE = 2, - Q_WIDGET_TYPE = 3 -}; +namespace QModulesPrivate { +enum Names { Core, Gui, Widgets, Unknown, ModulesCount /* ModulesCount has to be at the end */ }; + +static inline int moduleForType(const int typeId) +{ + if (typeId <= QMetaType::LastCoreType) + return Core; + if (typeId <= QMetaType::LastGuiType) + return Gui; + if (typeId <= QMetaType::LastWidgetsType) + return Widgets; + if (typeId <= QMetaType::LastCoreExtType) + return Core; + return Unknown; +} +} template class QTypeModuleInfo @@ -73,7 +84,6 @@ public: IsGui = false, IsUnknown = !IsCore }; - static inline int module() { return IsCore ? Q_CORE_TYPE : 0; } }; #define QT_ASSIGN_TYPE_TO_MODULE(TYPE, MODULE) \ @@ -82,9 +92,9 @@ class QTypeModuleInfo \ { \ public: \ enum Module { \ - IsCore = (((MODULE) == (Q_CORE_TYPE))), \ - IsWidget = (((MODULE) == (Q_WIDGET_TYPE))), \ - IsGui = (((MODULE) == (Q_GUI_TYPE))), \ + IsCore = (((MODULE) == (QModulesPrivate::Core))), \ + IsWidget = (((MODULE) == (QModulesPrivate::Widgets))), \ + IsGui = (((MODULE) == (QModulesPrivate::Gui))), \ IsUnknown = !(IsCore || IsWidget || IsGui) \ }; \ static inline int module() { return MODULE; } \ @@ -96,11 +106,11 @@ public: \ #define QT_DECLARE_CORE_MODULE_TYPES_ITER(TypeName, TypeId, Name) \ - QT_ASSIGN_TYPE_TO_MODULE(Name, Q_CORE_TYPE); + QT_ASSIGN_TYPE_TO_MODULE(Name, QModulesPrivate::Core); #define QT_DECLARE_GUI_MODULE_TYPES_ITER(TypeName, TypeId, Name) \ - QT_ASSIGN_TYPE_TO_MODULE(Name, Q_GUI_TYPE); + QT_ASSIGN_TYPE_TO_MODULE(Name, QModulesPrivate::Gui); #define QT_DECLARE_WIDGETS_MODULE_TYPES_ITER(TypeName, TypeId, Name) \ - QT_ASSIGN_TYPE_TO_MODULE(Name, Q_WIDGET_TYPE); + QT_ASSIGN_TYPE_TO_MODULE(Name, QModulesPrivate::Widgets); QT_FOR_EACH_STATIC_CORE_CLASS(QT_DECLARE_CORE_MODULE_TYPES_ITER) QT_FOR_EACH_STATIC_CORE_TEMPLATE(QT_DECLARE_CORE_MODULE_TYPES_ITER) diff --git a/src/corelib/kernel/qvariant.cpp b/src/corelib/kernel/qvariant.cpp index 29717398a8..f898cc4823 100644 --- a/src/corelib/kernel/qvariant.cpp +++ b/src/corelib/kernel/qvariant.cpp @@ -73,6 +73,25 @@ QT_BEGIN_NAMESPACE # define FLT_DIG 6 #endif +namespace { +class HandlersManager +{ + static const QVariant::Handler *Handlers[QModulesPrivate::ModulesCount]; +public: + const QVariant::Handler *operator[] (const int typeId) const + { + return Handlers[QModulesPrivate::moduleForType(typeId)]; + } + + void registerHandler(const QModulesPrivate::Names name, const QVariant::Handler *handler) + { + Handlers[name] = handler; + } + + inline void unregisterHandler(const QModulesPrivate::Names name); +}; +} // namespace + namespace { template struct TypeDefiniton { @@ -100,7 +119,9 @@ struct CoreTypesFilter { static const bool IsAccepted = QTypeModuleInfo::IsCore && TypeDefiniton::IsAvailable; }; }; -} // namspace +} // annonymous used to hide TypeDefiniton + +namespace { // annonymous used to hide QVariant handlers static void construct(QVariant::Private *x, const void *copy) { @@ -813,13 +834,142 @@ const QVariant::Handler qt_kernel_variant_handler = { #endif }; +static void dummyConstruct(QVariant::Private *, const void *) { Q_ASSERT_X(false, "QVariant", "Trying to construct an unknown type"); } +static void dummyClear(QVariant::Private *) { Q_ASSERT_X(false, "QVariant", "Trying to clear an unknown type"); } +static bool dummyIsNull(const QVariant::Private *d) { Q_ASSERT_X(false, "QVariant::isNull", "Trying to call isNull on an unknown type"); return d->is_null; } +static bool dummyCompare(const QVariant::Private *, const QVariant::Private *) { Q_ASSERT_X(false, "QVariant", "Trying to compare an unknown types"); return false; } +static bool dummyConvert(const QVariant::Private *, QVariant::Type , void *, bool *) { Q_ASSERT_X(false, "QVariant", "Trying to convert an unknown type"); return false; } +#if !defined(QT_NO_DEBUG_STREAM) && !defined(Q_BROKEN_DEBUG_STREAM) +static void dummyStreamDebug(QDebug, const QVariant &) { Q_ASSERT_X(false, "QVariant", "Trying to convert an unknown type"); } +#endif +const QVariant::Handler qt_dummy_variant_handler = { + dummyConstruct, + dummyClear, + dummyIsNull, +#ifndef QT_NO_DATASTREAM + 0, + 0, +#endif + dummyCompare, + dummyConvert, + 0, +#if !defined(QT_NO_DEBUG_STREAM) && !defined(Q_BROKEN_DEBUG_STREAM) + dummyStreamDebug +#else + 0 +#endif +}; + +static void customConstruct(QVariant::Private *d, const void *copy) +{ + const uint size = QMetaType::sizeOf(d->type); + if (!size) { + d->type = QVariant::Invalid; + return; + } + + // this logic should match with QVariantIntegrator::CanUseInternalSpace + if (size <= sizeof(QVariant::Private::Data) + && (QMetaType::typeFlags(d->type) & QMetaType::MovableType)) { + QMetaType::construct(d->type, &d->data.ptr, copy); + d->is_shared = false; + } else { + void *ptr = QMetaType::create(d->type, copy); + d->is_shared = true; + d->data.shared = new QVariant::PrivateShared(ptr); + } +} + +static void customClear(QVariant::Private *d) +{ + if (!d->is_shared) { + QMetaType::destruct(d->type, &d->data.ptr); + } else { + QMetaType::destroy(d->type, d->data.shared->ptr); + delete d->data.shared; + } +} + +static bool customIsNull(const QVariant::Private *d) +{ + return d->is_null; +} + +static bool customCompare(const QVariant::Private *a, const QVariant::Private *b) +{ + const char *const typeName = QMetaType::typeName(a->type); + if (Q_UNLIKELY(!typeName) && Q_LIKELY(!QMetaType::isRegistered(a->type))) + qFatal("QVariant::compare: type %d unknown to QVariant.", a->type); + + const void *a_ptr = a->is_shared ? a->data.shared->ptr : &(a->data.ptr); + const void *b_ptr = b->is_shared ? b->data.shared->ptr : &(b->data.ptr); + + uint typeNameLen = qstrlen(typeName); + if (typeNameLen > 0 && typeName[typeNameLen - 1] == '*') + return *static_cast(a_ptr) == *static_cast(b_ptr); + + if (a->is_null && b->is_null) + return true; + + return !memcmp(a_ptr, b_ptr, QMetaType::sizeOf(a->type)); +} + +static bool customConvert(const QVariant::Private *, QVariant::Type, void *, bool *ok) +{ + if (ok) + *ok = false; + return false; +} + +#if !defined(QT_NO_DEBUG_STREAM) && !defined(Q_BROKEN_DEBUG_STREAM) +static void customStreamDebug(QDebug, const QVariant &) {} +#endif + +const QVariant::Handler qt_custom_variant_handler = { + customConstruct, + customClear, + customIsNull, +#ifndef QT_NO_DATASTREAM + 0, + 0, +#endif + customCompare, + customConvert, + 0, +#if !defined(QT_NO_DEBUG_STREAM) && !defined(Q_BROKEN_DEBUG_STREAM) + customStreamDebug +#else + 0 +#endif +}; + +} // annonymous used to hide QVariant handlers + +static HandlersManager handlerManager; +Q_STATIC_ASSERT_X(!QModulesPrivate::Core, "Initialization assumes that ModulesNames::Core is 0"); +const QVariant::Handler *HandlersManager::Handlers[QModulesPrivate::ModulesCount] + = { &qt_kernel_variant_handler, &qt_dummy_variant_handler, + &qt_dummy_variant_handler, &qt_custom_variant_handler }; + Q_CORE_EXPORT const QVariant::Handler *qcoreVariantHandler() { return &qt_kernel_variant_handler; } +inline void HandlersManager::unregisterHandler(const QModulesPrivate::Names name) +{ + Handlers[name] = &qt_dummy_variant_handler; +} -const QVariant::Handler *QVariant::handler = &qt_kernel_variant_handler; +Q_CORE_EXPORT void QVariantPrivate::registerHandler(const int /* Modules::Names */name, const QVariant::Handler *handler) +{ + handlerManager.registerHandler(static_cast(name), handler); +} + +Q_CORE_EXPORT void QVariantPrivate::unregisterHandler(const int /* Modules::Names */ name) +{ + handlerManager.unregisterHandler(static_cast(name)); +} /*! \class QVariant @@ -1018,7 +1168,7 @@ const QVariant::Handler *QVariant::handler = &qt_kernel_variant_handler; void QVariant::create(int type, const void *copy) { d.type = type; - handler->construct(&d, copy); + handlerManager[type]->construct(&d, copy); } /*! @@ -1035,7 +1185,7 @@ void QVariant::create(int type, const void *copy) QVariant::~QVariant() { if ((d.is_shared && !d.data.shared->ref.deref()) || (!d.is_shared && d.type > Char)) - handler->clear(&d); + handlerManager[d.type]->clear(&d); } /*! @@ -1051,7 +1201,7 @@ QVariant::QVariant(const QVariant &p) if (d.is_shared) { d.data.shared->ref.ref(); } else if (p.d.type > Char) { - handler->construct(&d, p.constData()); + handlerManager[d.type]->construct(&d, p.constData()); d.is_null = p.d.is_null; } } @@ -1435,7 +1585,7 @@ QVariant& QVariant::operator=(const QVariant &variant) d = variant.d; } else if (variant.d.type > Char) { d.type = variant.d.type; - handler->construct(&d, variant.constData()); + handlerManager[d.type]->construct(&d, variant.constData()); d.is_null = variant.d.is_null; } else { d = variant.d; @@ -1465,9 +1615,9 @@ void QVariant::detach() Private dd; dd.type = d.type; - handler->construct(&dd, constData()); + handlerManager[d.type]->construct(&dd, constData()); if (!d.data.shared->ref.deref()) - handler->clear(&d); + handlerManager[d.type]->clear(&d); d.data.shared = dd.data.shared; } @@ -1496,7 +1646,7 @@ const char *QVariant::typeName() const void QVariant::clear() { if ((d.is_shared && !d.data.shared->ref.deref()) || (!d.is_shared && d.type > Char)) - handler->clear(&d); + handlerManager[d.type]->clear(&d); d.type = Invalid; d.is_null = true; d.is_shared = false; @@ -1732,14 +1882,13 @@ QDataStream& operator<<(QDataStream &s, const QVariant::Type p) */ template -inline T qVariantToHelper(const QVariant::Private &d, QVariant::Type t, - const QVariant::Handler *handler, T * = 0) +inline T qVariantToHelper(const QVariant::Private &d, QVariant::Type t, const HandlersManager &handler) { if (d.type == t) return *v_cast(&d); T ret; - handler->convert(&d, t, &ret, 0); + handler[d.type]->convert(&d, t, &ret, 0); return ret; } @@ -1754,7 +1903,7 @@ inline T qVariantToHelper(const QVariant::Private &d, QVariant::Type t, */ QStringList QVariant::toStringList() const { - return qVariantToHelper(d, StringList, handler); + return qVariantToHelper(d, StringList, handlerManager); } /*! @@ -1767,7 +1916,7 @@ QStringList QVariant::toStringList() const */ QString QVariant::toString() const { - return qVariantToHelper(d, String, handler); + return qVariantToHelper(d, String, handlerManager); } /*! @@ -1778,7 +1927,7 @@ QString QVariant::toString() const */ QVariantMap QVariant::toMap() const { - return qVariantToHelper(d, Map, handler); + return qVariantToHelper(d, Map, handlerManager); } /*! @@ -1789,7 +1938,7 @@ QVariantMap QVariant::toMap() const */ QVariantHash QVariant::toHash() const { - return qVariantToHelper(d, Hash, handler); + return qVariantToHelper(d, Hash, handlerManager); } /*! @@ -1805,7 +1954,7 @@ QVariantHash QVariant::toHash() const */ QDate QVariant::toDate() const { - return qVariantToHelper(d, Date, handler); + return qVariantToHelper(d, Date, handlerManager); } /*! @@ -1821,7 +1970,7 @@ QDate QVariant::toDate() const */ QTime QVariant::toTime() const { - return qVariantToHelper(d, Time, handler); + return qVariantToHelper(d, Time, handlerManager); } /*! @@ -1838,7 +1987,7 @@ QTime QVariant::toTime() const */ QDateTime QVariant::toDateTime() const { - return qVariantToHelper(d, DateTime, handler); + return qVariantToHelper(d, DateTime, handlerManager); } /*! @@ -1853,7 +2002,7 @@ QDateTime QVariant::toDateTime() const #ifndef QT_BOOTSTRAPPED QEasingCurve QVariant::toEasingCurve() const { - return qVariantToHelper(d, EasingCurve, handler); + return qVariantToHelper(d, EasingCurve, handlerManager); } #endif @@ -1868,7 +2017,7 @@ QEasingCurve QVariant::toEasingCurve() const */ QByteArray QVariant::toByteArray() const { - return qVariantToHelper(d, ByteArray, handler); + return qVariantToHelper(d, ByteArray, handlerManager); } #ifndef QT_NO_GEOM_VARIANT @@ -1882,7 +2031,7 @@ QByteArray QVariant::toByteArray() const */ QPoint QVariant::toPoint() const { - return qVariantToHelper(d, Point, handler); + return qVariantToHelper(d, Point, handlerManager); } /*! @@ -1895,7 +2044,7 @@ QPoint QVariant::toPoint() const */ QRect QVariant::toRect() const { - return qVariantToHelper(d, Rect, handler); + return qVariantToHelper(d, Rect, handlerManager); } /*! @@ -1908,7 +2057,7 @@ QRect QVariant::toRect() const */ QSize QVariant::toSize() const { - return qVariantToHelper(d, Size, handler); + return qVariantToHelper(d, Size, handlerManager); } /*! @@ -1921,7 +2070,7 @@ QSize QVariant::toSize() const */ QSizeF QVariant::toSizeF() const { - return qVariantToHelper(d, SizeF, handler); + return qVariantToHelper(d, SizeF, handlerManager); } /*! @@ -1934,7 +2083,7 @@ QSizeF QVariant::toSizeF() const */ QRectF QVariant::toRectF() const { - return qVariantToHelper(d, RectF, handler); + return qVariantToHelper(d, RectF, handlerManager); } /*! @@ -1947,7 +2096,7 @@ QRectF QVariant::toRectF() const */ QLineF QVariant::toLineF() const { - return qVariantToHelper(d, LineF, handler); + return qVariantToHelper(d, LineF, handlerManager); } /*! @@ -1960,7 +2109,7 @@ QLineF QVariant::toLineF() const */ QLine QVariant::toLine() const { - return qVariantToHelper(d, Line, handler); + return qVariantToHelper(d, Line, handlerManager); } /*! @@ -1973,7 +2122,7 @@ QLine QVariant::toLine() const */ QPointF QVariant::toPointF() const { - return qVariantToHelper(d, PointF, handler); + return qVariantToHelper(d, PointF, handlerManager); } #endif // QT_NO_GEOM_VARIANT @@ -1988,7 +2137,7 @@ QPointF QVariant::toPointF() const */ QUrl QVariant::toUrl() const { - return qVariantToHelper(d, Url, handler); + return qVariantToHelper(d, Url, handlerManager); } /*! @@ -2001,7 +2150,7 @@ QUrl QVariant::toUrl() const */ QLocale QVariant::toLocale() const { - return qVariantToHelper(d, Locale, handler); + return qVariantToHelper(d, Locale, handlerManager); } /*! @@ -2016,7 +2165,7 @@ QLocale QVariant::toLocale() const #ifndef QT_NO_REGEXP QRegExp QVariant::toRegExp() const { - return qVariantToHelper(d, RegExp, handler); + return qVariantToHelper(d, RegExp, handlerManager); } #endif @@ -2030,7 +2179,7 @@ QRegExp QVariant::toRegExp() const */ QChar QVariant::toChar() const { - return qVariantToHelper(d, Char, handler); + return qVariantToHelper(d, Char, handlerManager); } /*! @@ -2041,12 +2190,12 @@ QChar QVariant::toChar() const */ QBitArray QVariant::toBitArray() const { - return qVariantToHelper(d, BitArray, handler); + return qVariantToHelper(d, BitArray, handlerManager); } template inline T qNumVariantToHelper(const QVariant::Private &d, - const QVariant::Handler *handler, bool *ok, const T& val) + const HandlersManager &handler, bool *ok, const T& val) { uint t = qMetaTypeId(); if (ok) @@ -2054,8 +2203,8 @@ inline T qNumVariantToHelper(const QVariant::Private &d, if (d.type == t) return val; - T ret; - if (!handler->convert(&d, QVariant::Type(t), &ret, ok) && ok) + T ret = 0; + if (!handler[d.type]->convert(&d, QVariant::Type(t), &ret, ok) && ok) *ok = false; return ret; } @@ -2077,7 +2226,7 @@ inline T qNumVariantToHelper(const QVariant::Private &d, */ int QVariant::toInt(bool *ok) const { - return qNumVariantToHelper(d, handler, ok, d.data.i); + return qNumVariantToHelper(d, handlerManager, ok, d.data.i); } /*! @@ -2097,7 +2246,7 @@ int QVariant::toInt(bool *ok) const */ uint QVariant::toUInt(bool *ok) const { - return qNumVariantToHelper(d, handler, ok, d.data.u); + return qNumVariantToHelper(d, handlerManager, ok, d.data.u); } /*! @@ -2112,7 +2261,7 @@ uint QVariant::toUInt(bool *ok) const */ qlonglong QVariant::toLongLong(bool *ok) const { - return qNumVariantToHelper(d, handler, ok, d.data.ll); + return qNumVariantToHelper(d, handlerManager, ok, d.data.ll); } /*! @@ -2128,7 +2277,7 @@ qlonglong QVariant::toLongLong(bool *ok) const */ qulonglong QVariant::toULongLong(bool *ok) const { - return qNumVariantToHelper(d, handler, ok, d.data.ull); + return qNumVariantToHelper(d, handlerManager, ok, d.data.ull); } /*! @@ -2148,7 +2297,7 @@ bool QVariant::toBool() const return d.data.b; bool res = false; - handler->convert(&d, Bool, &res, 0); + handlerManager[d.type]->convert(&d, Bool, &res, 0); return res; } @@ -2165,7 +2314,7 @@ bool QVariant::toBool() const */ double QVariant::toDouble(bool *ok) const { - return qNumVariantToHelper(d, handler, ok, d.data.d); + return qNumVariantToHelper(d, handlerManager, ok, d.data.d); } /*! @@ -2182,7 +2331,7 @@ double QVariant::toDouble(bool *ok) const */ float QVariant::toFloat(bool *ok) const { - return qNumVariantToHelper(d, handler, ok, d.data.f); + return qNumVariantToHelper(d, handlerManager, ok, d.data.f); } /*! @@ -2199,7 +2348,7 @@ float QVariant::toFloat(bool *ok) const */ qreal QVariant::toReal(bool *ok) const { - return qNumVariantToHelper(d, handler, ok, d.data.real); + return qNumVariantToHelper(d, handlerManager, ok, d.data.real); } /*! @@ -2210,7 +2359,7 @@ qreal QVariant::toReal(bool *ok) const */ QVariantList QVariant::toList() const { - return qVariantToHelper(d, List, handler); + return qVariantToHelper(d, List, handlerManager); } @@ -2418,12 +2567,24 @@ bool QVariant::convert(Type t) return false; bool isOk = true; - if (!handler->convert(&oldValue.d, t, data(), &isOk)) + if (!handlerManager[d.type]->convert(&oldValue.d, t, data(), &isOk)) isOk = false; d.is_null = !isOk; return isOk; } +/*! + \fn convert(const int type, void *ptr) const + \internal + Created for qvariant_cast() usage +*/ +bool QVariant::convert(const int type, void *ptr) const +{ + Q_ASSERT(type < int(QMetaType::User)); + return handlerManager[type]->convert(&d, QVariant::Type(type), ptr, 0); +} + + /*! \fn bool operator==(const QVariant &v1, const QVariant &v2) @@ -2490,7 +2651,7 @@ bool QVariant::cmp(const QVariant &v) const if (!v2.canConvert(Type(d.type)) || !v2.convert(Type(d.type))) return false; } - return handler->compare(&d, &v2.d); + return handlerManager[d.type]->compare(&d, &v2.d); } /*! \internal @@ -2520,7 +2681,7 @@ void* QVariant::data() */ bool QVariant::isNull() const { - return handler->isNull(&d); + return handlerManager[d.type]->isNull(&d); } #ifndef QT_NO_DEBUG_STREAM @@ -2528,7 +2689,7 @@ QDebug operator<<(QDebug dbg, const QVariant &v) { #ifndef Q_BROKEN_DEBUG_STREAM dbg.nospace() << "QVariant(" << v.typeName() << ", "; - QVariant::handler->debugStream(dbg, v); + handlerManager[v.d.type]->debugStream(dbg, v); dbg.nospace() << ')'; return dbg.space(); #else diff --git a/src/corelib/kernel/qvariant.h b/src/corelib/kernel/qvariant.h index 02458a07e0..9b477e5dd6 100644 --- a/src/corelib/kernel/qvariant.h +++ b/src/corelib/kernel/qvariant.h @@ -370,19 +370,21 @@ class Q_CORE_EXPORT QVariant { return !cmp(v); } protected: - friend inline bool qvariant_cast_helper(const QVariant &, QVariant::Type, void *); - friend void qRegisterGuiVariant(); - friend void qUnregisterGuiVariant(); friend inline bool operator==(const QVariant &, const QVariantComparisonHelper &); #ifndef QT_NO_DEBUG_STREAM friend Q_CORE_EXPORT QDebug operator<<(QDebug, const QVariant &); #endif Private d; - - static const Handler *handler; - +#ifndef Q_NO_TEMPLATE_FRIENDS + template + friend inline T qvariant_cast(const QVariant &); +private: +#else +public: +#endif void create(int type, const void *copy); bool cmp(const QVariant &other) const; + bool convert(const int t, void *ptr) const; private: // force compile error, prevent QVariant(bool) to be called @@ -396,9 +398,6 @@ public: inline DataPtr &data_ptr() { return d; } }; -inline bool qvariant_cast_helper(const QVariant &v, QVariant::Type tp, void *ptr) -{ return QVariant::handler->convert(&v.d, tp, ptr, 0); } - template inline QVariant qVariantFromValue(const T &t) { @@ -488,7 +487,7 @@ template inline T qvariant_cast(const QVariant &v) return *reinterpret_cast(v.constData()); if (vid < int(QMetaType::User)) { T t; - if (qvariant_cast_helper(v, QVariant::Type(vid), &t)) + if (v.convert(vid, &t)) return t; } return T(); diff --git a/src/corelib/kernel/qvariant_p.h b/src/corelib/kernel/qvariant_p.h index a90164fa71..0436e9fe29 100644 --- a/src/corelib/kernel/qvariant_p.h +++ b/src/corelib/kernel/qvariant_p.h @@ -58,8 +58,6 @@ #include #include -#include - #include "qmetatypeswitcher_p.h" QT_BEGIN_NAMESPACE @@ -172,24 +170,7 @@ class QVariantComparator { }; template struct FilteredComparator { - static bool compare(const QVariant::Private *m_a, const QVariant::Private *m_b) - { - const char *const typeName = QMetaType::typeName(m_a->type); - if (Q_UNLIKELY(!typeName) && Q_LIKELY(!QMetaType::isRegistered(m_a->type))) - qFatal("QVariant::compare: type %d unknown to QVariant.", m_a->type); - - const void *a_ptr = m_a->is_shared ? m_a->data.shared->ptr : &(m_a->data.ptr); - const void *b_ptr = m_b->is_shared ? m_b->data.shared->ptr : &(m_b->data.ptr); - - uint typeNameLen = qstrlen(typeName); - if (typeNameLen > 0 && typeName[typeNameLen - 1] == '*') - return *static_cast(a_ptr) == *static_cast(b_ptr); - - if (m_a->is_null && m_b->is_null) - return true; - - return !memcmp(a_ptr, b_ptr, QMetaType::sizeOf(m_a->type)); - } + static bool compare(const QVariant::Private *, const QVariant::Private *) { return false; } }; public: QVariantComparator(const QVariant::Private *a, const QVariant::Private *b) @@ -372,22 +353,8 @@ public: m_x->is_shared = false; return; } - const uint size = QMetaType::sizeOf(m_x->type); - if (!size) { - m_x->type = QVariant::Invalid; - return; - } - - // this logic should match with QVariantIntegrator::CanUseInternalSpace - if (size <= sizeof(QVariant::Private::Data) - && (QMetaType::typeFlags(m_x->type) & QMetaType::MovableType)) { - QMetaType::construct(m_x->type, &m_x->data.ptr, m_copy); - m_x->is_shared = false; - } else { - void *ptr = QMetaType::create(m_x->type, m_copy); - m_x->is_shared = true; - m_x->data.shared = new QVariant::PrivateShared(ptr); - } + qWarning("Trying to construct an instance of an invalid type, type id: %i", m_x->type); + m_x->type = QVariant::Invalid; } void delegate(const void*) @@ -436,13 +403,9 @@ public: void delegate(const QMetaTypeSwitcher::UnknownType*) { - // This is not a static type, so lets delegate everyting to QMetaType - if (!m_d->is_shared) { - QMetaType::destruct(m_d->type, &m_d->data.ptr); - } else { - QMetaType::destroy(m_d->type, m_d->data.shared->ptr); - delete m_d->data.shared; - } + if (m_d->type == QVariant::UserType) + return; + qWarning("Trying to destruct an instance of an invalid type, type id: %i", m_d->type); } // Ignore nonconstructible type void delegate(const void*) {} @@ -450,6 +413,11 @@ private: QVariant::Private *m_d; }; +namespace QVariantPrivate { +Q_CORE_EXPORT void registerHandler(const int /* Modules::Names */ name, const QVariant::Handler *handler); +Q_CORE_EXPORT void unregisterHandler(const int /* Modules::Names */ name); +} + QT_END_NAMESPACE #endif // QVARIANT_P_H diff --git a/src/gui/kernel/qguivariant.cpp b/src/gui/kernel/qguivariant.cpp index a7f2f83aab..45100131de 100644 --- a/src/gui/kernel/qguivariant.cpp +++ b/src/gui/kernel/qguivariant.cpp @@ -94,8 +94,6 @@ QT_BEGIN_NAMESPACE -Q_GUI_EXPORT const QVariant::Handler *qt_widgets_variant_handler = 0; - Q_CORE_EXPORT const QVariant::Handler *qcoreVariantHandler(); namespace { @@ -136,53 +134,35 @@ template<> struct TypeDefiniton { static const bool IsAvailable = fal template<> struct TypeDefiniton { static const bool IsAvailable = false; }; #endif -struct CoreAndGuiTypesFilter { +struct GuiTypesFilter { template struct Acceptor { - static const bool IsAccepted = (QTypeModuleInfo::IsCore || QTypeModuleInfo::IsGui) && TypeDefiniton::IsAvailable; + static const bool IsAccepted = QTypeModuleInfo::IsGui && TypeDefiniton::IsAvailable; }; }; -} // namespace +} // namespace used to hide TypeDefinition +namespace { static void construct(QVariant::Private *x, const void *copy) { const int type = x->type; - QVariantConstructor constructor(x, copy); - QMetaTypeSwitcher::switcher(constructor, type, 0); - - // FIXME This is an ugly hack if QVariantConstructor fails to build a value it constructs an invalid type - if (Q_UNLIKELY(x->type == QVariant::Invalid)) { - if (type == 62) { - // small 'trick' to let a QVariant(Qt::blue) create a variant - // of type QColor - // TODO Get rid of this hack. - x->type = QVariant::Color; - QColor color(*reinterpret_cast(copy)); - v_construct(x, &color); - return; - } - if (type == QVariant::Icon || type == QVariant::SizePolicy) { - // TODO we need to clean up variant handlers, so they are replacament, not extension - x->type = type; - if (qt_widgets_variant_handler) { - qt_widgets_variant_handler->construct(x, copy); - } - } + if (Q_UNLIKELY(type == 62)) { + // small 'trick' to let a QVariant(Qt::blue) create a variant + // of type QColor + // TODO Get rid of this hack. + x->type = QVariant::Color; + QColor color(*reinterpret_cast(copy)); + v_construct(x, &color); + return; } + QVariantConstructor constructor(x, copy); + QMetaTypeSwitcher::switcher(constructor, type, 0); } static void clear(QVariant::Private *d) { - const int type = d->type; - if (type == QVariant::Icon || type == QVariant::SizePolicy) { - // TODO we need to clean up variant handlers, so they are replacament, not extension - if (qt_widgets_variant_handler) { - qt_widgets_variant_handler->clear(d); - return; - } - } - QVariantDestructor destructor(d); - QMetaTypeSwitcher::switcher(destructor, type, 0); + QVariantDestructor destructor(d); + QMetaTypeSwitcher::switcher(destructor, d->type, 0); } // This class is a hack that customizes access to QPolygon @@ -200,7 +180,7 @@ public: }; static bool isNull(const QVariant::Private *d) { - QGuiVariantIsNull isNull(d); + QGuiVariantIsNull isNull(d); return QMetaTypeSwitcher::switcher(isNull, d->type, 0); } @@ -215,11 +195,6 @@ public: template bool delegate(const T *p) { - if (Q_UNLIKELY(Base::m_a->type == QVariant::Icon || Base::m_a->type == QVariant::SizePolicy)) { - // TODO we need to clean up variant handlers, so they are replacament, not extension - if (Q_LIKELY(qt_widgets_variant_handler)) - return qt_widgets_variant_handler->compare(Base::m_a, Base::m_b); - } return Base::delegate(p); } bool delegate(const QPixmap*) @@ -241,7 +216,7 @@ public: static bool compare(const QVariant::Private *a, const QVariant::Private *b) { - QGuiVariantComparator comparator(a, b); + QGuiVariantComparator comparator(a, b); return QMetaTypeSwitcher::switcher(comparator, a->type, 0); } @@ -474,8 +449,6 @@ const QVariant::Handler qt_gui_variant_handler = { #endif }; -extern Q_CORE_EXPORT const QMetaTypeInterface *qMetaTypeGuiHelper; - #define QT_IMPL_METATYPEINTERFACE_GUI_TYPES(MetaTypeName, MetaTypeId, RealName) \ QT_METATYPE_INTERFACE_INIT(RealName), @@ -484,19 +457,20 @@ static const QMetaTypeInterface qVariantGuiHelper[] = { }; #undef QT_IMPL_METATYPEINTERFACE_GUI_TYPES +} // namespace used to hide QVariant handler + +extern Q_CORE_EXPORT const QMetaTypeInterface *qMetaTypeGuiHelper; -static const QVariant::Handler *qt_guivariant_last_handler = 0; void qRegisterGuiVariant() { - qt_guivariant_last_handler = QVariant::handler; - QVariant::handler = &qt_gui_variant_handler; + QVariantPrivate::registerHandler(QModulesPrivate::Gui, &qt_gui_variant_handler); qMetaTypeGuiHelper = qVariantGuiHelper; } Q_CONSTRUCTOR_FUNCTION(qRegisterGuiVariant) void qUnregisterGuiVariant() { - QVariant::handler = qt_guivariant_last_handler; + QVariantPrivate::unregisterHandler(QModulesPrivate::Gui); qMetaTypeGuiHelper = 0; } Q_DESTRUCTOR_FUNCTION(qUnregisterGuiVariant) diff --git a/src/widgets/kernel/qwidgetsvariant.cpp b/src/widgets/kernel/qwidgetsvariant.cpp index 97a8238ca7..92c8d9e6c2 100644 --- a/src/widgets/kernel/qwidgetsvariant.cpp +++ b/src/widgets/kernel/qwidgetsvariant.cpp @@ -49,7 +49,7 @@ QT_BEGIN_NAMESPACE - +namespace { static void construct(QVariant::Private *x, const void *copy) { switch (x->type) { @@ -97,10 +97,8 @@ static bool isNull(const QVariant::Private *d) case QVariant::Icon: return v_cast(d)->isNull(); #endif - default: - Q_ASSERT(false); } - return true; + return false; } static bool compare(const QVariant::Private *a, const QVariant::Private *b) @@ -119,6 +117,15 @@ static bool compare(const QVariant::Private *a, const QVariant::Private *b) return false; } +static bool convert(const QVariant::Private *d, QVariant::Type type, void *result, bool *ok) +{ + Q_UNUSED(d); + Q_UNUSED(type); + Q_UNUSED(result); + if (ok) + *ok = false; + return false; +} static const QVariant::Handler widgets_handler = { construct, @@ -129,7 +136,7 @@ static const QVariant::Handler widgets_handler = { 0, #endif compare, - 0, + convert, 0, #if !defined(QT_NO_DEBUG_STREAM) && !defined(Q_BROKEN_DEBUG_STREAM) 0 @@ -138,8 +145,6 @@ static const QVariant::Handler widgets_handler = { #endif }; -extern Q_CORE_EXPORT const QMetaTypeInterface *qMetaTypeWidgetsHelper; - #define QT_IMPL_METATYPEINTERFACE_WIDGETS_TYPES(MetaTypeName, MetaTypeId, RealName) \ QT_METATYPE_INTERFACE_INIT(RealName), @@ -149,18 +154,20 @@ static const QMetaTypeInterface qVariantWidgetsHelper[] = { #undef QT_IMPL_METATYPEINTERFACE_WIDGETS_TYPES -extern Q_GUI_EXPORT const QVariant::Handler *qt_widgets_variant_handler; +} // namespace + +extern Q_CORE_EXPORT const QMetaTypeInterface *qMetaTypeWidgetsHelper; void qRegisterWidgetsVariant() { - qt_widgets_variant_handler = &widgets_handler; qMetaTypeWidgetsHelper = qVariantWidgetsHelper; + QVariantPrivate::registerHandler(QModulesPrivate::Widgets, &widgets_handler); } Q_CONSTRUCTOR_FUNCTION(qRegisterWidgetsVariant) void qUnregisterWidgetsVariant() { - qt_widgets_variant_handler = 0; + QVariantPrivate::unregisterHandler(QModulesPrivate::Widgets); qMetaTypeWidgetsHelper = 0; } Q_DESTRUCTOR_FUNCTION(qUnregisterWidgetsVariant) diff --git a/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp b/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp index 9404130d35..d61536160c 100644 --- a/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp +++ b/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp @@ -1376,8 +1376,29 @@ void tst_QVariant::quaternion() QMetaType::destroy(QVariant::Quaternion, pquaternion); } +struct CustomStreamableClass +{ + int i; + bool operator==(const CustomStreamableClass& other) const + { + return i == other.i; + } +}; +Q_DECLARE_METATYPE(CustomStreamableClass); + +QDataStream &operator<<(QDataStream &out, const CustomStreamableClass &myObj) +{ + return out << myObj.i; +} + +QDataStream &operator>>(QDataStream &in, CustomStreamableClass &myObj) +{ + return in >> myObj.i; +} + void tst_QVariant::writeToReadFromDataStream_data() { + qRegisterMetaTypeStreamOperators(); QTest::addColumn("writeVariant"); QTest::addColumn("isNull"); @@ -1484,6 +1505,8 @@ void tst_QVariant::writeToReadFromDataStream_data() QTest::newRow("QMetaType::Float invalid") << QVariant(QMetaType::Float, (void *) 0) << false; float f = 1.234f; QTest::newRow("QMetaType::Float") << QVariant(QMetaType::Float, &f) << false; + CustomStreamableClass custom = {123}; + QTest::newRow("Custom type") << QVariant::fromValue(custom) << false; } void tst_QVariant::writeToReadFromDataStream() @@ -1502,8 +1525,10 @@ void tst_QVariant::writeToReadFromDataStream() // Best way to confirm the readVariant contains the same data? // Since only a few won't match since the serial numbers are different // I won't bother adding another bool in the data test. - QVariant::Type writeType = writeVariant.type(); - if ( writeType != QVariant::Invalid && writeType != QVariant::Bitmap && writeType != QVariant::Pixmap + const int writeType = writeVariant.userType(); + if (writeType == qMetaTypeId()) + QCOMPARE(qvariant_cast(readVariant), qvariant_cast(writeVariant)); + else if ( writeType != QVariant::Invalid && writeType != QVariant::Bitmap && writeType != QVariant::Pixmap && writeType != QVariant::Image) { switch (writeType) { default: @@ -1563,6 +1588,7 @@ void tst_QVariant::writeToReadFromOldDataStream() void tst_QVariant::checkDataStream() { + QTest::ignoreMessage(QtWarningMsg, "Trying to construct an instance of an invalid type, type id: 46"); const QByteArray settingsHex("0000002effffffffff"); const QByteArray settings = QByteArray::fromHex(settingsHex); QDataStream in(settings); -- cgit v1.2.3 From bd525a64d5fb55d1c67fdecdad9ed920a3d83666 Mon Sep 17 00:00:00 2001 From: Simon Hausmann Date: Wed, 4 Jan 2012 13:04:58 +0100 Subject: Fix rare crashes in fontconfig fontdb due to uninitialized variable Initialize the out variable passed to FcPatternGetString to protect against the "failure" case. Otherwise the subsequent QString::fromUtf8 is called with an uninitialized pointer. Change-Id: I31b8b4c366f673609b26eca162334fd8bc9f25d2 Reviewed-by: Jiang Jiang --- src/platformsupport/fontdatabases/fontconfig/qfontconfigdatabase.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/platformsupport/fontdatabases/fontconfig/qfontconfigdatabase.cpp b/src/platformsupport/fontdatabases/fontconfig/qfontconfigdatabase.cpp index 0f4adca6f7..faa2522a89 100644 --- a/src/platformsupport/fontdatabases/fontconfig/qfontconfigdatabase.cpp +++ b/src/platformsupport/fontdatabases/fontconfig/qfontconfigdatabase.cpp @@ -724,7 +724,7 @@ QString QFontconfigDatabase::resolveFontFamilyAlias(const QString &family) const FcConfigSubstitute(0, pattern, FcMatchPattern); FcDefaultSubstitute(pattern); - FcChar8 *familyAfterSubstitution; + FcChar8 *familyAfterSubstitution = 0; FcPatternGetString(pattern, FC_FAMILY, 0, &familyAfterSubstitution); QString resolved = QString::fromUtf8((const char *) familyAfterSubstitution); FcPatternDestroy(pattern); -- cgit v1.2.3 From f821d6352e384a737c82a0db903104ec4f8611bd Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Tue, 20 Dec 2011 11:38:35 +0100 Subject: Don't release timer ids in event dispatcher code 3rdparty event dispatchers are impossible to write without using the internal API QAbstractEventDispatcherPrivate::releaseTimerId(). Fix this by having each QObject keep track of its own timer ids, and release them when they are no longer used. As a side effect, this makes the QObjectData::pendTimer bit unnecessary. This also removes the QObjectData::inThreadChangeEvent hack that the event dispatchers used to avoid releasing timer ids when moving timers to a new thread. QBasicTimer becomes even more low-level. It cannot use QObject::startTimer() anymore, since we do not have a way to call QObject::killTimer() from QBasicTimer::stop(). QBasicTimer uses the QAbstractEventDispatcher interface directly, and releases the timer id explicitly as well when stopping the timer. This change also fixes some rare timer id "leaks" when destroying or stopping timers after a thread has exited and destroyed its event dispatcher (the timer ids would never be released when no dispatcher exists). Globally destructed QObjects that have running timers may try to release their timer ids after the timer id freelist has been destroyed. This commit accomodates such objects by avoiding the null dereference in QAbstractEventDispatcherPrivate::releaseTimerId(). Change-Id: I2d7cd8221fae441f3cf02b6c0b4bc16063834d00 Reviewed-by: David Faure Reviewed-by: Denis Dzyubenko Reviewed-by: Thiago Macieira Reviewed-by: Robin Burchell --- src/corelib/kernel/qabstracteventdispatcher.cpp | 5 ++- src/corelib/kernel/qbasictimer.cpp | 26 ++++++++++++--- src/corelib/kernel/qeventdispatcher_win.cpp | 8 ++--- src/corelib/kernel/qeventdispatcher_win_p.h | 2 +- src/corelib/kernel/qobject.cpp | 39 +++++++++++++++------- src/corelib/kernel/qobject.h | 4 +-- src/corelib/kernel/qobject_p.h | 1 + src/corelib/kernel/qtimerinfo_unix.cpp | 10 ------ .../platforms/cocoa/qcocoaeventdispatcher.mm | 4 --- 9 files changed, 57 insertions(+), 42 deletions(-) diff --git a/src/corelib/kernel/qabstracteventdispatcher.cpp b/src/corelib/kernel/qabstracteventdispatcher.cpp index 910b2908f1..fae7eee4c3 100644 --- a/src/corelib/kernel/qabstracteventdispatcher.cpp +++ b/src/corelib/kernel/qabstracteventdispatcher.cpp @@ -96,7 +96,10 @@ int QAbstractEventDispatcherPrivate::allocateTimerId() void QAbstractEventDispatcherPrivate::releaseTimerId(int timerId) { - timerIdFreeList()->release(timerId); + // this function may be called by a global destructor after + // timerIdFreeList() has been destructed + if (QtTimerIdFreeList *fl = timerIdFreeList()) + fl->release(timerId); } /*! diff --git a/src/corelib/kernel/qbasictimer.cpp b/src/corelib/kernel/qbasictimer.cpp index d91c5a9ffe..acefcb88e4 100644 --- a/src/corelib/kernel/qbasictimer.cpp +++ b/src/corelib/kernel/qbasictimer.cpp @@ -41,6 +41,7 @@ #include "qbasictimer.h" #include "qabstracteventdispatcher.h" +#include "qabstracteventdispatcher_p.h" QT_BEGIN_NAMESPACE @@ -114,9 +115,16 @@ QT_BEGIN_NAMESPACE */ void QBasicTimer::start(int msec, QObject *obj) { - stop(); - if (obj) - id = obj->startTimer(msec); + QAbstractEventDispatcher *eventDispatcher = QAbstractEventDispatcher::instance(); + if (!eventDispatcher) + return; + if (id) { + eventDispatcher->unregisterTimer(id); + QAbstractEventDispatcherPrivate::releaseTimerId(id); + } + id = 0; + if (obj) + id = eventDispatcher->registerTimer(msec, Qt::CoarseTimer, obj); } /*! @@ -132,9 +140,16 @@ void QBasicTimer::start(int msec, QObject *obj) */ void QBasicTimer::start(int msec, Qt::TimerType timerType, QObject *obj) { - stop(); + QAbstractEventDispatcher *eventDispatcher = QAbstractEventDispatcher::instance(); + if (!eventDispatcher) + return; + if (id) { + eventDispatcher->unregisterTimer(id); + QAbstractEventDispatcherPrivate::releaseTimerId(id); + } + id = 0; if (obj) - id = obj->startTimer(msec, timerType); + id = eventDispatcher->registerTimer(msec, timerType, obj); } /*! @@ -148,6 +163,7 @@ void QBasicTimer::stop() QAbstractEventDispatcher *eventDispatcher = QAbstractEventDispatcher::instance(); if (eventDispatcher) eventDispatcher->unregisterTimer(id); + QAbstractEventDispatcherPrivate::releaseTimerId(id); } id = 0; } diff --git a/src/corelib/kernel/qeventdispatcher_win.cpp b/src/corelib/kernel/qeventdispatcher_win.cpp index 58a927969c..c2f33821b8 100644 --- a/src/corelib/kernel/qeventdispatcher_win.cpp +++ b/src/corelib/kernel/qeventdispatcher_win.cpp @@ -548,12 +548,8 @@ void QEventDispatcherWin32Private::registerTimer(WinTimerInfo *t) qErrnoWarning("QEventDispatcherWin32::registerTimer: Failed to create a timer"); } -void QEventDispatcherWin32Private::unregisterTimer(WinTimerInfo *t, bool closingDown) +void QEventDispatcherWin32Private::unregisterTimer(WinTimerInfo *t) { - // mark timer as unused - if (!QObjectPrivate::get(t->obj)->inThreadChangeEvent && !closingDown) - QAbstractEventDispatcherPrivate::releaseTimerId(t->timerId); - if (t->interval == 0) { QCoreApplicationPrivate::removePostedTimerEvent(t->dispatcher, t->timerId); } else if (t->fastTimerId != 0) { @@ -1051,7 +1047,7 @@ void QEventDispatcherWin32::closingDown() // clean up any timers for (int i = 0; i < d->timerVec.count(); ++i) - d->unregisterTimer(d->timerVec.at(i), true); + d->unregisterTimer(d->timerVec.at(i)); d->timerVec.clear(); d->timerDict.clear(); diff --git a/src/corelib/kernel/qeventdispatcher_win_p.h b/src/corelib/kernel/qeventdispatcher_win_p.h index 300449d6cf..62502f7f11 100644 --- a/src/corelib/kernel/qeventdispatcher_win_p.h +++ b/src/corelib/kernel/qeventdispatcher_win_p.h @@ -161,7 +161,7 @@ public: WinTimerVec timerVec; WinTimerDict timerDict; void registerTimer(WinTimerInfo *t); - void unregisterTimer(WinTimerInfo *t, bool closingDown = false); + void unregisterTimer(WinTimerInfo *t); void sendTimerEvent(int timerId); // socket notifiers diff --git a/src/corelib/kernel/qobject.cpp b/src/corelib/kernel/qobject.cpp index db2ab4218d..6efff619e8 100644 --- a/src/corelib/kernel/qobject.cpp +++ b/src/corelib/kernel/qobject.cpp @@ -44,6 +44,7 @@ #include "qmetaobject_p.h" #include "qabstracteventdispatcher.h" +#include "qabstracteventdispatcher_p.h" #include "qcoreapplication.h" #include "qcoreapplication_p.h" #include "qvariant.h" @@ -162,7 +163,6 @@ QObjectPrivate::QObjectPrivate(int version) q_ptr = 0; parent = 0; // no parent yet. It is set by setParent() isWidget = false; // assume not a widget object - pendTimer = false; // no timers yet blockSig = false; // not blocking signals wasDeleted = false; // double-delete catcher isDeletingChildren = false; // set by deleteChildren() @@ -171,17 +171,20 @@ QObjectPrivate::QObjectPrivate(int version) postedEvents = 0; extraData = 0; connectedSignals[0] = connectedSignals[1] = 0; - inThreadChangeEvent = false; metaObject = 0; isWindow = false; } QObjectPrivate::~QObjectPrivate() { - if (pendTimer) { + if (!runningTimers.isEmpty()) { // unregister pending timers if (threadData->eventDispatcher) threadData->eventDispatcher->unregisterTimers(q_ptr); + + // release the timer ids back to the pool + for (int i = 0; i < runningTimers.size(); ++i) + QAbstractEventDispatcherPrivate::releaseTimerId(runningTimers.at(i)); } if (postedEvents) @@ -1019,11 +1022,8 @@ bool QObject::event(QEvent *e) if (eventDispatcher) { QList timers = eventDispatcher->registeredTimers(this); if (!timers.isEmpty()) { - // set inThreadChangeEvent to true to tell the dispatcher not to release out timer ids - // back to the pool (since the timer ids are moving to a new thread). - d->inThreadChangeEvent = true; + // do not to release our timer ids back to the pool (since the timer ids are moving to a new thread). eventDispatcher->unregisterTimers(this); - d->inThreadChangeEvent = false; QMetaObject::invokeMethod(this, "_q_reregisterTimers", Qt::QueuedConnection, Q_ARG(void*, (new QList(timers)))); } @@ -1382,13 +1382,13 @@ int QObject::startTimer(int interval, Qt::TimerType timerType) return 0; } - d->pendTimer = true; // set timer flag - if (!d->threadData->eventDispatcher) { qWarning("QObject::startTimer: QTimer can only be used with threads started with QThread"); return 0; } - return d->threadData->eventDispatcher->registerTimer(interval, timerType, this); + int timerId = d->threadData->eventDispatcher->registerTimer(interval, timerType, this); + d->runningTimers.append(timerId); + return timerId; } /*! @@ -1403,8 +1403,23 @@ int QObject::startTimer(int interval, Qt::TimerType timerType) void QObject::killTimer(int id) { Q_D(QObject); - if (d->threadData->eventDispatcher) - d->threadData->eventDispatcher->unregisterTimer(id); + if (id) { + int at = d->runningTimers.indexOf(id); + if (at == -1) { + // timer isn't owned by this object + qWarning("QObject::killTimer(): Error: timer id %d is not valid for object %p (%s), timer has not been killed", + id, + this, + qPrintable(objectName())); + return; + } + + if (d->threadData->eventDispatcher) + d->threadData->eventDispatcher->unregisterTimer(id); + + d->runningTimers.remove(at); + QAbstractEventDispatcherPrivate::releaseTimerId(id); + } } diff --git a/src/corelib/kernel/qobject.h b/src/corelib/kernel/qobject.h index a5ac8feafd..f87309bb47 100644 --- a/src/corelib/kernel/qobject.h +++ b/src/corelib/kernel/qobject.h @@ -96,15 +96,13 @@ public: QObjectList children; uint isWidget : 1; - uint pendTimer : 1; uint blockSig : 1; uint wasDeleted : 1; uint isDeletingChildren : 1; uint sendChildEvents : 1; uint receiveChildEvents : 1; - uint inThreadChangeEvent : 1; uint isWindow : 1; //for QWindow - uint unused : 23; + uint unused : 25; int postedEvents; QMetaObject *metaObject; // assert dynamic }; diff --git a/src/corelib/kernel/qobject_p.h b/src/corelib/kernel/qobject_p.h index 882ec9b45e..84f362618e 100644 --- a/src/corelib/kernel/qobject_p.h +++ b/src/corelib/kernel/qobject_p.h @@ -198,6 +198,7 @@ public: Sender *currentSender; // object currently activating the object mutable quint32 connectedSignals[2]; + QVector runningTimers; QList > eventFilters; union { QObject *currentChildBeingDeleted; diff --git a/src/corelib/kernel/qtimerinfo_unix.cpp b/src/corelib/kernel/qtimerinfo_unix.cpp index 568f789700..4ea1b75c62 100644 --- a/src/corelib/kernel/qtimerinfo_unix.cpp +++ b/src/corelib/kernel/qtimerinfo_unix.cpp @@ -266,11 +266,6 @@ bool QTimerInfoList::unregisterTimer(int timerId) firstTimerInfo = 0; if (t->activateRef) *(t->activateRef) = 0; - - // release the timer id - if (!QObjectPrivate::get(t->obj)->inThreadChangeEvent) - QAbstractEventDispatcherPrivate::releaseTimerId(timerId); - delete t; return true; } @@ -292,11 +287,6 @@ bool QTimerInfoList::unregisterTimers(QObject *object) firstTimerInfo = 0; if (t->activateRef) *(t->activateRef) = 0; - - // release the timer id - if (!QObjectPrivate::get(t->obj)->inThreadChangeEvent) - QAbstractEventDispatcherPrivate::releaseTimerId(t->id); - delete t; // move back one so that we don't skip the new current item --i; diff --git a/src/plugins/platforms/cocoa/qcocoaeventdispatcher.mm b/src/plugins/platforms/cocoa/qcocoaeventdispatcher.mm index 1095d4b29a..35b6866a0a 100644 --- a/src/plugins/platforms/cocoa/qcocoaeventdispatcher.mm +++ b/src/plugins/platforms/cocoa/qcocoaeventdispatcher.mm @@ -190,8 +190,6 @@ bool QCocoaEventDispatcher::unregisterTimer(int identifier) if (timerInfo == 0) return false; - if (!QObjectPrivate::get(timerInfo->obj)->inThreadChangeEvent) - QAbstractEventDispatcherPrivate::releaseTimerId(identifier); CFRunLoopTimerInvalidate(timerInfo->runLoopTimer); CFRelease(timerInfo->runLoopTimer); delete timerInfo; @@ -217,8 +215,6 @@ bool QCocoaEventDispatcher::unregisterTimers(QObject *obj) if (timerInfo->obj != obj) { ++it; } else { - if (!QObjectPrivate::get(timerInfo->obj)->inThreadChangeEvent) - QAbstractEventDispatcherPrivate::releaseTimerId(timerInfo->id); CFRunLoopTimerInvalidate(timerInfo->runLoopTimer); CFRelease(timerInfo->runLoopTimer); delete timerInfo; -- cgit v1.2.3 From b49467220811059ea85f1a31eeecb6797dc753e2 Mon Sep 17 00:00:00 2001 From: "Jonas M. Gastal" Date: Tue, 27 Dec 2011 18:00:18 -0200 Subject: Emit error if trying to connect while socket is connected or connecting. This applies to both local and abstract sockets. Task-number: QTBUG-22450 Change-Id: I5c58d68da95ffb6bcde5be510853359b288e5984 Reviewed-by: Thiago Macieira Reviewed-by: Peter Hartmann --- src/network/socket/qabstractsocket.cpp | 5 +++++ src/network/socket/qabstractsocket.h | 1 + src/network/socket/qlocalsocket.cpp | 2 ++ src/network/socket/qlocalsocket.h | 3 ++- src/network/socket/qlocalsocket_tcp.cpp | 3 +++ src/network/socket/qlocalsocket_unix.cpp | 10 ++++++++-- src/network/socket/qlocalsocket_win.cpp | 5 ++++- 7 files changed, 25 insertions(+), 4 deletions(-) diff --git a/src/network/socket/qabstractsocket.cpp b/src/network/socket/qabstractsocket.cpp index f84153a7bd..b8e301523f 100644 --- a/src/network/socket/qabstractsocket.cpp +++ b/src/network/socket/qabstractsocket.cpp @@ -315,6 +315,8 @@ proxy) was not found. \value ProxyProtocolError The connection negotiation with the proxy server because the response from the proxy server could not be understood. + \value OperationError An operation was attempted while the socket was in a state that + did not permit it. \value UnknownSocketError An unidentified error occurred. \sa QAbstractSocket::error() @@ -1497,6 +1499,9 @@ void QAbstractSocket::connectToHostImplementation(const QString &hostName, quint if (d->state == ConnectedState || d->state == ConnectingState || d->state == ClosingState || d->state == HostLookupState) { qWarning("QAbstractSocket::connectToHost() called when already looking up or connecting/connected to \"%s\"", qPrintable(hostName)); + d->socketError = QAbstractSocket::OperationError; + setErrorString(QAbstractSocket::tr("Trying to connect while connection is in progress")); + emit error(d->socketError); return; } diff --git a/src/network/socket/qabstractsocket.h b/src/network/socket/qabstractsocket.h index e3c27e34b0..15e24de59c 100644 --- a/src/network/socket/qabstractsocket.h +++ b/src/network/socket/qabstractsocket.h @@ -97,6 +97,7 @@ public: ProxyConnectionTimeoutError, ProxyNotFoundError, ProxyProtocolError, + OperationError, UnknownSocketError = -1 }; diff --git a/src/network/socket/qlocalsocket.cpp b/src/network/socket/qlocalsocket.cpp index 219d2aa8ad..93c98b7ab6 100644 --- a/src/network/socket/qlocalsocket.cpp +++ b/src/network/socket/qlocalsocket.cpp @@ -419,6 +419,8 @@ bool QLocalSocket::isSequential() const \value ConnectionError An error occurred with the connection. \value UnsupportedSocketOperationError The requested socket operation is not supported by the local operating system. + \value OperationError An operation was attempted while the socket was in a state that + did not permit it. \value UnknownSocketError An unidentified error occurred. */ diff --git a/src/network/socket/qlocalsocket.h b/src/network/socket/qlocalsocket.h index 74c54bf873..4025f9b93d 100644 --- a/src/network/socket/qlocalsocket.h +++ b/src/network/socket/qlocalsocket.h @@ -72,7 +72,8 @@ public: DatagramTooLargeError = QAbstractSocket::DatagramTooLargeError, ConnectionError = QAbstractSocket::NetworkError, UnsupportedSocketOperationError = QAbstractSocket::UnsupportedSocketOperationError, - UnknownSocketError = QAbstractSocket::UnknownSocketError + UnknownSocketError = QAbstractSocket::UnknownSocketError, + OperationError = QAbstractSocket::OperationError }; enum LocalSocketState diff --git a/src/network/socket/qlocalsocket_tcp.cpp b/src/network/socket/qlocalsocket_tcp.cpp index 38d2b627b1..4585fddbc3 100644 --- a/src/network/socket/qlocalsocket_tcp.cpp +++ b/src/network/socket/qlocalsocket_tcp.cpp @@ -155,6 +155,9 @@ QString QLocalSocketPrivate::generateErrorString(QLocalSocket::LocalSocketError case QLocalSocket::UnsupportedSocketOperationError: errorString = QLocalSocket::tr("%1: The socket operation is not supported").arg(function); break; + case QLocalSocket::OperationError: + errorString = QLocalSocket::tr("%1: Operation not permitted when socket is in this state").arg(function); + break; case QLocalSocket::UnknownSocketError: default: errorString = QLocalSocket::tr("%1: Unknown error").arg(function); diff --git a/src/network/socket/qlocalsocket_unix.cpp b/src/network/socket/qlocalsocket_unix.cpp index 1bdf604eb1..ae8ec83474 100644 --- a/src/network/socket/qlocalsocket_unix.cpp +++ b/src/network/socket/qlocalsocket_unix.cpp @@ -162,6 +162,9 @@ QString QLocalSocketPrivate::generateErrorString(QLocalSocket::LocalSocketError case QLocalSocket::UnsupportedSocketOperationError: errorString = QLocalSocket::tr("%1: The socket operation is not supported").arg(function); break; + case QLocalSocket::OperationError: + errorString = QLocalSocket::tr("%1: Operation not permitted when socket is in this state").arg(function); + break; case QLocalSocket::UnknownSocketError: default: errorString = QLocalSocket::tr("%1: Unknown error %2").arg(function).arg(errno); @@ -221,9 +224,12 @@ void QLocalSocketPrivate::errorOccurred(QLocalSocket::LocalSocketError error, co void QLocalSocket::connectToServer(const QString &name, OpenMode openMode) { Q_D(QLocalSocket); - if (state() == ConnectedState - || state() == ConnectingState) + if (state() == ConnectedState || state() == ConnectingState) { + QString errorString = d->generateErrorString(QLocalSocket::OperationError, QLatin1String("QLocalSocket::connectToserver")); + setErrorString(errorString); + emit error(QLocalSocket::OperationError); return; + } d->errorString.clear(); d->unixSocket.setSocketState(QAbstractSocket::ConnectingState); diff --git a/src/network/socket/qlocalsocket_win.cpp b/src/network/socket/qlocalsocket_win.cpp index e049f68c2f..8b18c13d65 100644 --- a/src/network/socket/qlocalsocket_win.cpp +++ b/src/network/socket/qlocalsocket_win.cpp @@ -131,8 +131,11 @@ void QLocalSocketPrivate::destroyPipeHandles() void QLocalSocket::connectToServer(const QString &name, OpenMode openMode) { Q_D(QLocalSocket); - if (state() == ConnectedState || state() == ConnectingState) + if (state() == ConnectedState || state() == ConnectingState) { + setErrorString("Trying to connect while connection is in progress"); + emit error(QLocalSocket::OperationError); return; + } d->error = QLocalSocket::UnknownSocketError; d->errorString = QString(); -- cgit v1.2.3 From ecb57cfc32ebbc457fd5e58ae0efc4dcb9d4d3f8 Mon Sep 17 00:00:00 2001 From: Robin Burchell Date: Tue, 27 Dec 2011 22:30:05 +0100 Subject: Pass notification of failure of watches onto the caller. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This is particularly useful for situations where the user might really want to be notified about a failure, for instance, in a backup application. Empty paths are not treated as an error in calling, as the user code cannot really do anything sensible to handle this error, but empty paths should not be used. Change-Id: Iddb44fd39f4e3fac5c3f9f60fb7999e1833280a8 Reviewed-by: João Abecasis Reviewed-by: Denis Dzyubenko Reviewed-by: Bradley T. Hughes --- dist/changes-5.0.0 | 4 + src/corelib/io/qfilesystemwatcher.cpp | 99 ++++++++++++++++------ src/corelib/io/qfilesystemwatcher.h | 8 +- .../qfilesystemwatcher/tst_qfilesystemwatcher.cpp | 71 +++++++++------- 4 files changed, 121 insertions(+), 61 deletions(-) diff --git a/dist/changes-5.0.0 b/dist/changes-5.0.0 index 84add0dfcc..3dec253f59 100644 --- a/dist/changes-5.0.0 +++ b/dist/changes-5.0.0 @@ -170,6 +170,10 @@ QtCore * The default value of the property QSortFilterProxyModel::dynamicSortFilter was changed from false to true. +* QFileSystemWatcher is now able to return failure in case of errors whilst + altering the watchlist in both the singular and QStringList overloads of + addPath and removePath. + QtGui ----- * Accessibility has been refactored. The hierachy of accessible objects is implemented via diff --git a/src/corelib/io/qfilesystemwatcher.cpp b/src/corelib/io/qfilesystemwatcher.cpp index efa9029d56..29abf96af1 100644 --- a/src/corelib/io/qfilesystemwatcher.cpp +++ b/src/corelib/io/qfilesystemwatcher.cpp @@ -425,20 +425,28 @@ QFileSystemWatcher::~QFileSystemWatcher() otherwise the fileChanged() signal is emitted when \a path is modified, renamed or removed. - \note There is a system dependent limit to the number of files and - directories that can be monitored simultaneously. If this limit - has been reached, \a path will not be added to the file system - watcher, and a warning message will be printed to \e{stderr}. + If the watch was successful, true is returned. + + Reasons for a watch failure are generally system-dependent, but + may include the resource not existing, access failures, or the + total watch count limit, if the platform has one. + + \note There may be a system dependent limit to the number of + files and directories that can be monitored simultaneously. + If this limit is been reached, \a path will not be monitored, + and false is returned. \sa addPaths(), removePath() */ -void QFileSystemWatcher::addPath(const QString &path) +bool QFileSystemWatcher::addPath(const QString &path) { if (path.isEmpty()) { qWarning("QFileSystemWatcher::addPath: path is empty"); - return; + return true; } - addPaths(QStringList(path)); + + QStringList paths = addPaths(QStringList(path)); + return paths.isEmpty(); } /*! @@ -451,23 +459,37 @@ void QFileSystemWatcher::addPath(const QString &path) otherwise the fileChanged() signal is emitted when the path is modified, renamed, or removed. - \note There is a system dependent limit to the number of files and - directories that can be monitored simultaneously. If this limit - has been reached, the excess \a paths will not be added to the - file system watcher, and a warning message will be printed to - \e{stderr} for each path that could not be added. + The return value is a list of paths that could not be watched. + + Reasons for a watch failure are generally system-dependent, but + may include the resource not existing, access failures, or the + total watch count limit, if the platform has one. + + \note There may be a system dependent limit to the number of + files and directories that can be monitored simultaneously. + If this limit has been reached, the excess \a paths will not + be monitored, and they will be added to the returned QStringList. \sa addPath(), removePaths() */ -void QFileSystemWatcher::addPaths(const QStringList &paths) +QStringList QFileSystemWatcher::addPaths(const QStringList &paths) { Q_D(QFileSystemWatcher); - if (paths.isEmpty()) { + + QStringList p = paths; + QMutableListIterator it(p); + + while (it.hasNext()) { + const QString &path = it.next(); + if (path.isEmpty()) + it.remove(); + } + + if (p.isEmpty()) { qWarning("QFileSystemWatcher::addPaths: list is empty"); - return; + return QStringList(); } - QStringList p = paths; QFileSystemWatcherEngine *engine = 0; if(!objectName().startsWith(QLatin1String("_qt_autotest_force_engine_"))) { @@ -495,42 +517,65 @@ void QFileSystemWatcher::addPaths(const QStringList &paths) if(engine) p = engine->addPaths(p, &d->files, &d->directories); - if (!p.isEmpty()) - qWarning("QFileSystemWatcher: failed to add paths: %s", - qPrintable(p.join(QLatin1String(", ")))); + return p; } /*! Removes the specified \a path from the file system watcher. + If the watch is successfully removed, true is returned. + + Reasons for watch removal failing are generally system-dependent, + but may be due to the path having already been deleted, for example. + \sa removePaths(), addPath() */ -void QFileSystemWatcher::removePath(const QString &path) +bool QFileSystemWatcher::removePath(const QString &path) { if (path.isEmpty()) { qWarning("QFileSystemWatcher::removePath: path is empty"); - return; + return true; } - removePaths(QStringList(path)); + + QStringList paths = removePaths(QStringList(path)); + return paths.isEmpty(); } /*! Removes the specified \a paths from the file system watcher. + The return value is a list of paths which were not able to be + unwatched successfully. + + Reasons for watch removal failing are generally system-dependent, + but may be due to the path having already been deleted, for example. + \sa removePath(), addPaths() */ -void QFileSystemWatcher::removePaths(const QStringList &paths) +QStringList QFileSystemWatcher::removePaths(const QStringList &paths) { - if (paths.isEmpty()) { - qWarning("QFileSystemWatcher::removePaths: list is empty"); - return; - } Q_D(QFileSystemWatcher); + QStringList p = paths; + QMutableListIterator it(p); + + while (it.hasNext()) { + const QString &path = it.next(); + if (path.isEmpty()) + it.remove(); + } + + if (p.isEmpty()) { + qWarning("QFileSystemWatcher::removePaths: list is empty"); + return QStringList(); + } + if (d->native) p = d->native->removePaths(p, &d->files, &d->directories); if (d->poller) p = d->poller->removePaths(p, &d->files, &d->directories); + + return p; } /*! diff --git a/src/corelib/io/qfilesystemwatcher.h b/src/corelib/io/qfilesystemwatcher.h index 763c8de0d6..a6954850f0 100644 --- a/src/corelib/io/qfilesystemwatcher.h +++ b/src/corelib/io/qfilesystemwatcher.h @@ -64,10 +64,10 @@ public: QFileSystemWatcher(const QStringList &paths, QObject *parent = 0); ~QFileSystemWatcher(); - void addPath(const QString &file); - void addPaths(const QStringList &files); - void removePath(const QString &file); - void removePaths(const QStringList &files); + bool addPath(const QString &file); + QStringList addPaths(const QStringList &files); + bool removePath(const QString &file); + QStringList removePaths(const QStringList &files); QStringList files() const; QStringList directories() const; diff --git a/tests/auto/corelib/io/qfilesystemwatcher/tst_qfilesystemwatcher.cpp b/tests/auto/corelib/io/qfilesystemwatcher/tst_qfilesystemwatcher.cpp index d0eb360d43..ad29c5769c 100644 --- a/tests/auto/corelib/io/qfilesystemwatcher/tst_qfilesystemwatcher.cpp +++ b/tests/auto/corelib/io/qfilesystemwatcher/tst_qfilesystemwatcher.cpp @@ -105,8 +105,7 @@ void tst_QFileSystemWatcher::basicTest() // create watcher, forcing it to use a specific backend QFileSystemWatcher watcher; watcher.setObjectName(QLatin1String("_qt_autotest_force_engine_") + backend); - watcher.removePath(testFile.fileName()); - watcher.addPath(testFile.fileName()); + QVERIFY(watcher.addPath(testFile.fileName())); QSignalSpy changedSpy(&watcher, SIGNAL(fileChanged(const QString &))); QVERIFY(changedSpy.isValid()); @@ -140,7 +139,7 @@ void tst_QFileSystemWatcher::basicTest() changedSpy.clear(); // remove the watch and modify the file, should not get a signal from the watcher - watcher.removePath(testFile.fileName()); + QVERIFY(watcher.removePath(testFile.fileName())); testFile.open(QIODevice::WriteOnly | QIODevice::Truncate); testFile.write(QByteArray("hello universe!")); testFile.close(); @@ -152,19 +151,19 @@ void tst_QFileSystemWatcher::basicTest() QCOMPARE(changedSpy.count(), 0); // readd the file watch with a relative path - watcher.addPath(testFile.fileName().prepend("./")); + QVERIFY(watcher.addPath(testFile.fileName().prepend("./"))); testFile.open(QIODevice::WriteOnly | QIODevice::Truncate); testFile.write(QByteArray("hello multiverse!")); testFile.close(); QTRY_VERIFY(changedSpy.count() > 0); - watcher.removePath(testFile.fileName().prepend("./")); + QVERIFY(watcher.removePath(testFile.fileName().prepend("./"))); changedSpy.clear(); // readd the file watch - watcher.addPath(testFile.fileName()); + QVERIFY(watcher.addPath(testFile.fileName())); // change the permissions, should get a signal from the watcher testFile.setPermissions(QFile::ReadOwner); @@ -179,7 +178,7 @@ void tst_QFileSystemWatcher::basicTest() changedSpy.clear(); // remove the watch and modify file permissions, should not get a signal from the watcher - watcher.removePath(testFile.fileName()); + QVERIFY(watcher.removePath(testFile.fileName())); testFile.setPermissions(QFile::ReadOwner | QFile::WriteOwner | QFile::ExeOther); // waiting max 5 seconds for notification for file modification to trigger @@ -189,7 +188,7 @@ void tst_QFileSystemWatcher::basicTest() QCOMPARE(changedSpy.count(), 0); // readd the file watch - watcher.addPath(testFile.fileName()); + QVERIFY(watcher.addPath(testFile.fileName())); // remove the file, should get a signal from the watcher QVERIFY(testFile.remove()); @@ -231,7 +230,7 @@ void tst_QFileSystemWatcher::watchDirectory() QFileSystemWatcher watcher; watcher.setObjectName(QLatin1String("_qt_autotest_force_engine_") + backend); - watcher.addPath(testDir.dirName()); + QVERIFY(watcher.addPath(testDir.dirName())); QSignalSpy changedSpy(&watcher, SIGNAL(directoryChanged(const QString &))); QVERIFY(changedSpy.isValid()); @@ -247,7 +246,7 @@ void tst_QFileSystemWatcher::watchDirectory() QString fileName; // remove the watch, should not get notification of a new file - watcher.removePath(testDir.dirName()); + QVERIFY(watcher.removePath(testDir.dirName())); QVERIFY(testFile.open(QIODevice::WriteOnly | QIODevice::Truncate)); testFile.close(); @@ -257,7 +256,7 @@ void tst_QFileSystemWatcher::watchDirectory() QCOMPARE(changedSpy.count(), 0); - watcher.addPath(testDir.dirName()); + QVERIFY(watcher.addPath(testDir.dirName())); // remove the file again, should get a signal from the watcher QVERIFY(testFile.remove()); @@ -300,30 +299,32 @@ void tst_QFileSystemWatcher::addPath() { QFileSystemWatcher watcher; QString home = QDir::homePath(); - watcher.addPath(home); + QVERIFY(watcher.addPath(home)); QCOMPARE(watcher.directories().count(), 1); QCOMPARE(watcher.directories().first(), home); - watcher.addPath(home); + + // second watch on an already-watched path should fail + QVERIFY(!watcher.addPath(home)); QCOMPARE(watcher.directories().count(), 1); // With empty string QTest::ignoreMessage(QtWarningMsg, "QFileSystemWatcher::addPath: path is empty"); - watcher.addPath(QString()); + QVERIFY(watcher.addPath(QString())); } void tst_QFileSystemWatcher::removePath() { QFileSystemWatcher watcher; QString home = QDir::homePath(); - watcher.addPath(home); - watcher.removePath(home); + QVERIFY(watcher.addPath(home)); + QVERIFY(watcher.removePath(home)); QCOMPARE(watcher.directories().count(), 0); - watcher.removePath(home); + QVERIFY(!watcher.removePath(home)); QCOMPARE(watcher.directories().count(), 0); // With empty string QTest::ignoreMessage(QtWarningMsg, "QFileSystemWatcher::removePath: path is empty"); - watcher.removePath(QString()); + QVERIFY(watcher.removePath(QString())); } void tst_QFileSystemWatcher::addPaths() @@ -331,13 +332,13 @@ void tst_QFileSystemWatcher::addPaths() QFileSystemWatcher watcher; QStringList paths; paths << QDir::homePath() << QDir::currentPath(); - watcher.addPaths(paths); + QCOMPARE(watcher.addPaths(paths), QStringList()); QCOMPARE(watcher.directories().count(), 2); // With empty list paths.clear(); QTest::ignoreMessage(QtWarningMsg, "QFileSystemWatcher::addPaths: list is empty"); - watcher.addPaths(paths); + QCOMPARE(watcher.addPaths(paths), QStringList()); } void tst_QFileSystemWatcher::removePaths() @@ -345,9 +346,9 @@ void tst_QFileSystemWatcher::removePaths() QFileSystemWatcher watcher; QStringList paths; paths << QDir::homePath() << QDir::currentPath(); - watcher.addPaths(paths); + QCOMPARE(watcher.addPaths(paths), QStringList()); QCOMPARE(watcher.directories().count(), 2); - watcher.removePaths(paths); + QCOMPARE(watcher.removePaths(paths), QStringList()); QCOMPARE(watcher.directories().count(), 0); //With empty list @@ -377,8 +378,8 @@ void tst_QFileSystemWatcher::watchFileAndItsDirectory() QFileSystemWatcher watcher; watcher.setObjectName(QLatin1String("_qt_autotest_force_engine_") + backend); - watcher.addPath(testDir.dirName()); - watcher.addPath(testFileName); + QVERIFY(watcher.addPath(testDir.dirName())); + QVERIFY(watcher.addPath(testFileName)); QSignalSpy fileChangedSpy(&watcher, SIGNAL(fileChanged(const QString &))); QSignalSpy dirChangedSpy(&watcher, SIGNAL(directoryChanged(const QString &))); @@ -433,7 +434,8 @@ void tst_QFileSystemWatcher::watchFileAndItsDirectory() fileChangedSpy.clear(); dirChangedSpy.clear(); - watcher.removePath(testFileName); + // removing a deleted file should fail + QVERIFY(!watcher.removePath(testFileName)); QFile::remove(secondFileName); timer.start(3000); @@ -458,8 +460,17 @@ void tst_QFileSystemWatcher::nonExistingFile() { // Don't crash... QFileSystemWatcher watcher; - watcher.addPath("file_that_does_not_exist.txt"); - QVERIFY(true); + QVERIFY(!watcher.addPath("file_that_does_not_exist.txt")); + + // Test that the paths returned in error aren't messed with + QCOMPARE(watcher.addPaths(QStringList() << "../..//./does-not-exist"), + QStringList() << "../..//./does-not-exist"); + + // empty path is not actually a failure + QCOMPARE(watcher.addPaths(QStringList() << QString()), QStringList()); + + // empty path is not actually a failure + QCOMPARE(watcher.removePaths(QStringList() << QString()), QStringList()); } void tst_QFileSystemWatcher::removeFileAndUnWatch() @@ -472,17 +483,17 @@ void tst_QFileSystemWatcher::removeFileAndUnWatch() testFile.open(QIODevice::WriteOnly); testFile.close(); } - watcher.addPath(filename); + QVERIFY(watcher.addPath(filename)); QFile::remove(filename); - watcher.removePath(filename); + QVERIFY(watcher.removePath(filename)); { QFile testFile(filename); testFile.open(QIODevice::WriteOnly); testFile.close(); } - watcher.addPath(filename); + QVERIFY(watcher.addPath(filename)); } class SomeSingleton : public QObject -- cgit v1.2.3 From 73187281c3f88b7a709713a2b09fb43871ea6b6d Mon Sep 17 00:00:00 2001 From: Simon Hausmann Date: Wed, 4 Jan 2012 16:32:55 +0100 Subject: Fix QPainter::drawText with complex brushes Commit d52fd497f60a3c4456994f4f10e9451d611c9ea4 introduced a call path to QPaintEngineEx::drawStaticTextItem, which has a bug in using the pen's color instead of the entire brush. This patch replaces the use of the color with the pen's brush(). Task-number: QTBUG-23450 Change-Id: Ieb3bf352c840ff0d3fb4ac678caf7b13f4f9a8f1 Reviewed-by: Eskil Abrahamsen Blomfeldt --- src/gui/painting/qpaintengineex.cpp | 2 +- tests/auto/gui/painting/qpainter/tst_qpainter.cpp | 24 +++++++++++++++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/src/gui/painting/qpaintengineex.cpp b/src/gui/painting/qpaintengineex.cpp index 5c39a5fca2..3f194334b2 100644 --- a/src/gui/painting/qpaintengineex.cpp +++ b/src/gui/painting/qpaintengineex.cpp @@ -1072,7 +1072,7 @@ void QPaintEngineEx::drawStaticTextItem(QStaticTextItem *staticTextItem) changedHints = true; } - fill(qtVectorPathForPath(path), s->pen.color()); + fill(qtVectorPathForPath(path), s->pen.brush()); if (changedHints) { s->renderHints = oldHints; diff --git a/tests/auto/gui/painting/qpainter/tst_qpainter.cpp b/tests/auto/gui/painting/qpainter/tst_qpainter.cpp index 4faecad104..8451ce0696 100644 --- a/tests/auto/gui/painting/qpainter/tst_qpainter.cpp +++ b/tests/auto/gui/painting/qpainter/tst_qpainter.cpp @@ -256,6 +256,8 @@ private slots: void drawTextOutsideGuiThread(); + void drawTextWithComplexBrush(); + private: void fillData(); void setPenColor(QPainter& p); @@ -4305,6 +4307,28 @@ void tst_QPainter::drawTextOutsideGuiThread() QCOMPARE(referenceRendering, t.rendering); } +void tst_QPainter::drawTextWithComplexBrush() +{ + QImage texture(10, 10, QImage::Format_ARGB32_Premultiplied); + texture.fill(Qt::red); + + QImage image(100, 100, QImage::Format_ARGB32_Premultiplied); + image.fill(Qt::white); + QPainter p(&image); + QFont f = p.font(); + f.setPixelSize(70); + p.setFont(f); + + QBrush brush(Qt::white); + brush.setTextureImage(texture); + p.setPen(QPen(brush, 2)); + + p.drawText(10, 10, "Hello World"); + + int paintedPixels = getPaintedPixels(image, Qt::white); + QVERIFY(paintedPixels > 0); +} + QTEST_MAIN(tst_QPainter) #include "tst_qpainter.moc" -- cgit v1.2.3 From 4b31b4e9e7c92665e035ed5042a786a61a3bfc9c Mon Sep 17 00:00:00 2001 From: Robin Burchell Date: Wed, 4 Jan 2012 21:44:35 +0100 Subject: Split polling watcher out to its own seperate files. Just helps maintain sanity and clarity a bit. Change-Id: Iaf00f9ecf2d959afcd8fe18bbca71a403cf9818d Reviewed-by: Denis Dzyubenko Reviewed-by: Bradley T. Hughes --- src/corelib/io/io.pri | 2 + src/corelib/io/qfilesystemwatcher.cpp | 180 +------------------------- src/corelib/io/qfilesystemwatcher_polling.cpp | 160 +++++++++++++++++++++++ src/corelib/io/qfilesystemwatcher_polling_p.h | 127 ++++++++++++++++++ 4 files changed, 291 insertions(+), 178 deletions(-) create mode 100644 src/corelib/io/qfilesystemwatcher_polling.cpp create mode 100644 src/corelib/io/qfilesystemwatcher_polling_p.h diff --git a/src/corelib/io/io.pri b/src/corelib/io/io.pri index 4eb8c76a8d..380714ea54 100644 --- a/src/corelib/io/io.pri +++ b/src/corelib/io/io.pri @@ -35,6 +35,7 @@ HEADERS += \ io/qfsfileengine_iterator_p.h \ io/qfilesystemwatcher.h \ io/qfilesystemwatcher_p.h \ + io/qfilesystemwatcher_polling_p.h \ io/qfilesystementry_p.h \ io/qfilesystemengine_p.h \ io/qfilesystemmetadata_p.h \ @@ -65,6 +66,7 @@ SOURCES += \ io/qfsfileengine.cpp \ io/qfsfileengine_iterator.cpp \ io/qfilesystemwatcher.cpp \ + io/qfilesystemwatcher_polling.cpp \ io/qfilesystementry.cpp \ io/qfilesystemengine.cpp diff --git a/src/corelib/io/qfilesystemwatcher.cpp b/src/corelib/io/qfilesystemwatcher.cpp index 29abf96af1..c5d49a8caa 100644 --- a/src/corelib/io/qfilesystemwatcher.cpp +++ b/src/corelib/io/qfilesystemwatcher.cpp @@ -52,6 +52,8 @@ #include #include + +#include "qfilesystemwatcher_polling_p.h" #if defined(Q_OS_WIN) # include "qfilesystemwatcher_win_p.h" #elif defined(Q_OS_LINUX) @@ -65,182 +67,6 @@ QT_BEGIN_NAMESPACE -enum { PollingInterval = 1000 }; - -class QPollingFileSystemWatcherEngine : public QFileSystemWatcherEngine -{ - Q_OBJECT - - class FileInfo - { - uint ownerId; - uint groupId; - QFile::Permissions permissions; - QDateTime lastModified; - QStringList entries; - - public: - FileInfo(const QFileInfo &fileInfo) - : ownerId(fileInfo.ownerId()), - groupId(fileInfo.groupId()), - permissions(fileInfo.permissions()), - lastModified(fileInfo.lastModified()) - { - if (fileInfo.isDir()) { - entries = fileInfo.absoluteDir().entryList(QDir::AllEntries); - } - } - FileInfo &operator=(const QFileInfo &fileInfo) - { - *this = FileInfo(fileInfo); - return *this; - } - - bool operator!=(const QFileInfo &fileInfo) const - { - if (fileInfo.isDir() && entries != fileInfo.absoluteDir().entryList(QDir::AllEntries)) - return true; - return (ownerId != fileInfo.ownerId() - || groupId != fileInfo.groupId() - || permissions != fileInfo.permissions() - || lastModified != fileInfo.lastModified()); - } - }; - - mutable QMutex mutex; - QHash files, directories; - -public: - QPollingFileSystemWatcherEngine(); - - void run(); - - QStringList addPaths(const QStringList &paths, QStringList *files, QStringList *directories); - QStringList removePaths(const QStringList &paths, QStringList *files, QStringList *directories); - - void stop(); - -private Q_SLOTS: - void timeout(); -}; - -QPollingFileSystemWatcherEngine::QPollingFileSystemWatcherEngine() -{ -#ifndef QT_NO_THREAD - moveToThread(this); -#endif -} - -void QPollingFileSystemWatcherEngine::run() -{ - QTimer timer; - connect(&timer, SIGNAL(timeout()), SLOT(timeout())); - timer.start(PollingInterval); - (void) exec(); -} - -QStringList QPollingFileSystemWatcherEngine::addPaths(const QStringList &paths, - QStringList *files, - QStringList *directories) -{ - QMutexLocker locker(&mutex); - QStringList p = paths; - QMutableListIterator it(p); - while (it.hasNext()) { - QString path = it.next(); - QFileInfo fi(path); - if (!fi.exists()) - continue; - if (fi.isDir()) { - if (!directories->contains(path)) - directories->append(path); - if (!path.endsWith(QLatin1Char('/'))) - fi = QFileInfo(path + QLatin1Char('/')); - this->directories.insert(path, fi); - } else { - if (!files->contains(path)) - files->append(path); - this->files.insert(path, fi); - } - it.remove(); - } - start(); - return p; -} - -QStringList QPollingFileSystemWatcherEngine::removePaths(const QStringList &paths, - QStringList *files, - QStringList *directories) -{ - QMutexLocker locker(&mutex); - QStringList p = paths; - QMutableListIterator it(p); - while (it.hasNext()) { - QString path = it.next(); - if (this->directories.remove(path)) { - directories->removeAll(path); - it.remove(); - } else if (this->files.remove(path)) { - files->removeAll(path); - it.remove(); - } - } - if (this->files.isEmpty() && this->directories.isEmpty()) { - locker.unlock(); - stop(); - wait(); - } - return p; -} - -void QPollingFileSystemWatcherEngine::stop() -{ - quit(); -} - -void QPollingFileSystemWatcherEngine::timeout() -{ - QMutexLocker locker(&mutex); - QMutableHashIterator fit(files); - while (fit.hasNext()) { - QHash::iterator x = fit.next(); - QString path = x.key(); - QFileInfo fi(path); - if (!fi.exists()) { - fit.remove(); - emit fileChanged(path, true); - } else if (x.value() != fi) { - x.value() = fi; - emit fileChanged(path, false); - } - } - QMutableHashIterator dit(directories); - while (dit.hasNext()) { - QHash::iterator x = dit.next(); - QString path = x.key(); - QFileInfo fi(path); - if (!path.endsWith(QLatin1Char('/'))) - fi = QFileInfo(path + QLatin1Char('/')); - if (!fi.exists()) { - dit.remove(); - emit directoryChanged(path, true); - } else if (x.value() != fi) { - fi.refresh(); - if (!fi.exists()) { - dit.remove(); - emit directoryChanged(path, true); - } else { - x.value() = fi; - emit directoryChanged(path, false); - } - } - - } -} - - - - QFileSystemWatcherEngine *QFileSystemWatcherPrivate::createNativeEngine() { #if defined(Q_OS_WIN) @@ -632,7 +458,5 @@ QT_END_NAMESPACE #include "moc_qfilesystemwatcher.cpp" -#include "qfilesystemwatcher.moc" - #endif // QT_NO_FILESYSTEMWATCHER diff --git a/src/corelib/io/qfilesystemwatcher_polling.cpp b/src/corelib/io/qfilesystemwatcher_polling.cpp new file mode 100644 index 0000000000..be5d855e40 --- /dev/null +++ b/src/corelib/io/qfilesystemwatcher_polling.cpp @@ -0,0 +1,160 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtCore module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include "qfilesystemwatcher_polling_p.h" +#include + +QT_BEGIN_NAMESPACE + +QPollingFileSystemWatcherEngine::QPollingFileSystemWatcherEngine() +{ +#ifndef QT_NO_THREAD + moveToThread(this); +#endif +} + +void QPollingFileSystemWatcherEngine::run() +{ + QTimer timer; + connect(&timer, SIGNAL(timeout()), SLOT(timeout())); + timer.start(PollingInterval); + (void) exec(); +} + +QStringList QPollingFileSystemWatcherEngine::addPaths(const QStringList &paths, + QStringList *files, + QStringList *directories) +{ + QMutexLocker locker(&mutex); + QStringList p = paths; + QMutableListIterator it(p); + while (it.hasNext()) { + QString path = it.next(); + QFileInfo fi(path); + if (!fi.exists()) + continue; + if (fi.isDir()) { + if (!directories->contains(path)) + directories->append(path); + if (!path.endsWith(QLatin1Char('/'))) + fi = QFileInfo(path + QLatin1Char('/')); + this->directories.insert(path, fi); + } else { + if (!files->contains(path)) + files->append(path); + this->files.insert(path, fi); + } + it.remove(); + } + start(); + return p; +} + +QStringList QPollingFileSystemWatcherEngine::removePaths(const QStringList &paths, + QStringList *files, + QStringList *directories) +{ + QMutexLocker locker(&mutex); + QStringList p = paths; + QMutableListIterator it(p); + while (it.hasNext()) { + QString path = it.next(); + if (this->directories.remove(path)) { + directories->removeAll(path); + it.remove(); + } else if (this->files.remove(path)) { + files->removeAll(path); + it.remove(); + } + } + if (this->files.isEmpty() && this->directories.isEmpty()) { + locker.unlock(); + stop(); + wait(); + } + return p; +} + +void QPollingFileSystemWatcherEngine::stop() +{ + quit(); +} + +void QPollingFileSystemWatcherEngine::timeout() +{ + QMutexLocker locker(&mutex); + QMutableHashIterator fit(files); + while (fit.hasNext()) { + QHash::iterator x = fit.next(); + QString path = x.key(); + QFileInfo fi(path); + if (!fi.exists()) { + fit.remove(); + emit fileChanged(path, true); + } else if (x.value() != fi) { + x.value() = fi; + emit fileChanged(path, false); + } + } + QMutableHashIterator dit(directories); + while (dit.hasNext()) { + QHash::iterator x = dit.next(); + QString path = x.key(); + QFileInfo fi(path); + if (!path.endsWith(QLatin1Char('/'))) + fi = QFileInfo(path + QLatin1Char('/')); + if (!fi.exists()) { + dit.remove(); + emit directoryChanged(path, true); + } else if (x.value() != fi) { + fi.refresh(); + if (!fi.exists()) { + dit.remove(); + emit directoryChanged(path, true); + } else { + x.value() = fi; + emit directoryChanged(path, false); + } + } + } +} + +QT_END_NAMESPACE diff --git a/src/corelib/io/qfilesystemwatcher_polling_p.h b/src/corelib/io/qfilesystemwatcher_polling_p.h new file mode 100644 index 0000000000..810b85a409 --- /dev/null +++ b/src/corelib/io/qfilesystemwatcher_polling_p.h @@ -0,0 +1,127 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtCore module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QFILESYSTEMWATCHER_POLLING_P_H +#define QFILESYSTEMWATCHER_POLLING_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of the QLibrary class. This header file may change from +// version to version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +#include "qfilesystemwatcher_p.h" + +QT_BEGIN_NAMESPACE + +enum { PollingInterval = 1000 }; + +class QPollingFileSystemWatcherEngine : public QFileSystemWatcherEngine +{ + Q_OBJECT + + class FileInfo + { + uint ownerId; + uint groupId; + QFile::Permissions permissions; + QDateTime lastModified; + QStringList entries; + + public: + FileInfo(const QFileInfo &fileInfo) + : ownerId(fileInfo.ownerId()), + groupId(fileInfo.groupId()), + permissions(fileInfo.permissions()), + lastModified(fileInfo.lastModified()) + { + if (fileInfo.isDir()) { + entries = fileInfo.absoluteDir().entryList(QDir::AllEntries); + } + } + FileInfo &operator=(const QFileInfo &fileInfo) + { + *this = FileInfo(fileInfo); + return *this; + } + + bool operator!=(const QFileInfo &fileInfo) const + { + if (fileInfo.isDir() && entries != fileInfo.absoluteDir().entryList(QDir::AllEntries)) + return true; + return (ownerId != fileInfo.ownerId() + || groupId != fileInfo.groupId() + || permissions != fileInfo.permissions() + || lastModified != fileInfo.lastModified()); + } + }; + + mutable QMutex mutex; + QHash files, directories; + +public: + QPollingFileSystemWatcherEngine(); + + void run(); + + QStringList addPaths(const QStringList &paths, QStringList *files, QStringList *directories); + QStringList removePaths(const QStringList &paths, QStringList *files, QStringList *directories); + + void stop(); + +private Q_SLOTS: + void timeout(); +}; + +QT_END_NAMESPACE + +#endif // QFILESYSTEMWATCHER_POLLING_P_H + -- cgit v1.2.3 From b237c6683be3be5054ca32e9bf434de92d787f2b Mon Sep 17 00:00:00 2001 From: Frederik Gladhorn Date: Thu, 1 Dec 2011 19:49:35 +0100 Subject: Remove old accessible itemviews code. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit We are moving to use IAccessible2. This code is dead. Change-Id: Ib1687faeafbec84cfa3b123d6f6398998033d342 Reviewed-by: Stephen Kelly Reviewed-by: Jan-Arve Sæther --- src/plugins/accessible/widgets/complexwidgets.cpp | 1372 --------------------- src/plugins/accessible/widgets/complexwidgets.h | 129 -- 2 files changed, 1501 deletions(-) diff --git a/src/plugins/accessible/widgets/complexwidgets.cpp b/src/plugins/accessible/widgets/complexwidgets.cpp index 5f62ab1506..12f2d3d62f 100644 --- a/src/plugins/accessible/widgets/complexwidgets.cpp +++ b/src/plugins/accessible/widgets/complexwidgets.cpp @@ -68,1378 +68,6 @@ QT_BEGIN_NAMESPACE QString Q_GUI_EXPORT qt_accStripAmp(const QString &text); -#if 0 -#ifndef QT_NO_ITEMVIEWS -/* -The MSDN article "Exposing Data Tables through Microsoft Active Accessibility" explains -how data tables should be exposed. Url: http://msdn2.microsoft.com/en-us/library/ms971325.aspx -Basically, the model is like this: - -ROLE_SYSTEM_TABLE - |- ROLE_SYSTEM_ROW - | |- ROLE_SYSTEM_ROWHEADER - | |- ROLE_SYSTEM_COLUMNHEADER - | |- ROLE_SYSTEM_COLUMNHEADER - | |- ROLE_SYSTEM_COLUMNHEADER - | '- .. - |- ROLE_SYSTEM_ROW - | |- ROLE_SYSTEM_ROWHEADER - | |- ROLE_SYSTEM_CELL - | |- ROLE_SYSTEM_CELL - | |- ROLE_SYSTEM_CELL - | '- .. - |- ROLE_SYSTEM_ROW - | |- ROLE_SYSTEM_ROWHEADER - | |- ROLE_SYSTEM_CELL - | |- ROLE_SYSTEM_CELL - | |- ROLE_SYSTEM_CELL - | '- .. - '- .. - -The headers of QTreeView is also represented like this. -*/ -QAccessibleItemRow::QAccessibleItemRow(QAbstractItemView *aView, const QModelIndex &index, bool isHeader) - : row(index), view(aView), m_header(isHeader) -{ -} - -QHeaderView *QAccessibleItemRow::horizontalHeader() const -{ - QHeaderView *header = 0; - if (m_header) { - if (false) { -#ifndef QT_NO_TABLEVIEW - } else if (const QTableView *tv = qobject_cast(view)) { - header = tv->horizontalHeader(); -#endif -#ifndef QT_NO_TREEVIEW - } else if (const QTreeView *tv = qobject_cast(view)) { - header = tv->header(); -#endif - } - } - return header; -} - -QHeaderView *QAccessibleItemRow::verticalHeader() const -{ - QHeaderView *header = 0; -#ifndef QT_NO_TABLEVIEW - if (const QTableView *tv = qobject_cast(view)) - header = tv->verticalHeader(); -#endif - return header; -} - -int QAccessibleItemRow::logicalFromChild(QHeaderView *header, int child) const -{ - int logical = -1; - if (header->sectionsHidden()) { - int kid = 0; - for (int i = 0; i < header->count(); ++i) { - if (!header->isSectionHidden(i)) - ++kid; - if (kid == child) { - logical = i; - break; - } - } - } else { - logical = child - 1; - } - return logical; -} - -QRect QAccessibleItemRow::rect(int child) const -{ - QRect r; - if (view && view->isVisible()) { - if (QHeaderView *header = horizontalHeader()) { - if (!child) { - r = header->rect(); - } else { - if (QHeaderView *vheader = verticalHeader()) { - if (child == 1) { - int w = vheader->width(); - int h = header->height(); - r.setRect(0, 0, w, h); - } - --child; - } - if (child) { - int logical = logicalFromChild(header, child); - int w = header->sectionSize(logical); - r.setRect(header->sectionViewportPosition(logical), 0, w, header->height()); - r.translate(header->mapTo(view, QPoint(0, 0))); - } - } - } else if (row.isValid()) { - if (!child) { - QModelIndex parent = row.parent(); - const int colCount = row.model()->columnCount(parent); - for (int i = 0; i < colCount; ++i) - r |= view->visualRect(row.model()->index(row.row(), i, parent)); - r.translate(view->viewport()->mapTo(view, QPoint(0,0))); - - if (const QHeaderView *vheader = verticalHeader()) { // include the section of the vertical header - QRect re; - int logicalRow = row.row(); - int h = vheader->sectionSize(logicalRow); - re.setRect(0, vheader->sectionViewportPosition(logicalRow), vheader->width(), h); - re.translate(vheader->mapTo(view, QPoint(0, 0))); - r |= re; - } - } else { - if (QHeaderView *vheader = verticalHeader()) { - if (child == 1) { - int logicalRow = row.row(); - int h = vheader->sectionSize(logicalRow); - r.setRect(0, vheader->sectionViewportPosition(logicalRow), vheader->width(), h); - r.translate(vheader->mapTo(view, QPoint(0, 0))); - } - --child; - } - if (child) { - r = view->visualRect(childIndex(child)); - r.translate(view->viewport()->mapTo(view, QPoint(0,0))); - } - } - } - } - if (!r.isNull()) - r.translate(view->mapToGlobal(QPoint(0, 0))); - - return r; -} - -int QAccessibleItemRow::treeLevel() const -{ - int level = 0; - QModelIndex idx = row; - while (idx.isValid()) { - idx = idx.parent(); - ++level; - } - return level; -} - -QString QAccessibleItemRow::text_helper(int child) const -{ - QString value; - if (m_header) { - if (!child) - return QString(); - if (verticalHeader()) { - if (child == 1) - return QString(); - --child; - } - QHeaderView *header = horizontalHeader(); - int logical = logicalFromChild(header, child); - value = view->model()->headerData(logical, Qt::Horizontal, Qt::AccessibleTextRole).toString(); - if (value.isEmpty()) - value = view->model()->headerData(logical, Qt::Horizontal).toString(); - return value; - } else { - if (!child) { // for one-column views (i.e. QListView) - if (children().count() >= 1) - child = 1; - else - return QString(); - } - if (verticalHeader()) { - if (child == 1) { - int logical = row.row(); - value = view->model()->headerData(logical, Qt::Vertical, Qt::AccessibleTextRole).toString(); - if (value.isEmpty()) - value = view->model()->headerData(logical, Qt::Vertical).toString(); - return value; - } else { - --child; - } - } - } - if (value.isEmpty()) { - QModelIndex idx = childIndex(child); - if (idx.isValid()) { - value = idx.model()->data(idx, Qt::AccessibleTextRole).toString(); - if (value.isEmpty()) - value = idx.model()->data(idx, Qt::DisplayRole).toString(); - } - } - return value; -} - -QString QAccessibleItemRow::text(QAccessible::Text t, int child) const -{ - QString value; - if (t == Name) { - value = text_helper(child); - } else if (t == Value) { -#ifndef QT_NO_TREEVIEW - if (qobject_cast(view)) { - if (child == 0) - value = QString::number(treeLevel()); - } else -#endif - { - value = text_helper(child); - } - } else if (t == Description) { -#ifndef QT_NO_TREEVIEW - if (child == 0 && qobject_cast(view)) { - // We store the tree coordinates of the current item in the description. - // This enables some screen readers to report where the focus is - // in a tree view. (works in JAWS). Also, Firefox does the same thing. - // For instance the description "L2, 4 of 25 with 24" means - // "L2": Tree Level 2 - // "4 of 25": We are item 4 out of in total 25 other siblings - // "with 24": We have 24 children. (JAWS does not read this number) - - // level - int level = treeLevel(); - - QAbstractItemModel *m = view->model(); - // totalSiblings and itemIndex - QModelIndex parent = row.parent(); - int rowCount = m->rowCount(parent); - int itemIndex = -1; - int totalSiblings = 0; - for (int i = 0 ; i < rowCount; ++i) { - QModelIndex sibling = row.sibling(i, 0); - if (!view->isIndexHidden(sibling)) - ++totalSiblings; - if (row == sibling) - itemIndex = totalSiblings; - } - int totalChildren = m->rowCount(row); // JAWS does not report child count, so we do - // this simple and efficient. - // (don't check if they are all visible). - value = QString::fromAscii("L%1, %2 of %3 with %4").arg(level).arg(itemIndex).arg(totalSiblings).arg(totalChildren); - } else -#endif // QT_NO_TREEVIEW - { - if (!m_header) { - if (child == 0 && children().count() >= 1) - child = 1; - if (verticalHeader()) { - if (child == 1) { - value = view->model()->headerData(row.row(), Qt::Vertical).toString(); - } - --child; - } - if (child) { - QModelIndex idx = childIndex(child); - value = idx.model()->data(idx, Qt::AccessibleDescriptionRole).toString(); - } - - } - } - } - return value; -} - -void QAccessibleItemRow::setText(QAccessible::Text t, int child, const QString &text) -{ - if (m_header) { - if (child) - view->model()->setHeaderData(child - 1, Qt::Horizontal, text); - // child == 0 means the cell to the left of the horizontal header, which is empty!? - } else { - if (!child) { - if (children().count() == 1) - child = 1; - else - return; - } - - if (verticalHeader()) { - if (child == 1) { - view->model()->setHeaderData(row.row(), Qt::Vertical, text); - return; - } - --child; - } - QModelIndex idx = childIndex(child); - if (!idx.isValid()) - return; - - switch (t) { - case Description: - const_cast(idx.model())->setData(idx, text, - Qt::AccessibleDescriptionRole); - break; - case Value: - const_cast(idx.model())->setData(idx, text, Qt::EditRole); - break; - default: - break; - } - } -} - -QModelIndex QAccessibleItemRow::childIndex(int child) const -{ - QList kids = children(); - Q_ASSERT(child >= 1 && child <= kids.count()); - return kids.at(child - 1); -} - -QList QAccessibleItemRow::children() const -{ - QList kids; - for (int i = 0; i < row.model()->columnCount(row.parent()); ++i) { - QModelIndex idx = row.model()->index(row.row(), i, row.parent()); - if (!view->isIndexHidden(idx)) { - kids << idx; - } - } - return kids; -} - -bool QAccessibleItemRow::isValid() const -{ - return m_header ? true : row.isValid(); -} - -QObject *QAccessibleItemRow::object() const -{ - return 0; -} - -int QAccessibleItemRow::childCount() const -{ - int count = 0; - if (QHeaderView *header = horizontalHeader()) { - count = header->count() - header->hiddenSectionCount(); - } else { - count = children().count(); - } -#ifndef QT_NO_TABLEVIEW - if (qobject_cast(view)) { - if (verticalHeader()) - ++count; - } -#endif - return count; -} - -int QAccessibleItemRow::indexOfChild(const QAccessibleInterface *iface) const -{ - if (!iface || iface->role() != Row) - return -1; - - //### meaningless code? - QList kids = children(); - QModelIndex idx = static_cast(iface)->row; - if (!idx.isValid()) - return -1; - return kids.indexOf(idx) + 1; -} - -QAccessible::Relation QAccessibleItemRow::relationTo(int child, const QAccessibleInterface *other, - int otherChild) const -{ - if (!child && !otherChild && other->object() == view) - return Child; - if (!child && !otherChild && other == this) - return Self; - if (!child && otherChild && other == this) - return Ancestor; - if (child && otherChild && other == this) - return Sibling; - return Unrelated; -} - -int QAccessibleItemRow::childAt(int x, int y) const -{ - if (!view || !view->isVisible()) - return -1; - - for (int i = childCount(); i >= 0; --i) { - if (rect(i).contains(x, y)) - return i; - } - return -1; -} - -QAbstractItemView::CursorAction QAccessibleItemRow::toCursorAction( - QAccessible::Relation rel) -{ - switch (rel) { - case QAccessible::Up: - return QAbstractItemView::MoveUp; - case QAccessible::Down: - return QAbstractItemView::MoveDown; - case QAccessible::Left: - return QAbstractItemView::MoveLeft; - case QAccessible::Right: - return QAbstractItemView::MoveRight; - default: - Q_ASSERT(false); - } - // should never be reached. - return QAbstractItemView::MoveRight; -} - -QAccessibleInterface *QAccessibleItemRow::parent() const -{ - return new QAccessibleItemView(view->viewport()); -} - -QAccessibleInterface *QAccessibleItemRow::child(int) const -{ - // FIXME? port to IA2 table2. - return 0; -} - -int QAccessibleItemRow::navigate(RelationFlag relation, int index, - QAccessibleInterface **iface) const -{ - *iface = 0; - if (!view) - return -1; - - switch (relation) { - case Ancestor: - *iface = parent(); - return *iface ? 0 : -1; - case Child: { - if (!index) - return -1; - if (index < 1 && index > childCount()) - return -1; - - return index;} - case Sibling: - if (index) { - QAccessibleInterface *ifaceParent = parent(); - if (ifaceParent) { - *iface = ifaceParent->child(index - 1); - delete ifaceParent; - return *iface ? 0 : -1; - } - } - return -1; - case Up: - case Down: - case Left: - case Right: { - // This is in the "not so nice" category. In order to find out which item - // is geometrically around, we have to set the current index, navigate - // and restore the index as well as the old selection - view->setUpdatesEnabled(false); - const QModelIndex oldIdx = view->currentIndex(); - QList kids = children(); - const QModelIndex currentIndex = index ? kids.at(index - 1) : QModelIndex(row); - const QItemSelection oldSelection = view->selectionModel()->selection(); - view->setCurrentIndex(currentIndex); - const QModelIndex idx = view->moveCursor(toCursorAction(relation), Qt::NoModifier); - view->setCurrentIndex(oldIdx); - view->selectionModel()->select(oldSelection, QItemSelectionModel::ClearAndSelect); - view->setUpdatesEnabled(true); - if (!idx.isValid()) - return -1; - - if (idx.parent() != row.parent() || idx.row() != row.row()) - *iface = new QAccessibleItemRow(view, idx); - return index ? kids.indexOf(idx) + 1 : 0; } - default: - break; - } - - return -1; -} - -QAccessible::Role QAccessibleItemRow::role(int child) const -{ - if (false) { -#ifndef QT_NO_TREEVIEW - } else if (qobject_cast(view)) { - if (horizontalHeader()) { - if (!child) - return Row; - return ColumnHeader; - } - return TreeItem; -#endif -#ifndef QT_NO_LISTVIEW - } else if (qobject_cast(view)) { - return ListItem; -#endif -#ifndef QT_NO_TABLEVIEW - } else if (qobject_cast(view)) { - if (!child) - return Row; - if (child == 1) { - if (verticalHeader()) - return RowHeader; - } - if (m_header) - return ColumnHeader; -#endif - } - return Cell; -} - -QAccessible::State QAccessibleItemRow::state(int child) const -{ - State st = Normal; - - if (!view) - return st; - - QAccessibleInterface *parentIface = parent(); - QRect globalRect; - if (parentIface) { - globalRect = parentIface->rect(0); - delete parentIface; - } - if (!globalRect.intersects(rect(child))) - st |= Invisible; - - if (!horizontalHeader()) { - if (!(st & Invisible)) { - if (child) { - if (QHeaderView *vheader = verticalHeader() ) { - if (child == 1) { - if (!vheader->isVisible()) - st |= Invisible; - } - --child; - } - if (child) { - QModelIndex idx = childIndex(child); - if (!idx.isValid()) - return st; - - if (view->selectionModel()->isSelected(idx)) - st |= Selected; - if (view->selectionModel()->currentIndex() == idx) - st |= Focused; - if (idx.model()->data(idx, Qt::CheckStateRole).toInt() == Qt::Checked) - st |= Checked; - - Qt::ItemFlags flags = idx.flags(); - if (flags & Qt::ItemIsSelectable) { - st |= Selectable; - if (view->selectionMode() == QAbstractItemView::MultiSelection) - st |= MultiSelectable; - if (view->selectionMode() == QAbstractItemView::ExtendedSelection) - st |= ExtSelectable; - } - } - } else { - Qt::ItemFlags flags = row.flags(); - if (flags & Qt::ItemIsSelectable) { - st |= Selectable; - st |= Focusable; - } - if (view->selectionModel()->isRowSelected(row.row(), row.parent())) - st |= Selected; - if (view->selectionModel()->currentIndex().row() == row.row()) - st |= Focused; - } - } - } - - return st; -} - -int QAccessibleItemRow::userActionCount(int) const -{ - return 0; -} - -QString QAccessibleItemRow::actionText(int, Text, int) const -{ - return QString(); -} - -static QItemSelection rowAt(const QModelIndex &idx) -{ - return QItemSelection(idx.sibling(idx.row(), 0), - idx.sibling(idx.row(), idx.model()->columnCount(idx.parent()))); -} - -bool QAccessibleItemRow::doAction(int action, int child, const QVariantList & /*params*/) -{ - if (!view) - return false; - - if (verticalHeader()) - --child; - - QModelIndex idx = child ? childIndex(child) : QModelIndex(row); - if (!idx.isValid()) - return false; - - QItemSelectionModel::SelectionFlags command = QItemSelectionModel::NoUpdate; - - switch (action) { - case SetFocus: - view->setCurrentIndex(idx); - return true; - case ExtendSelection: - if (!child) - return false; - view->selectionModel()->select(QItemSelection(view->currentIndex(), idx), - QItemSelectionModel::SelectCurrent); - return true; - case Select: - command = QItemSelectionModel::ClearAndSelect; - break; - case ClearSelection: - command = QItemSelectionModel::Clear; - break; - case RemoveSelection: - command = QItemSelectionModel::Deselect; - break; - case AddToSelection: - command = QItemSelectionModel::SelectCurrent; - break; - } - if (command == QItemSelectionModel::NoUpdate) - return false; - - if (child) - view->selectionModel()->select(idx, command); - else - view->selectionModel()->select(rowAt(row), command); - return true; -} - -class ModelIndexIterator -{ -public: - ModelIndexIterator(QAbstractItemView *view, const QModelIndex &start = QModelIndex()) : m_view(view) - { -#ifndef QT_NO_LISTVIEW - list = qobject_cast(m_view); -#endif -#ifndef QT_NO_TREEVIEW - tree = qobject_cast(m_view); -#endif -#ifndef QT_NO_TABLEVIEW - table = qobject_cast(m_view); -#endif - if (start.isValid()) { - m_current = start; - } else if (m_view && m_view->model()) { - m_current = view->rootIndex().isValid() ? - view->rootIndex().child(0,0) : view->model()->index(0, 0); - } - } - - bool next(int count = 1) { - for (int i = 0; i < count; ++i) { - do { - if (m_current.isValid()) { - const QAbstractItemModel *m = m_current.model(); -#ifndef QT_NO_TREEVIEW - if (tree && m_current.model()->hasChildren(m_current) && tree->isExpanded(m_current)) { - m_current = m_current.child(0, 0); - } else -#endif - { - int row = m_current.row(); - QModelIndex par = m_current.parent(); - - // Go up to the parent if we reach the end of the rows - // If m_curent becomses invalid, stop going up. - while (row + 1 >= m->rowCount(par)) { - m_current = par; - if (m_current.isValid()) { - row = m_current.row(); - par = m_current.parent(); - } else { - row = 0; - par = QModelIndex(); - break; - } - } - - if (m_current.isValid()) - m_current = m_current.sibling(row + 1, 0); - } - } - } while (isHidden()); - } - return m_current.isValid(); - } - - bool isHidden() const { - if (false) { -#ifndef QT_NO_LISTVIEW - } else if (list) { - return list->isRowHidden(m_current.row()); -#endif -#ifndef QT_NO_TREEVIEW - } else if (tree) { - return tree->isRowHidden(m_current.row(), m_current.parent()); -#endif -#ifndef QT_NO_TABLEVIEW - } else if (table) { - return table->isRowHidden(m_current.row()); -#endif - } - return false; - } - - QModelIndex current() const { - return m_current; - } - -private: - QModelIndex m_current; - QAbstractItemView *m_view; - -#ifndef QT_NO_TREEVIEW - QTreeView *tree; -#endif -#ifndef QT_NO_LISTVIEW - QListView *list; -#endif -#ifndef QT_NO_TABLEVIEW - QTableView *table; -#endif -}; - -QAccessibleItemView::QAccessibleItemView(QWidget *w) - : QAccessibleAbstractScrollArea(w->objectName() == QLatin1String("qt_scrollarea_viewport") ? w->parentWidget() : w) -{ - atVP = w->objectName() == QLatin1String("qt_scrollarea_viewport"); - -} - - -QHeaderView *QAccessibleItemView::horizontalHeader() const -{ - QHeaderView *header = 0; - if (false) { -#ifndef QT_NO_TABLEVIEW - } else if (const QTableView *tv = qobject_cast(itemView())) { - header = tv->horizontalHeader(); -#endif -#ifndef QT_NO_TREEVIEW - } else if (const QTreeView *tv = qobject_cast(itemView())) { - header = tv->header(); -#endif - } - return header; -} - -QHeaderView *QAccessibleItemView::verticalHeader() const -{ - QHeaderView *header = 0; - if (false) { -#ifndef QT_NO_TABLEVIEW - } else if (const QTableView *tv = qobject_cast(itemView())) { - header = tv->verticalHeader(); -#endif - } - return header; -} - - -bool QAccessibleItemView::isValidChildRole(QAccessible::Role role) const -{ - if (atViewport()) { - if (false) { -#ifndef QT_NO_TREEVIEW - } else if (qobject_cast(itemView())) { - return (role == TreeItem || role == Row); -#endif -#ifndef QT_NO_LISTVIEW - } else if (qobject_cast(itemView())) { - return (role == ListItem); -#endif - } - // TableView - return role == Row; - } else { - if (false) { -#ifndef QT_NO_TREEVIEW - } else if (qobject_cast(itemView())) { - return (role == Tree); -#endif -#ifndef QT_NO_LISTVIEW - } else if (qobject_cast(itemView())) { - return (role == List); -#endif - } - // TableView - return (role == Table); - } -} - -QObject *QAccessibleItemView::object() const -{ - QObject *view = QAccessibleAbstractScrollArea::object(); - Q_ASSERT(qobject_cast(view)); - if (atViewport()) - view = qobject_cast(view)->viewport(); - return view; -} - -QAbstractItemView *QAccessibleItemView::itemView() const -{ - return qobject_cast(QAccessibleAbstractScrollArea::object()); -} - -int QAccessibleItemView::indexOfChild(const QAccessibleInterface *iface) const -{ - if (atViewport()) { - if (!iface || !isValidChildRole(iface->role(0))) - return -1; - - int entry = -1; - // ### This will fail if a row is hidden. - const QAccessibleItemRow *ifRow = static_cast(iface); - if (ifRow->horizontalHeader()) - return 1; - - QModelIndex idx = ifRow->row; - if (!idx.isValid()) - return -1; - - entry = entryFromIndex(idx); - if (horizontalHeader()) - ++entry; - - return entry; - - } else { - return QAccessibleAbstractScrollArea::indexOfChild(iface); - } -} - -QModelIndex QAccessibleItemView::childIndex(int child) const -{ - if (!atViewport()) - return QModelIndex(); - ModelIndexIterator it(itemView()); - it.next(child - 1); - return it.current(); -} - -int QAccessibleItemView::entryFromIndex(const QModelIndex &index) const -{ - int entry = -1; - if (false) { -#ifndef QT_NO_TREEVIEW - } else if (QTreeView *tree = qobject_cast(itemView())) { - entry = tree->visualIndex(index) + 1; -#endif -#ifndef QT_NO_LISTVIEW - } else if (QListView *list = qobject_cast(itemView())) { - entry = list->visualIndex(index) + 1; -#endif -#ifndef QT_NO_TABLEVIEW - } else if (QTableView *table = qobject_cast(itemView())) { - entry = table->visualIndex(index) + 1; -#endif - } - return entry; -} - -int QAccessibleItemView::childCount() const -{ - if (atViewport()) { - if (itemView()->model() == 0) - return 0; - QAbstractItemModel *m = itemView()->model(); - QModelIndex idx = m->index(0,0); - if (!idx.isValid()) - return 0; - ModelIndexIterator it(itemView()); - int count = 1; - while (it.next()) { - ++count; - } - if (horizontalHeader()) - ++count; - - return count; - } else { - return QAccessibleAbstractScrollArea::childCount(); - } -} - -QString QAccessibleItemView::text(QAccessible::Text t, int child) const -{ - if (atViewport()) { - if (!child) - return QAccessibleAbstractScrollArea::text(t, child); - - QAccessibleItemRow item(itemView(), childIndex(child)); - if (item.isValid()) { - return item.text(t, 1); - } else { - return QString(); - } - } else { - return QAccessibleAbstractScrollArea::text(t, child); - } -} - -void QAccessibleItemView::setText(QAccessible::Text t, int child, const QString &text) -{ - if (atViewport()) { - if (!child) { - QAccessibleAbstractScrollArea::setText(t, child, text); - return; - } - - QAccessibleItemRow item(itemView(), childIndex(child)); - item.setText(t, 1, text); - } else { - QAccessibleAbstractScrollArea::setText(t, child, text); - } -} - -QRect QAccessibleItemView::rect(int childIndex) const -{ - if (atViewport()) { - QRect r; - if (!childIndex) { - // Make sure that the rect *include* the vertical and horizontal headers, while - // not including the potential vertical and horizontal scrollbars. - QAbstractItemView *w = itemView(); - - int vscrollWidth = 0; - const QScrollBar *sb = w->verticalScrollBar(); - if (sb && sb->isVisible()) - vscrollWidth = sb->width(); - - int hscrollHeight = 0; - sb = w->horizontalScrollBar(); - if (sb && sb->isVisible()) - hscrollHeight = sb->height(); - - QPoint globalPos = w->mapToGlobal(QPoint(0,0)); - r = w->rect().translated(globalPos); - if (w->isRightToLeft()) { - r.adjust(vscrollWidth, 0, 0, -hscrollHeight); - } else { - r.adjust(0, 0, -vscrollWidth, -hscrollHeight); - } - } else { - QAccessibleInterface *iface = child(childIndex - 1); - if (iface) { - r = iface->rect(0); - delete iface; - } - } - return r; - } else { - QRect r = QAccessibleAbstractScrollArea::rect(childIndex); - if (childIndex == 1) { - // include the potential vertical and horizontal headers - - const QHeaderView *header = verticalHeader(); - int headerWidth = (header && header->isVisible()) ? header->width() : 0; - header = horizontalHeader(); - int headerHeight= (header && header->isVisible()) ? header->height() : 0; - if (itemView()->isRightToLeft()) { - r.adjust(0, -headerHeight, headerWidth, 0); - } else { - r.adjust(-headerWidth, -headerHeight, 0, 0); - } - } - return r; - } -} - -int QAccessibleItemView::childAt(int x, int y) const -{ - if (atViewport()) { - QPoint p(x, y); - for (int i = childCount(); i >= 0; --i) { - if (rect(i).contains(p)) - return i; - } - return -1; - } else { - return QAccessibleAbstractScrollArea::childAt(x, y); - } -} - -QAccessible::Role QAccessibleItemView::role(int child) const -{ - if ((!atViewport() && child) || (atViewport() && child == 0)) { - QAbstractItemView *view = itemView(); -#ifndef QT_NO_TABLEVIEW - if (qobject_cast(view)) - return Table; -#endif -#ifndef QT_NO_LISTVIEW - if (qobject_cast(view)) - return List; -#endif - return Tree; - } - if (atViewport()) { - if (child) - return Row; - } - - return QAccessibleAbstractScrollArea::role(child); -} - -QAccessible::State QAccessibleItemView::state(int child) const -{ - State st = Normal; - - if (itemView() == 0) - return State(Unavailable); - - bool queryViewPort = (atViewport() && child == 0) || (!atViewport() && child == 1); - if (queryViewPort) { - if (itemView()->selectionMode() != QAbstractItemView::NoSelection) { - st |= Selectable; - st |= Focusable; - } - } else if (atViewport()) { // children of viewport - if (horizontalHeader()) - --child; - if (child) { - QAccessibleItemRow item(itemView(), childIndex(child)); - st |= item.state(0); - } - } else if (!atViewport() && child != 1) { - st = QAccessibleAbstractScrollArea::state(child); - } - return st; -} - -bool QAccessibleItemView::isValid() const -{ - if (atViewport()) - return QAccessibleWidget::isValid(); - else - return QAccessibleAbstractScrollArea::isValid(); -} - -int QAccessibleItemView::navigate(RelationFlag relation, int index, - QAccessibleInterface **iface) const -{ - if (atViewport()) { - if (relation == Ancestor && index == 1) { - *iface = new QAccessibleItemView(itemView()); - return 0; - } else if (relation == Child && index >= 1) { - if (horizontalHeader()) { - if (index == 1) { - *iface = new QAccessibleItemRow(itemView(), QModelIndex(), true); - return 0; - } - --index; - } - - //###JAS hidden rows.. - QModelIndex idx = childIndex(index); - if (idx.isValid()) { - *iface = new QAccessibleItemRow(itemView(), idx); - return 0; - } - } else if (relation == Sibling && index >= 1) { - QAccessibleInterface *parent = new QAccessibleItemView(itemView()); - return parent->navigate(Child, index, iface); - } - *iface = 0; - return -1; - } else { - return QAccessibleAbstractScrollArea::navigate(relation, index, iface); - } -} - -/* returns the model index for a given row and column */ -QModelIndex QAccessibleItemView::index(int row, int column) const -{ - return itemView()->model()->index(row, column); -} - -QAccessibleInterface *QAccessibleItemView::accessibleAt(int row, int column) -{ - QWidget *indexWidget = itemView()->indexWidget(index(row, column)); - return QAccessible::queryAccessibleInterface(indexWidget); -} - -/* We don't have a concept of a "caption" in Qt's standard widgets */ -QAccessibleInterface *QAccessibleItemView::caption() -{ - return 0; -} - -/* childIndex is row * columnCount + columnIndex */ -int QAccessibleItemView::childIndex(int rowIndex, int columnIndex) -{ - return rowIndex * itemView()->model()->columnCount() + columnIndex; -} - -/* Return the header data as column description */ -QString QAccessibleItemView::columnDescription(int column) -{ - return itemView()->model()->headerData(column, Qt::Horizontal).toString(); -} - -/* We don't support column spanning atm */ -int QAccessibleItemView::columnSpan(int /* row */, int /* column */) -{ - return 1; -} - -/* Return the horizontal header view */ -QAccessibleInterface *QAccessibleItemView::columnHeader() -{ -#ifndef QT_NO_TREEVIEW - if (QTreeView *tree = qobject_cast(itemView())) - return QAccessible::queryAccessibleInterface(tree->header()); -#endif -#ifndef QT_NO_TABLEVIEW - if (QTableView *table = qobject_cast(itemView())) - return QAccessible::queryAccessibleInterface(table->horizontalHeader()); -#endif - return 0; -} - -int QAccessibleItemView::columnIndex(int childIndex) -{ - int columnCount = itemView()->model()->columnCount(); - if (!columnCount) - return 0; - - return childIndex % columnCount; -} - -int QAccessibleItemView::columnCount() -{ - return itemView()->model()->columnCount(); -} - -int QAccessibleItemView::rowCount() -{ - return itemView()->model()->rowCount(); -} - -int QAccessibleItemView::selectedColumnCount() -{ - return itemView()->selectionModel()->selectedColumns().count(); -} - -int QAccessibleItemView::selectedRowCount() -{ - return itemView()->selectionModel()->selectedRows().count(); -} - -QString QAccessibleItemView::rowDescription(int row) -{ - return itemView()->model()->headerData(row, Qt::Vertical).toString(); -} - -/* We don't support row spanning */ -int QAccessibleItemView::rowSpan(int /*row*/, int /*column*/) -{ - return 1; -} - -QAccessibleInterface *QAccessibleItemView::rowHeader() -{ -#ifndef QT_NO_TABLEVIEW - if (QTableView *table = qobject_cast(itemView())) - return QAccessible::queryAccessibleInterface(table->verticalHeader()); -#endif - return 0; -} - -int QAccessibleItemView::rowIndex(int childIndex) -{ - int columnCount = itemView()->model()->columnCount(); - if (!columnCount) - return 0; - - return int(childIndex / columnCount); -} - -int QAccessibleItemView::selectedRows(int maxRows, QList *rows) -{ - Q_ASSERT(rows); - - const QModelIndexList selRows = itemView()->selectionModel()->selectedRows(); - int maxCount = qMin(selRows.count(), maxRows); - - for (int i = 0; i < maxCount; ++i) - rows->append(selRows.at(i).row()); - - return maxCount; -} - -int QAccessibleItemView::selectedColumns(int maxColumns, QList *columns) -{ - Q_ASSERT(columns); - - const QModelIndexList selColumns = itemView()->selectionModel()->selectedColumns(); - int maxCount = qMin(selColumns.count(), maxColumns); - - for (int i = 0; i < maxCount; ++i) - columns->append(selColumns.at(i).row()); - - return maxCount; -} - -/* Qt widgets don't have a concept of a summary */ -QAccessibleInterface *QAccessibleItemView::summary() -{ - return 0; -} - -bool QAccessibleItemView::isColumnSelected(int column) -{ - return itemView()->selectionModel()->isColumnSelected(column, QModelIndex()); -} - -bool QAccessibleItemView::isRowSelected(int row) -{ - return itemView()->selectionModel()->isRowSelected(row, QModelIndex()); -} - -bool QAccessibleItemView::isSelected(int row, int column) -{ - return itemView()->selectionModel()->isSelected(index(row, column)); -} - -void QAccessibleItemView::selectRow(int row) -{ - QItemSelectionModel *s = itemView()->selectionModel(); - s->select(index(row, 0), QItemSelectionModel::Select | QItemSelectionModel::Rows); -} - -void QAccessibleItemView::selectColumn(int column) -{ - QItemSelectionModel *s = itemView()->selectionModel(); - s->select(index(0, column), QItemSelectionModel::Select | QItemSelectionModel::Columns); -} - -void QAccessibleItemView::unselectRow(int row) -{ - QItemSelectionModel *s = itemView()->selectionModel(); - s->select(index(row, 0), QItemSelectionModel::Deselect | QItemSelectionModel::Rows); -} - -void QAccessibleItemView::unselectColumn(int column) -{ - QItemSelectionModel *s = itemView()->selectionModel(); - s->select(index(0, column), QItemSelectionModel::Deselect | QItemSelectionModel::Columns); -} - -void QAccessibleItemView::cellAtIndex(int index, int *row, int *column, int *rSpan, - int *cSpan, bool *isSelect) -{ - *row = rowIndex(index); - *column = columnIndex(index); - *rSpan = rowSpan(*row, *column); - *cSpan = columnSpan(*row, *column); - *isSelect = isSelected(*row, *column); -} - -/*! - \class QAccessibleHeader - \brief The QAccessibleHeader class implements the QAccessibleInterface for header widgets. - \internal - - \ingroup accessibility -*/ - -/*! - Constructs a QAccessibleHeader object for \a w. -*/ -QAccessibleHeader::QAccessibleHeader(QWidget *w) -: QAccessibleWidget(w) -{ - Q_ASSERT(header()); - addControllingSignal(QLatin1String("sectionClicked(int)")); -} - -/*! Returns the QHeaderView. */ -QHeaderView *QAccessibleHeader::header() const -{ - return qobject_cast(object()); -} - -QRect QAccessibleHeader::rect(int child) const -{ - if (!child) - return QAccessibleWidget::rect(0); - - QHeaderView *h = header(); - QPoint zero = h->mapToGlobal(QPoint(0, 0)); - int sectionSize = h->sectionSize(child - 1); - int sectionPos = h->sectionPosition(child - 1); - return h->orientation() == Qt::Horizontal - ? QRect(zero.x() + sectionPos, zero.y(), sectionSize, h->height()) - : QRect(zero.x(), zero.y() + sectionPos, h->width(), sectionSize); -} - -int QAccessibleHeader::childCount() const -{ - return header()->count(); -} - -QString QAccessibleHeader::text(QAccessible::Text t, int child) const -{ - QString str; - - if (child > 0 && child <= childCount()) { - switch (t) { - case Name: - str = header()->model()->headerData(child - 1, header()->orientation()).toString(); - break; - case Description: { - QAccessibleEvent event(QEvent::AccessibilityDescription, child); - if (QApplication::sendEvent(widget(), &event)) - str = event.value(); - break; } - case Help: { - QAccessibleEvent event(QEvent::AccessibilityHelp, child); - if (QApplication::sendEvent(widget(), &event)) - str = event.value(); - break; } - default: - break; - } - } - if (str.isEmpty()) - str = QAccessibleWidget::text(t, child); - return str; -} - -QAccessible::Role QAccessibleHeader::role(int) const -{ - return (header()->orientation() == Qt::Horizontal) ? ColumnHeader : RowHeader; -} - -QAccessible::State QAccessibleHeader::state(int child) const -{ - State state = QAccessibleWidget::state(child); - - if (child) { - int section = child - 1; - if (header()->isSectionHidden(section)) - state |= Invisible; - if (header()->resizeMode(section) != QHeaderView::Custom) - state |= Sizeable; - } else { - if (header()->isMovable()) - state |= Movable; - } - if (!header()->isClickable()) - state |= Unavailable; - return state; -} -#endif // QT_NO_ITEMVIEWS -#endif // 0 - #ifndef QT_NO_TABBAR /*! \class QAccessibleTabBar diff --git a/src/plugins/accessible/widgets/complexwidgets.h b/src/plugins/accessible/widgets/complexwidgets.h index 1a69178a87..90fc180313 100644 --- a/src/plugins/accessible/widgets/complexwidgets.h +++ b/src/plugins/accessible/widgets/complexwidgets.h @@ -96,137 +96,8 @@ class QAccessibleScrollArea : public QAccessibleAbstractScrollArea public: explicit QAccessibleScrollArea(QWidget *widget); }; - #endif // QT_NO_SCROLLAREA -#if 0 -#ifndef QT_NO_ITEMVIEWS -class QAccessibleHeader : public QAccessibleWidget -{ -public: - explicit QAccessibleHeader(QWidget *w); - - int childCount() const; - - QRect rect(int child) const; - QString text(QAccessible::Text t, int child) const; - Role role(int child) const; - State state(int child) const; - -protected: - QHeaderView *header() const; -}; - -class QAccessibleItemRow: public QAccessibleInterface -{ - friend class QAccessibleItemView; -public: - QAccessibleItemRow(QAbstractItemView *view, const QModelIndex &index = QModelIndex(), bool isHeader = false); - QRect rect(int child) const; - QString text(QAccessible::Text t, int child) const; - void setText(QAccessible::Text t, int child, const QString &text); - bool isValid() const; - QObject *object() const; - Role role(int child) const; - State state(int child) const; - - int childCount() const; - int indexOfChild(const QAccessibleInterface *) const; - QList children() const; - - Relation relationTo(int child, const QAccessibleInterface *other, int otherChild) const; - int childAt(int x, int y) const; - QAccessibleInterface *parent() const; - QAccessibleInterface *child(int index) const; - int navigate(QAccessible::RelationFlag relation, int index, QAccessibleInterface **iface) const; - - int userActionCount(int child) const; - QString actionText(int action, Text t, int child) const; - bool doAction(int action, int child, const QVariantList ¶ms = QVariantList()); - - QModelIndex childIndex(int child) const; - - QHeaderView *horizontalHeader() const; //used by QAccessibleItemView -private: - static QAbstractItemView::CursorAction toCursorAction(Relation rel); - int logicalFromChild(QHeaderView *header, int child) const; - int treeLevel() const; - QHeaderView *verticalHeader() const; - QString text_helper(int child) const; - - QPersistentModelIndex row; - QPointer view; - bool m_header; -}; - -class QAccessibleItemView: public QAccessibleAbstractScrollArea, public QAccessibleTableInterface -{ -public: - explicit QAccessibleItemView(QWidget *w); - - QObject *object() const; - Role role(int child) const; - State state(int child) const; - QRect rect(int child) const; - int childAt(int x, int y) const; - int childCount() const; - QString text(QAccessible::Text t, int child) const; - void setText(QAccessible::Text t, int child, const QString &text); - int indexOfChild(const QAccessibleInterface *iface) const; - - QModelIndex childIndex(int child) const; - int entryFromIndex(const QModelIndex &index) const; - bool isValid() const; - int navigate(QAccessible::RelationFlag relation, int index, QAccessibleInterface **iface) const; - - QAccessibleInterface *accessibleAt(int row, int column); - QAccessibleInterface *caption(); - int childIndex(int rowIndex, int columnIndex); - QString columnDescription(int column); - int columnSpan(int row, int column); - QAccessibleInterface *columnHeader(); - int columnIndex(int childIndex); - int columnCount(); - int rowCount(); - int selectedColumnCount(); - int selectedRowCount(); - QString rowDescription(int row); - int rowSpan(int row, int column); - QAccessibleInterface *rowHeader(); - int rowIndex(int childIndex); - int selectedRows(int maxRows, QList *rows); - int selectedColumns(int maxColumns, QList *columns); - QAccessibleInterface *summary(); - bool isColumnSelected(int column); - bool isRowSelected(int row); - bool isSelected(int row, int column); - void selectRow(int row); - void selectColumn(int column); - void unselectRow(int row); - void unselectColumn(int column); - void cellAtIndex(int index, int *row, int *column, int *rowSpan, - int *columnSpan, bool *isSelected); - - QHeaderView *horizontalHeader() const; - QHeaderView *verticalHeader() const; - bool isValidChildRole(QAccessible::Role role) const; - -protected: - QAbstractItemView *itemView() const; - QModelIndex index(int row, int column) const; - -private: - inline bool atViewport() const { - return atVP; - }; - QAccessible::Role expectedRoleOfChildren() const; - - bool atVP; -}; - -#endif -#endif - #ifndef QT_NO_TABBAR class QAccessibleTabBar : public QAccessibleWidget { -- cgit v1.2.3 From b0cf81684dd834d238b0233412fbfebd24fc5e27 Mon Sep 17 00:00:00 2001 From: Denis Dzyubenko Date: Mon, 2 Jan 2012 16:47:59 +0100 Subject: Removed obsolete function QUuid::operator QString() MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit It is a source incompatible change, but I believe it is safe to say that it is a small change, which doesn't affect many people. Change-Id: Iad11befe4cca60484cf4e04cd3049c93a4ea5faf Reviewed-by: Prasanth Ullattil Reviewed-by: João Abecasis Reviewed-by: Lars Knoll --- dist/changes-5.0.0 | 5 +++++ src/corelib/plugin/quuid.cpp | 9 --------- src/corelib/plugin/quuid.h | 3 --- 3 files changed, 5 insertions(+), 12 deletions(-) diff --git a/dist/changes-5.0.0 b/dist/changes-5.0.0 index 3dec253f59..71aa52c79f 100644 --- a/dist/changes-5.0.0 +++ b/dist/changes-5.0.0 @@ -136,6 +136,11 @@ information about a particular change. QAbstractEventDispatcher::registeredTimers() will need to be updated to pass 3 arguments to the TimerInfo constructor (instead of 2). +- QUuid + + * Removed implicit conversion operator QUuid::operator QString(), instead + QUuid::toString() function should be used. + **************************************************************************** * General * **************************************************************************** diff --git a/src/corelib/plugin/quuid.cpp b/src/corelib/plugin/quuid.cpp index 6fca1b6709..9f94d3bf6d 100644 --- a/src/corelib/plugin/quuid.cpp +++ b/src/corelib/plugin/quuid.cpp @@ -439,15 +439,6 @@ QUuid QUuid::fromRfc4122(const QByteArray &bytes) otherwise returns false. */ #ifndef QT_NO_QUUID_STRING -/*! - \fn QUuid::operator QString() const - \obsolete - - Returns the string representation of the uuid. - - \sa toString() -*/ - /*! Returns the string representation of this QUuid. The string is formatted as five hex fields separated by '-' and enclosed in diff --git a/src/corelib/plugin/quuid.h b/src/corelib/plugin/quuid.h index 4557199dc3..0c4f3037a7 100644 --- a/src/corelib/plugin/quuid.h +++ b/src/corelib/plugin/quuid.h @@ -108,9 +108,6 @@ struct Q_CORE_EXPORT QUuid QUuid(const QString &); QUuid(const char *); QString toString() const; -#if QT_DEPRECATED_SINCE(5,0) - QT_DEPRECATED operator QString() const { return toString(); } -#endif QUuid(const QByteArray &); QByteArray toByteArray() const; #endif -- cgit v1.2.3 From a793a56d70fac3adbf6bb38fad954a1e33701e4e Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Wed, 4 Jan 2012 15:20:18 +0100 Subject: QApplication: Remove unused variable causing a compiler warning. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I418ac16a2b3e119569512e38d3f00fb493b769d1 Reviewed-by: Samuel Rødal --- src/widgets/kernel/qapplication.cpp | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/widgets/kernel/qapplication.cpp b/src/widgets/kernel/qapplication.cpp index 414a520a53..3e61d77d72 100644 --- a/src/widgets/kernel/qapplication.cpp +++ b/src/widgets/kernel/qapplication.cpp @@ -2302,9 +2302,6 @@ void QApplication::setActiveWindow(QWidget* act) } } -#if !defined(Q_WS_MAC) - QWidget *previousActiveWindow = QApplicationPrivate::active_window; -#endif QApplicationPrivate::active_window = window; if (QApplicationPrivate::active_window) { -- cgit v1.2.3 From 8ed53babb9713103bdfd70659b147c89c711c6da Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Wed, 4 Jan 2012 09:42:07 +0100 Subject: Fix compiler warnings in QtNetwork. - Initialization order in QHttpNetworkConnectionChannel - Potential use of uninitialized value in QNetworkReplyDataImpl Change-Id: Ia405147ef81a3f1509149349d6b5b01bb078f853 Reviewed-by: Peter Hartmann Reviewed-by: Bradley T. Hughes --- src/network/access/qhttpnetworkconnectionchannel.cpp | 4 ++-- src/network/access/qnetworkreplydataimpl.cpp | 1 - 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/src/network/access/qhttpnetworkconnectionchannel.cpp b/src/network/access/qhttpnetworkconnectionchannel.cpp index 07e190a23c..1eabf3b99d 100644 --- a/src/network/access/qhttpnetworkconnectionchannel.cpp +++ b/src/network/access/qhttpnetworkconnectionchannel.cpp @@ -73,10 +73,10 @@ QHttpNetworkConnectionChannel::QHttpNetworkConnectionChannel() , lastStatus(0) , pendingEncrypt(false) , reconnectAttempts(2) - , authenticationCredentialsSent(false) - , proxyCredentialsSent(false) , authMethod(QAuthenticatorPrivate::None) , proxyAuthMethod(QAuthenticatorPrivate::None) + , authenticationCredentialsSent(false) + , proxyCredentialsSent(false) #ifndef QT_NO_OPENSSL , ignoreAllSslErrors(false) #endif diff --git a/src/network/access/qnetworkreplydataimpl.cpp b/src/network/access/qnetworkreplydataimpl.cpp index 285b41190d..46b41104eb 100644 --- a/src/network/access/qnetworkreplydataimpl.cpp +++ b/src/network/access/qnetworkreplydataimpl.cpp @@ -73,7 +73,6 @@ QNetworkReplyDataImpl::QNetworkReplyDataImpl(QObject *parent, const QNetworkRequ QString mimeType; QByteArray payload; if (qDecodeDataUrl(url, mimeType, payload)) { - QString &mimeType = mimeType; qint64 size = payload.size(); setHeader(QNetworkRequest::ContentTypeHeader, mimeType); setHeader(QNetworkRequest::ContentLengthHeader, size); -- cgit v1.2.3 From 07edbd23ed774c4f0331bb92d35add77fe91769c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20R=C3=B8dal?= Date: Wed, 4 Jan 2012 14:17:45 +0100 Subject: Introduced QOpenGLContext::aboutToBeDestroyed() signal. This signal can be used to clean up OpenGL resources in a safe way before the context is destroyed. Task-number: QTBUG-20083 Change-Id: I45a4be01b06af4ee7196fa502116f099d50afeab Reviewed-by: Gunnar Sletta --- src/gui/kernel/qopenglcontext.cpp | 13 +++++++++++++ src/gui/kernel/qopenglcontext.h | 3 +++ tests/auto/gui/qopengl/tst_qopengl.cpp | 22 ++++++++++++++++++++++ 3 files changed, 38 insertions(+) diff --git a/src/gui/kernel/qopenglcontext.cpp b/src/gui/kernel/qopenglcontext.cpp index 6a9cb43028..29a9e92e5c 100644 --- a/src/gui/kernel/qopenglcontext.cpp +++ b/src/gui/kernel/qopenglcontext.cpp @@ -174,6 +174,8 @@ bool QOpenGLContext::create() void QOpenGLContext::destroy() { Q_D(QOpenGLContext); + if (d->platformGLContext) + emit aboutToBeDestroyed(); if (QOpenGLContext::currentContext() == this) doneCurrent(); if (d->shareGroup) @@ -185,6 +187,17 @@ void QOpenGLContext::destroy() d->functions = 0; } +/*! + \fn void QOpenGLContext::aboutToBeDestroyed() + + This signal is emitted before the underlying native OpenGL context is + destroyed, such that users may clean up OpenGL resources that might otherwise + be left dangling in the case of shared OpenGL contexts. + + If you wish to make the context current in order to do clean-up, make sure to + only connect to the signal using a direct connection. +*/ + /*! If this is the current context for the thread, doneCurrent is called */ diff --git a/src/gui/kernel/qopenglcontext.h b/src/gui/kernel/qopenglcontext.h index b5a19a0ebc..0d02cfe613 100644 --- a/src/gui/kernel/qopenglcontext.h +++ b/src/gui/kernel/qopenglcontext.h @@ -118,6 +118,9 @@ public: QOpenGLFunctions *functions() const; +Q_SIGNALS: + void aboutToBeDestroyed(); + private: friend class QGLContext; friend class QOpenGLContextResourceBase; diff --git a/tests/auto/gui/qopengl/tst_qopengl.cpp b/tests/auto/gui/qopengl/tst_qopengl.cpp index aa3e70a047..d6c587b65e 100644 --- a/tests/auto/gui/qopengl/tst_qopengl.cpp +++ b/tests/auto/gui/qopengl/tst_qopengl.cpp @@ -50,6 +50,8 @@ #include +#include + class tst_QOpenGL : public QObject { Q_OBJECT @@ -62,6 +64,7 @@ private slots: void fboRendering(); void fboHandleNulledAfterContextDestroyed(); void openGLPaintDevice(); + void aboutToBeDestroyed(); }; struct SharedResourceTracker @@ -500,5 +503,24 @@ void tst_QOpenGL::openGLPaintDevice() QCOMPARE(image, fbo.toImage().convertToFormat(QImage::Format_RGB32)); } +void tst_QOpenGL::aboutToBeDestroyed() +{ + QWindow window; + window.setGeometry(0, 0, 128, 128); + window.create(); + + QOpenGLContext *context = new QOpenGLContext; + QSignalSpy spy(context, SIGNAL(aboutToBeDestroyed())); + + context->create(); + context->makeCurrent(&window); + + QCOMPARE(spy.size(), 0); + + delete context; + + QCOMPARE(spy.size(), 1); +} + QTEST_MAIN(tst_QOpenGL) #include "tst_qopengl.moc" -- cgit v1.2.3 From 24e84dd21f649a270e03a83a6e7688e1649a7ede Mon Sep 17 00:00:00 2001 From: Jiang Jiang Date: Tue, 3 Jan 2012 15:35:32 +0100 Subject: Support RTL text with merge font engines Text like Urdu use mixed RTL scripts from Persian, Arabic and so on. In RTL, sub glyph runs for individual font engines must be added from end to start, so that the positions can still be calculated in a left to right manner. Task-number: QTBUG-23404 Change-Id: I7e55e4b7b858b3abbe94e352c93d36de6226ff58 Reviewed-by: Eskil Abrahamsen Blomfeldt --- src/gui/text/qtextlayout.cpp | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/src/gui/text/qtextlayout.cpp b/src/gui/text/qtextlayout.cpp index f2622a7b20..6cf24d130b 100644 --- a/src/gui/text/qtextlayout.cpp +++ b/src/gui/text/qtextlayout.cpp @@ -2264,11 +2264,12 @@ QList QTextLine::glyphRuns(int from, int length) const QFontEngine *mainFontEngine = font.d->engineForScript(si.analysis.script); if (mainFontEngine->type() == QFontEngine::Multi) { QFontEngineMulti *multiFontEngine = static_cast(mainFontEngine); - int start = 0; - int end; - int which = glyphLayout.glyphs[0] >> 24; - for (end = 0; end < glyphLayout.numGlyphs; ++end) { - const int e = glyphLayout.glyphs[end] >> 24; + int end = rtl ? glyphLayout.numGlyphs : 0; + int start = rtl ? end : 0; + int which = glyphLayout.glyphs[rtl ? start - 1 : end] >> 24; + for (; (rtl && start > 0) || (!rtl && end < glyphLayout.numGlyphs); + rtl ? --start : ++end) { + const int e = glyphLayout.glyphs[rtl ? start - 1 : end] >> 24; if (e == which) continue; @@ -2286,7 +2287,10 @@ QList QTextLine::glyphRuns(int from, int length) const subLayout.advances_y[i].toReal()); } - start = end; + if (rtl) + end = start; + else + start = end; which = e; } -- cgit v1.2.3 From 99eb5051039052bc782ca3224aac1c9b99c67b28 Mon Sep 17 00:00:00 2001 From: Pekka Vuorela Date: Tue, 3 Jan 2012 15:07:13 +0200 Subject: QTextLayout::lineAt() to return invalid line if index is out of bounds Change-Id: I1f93789c96f3b2335b02897ff5fc8385964d1641 Reviewed-by: Eskil Abrahamsen Blomfeldt --- src/gui/text/qtextlayout.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gui/text/qtextlayout.cpp b/src/gui/text/qtextlayout.cpp index 6cf24d130b..d470c6daac 100644 --- a/src/gui/text/qtextlayout.cpp +++ b/src/gui/text/qtextlayout.cpp @@ -836,7 +836,7 @@ int QTextLayout::lineCount() const */ QTextLine QTextLayout::lineAt(int i) const { - return QTextLine(i, d); + return i < lineCount() ? QTextLine(i, d) : QTextLine(); } /*! -- cgit v1.2.3 From 92f9678055eef647c9e6ebc7fb0ce29b89db5f89 Mon Sep 17 00:00:00 2001 From: Denis Dzyubenko Date: Mon, 2 Jan 2012 16:25:17 +0100 Subject: Registered QUuid in the metatype system as a builtin type. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I6be6129d9f6bf468ba8a5805cfa0f6f79199afb3 Reviewed-by: João Abecasis Reviewed-by: JÄ™drzej Nowacki Reviewed-by: Prasanth Ullattil --- src/corelib/kernel/qmetatype.cpp | 14 ++++++++++ src/corelib/kernel/qmetatype.h | 3 ++- src/corelib/kernel/qvariant.cpp | 23 ++++++++++++++-- src/corelib/kernel/qvariant.h | 1 + src/gui/kernel/qguivariant.cpp | 1 + .../corelib/kernel/qmetatype/tst_qmetatype.cpp | 3 +++ tests/auto/corelib/plugin/quuid/tst_quuid.cpp | 31 ++++++++++++++++++++++ 7 files changed, 73 insertions(+), 3 deletions(-) diff --git a/src/corelib/kernel/qmetatype.cpp b/src/corelib/kernel/qmetatype.cpp index e72cd7c575..38bfd2987c 100644 --- a/src/corelib/kernel/qmetatype.cpp +++ b/src/corelib/kernel/qmetatype.cpp @@ -50,6 +50,7 @@ #include "qvector.h" #include "qlocale.h" #include "qeasingcurve.h" +#include "quuid.h" #include "qvariant.h" #include "qmetatypeswitcher_p.h" @@ -788,6 +789,9 @@ bool QMetaType::save(QDataStream &stream, int type, const void *data) return false; qMetaTypeWidgetsHelper[type - FirstWidgetsType].saveOp(stream, data); break; + case QMetaType::QUuid: + stream << *static_cast(data); + break; default: { const QVector * const ct = customTypes(); if (!ct) @@ -995,6 +999,9 @@ bool QMetaType::load(QDataStream &stream, int type, void *data) return false; qMetaTypeWidgetsHelper[type - FirstWidgetsType].loadOp(stream, data); break; + case QMetaType::QUuid: + stream >> *static_cast< NS(QUuid)*>(data); + break; default: { const QVector * const ct = customTypes(); if (!ct) @@ -1115,6 +1122,8 @@ void *QMetaType::create(int type, const void *copy) case QMetaType::QEasingCurve: return new NS(QEasingCurve)(*static_cast(copy)); #endif + case QMetaType::QUuid: + return new NS(QUuid)(*static_cast(copy)); case QMetaType::Void: return 0; default: @@ -1212,6 +1221,8 @@ void *QMetaType::create(int type, const void *copy) case QMetaType::QEasingCurve: return new NS(QEasingCurve); #endif + case QMetaType::QUuid: + return new NS(QUuid); case QMetaType::Void: return 0; default: @@ -1379,6 +1390,9 @@ void QMetaType::destroy(int type, void *data) delete static_cast< NS(QEasingCurve)* >(data); break; #endif + case QMetaType::QUuid: + delete static_cast< NS(QUuid)* >(data); + break; case QMetaType::Void: break; default: { diff --git a/src/corelib/kernel/qmetatype.h b/src/corelib/kernel/qmetatype.h index dd5b1f8ed5..9bc949105c 100644 --- a/src/corelib/kernel/qmetatype.h +++ b/src/corelib/kernel/qmetatype.h @@ -98,6 +98,7 @@ QT_MODULE(Core) F(QPointF, 26, QPointF) \ F(QRegExp, 27, QRegExp) \ F(QEasingCurve, 29, QEasingCurve) \ + F(QUuid, 30, QUuid) \ F(QVariant, 138, QVariant) \ #define QT_FOR_EACH_STATIC_CORE_POINTER(F)\ @@ -182,7 +183,7 @@ public: // these are merged with QVariant QT_FOR_EACH_STATIC_TYPE(QT_DEFINE_METATYPE_ID) - LastCoreType = QEasingCurve, + LastCoreType = QUuid, FirstGuiType = QFont, LastGuiType = QPolygonF, FirstWidgetsType = QIcon, diff --git a/src/corelib/kernel/qvariant.cpp b/src/corelib/kernel/qvariant.cpp index f898cc4823..abffe53ab7 100644 --- a/src/corelib/kernel/qvariant.cpp +++ b/src/corelib/kernel/qvariant.cpp @@ -52,6 +52,7 @@ #include "qstringlist.h" #include "qurl.h" #include "qlocale.h" +#include "quuid.h" #include "private/qvariant_p.h" #include "qmetatype_p.h" @@ -345,6 +346,9 @@ static bool convert(const QVariant::Private *d, QVariant::Type t, void *result, case QVariant::Url: *str = v_cast(d)->toString(); break; + case QVariant::Uuid: + *str = v_cast(d)->toString(); + break; default: return false; } @@ -709,6 +713,15 @@ static bool convert(const QVariant::Private *d, QVariant::Type t, void *result, return *ok; } #endif + case QVariant::Uuid: + switch (d->type) { + case QVariant::String: + *static_cast(result) = QUuid(*v_cast(d)); + break; + default: + return false; + } + break; default: return false; } @@ -807,6 +820,9 @@ static void streamDebug(QDebug dbg, const QVariant &v) dbg.nospace() << v.toRectF(); break; #endif + case QVariant::Uuid: + dbg.nospace() << v.value().toString(); + break; case QVariant::BitArray: //dbg.nospace() << v.toBitArray(); break; @@ -1073,6 +1089,7 @@ Q_CORE_EXPORT void QVariantPrivate::unregisterHandler(const int /* Modules::Name \value DateTime a QDateTime \value Double a double \value EasingCurve a QEasingCurve + \value Uuid a QUuid \value Font a QFont \value Hash a QVariantHash \value Icon a QIcon @@ -2402,7 +2419,7 @@ static const quint32 qCanConvertMatrix[QVariant::LastCoreType + 1] = | 1 << QVariant::UInt | 1 << QVariant::Bool | 1 << QVariant::Double | 1 << QVariant::Date | 1 << QVariant::Time | 1 << QVariant::DateTime | 1 << QVariant::LongLong | 1 << QVariant::ULongLong | 1 << QVariant::Char - | 1 << QVariant::Url, + | 1 << QVariant::Url | 1 << QVariant::Uuid, /*QStringList*/ 1 << QVariant::List | 1 << QVariant::String, @@ -2441,7 +2458,9 @@ static const quint32 qCanConvertMatrix[QVariant::LastCoreType + 1] = /*QHash*/ 0, -/*QEasingCurve*/ 0 +/*QEasingCurve*/ 0, + +/*QUuid*/ 1 << QVariant::String }; /*! diff --git a/src/corelib/kernel/qvariant.h b/src/corelib/kernel/qvariant.h index 9b477e5dd6..8d00cb0713 100644 --- a/src/corelib/kernel/qvariant.h +++ b/src/corelib/kernel/qvariant.h @@ -123,6 +123,7 @@ class Q_CORE_EXPORT QVariant RegExp = QMetaType::QRegExp, Hash = QMetaType::QVariantHash, EasingCurve = QMetaType::QEasingCurve, + Uuid = QMetaType::QUuid, LastCoreType = QMetaType::LastCoreType, Font = QMetaType::QFont, diff --git a/src/gui/kernel/qguivariant.cpp b/src/gui/kernel/qguivariant.cpp index 45100131de..dfd052df4f 100644 --- a/src/gui/kernel/qguivariant.cpp +++ b/src/gui/kernel/qguivariant.cpp @@ -79,6 +79,7 @@ #include "qstringlist.h" #include "qurl.h" #include "qlocale.h" +#include "quuid.h" #ifndef QT_NO_GEOM_VARIANT #include "qsize.h" diff --git a/tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp b/tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp index 12a57447cd..3da48c756e 100644 --- a/tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp +++ b/tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp @@ -446,6 +446,9 @@ template<> struct TestValueFactory { template<> struct TestValueFactory { static QEasingCurve *create() { return new QEasingCurve(QEasingCurve::InOutElastic); } }; +template<> struct TestValueFactory { + static QUuid *create() { return new QUuid(); } +}; template<> struct TestValueFactory { static QRegExp *create() { diff --git a/tests/auto/corelib/plugin/quuid/tst_quuid.cpp b/tests/auto/corelib/plugin/quuid/tst_quuid.cpp index 90a391039f..8ce7f17416 100644 --- a/tests/auto/corelib/plugin/quuid/tst_quuid.cpp +++ b/tests/auto/corelib/plugin/quuid/tst_quuid.cpp @@ -76,6 +76,9 @@ private slots: void hash(); + void qvariant(); + void qvariant_conversion(); + public: // Variables QUuid uuidA; @@ -327,7 +330,35 @@ void tst_QUuid::hash() QCOMPARE(qHash(QUuid(uuidA.toString())), h); } +void tst_QUuid::qvariant() +{ + QUuid uuid = QUuid::createUuid(); + QVariant v = QVariant::fromValue(uuid); + QVERIFY(!v.isNull()); + QCOMPARE(v.type(), QVariant::Uuid); + + QUuid uuid2 = v.value(); + QVERIFY(!uuid2.isNull()); + QCOMPARE(uuid, uuid2); +} +void tst_QUuid::qvariant_conversion() +{ + QUuid uuid = QUuid::createUuid(); + QVariant v = QVariant::fromValue(uuid); + + QVERIFY(v.canConvert()); + QCOMPARE(v.toString(), uuid.toString()); + QCOMPARE(v.value(), uuid.toString()); + QVERIFY(!v.canConvert()); + QVERIFY(!v.canConvert()); + + // try reverse conversion QString -> QUuid + QVariant sv = QVariant::fromValue(uuid.toString()); + QCOMPARE(sv.type(), QVariant::String); + QVERIFY(sv.canConvert()); + QCOMPARE(sv.value(), uuid); +} QTEST_MAIN(tst_QUuid) #include "tst_quuid.moc" -- cgit v1.2.3 From 3c407147997ba84a4e2201417d53dab951f2f110 Mon Sep 17 00:00:00 2001 From: Pekka Vuorela Date: Wed, 4 Jan 2012 12:51:30 +0200 Subject: Added flag operators for Qt::InputMethodQueries Change-Id: I9e65e81c0a5a9854e28e24315a021371c9170f3f Reviewed-by: Joona Petrell --- src/corelib/global/qnamespace.h | 1 + 1 file changed, 1 insertion(+) diff --git a/src/corelib/global/qnamespace.h b/src/corelib/global/qnamespace.h index 1927323ea7..51d9571a9d 100644 --- a/src/corelib/global/qnamespace.h +++ b/src/corelib/global/qnamespace.h @@ -1553,6 +1553,7 @@ Q_DECLARE_OPERATORS_FOR_FLAGS(Qt::DropActions) Q_DECLARE_OPERATORS_FOR_FLAGS(Qt::ItemFlags) Q_DECLARE_OPERATORS_FOR_FLAGS(Qt::MatchFlags) Q_DECLARE_OPERATORS_FOR_FLAGS(Qt::TextInteractionFlags) +Q_DECLARE_OPERATORS_FOR_FLAGS(Qt::InputMethodQueries) Q_DECLARE_OPERATORS_FOR_FLAGS(Qt::InputMethodHints) Q_DECLARE_OPERATORS_FOR_FLAGS(Qt::TouchPointStates) #ifndef QT_NO_GESTURES -- cgit v1.2.3 From 77ddb00a49fdde54df2b232e9e901a08e48cee6d Mon Sep 17 00:00:00 2001 From: Kurt Korbatits Date: Wed, 4 Jan 2012 12:28:20 +1000 Subject: Changed tests: qmake,selftest and lancelot to use QFINDTESTDATA. Changed these tests to use QFINDTESTDATA macro to detect location of testdata. Checking for a specific file contained in the testdata so as not to be confused by empty directories created during configure. Change-Id: Iac2ac6304b6b9ac79e00886025b93ec0af5a8507 Reviewed-by: Jason McDonald Reviewed-by: Rohan McGovern --- tests/auto/other/lancelot/lancelot.pro | 3 +-- tests/auto/other/lancelot/tst_lancelot.cpp | 11 ++--------- tests/auto/testlib/selftests/tst_selftests.cpp | 11 ++++++++++- tests/auto/tools/qmake/tst_qmake.cpp | 9 +++++++-- 4 files changed, 20 insertions(+), 14 deletions(-) diff --git a/tests/auto/other/lancelot/lancelot.pro b/tests/auto/other/lancelot/lancelot.pro index bbb48c745e..ced8aceb99 100644 --- a/tests/auto/other/lancelot/lancelot.pro +++ b/tests/auto/other/lancelot/lancelot.pro @@ -10,7 +10,6 @@ RESOURCES += images.qrc include($$PWD/../../../baselineserver/shared/qbaselinetest.pri) -!wince*:DEFINES += SRCDIR=\\\"$$PWD\\\" -linux-g++-maemo:DEFINES += USE_RUNTIME_DIR +TESTDATA += scripts/* CONFIG += insignificant_test # QTBUG-21402 diff --git a/tests/auto/other/lancelot/tst_lancelot.cpp b/tests/auto/other/lancelot/tst_lancelot.cpp index cbbd28dc82..e024b75400 100644 --- a/tests/auto/other/lancelot/tst_lancelot.cpp +++ b/tests/auto/other/lancelot/tst_lancelot.cpp @@ -50,10 +50,6 @@ #include #endif -#ifndef SRCDIR -#define SRCDIR "." -#endif - class tst_Lancelot : public QObject { Q_OBJECT @@ -114,11 +110,8 @@ void tst_Lancelot::initTestCase() if (!proto.connect(QLatin1String("tst_Lancelot"), &dryRunMode, clientInfo)) QSKIP(qPrintable(proto.errorMessage())); -#if defined(USE_RUNTIME_DIR) - scriptsDir = QCoreApplication::applicationDirPath() + "/scripts/"; -#else - scriptsDir = SRCDIR "/scripts/"; -#endif + QString baseDir = QFINDTESTDATA("scripts/text.qps"); + scriptsDir = baseDir.left(baseDir.lastIndexOf('/')) + '/'; QDir qpsDir(scriptsDir); QStringList files = qpsDir.entryList(QStringList() << QLatin1String("*.qps"), QDir::Files | QDir::Readable); if (files.isEmpty()) { diff --git a/tests/auto/testlib/selftests/tst_selftests.cpp b/tests/auto/testlib/selftests/tst_selftests.cpp index cb03611af3..e8c4806794 100644 --- a/tests/auto/testlib/selftests/tst_selftests.cpp +++ b/tests/auto/testlib/selftests/tst_selftests.cpp @@ -291,8 +291,17 @@ static QList allLoggerSets() void tst_Selftests::initTestCase() { + //Detect the location of the sub programs + QString subProgram = QLatin1String("float/float"); +#if defined(Q_OS_WIN) + subProgram = QLatin1String("float/float.exe"); +#endif + QString testdataDir = QFINDTESTDATA(subProgram); + if (testdataDir.lastIndexOf(subProgram) > 0) + testdataDir = testdataDir.left(testdataDir.lastIndexOf(subProgram)); + else + testdataDir = QCoreApplication::applicationDirPath(); // chdir to our testdata path and execute helper apps relative to that. - QString testdataDir = QFileInfo(QFINDTESTDATA("float")).absolutePath(); QVERIFY2(QDir::setCurrent(testdataDir), qPrintable("Could not chdir to " + testdataDir)); } diff --git a/tests/auto/tools/qmake/tst_qmake.cpp b/tests/auto/tools/qmake/tst_qmake.cpp index dbb845ba81..6e1562e2ca 100644 --- a/tests/auto/tools/qmake/tst_qmake.cpp +++ b/tests/auto/tools/qmake/tst_qmake.cpp @@ -118,8 +118,13 @@ void tst_qmake::initTestCase() #else test_compiler.setBaseCommands( "make", cmd ); #endif - QString tmpFile = QFINDTESTDATA("testdata"); - base_path = tmpFile.left(tmpFile.lastIndexOf('/')); + //Detect the location of the testdata + QString subProgram = QLatin1String("testdata/simple_app/main.cpp"); + base_path = QFINDTESTDATA(subProgram); + if (base_path.lastIndexOf(subProgram) > 0) + base_path = base_path.left(base_path.lastIndexOf(subProgram)); + else + base_path = QCoreApplication::applicationDirPath(); } void tst_qmake::cleanupTestCase() -- cgit v1.2.3 From ca81ec03d69817e838c7758844184447f530e0f6 Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Tue, 3 Jan 2012 14:02:47 +1000 Subject: Prevent QFileInfo test from leaving temporary files behind. Use a small helper class to ensure that the files created during the test are removed afterwards, even if the test fails. Also, verify creation of the files in the body of the test function, not in the helper, as verifying in the helper won't terminate the test on failure. Change-Id: I76eff20e54ef6a1ed71d9bbb31e00f41f3d14c38 Reviewed-by: Rohan McGovern --- tests/auto/corelib/io/qfileinfo/tst_qfileinfo.cpp | 53 ++++++++++++++--------- 1 file changed, 33 insertions(+), 20 deletions(-) diff --git a/tests/auto/corelib/io/qfileinfo/tst_qfileinfo.cpp b/tests/auto/corelib/io/qfileinfo/tst_qfileinfo.cpp index c3979fce15..ae371ea9fe 100644 --- a/tests/auto/corelib/io/qfileinfo/tst_qfileinfo.cpp +++ b/tests/auto/corelib/io/qfileinfo/tst_qfileinfo.cpp @@ -49,6 +49,7 @@ #include #include #ifdef Q_OS_UNIX +#include #include #include #include @@ -1492,41 +1493,53 @@ void tst_QFileInfo::testDecomposedUnicodeNames_data() QTest::newRow("no decomposed") << currPath + QString::fromUtf8("/4 øøøcopy.pdf") << QString::fromUtf8("4 øøøcopy.pdf") << true; } -static void createFileNative(const QString &filePath) +// This is a helper class that ensures that files created during the test +// will be removed afterwards, even if the test fails or throws an exception. +class NativeFileCreator { +public: + NativeFileCreator(const QString &filePath) + : m_filePath(filePath), m_error(0) + { #ifdef Q_OS_UNIX - int fd = open(filePath.normalized(QString::NormalizationForm_D).toUtf8().constData(), O_CREAT | O_WRONLY, S_IRUSR | S_IWUSR); - if (fd < 0) { - QFAIL("couldn't create file"); - } else { - close(fd); - } -#else - Q_UNUSED(filePath); + int fd = open(m_filePath.normalized(QString::NormalizationForm_D).toUtf8().constData(), O_CREAT | O_WRONLY, S_IRUSR | S_IWUSR); + if (fd >= 0) + close(fd); + else + m_error = errno; #endif -} - -static void removeFileNative(const QString &filePath) -{ + } + ~NativeFileCreator() + { #ifdef Q_OS_UNIX - unlink(filePath.normalized(QString::NormalizationForm_D).toUtf8().constData()); -#else - Q_UNUSED(filePath); + if (m_error == 0) + unlink(m_filePath.normalized(QString::NormalizationForm_D).toUtf8().constData()); #endif -} + } + int error() const + { + return m_error; + } + +private: + QString m_filePath; + int m_error; +}; void tst_QFileInfo::testDecomposedUnicodeNames() { #ifndef Q_OS_MAC QSKIP("This is a OS X only test (unless you know more about filesystems, then maybe you should try it ;)"); -#endif +#else QFETCH(QString, filePath); - createFileNative(filePath); + NativeFileCreator nativeFileCreator(filePath); + int error = nativeFileCreator.error(); + QVERIFY2(error == 0, qPrintable(QString("Couldn't create native file %1: %2").arg(filePath).arg(strerror(error)))); QFileInfo file(filePath); QTEST(file.fileName(), "fileName"); QTEST(file.exists(), "exists"); - removeFileNative(filePath); +#endif } void tst_QFileInfo::equalOperator() const -- cgit v1.2.3 From f599b5cd30a18e57e34cd9b5ffe6c80e4d2c902e Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Wed, 4 Jan 2012 13:29:42 +1000 Subject: Fix memory leak in QAbstractItemModel autotest. The test was allocating a new model on the heap each time init() was invoked, but none of these models were deleted. Change-Id: Ibe107b2dbc949a5f72940f67c08f4b0f46256c09 Reviewed-by: Rohan McGovern --- .../itemmodels/qabstractitemmodel/tst_qabstractitemmodel.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/tests/auto/corelib/itemmodels/qabstractitemmodel/tst_qabstractitemmodel.cpp b/tests/auto/corelib/itemmodels/qabstractitemmodel/tst_qabstractitemmodel.cpp index 88b61395a2..ebf82227a1 100644 --- a/tests/auto/corelib/itemmodels/qabstractitemmodel/tst_qabstractitemmodel.cpp +++ b/tests/auto/corelib/itemmodels/qabstractitemmodel/tst_qabstractitemmodel.cpp @@ -59,6 +59,7 @@ class tst_QAbstractItemModel : public QObject public slots: void initTestCase(); void init(); + void cleanup(); private slots: void index(); @@ -275,6 +276,11 @@ void tst_QAbstractItemModel::init() insertCommand->doCommand(); } +void tst_QAbstractItemModel::cleanup() +{ + delete m_model; +} + /* tests */ -- cgit v1.2.3 From 1fdfc2abfe1fa26b86028934d4853432e25b4655 Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Thu, 5 Jan 2012 14:03:39 +1000 Subject: Update copyright year in license headers. Change-Id: I02f2c620296fcd91d4967d58767ea33fc4e1e7dc Reviewed-by: Rohan McGovern --- LICENSE.LGPL | 2 +- bin/createpackage.bat | 2 +- bin/createpackage.pl | 2 +- bin/elf2e32_qtwrapper.pl | 2 +- bin/findtr | 2 +- bin/fixqt4headers.pl | 2 +- bin/patch_capabilities.pl | 2 +- bin/qtmodule-configtests | 2 +- bin/setcepaths.bat | 2 +- bin/syncqt | 2 +- bin/syncqt.bat | 2 +- config.tests/mac/coreservices/coreservices.mm | 2 +- config.tests/mac/corewlan/corewlantest.mm | 2 +- config.tests/mac/crc/main.cpp | 2 +- config.tests/mac/xcodeversion.cpp | 2 +- config.tests/qpa/wayland/wayland.cpp | 2 +- .../qpa/xcb-poll-for-queued-event/xcb-poll-for-queued-event.cpp | 2 +- config.tests/qpa/xcb-render/xcb-render.cpp | 2 +- config.tests/qpa/xcb-xlib/xcb-xlib.cpp | 2 +- config.tests/qpa/xcb/xcb.cpp | 2 +- config.tests/qws/ahi/ahi.cpp | 2 +- config.tests/qws/directfb/directfb.cpp | 2 +- config.tests/qws/sound/sound.cpp | 2 +- config.tests/qws/svgalib/svgalib.cpp | 2 +- config.tests/unix/3dnow/3dnow.cpp | 2 +- config.tests/unix/alsa/alsatest.cpp | 2 +- config.tests/unix/avx/avx.cpp | 2 +- config.tests/unix/clock-gettime/clock-gettime.cpp | 2 +- config.tests/unix/clock-monotonic/clock-monotonic.cpp | 2 +- config.tests/unix/cups/cups.cpp | 2 +- config.tests/unix/db2/db2.cpp | 2 +- config.tests/unix/dbus/dbus.cpp | 2 +- config.tests/unix/doubleformat/doubleformattest.cpp | 2 +- config.tests/unix/egl/egl.cpp | 2 +- config.tests/unix/egl4gles1/egl4gles1.cpp | 2 +- config.tests/unix/endian/endiantest.cpp | 2 +- config.tests/unix/floatmath/floatmath.cpp | 2 +- config.tests/unix/freetype/freetype.cpp | 2 +- config.tests/unix/getaddrinfo/getaddrinfotest.cpp | 2 +- config.tests/unix/getifaddrs/getifaddrs.cpp | 2 +- config.tests/unix/glib/glib.cpp | 2 +- config.tests/unix/gnu-libiconv/gnu-libiconv.cpp | 2 +- config.tests/unix/gstreamer/gstreamer.cpp | 2 +- config.tests/unix/ibase/ibase.cpp | 2 +- config.tests/unix/icd/icd.cpp | 2 +- config.tests/unix/iconv/iconv.cpp | 2 +- config.tests/unix/icu/icu.cpp | 2 +- config.tests/unix/inotify/inotifytest.cpp | 2 +- config.tests/unix/iodbc/iodbc.cpp | 2 +- config.tests/unix/ipv6ifname/ipv6ifname.cpp | 2 +- config.tests/unix/iwmmxt/iwmmxt.cpp | 2 +- config.tests/unix/javascriptcore-jit/hwcap_test.cpp | 2 +- config.tests/unix/libjpeg/libjpeg.cpp | 2 +- config.tests/unix/libmng/libmng.cpp | 2 +- config.tests/unix/libpng/libpng.cpp | 2 +- config.tests/unix/libtiff/libtiff.cpp | 2 +- config.tests/unix/mmx/mmx.cpp | 2 +- config.tests/unix/mremap/mremap.cpp | 2 +- config.tests/unix/mysql/mysql.cpp | 2 +- config.tests/unix/neon/neon.cpp | 2 +- config.tests/unix/nis/nis.cpp | 2 +- config.tests/unix/oci/oci.cpp | 2 +- config.tests/unix/odbc/odbc.cpp | 2 +- config.tests/unix/opengldesktop/opengldesktop.cpp | 2 +- config.tests/unix/opengles1/opengles1.cpp | 2 +- config.tests/unix/opengles2/opengles2.cpp | 2 +- config.tests/unix/openssl/openssl.cpp | 2 +- config.tests/unix/openvg/openvg.cpp | 2 +- config.tests/unix/psql/psql.cpp | 2 +- config.tests/unix/ptrsize/ptrsizetest.cpp | 2 +- config.tests/unix/pulseaudio/pulseaudio.cpp | 2 +- config.tests/unix/shivavg/shivavg.cpp | 2 +- config.tests/unix/sqlite/sqlite.cpp | 2 +- config.tests/unix/sqlite2/sqlite2.cpp | 2 +- config.tests/unix/sse/sse.cpp | 2 +- config.tests/unix/sse2/sse2.cpp | 2 +- config.tests/unix/sse3/sse3.cpp | 2 +- config.tests/unix/sse4_1/sse4_1.cpp | 2 +- config.tests/unix/sse4_2/sse4_2.cpp | 2 +- config.tests/unix/ssse3/ssse3.cpp | 2 +- config.tests/unix/stdint/main.cpp | 2 +- config.tests/unix/stl/stltest.cpp | 2 +- config.tests/unix/tds/tds.cpp | 2 +- config.tests/unix/tslib/tslib.cpp | 2 +- config.tests/unix/zlib/zlib.cpp | 2 +- config.tests/x11/fontconfig/fontconfig.cpp | 2 +- config.tests/x11/glxfbconfig/glxfbconfig.cpp | 2 +- config.tests/x11/mitshm/mitshm.cpp | 2 +- config.tests/x11/notype/notypetest.cpp | 2 +- config.tests/x11/opengl/opengl.cpp | 2 +- config.tests/x11/sm/sm.cpp | 2 +- config.tests/x11/xcursor/xcursor.cpp | 2 +- config.tests/x11/xfixes/xfixes.cpp | 2 +- config.tests/x11/xinerama/xinerama.cpp | 2 +- config.tests/x11/xinput/xinput.cpp | 2 +- config.tests/x11/xinput2/xinput2.cpp | 2 +- config.tests/x11/xkb/xkb.cpp | 2 +- config.tests/x11/xlib/xlib.cpp | 2 +- config.tests/x11/xrandr/xrandr.cpp | 2 +- config.tests/x11/xrender/xrender.cpp | 2 +- config.tests/x11/xshape/xshape.cpp | 2 +- config.tests/x11/xsync/xsync.cpp | 2 +- config.tests/x11/xvideo/xvideo.cpp | 2 +- configure | 2 +- doc/src/core/containers.qdoc | 2 +- doc/src/core/implicit-sharing.qdoc | 2 +- doc/src/core/objectmodel/metaobjects.qdoc | 2 +- doc/src/core/objectmodel/object.qdoc | 2 +- doc/src/core/objectmodel/objecttrees.qdoc | 2 +- doc/src/core/objectmodel/properties.qdoc | 2 +- doc/src/core/objectmodel/signalsandslots.qdoc | 2 +- doc/src/core/qtcore.qdoc | 2 +- doc/src/core/threads-basics.qdoc | 2 +- doc/src/core/threads.qdoc | 2 +- doc/src/dbus/qtdbus.qdoc | 2 +- doc/src/examples/2dpainting.qdoc | 2 +- doc/src/examples/addressbook.qdoc | 2 +- doc/src/examples/affine.qdoc | 2 +- doc/src/examples/analogclock.qdoc | 2 +- doc/src/examples/animatedtiles.qdoc | 2 +- doc/src/examples/appchooser.qdoc | 2 +- doc/src/examples/application.qdoc | 2 +- doc/src/examples/applicationicon.qdoc | 2 +- doc/src/examples/arrowpad.qdoc | 2 +- doc/src/examples/basicdrawing.qdoc | 2 +- doc/src/examples/basicgraphicslayouts.qdoc | 2 +- doc/src/examples/basiclayouts.qdoc | 2 +- doc/src/examples/basicsortfiltermodel.qdoc | 2 +- doc/src/examples/bearermonitor.qdoc | 2 +- doc/src/examples/blockingfortuneclient.qdoc | 2 +- doc/src/examples/blurpicker.qdoc | 2 +- doc/src/examples/books.qdoc | 2 +- doc/src/examples/borderlayout.qdoc | 2 +- doc/src/examples/boxes.qdoc | 2 +- doc/src/examples/broadcastreceiver.qdoc | 2 +- doc/src/examples/broadcastsender.qdoc | 2 +- doc/src/examples/cachedtable.qdoc | 2 +- doc/src/examples/calculator.qdoc | 2 +- doc/src/examples/calendar.qdoc | 2 +- doc/src/examples/calendarwidget.qdoc | 2 +- doc/src/examples/charactermap.qdoc | 2 +- doc/src/examples/chart.qdoc | 2 +- doc/src/examples/chip.qdoc | 2 +- doc/src/examples/classwizard.qdoc | 2 +- doc/src/examples/codecs.qdoc | 2 +- doc/src/examples/codeeditor.qdoc | 2 +- doc/src/examples/coloreditorfactory.qdoc | 2 +- doc/src/examples/combowidgetmapper.qdoc | 2 +- doc/src/examples/completer.qdoc | 2 +- doc/src/examples/complexpingpong.qdoc | 2 +- doc/src/examples/composition.qdoc | 2 +- doc/src/examples/concentriccircles.qdoc | 2 +- doc/src/examples/configdialog.qdoc | 2 +- doc/src/examples/contiguouscache.qdoc | 2 +- doc/src/examples/customcompleter.qdoc | 2 +- doc/src/examples/customsortfiltermodel.qdoc | 2 +- doc/src/examples/customtype.qdoc | 2 +- doc/src/examples/customtypesending.qdoc | 2 +- doc/src/examples/dbscreen.qdoc | 2 +- doc/src/examples/dbus-chat.qdoc | 2 +- doc/src/examples/deform.qdoc | 2 +- doc/src/examples/diagramscene.qdoc | 2 +- doc/src/examples/digiflip.qdoc | 2 +- doc/src/examples/digitalclock.qdoc | 2 +- doc/src/examples/dirview.qdoc | 2 +- doc/src/examples/dockwidgets.qdoc | 2 +- doc/src/examples/dombookmarks.qdoc | 2 +- doc/src/examples/dragdroprobot.qdoc | 2 +- doc/src/examples/draggableicons.qdoc | 2 +- doc/src/examples/draggabletext.qdoc | 2 +- doc/src/examples/drilldown.qdoc | 2 +- doc/src/examples/dropsite.qdoc | 2 +- doc/src/examples/dynamiclayouts.qdoc | 2 +- doc/src/examples/easing.qdoc | 2 +- doc/src/examples/echoplugin.qdoc | 2 +- doc/src/examples/editabletreemodel.qdoc | 2 +- doc/src/examples/elasticnodes.qdoc | 2 +- doc/src/examples/elidedlabel.qdoc | 2 +- doc/src/examples/embeddeddialogs.qdoc | 2 +- doc/src/examples/eventtransitions.qdoc | 2 +- doc/src/examples/extension.qdoc | 2 +- doc/src/examples/factorial.qdoc | 2 +- doc/src/examples/fademessage.qdoc | 2 +- doc/src/examples/fetchmore.qdoc | 2 +- doc/src/examples/findfiles.qdoc | 2 +- doc/src/examples/fingerpaint.qdoc | 2 +- doc/src/examples/flickable.qdoc | 2 +- doc/src/examples/flightinfo.qdoc | 2 +- doc/src/examples/flowlayout.qdoc | 2 +- doc/src/examples/fontsampler.qdoc | 2 +- doc/src/examples/fortuneclient.qdoc | 2 +- doc/src/examples/fortuneserver.qdoc | 2 +- doc/src/examples/framebufferobject2.qdoc | 2 +- doc/src/examples/fridgemagnets.qdoc | 2 +- doc/src/examples/frozencolumn.qdoc | 2 +- doc/src/examples/googlesuggest.qdoc | 2 +- doc/src/examples/grabber.qdoc | 2 +- doc/src/examples/gradients.qdoc | 2 +- doc/src/examples/groupbox.qdoc | 2 +- doc/src/examples/hellogl.qdoc | 2 +- doc/src/examples/hellogl_es.qdoc | 2 +- doc/src/examples/hellotr.qdoc | 2 +- doc/src/examples/htmlinfo.qdoc | 2 +- doc/src/examples/http.qdoc | 2 +- doc/src/examples/i18n.qdoc | 2 +- doc/src/examples/icons.qdoc | 2 +- doc/src/examples/imagecomposition.qdoc | 2 +- doc/src/examples/imagegestures.qdoc | 2 +- doc/src/examples/imageviewer.qdoc | 2 +- doc/src/examples/inputpanel.qdoc | 2 +- doc/src/examples/interview.qdoc | 2 +- doc/src/examples/licensewizard.qdoc | 2 +- doc/src/examples/lighting.qdoc | 2 +- doc/src/examples/lightmaps.qdoc | 2 +- doc/src/examples/lineedits.qdoc | 2 +- doc/src/examples/localfortuneclient.qdoc | 2 +- doc/src/examples/localfortuneserver.qdoc | 2 +- doc/src/examples/loopback.qdoc | 2 +- doc/src/examples/macmainwindow.qdoc | 2 +- doc/src/examples/maemovibration.qdoc | 2 +- doc/src/examples/mainwindow.qdoc | 2 +- doc/src/examples/mandelbrot.qdoc | 2 +- doc/src/examples/masterdetail.qdoc | 2 +- doc/src/examples/mdi.qdoc | 2 +- doc/src/examples/menus.qdoc | 2 +- doc/src/examples/mousecalibration.qdoc | 2 +- doc/src/examples/moveblocks.qdoc | 2 +- doc/src/examples/movie.qdoc | 2 +- doc/src/examples/multicastreceiver.qdoc | 2 +- doc/src/examples/multicastsender.qdoc | 2 +- doc/src/examples/multipleinheritance.qdoc | 2 +- doc/src/examples/network-chat.qdoc | 2 +- doc/src/examples/orderform.qdoc | 2 +- doc/src/examples/orientation.qdoc | 2 +- doc/src/examples/overpainting.qdoc | 2 +- doc/src/examples/padnavigator.qdoc | 2 +- doc/src/examples/painterpaths.qdoc | 2 +- doc/src/examples/pathstroke.qdoc | 2 +- doc/src/examples/pbuffers.qdoc | 2 +- doc/src/examples/pbuffers2.qdoc | 2 +- doc/src/examples/pinchzoom.qdoc | 2 +- doc/src/examples/pingpong.qdoc | 2 +- doc/src/examples/pixelator.qdoc | 2 +- doc/src/examples/plugandpaint.qdoc | 2 +- doc/src/examples/querymodel.qdoc | 2 +- doc/src/examples/queuedcustomtype.qdoc | 2 +- doc/src/examples/raycasting.qdoc | 2 +- doc/src/examples/recentfiles.qdoc | 2 +- doc/src/examples/regexp.qdoc | 2 +- doc/src/examples/relationaltablemodel.qdoc | 2 +- doc/src/examples/rogue.qdoc | 2 +- doc/src/examples/rsslisting.qdoc | 2 +- doc/src/examples/samplebuffers.qdoc | 2 +- doc/src/examples/saxbookmarks.qdoc | 2 +- doc/src/examples/screenshot.qdoc | 2 +- doc/src/examples/scribble.qdoc | 2 +- doc/src/examples/sdi.qdoc | 2 +- doc/src/examples/securesocketclient.qdoc | 2 +- doc/src/examples/semaphores.qdoc | 2 +- doc/src/examples/settingseditor.qdoc | 2 +- doc/src/examples/shapedclock.qdoc | 2 +- doc/src/examples/sharedmemory.qdoc | 2 +- doc/src/examples/simpledecoration.qdoc | 2 +- doc/src/examples/simpledommodel.qdoc | 2 +- doc/src/examples/simpletreemodel.qdoc | 2 +- doc/src/examples/simplewidgetmapper.qdoc | 2 +- doc/src/examples/sipdialog.qdoc | 2 +- doc/src/examples/sliders.qdoc | 2 +- doc/src/examples/spinboxdelegate.qdoc | 2 +- doc/src/examples/spinboxes.qdoc | 2 +- doc/src/examples/spreadsheet.qdoc | 2 +- doc/src/examples/sqlbrowser.qdoc | 2 +- doc/src/examples/sqlwidgetmapper.qdoc | 2 +- doc/src/examples/standarddialogs.qdoc | 2 +- doc/src/examples/stardelegate.qdoc | 2 +- doc/src/examples/states.qdoc | 2 +- doc/src/examples/stickman.qdoc | 2 +- doc/src/examples/styleexample.qdoc | 2 +- doc/src/examples/styleplugin.qdoc | 2 +- doc/src/examples/styles.qdoc | 2 +- doc/src/examples/stylesheet.qdoc | 2 +- doc/src/examples/sub-attaq.qdoc | 2 +- doc/src/examples/svgalib.qdoc | 2 +- doc/src/examples/symbianvibration.qdoc | 2 +- doc/src/examples/syntaxhighlighter.qdoc | 2 +- doc/src/examples/tabdialog.qdoc | 2 +- doc/src/examples/tablemodel.qdoc | 2 +- doc/src/examples/tablet.qdoc | 2 +- doc/src/examples/tetrix.qdoc | 2 +- doc/src/examples/textedit.qdoc | 2 +- doc/src/examples/textfinder.qdoc | 2 +- doc/src/examples/textures.qdoc | 2 +- doc/src/examples/threadedfortuneserver.qdoc | 2 +- doc/src/examples/tooltips.qdoc | 2 +- doc/src/examples/torrent.qdoc | 2 +- doc/src/examples/trafficlight.qdoc | 2 +- doc/src/examples/transformations.qdoc | 2 +- doc/src/examples/treemodelcompleter.qdoc | 2 +- doc/src/examples/trivialwizard.qdoc | 2 +- doc/src/examples/trollprint.qdoc | 2 +- doc/src/examples/twowaybutton.qdoc | 2 +- doc/src/examples/undo.qdoc | 2 +- doc/src/examples/undoframework.qdoc | 2 +- doc/src/examples/waitconditions.qdoc | 2 +- doc/src/examples/wiggly.qdoc | 2 +- doc/src/examples/windowflags.qdoc | 2 +- doc/src/examples/xmlstreamlint.qdoc | 2 +- doc/src/gui/coordsys.qdoc | 2 +- doc/src/gui/paintsystem.qdoc | 2 +- doc/src/gui/qtgui.qdoc | 2 +- doc/src/network/files-and-resources/datastreamformat.qdoc | 2 +- doc/src/network/files-and-resources/resources.qdoc | 2 +- doc/src/network/network-programming/bearermanagement.qdoc | 2 +- doc/src/network/network-programming/qtnetwork.qdoc | 2 +- doc/src/network/network-programming/ssl.qdoc | 2 +- doc/src/network/qtnetwork.qdoc | 2 +- doc/src/printsupport/printing.qdoc | 2 +- doc/src/printsupport/qtprintsupport.qdoc | 2 +- doc/src/snippets/brush/brush.cpp | 2 +- doc/src/snippets/brush/gradientcreationsnippet.cpp | 2 +- doc/src/snippets/buffer/buffer.cpp | 2 +- doc/src/snippets/code/doc_src_containers.cpp | 2 +- doc/src/snippets/code/doc_src_coordsys.cpp | 2 +- doc/src/snippets/code/doc_src_examples_application.qdoc | 2 +- doc/src/snippets/code/doc_src_examples_arrowpad.cpp | 2 +- doc/src/snippets/code/doc_src_examples_arrowpad.qdoc | 2 +- doc/src/snippets/code/doc_src_examples_dropsite.qdoc | 2 +- doc/src/snippets/code/doc_src_examples_editabletreemodel.cpp | 2 +- doc/src/snippets/code/doc_src_examples_hellotr.qdoc | 2 +- doc/src/snippets/code/doc_src_examples_icons.cpp | 2 +- doc/src/snippets/code/doc_src_examples_icons.qdoc | 2 +- doc/src/snippets/code/doc_src_examples_imageviewer.cpp | 2 +- doc/src/snippets/code/doc_src_examples_imageviewer.qdoc | 2 +- doc/src/snippets/code/doc_src_examples_simpledommodel.cpp | 2 +- doc/src/snippets/code/doc_src_examples_simpletreemodel.qdoc | 2 +- doc/src/snippets/code/doc_src_examples_svgalib.qdoc | 2 +- doc/src/snippets/code/doc_src_examples_textfinder.pro | 2 +- doc/src/snippets/code/doc_src_examples_trollprint.cpp | 2 +- doc/src/snippets/code/doc_src_groups.cpp | 2 +- doc/src/snippets/code/doc_src_layout.cpp | 2 +- doc/src/snippets/code/doc_src_objecttrees.cpp | 2 +- doc/src/snippets/code/doc_src_properties.cpp | 2 +- doc/src/snippets/code/doc_src_qalgorithms.cpp | 2 +- doc/src/snippets/code/doc_src_qcache.cpp | 2 +- doc/src/snippets/code/doc_src_qiterator.cpp | 2 +- doc/src/snippets/code/doc_src_qnamespace.cpp | 2 +- doc/src/snippets/code/doc_src_qnamespace.qdoc | 2 +- doc/src/snippets/code/doc_src_qpair.cpp | 2 +- doc/src/snippets/code/doc_src_qplugin.cpp | 2 +- doc/src/snippets/code/doc_src_qplugin.pro | 2 +- doc/src/snippets/code/doc_src_qset.cpp | 2 +- doc/src/snippets/code/doc_src_qsignalspy.cpp | 2 +- doc/src/snippets/code/doc_src_qt4-mainwindow.cpp | 2 +- doc/src/snippets/code/doc_src_qt4-styles.cpp | 2 +- doc/src/snippets/code/doc_src_qtcore.cpp | 2 +- doc/src/snippets/code/doc_src_qtestevent.cpp | 2 +- doc/src/snippets/code/doc_src_qtgui.pro | 2 +- doc/src/snippets/code/doc_src_qtnetwork.cpp | 2 +- doc/src/snippets/code/doc_src_qtnetwork.pro | 2 +- doc/src/snippets/code/doc_src_qtsql.cpp | 2 +- doc/src/snippets/code/doc_src_qtsql.pro | 2 +- doc/src/snippets/code/doc_src_qtxml.cpp | 2 +- doc/src/snippets/code/doc_src_qtxml.pro | 2 +- doc/src/snippets/code/doc_src_qvarlengtharray.cpp | 2 +- doc/src/snippets/code/doc_src_resources.cpp | 2 +- doc/src/snippets/code/doc_src_resources.qdoc | 2 +- doc/src/snippets/code/doc_src_sql-driver.cpp | 2 +- doc/src/snippets/code/doc_src_sql-driver.qdoc | 2 +- doc/src/snippets/code/doc_src_styles.cpp | 2 +- doc/src/snippets/code/doc_src_stylesheet.cpp | 2 +- doc/src/snippets/code/doc_src_stylesheet.qdoc | 2 +- doc/src/snippets/code/src.gui.text.qtextdocumentwriter.cpp | 2 +- doc/src/snippets/code/src.qdbus.qdbuspendingcall.cpp | 2 +- doc/src/snippets/code/src.qdbus.qdbuspendingreply.cpp | 2 +- doc/src/snippets/code/src_corelib_codecs_qtextcodec.cpp | 2 +- doc/src/snippets/code/src_corelib_codecs_qtextcodecplugin.cpp | 2 +- doc/src/snippets/code/src_corelib_concurrent_qfuture.cpp | 2 +- .../snippets/code/src_corelib_concurrent_qfuturesynchronizer.cpp | 2 +- doc/src/snippets/code/src_corelib_concurrent_qfuturewatcher.cpp | 2 +- .../snippets/code/src_corelib_concurrent_qtconcurrentexception.cpp | 2 +- doc/src/snippets/code/src_corelib_concurrent_qtconcurrentfilter.cpp | 2 +- doc/src/snippets/code/src_corelib_concurrent_qtconcurrentmap.cpp | 2 +- doc/src/snippets/code/src_corelib_concurrent_qtconcurrentrun.cpp | 2 +- doc/src/snippets/code/src_corelib_concurrent_qthreadpool.cpp | 2 +- doc/src/snippets/code/src_corelib_global_qglobal.cpp | 2 +- doc/src/snippets/code/src_corelib_io_qabstractfileengine.cpp | 2 +- doc/src/snippets/code/src_corelib_io_qdatastream.cpp | 2 +- doc/src/snippets/code/src_corelib_io_qdir.cpp | 2 +- doc/src/snippets/code/src_corelib_io_qdiriterator.cpp | 2 +- doc/src/snippets/code/src_corelib_io_qfile.cpp | 2 +- doc/src/snippets/code/src_corelib_io_qfileinfo.cpp | 2 +- doc/src/snippets/code/src_corelib_io_qiodevice.cpp | 2 +- doc/src/snippets/code/src_corelib_io_qprocess.cpp | 2 +- doc/src/snippets/code/src_corelib_io_qsettings.cpp | 2 +- doc/src/snippets/code/src_corelib_io_qtemporarydir.cpp | 2 +- doc/src/snippets/code/src_corelib_io_qtemporaryfile.cpp | 2 +- doc/src/snippets/code/src_corelib_io_qtextstream.cpp | 2 +- doc/src/snippets/code/src_corelib_io_qurl.cpp | 2 +- .../snippets/code/src_corelib_kernel_qabstracteventdispatcher.cpp | 2 +- doc/src/snippets/code/src_corelib_kernel_qabstractitemmodel.cpp | 2 +- doc/src/snippets/code/src_corelib_kernel_qcoreapplication.cpp | 2 +- doc/src/snippets/code/src_corelib_kernel_qmetaobject.cpp | 2 +- doc/src/snippets/code/src_corelib_kernel_qmetatype.cpp | 2 +- doc/src/snippets/code/src_corelib_kernel_qmimedata.cpp | 2 +- doc/src/snippets/code/src_corelib_kernel_qobject.cpp | 2 +- doc/src/snippets/code/src_corelib_kernel_qsystemsemaphore.cpp | 2 +- doc/src/snippets/code/src_corelib_kernel_qtimer.cpp | 2 +- doc/src/snippets/code/src_corelib_kernel_qvariant.cpp | 2 +- doc/src/snippets/code/src_corelib_plugin_qlibrary.cpp | 2 +- doc/src/snippets/code/src_corelib_plugin_quuid.cpp | 2 +- doc/src/snippets/code/src_corelib_statemachine_qstatemachine.cpp | 2 +- doc/src/snippets/code/src_corelib_thread_qatomic.cpp | 2 +- doc/src/snippets/code/src_corelib_thread_qmutex.cpp | 2 +- doc/src/snippets/code/src_corelib_thread_qmutexpool.cpp | 2 +- doc/src/snippets/code/src_corelib_thread_qreadwritelock.cpp | 2 +- doc/src/snippets/code/src_corelib_thread_qsemaphore.cpp | 2 +- doc/src/snippets/code/src_corelib_thread_qthread.cpp | 2 +- doc/src/snippets/code/src_corelib_thread_qwaitcondition_unix.cpp | 2 +- doc/src/snippets/code/src_corelib_tools_qbitarray.cpp | 2 +- doc/src/snippets/code/src_corelib_tools_qbytearray.cpp | 2 +- doc/src/snippets/code/src_corelib_tools_qdatetime.cpp | 2 +- doc/src/snippets/code/src_corelib_tools_qeasingcurve.cpp | 2 +- doc/src/snippets/code/src_corelib_tools_qhash.cpp | 2 +- doc/src/snippets/code/src_corelib_tools_qlinkedlist.cpp | 2 +- doc/src/snippets/code/src_corelib_tools_qlistdata.cpp | 2 +- doc/src/snippets/code/src_corelib_tools_qlocale.cpp | 2 +- doc/src/snippets/code/src_corelib_tools_qmap.cpp | 2 +- doc/src/snippets/code/src_corelib_tools_qpoint.cpp | 2 +- doc/src/snippets/code/src_corelib_tools_qqueue.cpp | 2 +- doc/src/snippets/code/src_corelib_tools_qrect.cpp | 2 +- doc/src/snippets/code/src_corelib_tools_qregexp.cpp | 2 +- doc/src/snippets/code/src_corelib_tools_qscopedpointer.cpp | 2 +- doc/src/snippets/code/src_corelib_tools_qsize.cpp | 2 +- doc/src/snippets/code/src_corelib_tools_qstring.cpp | 2 +- doc/src/snippets/code/src_corelib_tools_qtimeline.cpp | 2 +- doc/src/snippets/code/src_corelib_tools_qvector.cpp | 2 +- doc/src/snippets/code/src_corelib_xml_qxmlstream.cpp | 2 +- doc/src/snippets/code/src_gui_accessible_qaccessible.cpp | 2 +- doc/src/snippets/code/src_gui_dialogs_qabstractprintdialog.cpp | 2 +- doc/src/snippets/code/src_gui_dialogs_qfiledialog.cpp | 2 +- doc/src/snippets/code/src_gui_dialogs_qfontdialog.cpp | 2 +- doc/src/snippets/code/src_gui_dialogs_qmessagebox.cpp | 2 +- doc/src/snippets/code/src_gui_dialogs_qwizard.cpp | 2 +- doc/src/snippets/code/src_gui_effects_qgraphicseffect.cpp | 2 +- doc/src/snippets/code/src_gui_embedded_qcopchannel_qws.cpp | 2 +- doc/src/snippets/code/src_gui_embedded_qmouse_qws.cpp | 2 +- doc/src/snippets/code/src_gui_embedded_qmousetslib_qws.cpp | 2 +- doc/src/snippets/code/src_gui_embedded_qscreen_qws.cpp | 2 +- doc/src/snippets/code/src_gui_embedded_qtransportauth_qws.cpp | 2 +- doc/src/snippets/code/src_gui_embedded_qwindowsystem_qws.cpp | 2 +- doc/src/snippets/code/src_gui_graphicsview_qgraphicsgridlayout.cpp | 2 +- doc/src/snippets/code/src_gui_graphicsview_qgraphicsitem.cpp | 2 +- .../snippets/code/src_gui_graphicsview_qgraphicslinearlayout.cpp | 2 +- doc/src/snippets/code/src_gui_graphicsview_qgraphicsproxywidget.cpp | 2 +- doc/src/snippets/code/src_gui_graphicsview_qgraphicsscene.cpp | 2 +- doc/src/snippets/code/src_gui_graphicsview_qgraphicssceneevent.cpp | 2 +- doc/src/snippets/code/src_gui_graphicsview_qgraphicsview.cpp | 2 +- doc/src/snippets/code/src_gui_graphicsview_qgraphicswidget.cpp | 2 +- doc/src/snippets/code/src_gui_image_qbitmap.cpp | 2 +- doc/src/snippets/code/src_gui_image_qicon.cpp | 2 +- doc/src/snippets/code/src_gui_image_qimage.cpp | 2 +- doc/src/snippets/code/src_gui_image_qimagereader.cpp | 2 +- doc/src/snippets/code/src_gui_image_qimagewriter.cpp | 2 +- doc/src/snippets/code/src_gui_image_qmovie.cpp | 2 +- doc/src/snippets/code/src_gui_image_qpixmap.cpp | 2 +- doc/src/snippets/code/src_gui_image_qpixmapcache.cpp | 2 +- doc/src/snippets/code/src_gui_image_qpixmapfilter.cpp | 2 +- doc/src/snippets/code/src_gui_itemviews_qabstractitemview.cpp | 2 +- doc/src/snippets/code/src_gui_itemviews_qdatawidgetmapper.cpp | 2 +- doc/src/snippets/code/src_gui_itemviews_qitemeditorfactory.cpp | 2 +- doc/src/snippets/code/src_gui_itemviews_qitemselectionmodel.cpp | 2 +- doc/src/snippets/code/src_gui_itemviews_qstandarditemmodel.cpp | 2 +- doc/src/snippets/code/src_gui_itemviews_qtablewidget.cpp | 2 +- doc/src/snippets/code/src_gui_itemviews_qtreewidget.cpp | 2 +- doc/src/snippets/code/src_gui_kernel_qaction.cpp | 2 +- doc/src/snippets/code/src_gui_kernel_qapplication.cpp | 2 +- doc/src/snippets/code/src_gui_kernel_qapplication_x11.cpp | 2 +- doc/src/snippets/code/src_gui_kernel_qclipboard.cpp | 2 +- doc/src/snippets/code/src_gui_kernel_qevent.cpp | 2 +- doc/src/snippets/code/src_gui_kernel_qformlayout.cpp | 2 +- doc/src/snippets/code/src_gui_kernel_qkeysequence.cpp | 2 +- doc/src/snippets/code/src_gui_kernel_qlayout.cpp | 2 +- doc/src/snippets/code/src_gui_kernel_qlayoutitem.cpp | 2 +- doc/src/snippets/code/src_gui_kernel_qshortcut.cpp | 2 +- doc/src/snippets/code/src_gui_kernel_qshortcutmap.cpp | 2 +- doc/src/snippets/code/src_gui_kernel_qsound.cpp | 2 +- doc/src/snippets/code/src_gui_kernel_qwidget.cpp | 2 +- doc/src/snippets/code/src_gui_painting_qbrush.cpp | 2 +- doc/src/snippets/code/src_gui_painting_qcolor.cpp | 2 +- doc/src/snippets/code/src_gui_painting_qdrawutil.cpp | 2 +- doc/src/snippets/code/src_gui_painting_qmatrix.cpp | 2 +- doc/src/snippets/code/src_gui_painting_qpainter.cpp | 2 +- doc/src/snippets/code/src_gui_painting_qpainterpath.cpp | 2 +- doc/src/snippets/code/src_gui_painting_qpen.cpp | 2 +- doc/src/snippets/code/src_gui_painting_qregion.cpp | 2 +- doc/src/snippets/code/src_gui_painting_qregion_unix.cpp | 2 +- doc/src/snippets/code/src_gui_painting_qtransform.cpp | 2 +- doc/src/snippets/code/src_gui_qopenglshaderprogram.cpp | 2 +- doc/src/snippets/code/src_gui_qproxystyle.cpp | 2 +- doc/src/snippets/code/src_gui_styles_qstyle.cpp | 2 +- doc/src/snippets/code/src_gui_styles_qstyleoption.cpp | 2 +- doc/src/snippets/code/src_gui_text_qfont.cpp | 2 +- doc/src/snippets/code/src_gui_text_qfontmetrics.cpp | 2 +- doc/src/snippets/code/src_gui_text_qsyntaxhighlighter.cpp | 2 +- doc/src/snippets/code/src_gui_text_qtextcursor.cpp | 2 +- doc/src/snippets/code/src_gui_text_qtextdocument.cpp | 2 +- doc/src/snippets/code/src_gui_text_qtextlayout.cpp | 2 +- doc/src/snippets/code/src_gui_util_qcompleter.cpp | 2 +- doc/src/snippets/code/src_gui_util_qdesktopservices.cpp | 2 +- doc/src/snippets/code/src_gui_util_qundostack.cpp | 2 +- doc/src/snippets/code/src_gui_widgets_qabstractbutton.cpp | 2 +- doc/src/snippets/code/src_gui_widgets_qabstractspinbox.cpp | 2 +- doc/src/snippets/code/src_gui_widgets_qcalendarwidget.cpp | 2 +- doc/src/snippets/code/src_gui_widgets_qcheckbox.cpp | 2 +- doc/src/snippets/code/src_gui_widgets_qdatetimeedit.cpp | 2 +- doc/src/snippets/code/src_gui_widgets_qdockwidget.cpp | 2 +- doc/src/snippets/code/src_gui_widgets_qframe.cpp | 2 +- doc/src/snippets/code/src_gui_widgets_qgroupbox.cpp | 2 +- doc/src/snippets/code/src_gui_widgets_qlabel.cpp | 2 +- doc/src/snippets/code/src_gui_widgets_qlineedit.cpp | 2 +- doc/src/snippets/code/src_gui_widgets_qmainwindow.cpp | 2 +- doc/src/snippets/code/src_gui_widgets_qmenu.cpp | 2 +- doc/src/snippets/code/src_gui_widgets_qmenubar.cpp | 2 +- doc/src/snippets/code/src_gui_widgets_qplaintextedit.cpp | 2 +- doc/src/snippets/code/src_gui_widgets_qpushbutton.cpp | 2 +- doc/src/snippets/code/src_gui_widgets_qradiobutton.cpp | 2 +- doc/src/snippets/code/src_gui_widgets_qrubberband.cpp | 2 +- doc/src/snippets/code/src_gui_widgets_qscrollarea.cpp | 2 +- doc/src/snippets/code/src_gui_widgets_qspinbox.cpp | 2 +- doc/src/snippets/code/src_gui_widgets_qsplashscreen.cpp | 2 +- doc/src/snippets/code/src_gui_widgets_qsplitter.cpp | 2 +- doc/src/snippets/code/src_gui_widgets_qstatusbar.cpp | 2 +- doc/src/snippets/code/src_gui_widgets_qtextbrowser.cpp | 2 +- doc/src/snippets/code/src_gui_widgets_qtextedit.cpp | 2 +- doc/src/snippets/code/src_gui_widgets_qvalidator.cpp | 2 +- doc/src/snippets/code/src_gui_widgets_qworkspace.cpp | 2 +- doc/src/snippets/code/src_network_access_qftp.cpp | 2 +- doc/src/snippets/code/src_network_access_qhttp.cpp | 2 +- doc/src/snippets/code/src_network_access_qhttpmultipart.cpp | 2 +- doc/src/snippets/code/src_network_access_qhttppart.cpp | 2 +- doc/src/snippets/code/src_network_access_qnetworkaccessmanager.cpp | 2 +- doc/src/snippets/code/src_network_access_qnetworkdiskcache.cpp | 2 +- doc/src/snippets/code/src_network_access_qnetworkreply.cpp | 2 +- doc/src/snippets/code/src_network_access_qnetworkrequest.cpp | 2 +- doc/src/snippets/code/src_network_bearer_qnetworkconfigmanager.cpp | 2 +- doc/src/snippets/code/src_network_kernel_qhostaddress.cpp | 2 +- doc/src/snippets/code/src_network_kernel_qhostinfo.cpp | 2 +- doc/src/snippets/code/src_network_kernel_qnetworkproxy.cpp | 2 +- doc/src/snippets/code/src_network_socket_qabstractsocket.cpp | 2 +- doc/src/snippets/code/src_network_socket_qlocalsocket_unix.cpp | 2 +- doc/src/snippets/code/src_network_socket_qnativesocketengine.cpp | 2 +- doc/src/snippets/code/src_network_socket_qtcpserver.cpp | 2 +- doc/src/snippets/code/src_network_socket_qudpsocket.cpp | 2 +- doc/src/snippets/code/src_network_ssl_qsslcertificate.cpp | 2 +- doc/src/snippets/code/src_network_ssl_qsslconfiguration.cpp | 2 +- doc/src/snippets/code/src_network_ssl_qsslsocket.cpp | 2 +- doc/src/snippets/code/src_opengl_qgl.cpp | 2 +- doc/src/snippets/code/src_opengl_qglcolormap.cpp | 2 +- doc/src/snippets/code/src_opengl_qglpixelbuffer.cpp | 2 +- doc/src/snippets/code/src_opengl_qglshaderprogram.cpp | 2 +- doc/src/snippets/code/src_qdbus_qdbusabstractinterface.cpp | 2 +- doc/src/snippets/code/src_qdbus_qdbusargument.cpp | 2 +- doc/src/snippets/code/src_qdbus_qdbuscontext.cpp | 2 +- doc/src/snippets/code/src_qdbus_qdbusinterface.cpp | 2 +- doc/src/snippets/code/src_qdbus_qdbusmetatype.cpp | 2 +- doc/src/snippets/code/src_qdbus_qdbusreply.cpp | 2 +- doc/src/snippets/code/src_qtestlib_qtestcase.cpp | 2 +- doc/src/snippets/code/src_sql_kernel_qsqldatabase.cpp | 2 +- doc/src/snippets/code/src_sql_kernel_qsqldriver.cpp | 2 +- doc/src/snippets/code/src_sql_kernel_qsqlerror.cpp | 2 +- doc/src/snippets/code/src_sql_kernel_qsqlindex.cpp | 2 +- doc/src/snippets/code/src_sql_kernel_qsqlquery.cpp | 2 +- doc/src/snippets/code/src_sql_kernel_qsqlresult.cpp | 2 +- doc/src/snippets/code/src_sql_models_qsqlquerymodel.cpp | 2 +- doc/src/snippets/code/src_xml_dom_qdom.cpp | 2 +- doc/src/snippets/code/src_xml_sax_qxml.cpp | 2 +- doc/src/snippets/customstyle/customstyle.cpp | 2 +- doc/src/snippets/customstyle/customstyle.h | 2 +- doc/src/snippets/customviewstyle.cpp | 2 +- doc/src/snippets/dialogs/dialogs.cpp | 2 +- doc/src/snippets/dockwidgets/mainwindow.cpp | 2 +- doc/src/snippets/dragging/mainwindow.cpp | 2 +- doc/src/snippets/droparea.cpp | 2 +- doc/src/snippets/file/file.cpp | 2 +- doc/src/snippets/filedialogurls.cpp | 2 +- doc/src/snippets/fileinfo/main.cpp | 2 +- doc/src/snippets/graphicssceneadditemsnippet.cpp | 2 +- doc/src/snippets/image/image.cpp | 2 +- doc/src/snippets/image/supportedformat.cpp | 2 +- doc/src/snippets/javastyle.cpp | 2 +- doc/src/snippets/layouts/layouts.cpp | 2 +- doc/src/snippets/mainwindowsnippet.cpp | 2 +- doc/src/snippets/matrix/matrix.cpp | 2 +- doc/src/snippets/mdiareasnippets.cpp | 2 +- doc/src/snippets/myscrollarea.cpp | 2 +- doc/src/snippets/network/tcpwait.cpp | 2 +- doc/src/snippets/ntfsp.cpp | 2 +- doc/src/snippets/picture/picture.cpp | 2 +- doc/src/snippets/pointer/pointer.cpp | 2 +- doc/src/snippets/polygon/polygon.cpp | 2 +- doc/src/snippets/printing-qprinter/errors.cpp | 2 +- doc/src/snippets/printing-qprinter/object.cpp | 2 +- doc/src/snippets/process/process.cpp | 2 +- doc/src/snippets/qdbusextratypes/qdbusextratypes.cpp | 2 +- doc/src/snippets/qdebug/qdebugsnippet.cpp | 2 +- doc/src/snippets/qdir-listfiles/main.cpp | 2 +- doc/src/snippets/qdir-namefilters/main.cpp | 2 +- doc/src/snippets/qelapsedtimer/main.cpp | 2 +- doc/src/snippets/qfontdatabase/main.cpp | 2 +- doc/src/snippets/qlistwidget-using/mainwindow.cpp | 2 +- doc/src/snippets/qmacnativewidget/main.mm | 2 +- doc/src/snippets/qmetaobject-invokable/main.cpp | 2 +- doc/src/snippets/qmetaobject-invokable/window.cpp | 2 +- doc/src/snippets/qmetaobject-invokable/window.h | 2 +- doc/src/snippets/qprocess-environment/main.cpp | 2 +- doc/src/snippets/qprocess/qprocess-simpleexecution.cpp | 2 +- doc/src/snippets/qsignalmapper/buttonwidget.cpp | 2 +- doc/src/snippets/qsignalmapper/buttonwidget.h | 2 +- doc/src/snippets/qsortfilterproxymodel-details/main.cpp | 2 +- doc/src/snippets/qsplashscreen/main.cpp | 2 +- doc/src/snippets/qstack/main.cpp | 2 +- doc/src/snippets/qstackedlayout/main.cpp | 2 +- doc/src/snippets/qstackedwidget/main.cpp | 2 +- doc/src/snippets/qstatustipevent/main.cpp | 2 +- doc/src/snippets/qstring/main.cpp | 2 +- doc/src/snippets/qstring/stringbuilder.cpp | 2 +- doc/src/snippets/qstringlist/main.cpp | 2 +- doc/src/snippets/qstringlistmodel/main.cpp | 2 +- doc/src/snippets/qstyleoption/main.cpp | 2 +- doc/src/snippets/qstyleplugin/main.cpp | 2 +- doc/src/snippets/qtablewidget-resizing/mainwindow.cpp | 2 +- doc/src/snippets/qtablewidget-using/mainwindow.cpp | 2 +- doc/src/snippets/qtcast/qtcast.cpp | 2 +- doc/src/snippets/qtreewidget-using/mainwindow.cpp | 2 +- doc/src/snippets/qtreewidgetitemiterator-using/mainwindow.cpp | 2 +- doc/src/snippets/quiloader/main.cpp | 2 +- doc/src/snippets/quiloader/mywidget.cpp | 2 +- doc/src/snippets/qx11embedcontainer/main.cpp | 2 +- doc/src/snippets/qx11embedwidget/main.cpp | 2 +- doc/src/snippets/qxmlstreamwriter/main.cpp | 2 +- doc/src/snippets/separations/finalwidget.cpp | 2 +- doc/src/snippets/settings/settings.cpp | 2 +- doc/src/snippets/shareddirmodel/main.cpp | 2 +- doc/src/snippets/sharedemployee/employee.h | 2 +- doc/src/snippets/sharedemployee/main.cpp | 2 +- doc/src/snippets/signalmapper/filereader.cpp | 2 +- doc/src/snippets/signalsandslots/lcdnumber.h | 2 +- doc/src/snippets/signalsandslots/signalsandslots.cpp | 2 +- doc/src/snippets/signalsandslots/signalsandslots.h | 2 +- doc/src/snippets/splitter/splitter.cpp | 2 +- doc/src/snippets/splitterhandle/splitter.cpp | 2 +- doc/src/snippets/splitterhandle/splitter.h | 2 +- doc/src/snippets/sqldatabase/sqldatabase.cpp | 2 +- doc/src/snippets/streaming/main.cpp | 2 +- doc/src/snippets/styles/styles.cpp | 2 +- doc/src/snippets/stylesheet/common-mistakes.cpp | 2 +- doc/src/snippets/textblock-fragments/xmlwriter.cpp | 2 +- doc/src/snippets/textdocument-css/main.cpp | 2 +- doc/src/snippets/textdocument-imagedrop/textedit.cpp | 2 +- doc/src/snippets/textdocument-listitemstyles/main.cpp | 2 +- doc/src/snippets/textdocument-listitemstyles/mainwindow.cpp | 2 +- doc/src/snippets/textdocument-listitemstyles/mainwindow.h | 2 +- doc/src/snippets/textdocument-lists/mainwindow.cpp | 2 +- doc/src/snippets/textdocument-resources/main.cpp | 2 +- doc/src/snippets/textdocument-tables/mainwindow.cpp | 2 +- doc/src/snippets/textdocument-texttable/main.cpp | 2 +- doc/src/snippets/textdocumentendsnippet.cpp | 2 +- doc/src/snippets/threads/threads.cpp | 2 +- doc/src/snippets/threads/threads.h | 2 +- doc/src/snippets/timeline/main.cpp | 2 +- doc/src/snippets/timers/timers.cpp | 2 +- doc/src/snippets/transform/main.cpp | 2 +- doc/src/snippets/whatsthis/whatsthis.cpp | 2 +- doc/src/snippets/widget-mask/main.cpp | 2 +- doc/src/snippets/widgetdelegate.cpp | 2 +- doc/src/snippets/widgetprinting.cpp | 2 +- doc/src/snippets/widgets-tutorial/template.cpp | 2 +- doc/src/snippets/xml/rsslisting/handler.cpp | 2 +- doc/src/snippets/xml/rsslisting/rsslisting.cpp | 2 +- doc/src/snippets/xml/simpleparse/main.cpp | 2 +- doc/src/sql/qtsql.qdoc | 2 +- doc/src/sql/sql-programming/qsqldatatype-table.qdoc | 2 +- doc/src/sql/sql-programming/sql-driver.qdoc | 2 +- doc/src/sql/sql-programming/sql-programming.qdoc | 2 +- doc/src/widgets/addressbook-fr.qdoc | 2 +- doc/src/widgets/addressbook.qdoc | 2 +- doc/src/widgets/modelview.qdoc | 2 +- doc/src/widgets/qtwidgets.qdoc | 2 +- doc/src/widgets/widgets-and-layouts/focus.qdoc | 2 +- doc/src/widgets/widgets-and-layouts/gallery-cde.qdoc | 2 +- doc/src/widgets/widgets-and-layouts/gallery-cleanlooks.qdoc | 2 +- doc/src/widgets/widgets-and-layouts/gallery-gtk.qdoc | 2 +- doc/src/widgets/widgets-and-layouts/gallery-macintosh.qdoc | 2 +- doc/src/widgets/widgets-and-layouts/gallery-motif.qdoc | 2 +- doc/src/widgets/widgets-and-layouts/gallery-plastique.qdoc | 2 +- doc/src/widgets/widgets-and-layouts/gallery-windows.qdoc | 2 +- doc/src/widgets/widgets-and-layouts/gallery-windowsvista.qdoc | 2 +- doc/src/widgets/widgets-and-layouts/gallery-windowsxp.qdoc | 2 +- doc/src/widgets/widgets-and-layouts/gallery.qdoc | 2 +- doc/src/widgets/widgets-and-layouts/layout.qdoc | 2 +- doc/src/widgets/widgets-and-layouts/styles.qdoc | 2 +- doc/src/widgets/widgets-and-layouts/stylesheet.qdoc | 2 +- doc/src/widgets/widgets-and-layouts/widgets.qdoc | 2 +- doc/src/widgets/widgets-tutorial.qdoc | 2 +- doc/src/widgets/windows-and-dialogs/dialogs.qdoc | 2 +- doc/src/widgets/windows-and-dialogs/mainwindow.qdoc | 2 +- doc/src/xml/qtxml.qdoc | 2 +- examples/animation/animatedtiles/main.cpp | 2 +- examples/animation/appchooser/main.cpp | 2 +- examples/animation/easing/animation.h | 2 +- examples/animation/easing/main.cpp | 2 +- examples/animation/easing/window.cpp | 2 +- examples/animation/easing/window.h | 2 +- examples/animation/moveblocks/main.cpp | 2 +- examples/animation/states/main.cpp | 2 +- examples/animation/stickman/animation.cpp | 2 +- examples/animation/stickman/animation.h | 2 +- examples/animation/stickman/graphicsview.cpp | 2 +- examples/animation/stickman/graphicsview.h | 2 +- examples/animation/stickman/lifecycle.cpp | 2 +- examples/animation/stickman/lifecycle.h | 2 +- examples/animation/stickman/main.cpp | 2 +- examples/animation/stickman/node.cpp | 2 +- examples/animation/stickman/node.h | 2 +- examples/animation/stickman/rectbutton.cpp | 2 +- examples/animation/stickman/rectbutton.h | 2 +- examples/animation/stickman/stickman.cpp | 2 +- examples/animation/stickman/stickman.h | 2 +- examples/animation/sub-attaq/animationmanager.cpp | 2 +- examples/animation/sub-attaq/animationmanager.h | 2 +- examples/animation/sub-attaq/boat.cpp | 2 +- examples/animation/sub-attaq/boat.h | 2 +- examples/animation/sub-attaq/boat_p.h | 2 +- examples/animation/sub-attaq/bomb.cpp | 2 +- examples/animation/sub-attaq/bomb.h | 2 +- examples/animation/sub-attaq/graphicsscene.cpp | 2 +- examples/animation/sub-attaq/graphicsscene.h | 2 +- examples/animation/sub-attaq/main.cpp | 2 +- examples/animation/sub-attaq/mainwindow.cpp | 2 +- examples/animation/sub-attaq/mainwindow.h | 2 +- examples/animation/sub-attaq/pixmapitem.cpp | 2 +- examples/animation/sub-attaq/pixmapitem.h | 2 +- examples/animation/sub-attaq/progressitem.cpp | 2 +- examples/animation/sub-attaq/progressitem.h | 2 +- examples/animation/sub-attaq/qanimationstate.cpp | 2 +- examples/animation/sub-attaq/qanimationstate.h | 2 +- examples/animation/sub-attaq/states.cpp | 2 +- examples/animation/sub-attaq/states.h | 2 +- examples/animation/sub-attaq/submarine.cpp | 2 +- examples/animation/sub-attaq/submarine.h | 2 +- examples/animation/sub-attaq/submarine_p.h | 2 +- examples/animation/sub-attaq/textinformationitem.cpp | 2 +- examples/animation/sub-attaq/textinformationitem.h | 2 +- examples/animation/sub-attaq/torpedo.cpp | 2 +- examples/animation/sub-attaq/torpedo.h | 2 +- examples/dbus/complexpingpong/complexping.cpp | 2 +- examples/dbus/complexpingpong/complexping.h | 2 +- examples/dbus/complexpingpong/complexpong.cpp | 2 +- examples/dbus/complexpingpong/complexpong.h | 2 +- examples/dbus/complexpingpong/ping-common.h | 2 +- examples/dbus/dbus-chat/chat.cpp | 2 +- examples/dbus/dbus-chat/chat.h | 2 +- examples/dbus/dbus-chat/chat_adaptor.cpp | 4 ++-- examples/dbus/dbus-chat/chat_adaptor.h | 4 ++-- examples/dbus/dbus-chat/chat_interface.cpp | 4 ++-- examples/dbus/dbus-chat/chat_interface.h | 4 ++-- examples/dbus/listnames/listnames.cpp | 2 +- examples/dbus/pingpong/ping-common.h | 2 +- examples/dbus/pingpong/ping.cpp | 2 +- examples/dbus/pingpong/pong.cpp | 2 +- examples/dbus/pingpong/pong.h | 2 +- examples/dbus/remotecontrolledcar/car/car.cpp | 2 +- examples/dbus/remotecontrolledcar/car/car.h | 2 +- examples/dbus/remotecontrolledcar/car/car_adaptor.cpp | 4 ++-- examples/dbus/remotecontrolledcar/car/car_adaptor.h | 4 ++-- examples/dbus/remotecontrolledcar/car/main.cpp | 2 +- examples/dbus/remotecontrolledcar/controller/car_interface.cpp | 4 ++-- examples/dbus/remotecontrolledcar/controller/car_interface.h | 4 ++-- examples/dbus/remotecontrolledcar/controller/controller.cpp | 2 +- examples/dbus/remotecontrolledcar/controller/controller.h | 2 +- examples/dbus/remotecontrolledcar/controller/main.cpp | 2 +- examples/desktop/screenshot/main.cpp | 2 +- examples/desktop/screenshot/screenshot.cpp | 2 +- examples/desktop/screenshot/screenshot.h | 2 +- examples/dialogs/classwizard/classwizard.cpp | 2 +- examples/dialogs/classwizard/classwizard.h | 2 +- examples/dialogs/classwizard/main.cpp | 2 +- examples/dialogs/configdialog/configdialog.cpp | 2 +- examples/dialogs/configdialog/configdialog.h | 2 +- examples/dialogs/configdialog/main.cpp | 2 +- examples/dialogs/configdialog/pages.cpp | 2 +- examples/dialogs/configdialog/pages.h | 2 +- examples/dialogs/extension/finddialog.cpp | 2 +- examples/dialogs/extension/finddialog.h | 2 +- examples/dialogs/extension/main.cpp | 2 +- examples/dialogs/findfiles/main.cpp | 2 +- examples/dialogs/findfiles/window.cpp | 2 +- examples/dialogs/findfiles/window.h | 2 +- examples/dialogs/licensewizard/licensewizard.cpp | 2 +- examples/dialogs/licensewizard/licensewizard.h | 2 +- examples/dialogs/licensewizard/main.cpp | 2 +- examples/dialogs/sipdialog/dialog.cpp | 2 +- examples/dialogs/sipdialog/dialog.h | 2 +- examples/dialogs/sipdialog/main.cpp | 2 +- examples/dialogs/standarddialogs/dialog.cpp | 2 +- examples/dialogs/standarddialogs/dialog.h | 2 +- examples/dialogs/standarddialogs/main.cpp | 2 +- examples/dialogs/tabdialog/main.cpp | 2 +- examples/dialogs/tabdialog/tabdialog.cpp | 2 +- examples/dialogs/tabdialog/tabdialog.h | 2 +- examples/dialogs/trivialwizard/trivialwizard.cpp | 2 +- examples/draganddrop/draggableicons/dragwidget.cpp | 2 +- examples/draganddrop/draggableicons/dragwidget.h | 2 +- examples/draganddrop/draggableicons/main.cpp | 2 +- examples/draganddrop/draggabletext/draglabel.cpp | 2 +- examples/draganddrop/draggabletext/draglabel.h | 2 +- examples/draganddrop/draggabletext/dragwidget.cpp | 2 +- examples/draganddrop/draggabletext/dragwidget.h | 2 +- examples/draganddrop/draggabletext/main.cpp | 2 +- examples/draganddrop/dropsite/droparea.cpp | 2 +- examples/draganddrop/dropsite/droparea.h | 2 +- examples/draganddrop/dropsite/dropsitewindow.cpp | 2 +- examples/draganddrop/dropsite/dropsitewindow.h | 2 +- examples/draganddrop/dropsite/main.cpp | 2 +- examples/draganddrop/fridgemagnets/draglabel.cpp | 2 +- examples/draganddrop/fridgemagnets/draglabel.h | 2 +- examples/draganddrop/fridgemagnets/dragwidget.cpp | 2 +- examples/draganddrop/fridgemagnets/dragwidget.h | 2 +- examples/draganddrop/fridgemagnets/main.cpp | 2 +- examples/draganddrop/puzzle/main.cpp | 2 +- examples/draganddrop/puzzle/mainwindow.cpp | 2 +- examples/draganddrop/puzzle/mainwindow.h | 2 +- examples/draganddrop/puzzle/pieceslist.cpp | 2 +- examples/draganddrop/puzzle/pieceslist.h | 2 +- examples/draganddrop/puzzle/puzzlewidget.cpp | 2 +- examples/draganddrop/puzzle/puzzlewidget.h | 2 +- examples/effects/blurpicker/blureffect.cpp | 2 +- examples/effects/blurpicker/blureffect.h | 2 +- examples/effects/blurpicker/blurpicker.cpp | 2 +- examples/effects/blurpicker/blurpicker.h | 2 +- examples/effects/blurpicker/main.cpp | 2 +- examples/effects/fademessage/fademessage.cpp | 2 +- examples/effects/fademessage/fademessage.h | 2 +- examples/effects/fademessage/main.cpp | 2 +- examples/effects/lighting/lighting.cpp | 2 +- examples/effects/lighting/lighting.h | 2 +- examples/effects/lighting/main.cpp | 2 +- examples/embedded/digiflip/digiflip.cpp | 2 +- examples/embedded/flickable/flickable.cpp | 2 +- examples/embedded/flickable/flickable.h | 2 +- examples/embedded/flickable/main.cpp | 2 +- examples/embedded/flightinfo/flightinfo.cpp | 2 +- examples/embedded/lightmaps/lightmaps.cpp | 2 +- examples/embedded/lightmaps/lightmaps.h | 2 +- examples/embedded/lightmaps/main.cpp | 2 +- examples/embedded/lightmaps/mapzoom.cpp | 2 +- examples/embedded/lightmaps/mapzoom.h | 2 +- examples/embedded/lightmaps/slippymap.cpp | 2 +- examples/embedded/lightmaps/slippymap.h | 2 +- examples/embedded/raycasting/raycasting.cpp | 2 +- examples/embedded/styleexample/main.cpp | 2 +- examples/embedded/styleexample/stylewidget.cpp | 2 +- examples/embedded/styleexample/stylewidget.h | 2 +- examples/gestures/imagegestures/imagewidget.cpp | 2 +- examples/gestures/imagegestures/imagewidget.h | 2 +- examples/gestures/imagegestures/main.cpp | 2 +- examples/gestures/imagegestures/mainwidget.cpp | 2 +- examples/gestures/imagegestures/mainwidget.h | 2 +- examples/graphicsview/anchorlayout/main.cpp | 2 +- examples/graphicsview/basicgraphicslayouts/layoutitem.cpp | 2 +- examples/graphicsview/basicgraphicslayouts/layoutitem.h | 2 +- examples/graphicsview/basicgraphicslayouts/main.cpp | 2 +- examples/graphicsview/basicgraphicslayouts/window.cpp | 2 +- examples/graphicsview/basicgraphicslayouts/window.h | 2 +- examples/graphicsview/boxes/basic.fsh | 2 +- examples/graphicsview/boxes/basic.vsh | 2 +- examples/graphicsview/boxes/dotted.fsh | 2 +- examples/graphicsview/boxes/fresnel.fsh | 2 +- examples/graphicsview/boxes/glass.fsh | 2 +- examples/graphicsview/boxes/glbuffers.cpp | 2 +- examples/graphicsview/boxes/glbuffers.h | 2 +- examples/graphicsview/boxes/glextensions.cpp | 2 +- examples/graphicsview/boxes/glextensions.h | 2 +- examples/graphicsview/boxes/gltrianglemesh.h | 2 +- examples/graphicsview/boxes/granite.fsh | 2 +- examples/graphicsview/boxes/main.cpp | 2 +- examples/graphicsview/boxes/marble.fsh | 2 +- examples/graphicsview/boxes/qtbox.cpp | 2 +- examples/graphicsview/boxes/qtbox.h | 2 +- examples/graphicsview/boxes/reflection.fsh | 2 +- examples/graphicsview/boxes/refraction.fsh | 2 +- examples/graphicsview/boxes/roundedbox.cpp | 2 +- examples/graphicsview/boxes/roundedbox.h | 2 +- examples/graphicsview/boxes/scene.cpp | 2 +- examples/graphicsview/boxes/scene.h | 2 +- examples/graphicsview/boxes/trackball.cpp | 2 +- examples/graphicsview/boxes/trackball.h | 2 +- examples/graphicsview/boxes/wood.fsh | 2 +- examples/graphicsview/chip/chip.cpp | 2 +- examples/graphicsview/chip/chip.h | 2 +- examples/graphicsview/chip/main.cpp | 2 +- examples/graphicsview/chip/mainwindow.cpp | 2 +- examples/graphicsview/chip/mainwindow.h | 2 +- examples/graphicsview/chip/view.cpp | 2 +- examples/graphicsview/chip/view.h | 2 +- examples/graphicsview/collidingmice/main.cpp | 2 +- examples/graphicsview/collidingmice/mouse.cpp | 2 +- examples/graphicsview/collidingmice/mouse.h | 2 +- examples/graphicsview/diagramscene/arrow.cpp | 2 +- examples/graphicsview/diagramscene/arrow.h | 2 +- examples/graphicsview/diagramscene/diagramitem.cpp | 2 +- examples/graphicsview/diagramscene/diagramitem.h | 2 +- examples/graphicsview/diagramscene/diagramscene.cpp | 2 +- examples/graphicsview/diagramscene/diagramscene.h | 2 +- examples/graphicsview/diagramscene/diagramtextitem.cpp | 2 +- examples/graphicsview/diagramscene/diagramtextitem.h | 2 +- examples/graphicsview/diagramscene/main.cpp | 2 +- examples/graphicsview/diagramscene/mainwindow.cpp | 2 +- examples/graphicsview/diagramscene/mainwindow.h | 2 +- examples/graphicsview/dragdroprobot/coloritem.cpp | 2 +- examples/graphicsview/dragdroprobot/coloritem.h | 2 +- examples/graphicsview/dragdroprobot/main.cpp | 2 +- examples/graphicsview/dragdroprobot/robot.cpp | 2 +- examples/graphicsview/dragdroprobot/robot.h | 2 +- examples/graphicsview/elasticnodes/edge.cpp | 2 +- examples/graphicsview/elasticnodes/edge.h | 2 +- examples/graphicsview/elasticnodes/graphwidget.cpp | 2 +- examples/graphicsview/elasticnodes/graphwidget.h | 2 +- examples/graphicsview/elasticnodes/main.cpp | 2 +- examples/graphicsview/elasticnodes/node.cpp | 2 +- examples/graphicsview/elasticnodes/node.h | 2 +- examples/graphicsview/embeddeddialogs/customproxy.cpp | 2 +- examples/graphicsview/embeddeddialogs/customproxy.h | 2 +- examples/graphicsview/embeddeddialogs/embeddeddialog.cpp | 2 +- examples/graphicsview/embeddeddialogs/embeddeddialog.h | 2 +- examples/graphicsview/embeddeddialogs/main.cpp | 2 +- examples/graphicsview/flowlayout/flowlayout.cpp | 2 +- examples/graphicsview/flowlayout/flowlayout.h | 2 +- examples/graphicsview/flowlayout/main.cpp | 2 +- examples/graphicsview/flowlayout/window.cpp | 2 +- examples/graphicsview/flowlayout/window.h | 2 +- examples/graphicsview/padnavigator/flippablepad.cpp | 2 +- examples/graphicsview/padnavigator/flippablepad.h | 2 +- examples/graphicsview/padnavigator/main.cpp | 2 +- examples/graphicsview/padnavigator/padnavigator.cpp | 2 +- examples/graphicsview/padnavigator/padnavigator.h | 2 +- examples/graphicsview/padnavigator/roundrectitem.cpp | 2 +- examples/graphicsview/padnavigator/roundrectitem.h | 2 +- examples/graphicsview/padnavigator/splashitem.cpp | 2 +- examples/graphicsview/padnavigator/splashitem.h | 2 +- examples/graphicsview/simpleanchorlayout/main.cpp | 2 +- examples/graphicsview/weatheranchorlayout/main.cpp | 2 +- examples/ipc/localfortuneclient/client.cpp | 2 +- examples/ipc/localfortuneclient/client.h | 2 +- examples/ipc/localfortuneclient/main.cpp | 2 +- examples/ipc/localfortuneserver/main.cpp | 2 +- examples/ipc/localfortuneserver/server.cpp | 2 +- examples/ipc/localfortuneserver/server.h | 2 +- examples/ipc/sharedmemory/dialog.cpp | 2 +- examples/ipc/sharedmemory/dialog.h | 2 +- examples/ipc/sharedmemory/main.cpp | 2 +- examples/itemviews/addressbook/adddialog.cpp | 2 +- examples/itemviews/addressbook/adddialog.h | 2 +- examples/itemviews/addressbook/addresswidget.cpp | 2 +- examples/itemviews/addressbook/addresswidget.h | 2 +- examples/itemviews/addressbook/main.cpp | 2 +- examples/itemviews/addressbook/mainwindow.cpp | 2 +- examples/itemviews/addressbook/mainwindow.h | 2 +- examples/itemviews/addressbook/newaddresstab.cpp | 2 +- examples/itemviews/addressbook/newaddresstab.h | 2 +- examples/itemviews/addressbook/tablemodel.cpp | 2 +- examples/itemviews/addressbook/tablemodel.h | 2 +- examples/itemviews/basicsortfiltermodel/main.cpp | 2 +- examples/itemviews/basicsortfiltermodel/window.cpp | 2 +- examples/itemviews/basicsortfiltermodel/window.h | 2 +- examples/itemviews/chart/main.cpp | 2 +- examples/itemviews/chart/mainwindow.cpp | 2 +- examples/itemviews/chart/mainwindow.h | 2 +- examples/itemviews/chart/pieview.cpp | 2 +- examples/itemviews/chart/pieview.h | 2 +- examples/itemviews/coloreditorfactory/colorlisteditor.cpp | 2 +- examples/itemviews/coloreditorfactory/colorlisteditor.h | 2 +- examples/itemviews/coloreditorfactory/main.cpp | 2 +- examples/itemviews/coloreditorfactory/window.cpp | 2 +- examples/itemviews/coloreditorfactory/window.h | 2 +- examples/itemviews/combowidgetmapper/main.cpp | 2 +- examples/itemviews/combowidgetmapper/window.cpp | 2 +- examples/itemviews/combowidgetmapper/window.h | 2 +- examples/itemviews/customsortfiltermodel/main.cpp | 2 +- examples/itemviews/customsortfiltermodel/mysortfilterproxymodel.cpp | 2 +- examples/itemviews/customsortfiltermodel/mysortfilterproxymodel.h | 2 +- examples/itemviews/customsortfiltermodel/window.cpp | 2 +- examples/itemviews/customsortfiltermodel/window.h | 2 +- examples/itemviews/dirview/main.cpp | 2 +- examples/itemviews/editabletreemodel/main.cpp | 2 +- examples/itemviews/editabletreemodel/mainwindow.cpp | 2 +- examples/itemviews/editabletreemodel/mainwindow.h | 2 +- examples/itemviews/editabletreemodel/treeitem.cpp | 2 +- examples/itemviews/editabletreemodel/treeitem.h | 2 +- examples/itemviews/editabletreemodel/treemodel.cpp | 2 +- examples/itemviews/editabletreemodel/treemodel.h | 2 +- examples/itemviews/fetchmore/filelistmodel.cpp | 2 +- examples/itemviews/fetchmore/filelistmodel.h | 2 +- examples/itemviews/fetchmore/main.cpp | 2 +- examples/itemviews/fetchmore/window.cpp | 2 +- examples/itemviews/fetchmore/window.h | 2 +- examples/itemviews/frozencolumn/freezetablewidget.cpp | 2 +- examples/itemviews/frozencolumn/freezetablewidget.h | 2 +- examples/itemviews/frozencolumn/main.cpp | 2 +- examples/itemviews/interview/main.cpp | 2 +- examples/itemviews/interview/model.cpp | 2 +- examples/itemviews/interview/model.h | 2 +- examples/itemviews/pixelator/imagemodel.cpp | 2 +- examples/itemviews/pixelator/imagemodel.h | 2 +- examples/itemviews/pixelator/main.cpp | 2 +- examples/itemviews/pixelator/mainwindow.cpp | 2 +- examples/itemviews/pixelator/mainwindow.h | 2 +- examples/itemviews/pixelator/pixeldelegate.cpp | 2 +- examples/itemviews/pixelator/pixeldelegate.h | 2 +- examples/itemviews/puzzle/main.cpp | 2 +- examples/itemviews/puzzle/mainwindow.cpp | 2 +- examples/itemviews/puzzle/mainwindow.h | 2 +- examples/itemviews/puzzle/piecesmodel.cpp | 2 +- examples/itemviews/puzzle/piecesmodel.h | 2 +- examples/itemviews/puzzle/puzzlewidget.cpp | 2 +- examples/itemviews/puzzle/puzzlewidget.h | 2 +- examples/itemviews/simpledommodel/domitem.cpp | 2 +- examples/itemviews/simpledommodel/domitem.h | 2 +- examples/itemviews/simpledommodel/dommodel.cpp | 2 +- examples/itemviews/simpledommodel/dommodel.h | 2 +- examples/itemviews/simpledommodel/main.cpp | 2 +- examples/itemviews/simpledommodel/mainwindow.cpp | 2 +- examples/itemviews/simpledommodel/mainwindow.h | 2 +- examples/itemviews/simpletreemodel/main.cpp | 2 +- examples/itemviews/simpletreemodel/treeitem.cpp | 2 +- examples/itemviews/simpletreemodel/treeitem.h | 2 +- examples/itemviews/simpletreemodel/treemodel.cpp | 2 +- examples/itemviews/simpletreemodel/treemodel.h | 2 +- examples/itemviews/simplewidgetmapper/main.cpp | 2 +- examples/itemviews/simplewidgetmapper/window.cpp | 2 +- examples/itemviews/simplewidgetmapper/window.h | 2 +- examples/itemviews/spinboxdelegate/delegate.cpp | 2 +- examples/itemviews/spinboxdelegate/delegate.h | 2 +- examples/itemviews/spinboxdelegate/main.cpp | 2 +- examples/itemviews/spreadsheet/main.cpp | 2 +- examples/itemviews/spreadsheet/printview.cpp | 2 +- examples/itemviews/spreadsheet/printview.h | 2 +- examples/itemviews/spreadsheet/spreadsheet.cpp | 2 +- examples/itemviews/spreadsheet/spreadsheet.h | 2 +- examples/itemviews/spreadsheet/spreadsheetdelegate.cpp | 2 +- examples/itemviews/spreadsheet/spreadsheetdelegate.h | 2 +- examples/itemviews/spreadsheet/spreadsheetitem.cpp | 2 +- examples/itemviews/spreadsheet/spreadsheetitem.h | 2 +- examples/itemviews/stardelegate/main.cpp | 2 +- examples/itemviews/stardelegate/stardelegate.cpp | 2 +- examples/itemviews/stardelegate/stardelegate.h | 2 +- examples/itemviews/stardelegate/stareditor.cpp | 2 +- examples/itemviews/stardelegate/stareditor.h | 2 +- examples/itemviews/stardelegate/starrating.cpp | 2 +- examples/itemviews/stardelegate/starrating.h | 2 +- examples/ja_JP/linguist/hellotr/main.cpp | 2 +- examples/layouts/basiclayouts/dialog.cpp | 2 +- examples/layouts/basiclayouts/dialog.h | 2 +- examples/layouts/basiclayouts/main.cpp | 2 +- examples/layouts/borderlayout/borderlayout.cpp | 2 +- examples/layouts/borderlayout/borderlayout.h | 2 +- examples/layouts/borderlayout/main.cpp | 2 +- examples/layouts/borderlayout/window.cpp | 2 +- examples/layouts/borderlayout/window.h | 2 +- examples/layouts/dynamiclayouts/dialog.cpp | 2 +- examples/layouts/dynamiclayouts/dialog.h | 2 +- examples/layouts/dynamiclayouts/main.cpp | 2 +- examples/layouts/flowlayout/flowlayout.cpp | 2 +- examples/layouts/flowlayout/flowlayout.h | 2 +- examples/layouts/flowlayout/main.cpp | 2 +- examples/layouts/flowlayout/window.cpp | 2 +- examples/layouts/flowlayout/window.h | 2 +- examples/linguist/arrowpad/arrowpad.cpp | 2 +- examples/linguist/arrowpad/arrowpad.h | 2 +- examples/linguist/arrowpad/main.cpp | 2 +- examples/linguist/arrowpad/mainwindow.cpp | 2 +- examples/linguist/arrowpad/mainwindow.h | 2 +- examples/linguist/hellotr/main.cpp | 2 +- examples/linguist/trollprint/main.cpp | 2 +- examples/linguist/trollprint/mainwindow.cpp | 2 +- examples/linguist/trollprint/mainwindow.h | 2 +- examples/linguist/trollprint/printpanel.cpp | 2 +- examples/linguist/trollprint/printpanel.h | 2 +- examples/mainwindows/application/main.cpp | 2 +- examples/mainwindows/application/mainwindow.cpp | 2 +- examples/mainwindows/application/mainwindow.h | 2 +- examples/mainwindows/dockwidgets/main.cpp | 2 +- examples/mainwindows/dockwidgets/mainwindow.cpp | 2 +- examples/mainwindows/dockwidgets/mainwindow.h | 2 +- examples/mainwindows/macmainwindow/macmainwindow.h | 2 +- examples/mainwindows/macmainwindow/macmainwindow.mm | 2 +- examples/mainwindows/macmainwindow/main.cpp | 2 +- examples/mainwindows/mainwindow/colorswatch.cpp | 2 +- examples/mainwindows/mainwindow/colorswatch.h | 2 +- examples/mainwindows/mainwindow/main.cpp | 2 +- examples/mainwindows/mainwindow/mainwindow.cpp | 2 +- examples/mainwindows/mainwindow/mainwindow.h | 2 +- examples/mainwindows/mainwindow/toolbar.cpp | 2 +- examples/mainwindows/mainwindow/toolbar.h | 2 +- examples/mainwindows/mdi/main.cpp | 2 +- examples/mainwindows/mdi/mainwindow.cpp | 2 +- examples/mainwindows/mdi/mainwindow.h | 2 +- examples/mainwindows/mdi/mdichild.cpp | 2 +- examples/mainwindows/mdi/mdichild.h | 2 +- examples/mainwindows/menus/main.cpp | 2 +- examples/mainwindows/menus/mainwindow.cpp | 2 +- examples/mainwindows/menus/mainwindow.h | 2 +- examples/mainwindows/recentfiles/main.cpp | 2 +- examples/mainwindows/recentfiles/mainwindow.cpp | 2 +- examples/mainwindows/recentfiles/mainwindow.h | 2 +- examples/mainwindows/sdi/main.cpp | 2 +- examples/mainwindows/sdi/mainwindow.cpp | 2 +- examples/mainwindows/sdi/mainwindow.h | 2 +- examples/network/bearermonitor/bearermonitor.cpp | 2 +- examples/network/bearermonitor/bearermonitor.h | 2 +- examples/network/bearermonitor/main.cpp | 2 +- examples/network/bearermonitor/sessionwidget.cpp | 2 +- examples/network/bearermonitor/sessionwidget.h | 2 +- examples/network/blockingfortuneclient/blockingclient.cpp | 2 +- examples/network/blockingfortuneclient/blockingclient.h | 2 +- examples/network/blockingfortuneclient/fortunethread.cpp | 2 +- examples/network/blockingfortuneclient/fortunethread.h | 2 +- examples/network/blockingfortuneclient/main.cpp | 2 +- examples/network/broadcastreceiver/main.cpp | 2 +- examples/network/broadcastreceiver/receiver.cpp | 2 +- examples/network/broadcastreceiver/receiver.h | 2 +- examples/network/broadcastsender/main.cpp | 2 +- examples/network/broadcastsender/sender.cpp | 2 +- examples/network/broadcastsender/sender.h | 2 +- examples/network/download/main.cpp | 2 +- examples/network/downloadmanager/downloadmanager.cpp | 2 +- examples/network/downloadmanager/downloadmanager.h | 2 +- examples/network/downloadmanager/main.cpp | 2 +- examples/network/downloadmanager/textprogressbar.cpp | 2 +- examples/network/downloadmanager/textprogressbar.h | 2 +- examples/network/fortuneclient/client.cpp | 2 +- examples/network/fortuneclient/client.h | 2 +- examples/network/fortuneclient/main.cpp | 2 +- examples/network/fortuneserver/main.cpp | 2 +- examples/network/fortuneserver/server.cpp | 2 +- examples/network/fortuneserver/server.h | 2 +- examples/network/googlesuggest/googlesuggest.cpp | 2 +- examples/network/googlesuggest/googlesuggest.h | 2 +- examples/network/googlesuggest/main.cpp | 2 +- examples/network/googlesuggest/searchbox.cpp | 2 +- examples/network/googlesuggest/searchbox.h | 2 +- examples/network/http/httpwindow.cpp | 2 +- examples/network/http/httpwindow.h | 2 +- examples/network/http/main.cpp | 2 +- examples/network/loopback/dialog.cpp | 2 +- examples/network/loopback/dialog.h | 2 +- examples/network/loopback/main.cpp | 2 +- examples/network/multicastreceiver/main.cpp | 2 +- examples/network/multicastreceiver/receiver.cpp | 2 +- examples/network/multicastreceiver/receiver.h | 2 +- examples/network/multicastsender/main.cpp | 2 +- examples/network/multicastsender/sender.cpp | 2 +- examples/network/multicastsender/sender.h | 2 +- examples/network/network-chat/chatdialog.cpp | 2 +- examples/network/network-chat/chatdialog.h | 2 +- examples/network/network-chat/client.cpp | 2 +- examples/network/network-chat/client.h | 2 +- examples/network/network-chat/connection.cpp | 2 +- examples/network/network-chat/connection.h | 2 +- examples/network/network-chat/main.cpp | 2 +- examples/network/network-chat/peermanager.cpp | 2 +- examples/network/network-chat/peermanager.h | 2 +- examples/network/network-chat/server.cpp | 2 +- examples/network/network-chat/server.h | 2 +- examples/network/qftp/ftpwindow.cpp | 2 +- examples/network/qftp/ftpwindow.h | 2 +- examples/network/qftp/main.cpp | 2 +- examples/network/securesocketclient/certificateinfo.cpp | 2 +- examples/network/securesocketclient/certificateinfo.h | 2 +- examples/network/securesocketclient/main.cpp | 2 +- examples/network/securesocketclient/sslclient.cpp | 2 +- examples/network/securesocketclient/sslclient.h | 2 +- examples/network/threadedfortuneserver/dialog.cpp | 2 +- examples/network/threadedfortuneserver/dialog.h | 2 +- examples/network/threadedfortuneserver/fortuneserver.cpp | 2 +- examples/network/threadedfortuneserver/fortuneserver.h | 2 +- examples/network/threadedfortuneserver/fortunethread.cpp | 2 +- examples/network/threadedfortuneserver/fortunethread.h | 2 +- examples/network/threadedfortuneserver/main.cpp | 2 +- examples/network/torrent/addtorrentdialog.cpp | 2 +- examples/network/torrent/addtorrentdialog.h | 2 +- examples/network/torrent/bencodeparser.cpp | 2 +- examples/network/torrent/bencodeparser.h | 2 +- examples/network/torrent/connectionmanager.cpp | 2 +- examples/network/torrent/connectionmanager.h | 2 +- examples/network/torrent/filemanager.cpp | 2 +- examples/network/torrent/filemanager.h | 2 +- examples/network/torrent/main.cpp | 2 +- examples/network/torrent/mainwindow.cpp | 2 +- examples/network/torrent/mainwindow.h | 2 +- examples/network/torrent/metainfo.cpp | 2 +- examples/network/torrent/metainfo.h | 2 +- examples/network/torrent/peerwireclient.cpp | 2 +- examples/network/torrent/peerwireclient.h | 2 +- examples/network/torrent/ratecontroller.cpp | 2 +- examples/network/torrent/ratecontroller.h | 2 +- examples/network/torrent/torrentclient.cpp | 2 +- examples/network/torrent/torrentclient.h | 2 +- examples/network/torrent/torrentserver.cpp | 2 +- examples/network/torrent/torrentserver.h | 2 +- examples/network/torrent/trackerclient.cpp | 2 +- examples/network/torrent/trackerclient.h | 2 +- examples/opengl/2dpainting/glwidget.cpp | 2 +- examples/opengl/2dpainting/glwidget.h | 2 +- examples/opengl/2dpainting/helper.cpp | 2 +- examples/opengl/2dpainting/helper.h | 2 +- examples/opengl/2dpainting/main.cpp | 2 +- examples/opengl/2dpainting/widget.cpp | 2 +- examples/opengl/2dpainting/widget.h | 2 +- examples/opengl/2dpainting/window.cpp | 2 +- examples/opengl/2dpainting/window.h | 2 +- examples/opengl/cube/geometryengine.cpp | 2 +- examples/opengl/cube/geometryengine.h | 2 +- examples/opengl/cube/main.cpp | 2 +- examples/opengl/cube/mainwidget.cpp | 2 +- examples/opengl/cube/mainwidget.h | 2 +- examples/opengl/framebufferobject2/glwidget.cpp | 2 +- examples/opengl/framebufferobject2/glwidget.h | 2 +- examples/opengl/framebufferobject2/main.cpp | 2 +- examples/opengl/grabber/glwidget.cpp | 2 +- examples/opengl/grabber/glwidget.h | 2 +- examples/opengl/grabber/main.cpp | 2 +- examples/opengl/grabber/mainwindow.cpp | 2 +- examples/opengl/grabber/mainwindow.h | 2 +- examples/opengl/hellogl/glwidget.cpp | 2 +- examples/opengl/hellogl/glwidget.h | 2 +- examples/opengl/hellogl/main.cpp | 2 +- examples/opengl/hellogl/window.cpp | 2 +- examples/opengl/hellogl/window.h | 2 +- examples/opengl/hellogl_es/glwindow.cpp | 2 +- examples/opengl/hellogl_es/glwindow.h | 2 +- examples/opengl/hellogl_es/main.cpp | 2 +- examples/opengl/hellogl_es2/bubble.cpp | 2 +- examples/opengl/hellogl_es2/bubble.h | 2 +- examples/opengl/hellogl_es2/glwidget.cpp | 2 +- examples/opengl/hellogl_es2/glwidget.h | 2 +- examples/opengl/hellogl_es2/main.cpp | 2 +- examples/opengl/hellogl_es2/mainwindow.cpp | 2 +- examples/opengl/hellogl_es2/mainwindow.h | 2 +- examples/opengl/hellowindow/hellowindow.cpp | 2 +- examples/opengl/hellowindow/hellowindow.h | 2 +- examples/opengl/hellowindow/main.cpp | 2 +- examples/opengl/overpainting/bubble.cpp | 2 +- examples/opengl/overpainting/bubble.h | 2 +- examples/opengl/overpainting/glwidget.cpp | 2 +- examples/opengl/overpainting/glwidget.h | 2 +- examples/opengl/overpainting/main.cpp | 2 +- examples/opengl/paintedwindow/main.cpp | 2 +- examples/opengl/paintedwindow/paintedwindow.cpp | 2 +- examples/opengl/paintedwindow/paintedwindow.h | 2 +- examples/opengl/pbuffers/cube.cpp | 2 +- examples/opengl/pbuffers/cube.h | 2 +- examples/opengl/pbuffers/glwidget.cpp | 2 +- examples/opengl/pbuffers/glwidget.h | 2 +- examples/opengl/pbuffers/main.cpp | 2 +- examples/opengl/pbuffers2/glwidget.cpp | 2 +- examples/opengl/pbuffers2/glwidget.h | 2 +- examples/opengl/pbuffers2/main.cpp | 2 +- examples/opengl/samplebuffers/glwidget.cpp | 2 +- examples/opengl/samplebuffers/glwidget.h | 2 +- examples/opengl/samplebuffers/main.cpp | 2 +- examples/opengl/shared/qtlogo.cpp | 2 +- examples/opengl/shared/qtlogo.h | 2 +- examples/opengl/textures/glwidget.cpp | 2 +- examples/opengl/textures/glwidget.h | 2 +- examples/opengl/textures/main.cpp | 2 +- examples/opengl/textures/window.cpp | 2 +- examples/opengl/textures/window.h | 2 +- examples/painting/affine/main.cpp | 2 +- examples/painting/affine/xform.cpp | 2 +- examples/painting/affine/xform.h | 2 +- examples/painting/basicdrawing/main.cpp | 2 +- examples/painting/basicdrawing/renderarea.cpp | 2 +- examples/painting/basicdrawing/renderarea.h | 2 +- examples/painting/basicdrawing/window.cpp | 2 +- examples/painting/basicdrawing/window.h | 2 +- examples/painting/composition/composition.cpp | 2 +- examples/painting/composition/composition.h | 2 +- examples/painting/composition/main.cpp | 2 +- examples/painting/concentriccircles/circlewidget.cpp | 2 +- examples/painting/concentriccircles/circlewidget.h | 2 +- examples/painting/concentriccircles/main.cpp | 2 +- examples/painting/concentriccircles/window.cpp | 2 +- examples/painting/concentriccircles/window.h | 2 +- examples/painting/deform/main.cpp | 2 +- examples/painting/deform/pathdeform.cpp | 2 +- examples/painting/deform/pathdeform.h | 2 +- examples/painting/fontsampler/main.cpp | 2 +- examples/painting/fontsampler/mainwindow.cpp | 2 +- examples/painting/fontsampler/mainwindow.h | 2 +- examples/painting/gradients/gradients.cpp | 2 +- examples/painting/gradients/gradients.h | 2 +- examples/painting/gradients/main.cpp | 2 +- examples/painting/imagecomposition/imagecomposer.cpp | 2 +- examples/painting/imagecomposition/imagecomposer.h | 2 +- examples/painting/imagecomposition/main.cpp | 2 +- examples/painting/painterpaths/main.cpp | 2 +- examples/painting/painterpaths/renderarea.cpp | 2 +- examples/painting/painterpaths/renderarea.h | 2 +- examples/painting/painterpaths/window.cpp | 2 +- examples/painting/painterpaths/window.h | 2 +- examples/painting/pathstroke/main.cpp | 2 +- examples/painting/pathstroke/pathstroke.cpp | 2 +- examples/painting/pathstroke/pathstroke.h | 2 +- examples/painting/shared/arthurstyle.cpp | 2 +- examples/painting/shared/arthurstyle.h | 2 +- examples/painting/shared/arthurwidgets.cpp | 2 +- examples/painting/shared/arthurwidgets.h | 2 +- examples/painting/shared/hoverpoints.cpp | 2 +- examples/painting/shared/hoverpoints.h | 2 +- examples/painting/transformations/main.cpp | 2 +- examples/painting/transformations/renderarea.cpp | 2 +- examples/painting/transformations/renderarea.h | 2 +- examples/painting/transformations/window.cpp | 2 +- examples/painting/transformations/window.h | 2 +- examples/qmake/precompile/main.cpp | 2 +- examples/qmake/precompile/mydialog.cpp | 2 +- examples/qmake/precompile/mydialog.h | 2 +- examples/qmake/precompile/myobject.cpp | 2 +- examples/qmake/precompile/myobject.h | 2 +- examples/qmake/precompile/stable.h | 2 +- examples/qmake/precompile/util.cpp | 2 +- examples/qmake/tutorial/hello.cpp | 2 +- examples/qmake/tutorial/hello.h | 2 +- examples/qmake/tutorial/hellounix.cpp | 2 +- examples/qmake/tutorial/hellowin.cpp | 2 +- examples/qmake/tutorial/main.cpp | 2 +- examples/qpa/windows/main.cpp | 2 +- examples/qpa/windows/window.cpp | 2 +- examples/qpa/windows/window.h | 2 +- examples/qtconcurrent/imagescaling/imagescaling.cpp | 2 +- examples/qtconcurrent/imagescaling/imagescaling.h | 2 +- examples/qtconcurrent/imagescaling/main.cpp | 2 +- examples/qtconcurrent/map/main.cpp | 2 +- examples/qtconcurrent/progressdialog/main.cpp | 2 +- examples/qtconcurrent/runfunction/main.cpp | 2 +- examples/qtconcurrent/wordcount/main.cpp | 2 +- examples/qtestlib/tutorial1/testqstring.cpp | 2 +- examples/qtestlib/tutorial2/testqstring.cpp | 2 +- examples/qtestlib/tutorial3/testgui.cpp | 2 +- examples/qtestlib/tutorial4/testgui.cpp | 2 +- examples/qtestlib/tutorial5/benchmarking.cpp | 2 +- examples/qtestlib/tutorial5/containers.cpp | 2 +- examples/qws/dbscreen/dbscreen.cpp | 2 +- examples/qws/dbscreen/dbscreen.h | 2 +- examples/qws/dbscreen/dbscreendriverplugin.cpp | 2 +- examples/qws/framebuffer/main.c | 2 +- examples/qws/mousecalibration/calibration.cpp | 2 +- examples/qws/mousecalibration/calibration.h | 2 +- examples/qws/mousecalibration/main.cpp | 2 +- examples/qws/mousecalibration/scribblewidget.cpp | 2 +- examples/qws/mousecalibration/scribblewidget.h | 2 +- examples/qws/simpledecoration/analogclock.cpp | 2 +- examples/qws/simpledecoration/analogclock.h | 2 +- examples/qws/simpledecoration/main.cpp | 2 +- examples/qws/simpledecoration/mydecoration.cpp | 2 +- examples/qws/simpledecoration/mydecoration.h | 2 +- examples/qws/svgalib/svgalibpaintdevice.cpp | 2 +- examples/qws/svgalib/svgalibpaintdevice.h | 2 +- examples/qws/svgalib/svgalibpaintengine.cpp | 2 +- examples/qws/svgalib/svgalibpaintengine.h | 2 +- examples/qws/svgalib/svgalibplugin.cpp | 2 +- examples/qws/svgalib/svgalibscreen.cpp | 2 +- examples/qws/svgalib/svgalibscreen.h | 2 +- examples/qws/svgalib/svgalibsurface.cpp | 2 +- examples/qws/svgalib/svgalibsurface.h | 2 +- examples/richtext/calendar/main.cpp | 2 +- examples/richtext/calendar/mainwindow.cpp | 2 +- examples/richtext/calendar/mainwindow.h | 2 +- examples/richtext/orderform/detailsdialog.cpp | 2 +- examples/richtext/orderform/detailsdialog.h | 2 +- examples/richtext/orderform/main.cpp | 2 +- examples/richtext/orderform/mainwindow.cpp | 2 +- examples/richtext/orderform/mainwindow.h | 2 +- examples/richtext/syntaxhighlighter/highlighter.cpp | 2 +- examples/richtext/syntaxhighlighter/highlighter.h | 2 +- examples/richtext/syntaxhighlighter/main.cpp | 2 +- examples/richtext/syntaxhighlighter/mainwindow.cpp | 2 +- examples/richtext/syntaxhighlighter/mainwindow.h | 2 +- examples/richtext/textedit/main.cpp | 2 +- examples/richtext/textedit/textedit.cpp | 2 +- examples/richtext/textedit/textedit.h | 2 +- examples/richtext/textedit/textedit.qdoc | 2 +- examples/scroller/graphicsview/main.cpp | 2 +- examples/sql/books/bookdelegate.cpp | 2 +- examples/sql/books/bookdelegate.h | 2 +- examples/sql/books/bookwindow.cpp | 2 +- examples/sql/books/bookwindow.h | 2 +- examples/sql/books/initdb.h | 2 +- examples/sql/books/main.cpp | 2 +- examples/sql/cachedtable/main.cpp | 2 +- examples/sql/cachedtable/tableeditor.cpp | 2 +- examples/sql/cachedtable/tableeditor.h | 2 +- examples/sql/connection.h | 2 +- examples/sql/drilldown/imageitem.cpp | 2 +- examples/sql/drilldown/imageitem.h | 2 +- examples/sql/drilldown/informationwindow.cpp | 2 +- examples/sql/drilldown/informationwindow.h | 2 +- examples/sql/drilldown/main.cpp | 2 +- examples/sql/drilldown/view.cpp | 2 +- examples/sql/drilldown/view.h | 2 +- examples/sql/masterdetail/database.h | 2 +- examples/sql/masterdetail/dialog.cpp | 2 +- examples/sql/masterdetail/dialog.h | 2 +- examples/sql/masterdetail/main.cpp | 2 +- examples/sql/masterdetail/mainwindow.cpp | 2 +- examples/sql/masterdetail/mainwindow.h | 2 +- examples/sql/querymodel/customsqlmodel.cpp | 2 +- examples/sql/querymodel/customsqlmodel.h | 2 +- examples/sql/querymodel/editablesqlmodel.cpp | 2 +- examples/sql/querymodel/editablesqlmodel.h | 2 +- examples/sql/querymodel/main.cpp | 2 +- examples/sql/relationaltablemodel/relationaltablemodel.cpp | 2 +- examples/sql/sqlbrowser/browser.cpp | 2 +- examples/sql/sqlbrowser/browser.h | 2 +- examples/sql/sqlbrowser/connectionwidget.cpp | 2 +- examples/sql/sqlbrowser/connectionwidget.h | 2 +- examples/sql/sqlbrowser/main.cpp | 2 +- examples/sql/sqlbrowser/qsqlconnectiondialog.cpp | 2 +- examples/sql/sqlbrowser/qsqlconnectiondialog.h | 2 +- examples/sql/sqlwidgetmapper/main.cpp | 2 +- examples/sql/sqlwidgetmapper/window.cpp | 2 +- examples/sql/sqlwidgetmapper/window.h | 2 +- examples/sql/tablemodel/tablemodel.cpp | 2 +- examples/statemachine/eventtransitions/main.cpp | 2 +- examples/statemachine/factorial/main.cpp | 2 +- examples/statemachine/pingpong/main.cpp | 2 +- examples/statemachine/rogue/main.cpp | 2 +- examples/statemachine/rogue/movementtransition.h | 2 +- examples/statemachine/rogue/window.cpp | 2 +- examples/statemachine/rogue/window.h | 2 +- examples/statemachine/trafficlight/main.cpp | 2 +- examples/statemachine/twowaybutton/main.cpp | 2 +- examples/threads/mandelbrot/main.cpp | 2 +- examples/threads/mandelbrot/mandelbrotwidget.cpp | 2 +- examples/threads/mandelbrot/mandelbrotwidget.h | 2 +- examples/threads/mandelbrot/renderthread.cpp | 2 +- examples/threads/mandelbrot/renderthread.h | 2 +- examples/threads/queuedcustomtype/block.cpp | 2 +- examples/threads/queuedcustomtype/block.h | 2 +- examples/threads/queuedcustomtype/main.cpp | 2 +- examples/threads/queuedcustomtype/renderthread.cpp | 2 +- examples/threads/queuedcustomtype/renderthread.h | 2 +- examples/threads/queuedcustomtype/window.cpp | 2 +- examples/threads/queuedcustomtype/window.h | 2 +- examples/threads/semaphores/semaphores.cpp | 2 +- examples/threads/waitconditions/waitconditions.cpp | 2 +- examples/tools/codecs/main.cpp | 2 +- examples/tools/codecs/mainwindow.cpp | 2 +- examples/tools/codecs/mainwindow.h | 2 +- examples/tools/codecs/previewform.cpp | 2 +- examples/tools/codecs/previewform.h | 2 +- examples/tools/completer/fsmodel.cpp | 2 +- examples/tools/completer/fsmodel.h | 2 +- examples/tools/completer/main.cpp | 2 +- examples/tools/completer/mainwindow.cpp | 2 +- examples/tools/completer/mainwindow.h | 2 +- examples/tools/contiguouscache/main.cpp | 2 +- examples/tools/contiguouscache/randomlistmodel.cpp | 2 +- examples/tools/contiguouscache/randomlistmodel.h | 2 +- examples/tools/customcompleter/main.cpp | 2 +- examples/tools/customcompleter/mainwindow.cpp | 2 +- examples/tools/customcompleter/mainwindow.h | 2 +- examples/tools/customcompleter/textedit.cpp | 2 +- examples/tools/customcompleter/textedit.h | 2 +- examples/tools/customtype/main.cpp | 2 +- examples/tools/customtype/message.cpp | 2 +- examples/tools/customtype/message.h | 2 +- examples/tools/customtypesending/main.cpp | 2 +- examples/tools/customtypesending/message.cpp | 2 +- examples/tools/customtypesending/message.h | 2 +- examples/tools/customtypesending/window.cpp | 2 +- examples/tools/customtypesending/window.h | 2 +- examples/tools/echoplugin/echowindow/echointerface.h | 2 +- examples/tools/echoplugin/echowindow/echowindow.cpp | 2 +- examples/tools/echoplugin/echowindow/echowindow.h | 2 +- examples/tools/echoplugin/echowindow/main.cpp | 2 +- examples/tools/echoplugin/plugin/echoplugin.cpp | 2 +- examples/tools/echoplugin/plugin/echoplugin.h | 2 +- examples/tools/i18n/languagechooser.cpp | 2 +- examples/tools/i18n/languagechooser.h | 2 +- examples/tools/i18n/main.cpp | 2 +- examples/tools/i18n/mainwindow.cpp | 2 +- examples/tools/i18n/mainwindow.h | 2 +- examples/tools/inputpanel/main.cpp | 2 +- examples/tools/inputpanel/myinputpanel.cpp | 2 +- examples/tools/inputpanel/myinputpanel.h | 2 +- examples/tools/inputpanel/myinputpanelcontext.cpp | 2 +- examples/tools/inputpanel/myinputpanelcontext.h | 2 +- examples/tools/plugandpaint/interfaces.h | 2 +- examples/tools/plugandpaint/main.cpp | 2 +- examples/tools/plugandpaint/mainwindow.cpp | 2 +- examples/tools/plugandpaint/mainwindow.h | 2 +- examples/tools/plugandpaint/paintarea.cpp | 2 +- examples/tools/plugandpaint/paintarea.h | 2 +- examples/tools/plugandpaint/plugindialog.cpp | 2 +- examples/tools/plugandpaint/plugindialog.h | 2 +- examples/tools/plugandpaintplugins/basictools/basictoolsplugin.cpp | 2 +- examples/tools/plugandpaintplugins/basictools/basictoolsplugin.h | 2 +- .../tools/plugandpaintplugins/extrafilters/extrafiltersplugin.cpp | 2 +- .../tools/plugandpaintplugins/extrafilters/extrafiltersplugin.h | 2 +- examples/tools/regexp/main.cpp | 2 +- examples/tools/regexp/regexpdialog.cpp | 2 +- examples/tools/regexp/regexpdialog.h | 2 +- examples/tools/settingseditor/locationdialog.cpp | 2 +- examples/tools/settingseditor/locationdialog.h | 2 +- examples/tools/settingseditor/main.cpp | 2 +- examples/tools/settingseditor/mainwindow.cpp | 2 +- examples/tools/settingseditor/mainwindow.h | 2 +- examples/tools/settingseditor/settingstree.cpp | 2 +- examples/tools/settingseditor/settingstree.h | 2 +- examples/tools/settingseditor/variantdelegate.cpp | 2 +- examples/tools/settingseditor/variantdelegate.h | 2 +- examples/tools/styleplugin/plugin/simplestyle.cpp | 2 +- examples/tools/styleplugin/plugin/simplestyle.h | 2 +- examples/tools/styleplugin/plugin/simplestyleplugin.cpp | 2 +- examples/tools/styleplugin/plugin/simplestyleplugin.h | 2 +- examples/tools/styleplugin/stylewindow/main.cpp | 2 +- examples/tools/styleplugin/stylewindow/stylewindow.cpp | 2 +- examples/tools/styleplugin/stylewindow/stylewindow.h | 2 +- examples/tools/treemodelcompleter/main.cpp | 2 +- examples/tools/treemodelcompleter/mainwindow.cpp | 2 +- examples/tools/treemodelcompleter/mainwindow.h | 2 +- examples/tools/treemodelcompleter/treemodelcompleter.cpp | 2 +- examples/tools/treemodelcompleter/treemodelcompleter.h | 2 +- examples/tools/undo/commands.cpp | 2 +- examples/tools/undo/commands.h | 2 +- examples/tools/undo/document.cpp | 2 +- examples/tools/undo/document.h | 2 +- examples/tools/undo/main.cpp | 2 +- examples/tools/undo/mainwindow.cpp | 2 +- examples/tools/undo/mainwindow.h | 2 +- examples/tools/undoframework/commands.cpp | 2 +- examples/tools/undoframework/commands.h | 2 +- examples/tools/undoframework/diagramitem.cpp | 2 +- examples/tools/undoframework/diagramitem.h | 2 +- examples/tools/undoframework/diagramscene.cpp | 2 +- examples/tools/undoframework/diagramscene.h | 2 +- examples/tools/undoframework/main.cpp | 2 +- examples/tools/undoframework/mainwindow.cpp | 2 +- examples/tools/undoframework/mainwindow.h | 2 +- examples/touch/dials/main.cpp | 2 +- examples/touch/fingerpaint/main.cpp | 2 +- examples/touch/fingerpaint/mainwindow.cpp | 2 +- examples/touch/fingerpaint/mainwindow.h | 2 +- examples/touch/fingerpaint/scribblearea.cpp | 2 +- examples/touch/fingerpaint/scribblearea.h | 2 +- examples/touch/knobs/knob.cpp | 2 +- examples/touch/knobs/knob.h | 2 +- examples/touch/knobs/main.cpp | 2 +- examples/touch/pinchzoom/graphicsview.cpp | 2 +- examples/touch/pinchzoom/graphicsview.h | 2 +- examples/touch/pinchzoom/main.cpp | 2 +- examples/touch/pinchzoom/mouse.cpp | 2 +- examples/touch/pinchzoom/mouse.h | 2 +- examples/tutorials/addressbook-fr/part1/addressbook.cpp | 2 +- examples/tutorials/addressbook-fr/part1/addressbook.h | 2 +- examples/tutorials/addressbook-fr/part1/main.cpp | 2 +- examples/tutorials/addressbook-fr/part2/addressbook.cpp | 2 +- examples/tutorials/addressbook-fr/part2/addressbook.h | 2 +- examples/tutorials/addressbook-fr/part2/main.cpp | 2 +- examples/tutorials/addressbook-fr/part3/addressbook.cpp | 2 +- examples/tutorials/addressbook-fr/part3/addressbook.h | 2 +- examples/tutorials/addressbook-fr/part3/main.cpp | 2 +- examples/tutorials/addressbook-fr/part4/addressbook.cpp | 2 +- examples/tutorials/addressbook-fr/part4/addressbook.h | 2 +- examples/tutorials/addressbook-fr/part4/main.cpp | 2 +- examples/tutorials/addressbook-fr/part5/addressbook.cpp | 2 +- examples/tutorials/addressbook-fr/part5/addressbook.h | 2 +- examples/tutorials/addressbook-fr/part5/finddialog.cpp | 2 +- examples/tutorials/addressbook-fr/part5/finddialog.h | 2 +- examples/tutorials/addressbook-fr/part5/main.cpp | 2 +- examples/tutorials/addressbook-fr/part6/addressbook.cpp | 2 +- examples/tutorials/addressbook-fr/part6/addressbook.h | 2 +- examples/tutorials/addressbook-fr/part6/finddialog.cpp | 2 +- examples/tutorials/addressbook-fr/part6/finddialog.h | 2 +- examples/tutorials/addressbook-fr/part6/main.cpp | 2 +- examples/tutorials/addressbook-fr/part7/addressbook.cpp | 2 +- examples/tutorials/addressbook-fr/part7/addressbook.h | 2 +- examples/tutorials/addressbook-fr/part7/finddialog.cpp | 2 +- examples/tutorials/addressbook-fr/part7/finddialog.h | 2 +- examples/tutorials/addressbook-fr/part7/main.cpp | 2 +- examples/tutorials/addressbook/part1/addressbook.cpp | 2 +- examples/tutorials/addressbook/part1/addressbook.h | 2 +- examples/tutorials/addressbook/part1/main.cpp | 2 +- examples/tutorials/addressbook/part2/addressbook.cpp | 2 +- examples/tutorials/addressbook/part2/addressbook.h | 2 +- examples/tutorials/addressbook/part2/main.cpp | 2 +- examples/tutorials/addressbook/part3/addressbook.cpp | 2 +- examples/tutorials/addressbook/part3/addressbook.h | 2 +- examples/tutorials/addressbook/part3/main.cpp | 2 +- examples/tutorials/addressbook/part4/addressbook.cpp | 2 +- examples/tutorials/addressbook/part4/addressbook.h | 2 +- examples/tutorials/addressbook/part4/main.cpp | 2 +- examples/tutorials/addressbook/part5/addressbook.cpp | 2 +- examples/tutorials/addressbook/part5/addressbook.h | 2 +- examples/tutorials/addressbook/part5/finddialog.cpp | 2 +- examples/tutorials/addressbook/part5/finddialog.h | 2 +- examples/tutorials/addressbook/part5/main.cpp | 2 +- examples/tutorials/addressbook/part6/addressbook.cpp | 2 +- examples/tutorials/addressbook/part6/addressbook.h | 2 +- examples/tutorials/addressbook/part6/finddialog.cpp | 2 +- examples/tutorials/addressbook/part6/finddialog.h | 2 +- examples/tutorials/addressbook/part6/main.cpp | 2 +- examples/tutorials/addressbook/part7/addressbook.cpp | 2 +- examples/tutorials/addressbook/part7/addressbook.h | 2 +- examples/tutorials/addressbook/part7/finddialog.cpp | 2 +- examples/tutorials/addressbook/part7/finddialog.h | 2 +- examples/tutorials/addressbook/part7/main.cpp | 2 +- examples/tutorials/gettingStarted/gsQt/part1/main.cpp | 2 +- examples/tutorials/gettingStarted/gsQt/part2/main.cpp | 2 +- examples/tutorials/gettingStarted/gsQt/part3/main.cpp | 2 +- examples/tutorials/gettingStarted/gsQt/part4/main.cpp | 2 +- examples/tutorials/gettingStarted/gsQt/part5/main.cpp | 2 +- examples/tutorials/modelview/1_readonly/main.cpp | 2 +- examples/tutorials/modelview/1_readonly/mymodel.cpp | 2 +- examples/tutorials/modelview/1_readonly/mymodel.h | 2 +- examples/tutorials/modelview/2_formatting/main.cpp | 2 +- examples/tutorials/modelview/2_formatting/mymodel.cpp | 2 +- examples/tutorials/modelview/2_formatting/mymodel.h | 2 +- examples/tutorials/modelview/3_changingmodel/main.cpp | 2 +- examples/tutorials/modelview/3_changingmodel/mymodel.cpp | 2 +- examples/tutorials/modelview/3_changingmodel/mymodel.h | 2 +- examples/tutorials/modelview/4_headers/main.cpp | 2 +- examples/tutorials/modelview/4_headers/mymodel.cpp | 2 +- examples/tutorials/modelview/4_headers/mymodel.h | 2 +- examples/tutorials/modelview/5_edit/main.cpp | 2 +- examples/tutorials/modelview/5_edit/mainwindow.cpp | 2 +- examples/tutorials/modelview/5_edit/mainwindow.h | 2 +- examples/tutorials/modelview/5_edit/mymodel.cpp | 2 +- examples/tutorials/modelview/5_edit/mymodel.h | 2 +- examples/tutorials/modelview/6_treeview/main.cpp | 2 +- examples/tutorials/modelview/6_treeview/mainwindow.cpp | 2 +- examples/tutorials/modelview/6_treeview/mainwindow.h | 2 +- examples/tutorials/modelview/7_selections/main.cpp | 2 +- examples/tutorials/modelview/7_selections/mainwindow.cpp | 2 +- examples/tutorials/modelview/7_selections/mainwindow.h | 2 +- examples/tutorials/widgets/childwidget/main.cpp | 2 +- examples/tutorials/widgets/nestedlayouts/main.cpp | 2 +- examples/tutorials/widgets/toplevel/main.cpp | 2 +- examples/tutorials/widgets/windowlayout/main.cpp | 2 +- examples/webkit/webkit-guide/_image_assets.htm | 2 +- examples/webkit/webkit-guide/anim_accord.htm | 2 +- examples/webkit/webkit-guide/anim_demo-rotate.htm | 2 +- examples/webkit/webkit-guide/anim_demo-scale.htm | 2 +- examples/webkit/webkit-guide/anim_demo-skew.htm | 2 +- examples/webkit/webkit-guide/anim_gallery.htm | 2 +- examples/webkit/webkit-guide/anim_panel.htm | 2 +- examples/webkit/webkit-guide/anim_pulse.htm | 2 +- examples/webkit/webkit-guide/anim_skew.htm | 2 +- examples/webkit/webkit-guide/anim_slide1.htm | 2 +- examples/webkit/webkit-guide/anim_slide2.htm | 2 +- examples/webkit/webkit-guide/anim_slide3.htm | 2 +- examples/webkit/webkit-guide/anim_tabbedSkew.htm | 2 +- examples/webkit/webkit-guide/css/anim_accord.css | 2 +- examples/webkit/webkit-guide/css/anim_demo-rotate.css | 2 +- examples/webkit/webkit-guide/css/anim_demo-scale.css | 2 +- examples/webkit/webkit-guide/css/anim_demo-skew.css | 2 +- examples/webkit/webkit-guide/css/anim_gallery.css | 2 +- examples/webkit/webkit-guide/css/anim_panel.css | 2 +- examples/webkit/webkit-guide/css/anim_pulse.css | 2 +- examples/webkit/webkit-guide/css/anim_skew.css | 2 +- examples/webkit/webkit-guide/css/anim_slide.css | 2 +- examples/webkit/webkit-guide/css/anim_tabbedSkew.css | 2 +- examples/webkit/webkit-guide/css/css3_backgrounds.css | 2 +- examples/webkit/webkit-guide/css/css3_border-img.css | 2 +- examples/webkit/webkit-guide/css/css3_grad-radial.css | 2 +- examples/webkit/webkit-guide/css/css3_gradientBack.css | 2 +- examples/webkit/webkit-guide/css/css3_gradientBackStop.css | 2 +- examples/webkit/webkit-guide/css/css3_gradientButton.css | 2 +- examples/webkit/webkit-guide/css/css3_mask-grad.css | 2 +- examples/webkit/webkit-guide/css/css3_mask-img.css | 2 +- examples/webkit/webkit-guide/css/css3_multicol.css | 2 +- examples/webkit/webkit-guide/css/css3_reflect.css | 2 +- examples/webkit/webkit-guide/css/css3_scroll.css | 2 +- examples/webkit/webkit-guide/css/css3_sel-nth.css | 2 +- examples/webkit/webkit-guide/css/css3_shadow.css | 2 +- examples/webkit/webkit-guide/css/css3_shadowBlur.css | 2 +- examples/webkit/webkit-guide/css/css3_text-overflow.css | 2 +- examples/webkit/webkit-guide/css/css3_text-shadow.css | 2 +- examples/webkit/webkit-guide/css/css3_text-stroke.css | 2 +- examples/webkit/webkit-guide/css/form_tapper.css | 2 +- examples/webkit/webkit-guide/css/form_toggler.css | 2 +- examples/webkit/webkit-guide/css/layout_link-fmt.css | 2 +- examples/webkit/webkit-guide/css/layout_tbl-keyhole.css | 2 +- examples/webkit/webkit-guide/css/mob_condjs.css | 2 +- examples/webkit/webkit-guide/css/mob_mediaquery.css | 2 +- examples/webkit/webkit-guide/css/mobile.css | 2 +- examples/webkit/webkit-guide/css/mq_desktop.css | 2 +- examples/webkit/webkit-guide/css/mq_mobile.css | 2 +- examples/webkit/webkit-guide/css/mq_touch.css | 2 +- examples/webkit/webkit-guide/css/mqlayout_desktop.css | 2 +- examples/webkit/webkit-guide/css/mqlayout_mobile.css | 2 +- examples/webkit/webkit-guide/css/mqlayout_touch.css | 2 +- examples/webkit/webkit-guide/css/storage.css | 2 +- examples/webkit/webkit-guide/css3_backgrounds.htm | 2 +- examples/webkit/webkit-guide/css3_border-img.htm | 2 +- examples/webkit/webkit-guide/css3_grad-radial.htm | 2 +- examples/webkit/webkit-guide/css3_gradientBack.htm | 2 +- examples/webkit/webkit-guide/css3_gradientBackStop.htm | 2 +- examples/webkit/webkit-guide/css3_gradientButton.htm | 2 +- examples/webkit/webkit-guide/css3_mask-grad.htm | 2 +- examples/webkit/webkit-guide/css3_mask-img.htm | 2 +- examples/webkit/webkit-guide/css3_multicol.htm | 2 +- examples/webkit/webkit-guide/css3_reflect.htm | 2 +- examples/webkit/webkit-guide/css3_scroll.htm | 2 +- examples/webkit/webkit-guide/css3_sel-nth.htm | 2 +- examples/webkit/webkit-guide/css3_shadow.htm | 2 +- examples/webkit/webkit-guide/css3_text-overflow.htm | 2 +- examples/webkit/webkit-guide/css3_text-shadow.htm | 2 +- examples/webkit/webkit-guide/css3_text-stroke.htm | 2 +- examples/webkit/webkit-guide/form_tapper.htm | 2 +- examples/webkit/webkit-guide/form_toggler.htm | 2 +- examples/webkit/webkit-guide/js/anim_accord.js | 2 +- examples/webkit/webkit-guide/js/anim_gallery.js | 2 +- examples/webkit/webkit-guide/js/anim_panel.js | 2 +- examples/webkit/webkit-guide/js/anim_skew.js | 2 +- examples/webkit/webkit-guide/js/css3_backgrounds.js | 2 +- examples/webkit/webkit-guide/js/css3_border-img.js | 2 +- examples/webkit/webkit-guide/js/css3_grad-radial.js | 2 +- examples/webkit/webkit-guide/js/css3_mask-grad.js | 2 +- examples/webkit/webkit-guide/js/css3_mask-img.js | 2 +- examples/webkit/webkit-guide/js/css3_text-overflow.js | 2 +- examples/webkit/webkit-guide/js/form_tapper.js | 2 +- examples/webkit/webkit-guide/js/mob_condjs.js | 2 +- examples/webkit/webkit-guide/js/mobile.js | 2 +- examples/webkit/webkit-guide/js/storage.js | 2 +- examples/webkit/webkit-guide/layout_link-fmt.htm | 2 +- examples/webkit/webkit-guide/layout_tbl-keyhole.htm | 2 +- examples/webkit/webkit-guide/mob_condjs.htm | 2 +- examples/webkit/webkit-guide/mob_layout.htm | 2 +- examples/webkit/webkit-guide/mob_mediaquery.htm | 2 +- examples/webkit/webkit-guide/storage.htm | 2 +- examples/widgets/analogclock/analogclock.cpp | 2 +- examples/widgets/analogclock/analogclock.h | 2 +- examples/widgets/analogclock/main.cpp | 2 +- examples/widgets/applicationicon/main.cpp | 2 +- examples/widgets/calculator/button.cpp | 2 +- examples/widgets/calculator/button.h | 2 +- examples/widgets/calculator/calculator.cpp | 2 +- examples/widgets/calculator/calculator.h | 2 +- examples/widgets/calculator/main.cpp | 2 +- examples/widgets/calendarwidget/main.cpp | 2 +- examples/widgets/calendarwidget/window.cpp | 2 +- examples/widgets/calendarwidget/window.h | 2 +- examples/widgets/charactermap/characterwidget.cpp | 2 +- examples/widgets/charactermap/characterwidget.h | 2 +- examples/widgets/charactermap/main.cpp | 2 +- examples/widgets/charactermap/mainwindow.cpp | 2 +- examples/widgets/charactermap/mainwindow.h | 2 +- examples/widgets/codeeditor/codeeditor.cpp | 2 +- examples/widgets/codeeditor/codeeditor.h | 2 +- examples/widgets/codeeditor/main.cpp | 2 +- examples/widgets/digitalclock/digitalclock.cpp | 2 +- examples/widgets/digitalclock/digitalclock.h | 2 +- examples/widgets/digitalclock/main.cpp | 2 +- examples/widgets/elidedlabel/elidedlabel.cpp | 2 +- examples/widgets/elidedlabel/elidedlabel.h | 2 +- examples/widgets/elidedlabel/main.cpp | 2 +- examples/widgets/elidedlabel/testwidget.cpp | 2 +- examples/widgets/elidedlabel/testwidget.h | 2 +- examples/widgets/groupbox/main.cpp | 2 +- examples/widgets/groupbox/window.cpp | 2 +- examples/widgets/groupbox/window.h | 2 +- examples/widgets/icons/iconpreviewarea.cpp | 2 +- examples/widgets/icons/iconpreviewarea.h | 2 +- examples/widgets/icons/iconsizespinbox.cpp | 2 +- examples/widgets/icons/iconsizespinbox.h | 2 +- examples/widgets/icons/imagedelegate.cpp | 2 +- examples/widgets/icons/imagedelegate.h | 2 +- examples/widgets/icons/main.cpp | 2 +- examples/widgets/icons/mainwindow.cpp | 2 +- examples/widgets/icons/mainwindow.h | 2 +- examples/widgets/imageviewer/imageviewer.cpp | 2 +- examples/widgets/imageviewer/imageviewer.h | 2 +- examples/widgets/imageviewer/main.cpp | 2 +- examples/widgets/lineedits/main.cpp | 2 +- examples/widgets/lineedits/window.cpp | 2 +- examples/widgets/lineedits/window.h | 2 +- examples/widgets/movie/main.cpp | 2 +- examples/widgets/movie/movieplayer.cpp | 2 +- examples/widgets/movie/movieplayer.h | 2 +- examples/widgets/orientation/main.cpp | 2 +- examples/widgets/orientation/mainwindow.cpp | 2 +- examples/widgets/orientation/mainwindow.h | 2 +- examples/widgets/scribble/main.cpp | 2 +- examples/widgets/scribble/mainwindow.cpp | 2 +- examples/widgets/scribble/mainwindow.h | 2 +- examples/widgets/scribble/scribblearea.cpp | 2 +- examples/widgets/scribble/scribblearea.h | 2 +- examples/widgets/shapedclock/main.cpp | 2 +- examples/widgets/shapedclock/shapedclock.cpp | 2 +- examples/widgets/shapedclock/shapedclock.h | 2 +- examples/widgets/sliders/main.cpp | 2 +- examples/widgets/sliders/slidersgroup.cpp | 2 +- examples/widgets/sliders/slidersgroup.h | 2 +- examples/widgets/sliders/window.cpp | 2 +- examples/widgets/sliders/window.h | 2 +- examples/widgets/softkeys/main.cpp | 2 +- examples/widgets/softkeys/softkeys.cpp | 2 +- examples/widgets/softkeys/softkeys.h | 2 +- examples/widgets/spinboxes/main.cpp | 2 +- examples/widgets/spinboxes/window.cpp | 2 +- examples/widgets/spinboxes/window.h | 2 +- examples/widgets/styles/main.cpp | 2 +- examples/widgets/styles/norwegianwoodstyle.cpp | 2 +- examples/widgets/styles/norwegianwoodstyle.h | 2 +- examples/widgets/styles/widgetgallery.cpp | 2 +- examples/widgets/styles/widgetgallery.h | 2 +- examples/widgets/stylesheet/main.cpp | 2 +- examples/widgets/stylesheet/mainwindow.cpp | 2 +- examples/widgets/stylesheet/mainwindow.h | 2 +- examples/widgets/stylesheet/stylesheeteditor.cpp | 2 +- examples/widgets/stylesheet/stylesheeteditor.h | 2 +- examples/widgets/tablet/main.cpp | 2 +- examples/widgets/tablet/mainwindow.cpp | 2 +- examples/widgets/tablet/mainwindow.h | 2 +- examples/widgets/tablet/tabletapplication.cpp | 2 +- examples/widgets/tablet/tabletapplication.h | 2 +- examples/widgets/tablet/tabletcanvas.cpp | 2 +- examples/widgets/tablet/tabletcanvas.h | 2 +- examples/widgets/tetrix/main.cpp | 2 +- examples/widgets/tetrix/tetrixboard.cpp | 2 +- examples/widgets/tetrix/tetrixboard.h | 2 +- examples/widgets/tetrix/tetrixpiece.cpp | 2 +- examples/widgets/tetrix/tetrixpiece.h | 2 +- examples/widgets/tetrix/tetrixwindow.cpp | 2 +- examples/widgets/tetrix/tetrixwindow.h | 2 +- examples/widgets/tooltips/main.cpp | 2 +- examples/widgets/tooltips/shapeitem.cpp | 2 +- examples/widgets/tooltips/shapeitem.h | 2 +- examples/widgets/tooltips/sortingbox.cpp | 2 +- examples/widgets/tooltips/sortingbox.h | 2 +- examples/widgets/validators/ledwidget.cpp | 2 +- examples/widgets/validators/ledwidget.h | 2 +- examples/widgets/validators/localeselector.cpp | 2 +- examples/widgets/validators/localeselector.h | 2 +- examples/widgets/validators/main.cpp | 2 +- examples/widgets/wiggly/dialog.cpp | 2 +- examples/widgets/wiggly/dialog.h | 2 +- examples/widgets/wiggly/main.cpp | 2 +- examples/widgets/wiggly/wigglywidget.cpp | 2 +- examples/widgets/wiggly/wigglywidget.h | 2 +- examples/widgets/windowflags/controllerwindow.cpp | 2 +- examples/widgets/windowflags/controllerwindow.h | 2 +- examples/widgets/windowflags/main.cpp | 2 +- examples/widgets/windowflags/previewwindow.cpp | 2 +- examples/widgets/windowflags/previewwindow.h | 2 +- examples/xml/dombookmarks/main.cpp | 2 +- examples/xml/dombookmarks/mainwindow.cpp | 2 +- examples/xml/dombookmarks/mainwindow.h | 2 +- examples/xml/dombookmarks/xbeltree.cpp | 2 +- examples/xml/dombookmarks/xbeltree.h | 2 +- examples/xml/htmlinfo/main.cpp | 2 +- examples/xml/rsslisting/main.cpp | 2 +- examples/xml/rsslisting/rsslisting.cpp | 2 +- examples/xml/rsslisting/rsslisting.h | 2 +- examples/xml/saxbookmarks/main.cpp | 2 +- examples/xml/saxbookmarks/mainwindow.cpp | 2 +- examples/xml/saxbookmarks/mainwindow.h | 2 +- examples/xml/saxbookmarks/xbelgenerator.cpp | 2 +- examples/xml/saxbookmarks/xbelgenerator.h | 2 +- examples/xml/saxbookmarks/xbelhandler.cpp | 2 +- examples/xml/saxbookmarks/xbelhandler.h | 2 +- examples/xml/streambookmarks/main.cpp | 2 +- examples/xml/streambookmarks/mainwindow.cpp | 2 +- examples/xml/streambookmarks/mainwindow.h | 2 +- examples/xml/streambookmarks/xbelreader.cpp | 2 +- examples/xml/streambookmarks/xbelreader.h | 2 +- examples/xml/streambookmarks/xbelwriter.cpp | 2 +- examples/xml/streambookmarks/xbelwriter.h | 2 +- examples/xml/xmlstreamlint/main.cpp | 2 +- header.BSD | 2 +- header.FDL | 2 +- header.LGPL | 2 +- header.LGPL-ONLY | 2 +- mkspecs/aix-g++-64/qplatformdefs.h | 2 +- mkspecs/aix-g++/qplatformdefs.h | 2 +- mkspecs/aix-xlc-64/qplatformdefs.h | 2 +- mkspecs/aix-xlc/qplatformdefs.h | 2 +- mkspecs/common/aix/qplatformdefs.h | 2 +- mkspecs/common/c89/qplatformdefs.h | 2 +- mkspecs/common/mac/qplatformdefs.h | 2 +- mkspecs/common/posix/qplatformdefs.h | 2 +- mkspecs/common/wince/qplatformdefs.h | 2 +- mkspecs/cygwin-g++/qplatformdefs.h | 2 +- mkspecs/darwin-g++/qplatformdefs.h | 2 +- mkspecs/features/qt_targets.prf | 2 +- mkspecs/freebsd-g++/qplatformdefs.h | 2 +- mkspecs/freebsd-g++34/qplatformdefs.h | 2 +- mkspecs/freebsd-g++40/qplatformdefs.h | 2 +- mkspecs/freebsd-icc/qplatformdefs.h | 2 +- mkspecs/hpux-acc-64/qplatformdefs.h | 2 +- mkspecs/hpux-acc-o64/qplatformdefs.h | 2 +- mkspecs/hpux-acc/qplatformdefs.h | 2 +- mkspecs/hpux-g++-64/qplatformdefs.h | 2 +- mkspecs/hpux-g++/qplatformdefs.h | 2 +- mkspecs/hpuxi-acc-32/qplatformdefs.h | 2 +- mkspecs/hpuxi-acc-64/qplatformdefs.h | 2 +- mkspecs/hpuxi-g++-64/qplatformdefs.h | 2 +- mkspecs/hurd-g++/qplatformdefs.h | 2 +- mkspecs/irix-cc-64/qplatformdefs.h | 2 +- mkspecs/irix-cc/qplatformdefs.h | 2 +- mkspecs/irix-g++-64/qplatformdefs.h | 2 +- mkspecs/irix-g++/qplatformdefs.h | 2 +- mkspecs/linux-arm-gnueabi-g++/qplatformdefs.h | 2 +- mkspecs/linux-cxx/qplatformdefs.h | 2 +- mkspecs/linux-ecc-64/qplatformdefs.h | 2 +- mkspecs/linux-g++-32/qplatformdefs.h | 2 +- mkspecs/linux-g++-64/qplatformdefs.h | 2 +- mkspecs/linux-g++-maemo/qplatformdefs.h | 2 +- mkspecs/linux-g++/qplatformdefs.h | 2 +- mkspecs/linux-icc-32/qplatformdefs.h | 2 +- mkspecs/linux-icc-64/qplatformdefs.h | 2 +- mkspecs/linux-icc/qplatformdefs.h | 2 +- mkspecs/linux-kcc/qplatformdefs.h | 2 +- mkspecs/linux-llvm/qplatformdefs.h | 2 +- mkspecs/linux-lsb-g++/qplatformdefs.h | 2 +- mkspecs/linux-pgcc/qplatformdefs.h | 2 +- mkspecs/lynxos-g++/qplatformdefs.h | 2 +- mkspecs/macx-g++/qplatformdefs.h | 2 +- mkspecs/macx-g++40/qplatformdefs.h | 2 +- mkspecs/macx-g++42/qplatformdefs.h | 2 +- mkspecs/macx-icc/qplatformdefs.h | 2 +- mkspecs/macx-llvm/qplatformdefs.h | 2 +- mkspecs/macx-pbuilder/qplatformdefs.h | 2 +- mkspecs/macx-xcode/qplatformdefs.h | 2 +- mkspecs/macx-xlc/qplatformdefs.h | 2 +- mkspecs/netbsd-g++/qplatformdefs.h | 2 +- mkspecs/openbsd-g++/qplatformdefs.h | 2 +- mkspecs/sco-cc/qplatformdefs.h | 2 +- mkspecs/sco-g++/qplatformdefs.h | 2 +- mkspecs/solaris-cc-64-stlport/qplatformdefs.h | 2 +- mkspecs/solaris-cc-64/qplatformdefs.h | 2 +- mkspecs/solaris-cc-stlport/qplatformdefs.h | 2 +- mkspecs/solaris-cc/qplatformdefs.h | 2 +- mkspecs/solaris-g++-64/qplatformdefs.h | 2 +- mkspecs/solaris-g++/qplatformdefs.h | 2 +- mkspecs/tru64-cxx/qplatformdefs.h | 2 +- mkspecs/tru64-g++/qplatformdefs.h | 2 +- mkspecs/unixware-cc/qplatformdefs.h | 2 +- mkspecs/unixware-g++/qplatformdefs.h | 2 +- mkspecs/unsupported/integrity-ghs/qplatformdefs.h | 2 +- mkspecs/unsupported/linux-armcc/qplatformdefs.h | 2 +- mkspecs/unsupported/linux-clang/qplatformdefs.h | 2 +- mkspecs/unsupported/linux-host-g++/qplatformdefs.h | 2 +- mkspecs/unsupported/linux-scratchbox2-g++/qplatformdefs.h | 2 +- mkspecs/unsupported/macx-clang/qplatformdefs.h | 2 +- mkspecs/unsupported/qnx-g++/qplatformdefs.h | 2 +- mkspecs/unsupported/qws/linux-x86-openkode-g++/qplatformdefs.h | 2 +- mkspecs/unsupported/qws/qnx-641/qplatformdefs.h | 2 +- mkspecs/unsupported/qws/qnx-generic-g++/qplatformdefs.h | 2 +- mkspecs/unsupported/qws/qnx-i386-g++/qplatformdefs.h | 2 +- mkspecs/unsupported/qws/qnx-ppc-g++/qplatformdefs.h | 2 +- mkspecs/unsupported/vxworks-ppc-dcc/qplatformdefs.h | 2 +- mkspecs/unsupported/vxworks-ppc-g++/qplatformdefs.h | 2 +- mkspecs/unsupported/vxworks-simpentium-dcc/qplatformdefs.h | 2 +- mkspecs/unsupported/vxworks-simpentium-g++/qplatformdefs.h | 2 +- mkspecs/unsupported/win32-borland/qplatformdefs.h | 2 +- mkspecs/unsupported/win32-g++-cross/qplatformdefs.h | 2 +- mkspecs/unsupported/win32-msvc2003/qplatformdefs.h | 2 +- mkspecs/win32-g++/qplatformdefs.h | 2 +- mkspecs/win32-icc/qplatformdefs.h | 2 +- mkspecs/win32-msvc2005/qplatformdefs.h | 2 +- mkspecs/win32-msvc2008/qplatformdefs.h | 2 +- mkspecs/win32-msvc2010/qplatformdefs.h | 2 +- mkspecs/wince50standard-armv4i-msvc2005/qplatformdefs.h | 2 +- mkspecs/wince50standard-armv4i-msvc2008/qplatformdefs.h | 2 +- mkspecs/wince50standard-mipsii-msvc2005/qplatformdefs.h | 2 +- mkspecs/wince50standard-mipsii-msvc2008/qplatformdefs.h | 2 +- mkspecs/wince50standard-mipsiv-msvc2005/qplatformdefs.h | 2 +- mkspecs/wince50standard-mipsiv-msvc2008/qplatformdefs.h | 2 +- mkspecs/wince50standard-sh4-msvc2005/qplatformdefs.h | 2 +- mkspecs/wince50standard-sh4-msvc2008/qplatformdefs.h | 2 +- mkspecs/wince50standard-x86-msvc2005/qplatformdefs.h | 2 +- mkspecs/wince50standard-x86-msvc2008/qplatformdefs.h | 2 +- mkspecs/wince60standard-armv4i-msvc2005/qplatformdefs.h | 2 +- mkspecs/wince60standard-x86-msvc2005/qplatformdefs.h | 2 +- mkspecs/wincewm50pocket-msvc2005/qplatformdefs.h | 2 +- mkspecs/wincewm50pocket-msvc2008/qplatformdefs.h | 2 +- mkspecs/wincewm50smart-msvc2005/qplatformdefs.h | 2 +- mkspecs/wincewm50smart-msvc2008/qplatformdefs.h | 2 +- mkspecs/wincewm60professional-msvc2005/qplatformdefs.h | 2 +- mkspecs/wincewm60professional-msvc2008/qplatformdefs.h | 2 +- mkspecs/wincewm60standard-msvc2005/qplatformdefs.h | 2 +- mkspecs/wincewm60standard-msvc2008/qplatformdefs.h | 2 +- mkspecs/wincewm65professional-msvc2005/qplatformdefs.h | 2 +- mkspecs/wincewm65professional-msvc2008/qplatformdefs.h | 2 +- qmake/cachekeys.h | 2 +- qmake/generators/integrity/gbuild.cpp | 2 +- qmake/generators/integrity/gbuild.h | 2 +- qmake/generators/mac/pbuilder_pbx.cpp | 2 +- qmake/generators/mac/pbuilder_pbx.h | 2 +- qmake/generators/makefile.cpp | 2 +- qmake/generators/makefile.h | 2 +- qmake/generators/makefiledeps.cpp | 2 +- qmake/generators/makefiledeps.h | 2 +- qmake/generators/metamakefile.cpp | 2 +- qmake/generators/metamakefile.h | 2 +- qmake/generators/projectgenerator.cpp | 2 +- qmake/generators/projectgenerator.h | 2 +- qmake/generators/unix/unixmake.cpp | 2 +- qmake/generators/unix/unixmake.h | 2 +- qmake/generators/unix/unixmake2.cpp | 2 +- qmake/generators/win32/borland_bmake.cpp | 2 +- qmake/generators/win32/borland_bmake.h | 2 +- qmake/generators/win32/mingw_make.cpp | 2 +- qmake/generators/win32/mingw_make.h | 2 +- qmake/generators/win32/msbuild_objectmodel.cpp | 2 +- qmake/generators/win32/msbuild_objectmodel.h | 2 +- qmake/generators/win32/msvc_nmake.cpp | 2 +- qmake/generators/win32/msvc_nmake.h | 2 +- qmake/generators/win32/msvc_objectmodel.cpp | 2 +- qmake/generators/win32/msvc_objectmodel.h | 2 +- qmake/generators/win32/msvc_vcproj.cpp | 2 +- qmake/generators/win32/msvc_vcproj.h | 2 +- qmake/generators/win32/msvc_vcxproj.cpp | 2 +- qmake/generators/win32/msvc_vcxproj.h | 2 +- qmake/generators/win32/winmakefile.cpp | 2 +- qmake/generators/win32/winmakefile.h | 2 +- qmake/generators/xmloutput.cpp | 2 +- qmake/generators/xmloutput.h | 2 +- qmake/main.cpp | 2 +- qmake/meta.cpp | 2 +- qmake/meta.h | 2 +- qmake/option.cpp | 2 +- qmake/option.h | 2 +- qmake/project.cpp | 2 +- qmake/project.h | 2 +- qmake/property.cpp | 2 +- qmake/property.h | 2 +- qmake/qmake_pch.h | 2 +- src/3rdparty/harfbuzz/src/harfbuzz-greek.c | 2 +- src/3rdparty/s60/eiksoftkeyimage.h | 2 +- src/corelib/animation/qabstractanimation.cpp | 2 +- src/corelib/animation/qabstractanimation.h | 2 +- src/corelib/animation/qabstractanimation_p.h | 2 +- src/corelib/animation/qanimationgroup.cpp | 2 +- src/corelib/animation/qanimationgroup.h | 2 +- src/corelib/animation/qanimationgroup_p.h | 2 +- src/corelib/animation/qparallelanimationgroup.cpp | 2 +- src/corelib/animation/qparallelanimationgroup.h | 2 +- src/corelib/animation/qparallelanimationgroup_p.h | 2 +- src/corelib/animation/qpauseanimation.cpp | 2 +- src/corelib/animation/qpauseanimation.h | 2 +- src/corelib/animation/qpropertyanimation.cpp | 2 +- src/corelib/animation/qpropertyanimation.h | 2 +- src/corelib/animation/qpropertyanimation_p.h | 2 +- src/corelib/animation/qsequentialanimationgroup.cpp | 2 +- src/corelib/animation/qsequentialanimationgroup.h | 2 +- src/corelib/animation/qsequentialanimationgroup_p.h | 2 +- src/corelib/animation/qvariantanimation.cpp | 2 +- src/corelib/animation/qvariantanimation.h | 2 +- src/corelib/animation/qvariantanimation_p.h | 2 +- src/corelib/arch/alpha/qatomic_alpha.s | 2 +- src/corelib/arch/arm/qatomic_arm.cpp | 2 +- src/corelib/arch/generic/qatomic_generic_unix.cpp | 2 +- src/corelib/arch/generic/qatomic_generic_windows.cpp | 2 +- src/corelib/arch/ia64/qatomic_ia64.s | 2 +- src/corelib/arch/macosx/qatomic32_ppc.s | 2 +- src/corelib/arch/mips/qatomic_mips32.s | 2 +- src/corelib/arch/mips/qatomic_mips64.s | 2 +- src/corelib/arch/parisc/q_ldcw.s | 2 +- src/corelib/arch/parisc/qatomic_parisc.cpp | 2 +- src/corelib/arch/powerpc/qatomic32.s | 2 +- src/corelib/arch/powerpc/qatomic64.s | 2 +- src/corelib/arch/qatomic_alpha.h | 2 +- src/corelib/arch/qatomic_arch.h | 2 +- src/corelib/arch/qatomic_arm.h | 2 +- src/corelib/arch/qatomic_armv5.h | 2 +- src/corelib/arch/qatomic_armv6.h | 2 +- src/corelib/arch/qatomic_armv7.h | 2 +- src/corelib/arch/qatomic_avr32.h | 2 +- src/corelib/arch/qatomic_bfin.h | 2 +- src/corelib/arch/qatomic_bootstrap.h | 2 +- src/corelib/arch/qatomic_generic.h | 2 +- src/corelib/arch/qatomic_i386.h | 2 +- src/corelib/arch/qatomic_ia64.h | 2 +- src/corelib/arch/qatomic_integrity.h | 2 +- src/corelib/arch/qatomic_macosx.h | 2 +- src/corelib/arch/qatomic_mips.h | 2 +- src/corelib/arch/qatomic_parisc.h | 2 +- src/corelib/arch/qatomic_powerpc.h | 2 +- src/corelib/arch/qatomic_s390.h | 2 +- src/corelib/arch/qatomic_sh.h | 2 +- src/corelib/arch/qatomic_sh4a.h | 2 +- src/corelib/arch/qatomic_sparc.h | 2 +- src/corelib/arch/qatomic_symbian.h | 2 +- src/corelib/arch/qatomic_vxworks.h | 2 +- src/corelib/arch/qatomic_windows.h | 2 +- src/corelib/arch/qatomic_windowsce.h | 2 +- src/corelib/arch/qatomic_x86_64.h | 2 +- src/corelib/arch/sh/qatomic_sh.cpp | 2 +- src/corelib/arch/sparc/qatomic32.s | 2 +- src/corelib/arch/sparc/qatomic64.s | 2 +- src/corelib/arch/sparc/qatomic_sparc.cpp | 2 +- src/corelib/codecs/codecs.qdoc | 2 +- src/corelib/codecs/qfontlaocodec.cpp | 2 +- src/corelib/codecs/qfontlaocodec_p.h | 2 +- src/corelib/codecs/qiconvcodec.cpp | 2 +- src/corelib/codecs/qiconvcodec_p.h | 2 +- src/corelib/codecs/qisciicodec.cpp | 2 +- src/corelib/codecs/qisciicodec_p.h | 2 +- src/corelib/codecs/qlatincodec.cpp | 2 +- src/corelib/codecs/qlatincodec_p.h | 2 +- src/corelib/codecs/qsimplecodec.cpp | 2 +- src/corelib/codecs/qsimplecodec_p.h | 2 +- src/corelib/codecs/qtextcodec.cpp | 2 +- src/corelib/codecs/qtextcodec.h | 2 +- src/corelib/codecs/qtextcodec_p.h | 2 +- src/corelib/codecs/qtextcodec_symbian.cpp | 2 +- src/corelib/codecs/qtextcodecplugin.cpp | 2 +- src/corelib/codecs/qtextcodecplugin.h | 2 +- src/corelib/codecs/qtsciicodec.cpp | 2 +- src/corelib/codecs/qtsciicodec_p.h | 2 +- src/corelib/codecs/qutfcodec.cpp | 2 +- src/corelib/codecs/qutfcodec_p.h | 2 +- src/corelib/concurrent/qfuture.cpp | 2 +- src/corelib/concurrent/qfuture.h | 2 +- src/corelib/concurrent/qfutureinterface.cpp | 2 +- src/corelib/concurrent/qfutureinterface.h | 2 +- src/corelib/concurrent/qfutureinterface_p.h | 2 +- src/corelib/concurrent/qfuturesynchronizer.cpp | 2 +- src/corelib/concurrent/qfuturesynchronizer.h | 2 +- src/corelib/concurrent/qfuturewatcher.cpp | 2 +- src/corelib/concurrent/qfuturewatcher.h | 2 +- src/corelib/concurrent/qfuturewatcher_p.h | 2 +- src/corelib/concurrent/qrunnable.cpp | 2 +- src/corelib/concurrent/qrunnable.h | 2 +- src/corelib/concurrent/qtconcurrentcompilertest.h | 2 +- src/corelib/concurrent/qtconcurrentexception.cpp | 2 +- src/corelib/concurrent/qtconcurrentexception.h | 2 +- src/corelib/concurrent/qtconcurrentfilter.cpp | 2 +- src/corelib/concurrent/qtconcurrentfilter.h | 2 +- src/corelib/concurrent/qtconcurrentfilterkernel.h | 2 +- src/corelib/concurrent/qtconcurrentfunctionwrappers.h | 2 +- src/corelib/concurrent/qtconcurrentiteratekernel.cpp | 2 +- src/corelib/concurrent/qtconcurrentiteratekernel.h | 2 +- src/corelib/concurrent/qtconcurrentmap.cpp | 2 +- src/corelib/concurrent/qtconcurrentmap.h | 2 +- src/corelib/concurrent/qtconcurrentmapkernel.h | 2 +- src/corelib/concurrent/qtconcurrentmedian.h | 2 +- src/corelib/concurrent/qtconcurrentreducekernel.h | 2 +- src/corelib/concurrent/qtconcurrentresultstore.cpp | 2 +- src/corelib/concurrent/qtconcurrentresultstore.h | 2 +- src/corelib/concurrent/qtconcurrentrun.cpp | 2 +- src/corelib/concurrent/qtconcurrentrun.h | 2 +- src/corelib/concurrent/qtconcurrentrunbase.h | 2 +- src/corelib/concurrent/qtconcurrentstoredfunctioncall.h | 2 +- src/corelib/concurrent/qtconcurrentthreadengine.cpp | 2 +- src/corelib/concurrent/qtconcurrentthreadengine.h | 2 +- src/corelib/concurrent/qthreadpool.cpp | 2 +- src/corelib/concurrent/qthreadpool.h | 2 +- src/corelib/concurrent/qthreadpool_p.h | 2 +- src/corelib/global/qconfig-dist.h | 2 +- src/corelib/global/qconfig-large.h | 2 +- src/corelib/global/qconfig-medium.h | 2 +- src/corelib/global/qconfig-minimal.h | 2 +- src/corelib/global/qconfig-nacl.h | 2 +- src/corelib/global/qconfig-small.h | 2 +- src/corelib/global/qendian.h | 2 +- src/corelib/global/qendian.qdoc | 2 +- src/corelib/global/qfeatures.h | 2 +- src/corelib/global/qglobal.cpp | 2 +- src/corelib/global/qglobal.h | 2 +- src/corelib/global/qlibraryinfo.cpp | 4 ++-- src/corelib/global/qlibraryinfo.h | 2 +- src/corelib/global/qmalloc.cpp | 2 +- src/corelib/global/qnamespace.h | 2 +- src/corelib/global/qnamespace.qdoc | 2 +- src/corelib/global/qnumeric.cpp | 2 +- src/corelib/global/qnumeric.h | 2 +- src/corelib/global/qnumeric_p.h | 2 +- src/corelib/global/qt_pch.h | 2 +- src/corelib/global/qt_windows.h | 2 +- src/corelib/io/qabstractfileengine.cpp | 2 +- src/corelib/io/qabstractfileengine.h | 2 +- src/corelib/io/qabstractfileengine_p.h | 2 +- src/corelib/io/qbuffer.cpp | 2 +- src/corelib/io/qbuffer.h | 2 +- src/corelib/io/qdatastream.cpp | 2 +- src/corelib/io/qdatastream.h | 2 +- src/corelib/io/qdatastream_p.h | 2 +- src/corelib/io/qdataurl.cpp | 2 +- src/corelib/io/qdataurl_p.h | 2 +- src/corelib/io/qdebug.cpp | 2 +- src/corelib/io/qdebug.h | 2 +- src/corelib/io/qdir.cpp | 2 +- src/corelib/io/qdir.h | 2 +- src/corelib/io/qdir_p.h | 2 +- src/corelib/io/qdiriterator.cpp | 2 +- src/corelib/io/qdiriterator.h | 2 +- src/corelib/io/qfile.cpp | 2 +- src/corelib/io/qfile.h | 2 +- src/corelib/io/qfile_p.h | 2 +- src/corelib/io/qfileinfo.cpp | 2 +- src/corelib/io/qfileinfo.h | 2 +- src/corelib/io/qfileinfo_p.h | 2 +- src/corelib/io/qfilesystemengine.cpp | 2 +- src/corelib/io/qfilesystemengine_mac.cpp | 2 +- src/corelib/io/qfilesystemengine_p.h | 2 +- src/corelib/io/qfilesystemengine_unix.cpp | 2 +- src/corelib/io/qfilesystemengine_win.cpp | 2 +- src/corelib/io/qfilesystementry.cpp | 2 +- src/corelib/io/qfilesystementry_p.h | 2 +- src/corelib/io/qfilesystemiterator_p.h | 2 +- src/corelib/io/qfilesystemiterator_unix.cpp | 2 +- src/corelib/io/qfilesystemiterator_win.cpp | 2 +- src/corelib/io/qfilesystemmetadata_p.h | 2 +- src/corelib/io/qfilesystemwatcher.cpp | 2 +- src/corelib/io/qfilesystemwatcher.h | 2 +- src/corelib/io/qfilesystemwatcher_fsevents.cpp | 2 +- src/corelib/io/qfilesystemwatcher_fsevents_p.h | 2 +- src/corelib/io/qfilesystemwatcher_inotify.cpp | 2 +- src/corelib/io/qfilesystemwatcher_inotify_p.h | 2 +- src/corelib/io/qfilesystemwatcher_kqueue.cpp | 2 +- src/corelib/io/qfilesystemwatcher_kqueue_p.h | 2 +- src/corelib/io/qfilesystemwatcher_p.h | 2 +- src/corelib/io/qfilesystemwatcher_polling.cpp | 2 +- src/corelib/io/qfilesystemwatcher_polling_p.h | 2 +- src/corelib/io/qfilesystemwatcher_win.cpp | 2 +- src/corelib/io/qfilesystemwatcher_win_p.h | 2 +- src/corelib/io/qfsfileengine.cpp | 2 +- src/corelib/io/qfsfileengine.h | 2 +- src/corelib/io/qfsfileengine_iterator.cpp | 2 +- src/corelib/io/qfsfileengine_iterator_p.h | 2 +- src/corelib/io/qfsfileengine_p.h | 2 +- src/corelib/io/qfsfileengine_unix.cpp | 2 +- src/corelib/io/qfsfileengine_win.cpp | 2 +- src/corelib/io/qiodevice.cpp | 2 +- src/corelib/io/qiodevice.h | 2 +- src/corelib/io/qiodevice_p.h | 2 +- src/corelib/io/qnoncontiguousbytedevice.cpp | 2 +- src/corelib/io/qnoncontiguousbytedevice_p.h | 2 +- src/corelib/io/qprocess.cpp | 2 +- src/corelib/io/qprocess.h | 2 +- src/corelib/io/qprocess_p.h | 2 +- src/corelib/io/qprocess_unix.cpp | 2 +- src/corelib/io/qprocess_win.cpp | 2 +- src/corelib/io/qresource.cpp | 2 +- src/corelib/io/qresource.h | 2 +- src/corelib/io/qresource_iterator.cpp | 2 +- src/corelib/io/qresource_iterator_p.h | 2 +- src/corelib/io/qresource_p.h | 2 +- src/corelib/io/qsettings.cpp | 2 +- src/corelib/io/qsettings.h | 2 +- src/corelib/io/qsettings_mac.cpp | 2 +- src/corelib/io/qsettings_p.h | 2 +- src/corelib/io/qsettings_win.cpp | 2 +- src/corelib/io/qstandardpaths.cpp | 2 +- src/corelib/io/qstandardpaths.h | 2 +- src/corelib/io/qstandardpaths_mac.cpp | 2 +- src/corelib/io/qstandardpaths_unix.cpp | 2 +- src/corelib/io/qstandardpaths_win.cpp | 2 +- src/corelib/io/qtemporarydir.cpp | 2 +- src/corelib/io/qtemporarydir.h | 2 +- src/corelib/io/qtemporaryfile.cpp | 2 +- src/corelib/io/qtemporaryfile.h | 2 +- src/corelib/io/qtextstream.cpp | 2 +- src/corelib/io/qtextstream.h | 2 +- src/corelib/io/qtldurl.cpp | 2 +- src/corelib/io/qtldurl_p.h | 2 +- src/corelib/io/qurl.cpp | 2 +- src/corelib/io/qurl.h | 2 +- src/corelib/io/qwindowspipereader.cpp | 2 +- src/corelib/io/qwindowspipereader_p.h | 2 +- src/corelib/io/qwindowspipewriter.cpp | 2 +- src/corelib/io/qwindowspipewriter_p.h | 2 +- src/corelib/itemmodels/qabstractitemmodel.cpp | 2 +- src/corelib/itemmodels/qabstractitemmodel.h | 2 +- src/corelib/itemmodels/qabstractitemmodel_p.h | 2 +- src/corelib/itemmodels/qabstractproxymodel.cpp | 2 +- src/corelib/itemmodels/qabstractproxymodel.h | 2 +- src/corelib/itemmodels/qabstractproxymodel_p.h | 2 +- src/corelib/itemmodels/qitemselectionmodel.cpp | 2 +- src/corelib/itemmodels/qitemselectionmodel.h | 2 +- src/corelib/itemmodels/qitemselectionmodel_p.h | 2 +- src/corelib/itemmodels/qsortfilterproxymodel.cpp | 2 +- src/corelib/itemmodels/qsortfilterproxymodel.h | 2 +- src/corelib/itemmodels/qstringlistmodel.cpp | 2 +- src/corelib/itemmodels/qstringlistmodel.h | 2 +- src/corelib/kernel/qabstracteventdispatcher.cpp | 2 +- src/corelib/kernel/qabstracteventdispatcher.h | 2 +- src/corelib/kernel/qabstracteventdispatcher_p.h | 2 +- src/corelib/kernel/qbasictimer.cpp | 2 +- src/corelib/kernel/qbasictimer.h | 2 +- src/corelib/kernel/qcore_mac.cpp | 2 +- src/corelib/kernel/qcore_mac_p.h | 2 +- src/corelib/kernel/qcore_unix.cpp | 2 +- src/corelib/kernel/qcore_unix_p.h | 2 +- src/corelib/kernel/qcoreapplication.cpp | 2 +- src/corelib/kernel/qcoreapplication.h | 2 +- src/corelib/kernel/qcoreapplication_mac.cpp | 2 +- src/corelib/kernel/qcoreapplication_p.h | 2 +- src/corelib/kernel/qcoreapplication_win.cpp | 2 +- src/corelib/kernel/qcorecmdlineargs_p.h | 2 +- src/corelib/kernel/qcoreevent.cpp | 2 +- src/corelib/kernel/qcoreevent.h | 2 +- src/corelib/kernel/qcoreglobaldata.cpp | 2 +- src/corelib/kernel/qcoreglobaldata_p.h | 2 +- src/corelib/kernel/qcrashhandler.cpp | 2 +- src/corelib/kernel/qcrashhandler_p.h | 2 +- src/corelib/kernel/qeventdispatcher_glib.cpp | 2 +- src/corelib/kernel/qeventdispatcher_glib_p.h | 2 +- src/corelib/kernel/qeventdispatcher_unix.cpp | 2 +- src/corelib/kernel/qeventdispatcher_unix_p.h | 2 +- src/corelib/kernel/qeventdispatcher_win.cpp | 2 +- src/corelib/kernel/qeventdispatcher_win_p.h | 2 +- src/corelib/kernel/qeventloop.cpp | 2 +- src/corelib/kernel/qeventloop.h | 2 +- src/corelib/kernel/qfunctions_nacl.cpp | 2 +- src/corelib/kernel/qfunctions_nacl.h | 2 +- src/corelib/kernel/qfunctions_p.h | 2 +- src/corelib/kernel/qfunctions_vxworks.cpp | 2 +- src/corelib/kernel/qfunctions_vxworks.h | 2 +- src/corelib/kernel/qfunctions_wince.cpp | 2 +- src/corelib/kernel/qfunctions_wince.h | 2 +- src/corelib/kernel/qmath.cpp | 2 +- src/corelib/kernel/qmath.h | 2 +- src/corelib/kernel/qmath.qdoc | 2 +- src/corelib/kernel/qmetaobject.cpp | 2 +- src/corelib/kernel/qmetaobject.h | 2 +- src/corelib/kernel/qmetaobject_moc_p.h | 2 +- src/corelib/kernel/qmetaobject_p.h | 2 +- src/corelib/kernel/qmetaobjectbuilder.cpp | 2 +- src/corelib/kernel/qmetaobjectbuilder_p.h | 2 +- src/corelib/kernel/qmetatype.cpp | 2 +- src/corelib/kernel/qmetatype.h | 2 +- src/corelib/kernel/qmetatype_p.h | 2 +- src/corelib/kernel/qmetatypeswitcher_p.h | 2 +- src/corelib/kernel/qmimedata.cpp | 2 +- src/corelib/kernel/qmimedata.h | 2 +- src/corelib/kernel/qobject.cpp | 2 +- src/corelib/kernel/qobject.h | 2 +- src/corelib/kernel/qobject_impl.h | 2 +- src/corelib/kernel/qobject_p.h | 2 +- src/corelib/kernel/qobjectcleanuphandler.cpp | 2 +- src/corelib/kernel/qobjectcleanuphandler.h | 2 +- src/corelib/kernel/qobjectdefs.h | 2 +- src/corelib/kernel/qpointer.cpp | 2 +- src/corelib/kernel/qpointer.h | 2 +- src/corelib/kernel/qsharedmemory.cpp | 2 +- src/corelib/kernel/qsharedmemory.h | 2 +- src/corelib/kernel/qsharedmemory_p.h | 2 +- src/corelib/kernel/qsharedmemory_unix.cpp | 2 +- src/corelib/kernel/qsharedmemory_win.cpp | 2 +- src/corelib/kernel/qsignalmapper.cpp | 2 +- src/corelib/kernel/qsignalmapper.h | 2 +- src/corelib/kernel/qsocketnotifier.cpp | 2 +- src/corelib/kernel/qsocketnotifier.h | 2 +- src/corelib/kernel/qsystemerror.cpp | 2 +- src/corelib/kernel/qsystemerror_p.h | 2 +- src/corelib/kernel/qsystemsemaphore.cpp | 2 +- src/corelib/kernel/qsystemsemaphore.h | 2 +- src/corelib/kernel/qsystemsemaphore_p.h | 2 +- src/corelib/kernel/qsystemsemaphore_unix.cpp | 2 +- src/corelib/kernel/qsystemsemaphore_win.cpp | 2 +- src/corelib/kernel/qtcore_eval.cpp | 6 +++--- src/corelib/kernel/qtimer.cpp | 2 +- src/corelib/kernel/qtimer.h | 2 +- src/corelib/kernel/qtimerinfo_unix.cpp | 2 +- src/corelib/kernel/qtimerinfo_unix_p.h | 2 +- src/corelib/kernel/qtranslator.cpp | 2 +- src/corelib/kernel/qtranslator.h | 2 +- src/corelib/kernel/qtranslator_p.h | 2 +- src/corelib/kernel/qvariant.cpp | 2 +- src/corelib/kernel/qvariant.h | 2 +- src/corelib/kernel/qvariant_p.h | 2 +- src/corelib/kernel/qwineventnotifier.cpp | 2 +- src/corelib/kernel/qwineventnotifier.h | 2 +- src/corelib/plugin/qelfparser_p.cpp | 2 +- src/corelib/plugin/qelfparser_p.h | 2 +- src/corelib/plugin/qfactoryinterface.h | 2 +- src/corelib/plugin/qfactoryloader.cpp | 2 +- src/corelib/plugin/qfactoryloader_p.h | 2 +- src/corelib/plugin/qlibrary.cpp | 2 +- src/corelib/plugin/qlibrary.h | 2 +- src/corelib/plugin/qlibrary_p.h | 2 +- src/corelib/plugin/qlibrary_unix.cpp | 2 +- src/corelib/plugin/qlibrary_win.cpp | 2 +- src/corelib/plugin/qplugin.h | 2 +- src/corelib/plugin/qplugin.qdoc | 2 +- src/corelib/plugin/qpluginloader.cpp | 2 +- src/corelib/plugin/qpluginloader.h | 2 +- src/corelib/plugin/qsystemlibrary.cpp | 2 +- src/corelib/plugin/qsystemlibrary_p.h | 2 +- src/corelib/plugin/quuid.cpp | 2 +- src/corelib/plugin/quuid.h | 2 +- src/corelib/statemachine/qabstractstate.cpp | 2 +- src/corelib/statemachine/qabstractstate.h | 2 +- src/corelib/statemachine/qabstractstate_p.h | 2 +- src/corelib/statemachine/qabstracttransition.cpp | 2 +- src/corelib/statemachine/qabstracttransition.h | 2 +- src/corelib/statemachine/qabstracttransition_p.h | 2 +- src/corelib/statemachine/qeventtransition.cpp | 2 +- src/corelib/statemachine/qeventtransition.h | 2 +- src/corelib/statemachine/qeventtransition_p.h | 2 +- src/corelib/statemachine/qfinalstate.cpp | 2 +- src/corelib/statemachine/qfinalstate.h | 2 +- src/corelib/statemachine/qhistorystate.cpp | 2 +- src/corelib/statemachine/qhistorystate.h | 2 +- src/corelib/statemachine/qhistorystate_p.h | 2 +- src/corelib/statemachine/qsignaleventgenerator_p.h | 2 +- src/corelib/statemachine/qsignaltransition.cpp | 2 +- src/corelib/statemachine/qsignaltransition.h | 2 +- src/corelib/statemachine/qsignaltransition_p.h | 2 +- src/corelib/statemachine/qstate.cpp | 2 +- src/corelib/statemachine/qstate.h | 2 +- src/corelib/statemachine/qstate_p.h | 2 +- src/corelib/statemachine/qstatemachine.cpp | 2 +- src/corelib/statemachine/qstatemachine.h | 2 +- src/corelib/statemachine/qstatemachine_p.h | 2 +- src/corelib/thread/qatomic.cpp | 2 +- src/corelib/thread/qatomic.h | 2 +- src/corelib/thread/qbasicatomic.h | 2 +- src/corelib/thread/qmutex.cpp | 2 +- src/corelib/thread/qmutex.h | 2 +- src/corelib/thread/qmutex_linux.cpp | 2 +- src/corelib/thread/qmutex_mac.cpp | 2 +- src/corelib/thread/qmutex_p.h | 2 +- src/corelib/thread/qmutex_unix.cpp | 2 +- src/corelib/thread/qmutex_win.cpp | 2 +- src/corelib/thread/qmutexpool.cpp | 2 +- src/corelib/thread/qmutexpool_p.h | 2 +- src/corelib/thread/qorderedmutexlocker_p.h | 2 +- src/corelib/thread/qreadwritelock.cpp | 2 +- src/corelib/thread/qreadwritelock.h | 2 +- src/corelib/thread/qreadwritelock_p.h | 2 +- src/corelib/thread/qsemaphore.cpp | 2 +- src/corelib/thread/qsemaphore.h | 2 +- src/corelib/thread/qthread.cpp | 2 +- src/corelib/thread/qthread.h | 2 +- src/corelib/thread/qthread_p.h | 2 +- src/corelib/thread/qthread_unix.cpp | 2 +- src/corelib/thread/qthread_win.cpp | 2 +- src/corelib/thread/qthreadstorage.cpp | 2 +- src/corelib/thread/qthreadstorage.h | 2 +- src/corelib/thread/qwaitcondition.h | 2 +- src/corelib/thread/qwaitcondition.qdoc | 2 +- src/corelib/thread/qwaitcondition_unix.cpp | 2 +- src/corelib/thread/qwaitcondition_win.cpp | 2 +- src/corelib/tools/qalgorithms.h | 2 +- src/corelib/tools/qalgorithms.qdoc | 2 +- src/corelib/tools/qbitarray.cpp | 2 +- src/corelib/tools/qbitarray.h | 2 +- src/corelib/tools/qbytearray.cpp | 2 +- src/corelib/tools/qbytearray.h | 2 +- src/corelib/tools/qbytearraymatcher.cpp | 2 +- src/corelib/tools/qbytearraymatcher.h | 2 +- src/corelib/tools/qbytedata_p.h | 2 +- src/corelib/tools/qcache.h | 2 +- src/corelib/tools/qcache.qdoc | 2 +- src/corelib/tools/qchar.cpp | 2 +- src/corelib/tools/qchar.h | 2 +- src/corelib/tools/qcontainerfwd.h | 2 +- src/corelib/tools/qcontiguouscache.cpp | 2 +- src/corelib/tools/qcontiguouscache.h | 2 +- src/corelib/tools/qcryptographichash.cpp | 2 +- src/corelib/tools/qcryptographichash.h | 2 +- src/corelib/tools/qdatetime.cpp | 2 +- src/corelib/tools/qdatetime.h | 2 +- src/corelib/tools/qdatetime_p.h | 2 +- src/corelib/tools/qeasingcurve.cpp | 2 +- src/corelib/tools/qeasingcurve.h | 2 +- src/corelib/tools/qelapsedtimer.cpp | 2 +- src/corelib/tools/qelapsedtimer.h | 2 +- src/corelib/tools/qelapsedtimer_generic.cpp | 2 +- src/corelib/tools/qelapsedtimer_mac.cpp | 2 +- src/corelib/tools/qelapsedtimer_symbian.cpp | 2 +- src/corelib/tools/qelapsedtimer_unix.cpp | 2 +- src/corelib/tools/qelapsedtimer_win.cpp | 2 +- src/corelib/tools/qfreelist.cpp | 2 +- src/corelib/tools/qfreelist_p.h | 2 +- src/corelib/tools/qharfbuzz.cpp | 2 +- src/corelib/tools/qharfbuzz_p.h | 2 +- src/corelib/tools/qhash.cpp | 2 +- src/corelib/tools/qhash.h | 2 +- src/corelib/tools/qiterator.h | 2 +- src/corelib/tools/qiterator.qdoc | 2 +- src/corelib/tools/qline.cpp | 2 +- src/corelib/tools/qline.h | 2 +- src/corelib/tools/qlinkedlist.cpp | 2 +- src/corelib/tools/qlinkedlist.h | 2 +- src/corelib/tools/qlist.cpp | 2 +- src/corelib/tools/qlist.h | 2 +- src/corelib/tools/qlocale.cpp | 2 +- src/corelib/tools/qlocale.h | 2 +- src/corelib/tools/qlocale.qdoc | 2 +- src/corelib/tools/qlocale_data_p.h | 2 +- src/corelib/tools/qlocale_p.h | 2 +- src/corelib/tools/qlocale_symbian.cpp | 2 +- src/corelib/tools/qmap.cpp | 2 +- src/corelib/tools/qmap.h | 2 +- src/corelib/tools/qmargins.cpp | 2 +- src/corelib/tools/qmargins.h | 2 +- src/corelib/tools/qpair.h | 2 +- src/corelib/tools/qpair.qdoc | 2 +- src/corelib/tools/qpodlist_p.h | 2 +- src/corelib/tools/qpoint.cpp | 2 +- src/corelib/tools/qpoint.h | 2 +- src/corelib/tools/qqueue.cpp | 2 +- src/corelib/tools/qqueue.h | 2 +- src/corelib/tools/qrect.cpp | 2 +- src/corelib/tools/qrect.h | 2 +- src/corelib/tools/qrefcount.cpp | 2 +- src/corelib/tools/qrefcount.h | 2 +- src/corelib/tools/qregexp.cpp | 2 +- src/corelib/tools/qregexp.h | 2 +- src/corelib/tools/qringbuffer_p.h | 2 +- src/corelib/tools/qscopedpointer.cpp | 2 +- src/corelib/tools/qscopedpointer.h | 2 +- src/corelib/tools/qscopedpointer_p.h | 2 +- src/corelib/tools/qscopedvaluerollback.cpp | 2 +- src/corelib/tools/qscopedvaluerollback.h | 2 +- src/corelib/tools/qset.h | 2 +- src/corelib/tools/qset.qdoc | 2 +- src/corelib/tools/qshareddata.cpp | 2 +- src/corelib/tools/qshareddata.h | 2 +- src/corelib/tools/qsharedpointer.cpp | 2 +- src/corelib/tools/qsharedpointer.h | 2 +- src/corelib/tools/qsharedpointer_impl.h | 2 +- src/corelib/tools/qsimd.cpp | 2 +- src/corelib/tools/qsimd_p.h | 2 +- src/corelib/tools/qsize.cpp | 2 +- src/corelib/tools/qsize.h | 2 +- src/corelib/tools/qstack.cpp | 2 +- src/corelib/tools/qstack.h | 2 +- src/corelib/tools/qstring.cpp | 2 +- src/corelib/tools/qstring.h | 2 +- src/corelib/tools/qstringbuilder.cpp | 2 +- src/corelib/tools/qstringbuilder.h | 2 +- src/corelib/tools/qstringlist.cpp | 2 +- src/corelib/tools/qstringlist.h | 2 +- src/corelib/tools/qstringmatcher.cpp | 2 +- src/corelib/tools/qstringmatcher.h | 2 +- src/corelib/tools/qtextboundaryfinder.cpp | 2 +- src/corelib/tools/qtextboundaryfinder.h | 2 +- src/corelib/tools/qtimeline.cpp | 2 +- src/corelib/tools/qtimeline.h | 2 +- src/corelib/tools/qtools_p.h | 2 +- src/corelib/tools/qunicodetables.cpp | 2 +- src/corelib/tools/qunicodetables_p.h | 2 +- src/corelib/tools/qvarlengtharray.h | 2 +- src/corelib/tools/qvarlengtharray.qdoc | 2 +- src/corelib/tools/qvector.cpp | 2 +- src/corelib/tools/qvector.h | 2 +- src/corelib/tools/qvsnprintf.cpp | 2 +- src/corelib/xml/make-parser.sh | 2 +- src/corelib/xml/qxmlstream.cpp | 2 +- src/corelib/xml/qxmlstream.g | 2 +- src/corelib/xml/qxmlstream.h | 2 +- src/corelib/xml/qxmlstream_p.h | 2 +- src/corelib/xml/qxmlutils.cpp | 2 +- src/corelib/xml/qxmlutils_p.h | 2 +- src/dbus/qdbus_symbols.cpp | 2 +- src/dbus/qdbus_symbols_p.h | 2 +- src/dbus/qdbusabstractadaptor.cpp | 2 +- src/dbus/qdbusabstractadaptor.h | 2 +- src/dbus/qdbusabstractadaptor_p.h | 2 +- src/dbus/qdbusabstractinterface.cpp | 2 +- src/dbus/qdbusabstractinterface.h | 2 +- src/dbus/qdbusabstractinterface_p.h | 2 +- src/dbus/qdbusargument.cpp | 2 +- src/dbus/qdbusargument.h | 2 +- src/dbus/qdbusargument_p.h | 2 +- src/dbus/qdbusconnection.cpp | 2 +- src/dbus/qdbusconnection.h | 2 +- src/dbus/qdbusconnection_p.h | 2 +- src/dbus/qdbusconnectioninterface.cpp | 2 +- src/dbus/qdbusconnectioninterface.h | 2 +- src/dbus/qdbusconnectionmanager_p.h | 2 +- src/dbus/qdbuscontext.cpp | 2 +- src/dbus/qdbuscontext.h | 2 +- src/dbus/qdbuscontext_p.h | 2 +- src/dbus/qdbusdemarshaller.cpp | 2 +- src/dbus/qdbuserror.cpp | 2 +- src/dbus/qdbuserror.h | 2 +- src/dbus/qdbusextratypes.cpp | 2 +- src/dbus/qdbusextratypes.h | 2 +- src/dbus/qdbusintegrator.cpp | 2 +- src/dbus/qdbusintegrator_p.h | 2 +- src/dbus/qdbusinterface.cpp | 2 +- src/dbus/qdbusinterface.h | 2 +- src/dbus/qdbusinterface_p.h | 2 +- src/dbus/qdbusinternalfilters.cpp | 2 +- src/dbus/qdbusintrospection.cpp | 2 +- src/dbus/qdbusintrospection_p.h | 2 +- src/dbus/qdbusmacros.h | 2 +- src/dbus/qdbusmarshaller.cpp | 2 +- src/dbus/qdbusmessage.cpp | 2 +- src/dbus/qdbusmessage.h | 2 +- src/dbus/qdbusmessage_p.h | 2 +- src/dbus/qdbusmetaobject.cpp | 2 +- src/dbus/qdbusmetaobject_p.h | 2 +- src/dbus/qdbusmetatype.cpp | 2 +- src/dbus/qdbusmetatype.h | 2 +- src/dbus/qdbusmetatype_p.h | 2 +- src/dbus/qdbusmisc.cpp | 2 +- src/dbus/qdbuspendingcall.cpp | 2 +- src/dbus/qdbuspendingcall.h | 2 +- src/dbus/qdbuspendingcall_p.h | 2 +- src/dbus/qdbuspendingreply.cpp | 2 +- src/dbus/qdbuspendingreply.h | 2 +- src/dbus/qdbusreply.cpp | 2 +- src/dbus/qdbusreply.h | 2 +- src/dbus/qdbusserver.cpp | 2 +- src/dbus/qdbusserver.h | 2 +- src/dbus/qdbusservicewatcher.cpp | 2 +- src/dbus/qdbusservicewatcher.h | 2 +- src/dbus/qdbusthreaddebug_p.h | 2 +- src/dbus/qdbusunixfiledescriptor.cpp | 2 +- src/dbus/qdbusunixfiledescriptor.h | 2 +- src/dbus/qdbusutil.cpp | 2 +- src/dbus/qdbusutil_p.h | 2 +- src/dbus/qdbusvirtualobject.cpp | 2 +- src/dbus/qdbusvirtualobject.h | 2 +- src/dbus/qdbusxmlgenerator.cpp | 2 +- src/dbus/qdbusxmlparser.cpp | 2 +- src/dbus/qdbusxmlparser_p.h | 2 +- src/gui/accessible/qaccessible.cpp | 2 +- src/gui/accessible/qaccessible.h | 2 +- src/gui/accessible/qaccessible2.cpp | 2 +- src/gui/accessible/qaccessible2.h | 2 +- src/gui/accessible/qaccessible_mac.mm | 2 +- src/gui/accessible/qaccessible_mac_carbon.cpp | 2 +- src/gui/accessible/qaccessible_mac_cocoa.mm | 2 +- src/gui/accessible/qaccessible_mac_p.h | 2 +- src/gui/accessible/qaccessiblebridge.cpp | 2 +- src/gui/accessible/qaccessiblebridge.h | 2 +- src/gui/accessible/qaccessibleobject.cpp | 2 +- src/gui/accessible/qaccessibleobject.h | 2 +- src/gui/accessible/qaccessibleplugin.cpp | 2 +- src/gui/accessible/qaccessibleplugin.h | 2 +- src/gui/accessible/qplatformaccessibility_qpa.cpp | 2 +- src/gui/accessible/qplatformaccessibility_qpa.h | 2 +- src/gui/egl/qegl.cpp | 2 +- src/gui/egl/qegl_p.h | 2 +- src/gui/egl/qegl_stub.cpp | 2 +- src/gui/egl/qeglcontext_p.h | 2 +- src/gui/egl/qeglproperties.cpp | 2 +- src/gui/egl/qeglproperties_p.h | 2 +- src/gui/egl/qeglproperties_stub.cpp | 2 +- src/gui/image/qbitmap.cpp | 2 +- src/gui/image/qbitmap.h | 2 +- src/gui/image/qbmphandler.cpp | 2 +- src/gui/image/qbmphandler_p.h | 2 +- src/gui/image/qgifhandler.cpp | 2 +- src/gui/image/qgifhandler_p.h | 2 +- src/gui/image/qimage.cpp | 2 +- src/gui/image/qimage.h | 2 +- src/gui/image/qimage_neon.cpp | 2 +- src/gui/image/qimage_p.h | 2 +- src/gui/image/qimage_sse2.cpp | 2 +- src/gui/image/qimage_ssse3.cpp | 2 +- src/gui/image/qimageiohandler.cpp | 2 +- src/gui/image/qimageiohandler.h | 2 +- src/gui/image/qimagepixmapcleanuphooks.cpp | 2 +- src/gui/image/qimagepixmapcleanuphooks_p.h | 2 +- src/gui/image/qimagereader.cpp | 2 +- src/gui/image/qimagereader.h | 2 +- src/gui/image/qimagewriter.cpp | 2 +- src/gui/image/qimagewriter.h | 2 +- src/gui/image/qjpeghandler.cpp | 2 +- src/gui/image/qjpeghandler_p.h | 2 +- src/gui/image/qmnghandler.cpp | 2 +- src/gui/image/qmnghandler_p.h | 2 +- src/gui/image/qmovie.cpp | 2 +- src/gui/image/qmovie.h | 2 +- src/gui/image/qnativeimage.cpp | 2 +- src/gui/image/qnativeimage_p.h | 2 +- src/gui/image/qpaintengine_pic.cpp | 2 +- src/gui/image/qpaintengine_pic_p.h | 2 +- src/gui/image/qpicture.cpp | 2 +- src/gui/image/qpicture.h | 2 +- src/gui/image/qpicture_p.h | 2 +- src/gui/image/qpictureformatplugin.cpp | 2 +- src/gui/image/qpictureformatplugin.h | 2 +- src/gui/image/qpixmap.cpp | 2 +- src/gui/image/qpixmap.h | 2 +- src/gui/image/qpixmap_blitter.cpp | 2 +- src/gui/image/qpixmap_blitter_p.h | 2 +- src/gui/image/qpixmap_raster.cpp | 2 +- src/gui/image/qpixmap_raster_p.h | 2 +- src/gui/image/qpixmap_win.cpp | 2 +- src/gui/image/qpixmapcache.cpp | 2 +- src/gui/image/qpixmapcache.h | 2 +- src/gui/image/qpixmapcache_p.h | 2 +- src/gui/image/qplatformpixmap.cpp | 2 +- src/gui/image/qplatformpixmap_qpa.h | 2 +- src/gui/image/qpnghandler.cpp | 2 +- src/gui/image/qpnghandler_p.h | 2 +- src/gui/image/qppmhandler.cpp | 2 +- src/gui/image/qppmhandler_p.h | 2 +- src/gui/image/qtiffhandler.cpp | 2 +- src/gui/image/qtiffhandler_p.h | 2 +- src/gui/image/qvolatileimage.cpp | 2 +- src/gui/image/qvolatileimage_p.h | 2 +- src/gui/image/qvolatileimagedata.cpp | 2 +- src/gui/image/qvolatileimagedata_p.h | 2 +- src/gui/image/qvolatileimagedata_symbian.cpp | 2 +- src/gui/image/qxbmhandler.cpp | 2 +- src/gui/image/qxbmhandler_p.h | 2 +- src/gui/image/qxpmhandler.cpp | 2 +- src/gui/image/qxpmhandler_p.h | 2 +- src/gui/kernel/qclipboard.cpp | 2 +- src/gui/kernel/qclipboard.h | 2 +- src/gui/kernel/qcursor.cpp | 2 +- src/gui/kernel/qcursor.h | 2 +- src/gui/kernel/qcursor_p.h | 2 +- src/gui/kernel/qdnd.cpp | 2 +- src/gui/kernel/qdnd_p.h | 2 +- src/gui/kernel/qdrag.cpp | 2 +- src/gui/kernel/qdrag.h | 2 +- src/gui/kernel/qevent.cpp | 2 +- src/gui/kernel/qevent.h | 2 +- src/gui/kernel/qevent_p.h | 2 +- src/gui/kernel/qguiapplication.cpp | 2 +- src/gui/kernel/qguiapplication.h | 2 +- src/gui/kernel/qguiapplication_p.h | 2 +- src/gui/kernel/qguivariant.cpp | 2 +- src/gui/kernel/qinputpanel.cpp | 2 +- src/gui/kernel/qinputpanel.h | 2 +- src/gui/kernel/qinputpanel_p.h | 2 +- src/gui/kernel/qkeymapper.cpp | 2 +- src/gui/kernel/qkeymapper_p.h | 2 +- src/gui/kernel/qkeymapper_qpa.cpp | 2 +- src/gui/kernel/qkeysequence.cpp | 2 +- src/gui/kernel/qkeysequence.h | 2 +- src/gui/kernel/qkeysequence_p.h | 2 +- src/gui/kernel/qopenglcontext.cpp | 2 +- src/gui/kernel/qopenglcontext.h | 2 +- src/gui/kernel/qopenglcontext_p.h | 2 +- src/gui/kernel/qpalette.cpp | 2 +- src/gui/kernel/qpalette.h | 2 +- src/gui/kernel/qplatformclipboard_qpa.cpp | 2 +- src/gui/kernel/qplatformclipboard_qpa.h | 2 +- src/gui/kernel/qplatformcursor_qpa.cpp | 2 +- src/gui/kernel/qplatformdrag_qpa.h | 2 +- src/gui/kernel/qplatforminputcontext_qpa.cpp | 2 +- src/gui/kernel/qplatforminputcontext_qpa.h | 2 +- src/gui/kernel/qplatformintegration_qpa.cpp | 2 +- src/gui/kernel/qplatformintegration_qpa.h | 2 +- src/gui/kernel/qplatformintegrationfactory_qpa.cpp | 2 +- src/gui/kernel/qplatformintegrationfactory_qpa_p.h | 2 +- src/gui/kernel/qplatformintegrationplugin_qpa.cpp | 2 +- src/gui/kernel/qplatformintegrationplugin_qpa.h | 2 +- src/gui/kernel/qplatformnativeinterface_qpa.cpp | 2 +- src/gui/kernel/qplatformnativeinterface_qpa.h | 2 +- src/gui/kernel/qplatformopenglcontext_qpa.cpp | 2 +- src/gui/kernel/qplatformopenglcontext_qpa.h | 2 +- src/gui/kernel/qplatformscreen_qpa.cpp | 2 +- src/gui/kernel/qplatformscreen_qpa.h | 2 +- src/gui/kernel/qplatformsurface_qpa.cpp | 2 +- src/gui/kernel/qplatformsurface_qpa.h | 2 +- src/gui/kernel/qplatformtheme_qpa.cpp | 2 +- src/gui/kernel/qplatformtheme_qpa.h | 2 +- src/gui/kernel/qplatformthemefactory_qpa.cpp | 2 +- src/gui/kernel/qplatformthemefactory_qpa_p.h | 2 +- src/gui/kernel/qplatformthemeplugin_qpa.cpp | 2 +- src/gui/kernel/qplatformthemeplugin_qpa.h | 2 +- src/gui/kernel/qplatformwindow_qpa.cpp | 2 +- src/gui/kernel/qplatformwindow_qpa.h | 2 +- src/gui/kernel/qscreen.cpp | 2 +- src/gui/kernel/qscreen.h | 2 +- src/gui/kernel/qsessionmanager.h | 2 +- src/gui/kernel/qsessionmanager_qpa.cpp | 2 +- src/gui/kernel/qshortcutmap.cpp | 2 +- src/gui/kernel/qshortcutmap_p.h | 2 +- src/gui/kernel/qstylehints.cpp | 2 +- src/gui/kernel/qstylehints.h | 2 +- src/gui/kernel/qsurface.cpp | 2 +- src/gui/kernel/qsurface.h | 2 +- src/gui/kernel/qsurfaceformat.cpp | 2 +- src/gui/kernel/qsurfaceformat.h | 2 +- src/gui/kernel/qt_gui_pch.h | 2 +- src/gui/kernel/qtouchdevice.cpp | 2 +- src/gui/kernel/qtouchdevice.h | 2 +- src/gui/kernel/qtouchdevice_p.h | 2 +- src/gui/kernel/qwindow.cpp | 2 +- src/gui/kernel/qwindow.h | 2 +- src/gui/kernel/qwindow_p.h | 2 +- src/gui/kernel/qwindowdefs.h | 2 +- src/gui/kernel/qwindowdefs_win.h | 2 +- src/gui/kernel/qwindowsysteminterface_qpa.cpp | 2 +- src/gui/kernel/qwindowsysteminterface_qpa.h | 2 +- src/gui/math3d/qgenericmatrix.cpp | 2 +- src/gui/math3d/qgenericmatrix.h | 2 +- src/gui/math3d/qmatrix4x4.cpp | 2 +- src/gui/math3d/qmatrix4x4.h | 2 +- src/gui/math3d/qquaternion.cpp | 2 +- src/gui/math3d/qquaternion.h | 2 +- src/gui/math3d/qvector2d.cpp | 2 +- src/gui/math3d/qvector2d.h | 2 +- src/gui/math3d/qvector3d.cpp | 2 +- src/gui/math3d/qvector3d.h | 2 +- src/gui/math3d/qvector4d.cpp | 2 +- src/gui/math3d/qvector4d.h | 2 +- src/gui/opengl/qopengl.cpp | 2 +- src/gui/opengl/qopengl.h | 2 +- src/gui/opengl/qopengl2pexvertexarray.cpp | 2 +- src/gui/opengl/qopengl2pexvertexarray_p.h | 2 +- src/gui/opengl/qopengl_p.h | 2 +- src/gui/opengl/qopenglbuffer.cpp | 2 +- src/gui/opengl/qopenglbuffer.h | 2 +- src/gui/opengl/qopenglcustomshaderstage.cpp | 2 +- src/gui/opengl/qopenglcustomshaderstage_p.h | 2 +- src/gui/opengl/qopenglengineshadermanager.cpp | 2 +- src/gui/opengl/qopenglengineshadermanager_p.h | 2 +- src/gui/opengl/qopenglengineshadersource_p.h | 2 +- src/gui/opengl/qopenglextensions_p.h | 2 +- src/gui/opengl/qopenglframebufferobject.cpp | 2 +- src/gui/opengl/qopenglframebufferobject.h | 2 +- src/gui/opengl/qopenglframebufferobject_p.h | 2 +- src/gui/opengl/qopenglfunctions.cpp | 2 +- src/gui/opengl/qopenglfunctions.h | 2 +- src/gui/opengl/qopenglgradientcache.cpp | 2 +- src/gui/opengl/qopenglgradientcache_p.h | 2 +- src/gui/opengl/qopenglpaintdevice.cpp | 2 +- src/gui/opengl/qopenglpaintdevice.h | 2 +- src/gui/opengl/qopenglpaintengine.cpp | 2 +- src/gui/opengl/qopenglpaintengine_p.h | 2 +- src/gui/opengl/qopenglshadercache_meego_p.h | 2 +- src/gui/opengl/qopenglshadercache_p.h | 2 +- src/gui/opengl/qopenglshaderprogram.cpp | 2 +- src/gui/opengl/qopenglshaderprogram.h | 2 +- src/gui/opengl/qopengltexturecache.cpp | 2 +- src/gui/opengl/qopengltexturecache_p.h | 2 +- src/gui/opengl/qopengltextureglyphcache.cpp | 2 +- src/gui/opengl/qopengltextureglyphcache_p.h | 2 +- src/gui/opengl/qopengltriangulatingstroker.cpp | 2 +- src/gui/opengl/qopengltriangulatingstroker_p.h | 2 +- src/gui/opengl/qrbtree_p.h | 2 +- src/gui/opengl/qtriangulator.cpp | 2 +- src/gui/opengl/qtriangulator_p.h | 2 +- src/gui/painting/qbackingstore.cpp | 2 +- src/gui/painting/qbackingstore.h | 2 +- src/gui/painting/qbezier.cpp | 2 +- src/gui/painting/qbezier_p.h | 2 +- src/gui/painting/qblendfunctions.cpp | 2 +- src/gui/painting/qblendfunctions_p.h | 2 +- src/gui/painting/qblittable.cpp | 2 +- src/gui/painting/qblittable_p.h | 2 +- src/gui/painting/qbrush.cpp | 2 +- src/gui/painting/qbrush.h | 2 +- src/gui/painting/qcolor.cpp | 2 +- src/gui/painting/qcolor.h | 2 +- src/gui/painting/qcolor_p.cpp | 2 +- src/gui/painting/qcolor_p.h | 2 +- src/gui/painting/qcosmeticstroker.cpp | 2 +- src/gui/painting/qcosmeticstroker_p.h | 2 +- src/gui/painting/qcssutil.cpp | 2 +- src/gui/painting/qcssutil_p.h | 2 +- src/gui/painting/qdatabuffer_p.h | 2 +- src/gui/painting/qdrawhelper.cpp | 2 +- src/gui/painting/qdrawhelper_arm_simd.cpp | 2 +- src/gui/painting/qdrawhelper_arm_simd_p.h | 2 +- src/gui/painting/qdrawhelper_iwmmxt.cpp | 2 +- src/gui/painting/qdrawhelper_mmx.cpp | 2 +- src/gui/painting/qdrawhelper_mmx3dnow.cpp | 2 +- src/gui/painting/qdrawhelper_mmx_p.h | 2 +- src/gui/painting/qdrawhelper_neon.cpp | 2 +- src/gui/painting/qdrawhelper_neon_asm.S | 2 +- src/gui/painting/qdrawhelper_neon_p.h | 2 +- src/gui/painting/qdrawhelper_p.h | 2 +- src/gui/painting/qdrawhelper_sse.cpp | 2 +- src/gui/painting/qdrawhelper_sse2.cpp | 2 +- src/gui/painting/qdrawhelper_sse3dnow.cpp | 2 +- src/gui/painting/qdrawhelper_sse_p.h | 2 +- src/gui/painting/qdrawhelper_ssse3.cpp | 2 +- src/gui/painting/qdrawhelper_x86_p.h | 2 +- src/gui/painting/qdrawingprimitive_sse2_p.h | 2 +- src/gui/painting/qemulationpaintengine.cpp | 2 +- src/gui/painting/qemulationpaintengine_p.h | 2 +- src/gui/painting/qfixed_p.h | 2 +- src/gui/painting/qgrayraster.c | 2 +- src/gui/painting/qgrayraster_p.h | 2 +- src/gui/painting/qimagescale.cpp | 2 +- src/gui/painting/qimagescale_p.h | 2 +- src/gui/painting/qmath_p.h | 2 +- src/gui/painting/qmatrix.cpp | 2 +- src/gui/painting/qmatrix.h | 2 +- src/gui/painting/qmemrotate.cpp | 2 +- src/gui/painting/qmemrotate_p.h | 2 +- src/gui/painting/qoutlinemapper.cpp | 2 +- src/gui/painting/qoutlinemapper_p.h | 2 +- src/gui/painting/qpagedpaintdevice.cpp | 2 +- src/gui/painting/qpagedpaintdevice.h | 2 +- src/gui/painting/qpagedpaintdevice_p.h | 2 +- src/gui/painting/qpaintbuffer.cpp | 2 +- src/gui/painting/qpaintbuffer_p.h | 2 +- src/gui/painting/qpaintdevice.cpp | 2 +- src/gui/painting/qpaintdevice.h | 2 +- src/gui/painting/qpaintdevice.qdoc | 2 +- src/gui/painting/qpaintengine.cpp | 2 +- src/gui/painting/qpaintengine.h | 2 +- src/gui/painting/qpaintengine_blitter.cpp | 2 +- src/gui/painting/qpaintengine_blitter_p.h | 2 +- src/gui/painting/qpaintengine_p.h | 2 +- src/gui/painting/qpaintengine_raster.cpp | 2 +- src/gui/painting/qpaintengine_raster_p.h | 2 +- src/gui/painting/qpaintengineex.cpp | 2 +- src/gui/painting/qpaintengineex_p.h | 2 +- src/gui/painting/qpainter.cpp | 2 +- src/gui/painting/qpainter.h | 2 +- src/gui/painting/qpainter_p.h | 2 +- src/gui/painting/qpainterpath.cpp | 2 +- src/gui/painting/qpainterpath.h | 2 +- src/gui/painting/qpainterpath_p.h | 2 +- src/gui/painting/qpathclipper.cpp | 2 +- src/gui/painting/qpathclipper_p.h | 2 +- src/gui/painting/qpdf.cpp | 2 +- src/gui/painting/qpdf_p.h | 2 +- src/gui/painting/qpdfwriter.cpp | 2 +- src/gui/painting/qpdfwriter.h | 2 +- src/gui/painting/qpen.cpp | 2 +- src/gui/painting/qpen.h | 2 +- src/gui/painting/qpen_p.h | 2 +- src/gui/painting/qplatformbackingstore_qpa.cpp | 2 +- src/gui/painting/qplatformbackingstore_qpa.h | 2 +- src/gui/painting/qpolygon.cpp | 2 +- src/gui/painting/qpolygon.h | 2 +- src/gui/painting/qpolygonclipper_p.h | 2 +- src/gui/painting/qrasterdefs_p.h | 2 +- src/gui/painting/qrasterizer.cpp | 2 +- src/gui/painting/qrasterizer_p.h | 2 +- src/gui/painting/qregion.cpp | 2 +- src/gui/painting/qregion.h | 2 +- src/gui/painting/qrgb.h | 2 +- src/gui/painting/qstroker.cpp | 2 +- src/gui/painting/qstroker_p.h | 2 +- src/gui/painting/qtextureglyphcache.cpp | 2 +- src/gui/painting/qtextureglyphcache_p.h | 2 +- src/gui/painting/qtransform.cpp | 2 +- src/gui/painting/qtransform.h | 2 +- src/gui/painting/qvectorpath_p.h | 2 +- src/gui/text/qabstractfontengine_p.h | 2 +- src/gui/text/qabstracttextdocumentlayout.cpp | 2 +- src/gui/text/qabstracttextdocumentlayout.h | 2 +- src/gui/text/qabstracttextdocumentlayout_p.h | 2 +- src/gui/text/qcssparser.cpp | 2 +- src/gui/text/qcssparser_p.h | 2 +- src/gui/text/qcssscanner.cpp | 2 +- src/gui/text/qfont.cpp | 2 +- src/gui/text/qfont.h | 2 +- src/gui/text/qfont_p.h | 2 +- src/gui/text/qfont_qpa.cpp | 2 +- src/gui/text/qfontdatabase.cpp | 2 +- src/gui/text/qfontdatabase.h | 2 +- src/gui/text/qfontdatabase_qpa.cpp | 2 +- src/gui/text/qfontengine.cpp | 2 +- src/gui/text/qfontengine_ft.cpp | 2 +- src/gui/text/qfontengine_ft_p.h | 2 +- src/gui/text/qfontengine_p.h | 2 +- src/gui/text/qfontengine_qpa.cpp | 2 +- src/gui/text/qfontengine_qpa_p.h | 2 +- src/gui/text/qfontengine_qpf.cpp | 2 +- src/gui/text/qfontengine_qpf_p.h | 2 +- src/gui/text/qfontenginedirectwrite.cpp | 2 +- src/gui/text/qfontenginedirectwrite_p.h | 2 +- src/gui/text/qfontengineglyphcache_p.h | 2 +- src/gui/text/qfontinfo.h | 2 +- src/gui/text/qfontmetrics.cpp | 2 +- src/gui/text/qfontmetrics.h | 2 +- src/gui/text/qfontsubset.cpp | 2 +- src/gui/text/qfontsubset_p.h | 2 +- src/gui/text/qfragmentmap.cpp | 2 +- src/gui/text/qfragmentmap_p.h | 2 +- src/gui/text/qglyphrun.cpp | 2 +- src/gui/text/qglyphrun.h | 2 +- src/gui/text/qglyphrun_p.h | 2 +- src/gui/text/qharfbuzz_copy_p.h | 2 +- src/gui/text/qlinecontrol.cpp | 2 +- src/gui/text/qlinecontrol_p.h | 2 +- src/gui/text/qpfutil.cpp | 2 +- src/gui/text/qplatformfontdatabase_qpa.cpp | 2 +- src/gui/text/qplatformfontdatabase_qpa.h | 2 +- src/gui/text/qrawfont.cpp | 2 +- src/gui/text/qrawfont.h | 2 +- src/gui/text/qrawfont_ft.cpp | 2 +- src/gui/text/qrawfont_p.h | 2 +- src/gui/text/qrawfont_qpa.cpp | 2 +- src/gui/text/qstatictext.cpp | 2 +- src/gui/text/qstatictext.h | 2 +- src/gui/text/qstatictext_p.h | 2 +- src/gui/text/qsyntaxhighlighter.cpp | 2 +- src/gui/text/qsyntaxhighlighter.h | 2 +- src/gui/text/qtextcontrol.cpp | 2 +- src/gui/text/qtextcontrol_p.h | 2 +- src/gui/text/qtextcontrol_p_p.h | 2 +- src/gui/text/qtextcursor.cpp | 2 +- src/gui/text/qtextcursor.h | 2 +- src/gui/text/qtextcursor_p.h | 2 +- src/gui/text/qtextdocument.cpp | 2 +- src/gui/text/qtextdocument.h | 2 +- src/gui/text/qtextdocument_p.cpp | 2 +- src/gui/text/qtextdocument_p.h | 2 +- src/gui/text/qtextdocumentfragment.cpp | 2 +- src/gui/text/qtextdocumentfragment.h | 2 +- src/gui/text/qtextdocumentfragment_p.h | 2 +- src/gui/text/qtextdocumentlayout.cpp | 2 +- src/gui/text/qtextdocumentlayout_p.h | 2 +- src/gui/text/qtextdocumentwriter.cpp | 2 +- src/gui/text/qtextdocumentwriter.h | 2 +- src/gui/text/qtextengine.cpp | 2 +- src/gui/text/qtextengine_p.h | 2 +- src/gui/text/qtextformat.cpp | 2 +- src/gui/text/qtextformat.h | 2 +- src/gui/text/qtextformat_p.h | 2 +- src/gui/text/qtexthtmlparser.cpp | 2 +- src/gui/text/qtexthtmlparser_p.h | 2 +- src/gui/text/qtextimagehandler.cpp | 2 +- src/gui/text/qtextimagehandler_p.h | 2 +- src/gui/text/qtextlayout.cpp | 2 +- src/gui/text/qtextlayout.h | 2 +- src/gui/text/qtextlist.cpp | 2 +- src/gui/text/qtextlist.h | 2 +- src/gui/text/qtextobject.cpp | 2 +- src/gui/text/qtextobject.h | 2 +- src/gui/text/qtextobject_p.h | 2 +- src/gui/text/qtextodfwriter.cpp | 2 +- src/gui/text/qtextodfwriter_p.h | 2 +- src/gui/text/qtextoption.cpp | 2 +- src/gui/text/qtextoption.h | 2 +- src/gui/text/qtexttable.cpp | 2 +- src/gui/text/qtexttable.h | 2 +- src/gui/text/qtexttable_p.h | 2 +- src/gui/text/qzip.cpp | 2 +- src/gui/text/qzipreader_p.h | 2 +- src/gui/text/qzipwriter_p.h | 2 +- src/gui/util/qdesktopservices.cpp | 2 +- src/gui/util/qdesktopservices.h | 2 +- src/gui/util/qdesktopservices_mac.cpp | 2 +- src/gui/util/qdesktopservices_qpa.cpp | 2 +- src/gui/util/qdesktopservices_win.cpp | 2 +- src/gui/util/qdesktopservices_x11.cpp | 2 +- src/gui/util/qhexstring_p.h | 2 +- src/gui/util/qvalidator.cpp | 2 +- src/gui/util/qvalidator.h | 2 +- src/network/access/qabstractnetworkcache.cpp | 2 +- src/network/access/qabstractnetworkcache.h | 2 +- src/network/access/qabstractnetworkcache_p.h | 2 +- src/network/access/qftp.cpp | 2 +- src/network/access/qftp.h | 2 +- src/network/access/qhttp.cpp | 2 +- src/network/access/qhttp.h | 2 +- src/network/access/qhttpmultipart.cpp | 2 +- src/network/access/qhttpmultipart.h | 2 +- src/network/access/qhttpmultipart_p.h | 2 +- src/network/access/qhttpnetworkconnection.cpp | 2 +- src/network/access/qhttpnetworkconnection_p.h | 2 +- src/network/access/qhttpnetworkconnectionchannel.cpp | 2 +- src/network/access/qhttpnetworkconnectionchannel_p.h | 2 +- src/network/access/qhttpnetworkheader.cpp | 2 +- src/network/access/qhttpnetworkheader_p.h | 2 +- src/network/access/qhttpnetworkreply.cpp | 2 +- src/network/access/qhttpnetworkreply_p.h | 2 +- src/network/access/qhttpnetworkrequest.cpp | 2 +- src/network/access/qhttpnetworkrequest_p.h | 2 +- src/network/access/qhttpthreaddelegate.cpp | 2 +- src/network/access/qhttpthreaddelegate_p.h | 2 +- src/network/access/qnetworkaccessauthenticationmanager.cpp | 2 +- src/network/access/qnetworkaccessauthenticationmanager_p.h | 2 +- src/network/access/qnetworkaccessbackend.cpp | 2 +- src/network/access/qnetworkaccessbackend_p.h | 2 +- src/network/access/qnetworkaccesscache.cpp | 2 +- src/network/access/qnetworkaccesscache_p.h | 2 +- src/network/access/qnetworkaccesscachebackend.cpp | 2 +- src/network/access/qnetworkaccesscachebackend_p.h | 2 +- src/network/access/qnetworkaccessdebugpipebackend.cpp | 2 +- src/network/access/qnetworkaccessdebugpipebackend_p.h | 2 +- src/network/access/qnetworkaccessfilebackend.cpp | 2 +- src/network/access/qnetworkaccessfilebackend_p.h | 2 +- src/network/access/qnetworkaccessftpbackend.cpp | 2 +- src/network/access/qnetworkaccessftpbackend_p.h | 2 +- src/network/access/qnetworkaccessmanager.cpp | 2 +- src/network/access/qnetworkaccessmanager.h | 2 +- src/network/access/qnetworkaccessmanager_p.h | 2 +- src/network/access/qnetworkcookie.cpp | 2 +- src/network/access/qnetworkcookie.h | 2 +- src/network/access/qnetworkcookie_p.h | 2 +- src/network/access/qnetworkcookiejar.cpp | 2 +- src/network/access/qnetworkcookiejar.h | 2 +- src/network/access/qnetworkcookiejar_p.h | 2 +- src/network/access/qnetworkdiskcache.cpp | 2 +- src/network/access/qnetworkdiskcache.h | 2 +- src/network/access/qnetworkdiskcache_p.h | 2 +- src/network/access/qnetworkreply.cpp | 2 +- src/network/access/qnetworkreply.h | 2 +- src/network/access/qnetworkreply_p.h | 2 +- src/network/access/qnetworkreplydataimpl.cpp | 2 +- src/network/access/qnetworkreplydataimpl_p.h | 2 +- src/network/access/qnetworkreplyfileimpl.cpp | 2 +- src/network/access/qnetworkreplyfileimpl_p.h | 2 +- src/network/access/qnetworkreplyhttpimpl.cpp | 2 +- src/network/access/qnetworkreplyhttpimpl_p.h | 2 +- src/network/access/qnetworkreplyimpl.cpp | 2 +- src/network/access/qnetworkreplyimpl_p.h | 2 +- src/network/access/qnetworkrequest.cpp | 2 +- src/network/access/qnetworkrequest.h | 2 +- src/network/access/qnetworkrequest_p.h | 2 +- src/network/bearer/qbearerengine.cpp | 2 +- src/network/bearer/qbearerengine_p.h | 2 +- src/network/bearer/qbearerplugin.cpp | 2 +- src/network/bearer/qbearerplugin_p.h | 2 +- src/network/bearer/qnetworkconfigmanager.cpp | 2 +- src/network/bearer/qnetworkconfigmanager.h | 2 +- src/network/bearer/qnetworkconfigmanager_p.cpp | 2 +- src/network/bearer/qnetworkconfigmanager_p.h | 2 +- src/network/bearer/qnetworkconfiguration.cpp | 2 +- src/network/bearer/qnetworkconfiguration.h | 2 +- src/network/bearer/qnetworkconfiguration_p.h | 2 +- src/network/bearer/qnetworksession.cpp | 2 +- src/network/bearer/qnetworksession.h | 2 +- src/network/bearer/qnetworksession_p.h | 2 +- src/network/bearer/qsharednetworksession.cpp | 2 +- src/network/bearer/qsharednetworksession_p.h | 2 +- src/network/kernel/qauthenticator.cpp | 2 +- src/network/kernel/qauthenticator.h | 2 +- src/network/kernel/qauthenticator_p.h | 2 +- src/network/kernel/qhostaddress.cpp | 2 +- src/network/kernel/qhostaddress.h | 2 +- src/network/kernel/qhostaddress_p.h | 2 +- src/network/kernel/qhostinfo.cpp | 2 +- src/network/kernel/qhostinfo.h | 2 +- src/network/kernel/qhostinfo_p.h | 2 +- src/network/kernel/qhostinfo_unix.cpp | 2 +- src/network/kernel/qhostinfo_win.cpp | 2 +- src/network/kernel/qnetworkinterface.cpp | 2 +- src/network/kernel/qnetworkinterface.h | 2 +- src/network/kernel/qnetworkinterface_p.h | 2 +- src/network/kernel/qnetworkinterface_unix.cpp | 2 +- src/network/kernel/qnetworkinterface_win.cpp | 2 +- src/network/kernel/qnetworkinterface_win_p.h | 2 +- src/network/kernel/qnetworkproxy.cpp | 2 +- src/network/kernel/qnetworkproxy.h | 2 +- src/network/kernel/qnetworkproxy_generic.cpp | 2 +- src/network/kernel/qnetworkproxy_mac.cpp | 2 +- src/network/kernel/qnetworkproxy_win.cpp | 2 +- src/network/kernel/qurlinfo.cpp | 2 +- src/network/kernel/qurlinfo.h | 2 +- src/network/socket/qabstractsocket.cpp | 2 +- src/network/socket/qabstractsocket.h | 2 +- src/network/socket/qabstractsocket_p.h | 2 +- src/network/socket/qabstractsocketengine.cpp | 2 +- src/network/socket/qabstractsocketengine_p.h | 2 +- src/network/socket/qhttpsocketengine.cpp | 2 +- src/network/socket/qhttpsocketengine_p.h | 2 +- src/network/socket/qlocalserver.cpp | 2 +- src/network/socket/qlocalserver.h | 2 +- src/network/socket/qlocalserver_p.h | 2 +- src/network/socket/qlocalserver_tcp.cpp | 2 +- src/network/socket/qlocalserver_unix.cpp | 2 +- src/network/socket/qlocalserver_win.cpp | 2 +- src/network/socket/qlocalsocket.cpp | 2 +- src/network/socket/qlocalsocket.h | 2 +- src/network/socket/qlocalsocket_p.h | 2 +- src/network/socket/qlocalsocket_tcp.cpp | 2 +- src/network/socket/qlocalsocket_unix.cpp | 2 +- src/network/socket/qlocalsocket_win.cpp | 2 +- src/network/socket/qnativesocketengine.cpp | 2 +- src/network/socket/qnativesocketengine_p.h | 2 +- src/network/socket/qnativesocketengine_unix.cpp | 2 +- src/network/socket/qnativesocketengine_win.cpp | 2 +- src/network/socket/qnet_unix_p.h | 2 +- src/network/socket/qsocks5socketengine.cpp | 2 +- src/network/socket/qsocks5socketengine_p.h | 2 +- src/network/socket/qtcpserver.cpp | 2 +- src/network/socket/qtcpserver.h | 2 +- src/network/socket/qtcpsocket.cpp | 2 +- src/network/socket/qtcpsocket.h | 2 +- src/network/socket/qtcpsocket_p.h | 2 +- src/network/socket/qudpsocket.cpp | 2 +- src/network/socket/qudpsocket.h | 2 +- src/network/ssl/qssl.cpp | 2 +- src/network/ssl/qssl.h | 2 +- src/network/ssl/qsslcertificate.cpp | 2 +- src/network/ssl/qsslcertificate.h | 2 +- src/network/ssl/qsslcertificate_p.h | 2 +- src/network/ssl/qsslcipher.cpp | 2 +- src/network/ssl/qsslcipher.h | 2 +- src/network/ssl/qsslcipher_p.h | 2 +- src/network/ssl/qsslconfiguration.cpp | 2 +- src/network/ssl/qsslconfiguration.h | 2 +- src/network/ssl/qsslconfiguration_p.h | 2 +- src/network/ssl/qsslerror.cpp | 2 +- src/network/ssl/qsslerror.h | 2 +- src/network/ssl/qsslkey.cpp | 2 +- src/network/ssl/qsslkey.h | 2 +- src/network/ssl/qsslkey_p.h | 2 +- src/network/ssl/qsslsocket.cpp | 2 +- src/network/ssl/qsslsocket.h | 2 +- src/network/ssl/qsslsocket_openssl.cpp | 2 +- src/network/ssl/qsslsocket_openssl_p.h | 2 +- src/network/ssl/qsslsocket_openssl_symbols.cpp | 2 +- src/network/ssl/qsslsocket_openssl_symbols_p.h | 2 +- src/network/ssl/qsslsocket_p.h | 2 +- src/opengl/gl2paintengineex/qgl2pexvertexarray.cpp | 2 +- src/opengl/gl2paintengineex/qgl2pexvertexarray_p.h | 2 +- src/opengl/gl2paintengineex/qglcustomshaderstage.cpp | 2 +- src/opengl/gl2paintengineex/qglcustomshaderstage_p.h | 2 +- src/opengl/gl2paintengineex/qglengineshadermanager.cpp | 2 +- src/opengl/gl2paintengineex/qglengineshadermanager_p.h | 2 +- src/opengl/gl2paintengineex/qglengineshadersource_p.h | 2 +- src/opengl/gl2paintengineex/qglgradientcache.cpp | 2 +- src/opengl/gl2paintengineex/qglgradientcache_p.h | 2 +- src/opengl/gl2paintengineex/qglshadercache_meego_p.h | 2 +- src/opengl/gl2paintengineex/qglshadercache_p.h | 2 +- src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp | 2 +- src/opengl/gl2paintengineex/qpaintengineex_opengl2_p.h | 2 +- src/opengl/gl2paintengineex/qtextureglyphcache_gl.cpp | 2 +- src/opengl/gl2paintengineex/qtextureglyphcache_gl_p.h | 2 +- src/opengl/gl2paintengineex/qtriangulatingstroker.cpp | 2 +- src/opengl/gl2paintengineex/qtriangulatingstroker_p.h | 2 +- src/opengl/qgl.cpp | 2 +- src/opengl/qgl.h | 2 +- src/opengl/qgl_p.h | 2 +- src/opengl/qgl_qpa.cpp | 2 +- src/opengl/qglbuffer.cpp | 2 +- src/opengl/qglbuffer.h | 2 +- src/opengl/qglcolormap.cpp | 2 +- src/opengl/qglcolormap.h | 2 +- src/opengl/qglextensions.cpp | 2 +- src/opengl/qglextensions_p.h | 2 +- src/opengl/qglframebufferobject.cpp | 2 +- src/opengl/qglframebufferobject.h | 2 +- src/opengl/qglframebufferobject_p.h | 2 +- src/opengl/qglfunctions.cpp | 2 +- src/opengl/qglfunctions.h | 2 +- src/opengl/qglpaintdevice.cpp | 2 +- src/opengl/qglpaintdevice_p.h | 2 +- src/opengl/qglpixelbuffer.cpp | 2 +- src/opengl/qglpixelbuffer.h | 2 +- src/opengl/qglpixelbuffer_p.h | 2 +- src/opengl/qglpixelbuffer_stub.cpp | 2 +- src/opengl/qglshaderprogram.cpp | 2 +- src/opengl/qglshaderprogram.h | 2 +- src/opengl/qgraphicsshadereffect.cpp | 2 +- src/opengl/qgraphicsshadereffect_p.h | 2 +- src/platformsupport/cglconvenience/cglconvenience.mm | 2 +- src/platformsupport/cglconvenience/cglconvenience_p.h | 2 +- src/platformsupport/dnd/qsimpledrag.cpp | 2 +- src/platformsupport/dnd/qsimpledrag_p.h | 2 +- src/platformsupport/eglconvenience/qeglconvenience.cpp | 2 +- src/platformsupport/eglconvenience/qeglconvenience_p.h | 2 +- src/platformsupport/eglconvenience/qeglplatformcontext.cpp | 2 +- src/platformsupport/eglconvenience/qeglplatformcontext_p.h | 2 +- src/platformsupport/eglconvenience/qxlibeglintegration.cpp | 2 +- src/platformsupport/eglconvenience/qxlibeglintegration_p.h | 2 +- src/platformsupport/eventdispatchers/qeventdispatcher_glib.cpp | 2 +- src/platformsupport/eventdispatchers/qeventdispatcher_glib_p.h | 2 +- .../eventdispatchers/qgenericunixeventdispatcher.cpp | 2 +- .../eventdispatchers/qgenericunixeventdispatcher_p.h | 2 +- src/platformsupport/eventdispatchers/qunixeventdispatcher_qpa.cpp | 2 +- src/platformsupport/eventdispatchers/qunixeventdispatcher_qpa_p.h | 2 +- src/platformsupport/fb_base/fb_base.cpp | 2 +- src/platformsupport/fb_base/fb_base_p.h | 2 +- src/platformsupport/fontdatabases/basic/qbasicfontdatabase.cpp | 2 +- src/platformsupport/fontdatabases/basic/qbasicfontdatabase_p.h | 2 +- .../fontdatabases/fontconfig/qfontconfigdatabase.cpp | 2 +- .../fontdatabases/fontconfig/qfontconfigdatabase_p.h | 2 +- .../fontdatabases/genericunix/qgenericunixfontdatabase_p.h | 2 +- src/platformsupport/fontdatabases/mac/qcoretextfontdatabase.mm | 2 +- src/platformsupport/fontdatabases/mac/qcoretextfontdatabase_p.h | 2 +- src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm | 2 +- src/platformsupport/fontdatabases/mac/qfontengine_coretext_p.h | 2 +- src/platformsupport/glxconvenience/qglxconvenience.cpp | 2 +- src/platformsupport/glxconvenience/qglxconvenience_p.h | 2 +- .../inputcontext/qplatforminputcontextfactory_qpa.cpp | 2 +- .../inputcontext/qplatforminputcontextfactory_qpa_p.h | 2 +- .../inputcontext/qplatforminputcontextplugin_qpa.cpp | 2 +- .../inputcontext/qplatforminputcontextplugin_qpa_p.h | 2 +- .../printersupport/genericunix/qgenericunixprintersupport.cpp | 2 +- .../printersupport/genericunix/qgenericunixprintersupport_p.h | 2 +- src/plugins/accessible/widgets/complexwidgets.cpp | 2 +- src/plugins/accessible/widgets/complexwidgets.h | 2 +- src/plugins/accessible/widgets/itemviews.cpp | 2 +- src/plugins/accessible/widgets/itemviews.h | 2 +- src/plugins/accessible/widgets/main.cpp | 2 +- src/plugins/accessible/widgets/qaccessiblemenu.cpp | 2 +- src/plugins/accessible/widgets/qaccessiblemenu.h | 2 +- src/plugins/accessible/widgets/qaccessiblewidgets.cpp | 2 +- src/plugins/accessible/widgets/qaccessiblewidgets.h | 2 +- src/plugins/accessible/widgets/rangecontrols.cpp | 2 +- src/plugins/accessible/widgets/rangecontrols.h | 2 +- src/plugins/accessible/widgets/simplewidgets.cpp | 2 +- src/plugins/accessible/widgets/simplewidgets.h | 2 +- src/plugins/bearer/connman/main.cpp | 2 +- src/plugins/bearer/connman/qconnmanengine.cpp | 2 +- src/plugins/bearer/connman/qconnmanengine.h | 2 +- src/plugins/bearer/connman/qconnmanservice_linux.cpp | 2 +- src/plugins/bearer/connman/qconnmanservice_linux_p.h | 2 +- src/plugins/bearer/connman/qofonoservice_linux.cpp | 2 +- src/plugins/bearer/connman/qofonoservice_linux_p.h | 2 +- src/plugins/bearer/corewlan/main.cpp | 2 +- src/plugins/bearer/corewlan/qcorewlanengine.h | 2 +- src/plugins/bearer/corewlan/qcorewlanengine.mm | 2 +- src/plugins/bearer/generic/main.cpp | 2 +- src/plugins/bearer/generic/qgenericengine.cpp | 2 +- src/plugins/bearer/generic/qgenericengine.h | 2 +- src/plugins/bearer/icd/dbusdispatcher.cpp | 2 +- src/plugins/bearer/icd/dbusdispatcher.h | 2 +- src/plugins/bearer/icd/iapconf.cpp | 2 +- src/plugins/bearer/icd/iapconf.h | 2 +- src/plugins/bearer/icd/iapmonitor.cpp | 2 +- src/plugins/bearer/icd/iapmonitor.h | 2 +- src/plugins/bearer/icd/maemo_icd.cpp | 2 +- src/plugins/bearer/icd/maemo_icd.h | 2 +- src/plugins/bearer/icd/main.cpp | 2 +- src/plugins/bearer/icd/proxyconf.cpp | 2 +- src/plugins/bearer/icd/proxyconf.h | 2 +- src/plugins/bearer/icd/qicdengine.cpp | 2 +- src/plugins/bearer/icd/qicdengine.h | 2 +- src/plugins/bearer/icd/qnetworksession_impl.cpp | 2 +- src/plugins/bearer/icd/qnetworksession_impl.h | 2 +- src/plugins/bearer/icd/wlan-utils.h | 2 +- src/plugins/bearer/nativewifi/main.cpp | 2 +- src/plugins/bearer/nativewifi/platformdefs.h | 2 +- src/plugins/bearer/nativewifi/qnativewifiengine.cpp | 2 +- src/plugins/bearer/nativewifi/qnativewifiengine.h | 2 +- src/plugins/bearer/networkmanager/main.cpp | 2 +- src/plugins/bearer/networkmanager/qnetworkmanagerengine.cpp | 2 +- src/plugins/bearer/networkmanager/qnetworkmanagerengine.h | 2 +- src/plugins/bearer/networkmanager/qnetworkmanagerservice.cpp | 2 +- src/plugins/bearer/networkmanager/qnetworkmanagerservice.h | 2 +- src/plugins/bearer/networkmanager/qnmdbushelper.cpp | 2 +- src/plugins/bearer/networkmanager/qnmdbushelper.h | 2 +- src/plugins/bearer/nla/main.cpp | 2 +- src/plugins/bearer/nla/qnlaengine.cpp | 2 +- src/plugins/bearer/nla/qnlaengine.h | 2 +- src/plugins/bearer/platformdefs_win.h | 2 +- src/plugins/bearer/qbearerengine_impl.h | 2 +- src/plugins/bearer/qnetworksession_impl.cpp | 2 +- src/plugins/bearer/qnetworksession_impl.h | 2 +- src/plugins/codecs/cn/main.cpp | 2 +- src/plugins/codecs/cn/qgb18030codec.cpp | 2 +- src/plugins/codecs/cn/qgb18030codec.h | 2 +- src/plugins/codecs/jp/main.cpp | 2 +- src/plugins/codecs/jp/qeucjpcodec.cpp | 2 +- src/plugins/codecs/jp/qeucjpcodec.h | 2 +- src/plugins/codecs/jp/qfontjpcodec.cpp | 2 +- src/plugins/codecs/jp/qfontjpcodec.h | 2 +- src/plugins/codecs/jp/qjiscodec.cpp | 2 +- src/plugins/codecs/jp/qjiscodec.h | 2 +- src/plugins/codecs/jp/qjpunicode.cpp | 2 +- src/plugins/codecs/jp/qjpunicode.h | 2 +- src/plugins/codecs/jp/qsjiscodec.cpp | 2 +- src/plugins/codecs/jp/qsjiscodec.h | 2 +- src/plugins/codecs/kr/cp949codetbl.h | 2 +- src/plugins/codecs/kr/main.cpp | 2 +- src/plugins/codecs/kr/qeuckrcodec.cpp | 2 +- src/plugins/codecs/kr/qeuckrcodec.h | 2 +- src/plugins/codecs/tw/main.cpp | 2 +- src/plugins/codecs/tw/qbig5codec.cpp | 2 +- src/plugins/codecs/tw/qbig5codec.h | 2 +- src/plugins/generic/tslib/main.cpp | 2 +- src/plugins/generic/tslib/qtslib.cpp | 2 +- src/plugins/generic/tslib/qtslib.h | 2 +- src/plugins/imageformats/gif/main.cpp | 2 +- src/plugins/imageformats/ico/main.cpp | 2 +- src/plugins/imageformats/ico/qicohandler.cpp | 2 +- src/plugins/imageformats/ico/qicohandler.h | 2 +- src/plugins/imageformats/jpeg/main.cpp | 2 +- src/plugins/imageformats/mng/main.cpp | 2 +- src/plugins/imageformats/tiff/main.cpp | 2 +- src/plugins/platforminputcontexts/ibus/main.cpp | 2 +- src/plugins/platforminputcontexts/ibus/qibusinputcontextproxy.cpp | 2 +- src/plugins/platforminputcontexts/ibus/qibusinputcontextproxy.h | 2 +- .../platforminputcontexts/ibus/qibusplatforminputcontext.cpp | 2 +- src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.h | 2 +- src/plugins/platforminputcontexts/ibus/qibusproxy.cpp | 2 +- src/plugins/platforminputcontexts/ibus/qibusproxy.h | 2 +- src/plugins/platforminputcontexts/ibus/qibustypes.cpp | 2 +- src/plugins/platforminputcontexts/ibus/qibustypes.h | 2 +- src/plugins/platforminputcontexts/meego/contextadaptor.cpp | 2 +- src/plugins/platforminputcontexts/meego/contextadaptor.h | 2 +- src/plugins/platforminputcontexts/meego/main.cpp | 2 +- .../platforminputcontexts/meego/qmeegoplatforminputcontext.cpp | 2 +- .../platforminputcontexts/meego/qmeegoplatforminputcontext.h | 2 +- src/plugins/platforminputcontexts/meego/serverproxy.cpp | 2 +- src/plugins/platforminputcontexts/meego/serverproxy.h | 2 +- src/plugins/platforms/cocoa/main.mm | 2 +- src/plugins/platforms/cocoa/qcocoaaccessibility.h | 2 +- src/plugins/platforms/cocoa/qcocoaaccessibility.mm | 2 +- src/plugins/platforms/cocoa/qcocoaaccessibilityelement.h | 2 +- src/plugins/platforms/cocoa/qcocoaaccessibilityelement.mm | 2 +- src/plugins/platforms/cocoa/qcocoaapplication.h | 2 +- src/plugins/platforms/cocoa/qcocoaapplication.mm | 2 +- src/plugins/platforms/cocoa/qcocoaapplicationdelegate.h | 2 +- src/plugins/platforms/cocoa/qcocoaapplicationdelegate.mm | 2 +- src/plugins/platforms/cocoa/qcocoaautoreleasepool.h | 2 +- src/plugins/platforms/cocoa/qcocoaautoreleasepool.mm | 2 +- src/plugins/platforms/cocoa/qcocoabackingstore.h | 2 +- src/plugins/platforms/cocoa/qcocoabackingstore.mm | 2 +- src/plugins/platforms/cocoa/qcocoacursor.h | 2 +- src/plugins/platforms/cocoa/qcocoacursor.mm | 2 +- src/plugins/platforms/cocoa/qcocoaeventdispatcher.h | 2 +- src/plugins/platforms/cocoa/qcocoaeventdispatcher.mm | 2 +- src/plugins/platforms/cocoa/qcocoafiledialoghelper.h | 2 +- src/plugins/platforms/cocoa/qcocoafiledialoghelper.mm | 2 +- src/plugins/platforms/cocoa/qcocoaglcontext.h | 2 +- src/plugins/platforms/cocoa/qcocoaglcontext.mm | 2 +- src/plugins/platforms/cocoa/qcocoahelpers.h | 2 +- src/plugins/platforms/cocoa/qcocoahelpers.mm | 2 +- src/plugins/platforms/cocoa/qcocoaintegration.h | 2 +- src/plugins/platforms/cocoa/qcocoaintegration.mm | 2 +- src/plugins/platforms/cocoa/qcocoamenu.h | 2 +- src/plugins/platforms/cocoa/qcocoamenu.mm | 2 +- src/plugins/platforms/cocoa/qcocoamenuloader.h | 2 +- src/plugins/platforms/cocoa/qcocoamenuloader.mm | 2 +- src/plugins/platforms/cocoa/qcocoanativeinterface.h | 2 +- src/plugins/platforms/cocoa/qcocoanativeinterface.mm | 2 +- src/plugins/platforms/cocoa/qcocoatheme.h | 2 +- src/plugins/platforms/cocoa/qcocoatheme.mm | 2 +- src/plugins/platforms/cocoa/qcocoawindow.h | 2 +- src/plugins/platforms/cocoa/qcocoawindow.mm | 2 +- src/plugins/platforms/cocoa/qmenu_mac.h | 2 +- src/plugins/platforms/cocoa/qmenu_mac.mm | 2 +- src/plugins/platforms/cocoa/qmultitouch_mac.mm | 2 +- src/plugins/platforms/cocoa/qmultitouch_mac_p.h | 2 +- src/plugins/platforms/cocoa/qnsview.h | 2 +- src/plugins/platforms/cocoa/qnsview.mm | 2 +- src/plugins/platforms/cocoa/qnsviewaccessibility.mm | 2 +- src/plugins/platforms/cocoa/qnswindowdelegate.h | 2 +- src/plugins/platforms/cocoa/qnswindowdelegate.mm | 2 +- src/plugins/platforms/directfb/main.cpp | 2 +- src/plugins/platforms/directfb/qdirectfb_egl.cpp | 2 +- src/plugins/platforms/directfb/qdirectfb_egl.h | 2 +- src/plugins/platforms/directfb/qdirectfbbackingstore.cpp | 2 +- src/plugins/platforms/directfb/qdirectfbbackingstore.h | 2 +- src/plugins/platforms/directfb/qdirectfbblitter.cpp | 2 +- src/plugins/platforms/directfb/qdirectfbblitter.h | 2 +- src/plugins/platforms/directfb/qdirectfbconvenience.cpp | 2 +- src/plugins/platforms/directfb/qdirectfbconvenience.h | 2 +- src/plugins/platforms/directfb/qdirectfbcursor.cpp | 2 +- src/plugins/platforms/directfb/qdirectfbcursor.h | 2 +- src/plugins/platforms/directfb/qdirectfbglcontext.cpp | 2 +- src/plugins/platforms/directfb/qdirectfbglcontext.h | 2 +- src/plugins/platforms/directfb/qdirectfbinput.cpp | 2 +- src/plugins/platforms/directfb/qdirectfbinput.h | 2 +- src/plugins/platforms/directfb/qdirectfbintegration.cpp | 2 +- src/plugins/platforms/directfb/qdirectfbintegration.h | 2 +- src/plugins/platforms/directfb/qdirectfbscreen.cpp | 2 +- src/plugins/platforms/directfb/qdirectfbscreen.h | 2 +- src/plugins/platforms/directfb/qdirectfbwindow.cpp | 2 +- src/plugins/platforms/directfb/qdirectfbwindow.h | 2 +- src/plugins/platforms/eglfs/main.cpp | 2 +- src/plugins/platforms/eglfs/qeglfsbackingstore.cpp | 2 +- src/plugins/platforms/eglfs/qeglfsbackingstore.h | 2 +- src/plugins/platforms/eglfs/qeglfsintegration.cpp | 2 +- src/plugins/platforms/eglfs/qeglfsintegration.h | 2 +- src/plugins/platforms/eglfs/qeglfsscreen.cpp | 2 +- src/plugins/platforms/eglfs/qeglfsscreen.h | 2 +- src/plugins/platforms/eglfs/qeglfswindow.cpp | 2 +- src/plugins/platforms/eglfs/qeglfswindow.h | 2 +- src/plugins/platforms/kms/main.cpp | 2 +- src/plugins/platforms/kms/qkmsbackingstore.cpp | 2 +- src/plugins/platforms/kms/qkmsbackingstore.h | 2 +- src/plugins/platforms/kms/qkmsbuffermanager.cpp | 2 +- src/plugins/platforms/kms/qkmsbuffermanager.h | 2 +- src/plugins/platforms/kms/qkmscontext.cpp | 2 +- src/plugins/platforms/kms/qkmscontext.h | 2 +- src/plugins/platforms/kms/qkmscursor.cpp | 2 +- src/plugins/platforms/kms/qkmscursor.h | 2 +- src/plugins/platforms/kms/qkmsdevice.cpp | 2 +- src/plugins/platforms/kms/qkmsdevice.h | 2 +- src/plugins/platforms/kms/qkmsintegration.cpp | 2 +- src/plugins/platforms/kms/qkmsintegration.h | 2 +- src/plugins/platforms/kms/qkmsscreen.cpp | 2 +- src/plugins/platforms/kms/qkmsscreen.h | 2 +- src/plugins/platforms/kms/qkmswindow.cpp | 2 +- src/plugins/platforms/kms/qkmswindow.h | 2 +- src/plugins/platforms/linuxfb/main.cpp | 2 +- src/plugins/platforms/linuxfb/qlinuxfbintegration.cpp | 2 +- src/plugins/platforms/linuxfb/qlinuxfbintegration.h | 2 +- src/plugins/platforms/minimal/main.cpp | 2 +- src/plugins/platforms/minimal/qminimalbackingstore.cpp | 2 +- src/plugins/platforms/minimal/qminimalbackingstore.h | 2 +- src/plugins/platforms/minimal/qminimalintegration.cpp | 2 +- src/plugins/platforms/minimal/qminimalintegration.h | 2 +- src/plugins/platforms/openkode/main.cpp | 2 +- src/plugins/platforms/openkode/openkodekeytranslator.h | 2 +- src/plugins/platforms/openkode/qopenkodeeventloopintegration.cpp | 2 +- src/plugins/platforms/openkode/qopenkodeeventloopintegration.h | 2 +- src/plugins/platforms/openkode/qopenkodeintegration.cpp | 2 +- src/plugins/platforms/openkode/qopenkodeintegration.h | 2 +- src/plugins/platforms/openkode/qopenkodewindow.cpp | 2 +- src/plugins/platforms/openkode/qopenkodewindow.h | 2 +- src/plugins/platforms/openkode/shaders/frag.glslf | 2 +- src/plugins/platforms/openkode/shaders/vert.glslv | 2 +- src/plugins/platforms/openvglite/main.cpp | 2 +- src/plugins/platforms/openvglite/qgraphicssystem_vglite.cpp | 2 +- src/plugins/platforms/openvglite/qgraphicssystem_vglite.h | 2 +- src/plugins/platforms/openvglite/qwindowsurface_vglite.cpp | 2 +- src/plugins/platforms/openvglite/qwindowsurface_vglite.h | 2 +- src/plugins/platforms/openwfd/main.cpp | 2 +- src/plugins/platforms/openwfd/qopenwfdbackingstore.cpp | 2 +- src/plugins/platforms/openwfd/qopenwfdbackingstore.h | 2 +- src/plugins/platforms/openwfd/qopenwfddevice.cpp | 2 +- src/plugins/platforms/openwfd/qopenwfddevice.h | 2 +- src/plugins/platforms/openwfd/qopenwfdevent.cpp | 2 +- src/plugins/platforms/openwfd/qopenwfdevent.h | 2 +- src/plugins/platforms/openwfd/qopenwfdglcontext.cpp | 2 +- src/plugins/platforms/openwfd/qopenwfdglcontext.h | 2 +- src/plugins/platforms/openwfd/qopenwfdintegration.cpp | 2 +- src/plugins/platforms/openwfd/qopenwfdintegration.h | 2 +- src/plugins/platforms/openwfd/qopenwfdnativeinterface.cpp | 2 +- src/plugins/platforms/openwfd/qopenwfdnativeinterface.h | 2 +- src/plugins/platforms/openwfd/qopenwfdoutputbuffer.cpp | 2 +- src/plugins/platforms/openwfd/qopenwfdoutputbuffer.h | 2 +- src/plugins/platforms/openwfd/qopenwfdport.cpp | 2 +- src/plugins/platforms/openwfd/qopenwfdport.h | 2 +- src/plugins/platforms/openwfd/qopenwfdportmode.cpp | 2 +- src/plugins/platforms/openwfd/qopenwfdportmode.h | 2 +- src/plugins/platforms/openwfd/qopenwfdscreen.cpp | 2 +- src/plugins/platforms/openwfd/qopenwfdscreen.h | 2 +- src/plugins/platforms/openwfd/qopenwfdwindow.cpp | 2 +- src/plugins/platforms/openwfd/qopenwfdwindow.h | 2 +- src/plugins/platforms/qvfb/main.cpp | 2 +- src/plugins/platforms/qvfb/qvfbintegration.cpp | 2 +- src/plugins/platforms/qvfb/qvfbintegration.h | 2 +- src/plugins/platforms/qvfb/qvfbwindowsurface.cpp | 2 +- src/plugins/platforms/qvfb/qvfbwindowsurface.h | 2 +- src/plugins/platforms/uikit/examples/qmltest/main.mm | 2 +- src/plugins/platforms/uikit/examples/qmltest/qml/main.qml | 2 +- .../qmltest/qmlapplicationviewer/moc_qmlapplicationviewer.cpp | 2 +- .../examples/qmltest/qmlapplicationviewer/qmlapplicationviewer.cpp | 2 +- .../examples/qmltest/qmlapplicationviewer/qmlapplicationviewer.h | 2 +- src/plugins/platforms/uikit/main.mm | 2 +- src/plugins/platforms/uikit/quikiteventloop.h | 2 +- src/plugins/platforms/uikit/quikiteventloop.mm | 2 +- src/plugins/platforms/uikit/quikitintegration.h | 2 +- src/plugins/platforms/uikit/quikitintegration.mm | 2 +- src/plugins/platforms/uikit/quikitscreen.h | 2 +- src/plugins/platforms/uikit/quikitscreen.mm | 2 +- src/plugins/platforms/uikit/quikitsoftwareinputhandler.h | 2 +- src/plugins/platforms/uikit/quikitwindow.h | 2 +- src/plugins/platforms/uikit/quikitwindow.mm | 2 +- src/plugins/platforms/uikit/quikitwindowsurface.h | 2 +- src/plugins/platforms/uikit/quikitwindowsurface.mm | 2 +- src/plugins/platforms/vnc/main.cpp | 2 +- src/plugins/platforms/vnc/qvnccursor.cpp | 2 +- src/plugins/platforms/vnc/qvnccursor.h | 2 +- src/plugins/platforms/vnc/qvncintegration.cpp | 2 +- src/plugins/platforms/vnc/qvncintegration.h | 2 +- src/plugins/platforms/vnc/qvncserver.cpp | 2 +- src/plugins/platforms/vnc/qvncserver.h | 2 +- src/plugins/platforms/windows/array.h | 2 +- src/plugins/platforms/windows/main.cpp | 2 +- src/plugins/platforms/windows/qtwindows_additional.h | 2 +- src/plugins/platforms/windows/qtwindowsglobal.h | 2 +- src/plugins/platforms/windows/qwindowsaccessibility.cpp | 2 +- src/plugins/platforms/windows/qwindowsaccessibility.h | 2 +- src/plugins/platforms/windows/qwindowsbackingstore.cpp | 2 +- src/plugins/platforms/windows/qwindowsbackingstore.h | 2 +- src/plugins/platforms/windows/qwindowsclipboard.cpp | 2 +- src/plugins/platforms/windows/qwindowsclipboard.h | 2 +- src/plugins/platforms/windows/qwindowscontext.cpp | 2 +- src/plugins/platforms/windows/qwindowscontext.h | 2 +- src/plugins/platforms/windows/qwindowscursor.cpp | 2 +- src/plugins/platforms/windows/qwindowscursor.h | 2 +- src/plugins/platforms/windows/qwindowsdialoghelpers.cpp | 2 +- src/plugins/platforms/windows/qwindowsdialoghelpers.h | 2 +- src/plugins/platforms/windows/qwindowsdrag.cpp | 2 +- src/plugins/platforms/windows/qwindowsdrag.h | 2 +- src/plugins/platforms/windows/qwindowsfontdatabase.cpp | 2 +- src/plugins/platforms/windows/qwindowsfontdatabase.h | 2 +- src/plugins/platforms/windows/qwindowsfontdatabase_ft.cpp | 2 +- src/plugins/platforms/windows/qwindowsfontdatabase_ft.h | 2 +- src/plugins/platforms/windows/qwindowsfontengine.cpp | 2 +- src/plugins/platforms/windows/qwindowsfontengine.h | 2 +- src/plugins/platforms/windows/qwindowsfontenginedirectwrite.cpp | 2 +- src/plugins/platforms/windows/qwindowsfontenginedirectwrite.h | 2 +- src/plugins/platforms/windows/qwindowsglcontext.cpp | 2 +- src/plugins/platforms/windows/qwindowsglcontext.h | 2 +- src/plugins/platforms/windows/qwindowsguieventdispatcher.cpp | 2 +- src/plugins/platforms/windows/qwindowsguieventdispatcher.h | 2 +- src/plugins/platforms/windows/qwindowsinputcontext.cpp | 2 +- src/plugins/platforms/windows/qwindowsinputcontext.h | 2 +- src/plugins/platforms/windows/qwindowsintegration.cpp | 2 +- src/plugins/platforms/windows/qwindowsintegration.h | 2 +- src/plugins/platforms/windows/qwindowsinternalmimedata.h | 2 +- src/plugins/platforms/windows/qwindowskeymapper.cpp | 2 +- src/plugins/platforms/windows/qwindowskeymapper.h | 2 +- src/plugins/platforms/windows/qwindowsmime.cpp | 2 +- src/plugins/platforms/windows/qwindowsmime.h | 2 +- src/plugins/platforms/windows/qwindowsmousehandler.cpp | 2 +- src/plugins/platforms/windows/qwindowsmousehandler.h | 2 +- src/plugins/platforms/windows/qwindowsnativeimage.cpp | 2 +- src/plugins/platforms/windows/qwindowsnativeimage.h | 2 +- src/plugins/platforms/windows/qwindowsole.cpp | 2 +- src/plugins/platforms/windows/qwindowsole.h | 2 +- src/plugins/platforms/windows/qwindowsscreen.cpp | 2 +- src/plugins/platforms/windows/qwindowsscreen.h | 2 +- src/plugins/platforms/windows/qwindowstheme.cpp | 2 +- src/plugins/platforms/windows/qwindowstheme.h | 2 +- src/plugins/platforms/windows/qwindowswindow.cpp | 2 +- src/plugins/platforms/windows/qwindowswindow.h | 2 +- src/plugins/platforms/xcb/main.cpp | 2 +- src/plugins/platforms/xcb/qdri2context.cpp | 2 +- src/plugins/platforms/xcb/qdri2context.h | 2 +- src/plugins/platforms/xcb/qglxintegration.cpp | 2 +- src/plugins/platforms/xcb/qglxintegration.h | 2 +- src/plugins/platforms/xcb/qxcbbackingstore.cpp | 2 +- src/plugins/platforms/xcb/qxcbbackingstore.h | 2 +- src/plugins/platforms/xcb/qxcbclipboard.cpp | 2 +- src/plugins/platforms/xcb/qxcbclipboard.h | 2 +- src/plugins/platforms/xcb/qxcbconnection.cpp | 2 +- src/plugins/platforms/xcb/qxcbconnection.h | 2 +- src/plugins/platforms/xcb/qxcbconnection_maemo.cpp | 2 +- src/plugins/platforms/xcb/qxcbcursor.cpp | 2 +- src/plugins/platforms/xcb/qxcbcursor.h | 2 +- src/plugins/platforms/xcb/qxcbdrag.cpp | 2 +- src/plugins/platforms/xcb/qxcbdrag.h | 2 +- src/plugins/platforms/xcb/qxcbeglsurface.h | 2 +- src/plugins/platforms/xcb/qxcbimage.cpp | 2 +- src/plugins/platforms/xcb/qxcbimage.h | 2 +- src/plugins/platforms/xcb/qxcbintegration.cpp | 2 +- src/plugins/platforms/xcb/qxcbintegration.h | 2 +- src/plugins/platforms/xcb/qxcbkeyboard.cpp | 2 +- src/plugins/platforms/xcb/qxcbkeyboard.h | 2 +- src/plugins/platforms/xcb/qxcbmime.cpp | 2 +- src/plugins/platforms/xcb/qxcbmime.h | 2 +- src/plugins/platforms/xcb/qxcbnativeinterface.cpp | 2 +- src/plugins/platforms/xcb/qxcbnativeinterface.h | 2 +- src/plugins/platforms/xcb/qxcbobject.h | 2 +- src/plugins/platforms/xcb/qxcbscreen.cpp | 2 +- src/plugins/platforms/xcb/qxcbscreen.h | 2 +- src/plugins/platforms/xcb/qxcbwindow.cpp | 2 +- src/plugins/platforms/xcb/qxcbwindow.h | 2 +- src/plugins/platforms/xcb/qxcbwmsupport.cpp | 2 +- src/plugins/platforms/xcb/qxcbwmsupport.h | 2 +- src/plugins/platforms/xlib/main.cpp | 2 +- src/plugins/platforms/xlib/qglxintegration.cpp | 2 +- src/plugins/platforms/xlib/qglxintegration.h | 2 +- src/plugins/platforms/xlib/qxlibbackingstore.cpp | 2 +- src/plugins/platforms/xlib/qxlibbackingstore.h | 2 +- src/plugins/platforms/xlib/qxlibclipboard.cpp | 2 +- src/plugins/platforms/xlib/qxlibclipboard.h | 2 +- src/plugins/platforms/xlib/qxlibcursor.cpp | 2 +- src/plugins/platforms/xlib/qxlibcursor.h | 2 +- src/plugins/platforms/xlib/qxlibdisplay.cpp | 2 +- src/plugins/platforms/xlib/qxlibdisplay.h | 2 +- src/plugins/platforms/xlib/qxlibintegration.cpp | 2 +- src/plugins/platforms/xlib/qxlibintegration.h | 2 +- src/plugins/platforms/xlib/qxlibkeyboard.cpp | 2 +- src/plugins/platforms/xlib/qxlibkeyboard.h | 2 +- src/plugins/platforms/xlib/qxlibmime.cpp | 2 +- src/plugins/platforms/xlib/qxlibmime.h | 2 +- src/plugins/platforms/xlib/qxlibnativeinterface.cpp | 2 +- src/plugins/platforms/xlib/qxlibnativeinterface.h | 2 +- src/plugins/platforms/xlib/qxlibscreen.cpp | 2 +- src/plugins/platforms/xlib/qxlibscreen.h | 2 +- src/plugins/platforms/xlib/qxlibstatic.cpp | 2 +- src/plugins/platforms/xlib/qxlibstatic.h | 2 +- src/plugins/platforms/xlib/qxlibwindow.cpp | 2 +- src/plugins/platforms/xlib/qxlibwindow.h | 2 +- src/plugins/printsupport/windows/main.cpp | 2 +- src/plugins/printsupport/windows/qwindowsprinterinfo.cpp | 2 +- src/plugins/printsupport/windows/qwindowsprintersupport.cpp | 2 +- src/plugins/printsupport/windows/qwindowsprintersupport.h | 2 +- src/plugins/sqldrivers/db2/main.cpp | 2 +- src/plugins/sqldrivers/ibase/main.cpp | 2 +- src/plugins/sqldrivers/mysql/main.cpp | 2 +- src/plugins/sqldrivers/oci/main.cpp | 2 +- src/plugins/sqldrivers/odbc/main.cpp | 2 +- src/plugins/sqldrivers/psql/main.cpp | 2 +- src/plugins/sqldrivers/sqlite/smain.cpp | 2 +- src/plugins/sqldrivers/sqlite2/smain.cpp | 2 +- src/plugins/sqldrivers/tds/main.cpp | 2 +- src/printsupport/dialogs/qabstractpagesetupdialog.cpp | 2 +- src/printsupport/dialogs/qabstractpagesetupdialog.h | 2 +- src/printsupport/dialogs/qabstractpagesetupdialog_p.h | 2 +- src/printsupport/dialogs/qabstractprintdialog.cpp | 2 +- src/printsupport/dialogs/qabstractprintdialog.h | 2 +- src/printsupport/dialogs/qabstractprintdialog_p.h | 2 +- src/printsupport/dialogs/qpagesetupdialog.cpp | 2 +- src/printsupport/dialogs/qpagesetupdialog.h | 2 +- src/printsupport/dialogs/qpagesetupdialog_mac.mm | 2 +- src/printsupport/dialogs/qpagesetupdialog_unix.cpp | 2 +- src/printsupport/dialogs/qpagesetupdialog_unix_p.h | 2 +- src/printsupport/dialogs/qpagesetupdialog_win.cpp | 2 +- src/printsupport/dialogs/qprintdialog.h | 2 +- src/printsupport/dialogs/qprintdialog.qdoc | 2 +- src/printsupport/dialogs/qprintdialog_mac.mm | 2 +- src/printsupport/dialogs/qprintdialog_unix.cpp | 2 +- src/printsupport/dialogs/qprintdialog_win.cpp | 2 +- src/printsupport/dialogs/qprintpreviewdialog.cpp | 2 +- src/printsupport/dialogs/qprintpreviewdialog.h | 2 +- src/printsupport/kernel/qcups.cpp | 2 +- src/printsupport/kernel/qcups_p.h | 2 +- src/printsupport/kernel/qpaintengine_alpha.cpp | 2 +- src/printsupport/kernel/qpaintengine_alpha_p.h | 2 +- src/printsupport/kernel/qpaintengine_preview.cpp | 2 +- src/printsupport/kernel/qpaintengine_preview_p.h | 2 +- src/printsupport/kernel/qplatformprintersupport_qpa.cpp | 2 +- src/printsupport/kernel/qplatformprintersupport_qpa.h | 2 +- src/printsupport/kernel/qplatformprintplugin.cpp | 2 +- src/printsupport/kernel/qplatformprintplugin_qpa.h | 2 +- src/printsupport/kernel/qprintengine.h | 2 +- src/printsupport/kernel/qprintengine_pdf.cpp | 2 +- src/printsupport/kernel/qprintengine_pdf_p.h | 2 +- src/printsupport/kernel/qprintengine_win.cpp | 2 +- src/printsupport/kernel/qprintengine_win_p.h | 2 +- src/printsupport/kernel/qprinter.cpp | 2 +- src/printsupport/kernel/qprinter.h | 2 +- src/printsupport/kernel/qprinter_p.h | 2 +- src/printsupport/kernel/qprinterinfo.cpp | 2 +- src/printsupport/kernel/qprinterinfo.h | 2 +- src/printsupport/kernel/qprinterinfo_p.h | 2 +- src/printsupport/kernel/qprinterinfo_unix.cpp | 2 +- src/printsupport/kernel/qprinterinfo_unix_p.h | 2 +- src/printsupport/widgets/qprintpreviewwidget.cpp | 2 +- src/printsupport/widgets/qprintpreviewwidget.h | 2 +- src/sql/drivers/db2/qsql_db2.cpp | 2 +- src/sql/drivers/db2/qsql_db2.h | 2 +- src/sql/drivers/ibase/qsql_ibase.cpp | 2 +- src/sql/drivers/ibase/qsql_ibase.h | 2 +- src/sql/drivers/mysql/qsql_mysql.cpp | 2 +- src/sql/drivers/mysql/qsql_mysql.h | 2 +- src/sql/drivers/oci/qsql_oci.cpp | 2 +- src/sql/drivers/oci/qsql_oci.h | 2 +- src/sql/drivers/odbc/qsql_odbc.cpp | 2 +- src/sql/drivers/odbc/qsql_odbc.h | 2 +- src/sql/drivers/psql/qsql_psql.cpp | 2 +- src/sql/drivers/psql/qsql_psql.h | 2 +- src/sql/drivers/sqlite/qsql_sqlite.cpp | 2 +- src/sql/drivers/sqlite/qsql_sqlite.h | 2 +- src/sql/drivers/sqlite2/qsql_sqlite2.cpp | 2 +- src/sql/drivers/sqlite2/qsql_sqlite2.h | 2 +- src/sql/drivers/tds/qsql_tds.cpp | 2 +- src/sql/drivers/tds/qsql_tds.h | 2 +- src/sql/kernel/qsql.h | 2 +- src/sql/kernel/qsql.qdoc | 2 +- src/sql/kernel/qsqlcachedresult.cpp | 2 +- src/sql/kernel/qsqlcachedresult_p.h | 2 +- src/sql/kernel/qsqldatabase.cpp | 2 +- src/sql/kernel/qsqldatabase.h | 2 +- src/sql/kernel/qsqldriver.cpp | 2 +- src/sql/kernel/qsqldriver.h | 2 +- src/sql/kernel/qsqldriverplugin.cpp | 2 +- src/sql/kernel/qsqldriverplugin.h | 2 +- src/sql/kernel/qsqlerror.cpp | 2 +- src/sql/kernel/qsqlerror.h | 2 +- src/sql/kernel/qsqlfield.cpp | 2 +- src/sql/kernel/qsqlfield.h | 2 +- src/sql/kernel/qsqlindex.cpp | 2 +- src/sql/kernel/qsqlindex.h | 2 +- src/sql/kernel/qsqlnulldriver_p.h | 2 +- src/sql/kernel/qsqlquery.cpp | 2 +- src/sql/kernel/qsqlquery.h | 2 +- src/sql/kernel/qsqlrecord.cpp | 2 +- src/sql/kernel/qsqlrecord.h | 2 +- src/sql/kernel/qsqlresult.cpp | 2 +- src/sql/kernel/qsqlresult.h | 2 +- src/sql/models/qsqlquerymodel.cpp | 2 +- src/sql/models/qsqlquerymodel.h | 2 +- src/sql/models/qsqlquerymodel_p.h | 2 +- src/sql/models/qsqlrelationaldelegate.cpp | 2 +- src/sql/models/qsqlrelationaldelegate.h | 2 +- src/sql/models/qsqlrelationaltablemodel.cpp | 2 +- src/sql/models/qsqlrelationaltablemodel.h | 2 +- src/sql/models/qsqltablemodel.cpp | 2 +- src/sql/models/qsqltablemodel.h | 2 +- src/sql/models/qsqltablemodel_p.h | 2 +- src/testlib/qabstracttestlogger.cpp | 2 +- src/testlib/qabstracttestlogger_p.h | 2 +- src/testlib/qasciikey.cpp | 2 +- src/testlib/qbenchmark.cpp | 2 +- src/testlib/qbenchmark.h | 2 +- src/testlib/qbenchmark_p.h | 2 +- src/testlib/qbenchmarkevent.cpp | 2 +- src/testlib/qbenchmarkevent_p.h | 2 +- src/testlib/qbenchmarkmeasurement.cpp | 2 +- src/testlib/qbenchmarkmeasurement_p.h | 2 +- src/testlib/qbenchmarkmetric.cpp | 2 +- src/testlib/qbenchmarkmetric.h | 2 +- src/testlib/qbenchmarkmetric_p.h | 2 +- src/testlib/qbenchmarkvalgrind.cpp | 2 +- src/testlib/qbenchmarkvalgrind_p.h | 2 +- src/testlib/qplaintestlogger.cpp | 2 +- src/testlib/qplaintestlogger_p.h | 2 +- src/testlib/qsignaldumper.cpp | 2 +- src/testlib/qsignaldumper_p.h | 2 +- src/testlib/qsignalspy.h | 2 +- src/testlib/qsignalspy.qdoc | 2 +- src/testlib/qtest.h | 2 +- src/testlib/qtest_global.h | 2 +- src/testlib/qtest_gui.h | 2 +- src/testlib/qtestaccessible.h | 2 +- src/testlib/qtestassert.h | 2 +- src/testlib/qtestcase.cpp | 2 +- src/testlib/qtestcase.h | 2 +- src/testlib/qtestcoreelement_p.h | 2 +- src/testlib/qtestcorelist_p.h | 2 +- src/testlib/qtestdata.cpp | 2 +- src/testlib/qtestdata.h | 2 +- src/testlib/qtestelement.cpp | 2 +- src/testlib/qtestelement_p.h | 2 +- src/testlib/qtestelementattribute.cpp | 2 +- src/testlib/qtestelementattribute_p.h | 2 +- src/testlib/qtestevent.h | 2 +- src/testlib/qtestevent.qdoc | 2 +- src/testlib/qtesteventloop.h | 2 +- src/testlib/qtestkeyboard.h | 2 +- src/testlib/qtestlog.cpp | 2 +- src/testlib/qtestlog_p.h | 2 +- src/testlib/qtestmouse.h | 2 +- src/testlib/qtestresult.cpp | 2 +- src/testlib/qtestresult_p.h | 2 +- src/testlib/qtestspontaneevent.h | 2 +- src/testlib/qtestsystem.h | 2 +- src/testlib/qtesttable.cpp | 2 +- src/testlib/qtesttable_p.h | 2 +- src/testlib/qtesttouch.h | 2 +- src/testlib/qtestxunitstreamer.cpp | 2 +- src/testlib/qtestxunitstreamer_p.h | 2 +- src/testlib/qxmltestlogger.cpp | 2 +- src/testlib/qxmltestlogger_p.h | 2 +- src/testlib/qxunittestlogger.cpp | 2 +- src/testlib/qxunittestlogger_p.h | 2 +- src/tools/moc/generator.cpp | 2 +- src/tools/moc/generator.h | 2 +- src/tools/moc/keywords.cpp | 2 +- src/tools/moc/main.cpp | 2 +- src/tools/moc/moc.cpp | 2 +- src/tools/moc/moc.h | 2 +- src/tools/moc/mwerks_mac.cpp | 2 +- src/tools/moc/mwerks_mac.h | 2 +- src/tools/moc/outputrevision.h | 2 +- src/tools/moc/parser.cpp | 2 +- src/tools/moc/parser.h | 2 +- src/tools/moc/ppkeywords.cpp | 2 +- src/tools/moc/preprocessor.cpp | 2 +- src/tools/moc/preprocessor.h | 2 +- src/tools/moc/symbols.h | 2 +- src/tools/moc/token.cpp | 2 +- src/tools/moc/token.h | 2 +- src/tools/moc/util/generate.sh | 2 +- src/tools/moc/util/generate_keywords.cpp | 2 +- src/tools/moc/util/licenseheader.txt | 2 +- src/tools/moc/utils.h | 2 +- src/tools/rcc/main.cpp | 2 +- src/tools/rcc/rcc.cpp | 2 +- src/tools/rcc/rcc.h | 2 +- src/tools/uic/cpp/cppextractimages.cpp | 2 +- src/tools/uic/cpp/cppextractimages.h | 2 +- src/tools/uic/cpp/cppwritedeclaration.cpp | 2 +- src/tools/uic/cpp/cppwritedeclaration.h | 2 +- src/tools/uic/cpp/cppwriteicondata.cpp | 2 +- src/tools/uic/cpp/cppwriteicondata.h | 2 +- src/tools/uic/cpp/cppwriteicondeclaration.cpp | 2 +- src/tools/uic/cpp/cppwriteicondeclaration.h | 2 +- src/tools/uic/cpp/cppwriteiconinitialization.cpp | 2 +- src/tools/uic/cpp/cppwriteiconinitialization.h | 2 +- src/tools/uic/cpp/cppwriteincludes.cpp | 2 +- src/tools/uic/cpp/cppwriteincludes.h | 2 +- src/tools/uic/cpp/cppwriteinitialization.cpp | 2 +- src/tools/uic/cpp/cppwriteinitialization.h | 2 +- src/tools/uic/customwidgetsinfo.cpp | 2 +- src/tools/uic/customwidgetsinfo.h | 2 +- src/tools/uic/databaseinfo.cpp | 2 +- src/tools/uic/databaseinfo.h | 2 +- src/tools/uic/driver.cpp | 2 +- src/tools/uic/driver.h | 2 +- src/tools/uic/globaldefs.h | 2 +- src/tools/uic/main.cpp | 2 +- src/tools/uic/option.h | 2 +- src/tools/uic/treewalker.cpp | 2 +- src/tools/uic/treewalker.h | 2 +- src/tools/uic/ui4.cpp | 2 +- src/tools/uic/ui4.h | 2 +- src/tools/uic/uic.cpp | 2 +- src/tools/uic/uic.h | 2 +- src/tools/uic/utils.h | 2 +- src/tools/uic/validator.cpp | 2 +- src/tools/uic/validator.h | 2 +- src/widgets/accessible/qaccessiblewidget.cpp | 2 +- src/widgets/accessible/qaccessiblewidget.h | 2 +- src/widgets/animation/qguivariantanimation.cpp | 2 +- src/widgets/dialogs/qcolordialog.cpp | 2 +- src/widgets/dialogs/qcolordialog.h | 2 +- src/widgets/dialogs/qcolordialog_mac.mm | 2 +- src/widgets/dialogs/qcolordialog_p.h | 2 +- src/widgets/dialogs/qdialog.cpp | 2 +- src/widgets/dialogs/qdialog.h | 2 +- src/widgets/dialogs/qdialog_p.h | 2 +- src/widgets/dialogs/qerrormessage.cpp | 2 +- src/widgets/dialogs/qerrormessage.h | 2 +- src/widgets/dialogs/qfiledialog.cpp | 2 +- src/widgets/dialogs/qfiledialog.h | 2 +- src/widgets/dialogs/qfiledialog.ui | 2 +- src/widgets/dialogs/qfiledialog_embedded.ui | 2 +- src/widgets/dialogs/qfiledialog_mac.mm | 2 +- src/widgets/dialogs/qfiledialog_p.h | 2 +- src/widgets/dialogs/qfileinfogatherer.cpp | 2 +- src/widgets/dialogs/qfileinfogatherer_p.h | 2 +- src/widgets/dialogs/qfilesystemmodel.cpp | 2 +- src/widgets/dialogs/qfilesystemmodel.h | 2 +- src/widgets/dialogs/qfilesystemmodel_p.h | 2 +- src/widgets/dialogs/qfontdialog.cpp | 2 +- src/widgets/dialogs/qfontdialog.h | 2 +- src/widgets/dialogs/qfontdialog_mac.mm | 2 +- src/widgets/dialogs/qfontdialog_p.h | 2 +- src/widgets/dialogs/qfscompleter_p.h | 2 +- src/widgets/dialogs/qinputdialog.cpp | 2 +- src/widgets/dialogs/qinputdialog.h | 2 +- src/widgets/dialogs/qmessagebox.cpp | 4 ++-- src/widgets/dialogs/qmessagebox.h | 2 +- src/widgets/dialogs/qnspanelproxy_mac.mm | 2 +- src/widgets/dialogs/qprogressdialog.cpp | 2 +- src/widgets/dialogs/qprogressdialog.h | 2 +- src/widgets/dialogs/qsidebar.cpp | 2 +- src/widgets/dialogs/qsidebar_p.h | 2 +- src/widgets/dialogs/qwizard.cpp | 2 +- src/widgets/dialogs/qwizard.h | 2 +- src/widgets/dialogs/qwizard_win.cpp | 2 +- src/widgets/dialogs/qwizard_win_p.h | 2 +- src/widgets/effects/qgraphicseffect.cpp | 2 +- src/widgets/effects/qgraphicseffect.h | 2 +- src/widgets/effects/qgraphicseffect_p.h | 2 +- src/widgets/effects/qpixmapfilter.cpp | 2 +- src/widgets/effects/qpixmapfilter_p.h | 2 +- src/widgets/graphicsview/qgraph_p.h | 2 +- src/widgets/graphicsview/qgraphicsanchorlayout.cpp | 2 +- src/widgets/graphicsview/qgraphicsanchorlayout.h | 2 +- src/widgets/graphicsview/qgraphicsanchorlayout_p.cpp | 2 +- src/widgets/graphicsview/qgraphicsanchorlayout_p.h | 2 +- src/widgets/graphicsview/qgraphicsgridlayout.cpp | 2 +- src/widgets/graphicsview/qgraphicsgridlayout.h | 2 +- src/widgets/graphicsview/qgraphicsitem.cpp | 2 +- src/widgets/graphicsview/qgraphicsitem.h | 2 +- src/widgets/graphicsview/qgraphicsitem_p.h | 2 +- src/widgets/graphicsview/qgraphicsitemanimation.cpp | 2 +- src/widgets/graphicsview/qgraphicsitemanimation.h | 2 +- src/widgets/graphicsview/qgraphicslayout.cpp | 2 +- src/widgets/graphicsview/qgraphicslayout.h | 2 +- src/widgets/graphicsview/qgraphicslayout_p.cpp | 2 +- src/widgets/graphicsview/qgraphicslayout_p.h | 2 +- src/widgets/graphicsview/qgraphicslayoutitem.cpp | 2 +- src/widgets/graphicsview/qgraphicslayoutitem.h | 2 +- src/widgets/graphicsview/qgraphicslayoutitem_p.h | 2 +- src/widgets/graphicsview/qgraphicslinearlayout.cpp | 2 +- src/widgets/graphicsview/qgraphicslinearlayout.h | 2 +- src/widgets/graphicsview/qgraphicsproxywidget.cpp | 2 +- src/widgets/graphicsview/qgraphicsproxywidget.h | 2 +- src/widgets/graphicsview/qgraphicsproxywidget_p.h | 2 +- src/widgets/graphicsview/qgraphicsscene.cpp | 2 +- src/widgets/graphicsview/qgraphicsscene.h | 2 +- src/widgets/graphicsview/qgraphicsscene_bsp.cpp | 2 +- src/widgets/graphicsview/qgraphicsscene_bsp_p.h | 2 +- src/widgets/graphicsview/qgraphicsscene_p.h | 2 +- src/widgets/graphicsview/qgraphicsscenebsptreeindex.cpp | 2 +- src/widgets/graphicsview/qgraphicsscenebsptreeindex_p.h | 2 +- src/widgets/graphicsview/qgraphicssceneevent.cpp | 2 +- src/widgets/graphicsview/qgraphicssceneevent.h | 2 +- src/widgets/graphicsview/qgraphicssceneindex.cpp | 2 +- src/widgets/graphicsview/qgraphicssceneindex_p.h | 2 +- src/widgets/graphicsview/qgraphicsscenelinearindex.cpp | 2 +- src/widgets/graphicsview/qgraphicsscenelinearindex_p.h | 2 +- src/widgets/graphicsview/qgraphicstransform.cpp | 2 +- src/widgets/graphicsview/qgraphicstransform.h | 2 +- src/widgets/graphicsview/qgraphicstransform_p.h | 2 +- src/widgets/graphicsview/qgraphicsview.cpp | 2 +- src/widgets/graphicsview/qgraphicsview.h | 2 +- src/widgets/graphicsview/qgraphicsview_p.h | 2 +- src/widgets/graphicsview/qgraphicswidget.cpp | 2 +- src/widgets/graphicsview/qgraphicswidget.h | 2 +- src/widgets/graphicsview/qgraphicswidget_p.cpp | 2 +- src/widgets/graphicsview/qgraphicswidget_p.h | 2 +- src/widgets/graphicsview/qgridlayoutengine.cpp | 2 +- src/widgets/graphicsview/qgridlayoutengine_p.h | 2 +- src/widgets/graphicsview/qsimplex_p.cpp | 2 +- src/widgets/graphicsview/qsimplex_p.h | 2 +- src/widgets/itemviews/qabstractitemdelegate.cpp | 2 +- src/widgets/itemviews/qabstractitemdelegate.h | 2 +- src/widgets/itemviews/qabstractitemview.cpp | 2 +- src/widgets/itemviews/qabstractitemview.h | 2 +- src/widgets/itemviews/qabstractitemview_p.h | 2 +- src/widgets/itemviews/qbsptree.cpp | 2 +- src/widgets/itemviews/qbsptree_p.h | 2 +- src/widgets/itemviews/qcolumnview.cpp | 2 +- src/widgets/itemviews/qcolumnview.h | 2 +- src/widgets/itemviews/qcolumnview_p.h | 2 +- src/widgets/itemviews/qcolumnviewgrip.cpp | 2 +- src/widgets/itemviews/qcolumnviewgrip_p.h | 2 +- src/widgets/itemviews/qdatawidgetmapper.cpp | 2 +- src/widgets/itemviews/qdatawidgetmapper.h | 2 +- src/widgets/itemviews/qdirmodel.cpp | 2 +- src/widgets/itemviews/qdirmodel.h | 2 +- src/widgets/itemviews/qfileiconprovider.cpp | 2 +- src/widgets/itemviews/qfileiconprovider.h | 2 +- src/widgets/itemviews/qheaderview.cpp | 2 +- src/widgets/itemviews/qheaderview.h | 2 +- src/widgets/itemviews/qheaderview_p.h | 2 +- src/widgets/itemviews/qitemdelegate.cpp | 2 +- src/widgets/itemviews/qitemdelegate.h | 2 +- src/widgets/itemviews/qitemeditorfactory.cpp | 2 +- src/widgets/itemviews/qitemeditorfactory.h | 2 +- src/widgets/itemviews/qitemeditorfactory_p.h | 2 +- src/widgets/itemviews/qlistview.cpp | 2 +- src/widgets/itemviews/qlistview.h | 2 +- src/widgets/itemviews/qlistview_p.h | 2 +- src/widgets/itemviews/qlistwidget.cpp | 2 +- src/widgets/itemviews/qlistwidget.h | 2 +- src/widgets/itemviews/qlistwidget_p.h | 2 +- src/widgets/itemviews/qproxymodel.cpp | 2 +- src/widgets/itemviews/qproxymodel.h | 2 +- src/widgets/itemviews/qproxymodel_p.h | 2 +- src/widgets/itemviews/qstandarditemmodel.cpp | 2 +- src/widgets/itemviews/qstandarditemmodel.h | 2 +- src/widgets/itemviews/qstandarditemmodel_p.h | 2 +- src/widgets/itemviews/qstyleditemdelegate.cpp | 2 +- src/widgets/itemviews/qstyleditemdelegate.h | 2 +- src/widgets/itemviews/qtableview.cpp | 2 +- src/widgets/itemviews/qtableview.h | 2 +- src/widgets/itemviews/qtableview_p.h | 2 +- src/widgets/itemviews/qtablewidget.cpp | 2 +- src/widgets/itemviews/qtablewidget.h | 2 +- src/widgets/itemviews/qtablewidget_p.h | 2 +- src/widgets/itemviews/qtreeview.cpp | 2 +- src/widgets/itemviews/qtreeview.h | 2 +- src/widgets/itemviews/qtreeview_p.h | 2 +- src/widgets/itemviews/qtreewidget.cpp | 2 +- src/widgets/itemviews/qtreewidget.h | 2 +- src/widgets/itemviews/qtreewidget_p.h | 2 +- src/widgets/itemviews/qtreewidgetitemiterator.cpp | 2 +- src/widgets/itemviews/qtreewidgetitemiterator.h | 2 +- src/widgets/itemviews/qtreewidgetitemiterator_p.h | 2 +- src/widgets/itemviews/qwidgetitemdata_p.h | 2 +- src/widgets/kernel/qaction.cpp | 2 +- src/widgets/kernel/qaction.h | 2 +- src/widgets/kernel/qaction_p.h | 2 +- src/widgets/kernel/qactiongroup.cpp | 2 +- src/widgets/kernel/qactiongroup.h | 2 +- src/widgets/kernel/qapplication.cpp | 2 +- src/widgets/kernel/qapplication.h | 2 +- src/widgets/kernel/qapplication_p.h | 2 +- src/widgets/kernel/qboxlayout.cpp | 2 +- src/widgets/kernel/qboxlayout.h | 2 +- src/widgets/kernel/qdesktopwidget.cpp | 2 +- src/widgets/kernel/qdesktopwidget.h | 2 +- src/widgets/kernel/qdesktopwidget.qdoc | 2 +- src/widgets/kernel/qdesktopwidget_qpa_p.h | 2 +- src/widgets/kernel/qformlayout.cpp | 2 +- src/widgets/kernel/qformlayout.h | 2 +- src/widgets/kernel/qgesture.cpp | 2 +- src/widgets/kernel/qgesture.h | 2 +- src/widgets/kernel/qgesture_p.h | 2 +- src/widgets/kernel/qgesturemanager.cpp | 2 +- src/widgets/kernel/qgesturemanager_p.h | 2 +- src/widgets/kernel/qgesturerecognizer.cpp | 2 +- src/widgets/kernel/qgesturerecognizer.h | 2 +- src/widgets/kernel/qgridlayout.cpp | 2 +- src/widgets/kernel/qgridlayout.h | 2 +- src/widgets/kernel/qguiplatformplugin.cpp | 2 +- src/widgets/kernel/qguiplatformplugin_p.h | 2 +- src/widgets/kernel/qicon.cpp | 2 +- src/widgets/kernel/qicon.h | 2 +- src/widgets/kernel/qicon_p.h | 2 +- src/widgets/kernel/qiconengine.cpp | 2 +- src/widgets/kernel/qiconengine.h | 2 +- src/widgets/kernel/qiconengineplugin.cpp | 2 +- src/widgets/kernel/qiconengineplugin.h | 2 +- src/widgets/kernel/qiconloader.cpp | 2 +- src/widgets/kernel/qiconloader_p.h | 2 +- src/widgets/kernel/qinputcontext.cpp | 2 +- src/widgets/kernel/qinputcontext.h | 2 +- src/widgets/kernel/qlayout.cpp | 2 +- src/widgets/kernel/qlayout.h | 2 +- src/widgets/kernel/qlayout_p.h | 2 +- src/widgets/kernel/qlayoutengine.cpp | 2 +- src/widgets/kernel/qlayoutengine_p.h | 2 +- src/widgets/kernel/qlayoutitem.cpp | 2 +- src/widgets/kernel/qlayoutitem.h | 2 +- src/widgets/kernel/qplatformdialoghelper_qpa.cpp | 2 +- src/widgets/kernel/qplatformdialoghelper_qpa.h | 2 +- src/widgets/kernel/qplatformmenu_qpa.cpp | 2 +- src/widgets/kernel/qplatformmenu_qpa.h | 2 +- src/widgets/kernel/qshortcut.cpp | 2 +- src/widgets/kernel/qshortcut.h | 2 +- src/widgets/kernel/qsizepolicy.h | 2 +- src/widgets/kernel/qsizepolicy.qdoc | 2 +- src/widgets/kernel/qsoftkeymanager.cpp | 2 +- src/widgets/kernel/qsoftkeymanager_common_p.h | 2 +- src/widgets/kernel/qsoftkeymanager_p.h | 2 +- src/widgets/kernel/qstackedlayout.cpp | 2 +- src/widgets/kernel/qstackedlayout.h | 2 +- src/widgets/kernel/qstandardgestures.cpp | 2 +- src/widgets/kernel/qstandardgestures_p.h | 2 +- src/widgets/kernel/qt_widgets_pch.h | 2 +- src/widgets/kernel/qtooltip.cpp | 2 +- src/widgets/kernel/qtooltip.h | 2 +- src/widgets/kernel/qwhatsthis.cpp | 2 +- src/widgets/kernel/qwhatsthis.h | 2 +- src/widgets/kernel/qwidget.cpp | 2 +- src/widgets/kernel/qwidget.h | 2 +- src/widgets/kernel/qwidget_p.h | 2 +- src/widgets/kernel/qwidgetaction.cpp | 2 +- src/widgets/kernel/qwidgetaction.h | 2 +- src/widgets/kernel/qwidgetaction_p.h | 2 +- src/widgets/kernel/qwidgetbackingstore.cpp | 2 +- src/widgets/kernel/qwidgetbackingstore_p.h | 2 +- src/widgets/kernel/qwidgetsvariant.cpp | 2 +- src/widgets/kernel/qwidgetwindow_qpa.cpp | 2 +- src/widgets/kernel/qwidgetwindow_qpa_p.h | 2 +- src/widgets/platforms/mac/qapplication_mac.mm | 2 +- src/widgets/platforms/mac/qclipboard_mac.cpp | 2 +- src/widgets/platforms/mac/qcocoaintrospection_mac.mm | 2 +- src/widgets/platforms/mac/qcocoaintrospection_p.h | 2 +- src/widgets/platforms/mac/qcocoapanel_mac.mm | 2 +- src/widgets/platforms/mac/qcocoapanel_mac_p.h | 2 +- src/widgets/platforms/mac/qcocoasharedwindowmethods_mac_p.h | 2 +- src/widgets/platforms/mac/qcocoaview_mac.mm | 2 +- src/widgets/platforms/mac/qcocoaview_mac_p.h | 2 +- src/widgets/platforms/mac/qcocoawindow_mac.mm | 2 +- src/widgets/platforms/mac/qcocoawindow_mac_p.h | 2 +- src/widgets/platforms/mac/qcocoawindowcustomthemeframe_mac.mm | 2 +- src/widgets/platforms/mac/qcocoawindowcustomthemeframe_mac_p.h | 2 +- src/widgets/platforms/mac/qcocoawindowdelegate_mac.mm | 2 +- src/widgets/platforms/mac/qcocoawindowdelegate_mac_p.h | 2 +- src/widgets/platforms/mac/qcolormap_mac.cpp | 2 +- src/widgets/platforms/mac/qdesktopwidget_mac.mm | 2 +- src/widgets/platforms/mac/qdesktopwidget_mac_p.h | 2 +- src/widgets/platforms/mac/qdnd_mac.mm | 2 +- src/widgets/platforms/mac/qeventdispatcher_mac.mm | 2 +- src/widgets/platforms/mac/qeventdispatcher_mac_p.h | 2 +- src/widgets/platforms/mac/qkeymapper_mac.cpp | 2 +- src/widgets/platforms/mac/qmacdefines_mac.h | 2 +- src/widgets/platforms/mac/qmacgesturerecognizer_mac.mm | 2 +- src/widgets/platforms/mac/qmacgesturerecognizer_mac_p.h | 2 +- src/widgets/platforms/mac/qmacinputcontext_mac.cpp | 2 +- src/widgets/platforms/mac/qmacinputcontext_p.h | 2 +- src/widgets/platforms/mac/qmime_mac.cpp | 2 +- src/widgets/platforms/mac/qnsframeview_mac_p.h | 2 +- src/widgets/platforms/mac/qnsthemeframe_mac_p.h | 2 +- src/widgets/platforms/mac/qnstitledframe_mac_p.h | 2 +- src/widgets/platforms/mac/qpaintdevice_mac.cpp | 2 +- src/widgets/platforms/mac/qpaintengine_mac.cpp | 2 +- src/widgets/platforms/mac/qpaintengine_mac_p.h | 2 +- src/widgets/platforms/mac/qpixmap_mac.cpp | 2 +- src/widgets/platforms/mac/qpixmap_mac_p.h | 2 +- src/widgets/platforms/mac/qprintengine_mac.mm | 2 +- src/widgets/platforms/mac/qprintengine_mac_p.h | 2 +- src/widgets/platforms/mac/qprinterinfo_mac.cpp | 2 +- src/widgets/platforms/mac/qregion_mac.cpp | 2 +- src/widgets/platforms/mac/qt_cocoa_helpers_mac.mm | 2 +- src/widgets/platforms/mac/qt_cocoa_helpers_mac_p.h | 2 +- src/widgets/platforms/mac/qt_mac.cpp | 2 +- src/widgets/platforms/mac/qt_mac_p.h | 2 +- src/widgets/platforms/mac/qwidget_mac.mm | 2 +- src/widgets/statemachine/qbasickeyeventtransition.cpp | 2 +- src/widgets/statemachine/qbasickeyeventtransition_p.h | 2 +- src/widgets/statemachine/qbasicmouseeventtransition.cpp | 2 +- src/widgets/statemachine/qbasicmouseeventtransition_p.h | 2 +- src/widgets/statemachine/qguistatemachine.cpp | 2 +- src/widgets/statemachine/qkeyeventtransition.cpp | 2 +- src/widgets/statemachine/qkeyeventtransition.h | 2 +- src/widgets/statemachine/qmouseeventtransition.cpp | 2 +- src/widgets/statemachine/qmouseeventtransition.h | 2 +- src/widgets/styles/qcdestyle.cpp | 2 +- src/widgets/styles/qcdestyle.h | 2 +- src/widgets/styles/qcleanlooksstyle.cpp | 2 +- src/widgets/styles/qcleanlooksstyle.h | 2 +- src/widgets/styles/qcleanlooksstyle_p.h | 2 +- src/widgets/styles/qcommonstyle.cpp | 2 +- src/widgets/styles/qcommonstyle.h | 2 +- src/widgets/styles/qcommonstyle_p.h | 2 +- src/widgets/styles/qcommonstylepixmaps_p.h | 2 +- src/widgets/styles/qdrawutil.cpp | 2 +- src/widgets/styles/qdrawutil.h | 2 +- src/widgets/styles/qgtkpainter.cpp | 2 +- src/widgets/styles/qgtkpainter_p.h | 2 +- src/widgets/styles/qgtkstyle.cpp | 2 +- src/widgets/styles/qgtkstyle.h | 2 +- src/widgets/styles/qgtkstyle_p.cpp | 2 +- src/widgets/styles/qgtkstyle_p.h | 2 +- src/widgets/styles/qmacstyle.qdoc | 2 +- src/widgets/styles/qmacstyle_mac.h | 2 +- src/widgets/styles/qmacstyle_mac.mm | 2 +- src/widgets/styles/qmacstyle_mac_p.h | 2 +- src/widgets/styles/qmacstylepixmaps_mac_p.h | 2 +- src/widgets/styles/qmotifstyle.cpp | 2 +- src/widgets/styles/qmotifstyle.h | 2 +- src/widgets/styles/qmotifstyle_p.h | 2 +- src/widgets/styles/qplastiquestyle.cpp | 2 +- src/widgets/styles/qplastiquestyle.h | 2 +- src/widgets/styles/qproxystyle.cpp | 2 +- src/widgets/styles/qproxystyle.h | 2 +- src/widgets/styles/qproxystyle_p.h | 2 +- src/widgets/styles/qstyle.cpp | 2 +- src/widgets/styles/qstyle.h | 2 +- src/widgets/styles/qstyle_p.h | 2 +- src/widgets/styles/qstylefactory.cpp | 2 +- src/widgets/styles/qstylefactory.h | 2 +- src/widgets/styles/qstylehelper.cpp | 2 +- src/widgets/styles/qstylehelper_p.h | 2 +- src/widgets/styles/qstyleoption.cpp | 2 +- src/widgets/styles/qstyleoption.h | 2 +- src/widgets/styles/qstylepainter.cpp | 2 +- src/widgets/styles/qstylepainter.h | 2 +- src/widgets/styles/qstyleplugin.cpp | 2 +- src/widgets/styles/qstyleplugin.h | 2 +- src/widgets/styles/qstylesheetstyle.cpp | 2 +- src/widgets/styles/qstylesheetstyle_default.cpp | 2 +- src/widgets/styles/qstylesheetstyle_p.h | 2 +- src/widgets/styles/qwindowscestyle.cpp | 2 +- src/widgets/styles/qwindowscestyle.h | 2 +- src/widgets/styles/qwindowscestyle_p.h | 2 +- src/widgets/styles/qwindowsmobilestyle.cpp | 2 +- src/widgets/styles/qwindowsmobilestyle.h | 2 +- src/widgets/styles/qwindowsmobilestyle_p.h | 2 +- src/widgets/styles/qwindowsstyle.cpp | 2 +- src/widgets/styles/qwindowsstyle.h | 2 +- src/widgets/styles/qwindowsstyle_p.h | 2 +- src/widgets/styles/qwindowsvistastyle.cpp | 2 +- src/widgets/styles/qwindowsvistastyle.h | 2 +- src/widgets/styles/qwindowsvistastyle_p.h | 2 +- src/widgets/styles/qwindowsxpstyle.cpp | 2 +- src/widgets/styles/qwindowsxpstyle.h | 2 +- src/widgets/styles/qwindowsxpstyle_p.h | 2 +- src/widgets/util/qcolormap.h | 2 +- src/widgets/util/qcolormap.qdoc | 2 +- src/widgets/util/qcompleter.cpp | 2 +- src/widgets/util/qcompleter.h | 2 +- src/widgets/util/qcompleter_p.h | 2 +- src/widgets/util/qflickgesture.cpp | 2 +- src/widgets/util/qflickgesture_p.h | 2 +- src/widgets/util/qscroller.cpp | 2 +- src/widgets/util/qscroller.h | 2 +- src/widgets/util/qscroller_mac.mm | 2 +- src/widgets/util/qscroller_p.h | 2 +- src/widgets/util/qscrollerproperties.cpp | 2 +- src/widgets/util/qscrollerproperties.h | 2 +- src/widgets/util/qscrollerproperties_p.h | 2 +- src/widgets/util/qsystemtrayicon.cpp | 2 +- src/widgets/util/qsystemtrayicon.h | 2 +- src/widgets/util/qsystemtrayicon_mac.mm | 2 +- src/widgets/util/qsystemtrayicon_p.h | 2 +- src/widgets/util/qsystemtrayicon_qpa.cpp | 2 +- src/widgets/util/qsystemtrayicon_win.cpp | 2 +- src/widgets/util/qsystemtrayicon_wince.cpp | 2 +- src/widgets/util/qsystemtrayicon_x11.cpp | 2 +- src/widgets/util/qundogroup.cpp | 2 +- src/widgets/util/qundogroup.h | 2 +- src/widgets/util/qundostack.cpp | 2 +- src/widgets/util/qundostack.h | 2 +- src/widgets/util/qundostack_p.h | 2 +- src/widgets/util/qundoview.cpp | 2 +- src/widgets/util/qundoview.h | 2 +- src/widgets/widgets/qabstractbutton.cpp | 2 +- src/widgets/widgets/qabstractbutton.h | 2 +- src/widgets/widgets/qabstractbutton_p.h | 2 +- src/widgets/widgets/qabstractscrollarea.cpp | 2 +- src/widgets/widgets/qabstractscrollarea.h | 2 +- src/widgets/widgets/qabstractscrollarea_p.h | 2 +- src/widgets/widgets/qabstractslider.cpp | 2 +- src/widgets/widgets/qabstractslider.h | 2 +- src/widgets/widgets/qabstractslider_p.h | 2 +- src/widgets/widgets/qabstractspinbox.cpp | 2 +- src/widgets/widgets/qabstractspinbox.h | 2 +- src/widgets/widgets/qabstractspinbox_p.h | 2 +- src/widgets/widgets/qbuttongroup.cpp | 2 +- src/widgets/widgets/qbuttongroup.h | 2 +- src/widgets/widgets/qcalendartextnavigator_p.h | 2 +- src/widgets/widgets/qcalendarwidget.cpp | 2 +- src/widgets/widgets/qcalendarwidget.h | 2 +- src/widgets/widgets/qcheckbox.cpp | 2 +- src/widgets/widgets/qcheckbox.h | 2 +- src/widgets/widgets/qcocoatoolbardelegate_mac.mm | 2 +- src/widgets/widgets/qcocoatoolbardelegate_mac_p.h | 2 +- src/widgets/widgets/qcombobox.cpp | 2 +- src/widgets/widgets/qcombobox.h | 2 +- src/widgets/widgets/qcombobox_p.h | 2 +- src/widgets/widgets/qcommandlinkbutton.cpp | 2 +- src/widgets/widgets/qcommandlinkbutton.h | 2 +- src/widgets/widgets/qdatetimeedit.cpp | 2 +- src/widgets/widgets/qdatetimeedit.h | 2 +- src/widgets/widgets/qdatetimeedit_p.h | 2 +- src/widgets/widgets/qdial.cpp | 2 +- src/widgets/widgets/qdial.h | 2 +- src/widgets/widgets/qdialogbuttonbox.cpp | 2 +- src/widgets/widgets/qdialogbuttonbox.h | 2 +- src/widgets/widgets/qdockarealayout.cpp | 2 +- src/widgets/widgets/qdockarealayout_p.h | 2 +- src/widgets/widgets/qdockwidget.cpp | 2 +- src/widgets/widgets/qdockwidget.h | 2 +- src/widgets/widgets/qdockwidget_p.h | 2 +- src/widgets/widgets/qeffects.cpp | 2 +- src/widgets/widgets/qeffects_p.h | 2 +- src/widgets/widgets/qfocusframe.cpp | 2 +- src/widgets/widgets/qfocusframe.h | 2 +- src/widgets/widgets/qfontcombobox.cpp | 2 +- src/widgets/widgets/qfontcombobox.h | 2 +- src/widgets/widgets/qframe.cpp | 2 +- src/widgets/widgets/qframe.h | 2 +- src/widgets/widgets/qframe_p.h | 2 +- src/widgets/widgets/qgroupbox.cpp | 2 +- src/widgets/widgets/qgroupbox.h | 2 +- src/widgets/widgets/qlabel.cpp | 2 +- src/widgets/widgets/qlabel.h | 2 +- src/widgets/widgets/qlabel_p.h | 2 +- src/widgets/widgets/qlcdnumber.cpp | 2 +- src/widgets/widgets/qlcdnumber.h | 2 +- src/widgets/widgets/qlineedit.cpp | 2 +- src/widgets/widgets/qlineedit.h | 2 +- src/widgets/widgets/qlineedit_p.cpp | 2 +- src/widgets/widgets/qlineedit_p.h | 2 +- src/widgets/widgets/qmaccocoaviewcontainer_mac.h | 2 +- src/widgets/widgets/qmaccocoaviewcontainer_mac.mm | 2 +- src/widgets/widgets/qmacnativewidget_mac.h | 2 +- src/widgets/widgets/qmacnativewidget_mac.mm | 2 +- src/widgets/widgets/qmainwindow.cpp | 2 +- src/widgets/widgets/qmainwindow.h | 2 +- src/widgets/widgets/qmainwindowlayout.cpp | 2 +- src/widgets/widgets/qmainwindowlayout_mac.mm | 2 +- src/widgets/widgets/qmainwindowlayout_p.h | 2 +- src/widgets/widgets/qmdiarea.cpp | 2 +- src/widgets/widgets/qmdiarea.h | 2 +- src/widgets/widgets/qmdiarea_p.h | 2 +- src/widgets/widgets/qmdisubwindow.cpp | 2 +- src/widgets/widgets/qmdisubwindow.h | 2 +- src/widgets/widgets/qmdisubwindow_p.h | 2 +- src/widgets/widgets/qmenu.cpp | 2 +- src/widgets/widgets/qmenu.h | 2 +- src/widgets/widgets/qmenu_p.h | 2 +- src/widgets/widgets/qmenu_wince.cpp | 2 +- src/widgets/widgets/qmenu_wince_resource_p.h | 2 +- src/widgets/widgets/qmenubar.cpp | 2 +- src/widgets/widgets/qmenubar.h | 2 +- src/widgets/widgets/qmenubar_p.h | 2 +- src/widgets/widgets/qplaintextedit.cpp | 2 +- src/widgets/widgets/qplaintextedit.h | 2 +- src/widgets/widgets/qplaintextedit_p.h | 2 +- src/widgets/widgets/qprogressbar.cpp | 2 +- src/widgets/widgets/qprogressbar.h | 2 +- src/widgets/widgets/qpushbutton.cpp | 2 +- src/widgets/widgets/qpushbutton.h | 2 +- src/widgets/widgets/qpushbutton_p.h | 2 +- src/widgets/widgets/qradiobutton.cpp | 2 +- src/widgets/widgets/qradiobutton.h | 2 +- src/widgets/widgets/qrubberband.cpp | 2 +- src/widgets/widgets/qrubberband.h | 2 +- src/widgets/widgets/qscrollarea.cpp | 2 +- src/widgets/widgets/qscrollarea.h | 2 +- src/widgets/widgets/qscrollarea_p.h | 2 +- src/widgets/widgets/qscrollbar.cpp | 2 +- src/widgets/widgets/qscrollbar.h | 2 +- src/widgets/widgets/qsizegrip.cpp | 2 +- src/widgets/widgets/qsizegrip.h | 2 +- src/widgets/widgets/qslider.cpp | 2 +- src/widgets/widgets/qslider.h | 2 +- src/widgets/widgets/qspinbox.cpp | 2 +- src/widgets/widgets/qspinbox.h | 2 +- src/widgets/widgets/qsplashscreen.cpp | 2 +- src/widgets/widgets/qsplashscreen.h | 2 +- src/widgets/widgets/qsplitter.cpp | 2 +- src/widgets/widgets/qsplitter.h | 2 +- src/widgets/widgets/qsplitter_p.h | 2 +- src/widgets/widgets/qstackedwidget.cpp | 2 +- src/widgets/widgets/qstackedwidget.h | 2 +- src/widgets/widgets/qstatusbar.cpp | 2 +- src/widgets/widgets/qstatusbar.h | 2 +- src/widgets/widgets/qtabbar.cpp | 2 +- src/widgets/widgets/qtabbar.h | 2 +- src/widgets/widgets/qtabbar_p.h | 2 +- src/widgets/widgets/qtabwidget.cpp | 2 +- src/widgets/widgets/qtabwidget.h | 2 +- src/widgets/widgets/qtextbrowser.cpp | 2 +- src/widgets/widgets/qtextbrowser.h | 2 +- src/widgets/widgets/qtextedit.cpp | 2 +- src/widgets/widgets/qtextedit.h | 2 +- src/widgets/widgets/qtextedit_p.h | 2 +- src/widgets/widgets/qtoolbar.cpp | 2 +- src/widgets/widgets/qtoolbar.h | 2 +- src/widgets/widgets/qtoolbar_p.h | 2 +- src/widgets/widgets/qtoolbararealayout.cpp | 2 +- src/widgets/widgets/qtoolbararealayout_p.h | 2 +- src/widgets/widgets/qtoolbarextension.cpp | 2 +- src/widgets/widgets/qtoolbarextension_p.h | 2 +- src/widgets/widgets/qtoolbarlayout.cpp | 2 +- src/widgets/widgets/qtoolbarlayout_p.h | 2 +- src/widgets/widgets/qtoolbarseparator.cpp | 2 +- src/widgets/widgets/qtoolbarseparator_p.h | 2 +- src/widgets/widgets/qtoolbox.cpp | 2 +- src/widgets/widgets/qtoolbox.h | 2 +- src/widgets/widgets/qtoolbutton.cpp | 2 +- src/widgets/widgets/qtoolbutton.h | 2 +- src/widgets/widgets/qwidgetanimator.cpp | 2 +- src/widgets/widgets/qwidgetanimator_p.h | 2 +- src/widgets/widgets/qwidgetlinecontrol.cpp | 2 +- src/widgets/widgets/qwidgetlinecontrol_p.h | 2 +- src/widgets/widgets/qwidgetresizehandler.cpp | 2 +- src/widgets/widgets/qwidgetresizehandler_p.h | 2 +- src/widgets/widgets/qwidgettextcontrol.cpp | 2 +- src/widgets/widgets/qwidgettextcontrol_p.h | 2 +- src/widgets/widgets/qwidgettextcontrol_p_p.h | 2 +- src/widgets/widgets/qworkspace.cpp | 2 +- src/widgets/widgets/qworkspace.h | 2 +- src/winmain/qtmain_win.cpp | 2 +- src/xml/dom/qdom.cpp | 2 +- src/xml/dom/qdom.h | 2 +- src/xml/sax/qxml.cpp | 2 +- src/xml/sax/qxml.h | 2 +- tests/auto/compilerwarnings/data/test_cpp.txt | 2 +- .../corelib/animation/qabstractanimation/tst_qabstractanimation.cpp | 2 +- .../auto/corelib/animation/qanimationgroup/tst_qanimationgroup.cpp | 2 +- .../qparallelanimationgroup/tst_qparallelanimationgroup.cpp | 2 +- .../auto/corelib/animation/qpauseanimation/tst_qpauseanimation.cpp | 2 +- .../corelib/animation/qpropertyanimation/tst_qpropertyanimation.cpp | 2 +- .../qsequentialanimationgroup/tst_qsequentialanimationgroup.cpp | 2 +- .../corelib/animation/qvariantanimation/tst_qvariantanimation.cpp | 2 +- tests/auto/corelib/codecs/qtextcodec/echo/main.cpp | 2 +- tests/auto/corelib/codecs/qtextcodec/tst_qtextcodec.cpp | 2 +- tests/auto/corelib/codecs/utf8/tst_utf8.cpp | 2 +- tests/auto/corelib/concurrent/qfuture/tst_qfuture.cpp | 2 +- .../concurrent/qfuturesynchronizer/tst_qfuturesynchronizer.cpp | 2 +- tests/auto/corelib/concurrent/qfuturewatcher/tst_qfuturewatcher.cpp | 2 +- .../concurrent/qtconcurrentfilter/tst_qtconcurrentfilter.cpp | 2 +- .../qtconcurrentiteratekernel/tst_qtconcurrentiteratekernel.cpp | 2 +- tests/auto/corelib/concurrent/qtconcurrentmap/functions.h | 2 +- .../auto/corelib/concurrent/qtconcurrentmap/tst_qtconcurrentmap.cpp | 2 +- .../qtconcurrentresultstore/tst_qtconcurrentresultstore.cpp | 2 +- .../auto/corelib/concurrent/qtconcurrentrun/tst_qtconcurrentrun.cpp | 2 +- .../qtconcurrentthreadengine/tst_qtconcurrentthreadengine.cpp | 2 +- tests/auto/corelib/concurrent/qthreadpool/tst_qthreadpool.cpp | 2 +- tests/auto/corelib/global/q_func_info/tst_q_func_info.cpp | 2 +- tests/auto/corelib/global/qflags/tst_qflags.cpp | 2 +- tests/auto/corelib/global/qgetputenv/tst_qgetputenv.cpp | 2 +- tests/auto/corelib/global/qglobal/tst_qglobal.cpp | 2 +- tests/auto/corelib/global/qnumeric/tst_qnumeric.cpp | 2 +- tests/auto/corelib/global/qrand/tst_qrand.cpp | 2 +- .../auto/corelib/io/qabstractfileengine/tst_qabstractfileengine.cpp | 2 +- tests/auto/corelib/io/qbuffer/tst_qbuffer.cpp | 2 +- tests/auto/corelib/io/qdatastream/tst_qdatastream.cpp | 2 +- tests/auto/corelib/io/qdebug/tst_qdebug.cpp | 2 +- tests/auto/corelib/io/qdir/testdir/dir/qrc_qdir.cpp | 2 +- tests/auto/corelib/io/qdir/testdir/dir/tst_qdir.cpp | 2 +- tests/auto/corelib/io/qdir/tst_qdir.cpp | 2 +- tests/auto/corelib/io/qdiriterator/tst_qdiriterator.cpp | 2 +- tests/auto/corelib/io/qfile/largefile/tst_largefile.cpp | 2 +- tests/auto/corelib/io/qfile/stdinprocess/main.cpp | 2 +- tests/auto/corelib/io/qfile/tst_qfile.cpp | 2 +- tests/auto/corelib/io/qfileinfo/tst_qfileinfo.cpp | 2 +- tests/auto/corelib/io/qfilesystementry/tst_qfilesystementry.cpp | 2 +- tests/auto/corelib/io/qfilesystemwatcher/tst_qfilesystemwatcher.cpp | 2 +- tests/auto/corelib/io/qiodevice/tst_qiodevice.cpp | 2 +- tests/auto/corelib/io/qprocess/fileWriterProcess/main.cpp | 2 +- tests/auto/corelib/io/qprocess/testDetached/main.cpp | 2 +- tests/auto/corelib/io/qprocess/testExitCodes/main.cpp | 2 +- tests/auto/corelib/io/qprocess/testGuiProcess/main.cpp | 2 +- tests/auto/corelib/io/qprocess/testProcessCrash/main.cpp | 2 +- tests/auto/corelib/io/qprocess/testProcessDeadWhileReading/main.cpp | 2 +- tests/auto/corelib/io/qprocess/testProcessEOF/main.cpp | 2 +- tests/auto/corelib/io/qprocess/testProcessEcho/main.cpp | 2 +- tests/auto/corelib/io/qprocess/testProcessEcho2/main.cpp | 2 +- tests/auto/corelib/io/qprocess/testProcessEcho3/main.cpp | 2 +- tests/auto/corelib/io/qprocess/testProcessEchoGui/main_win.cpp | 2 +- tests/auto/corelib/io/qprocess/testProcessEnvironment/main.cpp | 2 +- tests/auto/corelib/io/qprocess/testProcessLoopback/main.cpp | 2 +- tests/auto/corelib/io/qprocess/testProcessNormal/main.cpp | 2 +- tests/auto/corelib/io/qprocess/testProcessOutput/main.cpp | 2 +- tests/auto/corelib/io/qprocess/testProcessSpacesArgs/main.cpp | 2 +- tests/auto/corelib/io/qprocess/testSetWorkingDirectory/main.cpp | 2 +- tests/auto/corelib/io/qprocess/testSoftExit/main_unix.cpp | 2 +- tests/auto/corelib/io/qprocess/testSoftExit/main_win.cpp | 2 +- tests/auto/corelib/io/qprocess/testSpaceInName/main.cpp | 2 +- tests/auto/corelib/io/qprocess/tst_qprocess.cpp | 2 +- .../auto/corelib/io/qprocessenvironment/tst_qprocessenvironment.cpp | 2 +- tests/auto/corelib/io/qresourceengine/tst_qresourceengine.cpp | 2 +- tests/auto/corelib/io/qsettings/tst_qsettings.cpp | 2 +- tests/auto/corelib/io/qstandardpaths/tst_qstandardpaths.cpp | 2 +- tests/auto/corelib/io/qtemporarydir/tst_qtemporarydir.cpp | 2 +- tests/auto/corelib/io/qtemporaryfile/tst_qtemporaryfile.cpp | 2 +- tests/auto/corelib/io/qtextstream/readAllStdinProcess/main.cpp | 2 +- tests/auto/corelib/io/qtextstream/readLineStdinProcess/main.cpp | 2 +- tests/auto/corelib/io/qtextstream/stdinProcess/main.cpp | 2 +- tests/auto/corelib/io/qtextstream/tst_qtextstream.cpp | 2 +- tests/auto/corelib/io/qurl/idna-test.c | 2 +- tests/auto/corelib/io/qurl/tst_qurl.cpp | 2 +- .../itemmodels/qabstractitemmodel/tst_qabstractitemmodel.cpp | 2 +- .../itemmodels/qabstractproxymodel/tst_qabstractproxymodel.cpp | 2 +- .../itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp | 2 +- .../itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp | 2 +- tests/auto/corelib/itemmodels/qstringlistmodel/qmodellistener.h | 2 +- .../corelib/itemmodels/qstringlistmodel/tst_qstringlistmodel.cpp | 2 +- tests/auto/corelib/kernel/qcoreapplication/tst_qcoreapplication.cpp | 2 +- tests/auto/corelib/kernel/qeventloop/tst_qeventloop.cpp | 2 +- tests/auto/corelib/kernel/qitemmodel/modelstotest.cpp | 2 +- tests/auto/corelib/kernel/qitemmodel/tst_qitemmodel.cpp | 2 +- tests/auto/corelib/kernel/qmath/tst_qmath.cpp | 2 +- tests/auto/corelib/kernel/qmetaobject/tst_qmetaobject.cpp | 2 +- .../corelib/kernel/qmetaobjectbuilder/tst_qmetaobjectbuilder.cpp | 2 +- tests/auto/corelib/kernel/qmetaproperty/tst_qmetaproperty.cpp | 2 +- tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp | 2 +- tests/auto/corelib/kernel/qmimedata/tst_qmimedata.cpp | 2 +- tests/auto/corelib/kernel/qobject/moc_oldnormalizeobject.cpp | 2 +- tests/auto/corelib/kernel/qobject/oldnormalizeobject.h | 2 +- tests/auto/corelib/kernel/qobject/signalbug/signalbug.cpp | 2 +- tests/auto/corelib/kernel/qobject/signalbug/signalbug.h | 2 +- tests/auto/corelib/kernel/qobject/tst_qobject.cpp | 2 +- tests/auto/corelib/kernel/qpointer/tst_qpointer.cpp | 2 +- tests/auto/corelib/kernel/qsignalmapper/tst_qsignalmapper.cpp | 2 +- tests/auto/corelib/kernel/qsocketnotifier/tst_qsocketnotifier.cpp | 2 +- tests/auto/corelib/kernel/qtimer/tst_qtimer.cpp | 2 +- tests/auto/corelib/kernel/qtranslator/tst_qtranslator.cpp | 2 +- tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp | 2 +- .../auto/corelib/kernel/qwineventnotifier/tst_qwineventnotifier.cpp | 2 +- tests/auto/corelib/plugin/qlibrary/lib/mylib.c | 2 +- tests/auto/corelib/plugin/qlibrary/lib2/mylib.c | 2 +- tests/auto/corelib/plugin/qlibrary/tst_qlibrary.cpp | 2 +- tests/auto/corelib/plugin/qplugin/debugplugin/main.cpp | 2 +- tests/auto/corelib/plugin/qplugin/releaseplugin/main.cpp | 2 +- tests/auto/corelib/plugin/qplugin/tst_qplugin.cpp | 2 +- .../auto/corelib/plugin/qpluginloader/almostplugin/almostplugin.cpp | 2 +- tests/auto/corelib/plugin/qpluginloader/almostplugin/almostplugin.h | 2 +- tests/auto/corelib/plugin/qpluginloader/lib/mylib.c | 2 +- tests/auto/corelib/plugin/qpluginloader/theplugin/plugininterface.h | 2 +- tests/auto/corelib/plugin/qpluginloader/theplugin/theplugin.cpp | 2 +- tests/auto/corelib/plugin/qpluginloader/theplugin/theplugin.h | 2 +- tests/auto/corelib/plugin/qpluginloader/tst_qpluginloader.cpp | 2 +- tests/auto/corelib/plugin/quuid/testProcessUniqueness/main.cpp | 2 +- tests/auto/corelib/plugin/quuid/tst_quuid.cpp | 2 +- tests/auto/corelib/statemachine/qstate/tst_qstate.cpp | 2 +- tests/auto/corelib/statemachine/qstatemachine/tst_qstatemachine.cpp | 2 +- tests/auto/corelib/thread/qatomicint/tst_qatomicint.cpp | 2 +- tests/auto/corelib/thread/qatomicpointer/tst_qatomicpointer.cpp | 2 +- tests/auto/corelib/thread/qmutex/tst_qmutex.cpp | 2 +- tests/auto/corelib/thread/qmutexlocker/tst_qmutexlocker.cpp | 2 +- tests/auto/corelib/thread/qreadlocker/tst_qreadlocker.cpp | 2 +- tests/auto/corelib/thread/qreadwritelock/tst_qreadwritelock.cpp | 2 +- tests/auto/corelib/thread/qsemaphore/tst_qsemaphore.cpp | 2 +- tests/auto/corelib/thread/qthread/tst_qthread.cpp | 2 +- tests/auto/corelib/thread/qthreadonce/qthreadonce.cpp | 2 +- tests/auto/corelib/thread/qthreadonce/qthreadonce.h | 2 +- tests/auto/corelib/thread/qthreadonce/tst_qthreadonce.cpp | 2 +- tests/auto/corelib/thread/qthreadstorage/crashOnExit.cpp | 2 +- tests/auto/corelib/thread/qthreadstorage/tst_qthreadstorage.cpp | 2 +- tests/auto/corelib/thread/qwaitcondition/tst_qwaitcondition.cpp | 2 +- tests/auto/corelib/thread/qwritelocker/tst_qwritelocker.cpp | 2 +- tests/auto/corelib/tools/qalgorithms/tst_qalgorithms.cpp | 2 +- tests/auto/corelib/tools/qbitarray/tst_qbitarray.cpp | 2 +- tests/auto/corelib/tools/qbytearray/tst_qbytearray.cpp | 2 +- .../auto/corelib/tools/qbytearraymatcher/tst_qbytearraymatcher.cpp | 2 +- tests/auto/corelib/tools/qcache/tst_qcache.cpp | 2 +- tests/auto/corelib/tools/qchar/tst_qchar.cpp | 2 +- tests/auto/corelib/tools/qcontiguouscache/tst_qcontiguouscache.cpp | 2 +- .../corelib/tools/qcryptographichash/tst_qcryptographichash.cpp | 2 +- tests/auto/corelib/tools/qdate/tst_qdate.cpp | 2 +- tests/auto/corelib/tools/qdatetime/tst_qdatetime.cpp | 2 +- tests/auto/corelib/tools/qeasingcurve/tst_qeasingcurve.cpp | 2 +- tests/auto/corelib/tools/qelapsedtimer/tst_qelapsedtimer.cpp | 2 +- .../tst_qexplicitlyshareddatapointer.cpp | 2 +- tests/auto/corelib/tools/qfreelist/tst_qfreelist.cpp | 2 +- tests/auto/corelib/tools/qhash/tst_qhash.cpp | 2 +- tests/auto/corelib/tools/qline/tst_qline.cpp | 2 +- tests/auto/corelib/tools/qlist/tst_qlist.cpp | 2 +- tests/auto/corelib/tools/qlocale/syslocaleapp/syslocaleapp.cpp | 2 +- tests/auto/corelib/tools/qlocale/tst_qlocale.cpp | 2 +- tests/auto/corelib/tools/qmap/tst_qmap.cpp | 2 +- tests/auto/corelib/tools/qmargins/tst_qmargins.cpp | 2 +- tests/auto/corelib/tools/qpoint/tst_qpoint.cpp | 2 +- tests/auto/corelib/tools/qqueue/tst_qqueue.cpp | 2 +- tests/auto/corelib/tools/qrect/tst_qrect.cpp | 2 +- tests/auto/corelib/tools/qregexp/tst_qregexp.cpp | 2 +- tests/auto/corelib/tools/qringbuffer/tst_qringbuffer.cpp | 2 +- tests/auto/corelib/tools/qscopedpointer/tst_qscopedpointer.cpp | 2 +- .../corelib/tools/qscopedvaluerollback/tst_qscopedvaluerollback.cpp | 2 +- tests/auto/corelib/tools/qset/tst_qset.cpp | 2 +- tests/auto/corelib/tools/qsharedpointer/externaltests.cpp | 2 +- tests/auto/corelib/tools/qsharedpointer/externaltests.h | 2 +- tests/auto/corelib/tools/qsharedpointer/forwarddeclaration.cpp | 2 +- tests/auto/corelib/tools/qsharedpointer/forwarddeclared.cpp | 2 +- tests/auto/corelib/tools/qsharedpointer/forwarddeclared.h | 2 +- tests/auto/corelib/tools/qsharedpointer/tst_qsharedpointer.cpp | 2 +- tests/auto/corelib/tools/qsharedpointer/wrapper.cpp | 2 +- tests/auto/corelib/tools/qsharedpointer/wrapper.h | 2 +- tests/auto/corelib/tools/qsize/tst_qsize.cpp | 2 +- tests/auto/corelib/tools/qsizef/tst_qsizef.cpp | 2 +- tests/auto/corelib/tools/qstl/tst_qstl.cpp | 2 +- tests/auto/corelib/tools/qstring/double_data.h | 2 +- tests/auto/corelib/tools/qstring/tst_qstring.cpp | 2 +- .../corelib/tools/qstringbuilder/qstringbuilder1/stringbuilder.cpp | 2 +- .../tools/qstringbuilder/qstringbuilder1/tst_qstringbuilder1.cpp | 2 +- .../tools/qstringbuilder/qstringbuilder2/tst_qstringbuilder2.cpp | 2 +- .../tools/qstringbuilder/qstringbuilder3/tst_qstringbuilder3.cpp | 2 +- .../tools/qstringbuilder/qstringbuilder4/tst_qstringbuilder4.cpp | 2 +- tests/auto/corelib/tools/qstringlist/tst_qstringlist.cpp | 2 +- tests/auto/corelib/tools/qstringmatcher/tst_qstringmatcher.cpp | 2 +- tests/auto/corelib/tools/qstringref/tst_qstringref.cpp | 2 +- .../corelib/tools/qtextboundaryfinder/tst_qtextboundaryfinder.cpp | 2 +- tests/auto/corelib/tools/qtime/tst_qtime.cpp | 2 +- tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp | 2 +- tests/auto/corelib/tools/qvarlengtharray/tst_qvarlengtharray.cpp | 2 +- tests/auto/corelib/tools/qvector/tst_qvector.cpp | 2 +- tests/auto/corelib/xml/qxmlstream/qc14n.h | 2 +- tests/auto/corelib/xml/qxmlstream/setupSuite.sh | 2 +- tests/auto/corelib/xml/qxmlstream/tst_qxmlstream.cpp | 2 +- tests/auto/dbus/qdbusabstractadaptor/myobject.h | 2 +- tests/auto/dbus/qdbusabstractadaptor/qmyserver/qmyserver.cpp | 2 +- tests/auto/dbus/qdbusabstractadaptor/tst_qdbusabstractadaptor.cpp | 2 +- tests/auto/dbus/qdbusabstractinterface/interface.cpp | 2 +- tests/auto/dbus/qdbusabstractinterface/interface.h | 2 +- tests/auto/dbus/qdbusabstractinterface/pinger.cpp | 4 ++-- tests/auto/dbus/qdbusabstractinterface/pinger.h | 4 ++-- tests/auto/dbus/qdbusabstractinterface/qpinger/qpinger.cpp | 2 +- .../auto/dbus/qdbusabstractinterface/tst_qdbusabstractinterface.cpp | 2 +- tests/auto/dbus/qdbusconnection/tst_qdbusconnection.cpp | 2 +- .../auto/dbus/qdbusconnection_no_bus/tst_qdbusconnection_no_bus.cpp | 2 +- tests/auto/dbus/qdbuscontext/tst_qdbuscontext.cpp | 2 +- tests/auto/dbus/qdbusinterface/myobject.h | 2 +- tests/auto/dbus/qdbusinterface/qmyserver/qmyserver.cpp | 2 +- tests/auto/dbus/qdbusinterface/tst_qdbusinterface.cpp | 2 +- tests/auto/dbus/qdbuslocalcalls/tst_qdbuslocalcalls.cpp | 2 +- tests/auto/dbus/qdbusmarshall/common.h | 2 +- tests/auto/dbus/qdbusmarshall/qpong/qpong.cpp | 2 +- tests/auto/dbus/qdbusmarshall/tst_qdbusmarshall.cpp | 2 +- tests/auto/dbus/qdbusmetaobject/tst_qdbusmetaobject.cpp | 2 +- tests/auto/dbus/qdbusmetatype/tst_qdbusmetatype.cpp | 2 +- tests/auto/dbus/qdbuspendingcall/tst_qdbuspendingcall.cpp | 2 +- tests/auto/dbus/qdbuspendingreply/tst_qdbuspendingreply.cpp | 2 +- tests/auto/dbus/qdbusreply/tst_qdbusreply.cpp | 2 +- tests/auto/dbus/qdbusservicewatcher/tst_qdbusservicewatcher.cpp | 2 +- tests/auto/dbus/qdbusthreading/tst_qdbusthreading.cpp | 2 +- tests/auto/dbus/qdbustype/tst_qdbustype.cpp | 2 +- tests/auto/dbus/qdbusxmlparser/tst_qdbusxmlparser.cpp | 2 +- tests/auto/gui/image/qicoimageformat/tst_qicoimageformat.cpp | 2 +- tests/auto/gui/image/qicon/tst_qicon.cpp | 2 +- tests/auto/gui/image/qimage/tst_qimage.cpp | 2 +- tests/auto/gui/image/qimageiohandler/tst_qimageiohandler.cpp | 2 +- tests/auto/gui/image/qimagereader/tst_qimagereader.cpp | 2 +- tests/auto/gui/image/qimagewriter/tst_qimagewriter.cpp | 2 +- tests/auto/gui/image/qmovie/tst_qmovie.cpp | 2 +- tests/auto/gui/image/qpicture/tst_qpicture.cpp | 2 +- tests/auto/gui/image/qpixmap/tst_qpixmap.cpp | 2 +- tests/auto/gui/image/qpixmapcache/tst_qpixmapcache.cpp | 2 +- tests/auto/gui/image/qpixmapfilter/tst_qpixmapfilter.cpp | 2 +- tests/auto/gui/image/qvolatileimage/tst_qvolatileimage.cpp | 2 +- tests/auto/gui/kernel/qclipboard/copier/main.cpp | 2 +- tests/auto/gui/kernel/qclipboard/paster/main.cpp | 2 +- tests/auto/gui/kernel/qclipboard/tst_qclipboard.cpp | 2 +- tests/auto/gui/kernel/qdrag/tst_qdrag.cpp | 2 +- tests/auto/gui/kernel/qevent/tst_qevent.cpp | 2 +- .../qfileopeneventexternal/qfileopeneventexternal.cpp | 2 +- tests/auto/gui/kernel/qfileopenevent/test/tst_qfileopenevent.cpp | 2 +- tests/auto/gui/kernel/qguimetatype/tst_qguimetatype.cpp | 2 +- tests/auto/gui/kernel/qguivariant/tst_qguivariant.cpp | 2 +- tests/auto/gui/kernel/qinputpanel/tst_qinputpanel.cpp | 2 +- tests/auto/gui/kernel/qkeysequence/tst_qkeysequence.cpp | 2 +- tests/auto/gui/kernel/qmouseevent/tst_qmouseevent.cpp | 2 +- tests/auto/gui/kernel/qmouseevent_modal/tst_qmouseevent_modal.cpp | 2 +- tests/auto/gui/kernel/qpalette/tst_qpalette.cpp | 2 +- tests/auto/gui/kernel/qscreen/tst_qscreen.cpp | 2 +- tests/auto/gui/kernel/qshortcut/tst_qshortcut.cpp | 2 +- tests/auto/gui/kernel/qtouchevent/tst_qtouchevent.cpp | 2 +- tests/auto/gui/kernel/qwindow/tst_qwindow.cpp | 2 +- tests/auto/gui/math3d/qmatrixnxn/tst_qmatrixnxn.cpp | 2 +- tests/auto/gui/math3d/qquaternion/tst_qquaternion.cpp | 2 +- tests/auto/gui/math3d/qvectornd/tst_qvectornd.cpp | 2 +- tests/auto/gui/painting/qbrush/tst_qbrush.cpp | 2 +- tests/auto/gui/painting/qcolor/tst_qcolor.cpp | 2 +- tests/auto/gui/painting/qpaintengine/tst_qpaintengine.cpp | 2 +- tests/auto/gui/painting/qpainter/tst_qpainter.cpp | 2 +- tests/auto/gui/painting/qpainter/utils/createImages/main.cpp | 2 +- tests/auto/gui/painting/qpainterpath/tst_qpainterpath.cpp | 2 +- .../gui/painting/qpainterpathstroker/tst_qpainterpathstroker.cpp | 2 +- tests/auto/gui/painting/qpathclipper/pathcompare.h | 2 +- tests/auto/gui/painting/qpathclipper/paths.cpp | 2 +- tests/auto/gui/painting/qpathclipper/paths.h | 2 +- tests/auto/gui/painting/qpathclipper/tst_qpathclipper.cpp | 2 +- tests/auto/gui/painting/qpen/tst_qpen.cpp | 2 +- tests/auto/gui/painting/qpolygon/tst_qpolygon.cpp | 2 +- tests/auto/gui/painting/qprinter/tst_qprinter.cpp | 2 +- tests/auto/gui/painting/qprinterinfo/tst_qprinterinfo.cpp | 2 +- tests/auto/gui/painting/qregion/tst_qregion.cpp | 2 +- tests/auto/gui/painting/qtransform/tst_qtransform.cpp | 2 +- tests/auto/gui/painting/qwmatrix/tst_qwmatrix.cpp | 2 +- tests/auto/gui/qopengl/tst_qopengl.cpp | 2 +- .../qabstracttextdocumentlayout/tst_qabstracttextdocumentlayout.cpp | 2 +- tests/auto/gui/text/qcssparser/tst_qcssparser.cpp | 2 +- tests/auto/gui/text/qfont/tst_qfont.cpp | 2 +- tests/auto/gui/text/qfontdatabase/tst_qfontdatabase.cpp | 2 +- tests/auto/gui/text/qfontmetrics/tst_qfontmetrics.cpp | 2 +- tests/auto/gui/text/qglyphrun/tst_qglyphrun.cpp | 2 +- tests/auto/gui/text/qrawfont/tst_qrawfont.cpp | 2 +- tests/auto/gui/text/qstatictext/tst_qstatictext.cpp | 2 +- tests/auto/gui/text/qsyntaxhighlighter/tst_qsyntaxhighlighter.cpp | 2 +- tests/auto/gui/text/qtextblock/tst_qtextblock.cpp | 2 +- tests/auto/gui/text/qtextcursor/tst_qtextcursor.cpp | 2 +- tests/auto/gui/text/qtextdocument/common.h | 2 +- tests/auto/gui/text/qtextdocument/tst_qtextdocument.cpp | 2 +- .../gui/text/qtextdocumentfragment/tst_qtextdocumentfragment.cpp | 2 +- tests/auto/gui/text/qtextdocumentlayout/tst_qtextdocumentlayout.cpp | 2 +- tests/auto/gui/text/qtextformat/tst_qtextformat.cpp | 2 +- tests/auto/gui/text/qtextlayout/tst_qtextlayout.cpp | 2 +- tests/auto/gui/text/qtextlist/tst_qtextlist.cpp | 2 +- tests/auto/gui/text/qtextobject/tst_qtextobject.cpp | 2 +- tests/auto/gui/text/qtextodfwriter/tst_qtextodfwriter.cpp | 2 +- tests/auto/gui/text/qtextpiecetable/tst_qtextpiecetable.cpp | 2 +- tests/auto/gui/text/qtextscriptengine/generate/main.cpp | 2 +- tests/auto/gui/text/qtextscriptengine/tst_qtextscriptengine.cpp | 2 +- tests/auto/gui/text/qtexttable/tst_qtexttable.cpp | 2 +- tests/auto/gui/text/qzip/tst_qzip.cpp | 2 +- tests/auto/gui/util/qdesktopservices/tst_qdesktopservices.cpp | 2 +- tests/auto/network-settings.h | 2 +- .../access/qabstractnetworkcache/tst_qabstractnetworkcache.cpp | 2 +- tests/auto/network/access/qftp/tst_qftp.cpp | 2 +- tests/auto/network/access/qhttp/dummyserver.h | 2 +- tests/auto/network/access/qhttp/tst_qhttp.cpp | 2 +- .../access/qhttpnetworkconnection/tst_qhttpnetworkconnection.cpp | 2 +- .../auto/network/access/qhttpnetworkreply/tst_qhttpnetworkreply.cpp | 2 +- .../access/qnetworkaccessmanager/tst_qnetworkaccessmanager.cpp | 2 +- .../access/qnetworkcachemetadata/tst_qnetworkcachemetadata.cpp | 2 +- tests/auto/network/access/qnetworkcookie/tst_qnetworkcookie.cpp | 2 +- .../auto/network/access/qnetworkcookiejar/tst_qnetworkcookiejar.cpp | 2 +- .../auto/network/access/qnetworkdiskcache/tst_qnetworkdiskcache.cpp | 2 +- tests/auto/network/access/qnetworkreply/echo/main.cpp | 2 +- tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp | 2 +- tests/auto/network/access/qnetworkrequest/tst_qnetworkrequest.cpp | 2 +- tests/auto/network/bearer/qbearertestcommon.h | 2 +- .../bearer/qnetworkconfiguration/tst_qnetworkconfiguration.cpp | 2 +- .../tst_qnetworkconfigurationmanager.cpp | 2 +- tests/auto/network/bearer/qnetworksession/lackey/main.cpp | 2 +- .../network/bearer/qnetworksession/test/tst_qnetworksession.cpp | 2 +- tests/auto/network/kernel/qauthenticator/tst_qauthenticator.cpp | 2 +- tests/auto/network/kernel/qhostaddress/tst_qhostaddress.cpp | 2 +- tests/auto/network/kernel/qhostinfo/tst_qhostinfo.cpp | 2 +- .../kernel/qnetworkaddressentry/tst_qnetworkaddressentry.cpp | 2 +- .../auto/network/kernel/qnetworkinterface/tst_qnetworkinterface.cpp | 2 +- tests/auto/network/kernel/qnetworkproxy/tst_qnetworkproxy.cpp | 2 +- .../kernel/qnetworkproxyfactory/tst_qnetworkproxyfactory.cpp | 2 +- .../socket/platformsocketengine/tst_platformsocketengine.cpp | 2 +- tests/auto/network/socket/qabstractsocket/tst_qabstractsocket.cpp | 2 +- .../auto/network/socket/qhttpsocketengine/tst_qhttpsocketengine.cpp | 2 +- tests/auto/network/socket/qlocalsocket/example/client/main.cpp | 2 +- tests/auto/network/socket/qlocalsocket/example/server/main.cpp | 2 +- tests/auto/network/socket/qlocalsocket/lackey/main.cpp | 2 +- tests/auto/network/socket/qlocalsocket/tst_qlocalsocket.cpp | 2 +- .../network/socket/qsocks5socketengine/tst_qsocks5socketengine.cpp | 2 +- tests/auto/network/socket/qtcpserver/crashingServer/main.cpp | 2 +- tests/auto/network/socket/qtcpserver/tst_qtcpserver.cpp | 2 +- tests/auto/network/socket/qtcpsocket/stressTest/Test.cpp | 2 +- tests/auto/network/socket/qtcpsocket/stressTest/Test.h | 2 +- tests/auto/network/socket/qtcpsocket/stressTest/main.cpp | 2 +- tests/auto/network/socket/qtcpsocket/tst_qtcpsocket.cpp | 2 +- tests/auto/network/socket/qudpsocket/clientserver/main.cpp | 2 +- tests/auto/network/socket/qudpsocket/tst_qudpsocket.cpp | 2 +- tests/auto/network/socket/qudpsocket/udpServer/main.cpp | 2 +- .../network/ssl/qsslcertificate/certificates/gencertificates.sh | 2 +- tests/auto/network/ssl/qsslcertificate/tst_qsslcertificate.cpp | 2 +- tests/auto/network/ssl/qsslcipher/tst_qsslcipher.cpp | 2 +- tests/auto/network/ssl/qsslerror/tst_qsslerror.cpp | 2 +- tests/auto/network/ssl/qsslkey/keys/genkeys.sh | 2 +- tests/auto/network/ssl/qsslkey/tst_qsslkey.cpp | 2 +- tests/auto/network/ssl/qsslsocket/tst_qsslsocket.cpp | 2 +- .../tst_qsslsocket_onDemandCertificates_member.cpp | 2 +- .../tst_qsslsocket_onDemandCertificates_static.cpp | 2 +- tests/auto/opengl/qgl/tst_qgl.cpp | 2 +- tests/auto/opengl/qglbuffer/tst_qglbuffer.cpp | 2 +- tests/auto/opengl/qglfunctions/tst_qglfunctions.cpp | 2 +- tests/auto/opengl/qglthreads/tst_qglthreads.cpp | 2 +- tests/auto/opengl/qglthreads/tst_qglthreads.h | 2 +- tests/auto/other/atwrapper/atWrapper.cpp | 2 +- tests/auto/other/atwrapper/atWrapper.h | 2 +- tests/auto/other/atwrapper/atWrapperAutotest.cpp | 2 +- tests/auto/other/baselineexample/tst_baselineexample.cpp | 2 +- tests/auto/other/collections/tst_collections.cpp | 2 +- tests/auto/other/compiler/baseclass.cpp | 2 +- tests/auto/other/compiler/baseclass.h | 2 +- tests/auto/other/compiler/derivedclass.cpp | 2 +- tests/auto/other/compiler/derivedclass.h | 2 +- tests/auto/other/compiler/tst_compiler.cpp | 2 +- tests/auto/other/exceptionsafety/tst_exceptionsafety.cpp | 2 +- tests/auto/other/exceptionsafety_objects/oomsimulator.h | 2 +- .../other/exceptionsafety_objects/tst_exceptionsafety_objects.cpp | 2 +- tests/auto/other/gestures/tst_gestures.cpp | 2 +- tests/auto/other/headersclean/tst_headersclean.cpp | 2 +- tests/auto/other/lancelot/paintcommands.cpp | 2 +- tests/auto/other/lancelot/paintcommands.h | 2 +- tests/auto/other/lancelot/tst_lancelot.cpp | 2 +- tests/auto/other/languagechange/tst_languagechange.cpp | 2 +- tests/auto/other/macgui/guitest.cpp | 2 +- tests/auto/other/macgui/guitest.h | 2 +- tests/auto/other/macgui/tst_macgui.cpp | 2 +- tests/auto/other/macnativeevents/expectedeventlist.cpp | 2 +- tests/auto/other/macnativeevents/expectedeventlist.h | 2 +- tests/auto/other/macnativeevents/nativeeventlist.cpp | 2 +- tests/auto/other/macnativeevents/nativeeventlist.h | 2 +- tests/auto/other/macnativeevents/qnativeevents.cpp | 2 +- tests/auto/other/macnativeevents/qnativeevents.h | 2 +- tests/auto/other/macnativeevents/qnativeevents_mac.cpp | 2 +- tests/auto/other/macnativeevents/tst_macnativeevents.cpp | 2 +- tests/auto/other/macplist/app/main.cpp | 2 +- tests/auto/other/macplist/tst_macplist.cpp | 2 +- tests/auto/other/modeltest/modeltest.cpp | 2 +- tests/auto/other/modeltest/modeltest.h | 2 +- tests/auto/other/modeltest/tst_modeltest.cpp | 2 +- tests/auto/other/networkselftest/tst_networkselftest.cpp | 2 +- tests/auto/other/qaccessibility/tst_qaccessibility.cpp | 2 +- tests/auto/other/qcomplextext/bidireorderstring.h | 2 +- tests/auto/other/qcomplextext/tst_qcomplextext.cpp | 2 +- tests/auto/other/qdirectpainter/runDirectPainter/main.cpp | 2 +- tests/auto/other/qdirectpainter/tst_qdirectpainter.cpp | 2 +- tests/auto/other/qfocusevent/tst_qfocusevent.cpp | 2 +- tests/auto/other/qmultiscreen/tst_qmultiscreen.cpp | 2 +- .../tst_qnetworkaccessmanager_and_qprogressdialog.cpp | 2 +- tests/auto/other/qobjectperformance/tst_qobjectperformance.cpp | 2 +- tests/auto/other/qobjectrace/tst_qobjectrace.cpp | 2 +- .../qsharedpointer_and_qwidget/tst_qsharedpointer_and_qwidget.cpp | 2 +- tests/auto/other/qtokenautomaton/generateTokenizers.sh | 2 +- tests/auto/other/qtokenautomaton/tokenizers/basic/basic.cpp | 2 +- tests/auto/other/qtokenautomaton/tokenizers/basic/basic.h | 2 +- .../qtokenautomaton/tokenizers/basicNamespace/basicNamespace.cpp | 2 +- .../qtokenautomaton/tokenizers/basicNamespace/basicNamespace.h | 2 +- .../other/qtokenautomaton/tokenizers/boilerplate/boilerplate.cpp | 2 +- .../auto/other/qtokenautomaton/tokenizers/boilerplate/boilerplate.h | 2 +- .../other/qtokenautomaton/tokenizers/boilerplate/boilerplate.xml | 2 +- .../other/qtokenautomaton/tokenizers/noNamespace/noNamespace.cpp | 2 +- .../auto/other/qtokenautomaton/tokenizers/noNamespace/noNamespace.h | 2 +- .../auto/other/qtokenautomaton/tokenizers/noToString/noToString.cpp | 2 +- tests/auto/other/qtokenautomaton/tokenizers/noToString/noToString.h | 2 +- .../qtokenautomaton/tokenizers/withNamespace/withNamespace.cpp | 2 +- .../other/qtokenautomaton/tokenizers/withNamespace/withNamespace.h | 2 +- tests/auto/other/qtokenautomaton/tst_qtokenautomaton.cpp | 2 +- tests/auto/other/windowsmobile/test/ddhelper.cpp | 2 +- tests/auto/other/windowsmobile/test/ddhelper.h | 2 +- tests/auto/other/windowsmobile/test/tst_windowsmobile.cpp | 2 +- tests/auto/other/windowsmobile/testQMenuBar/main.cpp | 2 +- tests/auto/platformquirks.h | 2 +- tests/auto/sql/kernel/qsql/tst_qsql.cpp | 2 +- tests/auto/sql/kernel/qsqldatabase/tst_databases.h | 2 +- tests/auto/sql/kernel/qsqldatabase/tst_qsqldatabase.cpp | 2 +- tests/auto/sql/kernel/qsqldriver/tst_qsqldriver.cpp | 2 +- tests/auto/sql/kernel/qsqlerror/tst_qsqlerror.cpp | 2 +- tests/auto/sql/kernel/qsqlfield/tst_qsqlfield.cpp | 2 +- tests/auto/sql/kernel/qsqlquery/tst_qsqlquery.cpp | 2 +- tests/auto/sql/kernel/qsqlrecord/tst_qsqlrecord.cpp | 2 +- tests/auto/sql/kernel/qsqlthread/tst_qsqlthread.cpp | 2 +- tests/auto/sql/models/qsqlquerymodel/tst_qsqlquerymodel.cpp | 2 +- .../qsqlrelationaltablemodel/tst_qsqlrelationaltablemodel.cpp | 2 +- tests/auto/sql/models/qsqltablemodel/tst_qsqltablemodel.cpp | 2 +- tests/auto/test.pl | 2 +- tests/auto/testlib/qsignalspy/tst_qsignalspy.cpp | 2 +- tests/auto/testlib/selftests/alive/qtestalive.cpp | 2 +- tests/auto/testlib/selftests/alive/tst_alive.cpp | 2 +- tests/auto/testlib/selftests/assert/tst_assert.cpp | 2 +- tests/auto/testlib/selftests/badxml/tst_badxml.cpp | 2 +- .../testlib/selftests/benchlibcallgrind/tst_benchlibcallgrind.cpp | 2 +- .../selftests/benchlibeventcounter/tst_benchlibeventcounter.cpp | 2 +- .../auto/testlib/selftests/benchliboptions/tst_benchliboptions.cpp | 2 +- .../selftests/benchlibtickcounter/tst_benchlibtickcounter.cpp | 2 +- .../testlib/selftests/benchlibwalltime/tst_benchlibwalltime.cpp | 2 +- tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp | 2 +- .../auto/testlib/selftests/commandlinedata/tst_commandlinedata.cpp | 2 +- tests/auto/testlib/selftests/crashes/tst_crashes.cpp | 2 +- tests/auto/testlib/selftests/datatable/tst_datatable.cpp | 2 +- tests/auto/testlib/selftests/datetime/tst_datetime.cpp | 2 +- tests/auto/testlib/selftests/differentexec/tst_differentexec.cpp | 2 +- tests/auto/testlib/selftests/exceptionthrow/tst_exceptionthrow.cpp | 2 +- tests/auto/testlib/selftests/expectfail/tst_expectfail.cpp | 2 +- tests/auto/testlib/selftests/failinit/tst_failinit.cpp | 2 +- tests/auto/testlib/selftests/failinitdata/tst_failinitdata.cpp | 2 +- tests/auto/testlib/selftests/fetchbogus/tst_fetchbogus.cpp | 2 +- tests/auto/testlib/selftests/findtestdata/findtestdata.cpp | 2 +- tests/auto/testlib/selftests/float/tst_float.cpp | 2 +- tests/auto/testlib/selftests/globaldata/tst_globaldata.cpp | 2 +- tests/auto/testlib/selftests/longstring/tst_longstring.cpp | 2 +- tests/auto/testlib/selftests/maxwarnings/maxwarnings.cpp | 2 +- tests/auto/testlib/selftests/multiexec/tst_multiexec.cpp | 2 +- tests/auto/testlib/selftests/printdatatags/tst_printdatatags.cpp | 2 +- .../printdatatagswithglobaltags/tst_printdatatagswithglobaltags.cpp | 2 +- .../auto/testlib/selftests/qexecstringlist/tst_qexecstringlist.cpp | 2 +- tests/auto/testlib/selftests/singleskip/tst_singleskip.cpp | 2 +- tests/auto/testlib/selftests/skip/tst_skip.cpp | 2 +- tests/auto/testlib/selftests/skipinit/tst_skipinit.cpp | 2 +- tests/auto/testlib/selftests/skipinitdata/tst_skipinitdata.cpp | 2 +- tests/auto/testlib/selftests/sleep/tst_sleep.cpp | 2 +- tests/auto/testlib/selftests/strcmp/tst_strcmp.cpp | 2 +- tests/auto/testlib/selftests/subtest/tst_subtest.cpp | 2 +- tests/auto/testlib/selftests/tst_selftests.cpp | 2 +- tests/auto/testlib/selftests/warnings/tst_warnings.cpp | 2 +- tests/auto/tools/moc/Test.framework/Headers/testinterface.h | 2 +- tests/auto/tools/moc/assign-namespace.h | 2 +- tests/auto/tools/moc/backslash-newlines.h | 2 +- tests/auto/tools/moc/c-comments.h | 2 +- tests/auto/tools/moc/cstyle-enums.h | 2 +- tests/auto/tools/moc/dir-in-include-path.h | 2 +- tests/auto/tools/moc/error-on-wrong-notify.h | 2 +- tests/auto/tools/moc/escapes-in-string-literals.h | 2 +- tests/auto/tools/moc/extraqualification.h | 2 +- tests/auto/tools/moc/forgotten-qinterface.h | 2 +- tests/auto/tools/moc/gadgetwithnoenums.h | 2 +- tests/auto/tools/moc/interface-from-framework.h | 2 +- tests/auto/tools/moc/macro-on-cmdline.h | 2 +- tests/auto/tools/moc/namespaced-flags.h | 2 +- tests/auto/tools/moc/no-keywords.h | 2 +- tests/auto/tools/moc/oldstyle-casts.h | 2 +- tests/auto/tools/moc/os9-newlines.h | 2 +- tests/auto/tools/moc/parse-boost.h | 2 +- tests/auto/tools/moc/pure-virtual-signals.h | 2 +- tests/auto/tools/moc/qinvokable.h | 2 +- tests/auto/tools/moc/qprivateslots.h | 2 +- tests/auto/tools/moc/single_function_keyword.h | 2 +- tests/auto/tools/moc/slots-with-void-template.h | 2 +- tests/auto/tools/moc/task189996.h | 2 +- tests/auto/tools/moc/task192552.h | 2 +- tests/auto/tools/moc/task234909.h | 2 +- tests/auto/tools/moc/task240368.h | 2 +- tests/auto/tools/moc/task87883.h | 2 +- tests/auto/tools/moc/template-gtgt.h | 2 +- tests/auto/tools/moc/testproject/Plugin/Plugin.h | 2 +- tests/auto/tools/moc/trigraphs.h | 2 +- tests/auto/tools/moc/tst_moc.cpp | 2 +- tests/auto/tools/moc/using-namespaces.h | 2 +- tests/auto/tools/moc/warn-on-multiple-qobject-subclasses.h | 2 +- tests/auto/tools/moc/warn-on-property-without-read.h | 2 +- tests/auto/tools/moc/win-newlines.h | 2 +- tests/auto/tools/qmake/testcompiler.cpp | 2 +- tests/auto/tools/qmake/testcompiler.h | 2 +- tests/auto/tools/qmake/testdata/findDeps/main.cpp | 2 +- tests/auto/tools/qmake/testdata/findDeps/object1.h | 2 +- tests/auto/tools/qmake/testdata/findDeps/object2.h | 2 +- tests/auto/tools/qmake/testdata/findDeps/object3.h | 2 +- tests/auto/tools/qmake/testdata/findDeps/object4.h | 2 +- tests/auto/tools/qmake/testdata/findDeps/object5.h | 2 +- tests/auto/tools/qmake/testdata/findDeps/object6.h | 2 +- tests/auto/tools/qmake/testdata/findDeps/object7.h | 2 +- tests/auto/tools/qmake/testdata/findDeps/object8.h | 2 +- tests/auto/tools/qmake/testdata/findDeps/object9.h | 2 +- tests/auto/tools/qmake/testdata/findMocs/main.cpp | 2 +- tests/auto/tools/qmake/testdata/findMocs/object1.h | 2 +- tests/auto/tools/qmake/testdata/findMocs/object2.h | 2 +- tests/auto/tools/qmake/testdata/findMocs/object3.h | 2 +- tests/auto/tools/qmake/testdata/findMocs/object4.h | 2 +- tests/auto/tools/qmake/testdata/findMocs/object5.h | 2 +- tests/auto/tools/qmake/testdata/findMocs/object6.h | 2 +- tests/auto/tools/qmake/testdata/findMocs/object7.h | 2 +- tests/auto/tools/qmake/testdata/functions/1.cpp | 2 +- tests/auto/tools/qmake/testdata/functions/2.cpp | 2 +- tests/auto/tools/qmake/testdata/functions/one/1.cpp | 2 +- tests/auto/tools/qmake/testdata/functions/one/2.cpp | 2 +- tests/auto/tools/qmake/testdata/functions/three/wildcard21.cpp | 2 +- tests/auto/tools/qmake/testdata/functions/three/wildcard22.cpp | 2 +- tests/auto/tools/qmake/testdata/functions/two/1.cpp | 2 +- tests/auto/tools/qmake/testdata/functions/two/2.cpp | 2 +- tests/auto/tools/qmake/testdata/functions/wildcard21.cpp | 2 +- tests/auto/tools/qmake/testdata/functions/wildcard22.cpp | 2 +- tests/auto/tools/qmake/testdata/include_dir/main.cpp | 2 +- tests/auto/tools/qmake/testdata/include_dir/test_file.cpp | 2 +- tests/auto/tools/qmake/testdata/include_dir/test_file.h | 2 +- tests/auto/tools/qmake/testdata/include_function/main.cpp | 2 +- tests/auto/tools/qmake/testdata/install_depends/main.cpp | 2 +- tests/auto/tools/qmake/testdata/install_depends/test_file.cpp | 2 +- tests/auto/tools/qmake/testdata/install_depends/test_file.h | 2 +- tests/auto/tools/qmake/testdata/one_space/main.cpp | 2 +- tests/auto/tools/qmake/testdata/quotedfilenames/main.cpp | 2 +- tests/auto/tools/qmake/testdata/shadow_files/main.cpp | 2 +- tests/auto/tools/qmake/testdata/shadow_files/test_file.cpp | 2 +- tests/auto/tools/qmake/testdata/shadow_files/test_file.h | 2 +- tests/auto/tools/qmake/testdata/simple_app/main.cpp | 2 +- tests/auto/tools/qmake/testdata/simple_app/test_file.cpp | 2 +- tests/auto/tools/qmake/testdata/simple_app/test_file.h | 2 +- tests/auto/tools/qmake/testdata/simple_dll/simple.cpp | 2 +- tests/auto/tools/qmake/testdata/simple_dll/simple.h | 2 +- tests/auto/tools/qmake/testdata/simple_lib/simple.cpp | 2 +- tests/auto/tools/qmake/testdata/simple_lib/simple.h | 2 +- .../qmake/testdata/subdir_via_pro_file_extra_target/simple/main.cpp | 2 +- tests/auto/tools/qmake/testdata/subdirs/simple_app/main.cpp | 2 +- tests/auto/tools/qmake/testdata/subdirs/simple_app/test_file.cpp | 2 +- tests/auto/tools/qmake/testdata/subdirs/simple_app/test_file.h | 2 +- tests/auto/tools/qmake/testdata/subdirs/simple_dll/simple.cpp | 2 +- tests/auto/tools/qmake/testdata/subdirs/simple_dll/simple.h | 2 +- tests/auto/tools/qmake/tst_qmake.cpp | 2 +- tests/auto/tools/rcc/tst_rcc.cpp | 2 +- tests/auto/tools/uic/baseline/batchtranslation.ui | 2 +- tests/auto/tools/uic/baseline/batchtranslation.ui.h | 2 +- tests/auto/tools/uic/baseline/config.ui | 2 +- tests/auto/tools/uic/baseline/config.ui.h | 2 +- tests/auto/tools/uic/baseline/finddialog.ui | 2 +- tests/auto/tools/uic/baseline/finddialog.ui.h | 2 +- tests/auto/tools/uic/baseline/formwindowsettings.ui | 2 +- tests/auto/tools/uic/baseline/formwindowsettings.ui.h | 2 +- tests/auto/tools/uic/baseline/helpdialog.ui | 2 +- tests/auto/tools/uic/baseline/helpdialog.ui.h | 2 +- tests/auto/tools/uic/baseline/listwidgeteditor.ui | 2 +- tests/auto/tools/uic/baseline/listwidgeteditor.ui.h | 2 +- tests/auto/tools/uic/baseline/newactiondialog.ui | 2 +- tests/auto/tools/uic/baseline/newactiondialog.ui.h | 2 +- tests/auto/tools/uic/baseline/newform.ui | 2 +- tests/auto/tools/uic/baseline/newform.ui.h | 2 +- tests/auto/tools/uic/baseline/orderdialog.ui | 2 +- tests/auto/tools/uic/baseline/orderdialog.ui.h | 2 +- tests/auto/tools/uic/baseline/paletteeditor.ui | 2 +- tests/auto/tools/uic/baseline/paletteeditor.ui.h | 2 +- tests/auto/tools/uic/baseline/phrasebookbox.ui | 2 +- tests/auto/tools/uic/baseline/phrasebookbox.ui.h | 2 +- tests/auto/tools/uic/baseline/plugindialog.ui | 2 +- tests/auto/tools/uic/baseline/plugindialog.ui.h | 2 +- tests/auto/tools/uic/baseline/previewwidget.ui | 2 +- tests/auto/tools/uic/baseline/previewwidget.ui.h | 2 +- tests/auto/tools/uic/baseline/qfiledialog.ui | 2 +- tests/auto/tools/uic/baseline/qfiledialog.ui.h | 2 +- tests/auto/tools/uic/baseline/qtgradientdialog.ui | 2 +- tests/auto/tools/uic/baseline/qtgradientdialog.ui.h | 2 +- tests/auto/tools/uic/baseline/qtgradienteditor.ui | 2 +- tests/auto/tools/uic/baseline/qtgradienteditor.ui.h | 2 +- tests/auto/tools/uic/baseline/qtgradientviewdialog.ui | 2 +- tests/auto/tools/uic/baseline/qtgradientviewdialog.ui.h | 2 +- tests/auto/tools/uic/baseline/saveformastemplate.ui | 2 +- tests/auto/tools/uic/baseline/saveformastemplate.ui.h | 2 +- tests/auto/tools/uic/baseline/statistics.ui | 2 +- tests/auto/tools/uic/baseline/statistics.ui.h | 2 +- tests/auto/tools/uic/baseline/stringlisteditor.ui | 2 +- tests/auto/tools/uic/baseline/stringlisteditor.ui.h | 2 +- tests/auto/tools/uic/baseline/tabbedbrowser.ui | 2 +- tests/auto/tools/uic/baseline/tabbedbrowser.ui.h | 2 +- tests/auto/tools/uic/baseline/tablewidgeteditor.ui | 2 +- tests/auto/tools/uic/baseline/tablewidgeteditor.ui.h | 2 +- tests/auto/tools/uic/baseline/translatedialog.ui | 2 +- tests/auto/tools/uic/baseline/translatedialog.ui.h | 2 +- tests/auto/tools/uic/baseline/treewidgeteditor.ui | 2 +- tests/auto/tools/uic/baseline/treewidgeteditor.ui.h | 2 +- tests/auto/tools/uic/baseline/trpreviewtool.ui | 2 +- tests/auto/tools/uic/baseline/trpreviewtool.ui.h | 2 +- tests/auto/tools/uic/tst_uic.cpp | 2 +- tests/auto/v8/tst_v8.cpp | 2 +- tests/auto/v8/v8main.cpp | 2 +- tests/auto/v8/v8test.cpp | 2 +- tests/auto/v8/v8test.h | 2 +- .../dialogs/qabstractprintdialog/tst_qabstractprintdialog.cpp | 2 +- tests/auto/widgets/dialogs/qcolordialog/tst_qcolordialog.cpp | 2 +- tests/auto/widgets/dialogs/qdialog/tst_qdialog.cpp | 2 +- tests/auto/widgets/dialogs/qerrormessage/tst_qerrormessage.cpp | 2 +- tests/auto/widgets/dialogs/qfiledialog/tst_qfiledialog.cpp | 2 +- tests/auto/widgets/dialogs/qfiledialog2/tst_qfiledialog2.cpp | 2 +- .../auto/widgets/dialogs/qfilesystemmodel/tst_qfilesystemmodel.cpp | 2 +- tests/auto/widgets/dialogs/qfontdialog/tst_qfontdialog.cpp | 2 +- .../auto/widgets/dialogs/qfontdialog/tst_qfontdialog_mac_helpers.mm | 2 +- tests/auto/widgets/dialogs/qinputdialog/tst_qinputdialog.cpp | 2 +- tests/auto/widgets/dialogs/qmessagebox/tst_qmessagebox.cpp | 2 +- tests/auto/widgets/dialogs/qprogressdialog/tst_qprogressdialog.cpp | 2 +- tests/auto/widgets/dialogs/qsidebar/tst_qsidebar.cpp | 2 +- tests/auto/widgets/dialogs/qwizard/tst_qwizard.cpp | 2 +- tests/auto/widgets/effects/qgraphicseffect/tst_qgraphicseffect.cpp | 2 +- .../qgraphicsanchorlayout/tst_qgraphicsanchorlayout.cpp | 2 +- .../qgraphicsanchorlayout1/tst_qgraphicsanchorlayout1.cpp | 2 +- .../qgraphicseffectsource/tst_qgraphicseffectsource.cpp | 2 +- .../graphicsview/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp | 2 +- tests/auto/widgets/graphicsview/qgraphicsitem/tst_qgraphicsitem.cpp | 2 +- .../qgraphicsitemanimation/tst_qgraphicsitemanimation.cpp | 2 +- .../widgets/graphicsview/qgraphicslayout/tst_qgraphicslayout.cpp | 2 +- .../graphicsview/qgraphicslayoutitem/tst_qgraphicslayoutitem.cpp | 2 +- .../qgraphicslinearlayout/tst_qgraphicslinearlayout.cpp | 2 +- .../widgets/graphicsview/qgraphicsobject/tst_qgraphicsobject.cpp | 2 +- .../graphicsview/qgraphicspixmapitem/tst_qgraphicspixmapitem.cpp | 2 +- .../graphicsview/qgraphicspolygonitem/tst_qgraphicspolygonitem.cpp | 2 +- .../graphicsview/qgraphicsproxywidget/tst_qgraphicsproxywidget.cpp | 2 +- .../auto/widgets/graphicsview/qgraphicsscene/tst_qgraphicsscene.cpp | 2 +- .../graphicsview/qgraphicssceneindex/tst_qgraphicssceneindex.cpp | 2 +- .../graphicsview/qgraphicstransform/tst_qgraphicstransform.cpp | 2 +- tests/auto/widgets/graphicsview/qgraphicsview/tst_qgraphicsview.cpp | 2 +- .../auto/widgets/graphicsview/qgraphicsview/tst_qgraphicsview_2.cpp | 2 +- .../widgets/graphicsview/qgraphicswidget/tst_qgraphicswidget.cpp | 2 +- .../widgets/itemviews/qabstractitemview/tst_qabstractitemview.cpp | 2 +- tests/auto/widgets/itemviews/qcolumnview/tst_qcolumnview.cpp | 2 +- .../widgets/itemviews/qdatawidgetmapper/tst_qdatawidgetmapper.cpp | 2 +- tests/auto/widgets/itemviews/qdirmodel/tst_qdirmodel.cpp | 2 +- .../widgets/itemviews/qfileiconprovider/tst_qfileiconprovider.cpp | 2 +- tests/auto/widgets/itemviews/qheaderview/tst_qheaderview.cpp | 2 +- tests/auto/widgets/itemviews/qitemdelegate/tst_qitemdelegate.cpp | 2 +- .../widgets/itemviews/qitemeditorfactory/tst_qitemeditorfactory.cpp | 2 +- tests/auto/widgets/itemviews/qitemview/tst_qitemview.cpp | 2 +- tests/auto/widgets/itemviews/qitemview/viewstotest.cpp | 2 +- tests/auto/widgets/itemviews/qlistview/tst_qlistview.cpp | 2 +- tests/auto/widgets/itemviews/qlistwidget/tst_qlistwidget.cpp | 2 +- tests/auto/widgets/itemviews/qstandarditem/tst_qstandarditem.cpp | 2 +- .../widgets/itemviews/qstandarditemmodel/tst_qstandarditemmodel.cpp | 2 +- tests/auto/widgets/itemviews/qtableview/tst_qtableview.cpp | 2 +- tests/auto/widgets/itemviews/qtablewidget/tst_qtablewidget.cpp | 2 +- tests/auto/widgets/itemviews/qtreeview/tst_qtreeview.cpp | 2 +- tests/auto/widgets/itemviews/qtreewidget/tst_qtreewidget.cpp | 2 +- .../qtreewidgetitemiterator/tst_qtreewidgetitemiterator.cpp | 2 +- tests/auto/widgets/kernel/qaction/tst_qaction.cpp | 2 +- tests/auto/widgets/kernel/qactiongroup/tst_qactiongroup.cpp | 2 +- .../auto/widgets/kernel/qapplication/desktopsettingsaware/main.cpp | 2 +- tests/auto/widgets/kernel/qapplication/modal/base.cpp | 2 +- tests/auto/widgets/kernel/qapplication/modal/base.h | 2 +- tests/auto/widgets/kernel/qapplication/modal/main.cpp | 2 +- tests/auto/widgets/kernel/qapplication/tst_qapplication.cpp | 2 +- tests/auto/widgets/kernel/qapplication/wincmdline/main.cpp | 2 +- tests/auto/widgets/kernel/qboxlayout/tst_qboxlayout.cpp | 2 +- tests/auto/widgets/kernel/qdesktopwidget/tst_qdesktopwidget.cpp | 2 +- tests/auto/widgets/kernel/qformlayout/tst_qformlayout.cpp | 2 +- tests/auto/widgets/kernel/qgridlayout/tst_qgridlayout.cpp | 2 +- tests/auto/widgets/kernel/qlayout/tst_qlayout.cpp | 2 +- tests/auto/widgets/kernel/qstackedlayout/tst_qstackedlayout.cpp | 2 +- tests/auto/widgets/kernel/qtooltip/tst_qtooltip.cpp | 2 +- tests/auto/widgets/kernel/qwidget/tst_qwidget.cpp | 2 +- tests/auto/widgets/kernel/qwidget/tst_qwidget_mac_helpers.h | 2 +- tests/auto/widgets/kernel/qwidget/tst_qwidget_mac_helpers.mm | 2 +- tests/auto/widgets/kernel/qwidget_window/tst_qwidget_window.cpp | 2 +- tests/auto/widgets/kernel/qwidgetaction/tst_qwidgetaction.cpp | 2 +- tests/auto/widgets/shared/platforminputcontext.h | 2 +- tests/auto/widgets/styles/qmacstyle/tst_qmacstyle.cpp | 2 +- tests/auto/widgets/styles/qstyle/tst_qstyle.cpp | 2 +- tests/auto/widgets/styles/qstyleoption/tst_qstyleoption.cpp | 2 +- tests/auto/widgets/styles/qstylesheetstyle/tst_qstylesheetstyle.cpp | 2 +- tests/auto/widgets/util/qcompleter/tst_qcompleter.cpp | 2 +- tests/auto/widgets/util/qscroller/tst_qscroller.cpp | 2 +- tests/auto/widgets/util/qsystemtrayicon/tst_qsystemtrayicon.cpp | 2 +- tests/auto/widgets/util/qundogroup/tst_qundogroup.cpp | 2 +- tests/auto/widgets/util/qundostack/tst_qundostack.cpp | 2 +- tests/auto/widgets/widgets/qabstractbutton/tst_qabstractbutton.cpp | 2 +- .../widgets/widgets/qabstractscrollarea/tst_qabstractscrollarea.cpp | 2 +- tests/auto/widgets/widgets/qabstractslider/tst_qabstractslider.cpp | 2 +- .../auto/widgets/widgets/qabstractspinbox/tst_qabstractspinbox.cpp | 2 +- tests/auto/widgets/widgets/qbuttongroup/tst_qbuttongroup.cpp | 2 +- tests/auto/widgets/widgets/qcalendarwidget/tst_qcalendarwidget.cpp | 2 +- tests/auto/widgets/widgets/qcheckbox/tst_qcheckbox.cpp | 2 +- tests/auto/widgets/widgets/qcombobox/tst_qcombobox.cpp | 2 +- .../widgets/widgets/qcommandlinkbutton/tst_qcommandlinkbutton.cpp | 2 +- tests/auto/widgets/widgets/qdatetimeedit/tst_qdatetimeedit.cpp | 2 +- tests/auto/widgets/widgets/qdial/tst_qdial.cpp | 2 +- .../auto/widgets/widgets/qdialogbuttonbox/tst_qdialogbuttonbox.cpp | 2 +- tests/auto/widgets/widgets/qdockwidget/tst_qdockwidget.cpp | 2 +- tests/auto/widgets/widgets/qdoublespinbox/tst_qdoublespinbox.cpp | 2 +- .../auto/widgets/widgets/qdoublevalidator/tst_qdoublevalidator.cpp | 2 +- tests/auto/widgets/widgets/qfocusframe/tst_qfocusframe.cpp | 2 +- tests/auto/widgets/widgets/qfontcombobox/tst_qfontcombobox.cpp | 2 +- tests/auto/widgets/widgets/qgroupbox/tst_qgroupbox.cpp | 2 +- tests/auto/widgets/widgets/qintvalidator/tst_qintvalidator.cpp | 2 +- tests/auto/widgets/widgets/qlabel/tst_qlabel.cpp | 2 +- tests/auto/widgets/widgets/qlcdnumber/tst_qlcdnumber.cpp | 2 +- tests/auto/widgets/widgets/qlineedit/tst_qlineedit.cpp | 2 +- tests/auto/widgets/widgets/qmainwindow/tst_qmainwindow.cpp | 2 +- tests/auto/widgets/widgets/qmdiarea/tst_qmdiarea.cpp | 2 +- tests/auto/widgets/widgets/qmdisubwindow/tst_qmdisubwindow.cpp | 2 +- tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp | 2 +- tests/auto/widgets/widgets/qmenubar/tst_qmenubar.cpp | 2 +- tests/auto/widgets/widgets/qplaintextedit/tst_qplaintextedit.cpp | 2 +- tests/auto/widgets/widgets/qprogressbar/tst_qprogressbar.cpp | 2 +- tests/auto/widgets/widgets/qpushbutton/tst_qpushbutton.cpp | 2 +- tests/auto/widgets/widgets/qradiobutton/tst_qradiobutton.cpp | 2 +- .../auto/widgets/widgets/qregexpvalidator/tst_qregexpvalidator.cpp | 2 +- tests/auto/widgets/widgets/qscrollarea/tst_qscrollarea.cpp | 2 +- tests/auto/widgets/widgets/qscrollbar/tst_qscrollbar.cpp | 2 +- tests/auto/widgets/widgets/qsizegrip/tst_qsizegrip.cpp | 2 +- tests/auto/widgets/widgets/qslider/tst_qslider.cpp | 2 +- tests/auto/widgets/widgets/qspinbox/tst_qspinbox.cpp | 2 +- tests/auto/widgets/widgets/qsplitter/tst_qsplitter.cpp | 2 +- tests/auto/widgets/widgets/qstackedwidget/tst_qstackedwidget.cpp | 2 +- tests/auto/widgets/widgets/qstatusbar/tst_qstatusbar.cpp | 2 +- tests/auto/widgets/widgets/qtabbar/tst_qtabbar.cpp | 2 +- tests/auto/widgets/widgets/qtabwidget/tst_qtabwidget.cpp | 2 +- tests/auto/widgets/widgets/qtextbrowser/tst_qtextbrowser.cpp | 2 +- tests/auto/widgets/widgets/qtextedit/tst_qtextedit.cpp | 2 +- tests/auto/widgets/widgets/qtoolbar/tst_qtoolbar.cpp | 2 +- tests/auto/widgets/widgets/qtoolbox/tst_qtoolbox.cpp | 2 +- tests/auto/widgets/widgets/qtoolbutton/tst_qtoolbutton.cpp | 2 +- tests/auto/widgets/widgets/qworkspace/tst_qworkspace.cpp | 2 +- tests/auto/xml/dom/qdom/tst_qdom.cpp | 2 +- tests/auto/xml/sax/qxml/tst_qxml.cpp | 2 +- tests/auto/xml/sax/qxmlinputsource/tst_qxmlinputsource.cpp | 2 +- tests/auto/xml/sax/qxmlsimplereader/generate_ref_files.sh | 2 +- tests/auto/xml/sax/qxmlsimplereader/parser/main.cpp | 2 +- tests/auto/xml/sax/qxmlsimplereader/parser/parser.cpp | 2 +- tests/auto/xml/sax/qxmlsimplereader/parser/parser.h | 2 +- tests/auto/xml/sax/qxmlsimplereader/tst_qxmlsimplereader.cpp | 2 +- tests/baselineserver/shared/baselineprotocol.cpp | 2 +- tests/baselineserver/shared/baselineprotocol.h | 2 +- tests/baselineserver/shared/lookup3.cpp | 2 +- tests/baselineserver/shared/qbaselinetest.cpp | 2 +- tests/baselineserver/shared/qbaselinetest.h | 2 +- tests/baselineserver/src/baselineserver.cpp | 2 +- tests/baselineserver/src/baselineserver.h | 2 +- tests/baselineserver/src/main.cpp | 2 +- tests/baselineserver/src/report.cpp | 2 +- tests/baselineserver/src/report.h | 2 +- tests/benchmarks/corelib/codecs/qtextcodec/main.cpp | 2 +- tests/benchmarks/corelib/io/qdir/10000/bench_qdir_10000.cpp | 2 +- tests/benchmarks/corelib/io/qdir/tree/bench_qdir_tree.cpp | 2 +- tests/benchmarks/corelib/io/qdiriterator/main.cpp | 2 +- tests/benchmarks/corelib/io/qdiriterator/qfilesystemiterator.cpp | 2 +- tests/benchmarks/corelib/io/qdiriterator/qfilesystemiterator.h | 2 +- tests/benchmarks/corelib/io/qfile/main.cpp | 2 +- tests/benchmarks/corelib/io/qfileinfo/main.cpp | 2 +- tests/benchmarks/corelib/io/qiodevice/main.cpp | 2 +- tests/benchmarks/corelib/io/qtemporaryfile/main.cpp | 2 +- tests/benchmarks/corelib/io/qurl/main.cpp | 2 +- tests/benchmarks/corelib/kernel/events/main.cpp | 2 +- tests/benchmarks/corelib/kernel/qmetaobject/main.cpp | 2 +- tests/benchmarks/corelib/kernel/qmetatype/tst_qmetatype.cpp | 2 +- tests/benchmarks/corelib/kernel/qobject/main.cpp | 2 +- tests/benchmarks/corelib/kernel/qobject/object.cpp | 2 +- tests/benchmarks/corelib/kernel/qobject/object.h | 2 +- .../kernel/qtimer_vs_qmetaobject/tst_qtimer_vs_qmetaobject.cpp | 2 +- tests/benchmarks/corelib/kernel/qvariant/tst_qvariant.cpp | 2 +- tests/benchmarks/corelib/plugin/quuid/tst_quuid.cpp | 2 +- tests/benchmarks/corelib/thread/qmutex/tst_qmutex.cpp | 2 +- .../benchmarks/corelib/thread/qthreadstorage/tst_qthreadstorage.cpp | 2 +- .../benchmarks/corelib/thread/qwaitcondition/tst_qwaitcondition.cpp | 2 +- tests/benchmarks/corelib/tools/containers-associative/main.cpp | 2 +- tests/benchmarks/corelib/tools/containers-sequential/main.cpp | 2 +- tests/benchmarks/corelib/tools/qbytearray/main.cpp | 2 +- tests/benchmarks/corelib/tools/qchar/main.cpp | 2 +- tests/benchmarks/corelib/tools/qcontiguouscache/main.cpp | 2 +- tests/benchmarks/corelib/tools/qhash/outofline.cpp | 2 +- tests/benchmarks/corelib/tools/qhash/qhash_string.cpp | 2 +- tests/benchmarks/corelib/tools/qhash/qhash_string.h | 2 +- tests/benchmarks/corelib/tools/qlist/main.cpp | 2 +- tests/benchmarks/corelib/tools/qrect/main.cpp | 2 +- tests/benchmarks/corelib/tools/qregexp/main.cpp | 2 +- tests/benchmarks/corelib/tools/qstring/data.h | 2 +- tests/benchmarks/corelib/tools/qstring/generatelist.pl | 2 +- tests/benchmarks/corelib/tools/qstring/generatelist_char.pl | 2 +- tests/benchmarks/corelib/tools/qstring/main.cpp | 2 +- tests/benchmarks/corelib/tools/qstringbuilder/main.cpp | 2 +- tests/benchmarks/corelib/tools/qstringlist/main.cpp | 2 +- tests/benchmarks/corelib/tools/qvector/main.cpp | 2 +- tests/benchmarks/corelib/tools/qvector/outofline.cpp | 2 +- tests/benchmarks/corelib/tools/qvector/qrawvector.h | 2 +- tests/benchmarks/dbus/qdbusperformance/server/server.cpp | 2 +- tests/benchmarks/dbus/qdbusperformance/serverobject.h | 2 +- tests/benchmarks/dbus/qdbusperformance/tst_qdbusperformance.cpp | 2 +- tests/benchmarks/dbus/qdbustype/main.cpp | 2 +- tests/benchmarks/gui/animation/qanimation/dummyanimation.cpp | 2 +- tests/benchmarks/gui/animation/qanimation/dummyanimation.h | 2 +- tests/benchmarks/gui/animation/qanimation/dummyobject.cpp | 2 +- tests/benchmarks/gui/animation/qanimation/dummyobject.h | 2 +- tests/benchmarks/gui/animation/qanimation/main.cpp | 2 +- tests/benchmarks/gui/animation/qanimation/rectanimation.cpp | 2 +- tests/benchmarks/gui/animation/qanimation/rectanimation.h | 2 +- .../gui/graphicsview/functional/GraphicsViewBenchmark/main.cpp | 2 +- .../GraphicsViewBenchmark/widgets/abstractitemcontainer.cpp | 2 +- .../GraphicsViewBenchmark/widgets/abstractitemcontainer.h | 2 +- .../functional/GraphicsViewBenchmark/widgets/abstractitemview.cpp | 2 +- .../functional/GraphicsViewBenchmark/widgets/abstractitemview.h | 2 +- .../functional/GraphicsViewBenchmark/widgets/abstractscrollarea.cpp | 2 +- .../functional/GraphicsViewBenchmark/widgets/abstractscrollarea.h | 2 +- .../functional/GraphicsViewBenchmark/widgets/abstractviewitem.cpp | 2 +- .../functional/GraphicsViewBenchmark/widgets/abstractviewitem.h | 2 +- .../functional/GraphicsViewBenchmark/widgets/backgrounditem.cpp | 2 +- .../functional/GraphicsViewBenchmark/widgets/backgrounditem.h | 2 +- .../functional/GraphicsViewBenchmark/widgets/button.cpp | 2 +- .../graphicsview/functional/GraphicsViewBenchmark/widgets/button.h | 2 +- .../functional/GraphicsViewBenchmark/widgets/commandline.cpp | 2 +- .../functional/GraphicsViewBenchmark/widgets/commandline.h | 2 +- .../functional/GraphicsViewBenchmark/widgets/dummydatagen.cpp | 2 +- .../functional/GraphicsViewBenchmark/widgets/dummydatagen.h | 2 +- .../functional/GraphicsViewBenchmark/widgets/gvbwidget.cpp | 2 +- .../functional/GraphicsViewBenchmark/widgets/gvbwidget.h | 2 +- .../functional/GraphicsViewBenchmark/widgets/iconitem.cpp | 2 +- .../functional/GraphicsViewBenchmark/widgets/iconitem.h | 2 +- .../functional/GraphicsViewBenchmark/widgets/itemrecyclinglist.cpp | 2 +- .../functional/GraphicsViewBenchmark/widgets/itemrecyclinglist.h | 2 +- .../GraphicsViewBenchmark/widgets/itemrecyclinglistview.cpp | 2 +- .../GraphicsViewBenchmark/widgets/itemrecyclinglistview.h | 2 +- .../graphicsview/functional/GraphicsViewBenchmark/widgets/label.cpp | 2 +- .../graphicsview/functional/GraphicsViewBenchmark/widgets/label.h | 2 +- .../functional/GraphicsViewBenchmark/widgets/listitem.cpp | 2 +- .../functional/GraphicsViewBenchmark/widgets/listitem.h | 2 +- .../functional/GraphicsViewBenchmark/widgets/listitemcache.cpp | 2 +- .../functional/GraphicsViewBenchmark/widgets/listitemcache.h | 2 +- .../functional/GraphicsViewBenchmark/widgets/listitemcontainer.cpp | 2 +- .../functional/GraphicsViewBenchmark/widgets/listitemcontainer.h | 2 +- .../functional/GraphicsViewBenchmark/widgets/listmodel.cpp | 2 +- .../functional/GraphicsViewBenchmark/widgets/listmodel.h | 2 +- .../functional/GraphicsViewBenchmark/widgets/listwidget.cpp | 2 +- .../functional/GraphicsViewBenchmark/widgets/listwidget.h | 2 +- .../functional/GraphicsViewBenchmark/widgets/mainview.cpp | 2 +- .../functional/GraphicsViewBenchmark/widgets/mainview.h | 2 +- .../graphicsview/functional/GraphicsViewBenchmark/widgets/menu.cpp | 2 +- .../graphicsview/functional/GraphicsViewBenchmark/widgets/menu.h | 2 +- .../functional/GraphicsViewBenchmark/widgets/recycledlistitem.cpp | 2 +- .../functional/GraphicsViewBenchmark/widgets/recycledlistitem.h | 2 +- .../functional/GraphicsViewBenchmark/widgets/resourcemoninterface.h | 2 +- .../functional/GraphicsViewBenchmark/widgets/scrollbar.cpp | 2 +- .../functional/GraphicsViewBenchmark/widgets/scrollbar.h | 2 +- .../functional/GraphicsViewBenchmark/widgets/scroller.cpp | 2 +- .../functional/GraphicsViewBenchmark/widgets/scroller.h | 2 +- .../functional/GraphicsViewBenchmark/widgets/scroller_p.h | 2 +- .../functional/GraphicsViewBenchmark/widgets/settings.cpp | 2 +- .../functional/GraphicsViewBenchmark/widgets/settings.h | 2 +- .../functional/GraphicsViewBenchmark/widgets/simplelist.cpp | 2 +- .../functional/GraphicsViewBenchmark/widgets/simplelist.h | 2 +- .../functional/GraphicsViewBenchmark/widgets/simplelistview.cpp | 2 +- .../functional/GraphicsViewBenchmark/widgets/simplelistview.h | 2 +- .../graphicsview/functional/GraphicsViewBenchmark/widgets/theme.cpp | 2 +- .../graphicsview/functional/GraphicsViewBenchmark/widgets/theme.h | 2 +- .../functional/GraphicsViewBenchmark/widgets/themeevent.cpp | 2 +- .../functional/GraphicsViewBenchmark/widgets/themeevent.h | 2 +- .../functional/GraphicsViewBenchmark/widgets/topbar.cpp | 2 +- .../graphicsview/functional/GraphicsViewBenchmark/widgets/topbar.h | 2 +- .../functional/GraphicsViewBenchmark/widgets/webview.cpp | 2 +- .../graphicsview/functional/GraphicsViewBenchmark/widgets/webview.h | 2 +- .../functional/GraphicsViewBenchmark/widgets/webview_p.h | 2 +- .../qgraphicsanchorlayout/tst_qgraphicsanchorlayout.cpp | 2 +- .../benchmarks/gui/graphicsview/qgraphicsitem/tst_qgraphicsitem.cpp | 2 +- .../gui/graphicsview/qgraphicslayout/tst_qgraphicslayout.cpp | 2 +- .../qgraphicslinearlayout/tst_qgraphicslinearlayout.cpp | 2 +- .../gui/graphicsview/qgraphicsscene/tst_qgraphicsscene.cpp | 2 +- .../gui/graphicsview/qgraphicsview/benchapps/chipTest/chip.cpp | 2 +- .../gui/graphicsview/qgraphicsview/benchapps/chipTest/chip.h | 2 +- .../gui/graphicsview/qgraphicsview/benchapps/chipTest/main.cpp | 2 +- .../graphicsview/qgraphicsview/benchapps/chipTest/mainwindow.cpp | 2 +- .../gui/graphicsview/qgraphicsview/benchapps/chipTest/mainwindow.h | 2 +- .../gui/graphicsview/qgraphicsview/benchapps/chipTest/view.cpp | 2 +- .../gui/graphicsview/qgraphicsview/benchapps/chipTest/view.h | 2 +- .../gui/graphicsview/qgraphicsview/benchapps/moveItems/main.cpp | 2 +- .../gui/graphicsview/qgraphicsview/benchapps/scrolltest/main.cpp | 2 +- tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chip.cpp | 2 +- tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chip.h | 2 +- .../gui/graphicsview/qgraphicsview/chiptester/chiptester.cpp | 2 +- .../gui/graphicsview/qgraphicsview/chiptester/chiptester.h | 2 +- .../benchmarks/gui/graphicsview/qgraphicsview/tst_qgraphicsview.cpp | 2 +- .../gui/graphicsview/qgraphicswidget/tst_qgraphicswidget.cpp | 2 +- tests/benchmarks/gui/image/blendbench/main.cpp | 2 +- .../benchmarks/gui/image/qimageconversion/tst_qimageconversion.cpp | 2 +- tests/benchmarks/gui/image/qimagereader/tst_qimagereader.cpp | 2 +- tests/benchmarks/gui/image/qpixmap/tst_qpixmap.cpp | 2 +- tests/benchmarks/gui/image/qpixmapcache/tst_qpixmapcache.cpp | 2 +- tests/benchmarks/gui/itemviews/qtableview/tst_qtableview.cpp | 2 +- tests/benchmarks/gui/kernel/qapplication/main.cpp | 2 +- tests/benchmarks/gui/kernel/qguimetatype/tst_qguimetatype.cpp | 2 +- tests/benchmarks/gui/kernel/qguivariant/tst_qguivariant.cpp | 2 +- tests/benchmarks/gui/kernel/qwidget/tst_qwidget.cpp | 2 +- tests/benchmarks/gui/math3d/qmatrix4x4/tst_qmatrix4x4.cpp | 2 +- tests/benchmarks/gui/math3d/qquaternion/tst_qquaternion.cpp | 2 +- tests/benchmarks/gui/painting/qpainter/tst_qpainter.cpp | 2 +- tests/benchmarks/gui/painting/qregion/main.cpp | 2 +- tests/benchmarks/gui/painting/qtbench/benchmarktests.h | 2 +- tests/benchmarks/gui/painting/qtbench/tst_qtbench.cpp | 2 +- tests/benchmarks/gui/painting/qtracebench/tst_qtracebench.cpp | 2 +- tests/benchmarks/gui/painting/qtransform/tst_qtransform.cpp | 2 +- tests/benchmarks/gui/styles/qstylesheetstyle/main.cpp | 2 +- tests/benchmarks/gui/text/qfontmetrics/main.cpp | 2 +- tests/benchmarks/gui/text/qtext/main.cpp | 2 +- .../network/access/qfile_vs_qnetworkaccessmanager/main.cpp | 2 +- tests/benchmarks/network/access/qnetworkreply/tst_qnetworkreply.cpp | 2 +- tests/benchmarks/network/kernel/qhostinfo/main.cpp | 2 +- tests/benchmarks/network/socket/qtcpserver/tst_qtcpserver.cpp | 2 +- tests/benchmarks/network/ssl/qsslsocket/tst_qsslsocket.cpp | 2 +- tests/benchmarks/opengl/main.cpp | 2 +- tests/benchmarks/plugins/imageformats/jpeg/jpeg.cpp | 2 +- tests/benchmarks/sql/kernel/qsqlquery/main.cpp | 2 +- tests/manual/bearerex/bearerex.cpp | 2 +- tests/manual/bearerex/bearerex.h | 2 +- tests/manual/bearerex/datatransferer.cpp | 2 +- tests/manual/bearerex/datatransferer.h | 2 +- tests/manual/bearerex/main.cpp | 2 +- tests/manual/bearerex/xqlistwidget.cpp | 2 +- tests/manual/bearerex/xqlistwidget.h | 2 +- tests/manual/cocoa/qt_on_cocoa/main.mm | 2 +- tests/manual/cocoa/qt_on_cocoa/window.cpp | 2 +- tests/manual/cocoa/qt_on_cocoa/window.h | 2 +- tests/manual/gestures/graphicsview/gestures.cpp | 2 +- tests/manual/gestures/graphicsview/gestures.h | 2 +- tests/manual/gestures/graphicsview/imageitem.cpp | 2 +- tests/manual/gestures/graphicsview/imageitem.h | 2 +- tests/manual/gestures/graphicsview/main.cpp | 2 +- tests/manual/gestures/graphicsview/mousepangesturerecognizer.cpp | 2 +- tests/manual/gestures/graphicsview/mousepangesturerecognizer.h | 2 +- tests/manual/gestures/scrollarea/main.cpp | 2 +- tests/manual/gestures/scrollarea/mousepangesturerecognizer.cpp | 2 +- tests/manual/gestures/scrollarea/mousepangesturerecognizer.h | 2 +- tests/manual/inputmethodhints/inputmethodhints.cpp | 2 +- tests/manual/inputmethodhints/inputmethodhints.h | 2 +- tests/manual/inputmethodhints/main.cpp | 2 +- tests/manual/keypadnavigation/main.cpp | 2 +- tests/manual/lance/interactivewidget.cpp | 2 +- tests/manual/lance/interactivewidget.h | 2 +- tests/manual/lance/main.cpp | 2 +- tests/manual/lance/widgets.h | 2 +- tests/manual/mkspecs/test.sh | 2 +- .../network_remote_stresstest/tst_network_remote_stresstest.cpp | 2 +- tests/manual/network_stresstest/minihttpserver.cpp | 2 +- tests/manual/network_stresstest/minihttpserver.h | 2 +- tests/manual/network_stresstest/tst_network_stresstest.cpp | 2 +- tests/manual/qcursor/allcursors/main.cpp | 2 +- tests/manual/qcursor/allcursors/mainwindow.cpp | 2 +- tests/manual/qcursor/allcursors/mainwindow.h | 2 +- tests/manual/qcursor/grab_override/main.cpp | 2 +- tests/manual/qcursor/grab_override/mainwindow.cpp | 2 +- tests/manual/qcursor/grab_override/mainwindow.h | 2 +- tests/manual/qdesktopwidget/main.cpp | 2 +- tests/manual/qgraphicsitemgroup/customitem.cpp | 2 +- tests/manual/qgraphicsitemgroup/customitem.h | 2 +- tests/manual/qgraphicsitemgroup/main.cpp | 2 +- tests/manual/qgraphicsitemgroup/widget.cpp | 2 +- tests/manual/qgraphicsitemgroup/widget.h | 2 +- tests/manual/qgraphicslayout/flicker/main.cpp | 2 +- tests/manual/qgraphicslayout/flicker/window.cpp | 2 +- tests/manual/qgraphicslayout/flicker/window.h | 2 +- tests/manual/qhttpnetworkconnection/main.cpp | 2 +- tests/manual/qimagereader/main.cpp | 2 +- tests/manual/qlocale/calendar.cpp | 2 +- tests/manual/qlocale/calendar.h | 2 +- tests/manual/qlocale/currency.cpp | 2 +- tests/manual/qlocale/currency.h | 2 +- tests/manual/qlocale/dateformats.cpp | 2 +- tests/manual/qlocale/dateformats.h | 2 +- tests/manual/qlocale/info.cpp | 2 +- tests/manual/qlocale/info.h | 2 +- tests/manual/qlocale/languages.cpp | 2 +- tests/manual/qlocale/languages.h | 2 +- tests/manual/qlocale/main.cpp | 2 +- tests/manual/qlocale/miscellaneous.cpp | 2 +- tests/manual/qlocale/miscellaneous.h | 2 +- tests/manual/qlocale/numberformats.cpp | 2 +- tests/manual/qlocale/numberformats.h | 2 +- tests/manual/qlocale/window.cpp | 2 +- tests/manual/qlocale/window.h | 2 +- tests/manual/qnetworkreply/main.cpp | 2 +- tests/manual/qssloptions/main.cpp | 2 +- tests/manual/qtabletevent/device_information/main.cpp | 2 +- tests/manual/qtabletevent/device_information/tabletwidget.cpp | 2 +- tests/manual/qtabletevent/device_information/tabletwidget.h | 2 +- tests/manual/qtabletevent/event_compression/main.cpp | 2 +- tests/manual/qtabletevent/event_compression/mousestatwidget.cpp | 2 +- tests/manual/qtabletevent/event_compression/mousestatwidget.h | 2 +- tests/manual/qtabletevent/regular_widgets/main.cpp | 2 +- tests/manual/qtbug-8933/main.cpp | 2 +- tests/manual/qtbug-8933/widget.cpp | 2 +- tests/manual/qtbug-8933/widget.h | 2 +- tests/manual/qtouchevent/main.cpp | 2 +- tests/manual/qtouchevent/touchwidget.cpp | 2 +- tests/manual/qtouchevent/touchwidget.h | 2 +- tests/manual/qwidget_zorder/main.cpp | 2 +- tests/manual/repaint/mainwindow/main.cpp | 2 +- tests/manual/repaint/scrollarea/main.cpp | 2 +- tests/manual/repaint/shared/shared.h | 2 +- tests/manual/repaint/splitter/main.cpp | 2 +- tests/manual/repaint/tableview/main.cpp | 2 +- tests/manual/repaint/task141091/main.cpp | 2 +- tests/manual/repaint/toplevel/main.cpp | 2 +- tests/manual/repaint/widget/main.cpp | 2 +- tests/manual/textrendering/glyphshaping/main.cpp | 2 +- tests/manual/textrendering/textperformance/main.cpp | 2 +- tests/manual/windowflags/controllerwindow.cpp | 2 +- tests/manual/windowflags/controllerwindow.h | 2 +- tests/manual/windowflags/main.cpp | 2 +- tests/manual/windowflags/previewwindow.cpp | 2 +- tests/manual/windowflags/previewwindow.h | 2 +- tests/shared/filesystem.h | 2 +- tools/configure/configure_pch.h | 2 +- tools/configure/configureapp.cpp | 2 +- tools/configure/configureapp.h | 2 +- tools/configure/environment.cpp | 2 +- tools/configure/environment.h | 2 +- tools/configure/main.cpp | 2 +- tools/configure/tools.cpp | 2 +- tools/configure/tools.h | 2 +- tools/shared/windows/registry.cpp | 2 +- tools/shared/windows/registry_p.h | 2 +- util/accessibilityinspector/accessibilityinspector.cpp | 2 +- util/accessibilityinspector/accessibilityinspector.h | 2 +- util/accessibilityinspector/accessibilityscenemanager.cpp | 2 +- util/accessibilityinspector/accessibilityscenemanager.h | 2 +- util/accessibilityinspector/main.cpp | 2 +- util/accessibilityinspector/optionswidget.cpp | 2 +- util/accessibilityinspector/optionswidget.h | 2 +- util/accessibilityinspector/screenreader.cpp | 2 +- util/accessibilityinspector/screenreader.h | 2 +- util/accessibilityinspector/screenreader_mac.mm | 2 +- util/corelib/qurl-generateTLDs/main.cpp | 2 +- util/lexgen/configfile.cpp | 2 +- util/lexgen/configfile.h | 2 +- util/lexgen/generator.cpp | 2 +- util/lexgen/generator.h | 2 +- util/lexgen/global.h | 2 +- util/lexgen/main.cpp | 2 +- util/lexgen/nfa.cpp | 2 +- util/lexgen/nfa.h | 2 +- util/lexgen/re2nfa.cpp | 2 +- util/lexgen/re2nfa.h | 2 +- util/lexgen/tests/tst_lexgen.cpp | 2 +- util/lexgen/tokenizer.cpp | 2 +- util/local_database/cldr2qlocalexml.py | 2 +- util/local_database/dateconverter.py | 2 +- util/local_database/enumdata.py | 2 +- util/local_database/qlocalexml2cpp.py | 2 +- util/local_database/testlocales/localemodel.cpp | 2 +- util/local_database/testlocales/localemodel.h | 2 +- util/local_database/testlocales/localewidget.cpp | 2 +- util/local_database/testlocales/localewidget.h | 2 +- util/local_database/testlocales/main.cpp | 2 +- util/local_database/xpathlite.py | 2 +- util/plugintest/main.cpp | 2 +- util/s60pixelmetrics/bld.inf | 2 +- util/s60pixelmetrics/pixel_metrics.cpp | 2 +- util/s60pixelmetrics/pixel_metrics.h | 2 +- util/s60pixelmetrics/pm_mapper.hrh | 2 +- util/s60pixelmetrics/pm_mapper.mmp | 2 +- util/s60pixelmetrics/pm_mapper.pkg | 2 +- util/s60pixelmetrics/pm_mapper.rss | 2 +- util/s60pixelmetrics/pm_mapper_reg.rss | 2 +- util/s60pixelmetrics/pm_mapperapp.cpp | 2 +- util/s60pixelmetrics/pm_mapperapp.h | 2 +- util/s60pixelmetrics/pm_mapperview.cpp | 2 +- util/s60pixelmetrics/pm_mapperview.h | 2 +- util/s60theme/main.cpp | 2 +- util/s60theme/s60themeconvert.cpp | 2 +- util/s60theme/s60themeconvert.h | 2 +- util/scripts/make_qfeatures_dot_h | 4 ++-- util/unicode/codecs/big5/main.cpp | 2 +- util/unicode/main.cpp | 4 ++-- util/unicode/writingSystems.sh | 2 +- util/xkbdatagen/main.cpp | 4 ++-- 5517 files changed, 5534 insertions(+), 5534 deletions(-) diff --git a/LICENSE.LGPL b/LICENSE.LGPL index a0e8eb8545..a32ac8471b 100644 --- a/LICENSE.LGPL +++ b/LICENSE.LGPL @@ -1,6 +1,6 @@ GNU LESSER GENERAL PUBLIC LICENSE - The Qt GUI Toolkit is Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). + The Qt GUI Toolkit is Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). Contact: Nokia Corporation (qt-info@nokia.com) You may use, distribute and copy the Qt GUI Toolkit under the terms of diff --git a/bin/createpackage.bat b/bin/createpackage.bat index f86cec8758..cd0480dd39 100755 --- a/bin/createpackage.bat +++ b/bin/createpackage.bat @@ -1,6 +1,6 @@ ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :: -:: Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +:: Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). :: All rights reserved. :: Contact: Nokia Corporation (qt-info@nokia.com) :: diff --git a/bin/createpackage.pl b/bin/createpackage.pl index 3d676816b1..c723e6574b 100755 --- a/bin/createpackage.pl +++ b/bin/createpackage.pl @@ -1,7 +1,7 @@ #!/usr/bin/perl ############################################################################# ## -## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ## All rights reserved. ## Contact: Nokia Corporation (qt-info@nokia.com) ## diff --git a/bin/elf2e32_qtwrapper.pl b/bin/elf2e32_qtwrapper.pl index 54d7bacdff..e3e1cb1802 100755 --- a/bin/elf2e32_qtwrapper.pl +++ b/bin/elf2e32_qtwrapper.pl @@ -1,7 +1,7 @@ #!/usr/bin/perl -w ############################################################################# ## -## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ## All rights reserved. ## Contact: Nokia Corporation (qt-info@nokia.com) ## diff --git a/bin/findtr b/bin/findtr index 1263da1914..b72efcbda8 100755 --- a/bin/findtr +++ b/bin/findtr @@ -2,7 +2,7 @@ # vi:wrap: ############################################################################# ## -## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ## All rights reserved. ## Contact: Nokia Corporation (qt-info@nokia.com) ## diff --git a/bin/fixqt4headers.pl b/bin/fixqt4headers.pl index 3c7dd867ba..597f785367 100755 --- a/bin/fixqt4headers.pl +++ b/bin/fixqt4headers.pl @@ -1,7 +1,7 @@ #!/usr/bin/env perl ############################################################################# ## -## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ## All rights reserved. ## Contact: Nokia Corporation (qt-info@nokia.com) ## diff --git a/bin/patch_capabilities.pl b/bin/patch_capabilities.pl index 0ba8bc5463..3afbba1050 100755 --- a/bin/patch_capabilities.pl +++ b/bin/patch_capabilities.pl @@ -1,7 +1,7 @@ #!/usr/bin/perl ############################################################################# ## -## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ## All rights reserved. ## Contact: Nokia Corporation (qt-info@nokia.com) ## diff --git a/bin/qtmodule-configtests b/bin/qtmodule-configtests index 1c65e51279..9640869fb8 100755 --- a/bin/qtmodule-configtests +++ b/bin/qtmodule-configtests @@ -1,7 +1,7 @@ #!/usr/bin/perl ############################################################################# ## -## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ## All rights reserved. ## Contact: Nokia Corporation (qt-info@nokia.com) ## diff --git a/bin/setcepaths.bat b/bin/setcepaths.bat index 7a469c4328..4c6a7e27a0 100755 --- a/bin/setcepaths.bat +++ b/bin/setcepaths.bat @@ -1,6 +1,6 @@ ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :: -:: Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +:: Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). :: All rights reserved. :: Contact: Nokia Corporation (qt-info@nokia.com) :: diff --git a/bin/syncqt b/bin/syncqt index 34d518d7a2..63dfba3b42 100755 --- a/bin/syncqt +++ b/bin/syncqt @@ -1,7 +1,7 @@ #!/usr/bin/perl -w ############################################################################# ## -## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ## All rights reserved. ## Contact: Nokia Corporation (qt-info@nokia.com) ## diff --git a/bin/syncqt.bat b/bin/syncqt.bat index 86566ecb79..6a39f578da 100755 --- a/bin/syncqt.bat +++ b/bin/syncqt.bat @@ -1,6 +1,6 @@ ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :: -:: Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +:: Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). :: All rights reserved. :: Contact: Nokia Corporation (qt-info@nokia.com) :: diff --git a/config.tests/mac/coreservices/coreservices.mm b/config.tests/mac/coreservices/coreservices.mm index 9fc452980f..b7de1f23e6 100644 --- a/config.tests/mac/coreservices/coreservices.mm +++ b/config.tests/mac/coreservices/coreservices.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/mac/corewlan/corewlantest.mm b/config.tests/mac/corewlan/corewlantest.mm index 06b7db3a0c..76eeb3a4d0 100644 --- a/config.tests/mac/corewlan/corewlantest.mm +++ b/config.tests/mac/corewlan/corewlantest.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/mac/crc/main.cpp b/config.tests/mac/crc/main.cpp index 12d2811b49..5bdb22aebd 100644 --- a/config.tests/mac/crc/main.cpp +++ b/config.tests/mac/crc/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/mac/xcodeversion.cpp b/config.tests/mac/xcodeversion.cpp index df208e338c..9fd292d9ec 100644 --- a/config.tests/mac/xcodeversion.cpp +++ b/config.tests/mac/xcodeversion.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/qpa/wayland/wayland.cpp b/config.tests/qpa/wayland/wayland.cpp index d0ecdac472..2bd7d00283 100644 --- a/config.tests/qpa/wayland/wayland.cpp +++ b/config.tests/qpa/wayland/wayland.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/qpa/xcb-poll-for-queued-event/xcb-poll-for-queued-event.cpp b/config.tests/qpa/xcb-poll-for-queued-event/xcb-poll-for-queued-event.cpp index 8f93d64af5..cc78fdece5 100644 --- a/config.tests/qpa/xcb-poll-for-queued-event/xcb-poll-for-queued-event.cpp +++ b/config.tests/qpa/xcb-poll-for-queued-event/xcb-poll-for-queued-event.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/qpa/xcb-render/xcb-render.cpp b/config.tests/qpa/xcb-render/xcb-render.cpp index 9e6c9c847c..c60de7366c 100644 --- a/config.tests/qpa/xcb-render/xcb-render.cpp +++ b/config.tests/qpa/xcb-render/xcb-render.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/qpa/xcb-xlib/xcb-xlib.cpp b/config.tests/qpa/xcb-xlib/xcb-xlib.cpp index ede80d6360..a6f5ef8e3e 100644 --- a/config.tests/qpa/xcb-xlib/xcb-xlib.cpp +++ b/config.tests/qpa/xcb-xlib/xcb-xlib.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/qpa/xcb/xcb.cpp b/config.tests/qpa/xcb/xcb.cpp index 50fb86fc62..d9d8aed832 100644 --- a/config.tests/qpa/xcb/xcb.cpp +++ b/config.tests/qpa/xcb/xcb.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/qws/ahi/ahi.cpp b/config.tests/qws/ahi/ahi.cpp index f9e3b1af86..7033bef14e 100644 --- a/config.tests/qws/ahi/ahi.cpp +++ b/config.tests/qws/ahi/ahi.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/qws/directfb/directfb.cpp b/config.tests/qws/directfb/directfb.cpp index c0acff1463..f1ea238487 100644 --- a/config.tests/qws/directfb/directfb.cpp +++ b/config.tests/qws/directfb/directfb.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/qws/sound/sound.cpp b/config.tests/qws/sound/sound.cpp index 7b5b47de8c..70ef3faf4f 100644 --- a/config.tests/qws/sound/sound.cpp +++ b/config.tests/qws/sound/sound.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/qws/svgalib/svgalib.cpp b/config.tests/qws/svgalib/svgalib.cpp index dc6b1ba1d2..326129eecf 100644 --- a/config.tests/qws/svgalib/svgalib.cpp +++ b/config.tests/qws/svgalib/svgalib.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/3dnow/3dnow.cpp b/config.tests/unix/3dnow/3dnow.cpp index 1c158e3505..d34633cc1f 100644 --- a/config.tests/unix/3dnow/3dnow.cpp +++ b/config.tests/unix/3dnow/3dnow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/alsa/alsatest.cpp b/config.tests/unix/alsa/alsatest.cpp index d5a99b705a..a1527539a8 100644 --- a/config.tests/unix/alsa/alsatest.cpp +++ b/config.tests/unix/alsa/alsatest.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/avx/avx.cpp b/config.tests/unix/avx/avx.cpp index 808533263c..746b36d0e2 100644 --- a/config.tests/unix/avx/avx.cpp +++ b/config.tests/unix/avx/avx.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/clock-gettime/clock-gettime.cpp b/config.tests/unix/clock-gettime/clock-gettime.cpp index f5f561bb7d..0b1d544d5d 100644 --- a/config.tests/unix/clock-gettime/clock-gettime.cpp +++ b/config.tests/unix/clock-gettime/clock-gettime.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/clock-monotonic/clock-monotonic.cpp b/config.tests/unix/clock-monotonic/clock-monotonic.cpp index ecc18d4574..d51a195571 100644 --- a/config.tests/unix/clock-monotonic/clock-monotonic.cpp +++ b/config.tests/unix/clock-monotonic/clock-monotonic.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/cups/cups.cpp b/config.tests/unix/cups/cups.cpp index 832b050599..0c56312196 100644 --- a/config.tests/unix/cups/cups.cpp +++ b/config.tests/unix/cups/cups.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/db2/db2.cpp b/config.tests/unix/db2/db2.cpp index bf1a881e48..5e7aa9f52d 100644 --- a/config.tests/unix/db2/db2.cpp +++ b/config.tests/unix/db2/db2.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/dbus/dbus.cpp b/config.tests/unix/dbus/dbus.cpp index 2b9c2f701f..2606b016f4 100644 --- a/config.tests/unix/dbus/dbus.cpp +++ b/config.tests/unix/dbus/dbus.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/doubleformat/doubleformattest.cpp b/config.tests/unix/doubleformat/doubleformattest.cpp index 7c75331254..7ca28166aa 100644 --- a/config.tests/unix/doubleformat/doubleformattest.cpp +++ b/config.tests/unix/doubleformat/doubleformattest.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/egl/egl.cpp b/config.tests/unix/egl/egl.cpp index 3387a39304..b2bb90d7c0 100644 --- a/config.tests/unix/egl/egl.cpp +++ b/config.tests/unix/egl/egl.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/egl4gles1/egl4gles1.cpp b/config.tests/unix/egl4gles1/egl4gles1.cpp index 1d6398a4b7..1b24a97e3a 100644 --- a/config.tests/unix/egl4gles1/egl4gles1.cpp +++ b/config.tests/unix/egl4gles1/egl4gles1.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/endian/endiantest.cpp b/config.tests/unix/endian/endiantest.cpp index 71781a1f2c..36e662b6f6 100644 --- a/config.tests/unix/endian/endiantest.cpp +++ b/config.tests/unix/endian/endiantest.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/floatmath/floatmath.cpp b/config.tests/unix/floatmath/floatmath.cpp index 8e87e7987a..b8521bac4e 100644 --- a/config.tests/unix/floatmath/floatmath.cpp +++ b/config.tests/unix/floatmath/floatmath.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/freetype/freetype.cpp b/config.tests/unix/freetype/freetype.cpp index 7f76b1f190..4549dfee9f 100644 --- a/config.tests/unix/freetype/freetype.cpp +++ b/config.tests/unix/freetype/freetype.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/getaddrinfo/getaddrinfotest.cpp b/config.tests/unix/getaddrinfo/getaddrinfotest.cpp index 9f82e647af..b23983af6c 100644 --- a/config.tests/unix/getaddrinfo/getaddrinfotest.cpp +++ b/config.tests/unix/getaddrinfo/getaddrinfotest.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/getifaddrs/getifaddrs.cpp b/config.tests/unix/getifaddrs/getifaddrs.cpp index 8d944a52c4..b0ea6edb1a 100644 --- a/config.tests/unix/getifaddrs/getifaddrs.cpp +++ b/config.tests/unix/getifaddrs/getifaddrs.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/glib/glib.cpp b/config.tests/unix/glib/glib.cpp index b8ddcad955..a08bae90c6 100644 --- a/config.tests/unix/glib/glib.cpp +++ b/config.tests/unix/glib/glib.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/gnu-libiconv/gnu-libiconv.cpp b/config.tests/unix/gnu-libiconv/gnu-libiconv.cpp index 85a2b208b3..e12d87f1a7 100644 --- a/config.tests/unix/gnu-libiconv/gnu-libiconv.cpp +++ b/config.tests/unix/gnu-libiconv/gnu-libiconv.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/gstreamer/gstreamer.cpp b/config.tests/unix/gstreamer/gstreamer.cpp index 4936775369..3414925349 100644 --- a/config.tests/unix/gstreamer/gstreamer.cpp +++ b/config.tests/unix/gstreamer/gstreamer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/ibase/ibase.cpp b/config.tests/unix/ibase/ibase.cpp index 7ca3d05d0b..c51bcd9516 100644 --- a/config.tests/unix/ibase/ibase.cpp +++ b/config.tests/unix/ibase/ibase.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/icd/icd.cpp b/config.tests/unix/icd/icd.cpp index 4582ba3629..de550be0b3 100644 --- a/config.tests/unix/icd/icd.cpp +++ b/config.tests/unix/icd/icd.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/iconv/iconv.cpp b/config.tests/unix/iconv/iconv.cpp index 6353a43cee..f78b3c3c16 100644 --- a/config.tests/unix/iconv/iconv.cpp +++ b/config.tests/unix/iconv/iconv.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/icu/icu.cpp b/config.tests/unix/icu/icu.cpp index 657d86065b..d36b99b106 100644 --- a/config.tests/unix/icu/icu.cpp +++ b/config.tests/unix/icu/icu.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/inotify/inotifytest.cpp b/config.tests/unix/inotify/inotifytest.cpp index 1e7c6005b3..9e2b79c614 100644 --- a/config.tests/unix/inotify/inotifytest.cpp +++ b/config.tests/unix/inotify/inotifytest.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/iodbc/iodbc.cpp b/config.tests/unix/iodbc/iodbc.cpp index fe27c9a09b..5c3b2a160c 100644 --- a/config.tests/unix/iodbc/iodbc.cpp +++ b/config.tests/unix/iodbc/iodbc.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/ipv6ifname/ipv6ifname.cpp b/config.tests/unix/ipv6ifname/ipv6ifname.cpp index 4f7d66fd77..fd215d7ff9 100644 --- a/config.tests/unix/ipv6ifname/ipv6ifname.cpp +++ b/config.tests/unix/ipv6ifname/ipv6ifname.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/iwmmxt/iwmmxt.cpp b/config.tests/unix/iwmmxt/iwmmxt.cpp index 83be5be27e..016f7046f3 100644 --- a/config.tests/unix/iwmmxt/iwmmxt.cpp +++ b/config.tests/unix/iwmmxt/iwmmxt.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/javascriptcore-jit/hwcap_test.cpp b/config.tests/unix/javascriptcore-jit/hwcap_test.cpp index 9ae5e6cbc9..452a952325 100644 --- a/config.tests/unix/javascriptcore-jit/hwcap_test.cpp +++ b/config.tests/unix/javascriptcore-jit/hwcap_test.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/libjpeg/libjpeg.cpp b/config.tests/unix/libjpeg/libjpeg.cpp index aaee287f92..ed67263b25 100644 --- a/config.tests/unix/libjpeg/libjpeg.cpp +++ b/config.tests/unix/libjpeg/libjpeg.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/libmng/libmng.cpp b/config.tests/unix/libmng/libmng.cpp index ee41aa4013..325077709f 100644 --- a/config.tests/unix/libmng/libmng.cpp +++ b/config.tests/unix/libmng/libmng.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/libpng/libpng.cpp b/config.tests/unix/libpng/libpng.cpp index cd05713853..3a8aa8c675 100644 --- a/config.tests/unix/libpng/libpng.cpp +++ b/config.tests/unix/libpng/libpng.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/libtiff/libtiff.cpp b/config.tests/unix/libtiff/libtiff.cpp index 21a9cbc7c6..11c4f11eb8 100644 --- a/config.tests/unix/libtiff/libtiff.cpp +++ b/config.tests/unix/libtiff/libtiff.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/mmx/mmx.cpp b/config.tests/unix/mmx/mmx.cpp index 771322e934..8a93a5504f 100644 --- a/config.tests/unix/mmx/mmx.cpp +++ b/config.tests/unix/mmx/mmx.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/mremap/mremap.cpp b/config.tests/unix/mremap/mremap.cpp index 580cce9a43..a4181271c6 100644 --- a/config.tests/unix/mremap/mremap.cpp +++ b/config.tests/unix/mremap/mremap.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/mysql/mysql.cpp b/config.tests/unix/mysql/mysql.cpp index a4a49f1db8..a96bb2ec86 100644 --- a/config.tests/unix/mysql/mysql.cpp +++ b/config.tests/unix/mysql/mysql.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/neon/neon.cpp b/config.tests/unix/neon/neon.cpp index 9c154e19c1..b841d9f5b5 100644 --- a/config.tests/unix/neon/neon.cpp +++ b/config.tests/unix/neon/neon.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/nis/nis.cpp b/config.tests/unix/nis/nis.cpp index 1d260cf644..8957342e40 100644 --- a/config.tests/unix/nis/nis.cpp +++ b/config.tests/unix/nis/nis.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/oci/oci.cpp b/config.tests/unix/oci/oci.cpp index d2cfd06556..6986835a65 100644 --- a/config.tests/unix/oci/oci.cpp +++ b/config.tests/unix/oci/oci.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/odbc/odbc.cpp b/config.tests/unix/odbc/odbc.cpp index fd01e35b79..f2c906ce86 100644 --- a/config.tests/unix/odbc/odbc.cpp +++ b/config.tests/unix/odbc/odbc.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/opengldesktop/opengldesktop.cpp b/config.tests/unix/opengldesktop/opengldesktop.cpp index eea16b8fbd..f3837b4d36 100644 --- a/config.tests/unix/opengldesktop/opengldesktop.cpp +++ b/config.tests/unix/opengldesktop/opengldesktop.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/opengles1/opengles1.cpp b/config.tests/unix/opengles1/opengles1.cpp index 837bed470c..583a4ac79d 100644 --- a/config.tests/unix/opengles1/opengles1.cpp +++ b/config.tests/unix/opengles1/opengles1.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/opengles2/opengles2.cpp b/config.tests/unix/opengles2/opengles2.cpp index 89c1e2d64b..8add0f4f22 100644 --- a/config.tests/unix/opengles2/opengles2.cpp +++ b/config.tests/unix/opengles2/opengles2.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/openssl/openssl.cpp b/config.tests/unix/openssl/openssl.cpp index 17e5b13de8..7beb9c49b7 100644 --- a/config.tests/unix/openssl/openssl.cpp +++ b/config.tests/unix/openssl/openssl.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/openvg/openvg.cpp b/config.tests/unix/openvg/openvg.cpp index 73783c35c1..4f1dbe4339 100644 --- a/config.tests/unix/openvg/openvg.cpp +++ b/config.tests/unix/openvg/openvg.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/psql/psql.cpp b/config.tests/unix/psql/psql.cpp index 31314ab081..fce6e79ca6 100644 --- a/config.tests/unix/psql/psql.cpp +++ b/config.tests/unix/psql/psql.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/ptrsize/ptrsizetest.cpp b/config.tests/unix/ptrsize/ptrsizetest.cpp index f11598f1b6..3b380808af 100644 --- a/config.tests/unix/ptrsize/ptrsizetest.cpp +++ b/config.tests/unix/ptrsize/ptrsizetest.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/pulseaudio/pulseaudio.cpp b/config.tests/unix/pulseaudio/pulseaudio.cpp index c89e200f83..cef4cd93ac 100644 --- a/config.tests/unix/pulseaudio/pulseaudio.cpp +++ b/config.tests/unix/pulseaudio/pulseaudio.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/shivavg/shivavg.cpp b/config.tests/unix/shivavg/shivavg.cpp index 2b59687228..041696af2b 100644 --- a/config.tests/unix/shivavg/shivavg.cpp +++ b/config.tests/unix/shivavg/shivavg.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/sqlite/sqlite.cpp b/config.tests/unix/sqlite/sqlite.cpp index 5ed2d7e2dd..176cb76288 100644 --- a/config.tests/unix/sqlite/sqlite.cpp +++ b/config.tests/unix/sqlite/sqlite.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/sqlite2/sqlite2.cpp b/config.tests/unix/sqlite2/sqlite2.cpp index 45ca5c0e2b..0ca6a0a0d0 100644 --- a/config.tests/unix/sqlite2/sqlite2.cpp +++ b/config.tests/unix/sqlite2/sqlite2.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/sse/sse.cpp b/config.tests/unix/sse/sse.cpp index 9b04f447a6..4a7ba8655c 100644 --- a/config.tests/unix/sse/sse.cpp +++ b/config.tests/unix/sse/sse.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/sse2/sse2.cpp b/config.tests/unix/sse2/sse2.cpp index a10ec8770f..3fbb41af67 100644 --- a/config.tests/unix/sse2/sse2.cpp +++ b/config.tests/unix/sse2/sse2.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/sse3/sse3.cpp b/config.tests/unix/sse3/sse3.cpp index 45ffdf8716..a70557b238 100644 --- a/config.tests/unix/sse3/sse3.cpp +++ b/config.tests/unix/sse3/sse3.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/sse4_1/sse4_1.cpp b/config.tests/unix/sse4_1/sse4_1.cpp index f192fe72da..2bb27d078a 100644 --- a/config.tests/unix/sse4_1/sse4_1.cpp +++ b/config.tests/unix/sse4_1/sse4_1.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/sse4_2/sse4_2.cpp b/config.tests/unix/sse4_2/sse4_2.cpp index e7ece6e209..2c49ae89f9 100644 --- a/config.tests/unix/sse4_2/sse4_2.cpp +++ b/config.tests/unix/sse4_2/sse4_2.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/ssse3/ssse3.cpp b/config.tests/unix/ssse3/ssse3.cpp index 653a2d75bc..2d0fcb9a4c 100644 --- a/config.tests/unix/ssse3/ssse3.cpp +++ b/config.tests/unix/ssse3/ssse3.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/stdint/main.cpp b/config.tests/unix/stdint/main.cpp index 42cd28d275..f8195fdd06 100644 --- a/config.tests/unix/stdint/main.cpp +++ b/config.tests/unix/stdint/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/stl/stltest.cpp b/config.tests/unix/stl/stltest.cpp index b811363c0d..50a55599de 100644 --- a/config.tests/unix/stl/stltest.cpp +++ b/config.tests/unix/stl/stltest.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/tds/tds.cpp b/config.tests/unix/tds/tds.cpp index aa1e42817e..051690ccc8 100644 --- a/config.tests/unix/tds/tds.cpp +++ b/config.tests/unix/tds/tds.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/tslib/tslib.cpp b/config.tests/unix/tslib/tslib.cpp index 6e3682f499..5726b903e8 100644 --- a/config.tests/unix/tslib/tslib.cpp +++ b/config.tests/unix/tslib/tslib.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/unix/zlib/zlib.cpp b/config.tests/unix/zlib/zlib.cpp index 4da3ae637f..40c514eb72 100644 --- a/config.tests/unix/zlib/zlib.cpp +++ b/config.tests/unix/zlib/zlib.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/x11/fontconfig/fontconfig.cpp b/config.tests/x11/fontconfig/fontconfig.cpp index 7894fd54aa..d0bdb2c9bd 100644 --- a/config.tests/x11/fontconfig/fontconfig.cpp +++ b/config.tests/x11/fontconfig/fontconfig.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/x11/glxfbconfig/glxfbconfig.cpp b/config.tests/x11/glxfbconfig/glxfbconfig.cpp index 3a1ee6bacb..e4f5876a2a 100644 --- a/config.tests/x11/glxfbconfig/glxfbconfig.cpp +++ b/config.tests/x11/glxfbconfig/glxfbconfig.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/x11/mitshm/mitshm.cpp b/config.tests/x11/mitshm/mitshm.cpp index c3ccf89e4f..66a95ff59c 100644 --- a/config.tests/x11/mitshm/mitshm.cpp +++ b/config.tests/x11/mitshm/mitshm.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/x11/notype/notypetest.cpp b/config.tests/x11/notype/notypetest.cpp index 26b0c14056..8415d933ff 100644 --- a/config.tests/x11/notype/notypetest.cpp +++ b/config.tests/x11/notype/notypetest.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/x11/opengl/opengl.cpp b/config.tests/x11/opengl/opengl.cpp index ffcaff3674..ae46714205 100644 --- a/config.tests/x11/opengl/opengl.cpp +++ b/config.tests/x11/opengl/opengl.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/x11/sm/sm.cpp b/config.tests/x11/sm/sm.cpp index e8614e294a..b7ba9f0303 100644 --- a/config.tests/x11/sm/sm.cpp +++ b/config.tests/x11/sm/sm.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/x11/xcursor/xcursor.cpp b/config.tests/x11/xcursor/xcursor.cpp index 10fb4b26f1..d09dc77833 100644 --- a/config.tests/x11/xcursor/xcursor.cpp +++ b/config.tests/x11/xcursor/xcursor.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/x11/xfixes/xfixes.cpp b/config.tests/x11/xfixes/xfixes.cpp index b57e32a10c..546f82cad7 100644 --- a/config.tests/x11/xfixes/xfixes.cpp +++ b/config.tests/x11/xfixes/xfixes.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/x11/xinerama/xinerama.cpp b/config.tests/x11/xinerama/xinerama.cpp index e37a783c86..568bd98695 100644 --- a/config.tests/x11/xinerama/xinerama.cpp +++ b/config.tests/x11/xinerama/xinerama.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/x11/xinput/xinput.cpp b/config.tests/x11/xinput/xinput.cpp index 4dbff23b16..5babd22f29 100644 --- a/config.tests/x11/xinput/xinput.cpp +++ b/config.tests/x11/xinput/xinput.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/x11/xinput2/xinput2.cpp b/config.tests/x11/xinput2/xinput2.cpp index 14a51f4d28..a8adc58501 100644 --- a/config.tests/x11/xinput2/xinput2.cpp +++ b/config.tests/x11/xinput2/xinput2.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/x11/xkb/xkb.cpp b/config.tests/x11/xkb/xkb.cpp index 4a46affea8..c4315d7da1 100644 --- a/config.tests/x11/xkb/xkb.cpp +++ b/config.tests/x11/xkb/xkb.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/x11/xlib/xlib.cpp b/config.tests/x11/xlib/xlib.cpp index 9004146a72..12b384b84c 100644 --- a/config.tests/x11/xlib/xlib.cpp +++ b/config.tests/x11/xlib/xlib.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/x11/xrandr/xrandr.cpp b/config.tests/x11/xrandr/xrandr.cpp index 94fc35e2fe..e982ed81ba 100644 --- a/config.tests/x11/xrandr/xrandr.cpp +++ b/config.tests/x11/xrandr/xrandr.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/x11/xrender/xrender.cpp b/config.tests/x11/xrender/xrender.cpp index 4fdc2df4d4..e5f7ada728 100644 --- a/config.tests/x11/xrender/xrender.cpp +++ b/config.tests/x11/xrender/xrender.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/x11/xshape/xshape.cpp b/config.tests/x11/xshape/xshape.cpp index 16e31604f8..8d8dd27983 100644 --- a/config.tests/x11/xshape/xshape.cpp +++ b/config.tests/x11/xshape/xshape.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/x11/xsync/xsync.cpp b/config.tests/x11/xsync/xsync.cpp index 37da06830f..30c9408bf7 100644 --- a/config.tests/x11/xsync/xsync.cpp +++ b/config.tests/x11/xsync/xsync.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/config.tests/x11/xvideo/xvideo.cpp b/config.tests/x11/xvideo/xvideo.cpp index e751755d04..0a29b83598 100644 --- a/config.tests/x11/xvideo/xvideo.cpp +++ b/config.tests/x11/xvideo/xvideo.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/configure b/configure index a5e1f395ce..e47fcedb4f 100755 --- a/configure +++ b/configure @@ -1,7 +1,7 @@ #!/bin/sh ############################################################################# ## -## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ## All rights reserved. ## Contact: Nokia Corporation (qt-info@nokia.com) ## diff --git a/doc/src/core/containers.qdoc b/doc/src/core/containers.qdoc index 8cae97c972..ca9bcc6b47 100644 --- a/doc/src/core/containers.qdoc +++ b/doc/src/core/containers.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/core/implicit-sharing.qdoc b/doc/src/core/implicit-sharing.qdoc index 9e839edb24..e745d127d5 100644 --- a/doc/src/core/implicit-sharing.qdoc +++ b/doc/src/core/implicit-sharing.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/core/objectmodel/metaobjects.qdoc b/doc/src/core/objectmodel/metaobjects.qdoc index 597210e789..0a4756f899 100644 --- a/doc/src/core/objectmodel/metaobjects.qdoc +++ b/doc/src/core/objectmodel/metaobjects.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/core/objectmodel/object.qdoc b/doc/src/core/objectmodel/object.qdoc index d843f834a5..535c4cc8f2 100644 --- a/doc/src/core/objectmodel/object.qdoc +++ b/doc/src/core/objectmodel/object.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/core/objectmodel/objecttrees.qdoc b/doc/src/core/objectmodel/objecttrees.qdoc index 46921106b6..d8f9501748 100644 --- a/doc/src/core/objectmodel/objecttrees.qdoc +++ b/doc/src/core/objectmodel/objecttrees.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/core/objectmodel/properties.qdoc b/doc/src/core/objectmodel/properties.qdoc index befbde190b..0350f19be4 100644 --- a/doc/src/core/objectmodel/properties.qdoc +++ b/doc/src/core/objectmodel/properties.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/core/objectmodel/signalsandslots.qdoc b/doc/src/core/objectmodel/signalsandslots.qdoc index 821147fcfd..f976e74c7d 100644 --- a/doc/src/core/objectmodel/signalsandslots.qdoc +++ b/doc/src/core/objectmodel/signalsandslots.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/core/qtcore.qdoc b/doc/src/core/qtcore.qdoc index 3fdb64b02d..0d1654c9f0 100644 --- a/doc/src/core/qtcore.qdoc +++ b/doc/src/core/qtcore.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/core/threads-basics.qdoc b/doc/src/core/threads-basics.qdoc index 09707f5dfc..547c7fc50c 100644 --- a/doc/src/core/threads-basics.qdoc +++ b/doc/src/core/threads-basics.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/core/threads.qdoc b/doc/src/core/threads.qdoc index cab50c6fe2..2ed0330bdd 100644 --- a/doc/src/core/threads.qdoc +++ b/doc/src/core/threads.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/dbus/qtdbus.qdoc b/doc/src/dbus/qtdbus.qdoc index 4de1550f18..37f4a40853 100644 --- a/doc/src/dbus/qtdbus.qdoc +++ b/doc/src/dbus/qtdbus.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/2dpainting.qdoc b/doc/src/examples/2dpainting.qdoc index c4a2695ad3..2a29de30b7 100644 --- a/doc/src/examples/2dpainting.qdoc +++ b/doc/src/examples/2dpainting.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/addressbook.qdoc b/doc/src/examples/addressbook.qdoc index 114c22b3d7..b188915566 100644 --- a/doc/src/examples/addressbook.qdoc +++ b/doc/src/examples/addressbook.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/affine.qdoc b/doc/src/examples/affine.qdoc index 2d70fa8951..b817e8a980 100644 --- a/doc/src/examples/affine.qdoc +++ b/doc/src/examples/affine.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/analogclock.qdoc b/doc/src/examples/analogclock.qdoc index 18dc47950f..39d60d5c68 100644 --- a/doc/src/examples/analogclock.qdoc +++ b/doc/src/examples/analogclock.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/animatedtiles.qdoc b/doc/src/examples/animatedtiles.qdoc index f56282967c..247a76c764 100644 --- a/doc/src/examples/animatedtiles.qdoc +++ b/doc/src/examples/animatedtiles.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/appchooser.qdoc b/doc/src/examples/appchooser.qdoc index 63cbb0e9dc..f1c15057d4 100644 --- a/doc/src/examples/appchooser.qdoc +++ b/doc/src/examples/appchooser.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/application.qdoc b/doc/src/examples/application.qdoc index e4fceecdf5..d6c8b62a88 100644 --- a/doc/src/examples/application.qdoc +++ b/doc/src/examples/application.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/applicationicon.qdoc b/doc/src/examples/applicationicon.qdoc index 87942e5a86..3aa119c6d2 100644 --- a/doc/src/examples/applicationicon.qdoc +++ b/doc/src/examples/applicationicon.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/arrowpad.qdoc b/doc/src/examples/arrowpad.qdoc index f3ba3325dd..e9c62d144e 100644 --- a/doc/src/examples/arrowpad.qdoc +++ b/doc/src/examples/arrowpad.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/basicdrawing.qdoc b/doc/src/examples/basicdrawing.qdoc index fbc34e6c54..e45cc36154 100644 --- a/doc/src/examples/basicdrawing.qdoc +++ b/doc/src/examples/basicdrawing.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/basicgraphicslayouts.qdoc b/doc/src/examples/basicgraphicslayouts.qdoc index 2742870431..730823806b 100644 --- a/doc/src/examples/basicgraphicslayouts.qdoc +++ b/doc/src/examples/basicgraphicslayouts.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/basiclayouts.qdoc b/doc/src/examples/basiclayouts.qdoc index a8c64f0519..c96bf5c85c 100644 --- a/doc/src/examples/basiclayouts.qdoc +++ b/doc/src/examples/basiclayouts.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/basicsortfiltermodel.qdoc b/doc/src/examples/basicsortfiltermodel.qdoc index dbe9f02a40..e3d7c51ef9 100644 --- a/doc/src/examples/basicsortfiltermodel.qdoc +++ b/doc/src/examples/basicsortfiltermodel.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/bearermonitor.qdoc b/doc/src/examples/bearermonitor.qdoc index a638d1272c..f44914919c 100644 --- a/doc/src/examples/bearermonitor.qdoc +++ b/doc/src/examples/bearermonitor.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/blockingfortuneclient.qdoc b/doc/src/examples/blockingfortuneclient.qdoc index d35ed4c339..f3f6f40bcd 100644 --- a/doc/src/examples/blockingfortuneclient.qdoc +++ b/doc/src/examples/blockingfortuneclient.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/blurpicker.qdoc b/doc/src/examples/blurpicker.qdoc index 3a6d4331a7..6e15a92eaa 100644 --- a/doc/src/examples/blurpicker.qdoc +++ b/doc/src/examples/blurpicker.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/books.qdoc b/doc/src/examples/books.qdoc index 9fa7fdfc8c..294ce7850c 100644 --- a/doc/src/examples/books.qdoc +++ b/doc/src/examples/books.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/borderlayout.qdoc b/doc/src/examples/borderlayout.qdoc index 94cd3d9ef3..a3580d6698 100644 --- a/doc/src/examples/borderlayout.qdoc +++ b/doc/src/examples/borderlayout.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/boxes.qdoc b/doc/src/examples/boxes.qdoc index 92db09d3d7..8ca40afcf9 100644 --- a/doc/src/examples/boxes.qdoc +++ b/doc/src/examples/boxes.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/broadcastreceiver.qdoc b/doc/src/examples/broadcastreceiver.qdoc index 409b491dd8..95b76cf181 100644 --- a/doc/src/examples/broadcastreceiver.qdoc +++ b/doc/src/examples/broadcastreceiver.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/broadcastsender.qdoc b/doc/src/examples/broadcastsender.qdoc index 2cb0a1324d..18afa73de9 100644 --- a/doc/src/examples/broadcastsender.qdoc +++ b/doc/src/examples/broadcastsender.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/cachedtable.qdoc b/doc/src/examples/cachedtable.qdoc index 5a20329251..090fd74bfc 100644 --- a/doc/src/examples/cachedtable.qdoc +++ b/doc/src/examples/cachedtable.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/calculator.qdoc b/doc/src/examples/calculator.qdoc index c7dc0139b7..0db17caa41 100644 --- a/doc/src/examples/calculator.qdoc +++ b/doc/src/examples/calculator.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/calendar.qdoc b/doc/src/examples/calendar.qdoc index 32bc547ebe..a4de05b6a2 100644 --- a/doc/src/examples/calendar.qdoc +++ b/doc/src/examples/calendar.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/calendarwidget.qdoc b/doc/src/examples/calendarwidget.qdoc index f72082a1bf..e8c66a2bb2 100644 --- a/doc/src/examples/calendarwidget.qdoc +++ b/doc/src/examples/calendarwidget.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/charactermap.qdoc b/doc/src/examples/charactermap.qdoc index 285d6a40cb..05e0e4f516 100644 --- a/doc/src/examples/charactermap.qdoc +++ b/doc/src/examples/charactermap.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/chart.qdoc b/doc/src/examples/chart.qdoc index af82f1bebe..a42514e08f 100644 --- a/doc/src/examples/chart.qdoc +++ b/doc/src/examples/chart.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/chip.qdoc b/doc/src/examples/chip.qdoc index 07b12f9960..37a8c63c01 100644 --- a/doc/src/examples/chip.qdoc +++ b/doc/src/examples/chip.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/classwizard.qdoc b/doc/src/examples/classwizard.qdoc index 53d09361f9..b228fde411 100644 --- a/doc/src/examples/classwizard.qdoc +++ b/doc/src/examples/classwizard.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/codecs.qdoc b/doc/src/examples/codecs.qdoc index 91fb6a2c86..44e69b6e82 100644 --- a/doc/src/examples/codecs.qdoc +++ b/doc/src/examples/codecs.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/codeeditor.qdoc b/doc/src/examples/codeeditor.qdoc index 435f650e9a..372842fa36 100644 --- a/doc/src/examples/codeeditor.qdoc +++ b/doc/src/examples/codeeditor.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/coloreditorfactory.qdoc b/doc/src/examples/coloreditorfactory.qdoc index 34060bdb90..461508799c 100644 --- a/doc/src/examples/coloreditorfactory.qdoc +++ b/doc/src/examples/coloreditorfactory.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/combowidgetmapper.qdoc b/doc/src/examples/combowidgetmapper.qdoc index e852f5e8f3..9019ba0901 100644 --- a/doc/src/examples/combowidgetmapper.qdoc +++ b/doc/src/examples/combowidgetmapper.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/completer.qdoc b/doc/src/examples/completer.qdoc index d4a4e6d1d9..6a8d19febe 100644 --- a/doc/src/examples/completer.qdoc +++ b/doc/src/examples/completer.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/complexpingpong.qdoc b/doc/src/examples/complexpingpong.qdoc index 677353b8c5..96da41a598 100644 --- a/doc/src/examples/complexpingpong.qdoc +++ b/doc/src/examples/complexpingpong.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/composition.qdoc b/doc/src/examples/composition.qdoc index 53ca3dbf7a..d9cda294d6 100644 --- a/doc/src/examples/composition.qdoc +++ b/doc/src/examples/composition.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/concentriccircles.qdoc b/doc/src/examples/concentriccircles.qdoc index 37c8f834f9..9a33bd62ca 100644 --- a/doc/src/examples/concentriccircles.qdoc +++ b/doc/src/examples/concentriccircles.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/configdialog.qdoc b/doc/src/examples/configdialog.qdoc index 166b25af41..3d419ff3aa 100644 --- a/doc/src/examples/configdialog.qdoc +++ b/doc/src/examples/configdialog.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/contiguouscache.qdoc b/doc/src/examples/contiguouscache.qdoc index d0b39e6d6b..b893bd325f 100644 --- a/doc/src/examples/contiguouscache.qdoc +++ b/doc/src/examples/contiguouscache.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/customcompleter.qdoc b/doc/src/examples/customcompleter.qdoc index f0d5698d02..8c7d23c665 100644 --- a/doc/src/examples/customcompleter.qdoc +++ b/doc/src/examples/customcompleter.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/customsortfiltermodel.qdoc b/doc/src/examples/customsortfiltermodel.qdoc index 8c402ac972..1e3b12b004 100644 --- a/doc/src/examples/customsortfiltermodel.qdoc +++ b/doc/src/examples/customsortfiltermodel.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/customtype.qdoc b/doc/src/examples/customtype.qdoc index b9693543c1..fa0e3b7568 100644 --- a/doc/src/examples/customtype.qdoc +++ b/doc/src/examples/customtype.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/customtypesending.qdoc b/doc/src/examples/customtypesending.qdoc index fc6b7935fd..7598965652 100644 --- a/doc/src/examples/customtypesending.qdoc +++ b/doc/src/examples/customtypesending.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/dbscreen.qdoc b/doc/src/examples/dbscreen.qdoc index 793b5fc28c..43b8926b7f 100644 --- a/doc/src/examples/dbscreen.qdoc +++ b/doc/src/examples/dbscreen.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/dbus-chat.qdoc b/doc/src/examples/dbus-chat.qdoc index a435cc9ebe..08d3f6af1f 100644 --- a/doc/src/examples/dbus-chat.qdoc +++ b/doc/src/examples/dbus-chat.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/deform.qdoc b/doc/src/examples/deform.qdoc index 1a81053248..f3d425392f 100644 --- a/doc/src/examples/deform.qdoc +++ b/doc/src/examples/deform.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/diagramscene.qdoc b/doc/src/examples/diagramscene.qdoc index 7d3c0e6bc3..9cfcedbd62 100644 --- a/doc/src/examples/diagramscene.qdoc +++ b/doc/src/examples/diagramscene.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/digiflip.qdoc b/doc/src/examples/digiflip.qdoc index ae3b18216b..10a09bef06 100644 --- a/doc/src/examples/digiflip.qdoc +++ b/doc/src/examples/digiflip.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/digitalclock.qdoc b/doc/src/examples/digitalclock.qdoc index acee4d65aa..0a3541fbee 100644 --- a/doc/src/examples/digitalclock.qdoc +++ b/doc/src/examples/digitalclock.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/dirview.qdoc b/doc/src/examples/dirview.qdoc index 6d2ce7a372..5cc6e5bd36 100644 --- a/doc/src/examples/dirview.qdoc +++ b/doc/src/examples/dirview.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/dockwidgets.qdoc b/doc/src/examples/dockwidgets.qdoc index b46a286c9e..4862b3a324 100644 --- a/doc/src/examples/dockwidgets.qdoc +++ b/doc/src/examples/dockwidgets.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/dombookmarks.qdoc b/doc/src/examples/dombookmarks.qdoc index 03e3ec6aee..83e66f34c9 100644 --- a/doc/src/examples/dombookmarks.qdoc +++ b/doc/src/examples/dombookmarks.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/dragdroprobot.qdoc b/doc/src/examples/dragdroprobot.qdoc index c68f6cc999..f60fdc1ff3 100644 --- a/doc/src/examples/dragdroprobot.qdoc +++ b/doc/src/examples/dragdroprobot.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/draggableicons.qdoc b/doc/src/examples/draggableicons.qdoc index 0337431c24..ca6fb20f4d 100644 --- a/doc/src/examples/draggableicons.qdoc +++ b/doc/src/examples/draggableicons.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/draggabletext.qdoc b/doc/src/examples/draggabletext.qdoc index 14d07b65ef..edac9cf48b 100644 --- a/doc/src/examples/draggabletext.qdoc +++ b/doc/src/examples/draggabletext.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/drilldown.qdoc b/doc/src/examples/drilldown.qdoc index 13c4117f25..2d1ab6bb9a 100644 --- a/doc/src/examples/drilldown.qdoc +++ b/doc/src/examples/drilldown.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/dropsite.qdoc b/doc/src/examples/dropsite.qdoc index bf17427a13..d7396919e2 100644 --- a/doc/src/examples/dropsite.qdoc +++ b/doc/src/examples/dropsite.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/dynamiclayouts.qdoc b/doc/src/examples/dynamiclayouts.qdoc index b8314e330c..be29e94b70 100644 --- a/doc/src/examples/dynamiclayouts.qdoc +++ b/doc/src/examples/dynamiclayouts.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/easing.qdoc b/doc/src/examples/easing.qdoc index 1a7657d826..f1b9bebcaf 100644 --- a/doc/src/examples/easing.qdoc +++ b/doc/src/examples/easing.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/echoplugin.qdoc b/doc/src/examples/echoplugin.qdoc index cadd485573..3a7325b574 100644 --- a/doc/src/examples/echoplugin.qdoc +++ b/doc/src/examples/echoplugin.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/editabletreemodel.qdoc b/doc/src/examples/editabletreemodel.qdoc index 8be3037750..a4602c1b6f 100644 --- a/doc/src/examples/editabletreemodel.qdoc +++ b/doc/src/examples/editabletreemodel.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/elasticnodes.qdoc b/doc/src/examples/elasticnodes.qdoc index 7b4563172b..5b610df3e1 100644 --- a/doc/src/examples/elasticnodes.qdoc +++ b/doc/src/examples/elasticnodes.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/elidedlabel.qdoc b/doc/src/examples/elidedlabel.qdoc index 5bfe0f8551..68369e4cbf 100644 --- a/doc/src/examples/elidedlabel.qdoc +++ b/doc/src/examples/elidedlabel.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/embeddeddialogs.qdoc b/doc/src/examples/embeddeddialogs.qdoc index 685bcf8e22..94ef6f4d35 100644 --- a/doc/src/examples/embeddeddialogs.qdoc +++ b/doc/src/examples/embeddeddialogs.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/eventtransitions.qdoc b/doc/src/examples/eventtransitions.qdoc index c66e9c1369..fdfedc5c3d 100644 --- a/doc/src/examples/eventtransitions.qdoc +++ b/doc/src/examples/eventtransitions.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/extension.qdoc b/doc/src/examples/extension.qdoc index a2c3590be8..e7533e24cf 100644 --- a/doc/src/examples/extension.qdoc +++ b/doc/src/examples/extension.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/factorial.qdoc b/doc/src/examples/factorial.qdoc index a317189443..ef7764b30c 100644 --- a/doc/src/examples/factorial.qdoc +++ b/doc/src/examples/factorial.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/fademessage.qdoc b/doc/src/examples/fademessage.qdoc index 7e0732475d..3661ea3d63 100644 --- a/doc/src/examples/fademessage.qdoc +++ b/doc/src/examples/fademessage.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/fetchmore.qdoc b/doc/src/examples/fetchmore.qdoc index 9e64b0ae5c..cb952f5c45 100644 --- a/doc/src/examples/fetchmore.qdoc +++ b/doc/src/examples/fetchmore.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/findfiles.qdoc b/doc/src/examples/findfiles.qdoc index 4c03aac640..6e009a57a6 100644 --- a/doc/src/examples/findfiles.qdoc +++ b/doc/src/examples/findfiles.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/fingerpaint.qdoc b/doc/src/examples/fingerpaint.qdoc index 49078b66ad..3c9f9daf19 100644 --- a/doc/src/examples/fingerpaint.qdoc +++ b/doc/src/examples/fingerpaint.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/flickable.qdoc b/doc/src/examples/flickable.qdoc index 378bfcaf47..773047a3c9 100644 --- a/doc/src/examples/flickable.qdoc +++ b/doc/src/examples/flickable.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/flightinfo.qdoc b/doc/src/examples/flightinfo.qdoc index f3b5e32197..536373684b 100644 --- a/doc/src/examples/flightinfo.qdoc +++ b/doc/src/examples/flightinfo.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/flowlayout.qdoc b/doc/src/examples/flowlayout.qdoc index 194a733914..ac0c051b9c 100644 --- a/doc/src/examples/flowlayout.qdoc +++ b/doc/src/examples/flowlayout.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/fontsampler.qdoc b/doc/src/examples/fontsampler.qdoc index b3caa9f206..05921089a8 100644 --- a/doc/src/examples/fontsampler.qdoc +++ b/doc/src/examples/fontsampler.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/fortuneclient.qdoc b/doc/src/examples/fortuneclient.qdoc index 0c74143b4e..8582254069 100644 --- a/doc/src/examples/fortuneclient.qdoc +++ b/doc/src/examples/fortuneclient.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/fortuneserver.qdoc b/doc/src/examples/fortuneserver.qdoc index 2fb7f25089..67b0ef2946 100644 --- a/doc/src/examples/fortuneserver.qdoc +++ b/doc/src/examples/fortuneserver.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/framebufferobject2.qdoc b/doc/src/examples/framebufferobject2.qdoc index cbe8f3f5e3..6e501efee3 100644 --- a/doc/src/examples/framebufferobject2.qdoc +++ b/doc/src/examples/framebufferobject2.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/fridgemagnets.qdoc b/doc/src/examples/fridgemagnets.qdoc index 84908018ea..e521778278 100644 --- a/doc/src/examples/fridgemagnets.qdoc +++ b/doc/src/examples/fridgemagnets.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/frozencolumn.qdoc b/doc/src/examples/frozencolumn.qdoc index a21926bb55..88f5a69662 100644 --- a/doc/src/examples/frozencolumn.qdoc +++ b/doc/src/examples/frozencolumn.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/googlesuggest.qdoc b/doc/src/examples/googlesuggest.qdoc index 743a6240c4..9e8bd4ed55 100644 --- a/doc/src/examples/googlesuggest.qdoc +++ b/doc/src/examples/googlesuggest.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/grabber.qdoc b/doc/src/examples/grabber.qdoc index 4b65848343..aa73931bb6 100644 --- a/doc/src/examples/grabber.qdoc +++ b/doc/src/examples/grabber.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/gradients.qdoc b/doc/src/examples/gradients.qdoc index 430ce3ce87..9b33a5e6ec 100644 --- a/doc/src/examples/gradients.qdoc +++ b/doc/src/examples/gradients.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/groupbox.qdoc b/doc/src/examples/groupbox.qdoc index a04243785b..c0e3236c32 100644 --- a/doc/src/examples/groupbox.qdoc +++ b/doc/src/examples/groupbox.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/hellogl.qdoc b/doc/src/examples/hellogl.qdoc index dbd672e329..08973bbe22 100644 --- a/doc/src/examples/hellogl.qdoc +++ b/doc/src/examples/hellogl.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/hellogl_es.qdoc b/doc/src/examples/hellogl_es.qdoc index fdc7ab5d16..b21dd2ef60 100644 --- a/doc/src/examples/hellogl_es.qdoc +++ b/doc/src/examples/hellogl_es.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/hellotr.qdoc b/doc/src/examples/hellotr.qdoc index 4b7c4b7404..04d6f034d7 100644 --- a/doc/src/examples/hellotr.qdoc +++ b/doc/src/examples/hellotr.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/htmlinfo.qdoc b/doc/src/examples/htmlinfo.qdoc index 23365f1afb..6af27d27a6 100644 --- a/doc/src/examples/htmlinfo.qdoc +++ b/doc/src/examples/htmlinfo.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/http.qdoc b/doc/src/examples/http.qdoc index ab03683d2b..7c55d6f6c1 100644 --- a/doc/src/examples/http.qdoc +++ b/doc/src/examples/http.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/i18n.qdoc b/doc/src/examples/i18n.qdoc index 2ce47e10af..f379d19012 100644 --- a/doc/src/examples/i18n.qdoc +++ b/doc/src/examples/i18n.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/icons.qdoc b/doc/src/examples/icons.qdoc index 82ff9948e1..67a62a16f2 100644 --- a/doc/src/examples/icons.qdoc +++ b/doc/src/examples/icons.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/imagecomposition.qdoc b/doc/src/examples/imagecomposition.qdoc index cd08de4edf..b0d95f3048 100644 --- a/doc/src/examples/imagecomposition.qdoc +++ b/doc/src/examples/imagecomposition.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/imagegestures.qdoc b/doc/src/examples/imagegestures.qdoc index 24a1276dce..6834482ba2 100644 --- a/doc/src/examples/imagegestures.qdoc +++ b/doc/src/examples/imagegestures.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/imageviewer.qdoc b/doc/src/examples/imageviewer.qdoc index be47c7dd87..ee6e9fe452 100644 --- a/doc/src/examples/imageviewer.qdoc +++ b/doc/src/examples/imageviewer.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/inputpanel.qdoc b/doc/src/examples/inputpanel.qdoc index 54920f0d0d..3e8520d9b0 100644 --- a/doc/src/examples/inputpanel.qdoc +++ b/doc/src/examples/inputpanel.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/interview.qdoc b/doc/src/examples/interview.qdoc index 0be40fda85..ea50bda716 100644 --- a/doc/src/examples/interview.qdoc +++ b/doc/src/examples/interview.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/licensewizard.qdoc b/doc/src/examples/licensewizard.qdoc index 1e11732db3..12cc9d42a6 100644 --- a/doc/src/examples/licensewizard.qdoc +++ b/doc/src/examples/licensewizard.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/lighting.qdoc b/doc/src/examples/lighting.qdoc index 815a42a428..ff9bd1f662 100644 --- a/doc/src/examples/lighting.qdoc +++ b/doc/src/examples/lighting.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/lightmaps.qdoc b/doc/src/examples/lightmaps.qdoc index 0b5b807919..6f1b60d958 100644 --- a/doc/src/examples/lightmaps.qdoc +++ b/doc/src/examples/lightmaps.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/lineedits.qdoc b/doc/src/examples/lineedits.qdoc index 03b4f27199..e01aea5511 100644 --- a/doc/src/examples/lineedits.qdoc +++ b/doc/src/examples/lineedits.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/localfortuneclient.qdoc b/doc/src/examples/localfortuneclient.qdoc index 56ead19ea2..6bce3d49c3 100644 --- a/doc/src/examples/localfortuneclient.qdoc +++ b/doc/src/examples/localfortuneclient.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/localfortuneserver.qdoc b/doc/src/examples/localfortuneserver.qdoc index 7a26ff875b..cd4ef0a195 100644 --- a/doc/src/examples/localfortuneserver.qdoc +++ b/doc/src/examples/localfortuneserver.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/loopback.qdoc b/doc/src/examples/loopback.qdoc index a5d810ac97..aaf507c83c 100644 --- a/doc/src/examples/loopback.qdoc +++ b/doc/src/examples/loopback.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/macmainwindow.qdoc b/doc/src/examples/macmainwindow.qdoc index d245398f4f..bc7ba88162 100644 --- a/doc/src/examples/macmainwindow.qdoc +++ b/doc/src/examples/macmainwindow.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/maemovibration.qdoc b/doc/src/examples/maemovibration.qdoc index de53ba4a8c..7c37b9d22d 100644 --- a/doc/src/examples/maemovibration.qdoc +++ b/doc/src/examples/maemovibration.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/mainwindow.qdoc b/doc/src/examples/mainwindow.qdoc index ef9d128628..b374d65c7f 100644 --- a/doc/src/examples/mainwindow.qdoc +++ b/doc/src/examples/mainwindow.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/mandelbrot.qdoc b/doc/src/examples/mandelbrot.qdoc index c4a6a49bf1..37533eee29 100644 --- a/doc/src/examples/mandelbrot.qdoc +++ b/doc/src/examples/mandelbrot.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/masterdetail.qdoc b/doc/src/examples/masterdetail.qdoc index 16ddb3e01c..7dda40a347 100644 --- a/doc/src/examples/masterdetail.qdoc +++ b/doc/src/examples/masterdetail.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/mdi.qdoc b/doc/src/examples/mdi.qdoc index 4f64fa128f..20887b20b9 100644 --- a/doc/src/examples/mdi.qdoc +++ b/doc/src/examples/mdi.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/menus.qdoc b/doc/src/examples/menus.qdoc index 0a31ca80cc..a72ea75f4f 100644 --- a/doc/src/examples/menus.qdoc +++ b/doc/src/examples/menus.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/mousecalibration.qdoc b/doc/src/examples/mousecalibration.qdoc index 590153b439..fb7531e91b 100644 --- a/doc/src/examples/mousecalibration.qdoc +++ b/doc/src/examples/mousecalibration.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/moveblocks.qdoc b/doc/src/examples/moveblocks.qdoc index e5ce3be8d1..71205338fd 100644 --- a/doc/src/examples/moveblocks.qdoc +++ b/doc/src/examples/moveblocks.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/movie.qdoc b/doc/src/examples/movie.qdoc index bd5726ca65..249dc60a72 100644 --- a/doc/src/examples/movie.qdoc +++ b/doc/src/examples/movie.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/multicastreceiver.qdoc b/doc/src/examples/multicastreceiver.qdoc index 1a0f3b5748..7ad6ee45b3 100644 --- a/doc/src/examples/multicastreceiver.qdoc +++ b/doc/src/examples/multicastreceiver.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/multicastsender.qdoc b/doc/src/examples/multicastsender.qdoc index 55b3804d2d..2297cc0e9b 100644 --- a/doc/src/examples/multicastsender.qdoc +++ b/doc/src/examples/multicastsender.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/multipleinheritance.qdoc b/doc/src/examples/multipleinheritance.qdoc index fa125f0da9..973592e71d 100644 --- a/doc/src/examples/multipleinheritance.qdoc +++ b/doc/src/examples/multipleinheritance.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/network-chat.qdoc b/doc/src/examples/network-chat.qdoc index bd8288f9c9..bec37e12b7 100644 --- a/doc/src/examples/network-chat.qdoc +++ b/doc/src/examples/network-chat.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/orderform.qdoc b/doc/src/examples/orderform.qdoc index 7ab56da7fe..00caf896f6 100644 --- a/doc/src/examples/orderform.qdoc +++ b/doc/src/examples/orderform.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/orientation.qdoc b/doc/src/examples/orientation.qdoc index f55a6507bc..ef25b6f657 100644 --- a/doc/src/examples/orientation.qdoc +++ b/doc/src/examples/orientation.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/overpainting.qdoc b/doc/src/examples/overpainting.qdoc index 12f9756944..b9c178b339 100644 --- a/doc/src/examples/overpainting.qdoc +++ b/doc/src/examples/overpainting.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/padnavigator.qdoc b/doc/src/examples/padnavigator.qdoc index 6838e0a49f..15dbc7d701 100644 --- a/doc/src/examples/padnavigator.qdoc +++ b/doc/src/examples/padnavigator.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/painterpaths.qdoc b/doc/src/examples/painterpaths.qdoc index acf9772de9..e002dd5e27 100644 --- a/doc/src/examples/painterpaths.qdoc +++ b/doc/src/examples/painterpaths.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/pathstroke.qdoc b/doc/src/examples/pathstroke.qdoc index b433a42814..d22ed0270b 100644 --- a/doc/src/examples/pathstroke.qdoc +++ b/doc/src/examples/pathstroke.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/pbuffers.qdoc b/doc/src/examples/pbuffers.qdoc index 0c496b4bc7..7c78d21b54 100644 --- a/doc/src/examples/pbuffers.qdoc +++ b/doc/src/examples/pbuffers.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/pbuffers2.qdoc b/doc/src/examples/pbuffers2.qdoc index 280f329ddc..6f362a6650 100644 --- a/doc/src/examples/pbuffers2.qdoc +++ b/doc/src/examples/pbuffers2.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/pinchzoom.qdoc b/doc/src/examples/pinchzoom.qdoc index 04a8bb489f..d7c1a1d484 100644 --- a/doc/src/examples/pinchzoom.qdoc +++ b/doc/src/examples/pinchzoom.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/pingpong.qdoc b/doc/src/examples/pingpong.qdoc index c4a29a49a3..0aacb538e7 100644 --- a/doc/src/examples/pingpong.qdoc +++ b/doc/src/examples/pingpong.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/pixelator.qdoc b/doc/src/examples/pixelator.qdoc index b6d1fd6523..86507634c8 100644 --- a/doc/src/examples/pixelator.qdoc +++ b/doc/src/examples/pixelator.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/plugandpaint.qdoc b/doc/src/examples/plugandpaint.qdoc index 2a9d286a4d..a23560fe66 100644 --- a/doc/src/examples/plugandpaint.qdoc +++ b/doc/src/examples/plugandpaint.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/querymodel.qdoc b/doc/src/examples/querymodel.qdoc index 554ae2191c..dc5273b314 100644 --- a/doc/src/examples/querymodel.qdoc +++ b/doc/src/examples/querymodel.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/queuedcustomtype.qdoc b/doc/src/examples/queuedcustomtype.qdoc index 85f6b07abc..a377177945 100644 --- a/doc/src/examples/queuedcustomtype.qdoc +++ b/doc/src/examples/queuedcustomtype.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/raycasting.qdoc b/doc/src/examples/raycasting.qdoc index ae5be0f707..a5e34f58d4 100644 --- a/doc/src/examples/raycasting.qdoc +++ b/doc/src/examples/raycasting.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/recentfiles.qdoc b/doc/src/examples/recentfiles.qdoc index 048df0169c..5c2cc1922c 100644 --- a/doc/src/examples/recentfiles.qdoc +++ b/doc/src/examples/recentfiles.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/regexp.qdoc b/doc/src/examples/regexp.qdoc index 7b97156378..bbac541da9 100644 --- a/doc/src/examples/regexp.qdoc +++ b/doc/src/examples/regexp.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/relationaltablemodel.qdoc b/doc/src/examples/relationaltablemodel.qdoc index f23c69c9e7..cb4899dad2 100644 --- a/doc/src/examples/relationaltablemodel.qdoc +++ b/doc/src/examples/relationaltablemodel.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/rogue.qdoc b/doc/src/examples/rogue.qdoc index e93886b694..c13fff32cd 100644 --- a/doc/src/examples/rogue.qdoc +++ b/doc/src/examples/rogue.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/rsslisting.qdoc b/doc/src/examples/rsslisting.qdoc index 9554842d05..5528c90da0 100644 --- a/doc/src/examples/rsslisting.qdoc +++ b/doc/src/examples/rsslisting.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/samplebuffers.qdoc b/doc/src/examples/samplebuffers.qdoc index c9d6438b85..bc2cb6cdd4 100644 --- a/doc/src/examples/samplebuffers.qdoc +++ b/doc/src/examples/samplebuffers.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/saxbookmarks.qdoc b/doc/src/examples/saxbookmarks.qdoc index e912372747..226041128f 100644 --- a/doc/src/examples/saxbookmarks.qdoc +++ b/doc/src/examples/saxbookmarks.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/screenshot.qdoc b/doc/src/examples/screenshot.qdoc index 190b175389..7ccee8fbc0 100644 --- a/doc/src/examples/screenshot.qdoc +++ b/doc/src/examples/screenshot.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/scribble.qdoc b/doc/src/examples/scribble.qdoc index b09f570c51..3d6a8b18dc 100644 --- a/doc/src/examples/scribble.qdoc +++ b/doc/src/examples/scribble.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/sdi.qdoc b/doc/src/examples/sdi.qdoc index 5e3eb79ac6..45c306e477 100644 --- a/doc/src/examples/sdi.qdoc +++ b/doc/src/examples/sdi.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/securesocketclient.qdoc b/doc/src/examples/securesocketclient.qdoc index 30ba16a34c..5e8681a3b8 100644 --- a/doc/src/examples/securesocketclient.qdoc +++ b/doc/src/examples/securesocketclient.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/semaphores.qdoc b/doc/src/examples/semaphores.qdoc index aeced47d0a..5bb6822f6a 100644 --- a/doc/src/examples/semaphores.qdoc +++ b/doc/src/examples/semaphores.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/settingseditor.qdoc b/doc/src/examples/settingseditor.qdoc index a0fcc17543..72b7ca7ab0 100644 --- a/doc/src/examples/settingseditor.qdoc +++ b/doc/src/examples/settingseditor.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/shapedclock.qdoc b/doc/src/examples/shapedclock.qdoc index e66b3efc5a..23ff4027fa 100644 --- a/doc/src/examples/shapedclock.qdoc +++ b/doc/src/examples/shapedclock.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/sharedmemory.qdoc b/doc/src/examples/sharedmemory.qdoc index 2f4088bd4a..4b80c68ca9 100644 --- a/doc/src/examples/sharedmemory.qdoc +++ b/doc/src/examples/sharedmemory.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/simpledecoration.qdoc b/doc/src/examples/simpledecoration.qdoc index 3c02009988..9f8be4a1b2 100644 --- a/doc/src/examples/simpledecoration.qdoc +++ b/doc/src/examples/simpledecoration.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/simpledommodel.qdoc b/doc/src/examples/simpledommodel.qdoc index b7fae915fe..2a671e6d9d 100644 --- a/doc/src/examples/simpledommodel.qdoc +++ b/doc/src/examples/simpledommodel.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/simpletreemodel.qdoc b/doc/src/examples/simpletreemodel.qdoc index 00464b290e..9f10177b55 100644 --- a/doc/src/examples/simpletreemodel.qdoc +++ b/doc/src/examples/simpletreemodel.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/simplewidgetmapper.qdoc b/doc/src/examples/simplewidgetmapper.qdoc index 60837fc9d9..aa41ec2161 100644 --- a/doc/src/examples/simplewidgetmapper.qdoc +++ b/doc/src/examples/simplewidgetmapper.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/sipdialog.qdoc b/doc/src/examples/sipdialog.qdoc index 349ab1815a..65dfe6bde5 100644 --- a/doc/src/examples/sipdialog.qdoc +++ b/doc/src/examples/sipdialog.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/sliders.qdoc b/doc/src/examples/sliders.qdoc index 721acaefbe..619d87a433 100644 --- a/doc/src/examples/sliders.qdoc +++ b/doc/src/examples/sliders.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/spinboxdelegate.qdoc b/doc/src/examples/spinboxdelegate.qdoc index 50d5b9c1ea..3f7de678a5 100644 --- a/doc/src/examples/spinboxdelegate.qdoc +++ b/doc/src/examples/spinboxdelegate.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/spinboxes.qdoc b/doc/src/examples/spinboxes.qdoc index e87faf152a..7c52f05f73 100644 --- a/doc/src/examples/spinboxes.qdoc +++ b/doc/src/examples/spinboxes.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/spreadsheet.qdoc b/doc/src/examples/spreadsheet.qdoc index 8bcecc99ed..c8648ec8ad 100644 --- a/doc/src/examples/spreadsheet.qdoc +++ b/doc/src/examples/spreadsheet.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/sqlbrowser.qdoc b/doc/src/examples/sqlbrowser.qdoc index f7ec7951a8..57d8f94c8b 100644 --- a/doc/src/examples/sqlbrowser.qdoc +++ b/doc/src/examples/sqlbrowser.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/sqlwidgetmapper.qdoc b/doc/src/examples/sqlwidgetmapper.qdoc index cf1a15831d..40bf540532 100644 --- a/doc/src/examples/sqlwidgetmapper.qdoc +++ b/doc/src/examples/sqlwidgetmapper.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/standarddialogs.qdoc b/doc/src/examples/standarddialogs.qdoc index 92005b40f1..83d9acbc26 100644 --- a/doc/src/examples/standarddialogs.qdoc +++ b/doc/src/examples/standarddialogs.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/stardelegate.qdoc b/doc/src/examples/stardelegate.qdoc index 3b009d5057..3bb80b440b 100644 --- a/doc/src/examples/stardelegate.qdoc +++ b/doc/src/examples/stardelegate.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/states.qdoc b/doc/src/examples/states.qdoc index 815c9690d3..6a0f5adc56 100644 --- a/doc/src/examples/states.qdoc +++ b/doc/src/examples/states.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/stickman.qdoc b/doc/src/examples/stickman.qdoc index 8c35fe17f8..cce3bf2e53 100644 --- a/doc/src/examples/stickman.qdoc +++ b/doc/src/examples/stickman.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/styleexample.qdoc b/doc/src/examples/styleexample.qdoc index f3ab3b17d6..9a48517d80 100644 --- a/doc/src/examples/styleexample.qdoc +++ b/doc/src/examples/styleexample.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/styleplugin.qdoc b/doc/src/examples/styleplugin.qdoc index 59729c7e23..d4bb5e2c41 100644 --- a/doc/src/examples/styleplugin.qdoc +++ b/doc/src/examples/styleplugin.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/styles.qdoc b/doc/src/examples/styles.qdoc index 5258c1972e..c880c180fd 100644 --- a/doc/src/examples/styles.qdoc +++ b/doc/src/examples/styles.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/stylesheet.qdoc b/doc/src/examples/stylesheet.qdoc index a82d0d1e08..3af2ae45c1 100644 --- a/doc/src/examples/stylesheet.qdoc +++ b/doc/src/examples/stylesheet.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/sub-attaq.qdoc b/doc/src/examples/sub-attaq.qdoc index 0c8e587463..b2b64da78e 100644 --- a/doc/src/examples/sub-attaq.qdoc +++ b/doc/src/examples/sub-attaq.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/svgalib.qdoc b/doc/src/examples/svgalib.qdoc index dbdad0f26c..004ed920c2 100644 --- a/doc/src/examples/svgalib.qdoc +++ b/doc/src/examples/svgalib.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/symbianvibration.qdoc b/doc/src/examples/symbianvibration.qdoc index 76f79e5d47..0ff9a6731b 100644 --- a/doc/src/examples/symbianvibration.qdoc +++ b/doc/src/examples/symbianvibration.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/syntaxhighlighter.qdoc b/doc/src/examples/syntaxhighlighter.qdoc index 919d61c3db..c6c81ade77 100644 --- a/doc/src/examples/syntaxhighlighter.qdoc +++ b/doc/src/examples/syntaxhighlighter.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/tabdialog.qdoc b/doc/src/examples/tabdialog.qdoc index b192645a0a..ef4ee624ae 100644 --- a/doc/src/examples/tabdialog.qdoc +++ b/doc/src/examples/tabdialog.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/tablemodel.qdoc b/doc/src/examples/tablemodel.qdoc index bd81763d95..bd074dc079 100644 --- a/doc/src/examples/tablemodel.qdoc +++ b/doc/src/examples/tablemodel.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/tablet.qdoc b/doc/src/examples/tablet.qdoc index ce4ab2a1f0..b2be39c69b 100644 --- a/doc/src/examples/tablet.qdoc +++ b/doc/src/examples/tablet.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/tetrix.qdoc b/doc/src/examples/tetrix.qdoc index e37d2b67bb..b4fd5cf2eb 100644 --- a/doc/src/examples/tetrix.qdoc +++ b/doc/src/examples/tetrix.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/textedit.qdoc b/doc/src/examples/textedit.qdoc index 1a1171d542..1e202c4888 100644 --- a/doc/src/examples/textedit.qdoc +++ b/doc/src/examples/textedit.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/textfinder.qdoc b/doc/src/examples/textfinder.qdoc index fc6d2ba840..ff31ed8fcd 100644 --- a/doc/src/examples/textfinder.qdoc +++ b/doc/src/examples/textfinder.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/textures.qdoc b/doc/src/examples/textures.qdoc index 52bde78187..6891f57fcc 100644 --- a/doc/src/examples/textures.qdoc +++ b/doc/src/examples/textures.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/threadedfortuneserver.qdoc b/doc/src/examples/threadedfortuneserver.qdoc index 87da0541e3..3ee5e0cdd4 100644 --- a/doc/src/examples/threadedfortuneserver.qdoc +++ b/doc/src/examples/threadedfortuneserver.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/tooltips.qdoc b/doc/src/examples/tooltips.qdoc index 2b39bf9c5f..81343fbfe0 100644 --- a/doc/src/examples/tooltips.qdoc +++ b/doc/src/examples/tooltips.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/torrent.qdoc b/doc/src/examples/torrent.qdoc index 86c0b0c75c..9682c2f7e9 100644 --- a/doc/src/examples/torrent.qdoc +++ b/doc/src/examples/torrent.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/trafficlight.qdoc b/doc/src/examples/trafficlight.qdoc index 828195e7b8..7d62e07271 100644 --- a/doc/src/examples/trafficlight.qdoc +++ b/doc/src/examples/trafficlight.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/transformations.qdoc b/doc/src/examples/transformations.qdoc index 74c1a8450a..7117e207db 100644 --- a/doc/src/examples/transformations.qdoc +++ b/doc/src/examples/transformations.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/treemodelcompleter.qdoc b/doc/src/examples/treemodelcompleter.qdoc index 4caba0d03f..b4242a9985 100644 --- a/doc/src/examples/treemodelcompleter.qdoc +++ b/doc/src/examples/treemodelcompleter.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/trivialwizard.qdoc b/doc/src/examples/trivialwizard.qdoc index e654a78ae9..bf8e0c58b7 100644 --- a/doc/src/examples/trivialwizard.qdoc +++ b/doc/src/examples/trivialwizard.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/trollprint.qdoc b/doc/src/examples/trollprint.qdoc index de6cc6088a..1532170699 100644 --- a/doc/src/examples/trollprint.qdoc +++ b/doc/src/examples/trollprint.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/twowaybutton.qdoc b/doc/src/examples/twowaybutton.qdoc index b42615e957..dd5c4a9da8 100644 --- a/doc/src/examples/twowaybutton.qdoc +++ b/doc/src/examples/twowaybutton.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/undo.qdoc b/doc/src/examples/undo.qdoc index 29c320ab05..75c3fb86f8 100644 --- a/doc/src/examples/undo.qdoc +++ b/doc/src/examples/undo.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/undoframework.qdoc b/doc/src/examples/undoframework.qdoc index 15372ecb58..98c218bc5c 100644 --- a/doc/src/examples/undoframework.qdoc +++ b/doc/src/examples/undoframework.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/waitconditions.qdoc b/doc/src/examples/waitconditions.qdoc index 0d0cd1b9e0..35230689e7 100644 --- a/doc/src/examples/waitconditions.qdoc +++ b/doc/src/examples/waitconditions.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/wiggly.qdoc b/doc/src/examples/wiggly.qdoc index 3685741f65..dcdcbb1893 100644 --- a/doc/src/examples/wiggly.qdoc +++ b/doc/src/examples/wiggly.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/windowflags.qdoc b/doc/src/examples/windowflags.qdoc index e690c3701e..c625b583d8 100644 --- a/doc/src/examples/windowflags.qdoc +++ b/doc/src/examples/windowflags.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/examples/xmlstreamlint.qdoc b/doc/src/examples/xmlstreamlint.qdoc index 98bee624da..261667e6b2 100644 --- a/doc/src/examples/xmlstreamlint.qdoc +++ b/doc/src/examples/xmlstreamlint.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/gui/coordsys.qdoc b/doc/src/gui/coordsys.qdoc index 96eebd01e0..5c953d5979 100644 --- a/doc/src/gui/coordsys.qdoc +++ b/doc/src/gui/coordsys.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/gui/paintsystem.qdoc b/doc/src/gui/paintsystem.qdoc index a567509186..8fa771c965 100644 --- a/doc/src/gui/paintsystem.qdoc +++ b/doc/src/gui/paintsystem.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/gui/qtgui.qdoc b/doc/src/gui/qtgui.qdoc index 9db4ca534a..a745575eba 100644 --- a/doc/src/gui/qtgui.qdoc +++ b/doc/src/gui/qtgui.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/network/files-and-resources/datastreamformat.qdoc b/doc/src/network/files-and-resources/datastreamformat.qdoc index 69f49d892f..826fc523e0 100644 --- a/doc/src/network/files-and-resources/datastreamformat.qdoc +++ b/doc/src/network/files-and-resources/datastreamformat.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/network/files-and-resources/resources.qdoc b/doc/src/network/files-and-resources/resources.qdoc index d6e320bf04..8ca19f3703 100644 --- a/doc/src/network/files-and-resources/resources.qdoc +++ b/doc/src/network/files-and-resources/resources.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/network/network-programming/bearermanagement.qdoc b/doc/src/network/network-programming/bearermanagement.qdoc index 3d0262aa95..9578a716d2 100644 --- a/doc/src/network/network-programming/bearermanagement.qdoc +++ b/doc/src/network/network-programming/bearermanagement.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/network/network-programming/qtnetwork.qdoc b/doc/src/network/network-programming/qtnetwork.qdoc index 93ba24815d..b5725e4bdb 100644 --- a/doc/src/network/network-programming/qtnetwork.qdoc +++ b/doc/src/network/network-programming/qtnetwork.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/network/network-programming/ssl.qdoc b/doc/src/network/network-programming/ssl.qdoc index 0bbcd8afb7..3b483b9924 100644 --- a/doc/src/network/network-programming/ssl.qdoc +++ b/doc/src/network/network-programming/ssl.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/network/qtnetwork.qdoc b/doc/src/network/qtnetwork.qdoc index afaa4653e7..2bfe8cb68e 100644 --- a/doc/src/network/qtnetwork.qdoc +++ b/doc/src/network/qtnetwork.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/printsupport/printing.qdoc b/doc/src/printsupport/printing.qdoc index c8d6efbc39..1dfa03db94 100644 --- a/doc/src/printsupport/printing.qdoc +++ b/doc/src/printsupport/printing.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/printsupport/qtprintsupport.qdoc b/doc/src/printsupport/qtprintsupport.qdoc index 2b313c2764..4119e3cb4b 100644 --- a/doc/src/printsupport/qtprintsupport.qdoc +++ b/doc/src/printsupport/qtprintsupport.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/brush/brush.cpp b/doc/src/snippets/brush/brush.cpp index 57a219242c..19466ae89f 100644 --- a/doc/src/snippets/brush/brush.cpp +++ b/doc/src/snippets/brush/brush.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/brush/gradientcreationsnippet.cpp b/doc/src/snippets/brush/gradientcreationsnippet.cpp index 783c4c249a..9ac8518b06 100644 --- a/doc/src/snippets/brush/gradientcreationsnippet.cpp +++ b/doc/src/snippets/brush/gradientcreationsnippet.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/buffer/buffer.cpp b/doc/src/snippets/buffer/buffer.cpp index a5e91087cd..535db295d2 100644 --- a/doc/src/snippets/buffer/buffer.cpp +++ b/doc/src/snippets/buffer/buffer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_containers.cpp b/doc/src/snippets/code/doc_src_containers.cpp index fa300f916b..2035a06b1d 100644 --- a/doc/src/snippets/code/doc_src_containers.cpp +++ b/doc/src/snippets/code/doc_src_containers.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_coordsys.cpp b/doc/src/snippets/code/doc_src_coordsys.cpp index 1ebb215941..a79af2f9ac 100644 --- a/doc/src/snippets/code/doc_src_coordsys.cpp +++ b/doc/src/snippets/code/doc_src_coordsys.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_examples_application.qdoc b/doc/src/snippets/code/doc_src_examples_application.qdoc index 08e0747695..c124bb3c3a 100644 --- a/doc/src/snippets/code/doc_src_examples_application.qdoc +++ b/doc/src/snippets/code/doc_src_examples_application.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_examples_arrowpad.cpp b/doc/src/snippets/code/doc_src_examples_arrowpad.cpp index c834b9ff26..1301664697 100644 --- a/doc/src/snippets/code/doc_src_examples_arrowpad.cpp +++ b/doc/src/snippets/code/doc_src_examples_arrowpad.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_examples_arrowpad.qdoc b/doc/src/snippets/code/doc_src_examples_arrowpad.qdoc index ee3c36784f..972ad53ece 100644 --- a/doc/src/snippets/code/doc_src_examples_arrowpad.qdoc +++ b/doc/src/snippets/code/doc_src_examples_arrowpad.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_examples_dropsite.qdoc b/doc/src/snippets/code/doc_src_examples_dropsite.qdoc index d7bffc0227..478febaed4 100644 --- a/doc/src/snippets/code/doc_src_examples_dropsite.qdoc +++ b/doc/src/snippets/code/doc_src_examples_dropsite.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_examples_editabletreemodel.cpp b/doc/src/snippets/code/doc_src_examples_editabletreemodel.cpp index a69a7bf772..1f9d853a88 100644 --- a/doc/src/snippets/code/doc_src_examples_editabletreemodel.cpp +++ b/doc/src/snippets/code/doc_src_examples_editabletreemodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_examples_hellotr.qdoc b/doc/src/snippets/code/doc_src_examples_hellotr.qdoc index 9dbcb0af45..1373d4d8d3 100644 --- a/doc/src/snippets/code/doc_src_examples_hellotr.qdoc +++ b/doc/src/snippets/code/doc_src_examples_hellotr.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_examples_icons.cpp b/doc/src/snippets/code/doc_src_examples_icons.cpp index 411c49fb8d..91f028e4af 100644 --- a/doc/src/snippets/code/doc_src_examples_icons.cpp +++ b/doc/src/snippets/code/doc_src_examples_icons.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_examples_icons.qdoc b/doc/src/snippets/code/doc_src_examples_icons.qdoc index 8ca57511f7..ba4a0045a5 100644 --- a/doc/src/snippets/code/doc_src_examples_icons.qdoc +++ b/doc/src/snippets/code/doc_src_examples_icons.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_examples_imageviewer.cpp b/doc/src/snippets/code/doc_src_examples_imageviewer.cpp index c86f8ace40..ac35aa436b 100644 --- a/doc/src/snippets/code/doc_src_examples_imageviewer.cpp +++ b/doc/src/snippets/code/doc_src_examples_imageviewer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_examples_imageviewer.qdoc b/doc/src/snippets/code/doc_src_examples_imageviewer.qdoc index 1870385de7..b89b26ad94 100644 --- a/doc/src/snippets/code/doc_src_examples_imageviewer.qdoc +++ b/doc/src/snippets/code/doc_src_examples_imageviewer.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_examples_simpledommodel.cpp b/doc/src/snippets/code/doc_src_examples_simpledommodel.cpp index 1abcdc21cc..b0d1beaff1 100644 --- a/doc/src/snippets/code/doc_src_examples_simpledommodel.cpp +++ b/doc/src/snippets/code/doc_src_examples_simpledommodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_examples_simpletreemodel.qdoc b/doc/src/snippets/code/doc_src_examples_simpletreemodel.qdoc index 1084d238e7..c207f3fec0 100644 --- a/doc/src/snippets/code/doc_src_examples_simpletreemodel.qdoc +++ b/doc/src/snippets/code/doc_src_examples_simpletreemodel.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_examples_svgalib.qdoc b/doc/src/snippets/code/doc_src_examples_svgalib.qdoc index 3c34818662..49d66b0092 100644 --- a/doc/src/snippets/code/doc_src_examples_svgalib.qdoc +++ b/doc/src/snippets/code/doc_src_examples_svgalib.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_examples_textfinder.pro b/doc/src/snippets/code/doc_src_examples_textfinder.pro index cdc2366b57..28c5d542e2 100644 --- a/doc/src/snippets/code/doc_src_examples_textfinder.pro +++ b/doc/src/snippets/code/doc_src_examples_textfinder.pro @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_examples_trollprint.cpp b/doc/src/snippets/code/doc_src_examples_trollprint.cpp index f7b8f48f3d..0ed2e686c5 100644 --- a/doc/src/snippets/code/doc_src_examples_trollprint.cpp +++ b/doc/src/snippets/code/doc_src_examples_trollprint.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_groups.cpp b/doc/src/snippets/code/doc_src_groups.cpp index 2d5fd97280..168bd922ce 100644 --- a/doc/src/snippets/code/doc_src_groups.cpp +++ b/doc/src/snippets/code/doc_src_groups.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_layout.cpp b/doc/src/snippets/code/doc_src_layout.cpp index 47db36bb3a..8610fb5b0e 100644 --- a/doc/src/snippets/code/doc_src_layout.cpp +++ b/doc/src/snippets/code/doc_src_layout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_objecttrees.cpp b/doc/src/snippets/code/doc_src_objecttrees.cpp index cd92a49eea..67019f83e5 100644 --- a/doc/src/snippets/code/doc_src_objecttrees.cpp +++ b/doc/src/snippets/code/doc_src_objecttrees.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_properties.cpp b/doc/src/snippets/code/doc_src_properties.cpp index b5a103db0b..51af3d9038 100644 --- a/doc/src/snippets/code/doc_src_properties.cpp +++ b/doc/src/snippets/code/doc_src_properties.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_qalgorithms.cpp b/doc/src/snippets/code/doc_src_qalgorithms.cpp index 0438105865..dab3b8930b 100644 --- a/doc/src/snippets/code/doc_src_qalgorithms.cpp +++ b/doc/src/snippets/code/doc_src_qalgorithms.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_qcache.cpp b/doc/src/snippets/code/doc_src_qcache.cpp index 81fa3cf279..f44c194f29 100644 --- a/doc/src/snippets/code/doc_src_qcache.cpp +++ b/doc/src/snippets/code/doc_src_qcache.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_qiterator.cpp b/doc/src/snippets/code/doc_src_qiterator.cpp index 82b1bd3429..6da868faa8 100644 --- a/doc/src/snippets/code/doc_src_qiterator.cpp +++ b/doc/src/snippets/code/doc_src_qiterator.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_qnamespace.cpp b/doc/src/snippets/code/doc_src_qnamespace.cpp index c512862325..52318ceeda 100644 --- a/doc/src/snippets/code/doc_src_qnamespace.cpp +++ b/doc/src/snippets/code/doc_src_qnamespace.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_qnamespace.qdoc b/doc/src/snippets/code/doc_src_qnamespace.qdoc index 6b5ce6a41d..1bd7ad1d3f 100644 --- a/doc/src/snippets/code/doc_src_qnamespace.qdoc +++ b/doc/src/snippets/code/doc_src_qnamespace.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_qpair.cpp b/doc/src/snippets/code/doc_src_qpair.cpp index a9a061e2c7..1482e06885 100644 --- a/doc/src/snippets/code/doc_src_qpair.cpp +++ b/doc/src/snippets/code/doc_src_qpair.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_qplugin.cpp b/doc/src/snippets/code/doc_src_qplugin.cpp index fdacc08c3a..80fb178709 100644 --- a/doc/src/snippets/code/doc_src_qplugin.cpp +++ b/doc/src/snippets/code/doc_src_qplugin.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_qplugin.pro b/doc/src/snippets/code/doc_src_qplugin.pro index f3444e273a..1609b9c0d6 100644 --- a/doc/src/snippets/code/doc_src_qplugin.pro +++ b/doc/src/snippets/code/doc_src_qplugin.pro @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_qset.cpp b/doc/src/snippets/code/doc_src_qset.cpp index 4a4953d452..1b88b02239 100644 --- a/doc/src/snippets/code/doc_src_qset.cpp +++ b/doc/src/snippets/code/doc_src_qset.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_qsignalspy.cpp b/doc/src/snippets/code/doc_src_qsignalspy.cpp index 12462e2d74..bf6108eda9 100644 --- a/doc/src/snippets/code/doc_src_qsignalspy.cpp +++ b/doc/src/snippets/code/doc_src_qsignalspy.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_qt4-mainwindow.cpp b/doc/src/snippets/code/doc_src_qt4-mainwindow.cpp index d0c758e644..18c0c78271 100644 --- a/doc/src/snippets/code/doc_src_qt4-mainwindow.cpp +++ b/doc/src/snippets/code/doc_src_qt4-mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_qt4-styles.cpp b/doc/src/snippets/code/doc_src_qt4-styles.cpp index effe3cd561..98a0b241d8 100644 --- a/doc/src/snippets/code/doc_src_qt4-styles.cpp +++ b/doc/src/snippets/code/doc_src_qt4-styles.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_qtcore.cpp b/doc/src/snippets/code/doc_src_qtcore.cpp index 35916eacf1..e83f4dd454 100644 --- a/doc/src/snippets/code/doc_src_qtcore.cpp +++ b/doc/src/snippets/code/doc_src_qtcore.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_qtestevent.cpp b/doc/src/snippets/code/doc_src_qtestevent.cpp index fd1c819ac0..c34742d3f1 100644 --- a/doc/src/snippets/code/doc_src_qtestevent.cpp +++ b/doc/src/snippets/code/doc_src_qtestevent.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_qtgui.pro b/doc/src/snippets/code/doc_src_qtgui.pro index dd3405c725..896c1d4044 100644 --- a/doc/src/snippets/code/doc_src_qtgui.pro +++ b/doc/src/snippets/code/doc_src_qtgui.pro @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_qtnetwork.cpp b/doc/src/snippets/code/doc_src_qtnetwork.cpp index 7100f1a750..8f1a2c7545 100644 --- a/doc/src/snippets/code/doc_src_qtnetwork.cpp +++ b/doc/src/snippets/code/doc_src_qtnetwork.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_qtnetwork.pro b/doc/src/snippets/code/doc_src_qtnetwork.pro index f6c3a5ae7d..35044761a5 100644 --- a/doc/src/snippets/code/doc_src_qtnetwork.pro +++ b/doc/src/snippets/code/doc_src_qtnetwork.pro @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_qtsql.cpp b/doc/src/snippets/code/doc_src_qtsql.cpp index 9c0c16e14b..5213857d03 100644 --- a/doc/src/snippets/code/doc_src_qtsql.cpp +++ b/doc/src/snippets/code/doc_src_qtsql.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_qtsql.pro b/doc/src/snippets/code/doc_src_qtsql.pro index 4e31846735..7bab18bdd9 100644 --- a/doc/src/snippets/code/doc_src_qtsql.pro +++ b/doc/src/snippets/code/doc_src_qtsql.pro @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_qtxml.cpp b/doc/src/snippets/code/doc_src_qtxml.cpp index 5413fd2ccf..f79a144655 100644 --- a/doc/src/snippets/code/doc_src_qtxml.cpp +++ b/doc/src/snippets/code/doc_src_qtxml.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_qtxml.pro b/doc/src/snippets/code/doc_src_qtxml.pro index d69b2ceadd..a3b9d47f4b 100644 --- a/doc/src/snippets/code/doc_src_qtxml.pro +++ b/doc/src/snippets/code/doc_src_qtxml.pro @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_qvarlengtharray.cpp b/doc/src/snippets/code/doc_src_qvarlengtharray.cpp index a9383301f5..af6794056f 100644 --- a/doc/src/snippets/code/doc_src_qvarlengtharray.cpp +++ b/doc/src/snippets/code/doc_src_qvarlengtharray.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_resources.cpp b/doc/src/snippets/code/doc_src_resources.cpp index b965cbeb29..6ac8295827 100644 --- a/doc/src/snippets/code/doc_src_resources.cpp +++ b/doc/src/snippets/code/doc_src_resources.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_resources.qdoc b/doc/src/snippets/code/doc_src_resources.qdoc index 0b727da461..3bdfaf06a4 100644 --- a/doc/src/snippets/code/doc_src_resources.qdoc +++ b/doc/src/snippets/code/doc_src_resources.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_sql-driver.cpp b/doc/src/snippets/code/doc_src_sql-driver.cpp index 56e4f9bcdb..3da646b486 100644 --- a/doc/src/snippets/code/doc_src_sql-driver.cpp +++ b/doc/src/snippets/code/doc_src_sql-driver.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_sql-driver.qdoc b/doc/src/snippets/code/doc_src_sql-driver.qdoc index 46cd1b3f3e..8773372736 100644 --- a/doc/src/snippets/code/doc_src_sql-driver.qdoc +++ b/doc/src/snippets/code/doc_src_sql-driver.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_styles.cpp b/doc/src/snippets/code/doc_src_styles.cpp index a2a6fa9694..dbfd5c7253 100644 --- a/doc/src/snippets/code/doc_src_styles.cpp +++ b/doc/src/snippets/code/doc_src_styles.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_stylesheet.cpp b/doc/src/snippets/code/doc_src_stylesheet.cpp index 3faaf2d037..2e651a1bc1 100644 --- a/doc/src/snippets/code/doc_src_stylesheet.cpp +++ b/doc/src/snippets/code/doc_src_stylesheet.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/doc_src_stylesheet.qdoc b/doc/src/snippets/code/doc_src_stylesheet.qdoc index 99b31c9387..b0fd441d03 100644 --- a/doc/src/snippets/code/doc_src_stylesheet.qdoc +++ b/doc/src/snippets/code/doc_src_stylesheet.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src.gui.text.qtextdocumentwriter.cpp b/doc/src/snippets/code/src.gui.text.qtextdocumentwriter.cpp index d7b982758b..a3f3cfd3d4 100644 --- a/doc/src/snippets/code/src.gui.text.qtextdocumentwriter.cpp +++ b/doc/src/snippets/code/src.gui.text.qtextdocumentwriter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src.qdbus.qdbuspendingcall.cpp b/doc/src/snippets/code/src.qdbus.qdbuspendingcall.cpp index 623c526f7b..8c461f453a 100644 --- a/doc/src/snippets/code/src.qdbus.qdbuspendingcall.cpp +++ b/doc/src/snippets/code/src.qdbus.qdbuspendingcall.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src.qdbus.qdbuspendingreply.cpp b/doc/src/snippets/code/src.qdbus.qdbuspendingreply.cpp index 31e240ad35..87b40ff575 100644 --- a/doc/src/snippets/code/src.qdbus.qdbuspendingreply.cpp +++ b/doc/src/snippets/code/src.qdbus.qdbuspendingreply.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_codecs_qtextcodec.cpp b/doc/src/snippets/code/src_corelib_codecs_qtextcodec.cpp index 698c0b652e..93e3dfd52e 100644 --- a/doc/src/snippets/code/src_corelib_codecs_qtextcodec.cpp +++ b/doc/src/snippets/code/src_corelib_codecs_qtextcodec.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_codecs_qtextcodecplugin.cpp b/doc/src/snippets/code/src_corelib_codecs_qtextcodecplugin.cpp index 684884f400..d0ad958e8b 100644 --- a/doc/src/snippets/code/src_corelib_codecs_qtextcodecplugin.cpp +++ b/doc/src/snippets/code/src_corelib_codecs_qtextcodecplugin.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_concurrent_qfuture.cpp b/doc/src/snippets/code/src_corelib_concurrent_qfuture.cpp index 7e106bfb9c..09cb3efe1e 100644 --- a/doc/src/snippets/code/src_corelib_concurrent_qfuture.cpp +++ b/doc/src/snippets/code/src_corelib_concurrent_qfuture.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_concurrent_qfuturesynchronizer.cpp b/doc/src/snippets/code/src_corelib_concurrent_qfuturesynchronizer.cpp index 291e2f4f4e..505c83a1b8 100644 --- a/doc/src/snippets/code/src_corelib_concurrent_qfuturesynchronizer.cpp +++ b/doc/src/snippets/code/src_corelib_concurrent_qfuturesynchronizer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_concurrent_qfuturewatcher.cpp b/doc/src/snippets/code/src_corelib_concurrent_qfuturewatcher.cpp index 9f12e936fc..bbf7dbd471 100644 --- a/doc/src/snippets/code/src_corelib_concurrent_qfuturewatcher.cpp +++ b/doc/src/snippets/code/src_corelib_concurrent_qfuturewatcher.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_concurrent_qtconcurrentexception.cpp b/doc/src/snippets/code/src_corelib_concurrent_qtconcurrentexception.cpp index 85f3551b62..702abe15a5 100644 --- a/doc/src/snippets/code/src_corelib_concurrent_qtconcurrentexception.cpp +++ b/doc/src/snippets/code/src_corelib_concurrent_qtconcurrentexception.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_concurrent_qtconcurrentfilter.cpp b/doc/src/snippets/code/src_corelib_concurrent_qtconcurrentfilter.cpp index d18f1e5165..69a69a321f 100644 --- a/doc/src/snippets/code/src_corelib_concurrent_qtconcurrentfilter.cpp +++ b/doc/src/snippets/code/src_corelib_concurrent_qtconcurrentfilter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_concurrent_qtconcurrentmap.cpp b/doc/src/snippets/code/src_corelib_concurrent_qtconcurrentmap.cpp index c48ce1e6ae..239c0292df 100644 --- a/doc/src/snippets/code/src_corelib_concurrent_qtconcurrentmap.cpp +++ b/doc/src/snippets/code/src_corelib_concurrent_qtconcurrentmap.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_concurrent_qtconcurrentrun.cpp b/doc/src/snippets/code/src_corelib_concurrent_qtconcurrentrun.cpp index 11f5163f50..756c18eca1 100644 --- a/doc/src/snippets/code/src_corelib_concurrent_qtconcurrentrun.cpp +++ b/doc/src/snippets/code/src_corelib_concurrent_qtconcurrentrun.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_concurrent_qthreadpool.cpp b/doc/src/snippets/code/src_corelib_concurrent_qthreadpool.cpp index 6262cb1a11..a0bdd9334d 100644 --- a/doc/src/snippets/code/src_corelib_concurrent_qthreadpool.cpp +++ b/doc/src/snippets/code/src_corelib_concurrent_qthreadpool.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_global_qglobal.cpp b/doc/src/snippets/code/src_corelib_global_qglobal.cpp index c79a714192..84ec44ba60 100644 --- a/doc/src/snippets/code/src_corelib_global_qglobal.cpp +++ b/doc/src/snippets/code/src_corelib_global_qglobal.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_io_qabstractfileengine.cpp b/doc/src/snippets/code/src_corelib_io_qabstractfileengine.cpp index 74ef79fa87..96b9aa2d89 100644 --- a/doc/src/snippets/code/src_corelib_io_qabstractfileengine.cpp +++ b/doc/src/snippets/code/src_corelib_io_qabstractfileengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_io_qdatastream.cpp b/doc/src/snippets/code/src_corelib_io_qdatastream.cpp index cd9632c885..2f7b6f9b73 100644 --- a/doc/src/snippets/code/src_corelib_io_qdatastream.cpp +++ b/doc/src/snippets/code/src_corelib_io_qdatastream.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_io_qdir.cpp b/doc/src/snippets/code/src_corelib_io_qdir.cpp index 51262f711c..801f868195 100644 --- a/doc/src/snippets/code/src_corelib_io_qdir.cpp +++ b/doc/src/snippets/code/src_corelib_io_qdir.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_io_qdiriterator.cpp b/doc/src/snippets/code/src_corelib_io_qdiriterator.cpp index e7a93d4021..5b611bb6e5 100644 --- a/doc/src/snippets/code/src_corelib_io_qdiriterator.cpp +++ b/doc/src/snippets/code/src_corelib_io_qdiriterator.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_io_qfile.cpp b/doc/src/snippets/code/src_corelib_io_qfile.cpp index 158971e9ca..d873ca43ab 100644 --- a/doc/src/snippets/code/src_corelib_io_qfile.cpp +++ b/doc/src/snippets/code/src_corelib_io_qfile.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_io_qfileinfo.cpp b/doc/src/snippets/code/src_corelib_io_qfileinfo.cpp index 85e00052f7..1e32f83f05 100644 --- a/doc/src/snippets/code/src_corelib_io_qfileinfo.cpp +++ b/doc/src/snippets/code/src_corelib_io_qfileinfo.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_io_qiodevice.cpp b/doc/src/snippets/code/src_corelib_io_qiodevice.cpp index 1e2a976c77..5ba01a4d8f 100644 --- a/doc/src/snippets/code/src_corelib_io_qiodevice.cpp +++ b/doc/src/snippets/code/src_corelib_io_qiodevice.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_io_qprocess.cpp b/doc/src/snippets/code/src_corelib_io_qprocess.cpp index 64fb17a7c7..75d5a8fbe6 100644 --- a/doc/src/snippets/code/src_corelib_io_qprocess.cpp +++ b/doc/src/snippets/code/src_corelib_io_qprocess.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_io_qsettings.cpp b/doc/src/snippets/code/src_corelib_io_qsettings.cpp index 064cf2cf34..17597f5131 100644 --- a/doc/src/snippets/code/src_corelib_io_qsettings.cpp +++ b/doc/src/snippets/code/src_corelib_io_qsettings.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_io_qtemporarydir.cpp b/doc/src/snippets/code/src_corelib_io_qtemporarydir.cpp index 4cdc54a6c4..11f9a07346 100644 --- a/doc/src/snippets/code/src_corelib_io_qtemporarydir.cpp +++ b/doc/src/snippets/code/src_corelib_io_qtemporarydir.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_io_qtemporaryfile.cpp b/doc/src/snippets/code/src_corelib_io_qtemporaryfile.cpp index 1fb1ccd77d..bdcfbf9c4d 100644 --- a/doc/src/snippets/code/src_corelib_io_qtemporaryfile.cpp +++ b/doc/src/snippets/code/src_corelib_io_qtemporaryfile.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_io_qtextstream.cpp b/doc/src/snippets/code/src_corelib_io_qtextstream.cpp index b3483a9b10..8028132ad9 100644 --- a/doc/src/snippets/code/src_corelib_io_qtextstream.cpp +++ b/doc/src/snippets/code/src_corelib_io_qtextstream.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_io_qurl.cpp b/doc/src/snippets/code/src_corelib_io_qurl.cpp index 18f36da9f4..81c02cdada 100644 --- a/doc/src/snippets/code/src_corelib_io_qurl.cpp +++ b/doc/src/snippets/code/src_corelib_io_qurl.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_kernel_qabstracteventdispatcher.cpp b/doc/src/snippets/code/src_corelib_kernel_qabstracteventdispatcher.cpp index 8f0a5c7ec8..c63b405203 100644 --- a/doc/src/snippets/code/src_corelib_kernel_qabstracteventdispatcher.cpp +++ b/doc/src/snippets/code/src_corelib_kernel_qabstracteventdispatcher.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_kernel_qabstractitemmodel.cpp b/doc/src/snippets/code/src_corelib_kernel_qabstractitemmodel.cpp index 5919c01085..d39271cccd 100644 --- a/doc/src/snippets/code/src_corelib_kernel_qabstractitemmodel.cpp +++ b/doc/src/snippets/code/src_corelib_kernel_qabstractitemmodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_kernel_qcoreapplication.cpp b/doc/src/snippets/code/src_corelib_kernel_qcoreapplication.cpp index 0e6c16f6de..0deb5db7f1 100644 --- a/doc/src/snippets/code/src_corelib_kernel_qcoreapplication.cpp +++ b/doc/src/snippets/code/src_corelib_kernel_qcoreapplication.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_kernel_qmetaobject.cpp b/doc/src/snippets/code/src_corelib_kernel_qmetaobject.cpp index 86bad5e825..9683f2ce57 100644 --- a/doc/src/snippets/code/src_corelib_kernel_qmetaobject.cpp +++ b/doc/src/snippets/code/src_corelib_kernel_qmetaobject.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_kernel_qmetatype.cpp b/doc/src/snippets/code/src_corelib_kernel_qmetatype.cpp index eb913f4231..89ac8add0b 100644 --- a/doc/src/snippets/code/src_corelib_kernel_qmetatype.cpp +++ b/doc/src/snippets/code/src_corelib_kernel_qmetatype.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_kernel_qmimedata.cpp b/doc/src/snippets/code/src_corelib_kernel_qmimedata.cpp index fcfc662f45..481dc1fe90 100644 --- a/doc/src/snippets/code/src_corelib_kernel_qmimedata.cpp +++ b/doc/src/snippets/code/src_corelib_kernel_qmimedata.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_kernel_qobject.cpp b/doc/src/snippets/code/src_corelib_kernel_qobject.cpp index b6d0e39ab0..fad0ef7dfe 100644 --- a/doc/src/snippets/code/src_corelib_kernel_qobject.cpp +++ b/doc/src/snippets/code/src_corelib_kernel_qobject.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_kernel_qsystemsemaphore.cpp b/doc/src/snippets/code/src_corelib_kernel_qsystemsemaphore.cpp index 1f5c5acda4..32a7bdd706 100644 --- a/doc/src/snippets/code/src_corelib_kernel_qsystemsemaphore.cpp +++ b/doc/src/snippets/code/src_corelib_kernel_qsystemsemaphore.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_kernel_qtimer.cpp b/doc/src/snippets/code/src_corelib_kernel_qtimer.cpp index ef06fd84b2..2e5b4f4cea 100644 --- a/doc/src/snippets/code/src_corelib_kernel_qtimer.cpp +++ b/doc/src/snippets/code/src_corelib_kernel_qtimer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_kernel_qvariant.cpp b/doc/src/snippets/code/src_corelib_kernel_qvariant.cpp index 8b1bcbf41d..fd87d6c926 100644 --- a/doc/src/snippets/code/src_corelib_kernel_qvariant.cpp +++ b/doc/src/snippets/code/src_corelib_kernel_qvariant.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_plugin_qlibrary.cpp b/doc/src/snippets/code/src_corelib_plugin_qlibrary.cpp index 8943e92475..1e4f8b66cc 100644 --- a/doc/src/snippets/code/src_corelib_plugin_qlibrary.cpp +++ b/doc/src/snippets/code/src_corelib_plugin_qlibrary.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_plugin_quuid.cpp b/doc/src/snippets/code/src_corelib_plugin_quuid.cpp index 88cdb54515..7deb859acf 100644 --- a/doc/src/snippets/code/src_corelib_plugin_quuid.cpp +++ b/doc/src/snippets/code/src_corelib_plugin_quuid.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_statemachine_qstatemachine.cpp b/doc/src/snippets/code/src_corelib_statemachine_qstatemachine.cpp index 9909b1b6e2..e56a8fa214 100644 --- a/doc/src/snippets/code/src_corelib_statemachine_qstatemachine.cpp +++ b/doc/src/snippets/code/src_corelib_statemachine_qstatemachine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_thread_qatomic.cpp b/doc/src/snippets/code/src_corelib_thread_qatomic.cpp index a70c187b7d..d43a6fed77 100644 --- a/doc/src/snippets/code/src_corelib_thread_qatomic.cpp +++ b/doc/src/snippets/code/src_corelib_thread_qatomic.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_thread_qmutex.cpp b/doc/src/snippets/code/src_corelib_thread_qmutex.cpp index 7800a4da2d..b52709c5ce 100644 --- a/doc/src/snippets/code/src_corelib_thread_qmutex.cpp +++ b/doc/src/snippets/code/src_corelib_thread_qmutex.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_thread_qmutexpool.cpp b/doc/src/snippets/code/src_corelib_thread_qmutexpool.cpp index 5163fe54f8..c361946133 100644 --- a/doc/src/snippets/code/src_corelib_thread_qmutexpool.cpp +++ b/doc/src/snippets/code/src_corelib_thread_qmutexpool.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_thread_qreadwritelock.cpp b/doc/src/snippets/code/src_corelib_thread_qreadwritelock.cpp index 9b325a785d..c0a5f60416 100644 --- a/doc/src/snippets/code/src_corelib_thread_qreadwritelock.cpp +++ b/doc/src/snippets/code/src_corelib_thread_qreadwritelock.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_thread_qsemaphore.cpp b/doc/src/snippets/code/src_corelib_thread_qsemaphore.cpp index 72a15dee2c..023e094216 100644 --- a/doc/src/snippets/code/src_corelib_thread_qsemaphore.cpp +++ b/doc/src/snippets/code/src_corelib_thread_qsemaphore.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_thread_qthread.cpp b/doc/src/snippets/code/src_corelib_thread_qthread.cpp index 2b2422f7de..fd0dbdeb06 100644 --- a/doc/src/snippets/code/src_corelib_thread_qthread.cpp +++ b/doc/src/snippets/code/src_corelib_thread_qthread.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_thread_qwaitcondition_unix.cpp b/doc/src/snippets/code/src_corelib_thread_qwaitcondition_unix.cpp index 49574cb36d..ad940b2edf 100644 --- a/doc/src/snippets/code/src_corelib_thread_qwaitcondition_unix.cpp +++ b/doc/src/snippets/code/src_corelib_thread_qwaitcondition_unix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_tools_qbitarray.cpp b/doc/src/snippets/code/src_corelib_tools_qbitarray.cpp index 11621dcf92..5e780ad338 100644 --- a/doc/src/snippets/code/src_corelib_tools_qbitarray.cpp +++ b/doc/src/snippets/code/src_corelib_tools_qbitarray.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_tools_qbytearray.cpp b/doc/src/snippets/code/src_corelib_tools_qbytearray.cpp index 4f3d8dda91..9b717249ba 100644 --- a/doc/src/snippets/code/src_corelib_tools_qbytearray.cpp +++ b/doc/src/snippets/code/src_corelib_tools_qbytearray.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_tools_qdatetime.cpp b/doc/src/snippets/code/src_corelib_tools_qdatetime.cpp index 3c53394a3b..56cc1dea5c 100644 --- a/doc/src/snippets/code/src_corelib_tools_qdatetime.cpp +++ b/doc/src/snippets/code/src_corelib_tools_qdatetime.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_tools_qeasingcurve.cpp b/doc/src/snippets/code/src_corelib_tools_qeasingcurve.cpp index 59ae1b551c..ebfeebb891 100644 --- a/doc/src/snippets/code/src_corelib_tools_qeasingcurve.cpp +++ b/doc/src/snippets/code/src_corelib_tools_qeasingcurve.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_tools_qhash.cpp b/doc/src/snippets/code/src_corelib_tools_qhash.cpp index a6bedb957e..7c3fc25a76 100644 --- a/doc/src/snippets/code/src_corelib_tools_qhash.cpp +++ b/doc/src/snippets/code/src_corelib_tools_qhash.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_tools_qlinkedlist.cpp b/doc/src/snippets/code/src_corelib_tools_qlinkedlist.cpp index 2bfafc81b4..cbb338461a 100644 --- a/doc/src/snippets/code/src_corelib_tools_qlinkedlist.cpp +++ b/doc/src/snippets/code/src_corelib_tools_qlinkedlist.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_tools_qlistdata.cpp b/doc/src/snippets/code/src_corelib_tools_qlistdata.cpp index f580ba1940..7d939fdd79 100644 --- a/doc/src/snippets/code/src_corelib_tools_qlistdata.cpp +++ b/doc/src/snippets/code/src_corelib_tools_qlistdata.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_tools_qlocale.cpp b/doc/src/snippets/code/src_corelib_tools_qlocale.cpp index 674b6f6313..4d41bf3822 100644 --- a/doc/src/snippets/code/src_corelib_tools_qlocale.cpp +++ b/doc/src/snippets/code/src_corelib_tools_qlocale.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_tools_qmap.cpp b/doc/src/snippets/code/src_corelib_tools_qmap.cpp index 13715435f1..2242feb2af 100644 --- a/doc/src/snippets/code/src_corelib_tools_qmap.cpp +++ b/doc/src/snippets/code/src_corelib_tools_qmap.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_tools_qpoint.cpp b/doc/src/snippets/code/src_corelib_tools_qpoint.cpp index f5c6ec996c..5025fe6dbc 100644 --- a/doc/src/snippets/code/src_corelib_tools_qpoint.cpp +++ b/doc/src/snippets/code/src_corelib_tools_qpoint.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_tools_qqueue.cpp b/doc/src/snippets/code/src_corelib_tools_qqueue.cpp index 6b5509aa1a..dcf916f1f6 100644 --- a/doc/src/snippets/code/src_corelib_tools_qqueue.cpp +++ b/doc/src/snippets/code/src_corelib_tools_qqueue.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_tools_qrect.cpp b/doc/src/snippets/code/src_corelib_tools_qrect.cpp index 3a3d0deec0..d8206da2d5 100644 --- a/doc/src/snippets/code/src_corelib_tools_qrect.cpp +++ b/doc/src/snippets/code/src_corelib_tools_qrect.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_tools_qregexp.cpp b/doc/src/snippets/code/src_corelib_tools_qregexp.cpp index ccb6382723..4756030f58 100644 --- a/doc/src/snippets/code/src_corelib_tools_qregexp.cpp +++ b/doc/src/snippets/code/src_corelib_tools_qregexp.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_tools_qscopedpointer.cpp b/doc/src/snippets/code/src_corelib_tools_qscopedpointer.cpp index be28d56eb2..300da70f22 100644 --- a/doc/src/snippets/code/src_corelib_tools_qscopedpointer.cpp +++ b/doc/src/snippets/code/src_corelib_tools_qscopedpointer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_tools_qsize.cpp b/doc/src/snippets/code/src_corelib_tools_qsize.cpp index 701627eb20..935cfdf232 100644 --- a/doc/src/snippets/code/src_corelib_tools_qsize.cpp +++ b/doc/src/snippets/code/src_corelib_tools_qsize.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_tools_qstring.cpp b/doc/src/snippets/code/src_corelib_tools_qstring.cpp index 4a43ac0f77..72361c9169 100644 --- a/doc/src/snippets/code/src_corelib_tools_qstring.cpp +++ b/doc/src/snippets/code/src_corelib_tools_qstring.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_tools_qtimeline.cpp b/doc/src/snippets/code/src_corelib_tools_qtimeline.cpp index 3374995bb2..9d0e0f2da7 100644 --- a/doc/src/snippets/code/src_corelib_tools_qtimeline.cpp +++ b/doc/src/snippets/code/src_corelib_tools_qtimeline.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_tools_qvector.cpp b/doc/src/snippets/code/src_corelib_tools_qvector.cpp index fc46d913d3..b2c05eb478 100644 --- a/doc/src/snippets/code/src_corelib_tools_qvector.cpp +++ b/doc/src/snippets/code/src_corelib_tools_qvector.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_corelib_xml_qxmlstream.cpp b/doc/src/snippets/code/src_corelib_xml_qxmlstream.cpp index fe08cea4c9..5e781d770b 100644 --- a/doc/src/snippets/code/src_corelib_xml_qxmlstream.cpp +++ b/doc/src/snippets/code/src_corelib_xml_qxmlstream.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_accessible_qaccessible.cpp b/doc/src/snippets/code/src_gui_accessible_qaccessible.cpp index 84eb1cd1ac..a3af95082a 100644 --- a/doc/src/snippets/code/src_gui_accessible_qaccessible.cpp +++ b/doc/src/snippets/code/src_gui_accessible_qaccessible.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_dialogs_qabstractprintdialog.cpp b/doc/src/snippets/code/src_gui_dialogs_qabstractprintdialog.cpp index bc5d296e07..f4a042b27f 100644 --- a/doc/src/snippets/code/src_gui_dialogs_qabstractprintdialog.cpp +++ b/doc/src/snippets/code/src_gui_dialogs_qabstractprintdialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_dialogs_qfiledialog.cpp b/doc/src/snippets/code/src_gui_dialogs_qfiledialog.cpp index ef14632437..e8e379575f 100644 --- a/doc/src/snippets/code/src_gui_dialogs_qfiledialog.cpp +++ b/doc/src/snippets/code/src_gui_dialogs_qfiledialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_dialogs_qfontdialog.cpp b/doc/src/snippets/code/src_gui_dialogs_qfontdialog.cpp index ef906d7e7e..d6a3dfec61 100644 --- a/doc/src/snippets/code/src_gui_dialogs_qfontdialog.cpp +++ b/doc/src/snippets/code/src_gui_dialogs_qfontdialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_dialogs_qmessagebox.cpp b/doc/src/snippets/code/src_gui_dialogs_qmessagebox.cpp index 7db6e264ae..196f995a1e 100644 --- a/doc/src/snippets/code/src_gui_dialogs_qmessagebox.cpp +++ b/doc/src/snippets/code/src_gui_dialogs_qmessagebox.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_dialogs_qwizard.cpp b/doc/src/snippets/code/src_gui_dialogs_qwizard.cpp index 0a8c033a26..6832a87cc4 100644 --- a/doc/src/snippets/code/src_gui_dialogs_qwizard.cpp +++ b/doc/src/snippets/code/src_gui_dialogs_qwizard.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_effects_qgraphicseffect.cpp b/doc/src/snippets/code/src_gui_effects_qgraphicseffect.cpp index 1fa1717fd6..3668734694 100644 --- a/doc/src/snippets/code/src_gui_effects_qgraphicseffect.cpp +++ b/doc/src/snippets/code/src_gui_effects_qgraphicseffect.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_embedded_qcopchannel_qws.cpp b/doc/src/snippets/code/src_gui_embedded_qcopchannel_qws.cpp index 38d17e8033..def46ebdcb 100644 --- a/doc/src/snippets/code/src_gui_embedded_qcopchannel_qws.cpp +++ b/doc/src/snippets/code/src_gui_embedded_qcopchannel_qws.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_embedded_qmouse_qws.cpp b/doc/src/snippets/code/src_gui_embedded_qmouse_qws.cpp index 31db87037a..fe2cf77ef5 100644 --- a/doc/src/snippets/code/src_gui_embedded_qmouse_qws.cpp +++ b/doc/src/snippets/code/src_gui_embedded_qmouse_qws.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_embedded_qmousetslib_qws.cpp b/doc/src/snippets/code/src_gui_embedded_qmousetslib_qws.cpp index dc5a77300f..4ceada7606 100644 --- a/doc/src/snippets/code/src_gui_embedded_qmousetslib_qws.cpp +++ b/doc/src/snippets/code/src_gui_embedded_qmousetslib_qws.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_embedded_qscreen_qws.cpp b/doc/src/snippets/code/src_gui_embedded_qscreen_qws.cpp index cb902e5ed4..5becd28c8a 100644 --- a/doc/src/snippets/code/src_gui_embedded_qscreen_qws.cpp +++ b/doc/src/snippets/code/src_gui_embedded_qscreen_qws.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_embedded_qtransportauth_qws.cpp b/doc/src/snippets/code/src_gui_embedded_qtransportauth_qws.cpp index 0d5294be08..461c893623 100644 --- a/doc/src/snippets/code/src_gui_embedded_qtransportauth_qws.cpp +++ b/doc/src/snippets/code/src_gui_embedded_qtransportauth_qws.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_embedded_qwindowsystem_qws.cpp b/doc/src/snippets/code/src_gui_embedded_qwindowsystem_qws.cpp index defa56a9e2..a7998759bc 100644 --- a/doc/src/snippets/code/src_gui_embedded_qwindowsystem_qws.cpp +++ b/doc/src/snippets/code/src_gui_embedded_qwindowsystem_qws.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_graphicsview_qgraphicsgridlayout.cpp b/doc/src/snippets/code/src_gui_graphicsview_qgraphicsgridlayout.cpp index fb4178bda0..0224eade12 100644 --- a/doc/src/snippets/code/src_gui_graphicsview_qgraphicsgridlayout.cpp +++ b/doc/src/snippets/code/src_gui_graphicsview_qgraphicsgridlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_graphicsview_qgraphicsitem.cpp b/doc/src/snippets/code/src_gui_graphicsview_qgraphicsitem.cpp index c4cf674995..ac069815a4 100644 --- a/doc/src/snippets/code/src_gui_graphicsview_qgraphicsitem.cpp +++ b/doc/src/snippets/code/src_gui_graphicsview_qgraphicsitem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_graphicsview_qgraphicslinearlayout.cpp b/doc/src/snippets/code/src_gui_graphicsview_qgraphicslinearlayout.cpp index 492827a9d1..55765085e1 100644 --- a/doc/src/snippets/code/src_gui_graphicsview_qgraphicslinearlayout.cpp +++ b/doc/src/snippets/code/src_gui_graphicsview_qgraphicslinearlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_graphicsview_qgraphicsproxywidget.cpp b/doc/src/snippets/code/src_gui_graphicsview_qgraphicsproxywidget.cpp index 470b1505da..da56f20fc5 100644 --- a/doc/src/snippets/code/src_gui_graphicsview_qgraphicsproxywidget.cpp +++ b/doc/src/snippets/code/src_gui_graphicsview_qgraphicsproxywidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_graphicsview_qgraphicsscene.cpp b/doc/src/snippets/code/src_gui_graphicsview_qgraphicsscene.cpp index 383a8efbb7..d139507e56 100644 --- a/doc/src/snippets/code/src_gui_graphicsview_qgraphicsscene.cpp +++ b/doc/src/snippets/code/src_gui_graphicsview_qgraphicsscene.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_graphicsview_qgraphicssceneevent.cpp b/doc/src/snippets/code/src_gui_graphicsview_qgraphicssceneevent.cpp index 9ad042bc82..b114ec7303 100644 --- a/doc/src/snippets/code/src_gui_graphicsview_qgraphicssceneevent.cpp +++ b/doc/src/snippets/code/src_gui_graphicsview_qgraphicssceneevent.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_graphicsview_qgraphicsview.cpp b/doc/src/snippets/code/src_gui_graphicsview_qgraphicsview.cpp index 0fffc4be40..498c475add 100644 --- a/doc/src/snippets/code/src_gui_graphicsview_qgraphicsview.cpp +++ b/doc/src/snippets/code/src_gui_graphicsview_qgraphicsview.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_graphicsview_qgraphicswidget.cpp b/doc/src/snippets/code/src_gui_graphicsview_qgraphicswidget.cpp index aed1787984..f85aa2f53c 100644 --- a/doc/src/snippets/code/src_gui_graphicsview_qgraphicswidget.cpp +++ b/doc/src/snippets/code/src_gui_graphicsview_qgraphicswidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_image_qbitmap.cpp b/doc/src/snippets/code/src_gui_image_qbitmap.cpp index 7b388433b5..8abb2c09c1 100644 --- a/doc/src/snippets/code/src_gui_image_qbitmap.cpp +++ b/doc/src/snippets/code/src_gui_image_qbitmap.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_image_qicon.cpp b/doc/src/snippets/code/src_gui_image_qicon.cpp index cf6469eaae..10464ee1fa 100644 --- a/doc/src/snippets/code/src_gui_image_qicon.cpp +++ b/doc/src/snippets/code/src_gui_image_qicon.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_image_qimage.cpp b/doc/src/snippets/code/src_gui_image_qimage.cpp index cbfdf14cc1..8b69a7adee 100644 --- a/doc/src/snippets/code/src_gui_image_qimage.cpp +++ b/doc/src/snippets/code/src_gui_image_qimage.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_image_qimagereader.cpp b/doc/src/snippets/code/src_gui_image_qimagereader.cpp index f4c64c165f..c3c44f26ad 100644 --- a/doc/src/snippets/code/src_gui_image_qimagereader.cpp +++ b/doc/src/snippets/code/src_gui_image_qimagereader.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_image_qimagewriter.cpp b/doc/src/snippets/code/src_gui_image_qimagewriter.cpp index e44442ba7e..7379320e4d 100644 --- a/doc/src/snippets/code/src_gui_image_qimagewriter.cpp +++ b/doc/src/snippets/code/src_gui_image_qimagewriter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_image_qmovie.cpp b/doc/src/snippets/code/src_gui_image_qmovie.cpp index 4efbac52b9..903f0d313b 100644 --- a/doc/src/snippets/code/src_gui_image_qmovie.cpp +++ b/doc/src/snippets/code/src_gui_image_qmovie.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_image_qpixmap.cpp b/doc/src/snippets/code/src_gui_image_qpixmap.cpp index 11e021201d..cd5f126639 100644 --- a/doc/src/snippets/code/src_gui_image_qpixmap.cpp +++ b/doc/src/snippets/code/src_gui_image_qpixmap.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_image_qpixmapcache.cpp b/doc/src/snippets/code/src_gui_image_qpixmapcache.cpp index 08973b851d..39c0b17042 100644 --- a/doc/src/snippets/code/src_gui_image_qpixmapcache.cpp +++ b/doc/src/snippets/code/src_gui_image_qpixmapcache.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_image_qpixmapfilter.cpp b/doc/src/snippets/code/src_gui_image_qpixmapfilter.cpp index 2d9c78f579..aa48e70125 100644 --- a/doc/src/snippets/code/src_gui_image_qpixmapfilter.cpp +++ b/doc/src/snippets/code/src_gui_image_qpixmapfilter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_itemviews_qabstractitemview.cpp b/doc/src/snippets/code/src_gui_itemviews_qabstractitemview.cpp index 75ada3acd2..e011b841b1 100644 --- a/doc/src/snippets/code/src_gui_itemviews_qabstractitemview.cpp +++ b/doc/src/snippets/code/src_gui_itemviews_qabstractitemview.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_itemviews_qdatawidgetmapper.cpp b/doc/src/snippets/code/src_gui_itemviews_qdatawidgetmapper.cpp index a3b90e2c1e..945111c6b3 100644 --- a/doc/src/snippets/code/src_gui_itemviews_qdatawidgetmapper.cpp +++ b/doc/src/snippets/code/src_gui_itemviews_qdatawidgetmapper.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_itemviews_qitemeditorfactory.cpp b/doc/src/snippets/code/src_gui_itemviews_qitemeditorfactory.cpp index bef6711da0..233511bc28 100644 --- a/doc/src/snippets/code/src_gui_itemviews_qitemeditorfactory.cpp +++ b/doc/src/snippets/code/src_gui_itemviews_qitemeditorfactory.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_itemviews_qitemselectionmodel.cpp b/doc/src/snippets/code/src_gui_itemviews_qitemselectionmodel.cpp index 1277506cd0..87bda3365f 100644 --- a/doc/src/snippets/code/src_gui_itemviews_qitemselectionmodel.cpp +++ b/doc/src/snippets/code/src_gui_itemviews_qitemselectionmodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_itemviews_qstandarditemmodel.cpp b/doc/src/snippets/code/src_gui_itemviews_qstandarditemmodel.cpp index 6005179843..d9dd951a40 100644 --- a/doc/src/snippets/code/src_gui_itemviews_qstandarditemmodel.cpp +++ b/doc/src/snippets/code/src_gui_itemviews_qstandarditemmodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_itemviews_qtablewidget.cpp b/doc/src/snippets/code/src_gui_itemviews_qtablewidget.cpp index 4035ca8e13..a7983b618c 100644 --- a/doc/src/snippets/code/src_gui_itemviews_qtablewidget.cpp +++ b/doc/src/snippets/code/src_gui_itemviews_qtablewidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_itemviews_qtreewidget.cpp b/doc/src/snippets/code/src_gui_itemviews_qtreewidget.cpp index 4f5bc37d36..a72139f7fd 100644 --- a/doc/src/snippets/code/src_gui_itemviews_qtreewidget.cpp +++ b/doc/src/snippets/code/src_gui_itemviews_qtreewidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_kernel_qaction.cpp b/doc/src/snippets/code/src_gui_kernel_qaction.cpp index bfc613b36e..0591c01cc8 100644 --- a/doc/src/snippets/code/src_gui_kernel_qaction.cpp +++ b/doc/src/snippets/code/src_gui_kernel_qaction.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_kernel_qapplication.cpp b/doc/src/snippets/code/src_gui_kernel_qapplication.cpp index bb0cdde200..649068719f 100644 --- a/doc/src/snippets/code/src_gui_kernel_qapplication.cpp +++ b/doc/src/snippets/code/src_gui_kernel_qapplication.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_kernel_qapplication_x11.cpp b/doc/src/snippets/code/src_gui_kernel_qapplication_x11.cpp index a73f65de62..f36ce640c1 100644 --- a/doc/src/snippets/code/src_gui_kernel_qapplication_x11.cpp +++ b/doc/src/snippets/code/src_gui_kernel_qapplication_x11.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_kernel_qclipboard.cpp b/doc/src/snippets/code/src_gui_kernel_qclipboard.cpp index dd052d790b..c8414abf8a 100644 --- a/doc/src/snippets/code/src_gui_kernel_qclipboard.cpp +++ b/doc/src/snippets/code/src_gui_kernel_qclipboard.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_kernel_qevent.cpp b/doc/src/snippets/code/src_gui_kernel_qevent.cpp index d0627b2b44..1874e836b9 100644 --- a/doc/src/snippets/code/src_gui_kernel_qevent.cpp +++ b/doc/src/snippets/code/src_gui_kernel_qevent.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_kernel_qformlayout.cpp b/doc/src/snippets/code/src_gui_kernel_qformlayout.cpp index 94e6b1bd90..b27b007eff 100644 --- a/doc/src/snippets/code/src_gui_kernel_qformlayout.cpp +++ b/doc/src/snippets/code/src_gui_kernel_qformlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_kernel_qkeysequence.cpp b/doc/src/snippets/code/src_gui_kernel_qkeysequence.cpp index 1672dc7e85..8350170b0d 100644 --- a/doc/src/snippets/code/src_gui_kernel_qkeysequence.cpp +++ b/doc/src/snippets/code/src_gui_kernel_qkeysequence.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_kernel_qlayout.cpp b/doc/src/snippets/code/src_gui_kernel_qlayout.cpp index 35da7cd89e..eb5bedc4d5 100644 --- a/doc/src/snippets/code/src_gui_kernel_qlayout.cpp +++ b/doc/src/snippets/code/src_gui_kernel_qlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_kernel_qlayoutitem.cpp b/doc/src/snippets/code/src_gui_kernel_qlayoutitem.cpp index 306b822bdf..cf706c1a9b 100644 --- a/doc/src/snippets/code/src_gui_kernel_qlayoutitem.cpp +++ b/doc/src/snippets/code/src_gui_kernel_qlayoutitem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_kernel_qshortcut.cpp b/doc/src/snippets/code/src_gui_kernel_qshortcut.cpp index 16bdda8799..35e9aa0a69 100644 --- a/doc/src/snippets/code/src_gui_kernel_qshortcut.cpp +++ b/doc/src/snippets/code/src_gui_kernel_qshortcut.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_kernel_qshortcutmap.cpp b/doc/src/snippets/code/src_gui_kernel_qshortcutmap.cpp index db8edb46f3..99caa909b4 100644 --- a/doc/src/snippets/code/src_gui_kernel_qshortcutmap.cpp +++ b/doc/src/snippets/code/src_gui_kernel_qshortcutmap.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_kernel_qsound.cpp b/doc/src/snippets/code/src_gui_kernel_qsound.cpp index ebaeead9cb..0a68fd37bb 100644 --- a/doc/src/snippets/code/src_gui_kernel_qsound.cpp +++ b/doc/src/snippets/code/src_gui_kernel_qsound.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_kernel_qwidget.cpp b/doc/src/snippets/code/src_gui_kernel_qwidget.cpp index d142d56a1a..6cfb9bdf34 100644 --- a/doc/src/snippets/code/src_gui_kernel_qwidget.cpp +++ b/doc/src/snippets/code/src_gui_kernel_qwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_painting_qbrush.cpp b/doc/src/snippets/code/src_gui_painting_qbrush.cpp index c2ce61ea35..383433bd6a 100644 --- a/doc/src/snippets/code/src_gui_painting_qbrush.cpp +++ b/doc/src/snippets/code/src_gui_painting_qbrush.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_painting_qcolor.cpp b/doc/src/snippets/code/src_gui_painting_qcolor.cpp index 31434f2d96..0334235e02 100644 --- a/doc/src/snippets/code/src_gui_painting_qcolor.cpp +++ b/doc/src/snippets/code/src_gui_painting_qcolor.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_painting_qdrawutil.cpp b/doc/src/snippets/code/src_gui_painting_qdrawutil.cpp index 6822d818ae..d498802301 100644 --- a/doc/src/snippets/code/src_gui_painting_qdrawutil.cpp +++ b/doc/src/snippets/code/src_gui_painting_qdrawutil.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_painting_qmatrix.cpp b/doc/src/snippets/code/src_gui_painting_qmatrix.cpp index 63dfd6d493..afc1c79128 100644 --- a/doc/src/snippets/code/src_gui_painting_qmatrix.cpp +++ b/doc/src/snippets/code/src_gui_painting_qmatrix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_painting_qpainter.cpp b/doc/src/snippets/code/src_gui_painting_qpainter.cpp index da566ed43a..048ea4404e 100644 --- a/doc/src/snippets/code/src_gui_painting_qpainter.cpp +++ b/doc/src/snippets/code/src_gui_painting_qpainter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_painting_qpainterpath.cpp b/doc/src/snippets/code/src_gui_painting_qpainterpath.cpp index b2a9dcf5c7..3cf2d64b91 100644 --- a/doc/src/snippets/code/src_gui_painting_qpainterpath.cpp +++ b/doc/src/snippets/code/src_gui_painting_qpainterpath.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_painting_qpen.cpp b/doc/src/snippets/code/src_gui_painting_qpen.cpp index 8674516fbc..68b2be7592 100644 --- a/doc/src/snippets/code/src_gui_painting_qpen.cpp +++ b/doc/src/snippets/code/src_gui_painting_qpen.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_painting_qregion.cpp b/doc/src/snippets/code/src_gui_painting_qregion.cpp index 660138d461..ef52660a36 100644 --- a/doc/src/snippets/code/src_gui_painting_qregion.cpp +++ b/doc/src/snippets/code/src_gui_painting_qregion.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_painting_qregion_unix.cpp b/doc/src/snippets/code/src_gui_painting_qregion_unix.cpp index 2eddeea506..c239d84a11 100644 --- a/doc/src/snippets/code/src_gui_painting_qregion_unix.cpp +++ b/doc/src/snippets/code/src_gui_painting_qregion_unix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_painting_qtransform.cpp b/doc/src/snippets/code/src_gui_painting_qtransform.cpp index 24b1a359e1..bf379200dd 100644 --- a/doc/src/snippets/code/src_gui_painting_qtransform.cpp +++ b/doc/src/snippets/code/src_gui_painting_qtransform.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_qopenglshaderprogram.cpp b/doc/src/snippets/code/src_gui_qopenglshaderprogram.cpp index e3b537a9c2..191bb8e4ea 100644 --- a/doc/src/snippets/code/src_gui_qopenglshaderprogram.cpp +++ b/doc/src/snippets/code/src_gui_qopenglshaderprogram.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_qproxystyle.cpp b/doc/src/snippets/code/src_gui_qproxystyle.cpp index b4cd0b65d0..bdb64572d5 100644 --- a/doc/src/snippets/code/src_gui_qproxystyle.cpp +++ b/doc/src/snippets/code/src_gui_qproxystyle.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_styles_qstyle.cpp b/doc/src/snippets/code/src_gui_styles_qstyle.cpp index 40fb230c02..f6471db89b 100644 --- a/doc/src/snippets/code/src_gui_styles_qstyle.cpp +++ b/doc/src/snippets/code/src_gui_styles_qstyle.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_styles_qstyleoption.cpp b/doc/src/snippets/code/src_gui_styles_qstyleoption.cpp index ba65d3f5ea..9cbecace8f 100644 --- a/doc/src/snippets/code/src_gui_styles_qstyleoption.cpp +++ b/doc/src/snippets/code/src_gui_styles_qstyleoption.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_text_qfont.cpp b/doc/src/snippets/code/src_gui_text_qfont.cpp index 5694d6aab0..5c432cf11e 100644 --- a/doc/src/snippets/code/src_gui_text_qfont.cpp +++ b/doc/src/snippets/code/src_gui_text_qfont.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_text_qfontmetrics.cpp b/doc/src/snippets/code/src_gui_text_qfontmetrics.cpp index 3be333d22a..929957cced 100644 --- a/doc/src/snippets/code/src_gui_text_qfontmetrics.cpp +++ b/doc/src/snippets/code/src_gui_text_qfontmetrics.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_text_qsyntaxhighlighter.cpp b/doc/src/snippets/code/src_gui_text_qsyntaxhighlighter.cpp index a273f333a5..64068a48a2 100644 --- a/doc/src/snippets/code/src_gui_text_qsyntaxhighlighter.cpp +++ b/doc/src/snippets/code/src_gui_text_qsyntaxhighlighter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_text_qtextcursor.cpp b/doc/src/snippets/code/src_gui_text_qtextcursor.cpp index 9e99c4b676..9ce2566f53 100644 --- a/doc/src/snippets/code/src_gui_text_qtextcursor.cpp +++ b/doc/src/snippets/code/src_gui_text_qtextcursor.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_text_qtextdocument.cpp b/doc/src/snippets/code/src_gui_text_qtextdocument.cpp index 8165086d09..299967adbf 100644 --- a/doc/src/snippets/code/src_gui_text_qtextdocument.cpp +++ b/doc/src/snippets/code/src_gui_text_qtextdocument.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_text_qtextlayout.cpp b/doc/src/snippets/code/src_gui_text_qtextlayout.cpp index feb5219c1a..9f51f071e4 100644 --- a/doc/src/snippets/code/src_gui_text_qtextlayout.cpp +++ b/doc/src/snippets/code/src_gui_text_qtextlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_util_qcompleter.cpp b/doc/src/snippets/code/src_gui_util_qcompleter.cpp index bfc1b54cbd..7d903aa72a 100644 --- a/doc/src/snippets/code/src_gui_util_qcompleter.cpp +++ b/doc/src/snippets/code/src_gui_util_qcompleter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_util_qdesktopservices.cpp b/doc/src/snippets/code/src_gui_util_qdesktopservices.cpp index c878b71b6c..885268a7ac 100644 --- a/doc/src/snippets/code/src_gui_util_qdesktopservices.cpp +++ b/doc/src/snippets/code/src_gui_util_qdesktopservices.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_util_qundostack.cpp b/doc/src/snippets/code/src_gui_util_qundostack.cpp index 2eccd71015..f022d963ad 100644 --- a/doc/src/snippets/code/src_gui_util_qundostack.cpp +++ b/doc/src/snippets/code/src_gui_util_qundostack.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_widgets_qabstractbutton.cpp b/doc/src/snippets/code/src_gui_widgets_qabstractbutton.cpp index 3bfe1d2aaa..073f49bf31 100644 --- a/doc/src/snippets/code/src_gui_widgets_qabstractbutton.cpp +++ b/doc/src/snippets/code/src_gui_widgets_qabstractbutton.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_widgets_qabstractspinbox.cpp b/doc/src/snippets/code/src_gui_widgets_qabstractspinbox.cpp index 3a73308e63..c35ca00916 100644 --- a/doc/src/snippets/code/src_gui_widgets_qabstractspinbox.cpp +++ b/doc/src/snippets/code/src_gui_widgets_qabstractspinbox.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_widgets_qcalendarwidget.cpp b/doc/src/snippets/code/src_gui_widgets_qcalendarwidget.cpp index 336a4064b5..9b4bf904fa 100644 --- a/doc/src/snippets/code/src_gui_widgets_qcalendarwidget.cpp +++ b/doc/src/snippets/code/src_gui_widgets_qcalendarwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_widgets_qcheckbox.cpp b/doc/src/snippets/code/src_gui_widgets_qcheckbox.cpp index 785d0cfd93..f2e03f04aa 100644 --- a/doc/src/snippets/code/src_gui_widgets_qcheckbox.cpp +++ b/doc/src/snippets/code/src_gui_widgets_qcheckbox.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_widgets_qdatetimeedit.cpp b/doc/src/snippets/code/src_gui_widgets_qdatetimeedit.cpp index 73253f79f1..2d0f69634a 100644 --- a/doc/src/snippets/code/src_gui_widgets_qdatetimeedit.cpp +++ b/doc/src/snippets/code/src_gui_widgets_qdatetimeedit.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_widgets_qdockwidget.cpp b/doc/src/snippets/code/src_gui_widgets_qdockwidget.cpp index fd1d81769b..15f7de40f1 100644 --- a/doc/src/snippets/code/src_gui_widgets_qdockwidget.cpp +++ b/doc/src/snippets/code/src_gui_widgets_qdockwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_widgets_qframe.cpp b/doc/src/snippets/code/src_gui_widgets_qframe.cpp index 5fb45c1f77..b2c56b2e18 100644 --- a/doc/src/snippets/code/src_gui_widgets_qframe.cpp +++ b/doc/src/snippets/code/src_gui_widgets_qframe.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_widgets_qgroupbox.cpp b/doc/src/snippets/code/src_gui_widgets_qgroupbox.cpp index 0f4a5b8afa..9242a849fa 100644 --- a/doc/src/snippets/code/src_gui_widgets_qgroupbox.cpp +++ b/doc/src/snippets/code/src_gui_widgets_qgroupbox.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_widgets_qlabel.cpp b/doc/src/snippets/code/src_gui_widgets_qlabel.cpp index cda00fa349..80f24f779a 100644 --- a/doc/src/snippets/code/src_gui_widgets_qlabel.cpp +++ b/doc/src/snippets/code/src_gui_widgets_qlabel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_widgets_qlineedit.cpp b/doc/src/snippets/code/src_gui_widgets_qlineedit.cpp index 7b9e183703..40b11e408a 100644 --- a/doc/src/snippets/code/src_gui_widgets_qlineedit.cpp +++ b/doc/src/snippets/code/src_gui_widgets_qlineedit.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_widgets_qmainwindow.cpp b/doc/src/snippets/code/src_gui_widgets_qmainwindow.cpp index d465c7013d..4d631217be 100644 --- a/doc/src/snippets/code/src_gui_widgets_qmainwindow.cpp +++ b/doc/src/snippets/code/src_gui_widgets_qmainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_widgets_qmenu.cpp b/doc/src/snippets/code/src_gui_widgets_qmenu.cpp index f2dd1ccf52..332725a6f3 100644 --- a/doc/src/snippets/code/src_gui_widgets_qmenu.cpp +++ b/doc/src/snippets/code/src_gui_widgets_qmenu.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_widgets_qmenubar.cpp b/doc/src/snippets/code/src_gui_widgets_qmenubar.cpp index 98eafb4239..a1d24e5c35 100644 --- a/doc/src/snippets/code/src_gui_widgets_qmenubar.cpp +++ b/doc/src/snippets/code/src_gui_widgets_qmenubar.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_widgets_qplaintextedit.cpp b/doc/src/snippets/code/src_gui_widgets_qplaintextedit.cpp index 4b0219d68c..93c077adf2 100644 --- a/doc/src/snippets/code/src_gui_widgets_qplaintextedit.cpp +++ b/doc/src/snippets/code/src_gui_widgets_qplaintextedit.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_widgets_qpushbutton.cpp b/doc/src/snippets/code/src_gui_widgets_qpushbutton.cpp index 099d087dcb..36c490a291 100644 --- a/doc/src/snippets/code/src_gui_widgets_qpushbutton.cpp +++ b/doc/src/snippets/code/src_gui_widgets_qpushbutton.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_widgets_qradiobutton.cpp b/doc/src/snippets/code/src_gui_widgets_qradiobutton.cpp index 3dc031c383..7b29d18cbd 100644 --- a/doc/src/snippets/code/src_gui_widgets_qradiobutton.cpp +++ b/doc/src/snippets/code/src_gui_widgets_qradiobutton.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_widgets_qrubberband.cpp b/doc/src/snippets/code/src_gui_widgets_qrubberband.cpp index 3289344c43..c0bfc3331a 100644 --- a/doc/src/snippets/code/src_gui_widgets_qrubberband.cpp +++ b/doc/src/snippets/code/src_gui_widgets_qrubberband.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_widgets_qscrollarea.cpp b/doc/src/snippets/code/src_gui_widgets_qscrollarea.cpp index 64f8d293df..25f20ad6ab 100644 --- a/doc/src/snippets/code/src_gui_widgets_qscrollarea.cpp +++ b/doc/src/snippets/code/src_gui_widgets_qscrollarea.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_widgets_qspinbox.cpp b/doc/src/snippets/code/src_gui_widgets_qspinbox.cpp index d4022d790e..ff88a52b35 100644 --- a/doc/src/snippets/code/src_gui_widgets_qspinbox.cpp +++ b/doc/src/snippets/code/src_gui_widgets_qspinbox.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_widgets_qsplashscreen.cpp b/doc/src/snippets/code/src_gui_widgets_qsplashscreen.cpp index c8ee298c78..17bd6f8536 100644 --- a/doc/src/snippets/code/src_gui_widgets_qsplashscreen.cpp +++ b/doc/src/snippets/code/src_gui_widgets_qsplashscreen.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_widgets_qsplitter.cpp b/doc/src/snippets/code/src_gui_widgets_qsplitter.cpp index 05f907a7e6..3fdc5d4eb1 100644 --- a/doc/src/snippets/code/src_gui_widgets_qsplitter.cpp +++ b/doc/src/snippets/code/src_gui_widgets_qsplitter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_widgets_qstatusbar.cpp b/doc/src/snippets/code/src_gui_widgets_qstatusbar.cpp index 12e962c970..6fdc7980c9 100644 --- a/doc/src/snippets/code/src_gui_widgets_qstatusbar.cpp +++ b/doc/src/snippets/code/src_gui_widgets_qstatusbar.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_widgets_qtextbrowser.cpp b/doc/src/snippets/code/src_gui_widgets_qtextbrowser.cpp index 8ad9deb4ea..4078b3bd6b 100644 --- a/doc/src/snippets/code/src_gui_widgets_qtextbrowser.cpp +++ b/doc/src/snippets/code/src_gui_widgets_qtextbrowser.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_widgets_qtextedit.cpp b/doc/src/snippets/code/src_gui_widgets_qtextedit.cpp index 5ee24a04d3..8284247cc3 100644 --- a/doc/src/snippets/code/src_gui_widgets_qtextedit.cpp +++ b/doc/src/snippets/code/src_gui_widgets_qtextedit.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_widgets_qvalidator.cpp b/doc/src/snippets/code/src_gui_widgets_qvalidator.cpp index 4a104ddc33..bcdfb0b5aa 100644 --- a/doc/src/snippets/code/src_gui_widgets_qvalidator.cpp +++ b/doc/src/snippets/code/src_gui_widgets_qvalidator.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_gui_widgets_qworkspace.cpp b/doc/src/snippets/code/src_gui_widgets_qworkspace.cpp index fd1a43bf13..22ac81afab 100644 --- a/doc/src/snippets/code/src_gui_widgets_qworkspace.cpp +++ b/doc/src/snippets/code/src_gui_widgets_qworkspace.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_network_access_qftp.cpp b/doc/src/snippets/code/src_network_access_qftp.cpp index 621d10de0b..b6047185aa 100644 --- a/doc/src/snippets/code/src_network_access_qftp.cpp +++ b/doc/src/snippets/code/src_network_access_qftp.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_network_access_qhttp.cpp b/doc/src/snippets/code/src_network_access_qhttp.cpp index 374f1f2121..1922563f62 100644 --- a/doc/src/snippets/code/src_network_access_qhttp.cpp +++ b/doc/src/snippets/code/src_network_access_qhttp.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_network_access_qhttpmultipart.cpp b/doc/src/snippets/code/src_network_access_qhttpmultipart.cpp index 7c2e0ac633..2b6032316b 100644 --- a/doc/src/snippets/code/src_network_access_qhttpmultipart.cpp +++ b/doc/src/snippets/code/src_network_access_qhttpmultipart.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_network_access_qhttppart.cpp b/doc/src/snippets/code/src_network_access_qhttppart.cpp index e70fead992..3a16253d81 100644 --- a/doc/src/snippets/code/src_network_access_qhttppart.cpp +++ b/doc/src/snippets/code/src_network_access_qhttppart.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_network_access_qnetworkaccessmanager.cpp b/doc/src/snippets/code/src_network_access_qnetworkaccessmanager.cpp index 327d58f226..c8818e94c4 100644 --- a/doc/src/snippets/code/src_network_access_qnetworkaccessmanager.cpp +++ b/doc/src/snippets/code/src_network_access_qnetworkaccessmanager.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_network_access_qnetworkdiskcache.cpp b/doc/src/snippets/code/src_network_access_qnetworkdiskcache.cpp index 8d775bb20e..2a0b5a62f9 100644 --- a/doc/src/snippets/code/src_network_access_qnetworkdiskcache.cpp +++ b/doc/src/snippets/code/src_network_access_qnetworkdiskcache.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_network_access_qnetworkreply.cpp b/doc/src/snippets/code/src_network_access_qnetworkreply.cpp index 01f66bc63c..90d26f900b 100644 --- a/doc/src/snippets/code/src_network_access_qnetworkreply.cpp +++ b/doc/src/snippets/code/src_network_access_qnetworkreply.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_network_access_qnetworkrequest.cpp b/doc/src/snippets/code/src_network_access_qnetworkrequest.cpp index 685eb0c3bc..75da0909db 100644 --- a/doc/src/snippets/code/src_network_access_qnetworkrequest.cpp +++ b/doc/src/snippets/code/src_network_access_qnetworkrequest.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_network_bearer_qnetworkconfigmanager.cpp b/doc/src/snippets/code/src_network_bearer_qnetworkconfigmanager.cpp index af1a3e84df..19d103a60d 100644 --- a/doc/src/snippets/code/src_network_bearer_qnetworkconfigmanager.cpp +++ b/doc/src/snippets/code/src_network_bearer_qnetworkconfigmanager.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_network_kernel_qhostaddress.cpp b/doc/src/snippets/code/src_network_kernel_qhostaddress.cpp index bd203862c9..8f5524ef7c 100644 --- a/doc/src/snippets/code/src_network_kernel_qhostaddress.cpp +++ b/doc/src/snippets/code/src_network_kernel_qhostaddress.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_network_kernel_qhostinfo.cpp b/doc/src/snippets/code/src_network_kernel_qhostinfo.cpp index 97d58ef32c..585e8a46c3 100644 --- a/doc/src/snippets/code/src_network_kernel_qhostinfo.cpp +++ b/doc/src/snippets/code/src_network_kernel_qhostinfo.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_network_kernel_qnetworkproxy.cpp b/doc/src/snippets/code/src_network_kernel_qnetworkproxy.cpp index 393674c6f1..2eb9b19edc 100644 --- a/doc/src/snippets/code/src_network_kernel_qnetworkproxy.cpp +++ b/doc/src/snippets/code/src_network_kernel_qnetworkproxy.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_network_socket_qabstractsocket.cpp b/doc/src/snippets/code/src_network_socket_qabstractsocket.cpp index 8021b80733..2170f9b17f 100644 --- a/doc/src/snippets/code/src_network_socket_qabstractsocket.cpp +++ b/doc/src/snippets/code/src_network_socket_qabstractsocket.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_network_socket_qlocalsocket_unix.cpp b/doc/src/snippets/code/src_network_socket_qlocalsocket_unix.cpp index 9a6e5c2830..ddc9174d5b 100644 --- a/doc/src/snippets/code/src_network_socket_qlocalsocket_unix.cpp +++ b/doc/src/snippets/code/src_network_socket_qlocalsocket_unix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_network_socket_qnativesocketengine.cpp b/doc/src/snippets/code/src_network_socket_qnativesocketengine.cpp index 85cf4d7a62..2f72f12887 100644 --- a/doc/src/snippets/code/src_network_socket_qnativesocketengine.cpp +++ b/doc/src/snippets/code/src_network_socket_qnativesocketengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_network_socket_qtcpserver.cpp b/doc/src/snippets/code/src_network_socket_qtcpserver.cpp index 6dca8b6054..6be3a5c110 100644 --- a/doc/src/snippets/code/src_network_socket_qtcpserver.cpp +++ b/doc/src/snippets/code/src_network_socket_qtcpserver.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_network_socket_qudpsocket.cpp b/doc/src/snippets/code/src_network_socket_qudpsocket.cpp index 47f00b6b45..e087831c71 100644 --- a/doc/src/snippets/code/src_network_socket_qudpsocket.cpp +++ b/doc/src/snippets/code/src_network_socket_qudpsocket.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_network_ssl_qsslcertificate.cpp b/doc/src/snippets/code/src_network_ssl_qsslcertificate.cpp index 679f41e1b4..c64fce45ee 100644 --- a/doc/src/snippets/code/src_network_ssl_qsslcertificate.cpp +++ b/doc/src/snippets/code/src_network_ssl_qsslcertificate.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_network_ssl_qsslconfiguration.cpp b/doc/src/snippets/code/src_network_ssl_qsslconfiguration.cpp index 96fe1afdd5..b15463c964 100644 --- a/doc/src/snippets/code/src_network_ssl_qsslconfiguration.cpp +++ b/doc/src/snippets/code/src_network_ssl_qsslconfiguration.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_network_ssl_qsslsocket.cpp b/doc/src/snippets/code/src_network_ssl_qsslsocket.cpp index d415bae034..0088a0f43f 100644 --- a/doc/src/snippets/code/src_network_ssl_qsslsocket.cpp +++ b/doc/src/snippets/code/src_network_ssl_qsslsocket.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_opengl_qgl.cpp b/doc/src/snippets/code/src_opengl_qgl.cpp index 6ef049ac90..98c1fc08c2 100644 --- a/doc/src/snippets/code/src_opengl_qgl.cpp +++ b/doc/src/snippets/code/src_opengl_qgl.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_opengl_qglcolormap.cpp b/doc/src/snippets/code/src_opengl_qglcolormap.cpp index 3bd780ba45..9371700c1f 100644 --- a/doc/src/snippets/code/src_opengl_qglcolormap.cpp +++ b/doc/src/snippets/code/src_opengl_qglcolormap.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_opengl_qglpixelbuffer.cpp b/doc/src/snippets/code/src_opengl_qglpixelbuffer.cpp index 6825ebfab8..89593484c2 100644 --- a/doc/src/snippets/code/src_opengl_qglpixelbuffer.cpp +++ b/doc/src/snippets/code/src_opengl_qglpixelbuffer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_opengl_qglshaderprogram.cpp b/doc/src/snippets/code/src_opengl_qglshaderprogram.cpp index 812adf967f..634412a078 100644 --- a/doc/src/snippets/code/src_opengl_qglshaderprogram.cpp +++ b/doc/src/snippets/code/src_opengl_qglshaderprogram.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_qdbus_qdbusabstractinterface.cpp b/doc/src/snippets/code/src_qdbus_qdbusabstractinterface.cpp index ba1b902a7a..be378bfd44 100644 --- a/doc/src/snippets/code/src_qdbus_qdbusabstractinterface.cpp +++ b/doc/src/snippets/code/src_qdbus_qdbusabstractinterface.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_qdbus_qdbusargument.cpp b/doc/src/snippets/code/src_qdbus_qdbusargument.cpp index 125dc332a9..4ee70a69ec 100644 --- a/doc/src/snippets/code/src_qdbus_qdbusargument.cpp +++ b/doc/src/snippets/code/src_qdbus_qdbusargument.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_qdbus_qdbuscontext.cpp b/doc/src/snippets/code/src_qdbus_qdbuscontext.cpp index 312b8bb545..040afa59da 100644 --- a/doc/src/snippets/code/src_qdbus_qdbuscontext.cpp +++ b/doc/src/snippets/code/src_qdbus_qdbuscontext.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_qdbus_qdbusinterface.cpp b/doc/src/snippets/code/src_qdbus_qdbusinterface.cpp index 425a736d28..1cd7afe304 100644 --- a/doc/src/snippets/code/src_qdbus_qdbusinterface.cpp +++ b/doc/src/snippets/code/src_qdbus_qdbusinterface.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_qdbus_qdbusmetatype.cpp b/doc/src/snippets/code/src_qdbus_qdbusmetatype.cpp index 3774c10643..6013fcb16c 100644 --- a/doc/src/snippets/code/src_qdbus_qdbusmetatype.cpp +++ b/doc/src/snippets/code/src_qdbus_qdbusmetatype.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_qdbus_qdbusreply.cpp b/doc/src/snippets/code/src_qdbus_qdbusreply.cpp index 2e6b33a6bd..ea8048070b 100644 --- a/doc/src/snippets/code/src_qdbus_qdbusreply.cpp +++ b/doc/src/snippets/code/src_qdbus_qdbusreply.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_qtestlib_qtestcase.cpp b/doc/src/snippets/code/src_qtestlib_qtestcase.cpp index b5f1a51464..cf872b1245 100644 --- a/doc/src/snippets/code/src_qtestlib_qtestcase.cpp +++ b/doc/src/snippets/code/src_qtestlib_qtestcase.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_sql_kernel_qsqldatabase.cpp b/doc/src/snippets/code/src_sql_kernel_qsqldatabase.cpp index 50ea67c104..4316b04324 100644 --- a/doc/src/snippets/code/src_sql_kernel_qsqldatabase.cpp +++ b/doc/src/snippets/code/src_sql_kernel_qsqldatabase.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_sql_kernel_qsqldriver.cpp b/doc/src/snippets/code/src_sql_kernel_qsqldriver.cpp index d49b6e0e19..9e695b8361 100644 --- a/doc/src/snippets/code/src_sql_kernel_qsqldriver.cpp +++ b/doc/src/snippets/code/src_sql_kernel_qsqldriver.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_sql_kernel_qsqlerror.cpp b/doc/src/snippets/code/src_sql_kernel_qsqlerror.cpp index cb45abf336..38a9f6a31f 100644 --- a/doc/src/snippets/code/src_sql_kernel_qsqlerror.cpp +++ b/doc/src/snippets/code/src_sql_kernel_qsqlerror.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_sql_kernel_qsqlindex.cpp b/doc/src/snippets/code/src_sql_kernel_qsqlindex.cpp index bf04f2befb..f86fb3b68b 100644 --- a/doc/src/snippets/code/src_sql_kernel_qsqlindex.cpp +++ b/doc/src/snippets/code/src_sql_kernel_qsqlindex.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_sql_kernel_qsqlquery.cpp b/doc/src/snippets/code/src_sql_kernel_qsqlquery.cpp index c739a9f499..c4861f4e9e 100644 --- a/doc/src/snippets/code/src_sql_kernel_qsqlquery.cpp +++ b/doc/src/snippets/code/src_sql_kernel_qsqlquery.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_sql_kernel_qsqlresult.cpp b/doc/src/snippets/code/src_sql_kernel_qsqlresult.cpp index 96bb9fbbae..d267a7bb02 100644 --- a/doc/src/snippets/code/src_sql_kernel_qsqlresult.cpp +++ b/doc/src/snippets/code/src_sql_kernel_qsqlresult.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_sql_models_qsqlquerymodel.cpp b/doc/src/snippets/code/src_sql_models_qsqlquerymodel.cpp index 0d85803dc0..3bf255f626 100644 --- a/doc/src/snippets/code/src_sql_models_qsqlquerymodel.cpp +++ b/doc/src/snippets/code/src_sql_models_qsqlquerymodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_xml_dom_qdom.cpp b/doc/src/snippets/code/src_xml_dom_qdom.cpp index e49bcf40ee..f25879879e 100644 --- a/doc/src/snippets/code/src_xml_dom_qdom.cpp +++ b/doc/src/snippets/code/src_xml_dom_qdom.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/code/src_xml_sax_qxml.cpp b/doc/src/snippets/code/src_xml_sax_qxml.cpp index 7cd7a33b76..45e489d48d 100644 --- a/doc/src/snippets/code/src_xml_sax_qxml.cpp +++ b/doc/src/snippets/code/src_xml_sax_qxml.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/customstyle/customstyle.cpp b/doc/src/snippets/customstyle/customstyle.cpp index b2e90722f2..d9f6e53024 100644 --- a/doc/src/snippets/customstyle/customstyle.cpp +++ b/doc/src/snippets/customstyle/customstyle.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/customstyle/customstyle.h b/doc/src/snippets/customstyle/customstyle.h index 6a87d75421..9d695fdab7 100644 --- a/doc/src/snippets/customstyle/customstyle.h +++ b/doc/src/snippets/customstyle/customstyle.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/customviewstyle.cpp b/doc/src/snippets/customviewstyle.cpp index b040f7563e..18f61f98fa 100644 --- a/doc/src/snippets/customviewstyle.cpp +++ b/doc/src/snippets/customviewstyle.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/dialogs/dialogs.cpp b/doc/src/snippets/dialogs/dialogs.cpp index de9a2d1e04..b31557c554 100644 --- a/doc/src/snippets/dialogs/dialogs.cpp +++ b/doc/src/snippets/dialogs/dialogs.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/dockwidgets/mainwindow.cpp b/doc/src/snippets/dockwidgets/mainwindow.cpp index 10b7531ec4..d820ee330b 100644 --- a/doc/src/snippets/dockwidgets/mainwindow.cpp +++ b/doc/src/snippets/dockwidgets/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/dragging/mainwindow.cpp b/doc/src/snippets/dragging/mainwindow.cpp index 0b3f64213a..6fc87810bc 100644 --- a/doc/src/snippets/dragging/mainwindow.cpp +++ b/doc/src/snippets/dragging/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/droparea.cpp b/doc/src/snippets/droparea.cpp index 6556f05bf0..ed614e1389 100644 --- a/doc/src/snippets/droparea.cpp +++ b/doc/src/snippets/droparea.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/file/file.cpp b/doc/src/snippets/file/file.cpp index ede4aa97d2..bf1a298595 100644 --- a/doc/src/snippets/file/file.cpp +++ b/doc/src/snippets/file/file.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/filedialogurls.cpp b/doc/src/snippets/filedialogurls.cpp index 2b6cdaaba8..b6e33a8d5b 100644 --- a/doc/src/snippets/filedialogurls.cpp +++ b/doc/src/snippets/filedialogurls.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/fileinfo/main.cpp b/doc/src/snippets/fileinfo/main.cpp index d0fc9f54dd..7162da7ba7 100644 --- a/doc/src/snippets/fileinfo/main.cpp +++ b/doc/src/snippets/fileinfo/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/graphicssceneadditemsnippet.cpp b/doc/src/snippets/graphicssceneadditemsnippet.cpp index 2c2c0d01a8..f0c2bb6bd2 100644 --- a/doc/src/snippets/graphicssceneadditemsnippet.cpp +++ b/doc/src/snippets/graphicssceneadditemsnippet.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/image/image.cpp b/doc/src/snippets/image/image.cpp index 62d83089d3..d89aa818b6 100644 --- a/doc/src/snippets/image/image.cpp +++ b/doc/src/snippets/image/image.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/image/supportedformat.cpp b/doc/src/snippets/image/supportedformat.cpp index 55800d33f3..b9aede2def 100644 --- a/doc/src/snippets/image/supportedformat.cpp +++ b/doc/src/snippets/image/supportedformat.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/javastyle.cpp b/doc/src/snippets/javastyle.cpp index 1cf7e5560d..e64b89b366 100644 --- a/doc/src/snippets/javastyle.cpp +++ b/doc/src/snippets/javastyle.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/layouts/layouts.cpp b/doc/src/snippets/layouts/layouts.cpp index 2fdde84990..2fce924e87 100644 --- a/doc/src/snippets/layouts/layouts.cpp +++ b/doc/src/snippets/layouts/layouts.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/mainwindowsnippet.cpp b/doc/src/snippets/mainwindowsnippet.cpp index 70e638e7af..c090636b76 100644 --- a/doc/src/snippets/mainwindowsnippet.cpp +++ b/doc/src/snippets/mainwindowsnippet.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/matrix/matrix.cpp b/doc/src/snippets/matrix/matrix.cpp index c7eb0b5943..43d50cd0d1 100644 --- a/doc/src/snippets/matrix/matrix.cpp +++ b/doc/src/snippets/matrix/matrix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/mdiareasnippets.cpp b/doc/src/snippets/mdiareasnippets.cpp index 9d626a3f8d..1928ddd254 100644 --- a/doc/src/snippets/mdiareasnippets.cpp +++ b/doc/src/snippets/mdiareasnippets.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/myscrollarea.cpp b/doc/src/snippets/myscrollarea.cpp index 9a41ed84d5..ed27fc6119 100644 --- a/doc/src/snippets/myscrollarea.cpp +++ b/doc/src/snippets/myscrollarea.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/network/tcpwait.cpp b/doc/src/snippets/network/tcpwait.cpp index 02cecb4f87..4d1c3525b2 100644 --- a/doc/src/snippets/network/tcpwait.cpp +++ b/doc/src/snippets/network/tcpwait.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/ntfsp.cpp b/doc/src/snippets/ntfsp.cpp index 5d457124b2..b7cf337aae 100644 --- a/doc/src/snippets/ntfsp.cpp +++ b/doc/src/snippets/ntfsp.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/picture/picture.cpp b/doc/src/snippets/picture/picture.cpp index 3cead763e1..a0a68ff633 100644 --- a/doc/src/snippets/picture/picture.cpp +++ b/doc/src/snippets/picture/picture.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/pointer/pointer.cpp b/doc/src/snippets/pointer/pointer.cpp index b4ff3839cb..270ae0c18f 100644 --- a/doc/src/snippets/pointer/pointer.cpp +++ b/doc/src/snippets/pointer/pointer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/polygon/polygon.cpp b/doc/src/snippets/polygon/polygon.cpp index 8b81db668d..30e2ec6ce4 100644 --- a/doc/src/snippets/polygon/polygon.cpp +++ b/doc/src/snippets/polygon/polygon.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/printing-qprinter/errors.cpp b/doc/src/snippets/printing-qprinter/errors.cpp index ff3ea9053e..b850dd3e9b 100644 --- a/doc/src/snippets/printing-qprinter/errors.cpp +++ b/doc/src/snippets/printing-qprinter/errors.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/printing-qprinter/object.cpp b/doc/src/snippets/printing-qprinter/object.cpp index 0ee8dbdc56..99434bb6ce 100644 --- a/doc/src/snippets/printing-qprinter/object.cpp +++ b/doc/src/snippets/printing-qprinter/object.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/process/process.cpp b/doc/src/snippets/process/process.cpp index a545b734bf..3e14ab0fb1 100644 --- a/doc/src/snippets/process/process.cpp +++ b/doc/src/snippets/process/process.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qdbusextratypes/qdbusextratypes.cpp b/doc/src/snippets/qdbusextratypes/qdbusextratypes.cpp index 1ab3488780..7380923ef4 100644 --- a/doc/src/snippets/qdbusextratypes/qdbusextratypes.cpp +++ b/doc/src/snippets/qdbusextratypes/qdbusextratypes.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qdebug/qdebugsnippet.cpp b/doc/src/snippets/qdebug/qdebugsnippet.cpp index 8e668d1736..542bb0d322 100644 --- a/doc/src/snippets/qdebug/qdebugsnippet.cpp +++ b/doc/src/snippets/qdebug/qdebugsnippet.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qdir-listfiles/main.cpp b/doc/src/snippets/qdir-listfiles/main.cpp index cdce0d545a..3cbb20240f 100644 --- a/doc/src/snippets/qdir-listfiles/main.cpp +++ b/doc/src/snippets/qdir-listfiles/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qdir-namefilters/main.cpp b/doc/src/snippets/qdir-namefilters/main.cpp index a72bab1d0a..952b3cf967 100644 --- a/doc/src/snippets/qdir-namefilters/main.cpp +++ b/doc/src/snippets/qdir-namefilters/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qelapsedtimer/main.cpp b/doc/src/snippets/qelapsedtimer/main.cpp index 3e5b520f57..4b503cac0f 100644 --- a/doc/src/snippets/qelapsedtimer/main.cpp +++ b/doc/src/snippets/qelapsedtimer/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qfontdatabase/main.cpp b/doc/src/snippets/qfontdatabase/main.cpp index 24ed688001..c54eb1cf09 100644 --- a/doc/src/snippets/qfontdatabase/main.cpp +++ b/doc/src/snippets/qfontdatabase/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qlistwidget-using/mainwindow.cpp b/doc/src/snippets/qlistwidget-using/mainwindow.cpp index 0ec9c70ed3..ec770953c8 100644 --- a/doc/src/snippets/qlistwidget-using/mainwindow.cpp +++ b/doc/src/snippets/qlistwidget-using/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qmacnativewidget/main.mm b/doc/src/snippets/qmacnativewidget/main.mm index f83adeff23..53ff104dd9 100644 --- a/doc/src/snippets/qmacnativewidget/main.mm +++ b/doc/src/snippets/qmacnativewidget/main.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qmetaobject-invokable/main.cpp b/doc/src/snippets/qmetaobject-invokable/main.cpp index 0ad98737a9..220e49a12e 100644 --- a/doc/src/snippets/qmetaobject-invokable/main.cpp +++ b/doc/src/snippets/qmetaobject-invokable/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qmetaobject-invokable/window.cpp b/doc/src/snippets/qmetaobject-invokable/window.cpp index 4d9103ccc6..4fd64c5339 100644 --- a/doc/src/snippets/qmetaobject-invokable/window.cpp +++ b/doc/src/snippets/qmetaobject-invokable/window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qmetaobject-invokable/window.h b/doc/src/snippets/qmetaobject-invokable/window.h index db030a855b..a89887d418 100644 --- a/doc/src/snippets/qmetaobject-invokable/window.h +++ b/doc/src/snippets/qmetaobject-invokable/window.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qprocess-environment/main.cpp b/doc/src/snippets/qprocess-environment/main.cpp index 974095fe02..5fbf4a450d 100644 --- a/doc/src/snippets/qprocess-environment/main.cpp +++ b/doc/src/snippets/qprocess-environment/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qprocess/qprocess-simpleexecution.cpp b/doc/src/snippets/qprocess/qprocess-simpleexecution.cpp index a5d097f3fe..14203b1154 100644 --- a/doc/src/snippets/qprocess/qprocess-simpleexecution.cpp +++ b/doc/src/snippets/qprocess/qprocess-simpleexecution.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qsignalmapper/buttonwidget.cpp b/doc/src/snippets/qsignalmapper/buttonwidget.cpp index 35f305570f..716a37df85 100644 --- a/doc/src/snippets/qsignalmapper/buttonwidget.cpp +++ b/doc/src/snippets/qsignalmapper/buttonwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qsignalmapper/buttonwidget.h b/doc/src/snippets/qsignalmapper/buttonwidget.h index 095fc2c70a..15c2b6317b 100644 --- a/doc/src/snippets/qsignalmapper/buttonwidget.h +++ b/doc/src/snippets/qsignalmapper/buttonwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qsortfilterproxymodel-details/main.cpp b/doc/src/snippets/qsortfilterproxymodel-details/main.cpp index 9de0cea1df..2b8308e2ad 100644 --- a/doc/src/snippets/qsortfilterproxymodel-details/main.cpp +++ b/doc/src/snippets/qsortfilterproxymodel-details/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qsplashscreen/main.cpp b/doc/src/snippets/qsplashscreen/main.cpp index 0a4ebb5f19..047064d660 100644 --- a/doc/src/snippets/qsplashscreen/main.cpp +++ b/doc/src/snippets/qsplashscreen/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qstack/main.cpp b/doc/src/snippets/qstack/main.cpp index 8b6982e9e4..b05e0c3455 100644 --- a/doc/src/snippets/qstack/main.cpp +++ b/doc/src/snippets/qstack/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qstackedlayout/main.cpp b/doc/src/snippets/qstackedlayout/main.cpp index ca415e8be0..cc38b6a34a 100644 --- a/doc/src/snippets/qstackedlayout/main.cpp +++ b/doc/src/snippets/qstackedlayout/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qstackedwidget/main.cpp b/doc/src/snippets/qstackedwidget/main.cpp index 7e72bfacba..b269d81c57 100644 --- a/doc/src/snippets/qstackedwidget/main.cpp +++ b/doc/src/snippets/qstackedwidget/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qstatustipevent/main.cpp b/doc/src/snippets/qstatustipevent/main.cpp index b609db856c..997b1c4bd9 100644 --- a/doc/src/snippets/qstatustipevent/main.cpp +++ b/doc/src/snippets/qstatustipevent/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qstring/main.cpp b/doc/src/snippets/qstring/main.cpp index bbc9e98901..00c33c286b 100644 --- a/doc/src/snippets/qstring/main.cpp +++ b/doc/src/snippets/qstring/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qstring/stringbuilder.cpp b/doc/src/snippets/qstring/stringbuilder.cpp index b8acbc1e2a..170c409be7 100644 --- a/doc/src/snippets/qstring/stringbuilder.cpp +++ b/doc/src/snippets/qstring/stringbuilder.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qstringlist/main.cpp b/doc/src/snippets/qstringlist/main.cpp index 3d56987b94..d8e746030b 100644 --- a/doc/src/snippets/qstringlist/main.cpp +++ b/doc/src/snippets/qstringlist/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qstringlistmodel/main.cpp b/doc/src/snippets/qstringlistmodel/main.cpp index a64ba2b687..e6897e9803 100644 --- a/doc/src/snippets/qstringlistmodel/main.cpp +++ b/doc/src/snippets/qstringlistmodel/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qstyleoption/main.cpp b/doc/src/snippets/qstyleoption/main.cpp index c3ef7298dd..69ba6588d7 100644 --- a/doc/src/snippets/qstyleoption/main.cpp +++ b/doc/src/snippets/qstyleoption/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qstyleplugin/main.cpp b/doc/src/snippets/qstyleplugin/main.cpp index 2c444d504b..74b45a14ad 100644 --- a/doc/src/snippets/qstyleplugin/main.cpp +++ b/doc/src/snippets/qstyleplugin/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qtablewidget-resizing/mainwindow.cpp b/doc/src/snippets/qtablewidget-resizing/mainwindow.cpp index e26031f678..9c505dcd69 100644 --- a/doc/src/snippets/qtablewidget-resizing/mainwindow.cpp +++ b/doc/src/snippets/qtablewidget-resizing/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qtablewidget-using/mainwindow.cpp b/doc/src/snippets/qtablewidget-using/mainwindow.cpp index 79a01f56d6..b21d854369 100644 --- a/doc/src/snippets/qtablewidget-using/mainwindow.cpp +++ b/doc/src/snippets/qtablewidget-using/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qtcast/qtcast.cpp b/doc/src/snippets/qtcast/qtcast.cpp index 68cff32ad5..49f2a42043 100644 --- a/doc/src/snippets/qtcast/qtcast.cpp +++ b/doc/src/snippets/qtcast/qtcast.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qtreewidget-using/mainwindow.cpp b/doc/src/snippets/qtreewidget-using/mainwindow.cpp index a7e8277321..6db7b462b4 100644 --- a/doc/src/snippets/qtreewidget-using/mainwindow.cpp +++ b/doc/src/snippets/qtreewidget-using/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qtreewidgetitemiterator-using/mainwindow.cpp b/doc/src/snippets/qtreewidgetitemiterator-using/mainwindow.cpp index 497540e054..5f83bb3d61 100644 --- a/doc/src/snippets/qtreewidgetitemiterator-using/mainwindow.cpp +++ b/doc/src/snippets/qtreewidgetitemiterator-using/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/quiloader/main.cpp b/doc/src/snippets/quiloader/main.cpp index 2b9acd2d3f..8facf78ac7 100644 --- a/doc/src/snippets/quiloader/main.cpp +++ b/doc/src/snippets/quiloader/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/quiloader/mywidget.cpp b/doc/src/snippets/quiloader/mywidget.cpp index 989a5ef075..31753dc5df 100644 --- a/doc/src/snippets/quiloader/mywidget.cpp +++ b/doc/src/snippets/quiloader/mywidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qx11embedcontainer/main.cpp b/doc/src/snippets/qx11embedcontainer/main.cpp index 38d6d28292..c8024afa10 100644 --- a/doc/src/snippets/qx11embedcontainer/main.cpp +++ b/doc/src/snippets/qx11embedcontainer/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qx11embedwidget/main.cpp b/doc/src/snippets/qx11embedwidget/main.cpp index 4f82399699..b8a270d198 100644 --- a/doc/src/snippets/qx11embedwidget/main.cpp +++ b/doc/src/snippets/qx11embedwidget/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/qxmlstreamwriter/main.cpp b/doc/src/snippets/qxmlstreamwriter/main.cpp index 2e7deff168..80dbe5d13a 100644 --- a/doc/src/snippets/qxmlstreamwriter/main.cpp +++ b/doc/src/snippets/qxmlstreamwriter/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/separations/finalwidget.cpp b/doc/src/snippets/separations/finalwidget.cpp index 8d2b7feacc..fb81e4ce79 100644 --- a/doc/src/snippets/separations/finalwidget.cpp +++ b/doc/src/snippets/separations/finalwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/settings/settings.cpp b/doc/src/snippets/settings/settings.cpp index 2cbe1804be..ef34d5ef55 100644 --- a/doc/src/snippets/settings/settings.cpp +++ b/doc/src/snippets/settings/settings.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/shareddirmodel/main.cpp b/doc/src/snippets/shareddirmodel/main.cpp index 1cd2bde1bd..765a48add8 100644 --- a/doc/src/snippets/shareddirmodel/main.cpp +++ b/doc/src/snippets/shareddirmodel/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/sharedemployee/employee.h b/doc/src/snippets/sharedemployee/employee.h index 981e007b8d..aba6cc6be8 100644 --- a/doc/src/snippets/sharedemployee/employee.h +++ b/doc/src/snippets/sharedemployee/employee.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/sharedemployee/main.cpp b/doc/src/snippets/sharedemployee/main.cpp index a8f53a738c..2807421a7c 100644 --- a/doc/src/snippets/sharedemployee/main.cpp +++ b/doc/src/snippets/sharedemployee/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/signalmapper/filereader.cpp b/doc/src/snippets/signalmapper/filereader.cpp index 49b69055c5..20dfd5d5a6 100644 --- a/doc/src/snippets/signalmapper/filereader.cpp +++ b/doc/src/snippets/signalmapper/filereader.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/signalsandslots/lcdnumber.h b/doc/src/snippets/signalsandslots/lcdnumber.h index 3706387d24..e2699b1570 100644 --- a/doc/src/snippets/signalsandslots/lcdnumber.h +++ b/doc/src/snippets/signalsandslots/lcdnumber.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/signalsandslots/signalsandslots.cpp b/doc/src/snippets/signalsandslots/signalsandslots.cpp index 19a8b4d5cd..a7cdc4eab0 100644 --- a/doc/src/snippets/signalsandslots/signalsandslots.cpp +++ b/doc/src/snippets/signalsandslots/signalsandslots.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/signalsandslots/signalsandslots.h b/doc/src/snippets/signalsandslots/signalsandslots.h index 0671181f5f..d5eb2cb9a2 100644 --- a/doc/src/snippets/signalsandslots/signalsandslots.h +++ b/doc/src/snippets/signalsandslots/signalsandslots.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/splitter/splitter.cpp b/doc/src/snippets/splitter/splitter.cpp index b72eb02e4c..b0d72698b1 100644 --- a/doc/src/snippets/splitter/splitter.cpp +++ b/doc/src/snippets/splitter/splitter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/splitterhandle/splitter.cpp b/doc/src/snippets/splitterhandle/splitter.cpp index 6f76c57b41..32d92f47d7 100644 --- a/doc/src/snippets/splitterhandle/splitter.cpp +++ b/doc/src/snippets/splitterhandle/splitter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/splitterhandle/splitter.h b/doc/src/snippets/splitterhandle/splitter.h index 505c431f6d..692659f72a 100644 --- a/doc/src/snippets/splitterhandle/splitter.h +++ b/doc/src/snippets/splitterhandle/splitter.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/sqldatabase/sqldatabase.cpp b/doc/src/snippets/sqldatabase/sqldatabase.cpp index 4f428c7f5b..c40b6896ec 100644 --- a/doc/src/snippets/sqldatabase/sqldatabase.cpp +++ b/doc/src/snippets/sqldatabase/sqldatabase.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/streaming/main.cpp b/doc/src/snippets/streaming/main.cpp index cf03a46bc2..f905d12dc4 100644 --- a/doc/src/snippets/streaming/main.cpp +++ b/doc/src/snippets/streaming/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/styles/styles.cpp b/doc/src/snippets/styles/styles.cpp index 23ab71b485..18ed908f54 100644 --- a/doc/src/snippets/styles/styles.cpp +++ b/doc/src/snippets/styles/styles.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/stylesheet/common-mistakes.cpp b/doc/src/snippets/stylesheet/common-mistakes.cpp index 8de7f7941f..7dbdc7ecf6 100644 --- a/doc/src/snippets/stylesheet/common-mistakes.cpp +++ b/doc/src/snippets/stylesheet/common-mistakes.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/textblock-fragments/xmlwriter.cpp b/doc/src/snippets/textblock-fragments/xmlwriter.cpp index 252720bc14..421f0b8ec3 100644 --- a/doc/src/snippets/textblock-fragments/xmlwriter.cpp +++ b/doc/src/snippets/textblock-fragments/xmlwriter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/textdocument-css/main.cpp b/doc/src/snippets/textdocument-css/main.cpp index 8c267455e5..eb0f582022 100644 --- a/doc/src/snippets/textdocument-css/main.cpp +++ b/doc/src/snippets/textdocument-css/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/textdocument-imagedrop/textedit.cpp b/doc/src/snippets/textdocument-imagedrop/textedit.cpp index 735dbe55ce..9db45bf432 100644 --- a/doc/src/snippets/textdocument-imagedrop/textedit.cpp +++ b/doc/src/snippets/textdocument-imagedrop/textedit.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/textdocument-listitemstyles/main.cpp b/doc/src/snippets/textdocument-listitemstyles/main.cpp index 6e40492c29..786218557c 100644 --- a/doc/src/snippets/textdocument-listitemstyles/main.cpp +++ b/doc/src/snippets/textdocument-listitemstyles/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/textdocument-listitemstyles/mainwindow.cpp b/doc/src/snippets/textdocument-listitemstyles/mainwindow.cpp index 94e98b3400..9f05db4fc1 100644 --- a/doc/src/snippets/textdocument-listitemstyles/mainwindow.cpp +++ b/doc/src/snippets/textdocument-listitemstyles/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/textdocument-listitemstyles/mainwindow.h b/doc/src/snippets/textdocument-listitemstyles/mainwindow.h index 649a47bb16..f307a49b6a 100644 --- a/doc/src/snippets/textdocument-listitemstyles/mainwindow.h +++ b/doc/src/snippets/textdocument-listitemstyles/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/textdocument-lists/mainwindow.cpp b/doc/src/snippets/textdocument-lists/mainwindow.cpp index bcbfce72b8..40e0c87916 100644 --- a/doc/src/snippets/textdocument-lists/mainwindow.cpp +++ b/doc/src/snippets/textdocument-lists/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/textdocument-resources/main.cpp b/doc/src/snippets/textdocument-resources/main.cpp index 19a7469c8f..14cb03cfe5 100644 --- a/doc/src/snippets/textdocument-resources/main.cpp +++ b/doc/src/snippets/textdocument-resources/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/textdocument-tables/mainwindow.cpp b/doc/src/snippets/textdocument-tables/mainwindow.cpp index c432f4c8cd..df6a360c94 100644 --- a/doc/src/snippets/textdocument-tables/mainwindow.cpp +++ b/doc/src/snippets/textdocument-tables/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/textdocument-texttable/main.cpp b/doc/src/snippets/textdocument-texttable/main.cpp index 1e3b7c2a89..7b5a9ac3d5 100644 --- a/doc/src/snippets/textdocument-texttable/main.cpp +++ b/doc/src/snippets/textdocument-texttable/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/textdocumentendsnippet.cpp b/doc/src/snippets/textdocumentendsnippet.cpp index 3b28700ac3..01f55b667a 100644 --- a/doc/src/snippets/textdocumentendsnippet.cpp +++ b/doc/src/snippets/textdocumentendsnippet.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/threads/threads.cpp b/doc/src/snippets/threads/threads.cpp index 5661757c9c..f922e4f1b4 100644 --- a/doc/src/snippets/threads/threads.cpp +++ b/doc/src/snippets/threads/threads.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/threads/threads.h b/doc/src/snippets/threads/threads.h index 9826208b38..a85c6b8a5c 100644 --- a/doc/src/snippets/threads/threads.h +++ b/doc/src/snippets/threads/threads.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/timeline/main.cpp b/doc/src/snippets/timeline/main.cpp index b652069d68..67c67c795d 100644 --- a/doc/src/snippets/timeline/main.cpp +++ b/doc/src/snippets/timeline/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/timers/timers.cpp b/doc/src/snippets/timers/timers.cpp index 015ab27387..0481e255e1 100644 --- a/doc/src/snippets/timers/timers.cpp +++ b/doc/src/snippets/timers/timers.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/transform/main.cpp b/doc/src/snippets/transform/main.cpp index b1e3d74094..87ff6ec792 100644 --- a/doc/src/snippets/transform/main.cpp +++ b/doc/src/snippets/transform/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/whatsthis/whatsthis.cpp b/doc/src/snippets/whatsthis/whatsthis.cpp index 608fa3e62f..9e0f6694f4 100644 --- a/doc/src/snippets/whatsthis/whatsthis.cpp +++ b/doc/src/snippets/whatsthis/whatsthis.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/widget-mask/main.cpp b/doc/src/snippets/widget-mask/main.cpp index 2d7defc02c..1038f9031a 100644 --- a/doc/src/snippets/widget-mask/main.cpp +++ b/doc/src/snippets/widget-mask/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/widgetdelegate.cpp b/doc/src/snippets/widgetdelegate.cpp index c6d3963807..b12baeef46 100644 --- a/doc/src/snippets/widgetdelegate.cpp +++ b/doc/src/snippets/widgetdelegate.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/widgetprinting.cpp b/doc/src/snippets/widgetprinting.cpp index a6ea3cb5d3..41171678bf 100644 --- a/doc/src/snippets/widgetprinting.cpp +++ b/doc/src/snippets/widgetprinting.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/widgets-tutorial/template.cpp b/doc/src/snippets/widgets-tutorial/template.cpp index e2a2f61ab1..95d32d7cf5 100644 --- a/doc/src/snippets/widgets-tutorial/template.cpp +++ b/doc/src/snippets/widgets-tutorial/template.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/xml/rsslisting/handler.cpp b/doc/src/snippets/xml/rsslisting/handler.cpp index fe9ef5cbe9..21aebcdb40 100644 --- a/doc/src/snippets/xml/rsslisting/handler.cpp +++ b/doc/src/snippets/xml/rsslisting/handler.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/xml/rsslisting/rsslisting.cpp b/doc/src/snippets/xml/rsslisting/rsslisting.cpp index 5047d0840d..2e98f8f14e 100644 --- a/doc/src/snippets/xml/rsslisting/rsslisting.cpp +++ b/doc/src/snippets/xml/rsslisting/rsslisting.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/snippets/xml/simpleparse/main.cpp b/doc/src/snippets/xml/simpleparse/main.cpp index 5d9994d63e..5eeed234c5 100644 --- a/doc/src/snippets/xml/simpleparse/main.cpp +++ b/doc/src/snippets/xml/simpleparse/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/sql/qtsql.qdoc b/doc/src/sql/qtsql.qdoc index be2cc5097f..278905717c 100644 --- a/doc/src/sql/qtsql.qdoc +++ b/doc/src/sql/qtsql.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/sql/sql-programming/qsqldatatype-table.qdoc b/doc/src/sql/sql-programming/qsqldatatype-table.qdoc index e5a9bf5c5a..1aaf476549 100644 --- a/doc/src/sql/sql-programming/qsqldatatype-table.qdoc +++ b/doc/src/sql/sql-programming/qsqldatatype-table.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/sql/sql-programming/sql-driver.qdoc b/doc/src/sql/sql-programming/sql-driver.qdoc index 0e0e5cadd7..f0cc3212fe 100644 --- a/doc/src/sql/sql-programming/sql-driver.qdoc +++ b/doc/src/sql/sql-programming/sql-driver.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/sql/sql-programming/sql-programming.qdoc b/doc/src/sql/sql-programming/sql-programming.qdoc index 0be443c89e..6b702668c1 100644 --- a/doc/src/sql/sql-programming/sql-programming.qdoc +++ b/doc/src/sql/sql-programming/sql-programming.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/widgets/addressbook-fr.qdoc b/doc/src/widgets/addressbook-fr.qdoc index 53b3e6fc15..0de065631f 100644 --- a/doc/src/widgets/addressbook-fr.qdoc +++ b/doc/src/widgets/addressbook-fr.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/widgets/addressbook.qdoc b/doc/src/widgets/addressbook.qdoc index d75e2cac2a..09c067aef9 100644 --- a/doc/src/widgets/addressbook.qdoc +++ b/doc/src/widgets/addressbook.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/widgets/modelview.qdoc b/doc/src/widgets/modelview.qdoc index 5ac15b9f39..0278f585b6 100644 --- a/doc/src/widgets/modelview.qdoc +++ b/doc/src/widgets/modelview.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/widgets/qtwidgets.qdoc b/doc/src/widgets/qtwidgets.qdoc index b0bfe1358b..cd37688b1a 100644 --- a/doc/src/widgets/qtwidgets.qdoc +++ b/doc/src/widgets/qtwidgets.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/widgets/widgets-and-layouts/focus.qdoc b/doc/src/widgets/widgets-and-layouts/focus.qdoc index 316893edc4..e9069c1812 100644 --- a/doc/src/widgets/widgets-and-layouts/focus.qdoc +++ b/doc/src/widgets/widgets-and-layouts/focus.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/widgets/widgets-and-layouts/gallery-cde.qdoc b/doc/src/widgets/widgets-and-layouts/gallery-cde.qdoc index 6d6fea7d1e..6db1863d9a 100644 --- a/doc/src/widgets/widgets-and-layouts/gallery-cde.qdoc +++ b/doc/src/widgets/widgets-and-layouts/gallery-cde.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/widgets/widgets-and-layouts/gallery-cleanlooks.qdoc b/doc/src/widgets/widgets-and-layouts/gallery-cleanlooks.qdoc index 603650bc4b..0f385db343 100644 --- a/doc/src/widgets/widgets-and-layouts/gallery-cleanlooks.qdoc +++ b/doc/src/widgets/widgets-and-layouts/gallery-cleanlooks.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/widgets/widgets-and-layouts/gallery-gtk.qdoc b/doc/src/widgets/widgets-and-layouts/gallery-gtk.qdoc index ce6a773776..7cf82b2b52 100644 --- a/doc/src/widgets/widgets-and-layouts/gallery-gtk.qdoc +++ b/doc/src/widgets/widgets-and-layouts/gallery-gtk.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/widgets/widgets-and-layouts/gallery-macintosh.qdoc b/doc/src/widgets/widgets-and-layouts/gallery-macintosh.qdoc index 58622151b7..54decc12a6 100644 --- a/doc/src/widgets/widgets-and-layouts/gallery-macintosh.qdoc +++ b/doc/src/widgets/widgets-and-layouts/gallery-macintosh.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/widgets/widgets-and-layouts/gallery-motif.qdoc b/doc/src/widgets/widgets-and-layouts/gallery-motif.qdoc index 91485a088f..7a9d2e887e 100644 --- a/doc/src/widgets/widgets-and-layouts/gallery-motif.qdoc +++ b/doc/src/widgets/widgets-and-layouts/gallery-motif.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/widgets/widgets-and-layouts/gallery-plastique.qdoc b/doc/src/widgets/widgets-and-layouts/gallery-plastique.qdoc index 473d7e8da5..eedd5a4577 100644 --- a/doc/src/widgets/widgets-and-layouts/gallery-plastique.qdoc +++ b/doc/src/widgets/widgets-and-layouts/gallery-plastique.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/widgets/widgets-and-layouts/gallery-windows.qdoc b/doc/src/widgets/widgets-and-layouts/gallery-windows.qdoc index 1f600b9814..b971625b92 100644 --- a/doc/src/widgets/widgets-and-layouts/gallery-windows.qdoc +++ b/doc/src/widgets/widgets-and-layouts/gallery-windows.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/widgets/widgets-and-layouts/gallery-windowsvista.qdoc b/doc/src/widgets/widgets-and-layouts/gallery-windowsvista.qdoc index 534da3e2bd..2b61d55025 100644 --- a/doc/src/widgets/widgets-and-layouts/gallery-windowsvista.qdoc +++ b/doc/src/widgets/widgets-and-layouts/gallery-windowsvista.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/widgets/widgets-and-layouts/gallery-windowsxp.qdoc b/doc/src/widgets/widgets-and-layouts/gallery-windowsxp.qdoc index 4d1c79cc9a..81b7becd44 100644 --- a/doc/src/widgets/widgets-and-layouts/gallery-windowsxp.qdoc +++ b/doc/src/widgets/widgets-and-layouts/gallery-windowsxp.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/widgets/widgets-and-layouts/gallery.qdoc b/doc/src/widgets/widgets-and-layouts/gallery.qdoc index 865321d4ad..1ffec414b1 100644 --- a/doc/src/widgets/widgets-and-layouts/gallery.qdoc +++ b/doc/src/widgets/widgets-and-layouts/gallery.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/widgets/widgets-and-layouts/layout.qdoc b/doc/src/widgets/widgets-and-layouts/layout.qdoc index 394d537293..ae5a4fed56 100644 --- a/doc/src/widgets/widgets-and-layouts/layout.qdoc +++ b/doc/src/widgets/widgets-and-layouts/layout.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/widgets/widgets-and-layouts/styles.qdoc b/doc/src/widgets/widgets-and-layouts/styles.qdoc index 3b705de973..a47f8e9be6 100644 --- a/doc/src/widgets/widgets-and-layouts/styles.qdoc +++ b/doc/src/widgets/widgets-and-layouts/styles.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/widgets/widgets-and-layouts/stylesheet.qdoc b/doc/src/widgets/widgets-and-layouts/stylesheet.qdoc index 8375587ce8..aa48a24225 100644 --- a/doc/src/widgets/widgets-and-layouts/stylesheet.qdoc +++ b/doc/src/widgets/widgets-and-layouts/stylesheet.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/widgets/widgets-and-layouts/widgets.qdoc b/doc/src/widgets/widgets-and-layouts/widgets.qdoc index f3f65b67eb..c3082c3cb5 100644 --- a/doc/src/widgets/widgets-and-layouts/widgets.qdoc +++ b/doc/src/widgets/widgets-and-layouts/widgets.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/widgets/widgets-tutorial.qdoc b/doc/src/widgets/widgets-tutorial.qdoc index a90c01447a..b09e07a5bc 100644 --- a/doc/src/widgets/widgets-tutorial.qdoc +++ b/doc/src/widgets/widgets-tutorial.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/widgets/windows-and-dialogs/dialogs.qdoc b/doc/src/widgets/windows-and-dialogs/dialogs.qdoc index 54f8c05e39..d332a45c9f 100644 --- a/doc/src/widgets/windows-and-dialogs/dialogs.qdoc +++ b/doc/src/widgets/windows-and-dialogs/dialogs.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/widgets/windows-and-dialogs/mainwindow.qdoc b/doc/src/widgets/windows-and-dialogs/mainwindow.qdoc index f2b29c9d5b..9938d097fe 100644 --- a/doc/src/widgets/windows-and-dialogs/mainwindow.qdoc +++ b/doc/src/widgets/windows-and-dialogs/mainwindow.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/doc/src/xml/qtxml.qdoc b/doc/src/xml/qtxml.qdoc index 973abef07e..2abc88cdef 100644 --- a/doc/src/xml/qtxml.qdoc +++ b/doc/src/xml/qtxml.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/animatedtiles/main.cpp b/examples/animation/animatedtiles/main.cpp index 55dbd39ec1..df8134c169 100644 --- a/examples/animation/animatedtiles/main.cpp +++ b/examples/animation/animatedtiles/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/appchooser/main.cpp b/examples/animation/appchooser/main.cpp index 55068c6a67..ed037edd1d 100644 --- a/examples/animation/appchooser/main.cpp +++ b/examples/animation/appchooser/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/easing/animation.h b/examples/animation/easing/animation.h index 5f6c425827..298a0e3d13 100644 --- a/examples/animation/easing/animation.h +++ b/examples/animation/easing/animation.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/easing/main.cpp b/examples/animation/easing/main.cpp index 7936810812..f6ec6e42e8 100644 --- a/examples/animation/easing/main.cpp +++ b/examples/animation/easing/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/easing/window.cpp b/examples/animation/easing/window.cpp index 208acd04fc..d5d46aed99 100644 --- a/examples/animation/easing/window.cpp +++ b/examples/animation/easing/window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/easing/window.h b/examples/animation/easing/window.h index 51fa00d859..e45368b9bb 100644 --- a/examples/animation/easing/window.h +++ b/examples/animation/easing/window.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/moveblocks/main.cpp b/examples/animation/moveblocks/main.cpp index a5aba4549a..5076872823 100644 --- a/examples/animation/moveblocks/main.cpp +++ b/examples/animation/moveblocks/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/states/main.cpp b/examples/animation/states/main.cpp index 891254e069..0efaa8ae24 100644 --- a/examples/animation/states/main.cpp +++ b/examples/animation/states/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/stickman/animation.cpp b/examples/animation/stickman/animation.cpp index af7144be2c..6563f9d660 100644 --- a/examples/animation/stickman/animation.cpp +++ b/examples/animation/stickman/animation.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/stickman/animation.h b/examples/animation/stickman/animation.h index 51edda6e63..20350b3669 100644 --- a/examples/animation/stickman/animation.h +++ b/examples/animation/stickman/animation.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/stickman/graphicsview.cpp b/examples/animation/stickman/graphicsview.cpp index 0d422ab1d2..2584aee814 100644 --- a/examples/animation/stickman/graphicsview.cpp +++ b/examples/animation/stickman/graphicsview.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/stickman/graphicsview.h b/examples/animation/stickman/graphicsview.h index abd621df43..4df7911dfa 100644 --- a/examples/animation/stickman/graphicsview.h +++ b/examples/animation/stickman/graphicsview.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/stickman/lifecycle.cpp b/examples/animation/stickman/lifecycle.cpp index 791b33eb2e..17d1816557 100644 --- a/examples/animation/stickman/lifecycle.cpp +++ b/examples/animation/stickman/lifecycle.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/stickman/lifecycle.h b/examples/animation/stickman/lifecycle.h index ca1a052c39..18a4fa3b46 100644 --- a/examples/animation/stickman/lifecycle.h +++ b/examples/animation/stickman/lifecycle.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/stickman/main.cpp b/examples/animation/stickman/main.cpp index 208d346c5c..c134a7ec7f 100644 --- a/examples/animation/stickman/main.cpp +++ b/examples/animation/stickman/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/stickman/node.cpp b/examples/animation/stickman/node.cpp index 3077dffb12..f7d9a02610 100644 --- a/examples/animation/stickman/node.cpp +++ b/examples/animation/stickman/node.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/stickman/node.h b/examples/animation/stickman/node.h index cefb3a81ac..6e99d43517 100644 --- a/examples/animation/stickman/node.h +++ b/examples/animation/stickman/node.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/stickman/rectbutton.cpp b/examples/animation/stickman/rectbutton.cpp index d1bd9e42d1..57de48795e 100644 --- a/examples/animation/stickman/rectbutton.cpp +++ b/examples/animation/stickman/rectbutton.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/stickman/rectbutton.h b/examples/animation/stickman/rectbutton.h index e3d1f88926..a3a73a1d9a 100644 --- a/examples/animation/stickman/rectbutton.h +++ b/examples/animation/stickman/rectbutton.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/stickman/stickman.cpp b/examples/animation/stickman/stickman.cpp index 8b474579c2..28c13dff8d 100644 --- a/examples/animation/stickman/stickman.cpp +++ b/examples/animation/stickman/stickman.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/stickman/stickman.h b/examples/animation/stickman/stickman.h index eeebbef283..06f606af9e 100644 --- a/examples/animation/stickman/stickman.h +++ b/examples/animation/stickman/stickman.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/sub-attaq/animationmanager.cpp b/examples/animation/sub-attaq/animationmanager.cpp index c7e230e3d2..732c480cb8 100644 --- a/examples/animation/sub-attaq/animationmanager.cpp +++ b/examples/animation/sub-attaq/animationmanager.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/sub-attaq/animationmanager.h b/examples/animation/sub-attaq/animationmanager.h index 429d656485..3cfc74e0cd 100644 --- a/examples/animation/sub-attaq/animationmanager.h +++ b/examples/animation/sub-attaq/animationmanager.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/sub-attaq/boat.cpp b/examples/animation/sub-attaq/boat.cpp index 4ddf59e6a0..b614b78b7f 100644 --- a/examples/animation/sub-attaq/boat.cpp +++ b/examples/animation/sub-attaq/boat.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/sub-attaq/boat.h b/examples/animation/sub-attaq/boat.h index 71e3512fc3..75d53b3755 100644 --- a/examples/animation/sub-attaq/boat.h +++ b/examples/animation/sub-attaq/boat.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/sub-attaq/boat_p.h b/examples/animation/sub-attaq/boat_p.h index 4141671eb0..d3fa73bcee 100644 --- a/examples/animation/sub-attaq/boat_p.h +++ b/examples/animation/sub-attaq/boat_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/sub-attaq/bomb.cpp b/examples/animation/sub-attaq/bomb.cpp index 6811a27e88..26b041a65c 100644 --- a/examples/animation/sub-attaq/bomb.cpp +++ b/examples/animation/sub-attaq/bomb.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/sub-attaq/bomb.h b/examples/animation/sub-attaq/bomb.h index 222c3d029f..eeb1bb690a 100644 --- a/examples/animation/sub-attaq/bomb.h +++ b/examples/animation/sub-attaq/bomb.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/sub-attaq/graphicsscene.cpp b/examples/animation/sub-attaq/graphicsscene.cpp index d274ca3bde..50a3a5e29f 100644 --- a/examples/animation/sub-attaq/graphicsscene.cpp +++ b/examples/animation/sub-attaq/graphicsscene.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/sub-attaq/graphicsscene.h b/examples/animation/sub-attaq/graphicsscene.h index 198b27101f..1ed5a18a9d 100644 --- a/examples/animation/sub-attaq/graphicsscene.h +++ b/examples/animation/sub-attaq/graphicsscene.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/sub-attaq/main.cpp b/examples/animation/sub-attaq/main.cpp index 6fdc47ca20..cac0237393 100644 --- a/examples/animation/sub-attaq/main.cpp +++ b/examples/animation/sub-attaq/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/sub-attaq/mainwindow.cpp b/examples/animation/sub-attaq/mainwindow.cpp index 81632a50a0..677d09a214 100644 --- a/examples/animation/sub-attaq/mainwindow.cpp +++ b/examples/animation/sub-attaq/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/sub-attaq/mainwindow.h b/examples/animation/sub-attaq/mainwindow.h index 0514776b75..19160e3843 100644 --- a/examples/animation/sub-attaq/mainwindow.h +++ b/examples/animation/sub-attaq/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/sub-attaq/pixmapitem.cpp b/examples/animation/sub-attaq/pixmapitem.cpp index be75bd1995..d584d69ff8 100644 --- a/examples/animation/sub-attaq/pixmapitem.cpp +++ b/examples/animation/sub-attaq/pixmapitem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/sub-attaq/pixmapitem.h b/examples/animation/sub-attaq/pixmapitem.h index f6fced9e97..b8ed147d9e 100644 --- a/examples/animation/sub-attaq/pixmapitem.h +++ b/examples/animation/sub-attaq/pixmapitem.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/sub-attaq/progressitem.cpp b/examples/animation/sub-attaq/progressitem.cpp index 426dedfbd4..a623ea8722 100644 --- a/examples/animation/sub-attaq/progressitem.cpp +++ b/examples/animation/sub-attaq/progressitem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/sub-attaq/progressitem.h b/examples/animation/sub-attaq/progressitem.h index 9a8a575111..c6b8a30343 100644 --- a/examples/animation/sub-attaq/progressitem.h +++ b/examples/animation/sub-attaq/progressitem.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/sub-attaq/qanimationstate.cpp b/examples/animation/sub-attaq/qanimationstate.cpp index 593c8dfe8d..69d699cb16 100644 --- a/examples/animation/sub-attaq/qanimationstate.cpp +++ b/examples/animation/sub-attaq/qanimationstate.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/sub-attaq/qanimationstate.h b/examples/animation/sub-attaq/qanimationstate.h index aace3b502b..890037a269 100644 --- a/examples/animation/sub-attaq/qanimationstate.h +++ b/examples/animation/sub-attaq/qanimationstate.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/sub-attaq/states.cpp b/examples/animation/sub-attaq/states.cpp index db50938016..312733befd 100644 --- a/examples/animation/sub-attaq/states.cpp +++ b/examples/animation/sub-attaq/states.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/sub-attaq/states.h b/examples/animation/sub-attaq/states.h index 4f322cbd57..3ef2b4b5b4 100644 --- a/examples/animation/sub-attaq/states.h +++ b/examples/animation/sub-attaq/states.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/sub-attaq/submarine.cpp b/examples/animation/sub-attaq/submarine.cpp index 2c8a5a2884..0454751293 100644 --- a/examples/animation/sub-attaq/submarine.cpp +++ b/examples/animation/sub-attaq/submarine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/sub-attaq/submarine.h b/examples/animation/sub-attaq/submarine.h index 852b63de36..cb334a2778 100644 --- a/examples/animation/sub-attaq/submarine.h +++ b/examples/animation/sub-attaq/submarine.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/sub-attaq/submarine_p.h b/examples/animation/sub-attaq/submarine_p.h index eb81c6604b..f42e84f47c 100644 --- a/examples/animation/sub-attaq/submarine_p.h +++ b/examples/animation/sub-attaq/submarine_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/sub-attaq/textinformationitem.cpp b/examples/animation/sub-attaq/textinformationitem.cpp index e2653361a1..050fd7713f 100644 --- a/examples/animation/sub-attaq/textinformationitem.cpp +++ b/examples/animation/sub-attaq/textinformationitem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/sub-attaq/textinformationitem.h b/examples/animation/sub-attaq/textinformationitem.h index 1c62c8597e..a249752c4a 100644 --- a/examples/animation/sub-attaq/textinformationitem.h +++ b/examples/animation/sub-attaq/textinformationitem.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/sub-attaq/torpedo.cpp b/examples/animation/sub-attaq/torpedo.cpp index 8c9bacfa38..9318797b6c 100644 --- a/examples/animation/sub-attaq/torpedo.cpp +++ b/examples/animation/sub-attaq/torpedo.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/animation/sub-attaq/torpedo.h b/examples/animation/sub-attaq/torpedo.h index a5ec24dabf..2d3cd40973 100644 --- a/examples/animation/sub-attaq/torpedo.h +++ b/examples/animation/sub-attaq/torpedo.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dbus/complexpingpong/complexping.cpp b/examples/dbus/complexpingpong/complexping.cpp index 4e17486439..5cda1a04a6 100644 --- a/examples/dbus/complexpingpong/complexping.cpp +++ b/examples/dbus/complexpingpong/complexping.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dbus/complexpingpong/complexping.h b/examples/dbus/complexpingpong/complexping.h index bf54e630a8..6db508099b 100644 --- a/examples/dbus/complexpingpong/complexping.h +++ b/examples/dbus/complexpingpong/complexping.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dbus/complexpingpong/complexpong.cpp b/examples/dbus/complexpingpong/complexpong.cpp index f16afd3121..696b2d3ce0 100644 --- a/examples/dbus/complexpingpong/complexpong.cpp +++ b/examples/dbus/complexpingpong/complexpong.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dbus/complexpingpong/complexpong.h b/examples/dbus/complexpingpong/complexpong.h index cc05972f02..31ddd076ab 100644 --- a/examples/dbus/complexpingpong/complexpong.h +++ b/examples/dbus/complexpingpong/complexpong.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dbus/complexpingpong/ping-common.h b/examples/dbus/complexpingpong/ping-common.h index 532517394b..1632e50adc 100644 --- a/examples/dbus/complexpingpong/ping-common.h +++ b/examples/dbus/complexpingpong/ping-common.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dbus/dbus-chat/chat.cpp b/examples/dbus/dbus-chat/chat.cpp index 33ba0f7a3a..c52d0007d8 100644 --- a/examples/dbus/dbus-chat/chat.cpp +++ b/examples/dbus/dbus-chat/chat.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dbus/dbus-chat/chat.h b/examples/dbus/dbus-chat/chat.h index c7d7b6d2a8..999aa92d8d 100644 --- a/examples/dbus/dbus-chat/chat.h +++ b/examples/dbus/dbus-chat/chat.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dbus/dbus-chat/chat_adaptor.cpp b/examples/dbus/dbus-chat/chat_adaptor.cpp index 553e6e10cc..a362b58774 100644 --- a/examples/dbus/dbus-chat/chat_adaptor.cpp +++ b/examples/dbus/dbus-chat/chat_adaptor.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** @@ -40,7 +40,7 @@ ** This file was generated by qdbusxml2cpp version 0.7 ** Command line was: qdbusxml2cpp -i chat_adaptor.h -a :chat_adaptor.cpp com.trolltech.chat.xml ** -** qdbusxml2cpp is Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** qdbusxml2cpp is Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** ** This is an auto-generated file. ** Do not edit! All changes made to it will be lost. diff --git a/examples/dbus/dbus-chat/chat_adaptor.h b/examples/dbus/dbus-chat/chat_adaptor.h index 2558ceb29f..228204b755 100644 --- a/examples/dbus/dbus-chat/chat_adaptor.h +++ b/examples/dbus/dbus-chat/chat_adaptor.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** @@ -40,7 +40,7 @@ ** This file was generated by qdbusxml2cpp version 0.7 ** Command line was: qdbusxml2cpp -a chat_adaptor.h: com.trolltech.chat.xml ** -** qdbusxml2cpp is Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** qdbusxml2cpp is Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** ** This is an auto-generated file. ** This file may have been hand-edited. Look for HAND-EDIT comments diff --git a/examples/dbus/dbus-chat/chat_interface.cpp b/examples/dbus/dbus-chat/chat_interface.cpp index ea472506de..c81204a776 100644 --- a/examples/dbus/dbus-chat/chat_interface.cpp +++ b/examples/dbus/dbus-chat/chat_interface.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** @@ -40,7 +40,7 @@ ** This file was generated by qdbusxml2cpp version 0.7 ** Command line was: qdbusxml2cpp -i chat_interface.h -p :chat_interface.cpp com.trolltech.chat.xml ** -** qdbusxml2cpp is Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** qdbusxml2cpp is Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** ** This is an auto-generated file. ** This file may have been hand-edited. Look for HAND-EDIT comments diff --git a/examples/dbus/dbus-chat/chat_interface.h b/examples/dbus/dbus-chat/chat_interface.h index 8db1b4f420..2cfbecae79 100644 --- a/examples/dbus/dbus-chat/chat_interface.h +++ b/examples/dbus/dbus-chat/chat_interface.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** @@ -40,7 +40,7 @@ ** This file was generated by qdbusxml2cpp version 0.7 ** Command line was: qdbusxml2cpp -p chat_interface.h: com.trolltech.chat.xml ** -** qdbusxml2cpp is Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** qdbusxml2cpp is Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** ** This is an auto-generated file. ** Do not edit! All changes made to it will be lost. diff --git a/examples/dbus/listnames/listnames.cpp b/examples/dbus/listnames/listnames.cpp index 40bb032369..9890af53b6 100644 --- a/examples/dbus/listnames/listnames.cpp +++ b/examples/dbus/listnames/listnames.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dbus/pingpong/ping-common.h b/examples/dbus/pingpong/ping-common.h index 532517394b..1632e50adc 100644 --- a/examples/dbus/pingpong/ping-common.h +++ b/examples/dbus/pingpong/ping-common.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dbus/pingpong/ping.cpp b/examples/dbus/pingpong/ping.cpp index 67aaf571bc..0d27e50604 100644 --- a/examples/dbus/pingpong/ping.cpp +++ b/examples/dbus/pingpong/ping.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dbus/pingpong/pong.cpp b/examples/dbus/pingpong/pong.cpp index a7c0ad392c..96e537692a 100644 --- a/examples/dbus/pingpong/pong.cpp +++ b/examples/dbus/pingpong/pong.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dbus/pingpong/pong.h b/examples/dbus/pingpong/pong.h index 1b53f11bbc..a1614e0c32 100644 --- a/examples/dbus/pingpong/pong.h +++ b/examples/dbus/pingpong/pong.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dbus/remotecontrolledcar/car/car.cpp b/examples/dbus/remotecontrolledcar/car/car.cpp index d42db25d10..497302b03b 100644 --- a/examples/dbus/remotecontrolledcar/car/car.cpp +++ b/examples/dbus/remotecontrolledcar/car/car.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dbus/remotecontrolledcar/car/car.h b/examples/dbus/remotecontrolledcar/car/car.h index 3db41d7770..0b465ba2ec 100644 --- a/examples/dbus/remotecontrolledcar/car/car.h +++ b/examples/dbus/remotecontrolledcar/car/car.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dbus/remotecontrolledcar/car/car_adaptor.cpp b/examples/dbus/remotecontrolledcar/car/car_adaptor.cpp index 4ced1f5a9c..9ef035ff87 100644 --- a/examples/dbus/remotecontrolledcar/car/car_adaptor.cpp +++ b/examples/dbus/remotecontrolledcar/car/car_adaptor.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** @@ -40,7 +40,7 @@ ** This file was generated by qdbusxml2cpp version 0.7 ** Command line was: qdbusxml2cpp -i car_adaptor.h -a :car_adaptor.cpp car.xml ** -** qdbusxml2cpp is Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** qdbusxml2cpp is Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** ** This is an auto-generated file. ** Do not edit! All changes made to it will be lost. diff --git a/examples/dbus/remotecontrolledcar/car/car_adaptor.h b/examples/dbus/remotecontrolledcar/car/car_adaptor.h index c31779fed0..7092e69f5d 100644 --- a/examples/dbus/remotecontrolledcar/car/car_adaptor.h +++ b/examples/dbus/remotecontrolledcar/car/car_adaptor.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** @@ -40,7 +40,7 @@ ** This file was generated by qdbusxml2cpp version 0.7 ** Command line was: qdbusxml2cpp -a car_adaptor.h: car.xml ** -** qdbusxml2cpp is Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** qdbusxml2cpp is Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** ** This is an auto-generated file. ** This file may have been hand-edited. Look for HAND-EDIT comments diff --git a/examples/dbus/remotecontrolledcar/car/main.cpp b/examples/dbus/remotecontrolledcar/car/main.cpp index df68f6125b..fec64c1207 100644 --- a/examples/dbus/remotecontrolledcar/car/main.cpp +++ b/examples/dbus/remotecontrolledcar/car/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dbus/remotecontrolledcar/controller/car_interface.cpp b/examples/dbus/remotecontrolledcar/controller/car_interface.cpp index e1e6ae4bec..094f04ca8c 100644 --- a/examples/dbus/remotecontrolledcar/controller/car_interface.cpp +++ b/examples/dbus/remotecontrolledcar/controller/car_interface.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** @@ -40,7 +40,7 @@ ** This file was generated by qdbusxml2cpp version 0.7 ** Command line was: qdbusxml2cpp -i car_interface.h -p :car_interface.cpp car.xml ** -** qqdbusxml2cpp is Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** qqdbusxml2cpp is Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** ** This is an auto-generated file. ** This file may have been hand-edited. Look for HAND-EDIT comments diff --git a/examples/dbus/remotecontrolledcar/controller/car_interface.h b/examples/dbus/remotecontrolledcar/controller/car_interface.h index e7e3774c17..3d51fc4988 100644 --- a/examples/dbus/remotecontrolledcar/controller/car_interface.h +++ b/examples/dbus/remotecontrolledcar/controller/car_interface.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** @@ -40,7 +40,7 @@ ** This file was generated by qdbusxml2cpp version 0.7 ** Command line was: qdbusxml2cpp -p car_interface.h: car.xml ** -** qdbusxml2cpp is Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** qdbusxml2cpp is Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** ** This is an auto-generated file. ** Do not edit! All changes made to it will be lost. diff --git a/examples/dbus/remotecontrolledcar/controller/controller.cpp b/examples/dbus/remotecontrolledcar/controller/controller.cpp index 1303d9e218..ba7baf41ff 100644 --- a/examples/dbus/remotecontrolledcar/controller/controller.cpp +++ b/examples/dbus/remotecontrolledcar/controller/controller.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dbus/remotecontrolledcar/controller/controller.h b/examples/dbus/remotecontrolledcar/controller/controller.h index 3fe172e2b7..2f20ac7b4b 100644 --- a/examples/dbus/remotecontrolledcar/controller/controller.h +++ b/examples/dbus/remotecontrolledcar/controller/controller.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dbus/remotecontrolledcar/controller/main.cpp b/examples/dbus/remotecontrolledcar/controller/main.cpp index c91edd3056..ae0372bc8b 100644 --- a/examples/dbus/remotecontrolledcar/controller/main.cpp +++ b/examples/dbus/remotecontrolledcar/controller/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/desktop/screenshot/main.cpp b/examples/desktop/screenshot/main.cpp index c2930f7513..58fdcfdf02 100644 --- a/examples/desktop/screenshot/main.cpp +++ b/examples/desktop/screenshot/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/desktop/screenshot/screenshot.cpp b/examples/desktop/screenshot/screenshot.cpp index 683682ae52..6486c4076a 100644 --- a/examples/desktop/screenshot/screenshot.cpp +++ b/examples/desktop/screenshot/screenshot.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/desktop/screenshot/screenshot.h b/examples/desktop/screenshot/screenshot.h index 03e0508575..0caddb3f60 100644 --- a/examples/desktop/screenshot/screenshot.h +++ b/examples/desktop/screenshot/screenshot.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dialogs/classwizard/classwizard.cpp b/examples/dialogs/classwizard/classwizard.cpp index 64039ae44f..d4d69ad52f 100644 --- a/examples/dialogs/classwizard/classwizard.cpp +++ b/examples/dialogs/classwizard/classwizard.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dialogs/classwizard/classwizard.h b/examples/dialogs/classwizard/classwizard.h index c2833ae07f..377754b00e 100644 --- a/examples/dialogs/classwizard/classwizard.h +++ b/examples/dialogs/classwizard/classwizard.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dialogs/classwizard/main.cpp b/examples/dialogs/classwizard/main.cpp index 8609c0fa08..14055e7025 100644 --- a/examples/dialogs/classwizard/main.cpp +++ b/examples/dialogs/classwizard/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dialogs/configdialog/configdialog.cpp b/examples/dialogs/configdialog/configdialog.cpp index d0f071440d..04af2dad59 100644 --- a/examples/dialogs/configdialog/configdialog.cpp +++ b/examples/dialogs/configdialog/configdialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dialogs/configdialog/configdialog.h b/examples/dialogs/configdialog/configdialog.h index 3835daff86..48873dc447 100644 --- a/examples/dialogs/configdialog/configdialog.h +++ b/examples/dialogs/configdialog/configdialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dialogs/configdialog/main.cpp b/examples/dialogs/configdialog/main.cpp index 3b7b8c1c45..46fca2f01d 100644 --- a/examples/dialogs/configdialog/main.cpp +++ b/examples/dialogs/configdialog/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dialogs/configdialog/pages.cpp b/examples/dialogs/configdialog/pages.cpp index 84949dd075..9af2231034 100644 --- a/examples/dialogs/configdialog/pages.cpp +++ b/examples/dialogs/configdialog/pages.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dialogs/configdialog/pages.h b/examples/dialogs/configdialog/pages.h index ef35b3d0f3..4c1713407a 100644 --- a/examples/dialogs/configdialog/pages.h +++ b/examples/dialogs/configdialog/pages.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dialogs/extension/finddialog.cpp b/examples/dialogs/extension/finddialog.cpp index 6edaa06594..115d8eb72d 100644 --- a/examples/dialogs/extension/finddialog.cpp +++ b/examples/dialogs/extension/finddialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dialogs/extension/finddialog.h b/examples/dialogs/extension/finddialog.h index 0727bc2894..b32fc96ae4 100644 --- a/examples/dialogs/extension/finddialog.h +++ b/examples/dialogs/extension/finddialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dialogs/extension/main.cpp b/examples/dialogs/extension/main.cpp index b54c1293d1..d93e7b6f67 100644 --- a/examples/dialogs/extension/main.cpp +++ b/examples/dialogs/extension/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dialogs/findfiles/main.cpp b/examples/dialogs/findfiles/main.cpp index f2079f511b..218d30316c 100644 --- a/examples/dialogs/findfiles/main.cpp +++ b/examples/dialogs/findfiles/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dialogs/findfiles/window.cpp b/examples/dialogs/findfiles/window.cpp index d0515399d4..44f0a32f30 100644 --- a/examples/dialogs/findfiles/window.cpp +++ b/examples/dialogs/findfiles/window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dialogs/findfiles/window.h b/examples/dialogs/findfiles/window.h index 4dbb446e18..66aeead2d0 100644 --- a/examples/dialogs/findfiles/window.h +++ b/examples/dialogs/findfiles/window.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dialogs/licensewizard/licensewizard.cpp b/examples/dialogs/licensewizard/licensewizard.cpp index a1599145de..e0ac2a9fd4 100644 --- a/examples/dialogs/licensewizard/licensewizard.cpp +++ b/examples/dialogs/licensewizard/licensewizard.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dialogs/licensewizard/licensewizard.h b/examples/dialogs/licensewizard/licensewizard.h index 432c046444..ad10764bd7 100644 --- a/examples/dialogs/licensewizard/licensewizard.h +++ b/examples/dialogs/licensewizard/licensewizard.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dialogs/licensewizard/main.cpp b/examples/dialogs/licensewizard/main.cpp index 59e59ac720..0e2434083c 100644 --- a/examples/dialogs/licensewizard/main.cpp +++ b/examples/dialogs/licensewizard/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dialogs/sipdialog/dialog.cpp b/examples/dialogs/sipdialog/dialog.cpp index 3dd37e368b..5f772efb4a 100644 --- a/examples/dialogs/sipdialog/dialog.cpp +++ b/examples/dialogs/sipdialog/dialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dialogs/sipdialog/dialog.h b/examples/dialogs/sipdialog/dialog.h index a97c20880b..16daf857fc 100644 --- a/examples/dialogs/sipdialog/dialog.h +++ b/examples/dialogs/sipdialog/dialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dialogs/sipdialog/main.cpp b/examples/dialogs/sipdialog/main.cpp index aa1151c0a9..0579492133 100644 --- a/examples/dialogs/sipdialog/main.cpp +++ b/examples/dialogs/sipdialog/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dialogs/standarddialogs/dialog.cpp b/examples/dialogs/standarddialogs/dialog.cpp index cb3e55fb63..5fc8f65880 100644 --- a/examples/dialogs/standarddialogs/dialog.cpp +++ b/examples/dialogs/standarddialogs/dialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dialogs/standarddialogs/dialog.h b/examples/dialogs/standarddialogs/dialog.h index b4f898d89b..e6c802fa7f 100644 --- a/examples/dialogs/standarddialogs/dialog.h +++ b/examples/dialogs/standarddialogs/dialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dialogs/standarddialogs/main.cpp b/examples/dialogs/standarddialogs/main.cpp index 11b6f50a0e..d67a6a42f9 100644 --- a/examples/dialogs/standarddialogs/main.cpp +++ b/examples/dialogs/standarddialogs/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dialogs/tabdialog/main.cpp b/examples/dialogs/tabdialog/main.cpp index 879b16d21e..44b96a7c97 100644 --- a/examples/dialogs/tabdialog/main.cpp +++ b/examples/dialogs/tabdialog/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dialogs/tabdialog/tabdialog.cpp b/examples/dialogs/tabdialog/tabdialog.cpp index e38946a8ff..f99be2f400 100644 --- a/examples/dialogs/tabdialog/tabdialog.cpp +++ b/examples/dialogs/tabdialog/tabdialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dialogs/tabdialog/tabdialog.h b/examples/dialogs/tabdialog/tabdialog.h index 6ae1e15df5..1cc71beae9 100644 --- a/examples/dialogs/tabdialog/tabdialog.h +++ b/examples/dialogs/tabdialog/tabdialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/dialogs/trivialwizard/trivialwizard.cpp b/examples/dialogs/trivialwizard/trivialwizard.cpp index 5e3ef97694..5ad9a20414 100644 --- a/examples/dialogs/trivialwizard/trivialwizard.cpp +++ b/examples/dialogs/trivialwizard/trivialwizard.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/draganddrop/draggableicons/dragwidget.cpp b/examples/draganddrop/draggableicons/dragwidget.cpp index 7a788dfa47..9d7ee8adb1 100644 --- a/examples/draganddrop/draggableicons/dragwidget.cpp +++ b/examples/draganddrop/draggableicons/dragwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/draganddrop/draggableicons/dragwidget.h b/examples/draganddrop/draggableicons/dragwidget.h index f41dbcdf93..252cce0304 100644 --- a/examples/draganddrop/draggableicons/dragwidget.h +++ b/examples/draganddrop/draggableicons/dragwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/draganddrop/draggableicons/main.cpp b/examples/draganddrop/draggableicons/main.cpp index 7a80b92a8a..b4f92005cd 100644 --- a/examples/draganddrop/draggableicons/main.cpp +++ b/examples/draganddrop/draggableicons/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/draganddrop/draggabletext/draglabel.cpp b/examples/draganddrop/draggabletext/draglabel.cpp index 9eb5dfac0b..a4f71d29a1 100644 --- a/examples/draganddrop/draggabletext/draglabel.cpp +++ b/examples/draganddrop/draggabletext/draglabel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/draganddrop/draggabletext/draglabel.h b/examples/draganddrop/draggabletext/draglabel.h index 55bf7c3d7c..5662eb957a 100644 --- a/examples/draganddrop/draggabletext/draglabel.h +++ b/examples/draganddrop/draggabletext/draglabel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/draganddrop/draggabletext/dragwidget.cpp b/examples/draganddrop/draggabletext/dragwidget.cpp index 5287c998a3..dbf926c386 100644 --- a/examples/draganddrop/draggabletext/dragwidget.cpp +++ b/examples/draganddrop/draggabletext/dragwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/draganddrop/draggabletext/dragwidget.h b/examples/draganddrop/draggabletext/dragwidget.h index 89391a1313..8f9492b25a 100644 --- a/examples/draganddrop/draggabletext/dragwidget.h +++ b/examples/draganddrop/draggabletext/dragwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/draganddrop/draggabletext/main.cpp b/examples/draganddrop/draggabletext/main.cpp index 4d0a121337..ce90a00ddf 100644 --- a/examples/draganddrop/draggabletext/main.cpp +++ b/examples/draganddrop/draggabletext/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/draganddrop/dropsite/droparea.cpp b/examples/draganddrop/dropsite/droparea.cpp index c3cac7bf45..ebacac4752 100644 --- a/examples/draganddrop/dropsite/droparea.cpp +++ b/examples/draganddrop/dropsite/droparea.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/draganddrop/dropsite/droparea.h b/examples/draganddrop/dropsite/droparea.h index 9c2259d4d0..ca30e80f88 100644 --- a/examples/draganddrop/dropsite/droparea.h +++ b/examples/draganddrop/dropsite/droparea.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/draganddrop/dropsite/dropsitewindow.cpp b/examples/draganddrop/dropsite/dropsitewindow.cpp index 191470207e..0e6034afb8 100644 --- a/examples/draganddrop/dropsite/dropsitewindow.cpp +++ b/examples/draganddrop/dropsite/dropsitewindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/draganddrop/dropsite/dropsitewindow.h b/examples/draganddrop/dropsite/dropsitewindow.h index f4cb2a8f61..4e5313b56c 100644 --- a/examples/draganddrop/dropsite/dropsitewindow.h +++ b/examples/draganddrop/dropsite/dropsitewindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/draganddrop/dropsite/main.cpp b/examples/draganddrop/dropsite/main.cpp index 8f57cb88a6..b053135791 100644 --- a/examples/draganddrop/dropsite/main.cpp +++ b/examples/draganddrop/dropsite/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/draganddrop/fridgemagnets/draglabel.cpp b/examples/draganddrop/fridgemagnets/draglabel.cpp index dd5ddb57d9..ae973b7cc8 100644 --- a/examples/draganddrop/fridgemagnets/draglabel.cpp +++ b/examples/draganddrop/fridgemagnets/draglabel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/draganddrop/fridgemagnets/draglabel.h b/examples/draganddrop/fridgemagnets/draglabel.h index 37ebb3a7cd..a4de61ec0d 100644 --- a/examples/draganddrop/fridgemagnets/draglabel.h +++ b/examples/draganddrop/fridgemagnets/draglabel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/draganddrop/fridgemagnets/dragwidget.cpp b/examples/draganddrop/fridgemagnets/dragwidget.cpp index 44b377ab89..726fd677e4 100644 --- a/examples/draganddrop/fridgemagnets/dragwidget.cpp +++ b/examples/draganddrop/fridgemagnets/dragwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/draganddrop/fridgemagnets/dragwidget.h b/examples/draganddrop/fridgemagnets/dragwidget.h index 787121e9e7..a1c0e52bf0 100644 --- a/examples/draganddrop/fridgemagnets/dragwidget.h +++ b/examples/draganddrop/fridgemagnets/dragwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/draganddrop/fridgemagnets/main.cpp b/examples/draganddrop/fridgemagnets/main.cpp index ae2ecb4bde..a3b1451214 100644 --- a/examples/draganddrop/fridgemagnets/main.cpp +++ b/examples/draganddrop/fridgemagnets/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/draganddrop/puzzle/main.cpp b/examples/draganddrop/puzzle/main.cpp index 60341948ab..52c332b5a9 100644 --- a/examples/draganddrop/puzzle/main.cpp +++ b/examples/draganddrop/puzzle/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/draganddrop/puzzle/mainwindow.cpp b/examples/draganddrop/puzzle/mainwindow.cpp index 800213e442..cbdb669ce6 100644 --- a/examples/draganddrop/puzzle/mainwindow.cpp +++ b/examples/draganddrop/puzzle/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/draganddrop/puzzle/mainwindow.h b/examples/draganddrop/puzzle/mainwindow.h index 283ce97660..e0f7aec668 100644 --- a/examples/draganddrop/puzzle/mainwindow.h +++ b/examples/draganddrop/puzzle/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/draganddrop/puzzle/pieceslist.cpp b/examples/draganddrop/puzzle/pieceslist.cpp index 181cd56427..ccbed762b0 100644 --- a/examples/draganddrop/puzzle/pieceslist.cpp +++ b/examples/draganddrop/puzzle/pieceslist.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/draganddrop/puzzle/pieceslist.h b/examples/draganddrop/puzzle/pieceslist.h index 967ade0c73..468304a3d3 100644 --- a/examples/draganddrop/puzzle/pieceslist.h +++ b/examples/draganddrop/puzzle/pieceslist.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/draganddrop/puzzle/puzzlewidget.cpp b/examples/draganddrop/puzzle/puzzlewidget.cpp index cee2596a61..897af3ca56 100644 --- a/examples/draganddrop/puzzle/puzzlewidget.cpp +++ b/examples/draganddrop/puzzle/puzzlewidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/draganddrop/puzzle/puzzlewidget.h b/examples/draganddrop/puzzle/puzzlewidget.h index 2cc789c292..496edbb1e0 100644 --- a/examples/draganddrop/puzzle/puzzlewidget.h +++ b/examples/draganddrop/puzzle/puzzlewidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/effects/blurpicker/blureffect.cpp b/examples/effects/blurpicker/blureffect.cpp index 10410f4669..d12d8afe78 100644 --- a/examples/effects/blurpicker/blureffect.cpp +++ b/examples/effects/blurpicker/blureffect.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/effects/blurpicker/blureffect.h b/examples/effects/blurpicker/blureffect.h index f981b0f4db..dbd7f9826d 100644 --- a/examples/effects/blurpicker/blureffect.h +++ b/examples/effects/blurpicker/blureffect.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/effects/blurpicker/blurpicker.cpp b/examples/effects/blurpicker/blurpicker.cpp index 00771a5818..58e24134a5 100644 --- a/examples/effects/blurpicker/blurpicker.cpp +++ b/examples/effects/blurpicker/blurpicker.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/effects/blurpicker/blurpicker.h b/examples/effects/blurpicker/blurpicker.h index af367b96c2..cbf9206b79 100644 --- a/examples/effects/blurpicker/blurpicker.h +++ b/examples/effects/blurpicker/blurpicker.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/effects/blurpicker/main.cpp b/examples/effects/blurpicker/main.cpp index 2fbe1f139f..19e13f532b 100644 --- a/examples/effects/blurpicker/main.cpp +++ b/examples/effects/blurpicker/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/effects/fademessage/fademessage.cpp b/examples/effects/fademessage/fademessage.cpp index 27d84b52bc..72dbf62ddf 100644 --- a/examples/effects/fademessage/fademessage.cpp +++ b/examples/effects/fademessage/fademessage.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/effects/fademessage/fademessage.h b/examples/effects/fademessage/fademessage.h index 61e67b1a63..2289b43a60 100644 --- a/examples/effects/fademessage/fademessage.h +++ b/examples/effects/fademessage/fademessage.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/effects/fademessage/main.cpp b/examples/effects/fademessage/main.cpp index 83d6d8eab8..f66694f5ca 100644 --- a/examples/effects/fademessage/main.cpp +++ b/examples/effects/fademessage/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/effects/lighting/lighting.cpp b/examples/effects/lighting/lighting.cpp index 3c9fed7ec7..5a99999c01 100644 --- a/examples/effects/lighting/lighting.cpp +++ b/examples/effects/lighting/lighting.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/effects/lighting/lighting.h b/examples/effects/lighting/lighting.h index 5099653b71..933a2b557b 100644 --- a/examples/effects/lighting/lighting.h +++ b/examples/effects/lighting/lighting.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/effects/lighting/main.cpp b/examples/effects/lighting/main.cpp index 69063a5672..3769f0aeeb 100644 --- a/examples/effects/lighting/main.cpp +++ b/examples/effects/lighting/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/embedded/digiflip/digiflip.cpp b/examples/embedded/digiflip/digiflip.cpp index dfe8432631..a2c126be1c 100644 --- a/examples/embedded/digiflip/digiflip.cpp +++ b/examples/embedded/digiflip/digiflip.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/embedded/flickable/flickable.cpp b/examples/embedded/flickable/flickable.cpp index 0c707a172b..60433f6d5b 100644 --- a/examples/embedded/flickable/flickable.cpp +++ b/examples/embedded/flickable/flickable.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/embedded/flickable/flickable.h b/examples/embedded/flickable/flickable.h index 3195d3297c..6b32e06d95 100644 --- a/examples/embedded/flickable/flickable.h +++ b/examples/embedded/flickable/flickable.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/embedded/flickable/main.cpp b/examples/embedded/flickable/main.cpp index 9f86281317..28c8ead9a7 100644 --- a/examples/embedded/flickable/main.cpp +++ b/examples/embedded/flickable/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/embedded/flightinfo/flightinfo.cpp b/examples/embedded/flightinfo/flightinfo.cpp index c0beb9ea8c..853679ff20 100644 --- a/examples/embedded/flightinfo/flightinfo.cpp +++ b/examples/embedded/flightinfo/flightinfo.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/embedded/lightmaps/lightmaps.cpp b/examples/embedded/lightmaps/lightmaps.cpp index 2b97abacd8..e46a672920 100644 --- a/examples/embedded/lightmaps/lightmaps.cpp +++ b/examples/embedded/lightmaps/lightmaps.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/embedded/lightmaps/lightmaps.h b/examples/embedded/lightmaps/lightmaps.h index 45b5c188a2..eb6e4f88c4 100644 --- a/examples/embedded/lightmaps/lightmaps.h +++ b/examples/embedded/lightmaps/lightmaps.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/embedded/lightmaps/main.cpp b/examples/embedded/lightmaps/main.cpp index 999c355f25..c39428b456 100644 --- a/examples/embedded/lightmaps/main.cpp +++ b/examples/embedded/lightmaps/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/embedded/lightmaps/mapzoom.cpp b/examples/embedded/lightmaps/mapzoom.cpp index c1b43f07c7..b39ca5ac9a 100644 --- a/examples/embedded/lightmaps/mapzoom.cpp +++ b/examples/embedded/lightmaps/mapzoom.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/embedded/lightmaps/mapzoom.h b/examples/embedded/lightmaps/mapzoom.h index ac70a23316..d8855efefe 100644 --- a/examples/embedded/lightmaps/mapzoom.h +++ b/examples/embedded/lightmaps/mapzoom.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/embedded/lightmaps/slippymap.cpp b/examples/embedded/lightmaps/slippymap.cpp index e2a2eaa0bc..0bacb16874 100644 --- a/examples/embedded/lightmaps/slippymap.cpp +++ b/examples/embedded/lightmaps/slippymap.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/embedded/lightmaps/slippymap.h b/examples/embedded/lightmaps/slippymap.h index 64ba5c3e59..63729c9958 100644 --- a/examples/embedded/lightmaps/slippymap.h +++ b/examples/embedded/lightmaps/slippymap.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/embedded/raycasting/raycasting.cpp b/examples/embedded/raycasting/raycasting.cpp index f2de58a1c1..d1ea143957 100644 --- a/examples/embedded/raycasting/raycasting.cpp +++ b/examples/embedded/raycasting/raycasting.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/embedded/styleexample/main.cpp b/examples/embedded/styleexample/main.cpp index d3c228a59e..4a2c2f001e 100644 --- a/examples/embedded/styleexample/main.cpp +++ b/examples/embedded/styleexample/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/embedded/styleexample/stylewidget.cpp b/examples/embedded/styleexample/stylewidget.cpp index 7bac8a84d7..9d499c2f2c 100644 --- a/examples/embedded/styleexample/stylewidget.cpp +++ b/examples/embedded/styleexample/stylewidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/embedded/styleexample/stylewidget.h b/examples/embedded/styleexample/stylewidget.h index 11fa5348de..7ecf4ac13b 100644 --- a/examples/embedded/styleexample/stylewidget.h +++ b/examples/embedded/styleexample/stylewidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/gestures/imagegestures/imagewidget.cpp b/examples/gestures/imagegestures/imagewidget.cpp index e12cb41363..d7f299285b 100644 --- a/examples/gestures/imagegestures/imagewidget.cpp +++ b/examples/gestures/imagegestures/imagewidget.cpp @@ -1,7 +1,7 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/gestures/imagegestures/imagewidget.h b/examples/gestures/imagegestures/imagewidget.h index 1ee7d02224..dd09a7b874 100644 --- a/examples/gestures/imagegestures/imagewidget.h +++ b/examples/gestures/imagegestures/imagewidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/gestures/imagegestures/main.cpp b/examples/gestures/imagegestures/main.cpp index 4097a2fb31..78806777f8 100644 --- a/examples/gestures/imagegestures/main.cpp +++ b/examples/gestures/imagegestures/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/gestures/imagegestures/mainwidget.cpp b/examples/gestures/imagegestures/mainwidget.cpp index 329cfe3bfd..e973dbcc78 100644 --- a/examples/gestures/imagegestures/mainwidget.cpp +++ b/examples/gestures/imagegestures/mainwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/gestures/imagegestures/mainwidget.h b/examples/gestures/imagegestures/mainwidget.h index 066b1ee680..ea6a82cc9d 100644 --- a/examples/gestures/imagegestures/mainwidget.h +++ b/examples/gestures/imagegestures/mainwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/anchorlayout/main.cpp b/examples/graphicsview/anchorlayout/main.cpp index d19dd38f74..575209583f 100644 --- a/examples/graphicsview/anchorlayout/main.cpp +++ b/examples/graphicsview/anchorlayout/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/basicgraphicslayouts/layoutitem.cpp b/examples/graphicsview/basicgraphicslayouts/layoutitem.cpp index 0b1a10dd50..1d4ce5cb3e 100644 --- a/examples/graphicsview/basicgraphicslayouts/layoutitem.cpp +++ b/examples/graphicsview/basicgraphicslayouts/layoutitem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/basicgraphicslayouts/layoutitem.h b/examples/graphicsview/basicgraphicslayouts/layoutitem.h index 3d83d4cd88..f51ee280de 100644 --- a/examples/graphicsview/basicgraphicslayouts/layoutitem.h +++ b/examples/graphicsview/basicgraphicslayouts/layoutitem.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/basicgraphicslayouts/main.cpp b/examples/graphicsview/basicgraphicslayouts/main.cpp index 5edd130403..296120fd40 100644 --- a/examples/graphicsview/basicgraphicslayouts/main.cpp +++ b/examples/graphicsview/basicgraphicslayouts/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/basicgraphicslayouts/window.cpp b/examples/graphicsview/basicgraphicslayouts/window.cpp index 17a456e240..33016be62f 100644 --- a/examples/graphicsview/basicgraphicslayouts/window.cpp +++ b/examples/graphicsview/basicgraphicslayouts/window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/basicgraphicslayouts/window.h b/examples/graphicsview/basicgraphicslayouts/window.h index 4efa1ecd3a..dbfcb33adc 100644 --- a/examples/graphicsview/basicgraphicslayouts/window.h +++ b/examples/graphicsview/basicgraphicslayouts/window.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/boxes/basic.fsh b/examples/graphicsview/boxes/basic.fsh index faf3601606..b0491b7d41 100644 --- a/examples/graphicsview/boxes/basic.fsh +++ b/examples/graphicsview/boxes/basic.fsh @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/boxes/basic.vsh b/examples/graphicsview/boxes/basic.vsh index 31acc4224a..0016c261c7 100644 --- a/examples/graphicsview/boxes/basic.vsh +++ b/examples/graphicsview/boxes/basic.vsh @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/boxes/dotted.fsh b/examples/graphicsview/boxes/dotted.fsh index a9f1bcbefb..22ade01ecf 100644 --- a/examples/graphicsview/boxes/dotted.fsh +++ b/examples/graphicsview/boxes/dotted.fsh @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/boxes/fresnel.fsh b/examples/graphicsview/boxes/fresnel.fsh index 462f9674f4..d00c63d566 100644 --- a/examples/graphicsview/boxes/fresnel.fsh +++ b/examples/graphicsview/boxes/fresnel.fsh @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/boxes/glass.fsh b/examples/graphicsview/boxes/glass.fsh index aeac2c2fed..adadab8c58 100644 --- a/examples/graphicsview/boxes/glass.fsh +++ b/examples/graphicsview/boxes/glass.fsh @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/boxes/glbuffers.cpp b/examples/graphicsview/boxes/glbuffers.cpp index e12132b4cd..5b501f573c 100644 --- a/examples/graphicsview/boxes/glbuffers.cpp +++ b/examples/graphicsview/boxes/glbuffers.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/boxes/glbuffers.h b/examples/graphicsview/boxes/glbuffers.h index fa3a964c22..e81a026817 100644 --- a/examples/graphicsview/boxes/glbuffers.h +++ b/examples/graphicsview/boxes/glbuffers.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/boxes/glextensions.cpp b/examples/graphicsview/boxes/glextensions.cpp index b712efe38b..88e946b359 100644 --- a/examples/graphicsview/boxes/glextensions.cpp +++ b/examples/graphicsview/boxes/glextensions.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/boxes/glextensions.h b/examples/graphicsview/boxes/glextensions.h index f9c5dbcaa9..751dbd8aa9 100644 --- a/examples/graphicsview/boxes/glextensions.h +++ b/examples/graphicsview/boxes/glextensions.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/boxes/gltrianglemesh.h b/examples/graphicsview/boxes/gltrianglemesh.h index f023938b7b..d10437d05f 100644 --- a/examples/graphicsview/boxes/gltrianglemesh.h +++ b/examples/graphicsview/boxes/gltrianglemesh.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/boxes/granite.fsh b/examples/graphicsview/boxes/granite.fsh index abaeeb97bc..5e78ff287c 100644 --- a/examples/graphicsview/boxes/granite.fsh +++ b/examples/graphicsview/boxes/granite.fsh @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/boxes/main.cpp b/examples/graphicsview/boxes/main.cpp index e7dced71d2..42b8d331cb 100644 --- a/examples/graphicsview/boxes/main.cpp +++ b/examples/graphicsview/boxes/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/boxes/marble.fsh b/examples/graphicsview/boxes/marble.fsh index 170ec3abef..84d62af8b2 100644 --- a/examples/graphicsview/boxes/marble.fsh +++ b/examples/graphicsview/boxes/marble.fsh @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/boxes/qtbox.cpp b/examples/graphicsview/boxes/qtbox.cpp index d24116578c..226363de0b 100644 --- a/examples/graphicsview/boxes/qtbox.cpp +++ b/examples/graphicsview/boxes/qtbox.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/boxes/qtbox.h b/examples/graphicsview/boxes/qtbox.h index 81ef8ae7d5..8cac5562a5 100644 --- a/examples/graphicsview/boxes/qtbox.h +++ b/examples/graphicsview/boxes/qtbox.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/boxes/reflection.fsh b/examples/graphicsview/boxes/reflection.fsh index 576c522bbb..ad63ccb3a3 100644 --- a/examples/graphicsview/boxes/reflection.fsh +++ b/examples/graphicsview/boxes/reflection.fsh @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/boxes/refraction.fsh b/examples/graphicsview/boxes/refraction.fsh index 10ab38a54c..b591891c19 100644 --- a/examples/graphicsview/boxes/refraction.fsh +++ b/examples/graphicsview/boxes/refraction.fsh @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/boxes/roundedbox.cpp b/examples/graphicsview/boxes/roundedbox.cpp index 5058043707..b3d452d161 100644 --- a/examples/graphicsview/boxes/roundedbox.cpp +++ b/examples/graphicsview/boxes/roundedbox.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/boxes/roundedbox.h b/examples/graphicsview/boxes/roundedbox.h index e4e7c589d3..12f6abe042 100644 --- a/examples/graphicsview/boxes/roundedbox.h +++ b/examples/graphicsview/boxes/roundedbox.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/boxes/scene.cpp b/examples/graphicsview/boxes/scene.cpp index 39cd0fcafd..bbe4f896e1 100644 --- a/examples/graphicsview/boxes/scene.cpp +++ b/examples/graphicsview/boxes/scene.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/boxes/scene.h b/examples/graphicsview/boxes/scene.h index 357f955bb6..e79093df0e 100644 --- a/examples/graphicsview/boxes/scene.h +++ b/examples/graphicsview/boxes/scene.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/boxes/trackball.cpp b/examples/graphicsview/boxes/trackball.cpp index 1bb864ce90..95d4a63cab 100644 --- a/examples/graphicsview/boxes/trackball.cpp +++ b/examples/graphicsview/boxes/trackball.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/boxes/trackball.h b/examples/graphicsview/boxes/trackball.h index cc3d5ade34..ac0f41c969 100644 --- a/examples/graphicsview/boxes/trackball.h +++ b/examples/graphicsview/boxes/trackball.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/boxes/wood.fsh b/examples/graphicsview/boxes/wood.fsh index 19950b252c..4ce1411f5f 100644 --- a/examples/graphicsview/boxes/wood.fsh +++ b/examples/graphicsview/boxes/wood.fsh @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/chip/chip.cpp b/examples/graphicsview/chip/chip.cpp index b47069b20c..e7978cdfea 100644 --- a/examples/graphicsview/chip/chip.cpp +++ b/examples/graphicsview/chip/chip.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/chip/chip.h b/examples/graphicsview/chip/chip.h index 460969451b..fc57633004 100644 --- a/examples/graphicsview/chip/chip.h +++ b/examples/graphicsview/chip/chip.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/chip/main.cpp b/examples/graphicsview/chip/main.cpp index e983e4cca6..d82a34cb2b 100644 --- a/examples/graphicsview/chip/main.cpp +++ b/examples/graphicsview/chip/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/chip/mainwindow.cpp b/examples/graphicsview/chip/mainwindow.cpp index a8f4675c13..c504a108c8 100644 --- a/examples/graphicsview/chip/mainwindow.cpp +++ b/examples/graphicsview/chip/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/chip/mainwindow.h b/examples/graphicsview/chip/mainwindow.h index a5ea9402d7..01bd3a1587 100644 --- a/examples/graphicsview/chip/mainwindow.h +++ b/examples/graphicsview/chip/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/chip/view.cpp b/examples/graphicsview/chip/view.cpp index 072dafaed4..1169b30421 100644 --- a/examples/graphicsview/chip/view.cpp +++ b/examples/graphicsview/chip/view.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/chip/view.h b/examples/graphicsview/chip/view.h index 7c587d4147..2c3d643976 100644 --- a/examples/graphicsview/chip/view.h +++ b/examples/graphicsview/chip/view.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/collidingmice/main.cpp b/examples/graphicsview/collidingmice/main.cpp index 5bba2756ce..c3db838746 100644 --- a/examples/graphicsview/collidingmice/main.cpp +++ b/examples/graphicsview/collidingmice/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/collidingmice/mouse.cpp b/examples/graphicsview/collidingmice/mouse.cpp index 4e89454f8d..f5ad94bfef 100644 --- a/examples/graphicsview/collidingmice/mouse.cpp +++ b/examples/graphicsview/collidingmice/mouse.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/collidingmice/mouse.h b/examples/graphicsview/collidingmice/mouse.h index 430e741d5b..c85e351f44 100644 --- a/examples/graphicsview/collidingmice/mouse.h +++ b/examples/graphicsview/collidingmice/mouse.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/diagramscene/arrow.cpp b/examples/graphicsview/diagramscene/arrow.cpp index 34142ff71b..6ba8e8282e 100644 --- a/examples/graphicsview/diagramscene/arrow.cpp +++ b/examples/graphicsview/diagramscene/arrow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/diagramscene/arrow.h b/examples/graphicsview/diagramscene/arrow.h index cc6ff9732d..b6e2c503b4 100644 --- a/examples/graphicsview/diagramscene/arrow.h +++ b/examples/graphicsview/diagramscene/arrow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/diagramscene/diagramitem.cpp b/examples/graphicsview/diagramscene/diagramitem.cpp index 31c9627f9a..3b67346cca 100644 --- a/examples/graphicsview/diagramscene/diagramitem.cpp +++ b/examples/graphicsview/diagramscene/diagramitem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/diagramscene/diagramitem.h b/examples/graphicsview/diagramscene/diagramitem.h index 44a8b6dad5..96de11e865 100644 --- a/examples/graphicsview/diagramscene/diagramitem.h +++ b/examples/graphicsview/diagramscene/diagramitem.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/diagramscene/diagramscene.cpp b/examples/graphicsview/diagramscene/diagramscene.cpp index 4ce5c68841..c7ff12552f 100644 --- a/examples/graphicsview/diagramscene/diagramscene.cpp +++ b/examples/graphicsview/diagramscene/diagramscene.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/diagramscene/diagramscene.h b/examples/graphicsview/diagramscene/diagramscene.h index 4ebe1d2a71..dfa9bd197f 100644 --- a/examples/graphicsview/diagramscene/diagramscene.h +++ b/examples/graphicsview/diagramscene/diagramscene.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/diagramscene/diagramtextitem.cpp b/examples/graphicsview/diagramscene/diagramtextitem.cpp index f8858f1f51..ddbd754489 100644 --- a/examples/graphicsview/diagramscene/diagramtextitem.cpp +++ b/examples/graphicsview/diagramscene/diagramtextitem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/diagramscene/diagramtextitem.h b/examples/graphicsview/diagramscene/diagramtextitem.h index 5e3505f6f0..3a4d6d9911 100644 --- a/examples/graphicsview/diagramscene/diagramtextitem.h +++ b/examples/graphicsview/diagramscene/diagramtextitem.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/diagramscene/main.cpp b/examples/graphicsview/diagramscene/main.cpp index bab04ef1aa..d1d8445aa2 100644 --- a/examples/graphicsview/diagramscene/main.cpp +++ b/examples/graphicsview/diagramscene/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/diagramscene/mainwindow.cpp b/examples/graphicsview/diagramscene/mainwindow.cpp index edf7d3c3f3..382f47ba99 100644 --- a/examples/graphicsview/diagramscene/mainwindow.cpp +++ b/examples/graphicsview/diagramscene/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/diagramscene/mainwindow.h b/examples/graphicsview/diagramscene/mainwindow.h index ad76395a69..3986e41725 100644 --- a/examples/graphicsview/diagramscene/mainwindow.h +++ b/examples/graphicsview/diagramscene/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/dragdroprobot/coloritem.cpp b/examples/graphicsview/dragdroprobot/coloritem.cpp index 24b8491a6b..137faf7497 100644 --- a/examples/graphicsview/dragdroprobot/coloritem.cpp +++ b/examples/graphicsview/dragdroprobot/coloritem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/dragdroprobot/coloritem.h b/examples/graphicsview/dragdroprobot/coloritem.h index e5874f910d..72182420aa 100644 --- a/examples/graphicsview/dragdroprobot/coloritem.h +++ b/examples/graphicsview/dragdroprobot/coloritem.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/dragdroprobot/main.cpp b/examples/graphicsview/dragdroprobot/main.cpp index c90aef0599..ca68a17157 100644 --- a/examples/graphicsview/dragdroprobot/main.cpp +++ b/examples/graphicsview/dragdroprobot/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/dragdroprobot/robot.cpp b/examples/graphicsview/dragdroprobot/robot.cpp index df585a948f..e073a85791 100644 --- a/examples/graphicsview/dragdroprobot/robot.cpp +++ b/examples/graphicsview/dragdroprobot/robot.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/dragdroprobot/robot.h b/examples/graphicsview/dragdroprobot/robot.h index e65f39426b..60808a4df7 100644 --- a/examples/graphicsview/dragdroprobot/robot.h +++ b/examples/graphicsview/dragdroprobot/robot.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/elasticnodes/edge.cpp b/examples/graphicsview/elasticnodes/edge.cpp index 652ab737fc..0431ff600c 100644 --- a/examples/graphicsview/elasticnodes/edge.cpp +++ b/examples/graphicsview/elasticnodes/edge.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/elasticnodes/edge.h b/examples/graphicsview/elasticnodes/edge.h index 8f73edd787..dfd6dd7c40 100644 --- a/examples/graphicsview/elasticnodes/edge.h +++ b/examples/graphicsview/elasticnodes/edge.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/elasticnodes/graphwidget.cpp b/examples/graphicsview/elasticnodes/graphwidget.cpp index 6c54ca2381..50dcf3348c 100644 --- a/examples/graphicsview/elasticnodes/graphwidget.cpp +++ b/examples/graphicsview/elasticnodes/graphwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/elasticnodes/graphwidget.h b/examples/graphicsview/elasticnodes/graphwidget.h index 354967bdd2..b65a213685 100644 --- a/examples/graphicsview/elasticnodes/graphwidget.h +++ b/examples/graphicsview/elasticnodes/graphwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/elasticnodes/main.cpp b/examples/graphicsview/elasticnodes/main.cpp index 1c04057d1e..0aa551d4e5 100644 --- a/examples/graphicsview/elasticnodes/main.cpp +++ b/examples/graphicsview/elasticnodes/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/elasticnodes/node.cpp b/examples/graphicsview/elasticnodes/node.cpp index 076d8232a1..de8d31058a 100644 --- a/examples/graphicsview/elasticnodes/node.cpp +++ b/examples/graphicsview/elasticnodes/node.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/elasticnodes/node.h b/examples/graphicsview/elasticnodes/node.h index 53af7182d0..d2f3e7471b 100644 --- a/examples/graphicsview/elasticnodes/node.h +++ b/examples/graphicsview/elasticnodes/node.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/embeddeddialogs/customproxy.cpp b/examples/graphicsview/embeddeddialogs/customproxy.cpp index 13f5f654c2..cc1ec06090 100644 --- a/examples/graphicsview/embeddeddialogs/customproxy.cpp +++ b/examples/graphicsview/embeddeddialogs/customproxy.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/embeddeddialogs/customproxy.h b/examples/graphicsview/embeddeddialogs/customproxy.h index 0ac7c7afe4..d276298709 100644 --- a/examples/graphicsview/embeddeddialogs/customproxy.h +++ b/examples/graphicsview/embeddeddialogs/customproxy.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/embeddeddialogs/embeddeddialog.cpp b/examples/graphicsview/embeddeddialogs/embeddeddialog.cpp index f608fc5558..40ed950fd1 100644 --- a/examples/graphicsview/embeddeddialogs/embeddeddialog.cpp +++ b/examples/graphicsview/embeddeddialogs/embeddeddialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/embeddeddialogs/embeddeddialog.h b/examples/graphicsview/embeddeddialogs/embeddeddialog.h index 1c7051fac9..4098597577 100644 --- a/examples/graphicsview/embeddeddialogs/embeddeddialog.h +++ b/examples/graphicsview/embeddeddialogs/embeddeddialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/embeddeddialogs/main.cpp b/examples/graphicsview/embeddeddialogs/main.cpp index 0dc61a4930..e70819efcc 100644 --- a/examples/graphicsview/embeddeddialogs/main.cpp +++ b/examples/graphicsview/embeddeddialogs/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/flowlayout/flowlayout.cpp b/examples/graphicsview/flowlayout/flowlayout.cpp index cb0ca1b2de..2b26111223 100644 --- a/examples/graphicsview/flowlayout/flowlayout.cpp +++ b/examples/graphicsview/flowlayout/flowlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/flowlayout/flowlayout.h b/examples/graphicsview/flowlayout/flowlayout.h index 67c3315736..a1adc2e2a6 100644 --- a/examples/graphicsview/flowlayout/flowlayout.h +++ b/examples/graphicsview/flowlayout/flowlayout.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/flowlayout/main.cpp b/examples/graphicsview/flowlayout/main.cpp index 88bbb79d4c..915eb479ca 100644 --- a/examples/graphicsview/flowlayout/main.cpp +++ b/examples/graphicsview/flowlayout/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/flowlayout/window.cpp b/examples/graphicsview/flowlayout/window.cpp index 35bd931d39..2ab4f5f515 100644 --- a/examples/graphicsview/flowlayout/window.cpp +++ b/examples/graphicsview/flowlayout/window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/flowlayout/window.h b/examples/graphicsview/flowlayout/window.h index 7697d70842..9a0d4d20f4 100644 --- a/examples/graphicsview/flowlayout/window.h +++ b/examples/graphicsview/flowlayout/window.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/padnavigator/flippablepad.cpp b/examples/graphicsview/padnavigator/flippablepad.cpp index 78f8281afd..e59a0c776d 100644 --- a/examples/graphicsview/padnavigator/flippablepad.cpp +++ b/examples/graphicsview/padnavigator/flippablepad.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/padnavigator/flippablepad.h b/examples/graphicsview/padnavigator/flippablepad.h index 0114b43a75..ef3a1cbfda 100644 --- a/examples/graphicsview/padnavigator/flippablepad.h +++ b/examples/graphicsview/padnavigator/flippablepad.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/padnavigator/main.cpp b/examples/graphicsview/padnavigator/main.cpp index 4cdf71c8e6..5f3eedb0f1 100644 --- a/examples/graphicsview/padnavigator/main.cpp +++ b/examples/graphicsview/padnavigator/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/padnavigator/padnavigator.cpp b/examples/graphicsview/padnavigator/padnavigator.cpp index b714ebfb71..7b7d7b632f 100644 --- a/examples/graphicsview/padnavigator/padnavigator.cpp +++ b/examples/graphicsview/padnavigator/padnavigator.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/padnavigator/padnavigator.h b/examples/graphicsview/padnavigator/padnavigator.h index 0fcfde931f..73dae93529 100644 --- a/examples/graphicsview/padnavigator/padnavigator.h +++ b/examples/graphicsview/padnavigator/padnavigator.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/padnavigator/roundrectitem.cpp b/examples/graphicsview/padnavigator/roundrectitem.cpp index 0103de47fe..f32c884884 100644 --- a/examples/graphicsview/padnavigator/roundrectitem.cpp +++ b/examples/graphicsview/padnavigator/roundrectitem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/padnavigator/roundrectitem.h b/examples/graphicsview/padnavigator/roundrectitem.h index a7d014f12a..7bdf186533 100644 --- a/examples/graphicsview/padnavigator/roundrectitem.h +++ b/examples/graphicsview/padnavigator/roundrectitem.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/padnavigator/splashitem.cpp b/examples/graphicsview/padnavigator/splashitem.cpp index ee3b38c1a9..52a4ca9aa9 100644 --- a/examples/graphicsview/padnavigator/splashitem.cpp +++ b/examples/graphicsview/padnavigator/splashitem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/padnavigator/splashitem.h b/examples/graphicsview/padnavigator/splashitem.h index 4d0b58a824..404880c172 100644 --- a/examples/graphicsview/padnavigator/splashitem.h +++ b/examples/graphicsview/padnavigator/splashitem.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/simpleanchorlayout/main.cpp b/examples/graphicsview/simpleanchorlayout/main.cpp index a909552f6a..5536e2ea03 100644 --- a/examples/graphicsview/simpleanchorlayout/main.cpp +++ b/examples/graphicsview/simpleanchorlayout/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/graphicsview/weatheranchorlayout/main.cpp b/examples/graphicsview/weatheranchorlayout/main.cpp index e87756b664..30ac6487b9 100644 --- a/examples/graphicsview/weatheranchorlayout/main.cpp +++ b/examples/graphicsview/weatheranchorlayout/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/ipc/localfortuneclient/client.cpp b/examples/ipc/localfortuneclient/client.cpp index e637cce3c9..1236662bca 100644 --- a/examples/ipc/localfortuneclient/client.cpp +++ b/examples/ipc/localfortuneclient/client.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/ipc/localfortuneclient/client.h b/examples/ipc/localfortuneclient/client.h index 30dc482a4a..c0532d8ad2 100644 --- a/examples/ipc/localfortuneclient/client.h +++ b/examples/ipc/localfortuneclient/client.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/ipc/localfortuneclient/main.cpp b/examples/ipc/localfortuneclient/main.cpp index 557ca3add0..f56167009a 100644 --- a/examples/ipc/localfortuneclient/main.cpp +++ b/examples/ipc/localfortuneclient/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/ipc/localfortuneserver/main.cpp b/examples/ipc/localfortuneserver/main.cpp index ebae3fdd23..afca00ca04 100644 --- a/examples/ipc/localfortuneserver/main.cpp +++ b/examples/ipc/localfortuneserver/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/ipc/localfortuneserver/server.cpp b/examples/ipc/localfortuneserver/server.cpp index 684c81fc92..2d09bf53bb 100644 --- a/examples/ipc/localfortuneserver/server.cpp +++ b/examples/ipc/localfortuneserver/server.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/ipc/localfortuneserver/server.h b/examples/ipc/localfortuneserver/server.h index 5f00ba4d2d..cd9203d469 100644 --- a/examples/ipc/localfortuneserver/server.h +++ b/examples/ipc/localfortuneserver/server.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/ipc/sharedmemory/dialog.cpp b/examples/ipc/sharedmemory/dialog.cpp index fd7535ed13..5a4fa75235 100644 --- a/examples/ipc/sharedmemory/dialog.cpp +++ b/examples/ipc/sharedmemory/dialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/ipc/sharedmemory/dialog.h b/examples/ipc/sharedmemory/dialog.h index ff9eacbaec..26677a9446 100644 --- a/examples/ipc/sharedmemory/dialog.h +++ b/examples/ipc/sharedmemory/dialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/ipc/sharedmemory/main.cpp b/examples/ipc/sharedmemory/main.cpp index 279c1c0047..6cda2b22f6 100644 --- a/examples/ipc/sharedmemory/main.cpp +++ b/examples/ipc/sharedmemory/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/addressbook/adddialog.cpp b/examples/itemviews/addressbook/adddialog.cpp index c5baddd1ea..0352abe39c 100644 --- a/examples/itemviews/addressbook/adddialog.cpp +++ b/examples/itemviews/addressbook/adddialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/addressbook/adddialog.h b/examples/itemviews/addressbook/adddialog.h index d274cfba09..7d4e5b886d 100644 --- a/examples/itemviews/addressbook/adddialog.h +++ b/examples/itemviews/addressbook/adddialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/addressbook/addresswidget.cpp b/examples/itemviews/addressbook/addresswidget.cpp index 82ae5083f3..7d4d752a52 100644 --- a/examples/itemviews/addressbook/addresswidget.cpp +++ b/examples/itemviews/addressbook/addresswidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/addressbook/addresswidget.h b/examples/itemviews/addressbook/addresswidget.h index 9442a3da7d..28dac9dee3 100644 --- a/examples/itemviews/addressbook/addresswidget.h +++ b/examples/itemviews/addressbook/addresswidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/addressbook/main.cpp b/examples/itemviews/addressbook/main.cpp index 0a0ccb7ac8..f5dc990137 100644 --- a/examples/itemviews/addressbook/main.cpp +++ b/examples/itemviews/addressbook/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/addressbook/mainwindow.cpp b/examples/itemviews/addressbook/mainwindow.cpp index 0a08b726bb..dec4d266f6 100644 --- a/examples/itemviews/addressbook/mainwindow.cpp +++ b/examples/itemviews/addressbook/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/addressbook/mainwindow.h b/examples/itemviews/addressbook/mainwindow.h index 4f925dd1e4..436565b12d 100644 --- a/examples/itemviews/addressbook/mainwindow.h +++ b/examples/itemviews/addressbook/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/addressbook/newaddresstab.cpp b/examples/itemviews/addressbook/newaddresstab.cpp index 3a720f6cb4..01edd24575 100644 --- a/examples/itemviews/addressbook/newaddresstab.cpp +++ b/examples/itemviews/addressbook/newaddresstab.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/addressbook/newaddresstab.h b/examples/itemviews/addressbook/newaddresstab.h index b849c9d62d..ad9afc25c2 100644 --- a/examples/itemviews/addressbook/newaddresstab.h +++ b/examples/itemviews/addressbook/newaddresstab.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/addressbook/tablemodel.cpp b/examples/itemviews/addressbook/tablemodel.cpp index 19612eb809..536d2a4b4e 100644 --- a/examples/itemviews/addressbook/tablemodel.cpp +++ b/examples/itemviews/addressbook/tablemodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/addressbook/tablemodel.h b/examples/itemviews/addressbook/tablemodel.h index 2c30056766..e398e5a3e0 100644 --- a/examples/itemviews/addressbook/tablemodel.h +++ b/examples/itemviews/addressbook/tablemodel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/basicsortfiltermodel/main.cpp b/examples/itemviews/basicsortfiltermodel/main.cpp index 8f8a2a7205..7fa67ac71d 100644 --- a/examples/itemviews/basicsortfiltermodel/main.cpp +++ b/examples/itemviews/basicsortfiltermodel/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/basicsortfiltermodel/window.cpp b/examples/itemviews/basicsortfiltermodel/window.cpp index 02d96667cd..c1d62b643c 100644 --- a/examples/itemviews/basicsortfiltermodel/window.cpp +++ b/examples/itemviews/basicsortfiltermodel/window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/basicsortfiltermodel/window.h b/examples/itemviews/basicsortfiltermodel/window.h index 92b5008384..9810d03edd 100644 --- a/examples/itemviews/basicsortfiltermodel/window.h +++ b/examples/itemviews/basicsortfiltermodel/window.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/chart/main.cpp b/examples/itemviews/chart/main.cpp index 936654097f..8d5f4ec909 100644 --- a/examples/itemviews/chart/main.cpp +++ b/examples/itemviews/chart/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/chart/mainwindow.cpp b/examples/itemviews/chart/mainwindow.cpp index b98057e2e3..84814dae12 100644 --- a/examples/itemviews/chart/mainwindow.cpp +++ b/examples/itemviews/chart/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/chart/mainwindow.h b/examples/itemviews/chart/mainwindow.h index 4d45f1e4be..c432bdbdd7 100644 --- a/examples/itemviews/chart/mainwindow.h +++ b/examples/itemviews/chart/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/chart/pieview.cpp b/examples/itemviews/chart/pieview.cpp index ff6306e9ea..04512f6d73 100644 --- a/examples/itemviews/chart/pieview.cpp +++ b/examples/itemviews/chart/pieview.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/chart/pieview.h b/examples/itemviews/chart/pieview.h index 7afb3e51e6..b0bc0d7993 100644 --- a/examples/itemviews/chart/pieview.h +++ b/examples/itemviews/chart/pieview.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/coloreditorfactory/colorlisteditor.cpp b/examples/itemviews/coloreditorfactory/colorlisteditor.cpp index ee540c603c..0b1631c858 100644 --- a/examples/itemviews/coloreditorfactory/colorlisteditor.cpp +++ b/examples/itemviews/coloreditorfactory/colorlisteditor.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/coloreditorfactory/colorlisteditor.h b/examples/itemviews/coloreditorfactory/colorlisteditor.h index 2fdc23bb5e..bf97dca412 100644 --- a/examples/itemviews/coloreditorfactory/colorlisteditor.h +++ b/examples/itemviews/coloreditorfactory/colorlisteditor.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/coloreditorfactory/main.cpp b/examples/itemviews/coloreditorfactory/main.cpp index bbb1d25933..e70150e37c 100644 --- a/examples/itemviews/coloreditorfactory/main.cpp +++ b/examples/itemviews/coloreditorfactory/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/coloreditorfactory/window.cpp b/examples/itemviews/coloreditorfactory/window.cpp index aa7e9377b5..194168ee0d 100644 --- a/examples/itemviews/coloreditorfactory/window.cpp +++ b/examples/itemviews/coloreditorfactory/window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/coloreditorfactory/window.h b/examples/itemviews/coloreditorfactory/window.h index 5aad0c21b9..53b06ba6e5 100644 --- a/examples/itemviews/coloreditorfactory/window.h +++ b/examples/itemviews/coloreditorfactory/window.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/combowidgetmapper/main.cpp b/examples/itemviews/combowidgetmapper/main.cpp index 41e756d8ad..3cbf4b5880 100644 --- a/examples/itemviews/combowidgetmapper/main.cpp +++ b/examples/itemviews/combowidgetmapper/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/combowidgetmapper/window.cpp b/examples/itemviews/combowidgetmapper/window.cpp index 8721a6a8e6..490b993e31 100644 --- a/examples/itemviews/combowidgetmapper/window.cpp +++ b/examples/itemviews/combowidgetmapper/window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/combowidgetmapper/window.h b/examples/itemviews/combowidgetmapper/window.h index e890ce0eda..5262566501 100644 --- a/examples/itemviews/combowidgetmapper/window.h +++ b/examples/itemviews/combowidgetmapper/window.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/customsortfiltermodel/main.cpp b/examples/itemviews/customsortfiltermodel/main.cpp index 34be2f682b..458198740c 100644 --- a/examples/itemviews/customsortfiltermodel/main.cpp +++ b/examples/itemviews/customsortfiltermodel/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/customsortfiltermodel/mysortfilterproxymodel.cpp b/examples/itemviews/customsortfiltermodel/mysortfilterproxymodel.cpp index 358546350c..99677e1ccd 100644 --- a/examples/itemviews/customsortfiltermodel/mysortfilterproxymodel.cpp +++ b/examples/itemviews/customsortfiltermodel/mysortfilterproxymodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/customsortfiltermodel/mysortfilterproxymodel.h b/examples/itemviews/customsortfiltermodel/mysortfilterproxymodel.h index 7ab7d590c2..8d081c0f6b 100644 --- a/examples/itemviews/customsortfiltermodel/mysortfilterproxymodel.h +++ b/examples/itemviews/customsortfiltermodel/mysortfilterproxymodel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/customsortfiltermodel/window.cpp b/examples/itemviews/customsortfiltermodel/window.cpp index 7b08491232..8e640c0bc8 100644 --- a/examples/itemviews/customsortfiltermodel/window.cpp +++ b/examples/itemviews/customsortfiltermodel/window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/customsortfiltermodel/window.h b/examples/itemviews/customsortfiltermodel/window.h index 15baffc2c6..6225d84d70 100644 --- a/examples/itemviews/customsortfiltermodel/window.h +++ b/examples/itemviews/customsortfiltermodel/window.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/dirview/main.cpp b/examples/itemviews/dirview/main.cpp index dbb5b7ae8c..b76eca5566 100644 --- a/examples/itemviews/dirview/main.cpp +++ b/examples/itemviews/dirview/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/editabletreemodel/main.cpp b/examples/itemviews/editabletreemodel/main.cpp index 5a2cc77465..ced44b979c 100644 --- a/examples/itemviews/editabletreemodel/main.cpp +++ b/examples/itemviews/editabletreemodel/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/editabletreemodel/mainwindow.cpp b/examples/itemviews/editabletreemodel/mainwindow.cpp index 3080684e4f..1754a29120 100644 --- a/examples/itemviews/editabletreemodel/mainwindow.cpp +++ b/examples/itemviews/editabletreemodel/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/editabletreemodel/mainwindow.h b/examples/itemviews/editabletreemodel/mainwindow.h index 3dc8291d26..6608f48251 100644 --- a/examples/itemviews/editabletreemodel/mainwindow.h +++ b/examples/itemviews/editabletreemodel/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/editabletreemodel/treeitem.cpp b/examples/itemviews/editabletreemodel/treeitem.cpp index 00446aa89b..34f3e881b8 100644 --- a/examples/itemviews/editabletreemodel/treeitem.cpp +++ b/examples/itemviews/editabletreemodel/treeitem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/editabletreemodel/treeitem.h b/examples/itemviews/editabletreemodel/treeitem.h index 7a54ce4f26..065c748332 100644 --- a/examples/itemviews/editabletreemodel/treeitem.h +++ b/examples/itemviews/editabletreemodel/treeitem.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/editabletreemodel/treemodel.cpp b/examples/itemviews/editabletreemodel/treemodel.cpp index 34168137fa..52e0b56c3f 100644 --- a/examples/itemviews/editabletreemodel/treemodel.cpp +++ b/examples/itemviews/editabletreemodel/treemodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/editabletreemodel/treemodel.h b/examples/itemviews/editabletreemodel/treemodel.h index 549a437012..9c7af52d06 100644 --- a/examples/itemviews/editabletreemodel/treemodel.h +++ b/examples/itemviews/editabletreemodel/treemodel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/fetchmore/filelistmodel.cpp b/examples/itemviews/fetchmore/filelistmodel.cpp index 727c658a3d..272742c27a 100644 --- a/examples/itemviews/fetchmore/filelistmodel.cpp +++ b/examples/itemviews/fetchmore/filelistmodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/fetchmore/filelistmodel.h b/examples/itemviews/fetchmore/filelistmodel.h index 9f0898eb8e..6cd2094f57 100644 --- a/examples/itemviews/fetchmore/filelistmodel.h +++ b/examples/itemviews/fetchmore/filelistmodel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/fetchmore/main.cpp b/examples/itemviews/fetchmore/main.cpp index aedfd9f8d3..027c8bd3d1 100644 --- a/examples/itemviews/fetchmore/main.cpp +++ b/examples/itemviews/fetchmore/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/fetchmore/window.cpp b/examples/itemviews/fetchmore/window.cpp index 676a4ae1a8..30c000edc9 100644 --- a/examples/itemviews/fetchmore/window.cpp +++ b/examples/itemviews/fetchmore/window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/fetchmore/window.h b/examples/itemviews/fetchmore/window.h index f726caedcf..5cbd6c3ea3 100644 --- a/examples/itemviews/fetchmore/window.h +++ b/examples/itemviews/fetchmore/window.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/frozencolumn/freezetablewidget.cpp b/examples/itemviews/frozencolumn/freezetablewidget.cpp index f76575a86d..2d2e16cd3b 100644 --- a/examples/itemviews/frozencolumn/freezetablewidget.cpp +++ b/examples/itemviews/frozencolumn/freezetablewidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/frozencolumn/freezetablewidget.h b/examples/itemviews/frozencolumn/freezetablewidget.h index 8ba8d17aa7..f9129898de 100644 --- a/examples/itemviews/frozencolumn/freezetablewidget.h +++ b/examples/itemviews/frozencolumn/freezetablewidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/frozencolumn/main.cpp b/examples/itemviews/frozencolumn/main.cpp index f6aa489d05..947387e20d 100644 --- a/examples/itemviews/frozencolumn/main.cpp +++ b/examples/itemviews/frozencolumn/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/interview/main.cpp b/examples/itemviews/interview/main.cpp index b9656c6185..83ea0ff1c8 100644 --- a/examples/itemviews/interview/main.cpp +++ b/examples/itemviews/interview/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/interview/model.cpp b/examples/itemviews/interview/model.cpp index 6031615711..03cd7de036 100644 --- a/examples/itemviews/interview/model.cpp +++ b/examples/itemviews/interview/model.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/interview/model.h b/examples/itemviews/interview/model.h index f0ae556ce3..2389346a67 100644 --- a/examples/itemviews/interview/model.h +++ b/examples/itemviews/interview/model.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/pixelator/imagemodel.cpp b/examples/itemviews/pixelator/imagemodel.cpp index d0e315978b..fdbe81cd02 100644 --- a/examples/itemviews/pixelator/imagemodel.cpp +++ b/examples/itemviews/pixelator/imagemodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/pixelator/imagemodel.h b/examples/itemviews/pixelator/imagemodel.h index 158f31dc0b..d71c0dafcb 100644 --- a/examples/itemviews/pixelator/imagemodel.h +++ b/examples/itemviews/pixelator/imagemodel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/pixelator/main.cpp b/examples/itemviews/pixelator/main.cpp index e7f45e3f42..89a7f9e665 100644 --- a/examples/itemviews/pixelator/main.cpp +++ b/examples/itemviews/pixelator/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/pixelator/mainwindow.cpp b/examples/itemviews/pixelator/mainwindow.cpp index 15bd60e1b4..2e77fb94bb 100644 --- a/examples/itemviews/pixelator/mainwindow.cpp +++ b/examples/itemviews/pixelator/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/pixelator/mainwindow.h b/examples/itemviews/pixelator/mainwindow.h index 5dc2a908db..78a294dcc9 100644 --- a/examples/itemviews/pixelator/mainwindow.h +++ b/examples/itemviews/pixelator/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/pixelator/pixeldelegate.cpp b/examples/itemviews/pixelator/pixeldelegate.cpp index 2260553cbb..e92be74927 100644 --- a/examples/itemviews/pixelator/pixeldelegate.cpp +++ b/examples/itemviews/pixelator/pixeldelegate.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/pixelator/pixeldelegate.h b/examples/itemviews/pixelator/pixeldelegate.h index 3ff73b53e5..9ba8c85c76 100644 --- a/examples/itemviews/pixelator/pixeldelegate.h +++ b/examples/itemviews/pixelator/pixeldelegate.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/puzzle/main.cpp b/examples/itemviews/puzzle/main.cpp index 60341948ab..52c332b5a9 100644 --- a/examples/itemviews/puzzle/main.cpp +++ b/examples/itemviews/puzzle/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/puzzle/mainwindow.cpp b/examples/itemviews/puzzle/mainwindow.cpp index 5142de1cb2..57b46fe266 100644 --- a/examples/itemviews/puzzle/mainwindow.cpp +++ b/examples/itemviews/puzzle/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/puzzle/mainwindow.h b/examples/itemviews/puzzle/mainwindow.h index e242adb173..a4b888d270 100644 --- a/examples/itemviews/puzzle/mainwindow.h +++ b/examples/itemviews/puzzle/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/puzzle/piecesmodel.cpp b/examples/itemviews/puzzle/piecesmodel.cpp index 4c53648210..ddb6c062cd 100644 --- a/examples/itemviews/puzzle/piecesmodel.cpp +++ b/examples/itemviews/puzzle/piecesmodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/puzzle/piecesmodel.h b/examples/itemviews/puzzle/piecesmodel.h index 40079fe1c1..5549a795d1 100644 --- a/examples/itemviews/puzzle/piecesmodel.h +++ b/examples/itemviews/puzzle/piecesmodel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/puzzle/puzzlewidget.cpp b/examples/itemviews/puzzle/puzzlewidget.cpp index 604c73d8f0..ee1ac78e29 100644 --- a/examples/itemviews/puzzle/puzzlewidget.cpp +++ b/examples/itemviews/puzzle/puzzlewidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/puzzle/puzzlewidget.h b/examples/itemviews/puzzle/puzzlewidget.h index 2cc789c292..496edbb1e0 100644 --- a/examples/itemviews/puzzle/puzzlewidget.h +++ b/examples/itemviews/puzzle/puzzlewidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/simpledommodel/domitem.cpp b/examples/itemviews/simpledommodel/domitem.cpp index ed266c71a1..56bae8e7c2 100644 --- a/examples/itemviews/simpledommodel/domitem.cpp +++ b/examples/itemviews/simpledommodel/domitem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/simpledommodel/domitem.h b/examples/itemviews/simpledommodel/domitem.h index 0348218d32..b0acb21667 100644 --- a/examples/itemviews/simpledommodel/domitem.h +++ b/examples/itemviews/simpledommodel/domitem.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/simpledommodel/dommodel.cpp b/examples/itemviews/simpledommodel/dommodel.cpp index 2a04f7a840..1593e1ec97 100644 --- a/examples/itemviews/simpledommodel/dommodel.cpp +++ b/examples/itemviews/simpledommodel/dommodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/simpledommodel/dommodel.h b/examples/itemviews/simpledommodel/dommodel.h index 0b91a115a6..f643c54aa5 100644 --- a/examples/itemviews/simpledommodel/dommodel.h +++ b/examples/itemviews/simpledommodel/dommodel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/simpledommodel/main.cpp b/examples/itemviews/simpledommodel/main.cpp index 74a14b0f8c..03cc08d21b 100644 --- a/examples/itemviews/simpledommodel/main.cpp +++ b/examples/itemviews/simpledommodel/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/simpledommodel/mainwindow.cpp b/examples/itemviews/simpledommodel/mainwindow.cpp index 11517c124b..237f7b27cc 100644 --- a/examples/itemviews/simpledommodel/mainwindow.cpp +++ b/examples/itemviews/simpledommodel/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/simpledommodel/mainwindow.h b/examples/itemviews/simpledommodel/mainwindow.h index 6a0e6e5239..eca751cfc4 100644 --- a/examples/itemviews/simpledommodel/mainwindow.h +++ b/examples/itemviews/simpledommodel/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/simpletreemodel/main.cpp b/examples/itemviews/simpletreemodel/main.cpp index 1cca36328f..338d5b4e19 100644 --- a/examples/itemviews/simpletreemodel/main.cpp +++ b/examples/itemviews/simpletreemodel/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/simpletreemodel/treeitem.cpp b/examples/itemviews/simpletreemodel/treeitem.cpp index ac310e8226..5ade6aa7fb 100644 --- a/examples/itemviews/simpletreemodel/treeitem.cpp +++ b/examples/itemviews/simpletreemodel/treeitem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/simpletreemodel/treeitem.h b/examples/itemviews/simpletreemodel/treeitem.h index a220a7d8bc..43fd66391b 100644 --- a/examples/itemviews/simpletreemodel/treeitem.h +++ b/examples/itemviews/simpletreemodel/treeitem.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/simpletreemodel/treemodel.cpp b/examples/itemviews/simpletreemodel/treemodel.cpp index de5b6f8d6e..3551958e10 100644 --- a/examples/itemviews/simpletreemodel/treemodel.cpp +++ b/examples/itemviews/simpletreemodel/treemodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/simpletreemodel/treemodel.h b/examples/itemviews/simpletreemodel/treemodel.h index 6d1adb6b17..12d349a87b 100644 --- a/examples/itemviews/simpletreemodel/treemodel.h +++ b/examples/itemviews/simpletreemodel/treemodel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/simplewidgetmapper/main.cpp b/examples/itemviews/simplewidgetmapper/main.cpp index 41e756d8ad..3cbf4b5880 100644 --- a/examples/itemviews/simplewidgetmapper/main.cpp +++ b/examples/itemviews/simplewidgetmapper/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/simplewidgetmapper/window.cpp b/examples/itemviews/simplewidgetmapper/window.cpp index c3331b689d..726c6f4a11 100644 --- a/examples/itemviews/simplewidgetmapper/window.cpp +++ b/examples/itemviews/simplewidgetmapper/window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/simplewidgetmapper/window.h b/examples/itemviews/simplewidgetmapper/window.h index 57d191e144..f993ee9008 100644 --- a/examples/itemviews/simplewidgetmapper/window.h +++ b/examples/itemviews/simplewidgetmapper/window.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/spinboxdelegate/delegate.cpp b/examples/itemviews/spinboxdelegate/delegate.cpp index ecc4f3eb3b..8a689211e7 100644 --- a/examples/itemviews/spinboxdelegate/delegate.cpp +++ b/examples/itemviews/spinboxdelegate/delegate.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/spinboxdelegate/delegate.h b/examples/itemviews/spinboxdelegate/delegate.h index c7b2e7f156..772b69f1c3 100644 --- a/examples/itemviews/spinboxdelegate/delegate.h +++ b/examples/itemviews/spinboxdelegate/delegate.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/spinboxdelegate/main.cpp b/examples/itemviews/spinboxdelegate/main.cpp index e078d7f2df..1ef5bcb1d6 100644 --- a/examples/itemviews/spinboxdelegate/main.cpp +++ b/examples/itemviews/spinboxdelegate/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/spreadsheet/main.cpp b/examples/itemviews/spreadsheet/main.cpp index 19bb379124..ea94d89f45 100644 --- a/examples/itemviews/spreadsheet/main.cpp +++ b/examples/itemviews/spreadsheet/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/spreadsheet/printview.cpp b/examples/itemviews/spreadsheet/printview.cpp index 0962e28844..501ef85509 100644 --- a/examples/itemviews/spreadsheet/printview.cpp +++ b/examples/itemviews/spreadsheet/printview.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/spreadsheet/printview.h b/examples/itemviews/spreadsheet/printview.h index 358aee008a..641d6fd0c2 100644 --- a/examples/itemviews/spreadsheet/printview.h +++ b/examples/itemviews/spreadsheet/printview.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/spreadsheet/spreadsheet.cpp b/examples/itemviews/spreadsheet/spreadsheet.cpp index d3e57a5f4f..f18f654345 100644 --- a/examples/itemviews/spreadsheet/spreadsheet.cpp +++ b/examples/itemviews/spreadsheet/spreadsheet.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/spreadsheet/spreadsheet.h b/examples/itemviews/spreadsheet/spreadsheet.h index 386a469c99..8877db98d4 100644 --- a/examples/itemviews/spreadsheet/spreadsheet.h +++ b/examples/itemviews/spreadsheet/spreadsheet.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/spreadsheet/spreadsheetdelegate.cpp b/examples/itemviews/spreadsheet/spreadsheetdelegate.cpp index 59f340ae3d..902f66af51 100644 --- a/examples/itemviews/spreadsheet/spreadsheetdelegate.cpp +++ b/examples/itemviews/spreadsheet/spreadsheetdelegate.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/spreadsheet/spreadsheetdelegate.h b/examples/itemviews/spreadsheet/spreadsheetdelegate.h index 7987f35499..9d8b28637a 100644 --- a/examples/itemviews/spreadsheet/spreadsheetdelegate.h +++ b/examples/itemviews/spreadsheet/spreadsheetdelegate.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/spreadsheet/spreadsheetitem.cpp b/examples/itemviews/spreadsheet/spreadsheetitem.cpp index 74a1967a8a..0429f9da35 100644 --- a/examples/itemviews/spreadsheet/spreadsheetitem.cpp +++ b/examples/itemviews/spreadsheet/spreadsheetitem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/spreadsheet/spreadsheetitem.h b/examples/itemviews/spreadsheet/spreadsheetitem.h index c7764ea1de..cc36f69841 100644 --- a/examples/itemviews/spreadsheet/spreadsheetitem.h +++ b/examples/itemviews/spreadsheet/spreadsheetitem.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/stardelegate/main.cpp b/examples/itemviews/stardelegate/main.cpp index 78245d005b..838cf0ff5d 100644 --- a/examples/itemviews/stardelegate/main.cpp +++ b/examples/itemviews/stardelegate/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/stardelegate/stardelegate.cpp b/examples/itemviews/stardelegate/stardelegate.cpp index 687ae0da2d..16d43aa87f 100644 --- a/examples/itemviews/stardelegate/stardelegate.cpp +++ b/examples/itemviews/stardelegate/stardelegate.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/stardelegate/stardelegate.h b/examples/itemviews/stardelegate/stardelegate.h index 0e2a946c28..37118f870f 100644 --- a/examples/itemviews/stardelegate/stardelegate.h +++ b/examples/itemviews/stardelegate/stardelegate.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/stardelegate/stareditor.cpp b/examples/itemviews/stardelegate/stareditor.cpp index 6a9092c058..46ebe93425 100644 --- a/examples/itemviews/stardelegate/stareditor.cpp +++ b/examples/itemviews/stardelegate/stareditor.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/stardelegate/stareditor.h b/examples/itemviews/stardelegate/stareditor.h index 9dfc503124..a0bf1d1839 100644 --- a/examples/itemviews/stardelegate/stareditor.h +++ b/examples/itemviews/stardelegate/stareditor.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/stardelegate/starrating.cpp b/examples/itemviews/stardelegate/starrating.cpp index c77a40b323..7ac80f32d4 100644 --- a/examples/itemviews/stardelegate/starrating.cpp +++ b/examples/itemviews/stardelegate/starrating.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/itemviews/stardelegate/starrating.h b/examples/itemviews/stardelegate/starrating.h index 68b747b94c..f685b77db4 100644 --- a/examples/itemviews/stardelegate/starrating.h +++ b/examples/itemviews/stardelegate/starrating.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/ja_JP/linguist/hellotr/main.cpp b/examples/ja_JP/linguist/hellotr/main.cpp index 517cb7b202..393087ebf9 100644 --- a/examples/ja_JP/linguist/hellotr/main.cpp +++ b/examples/ja_JP/linguist/hellotr/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/layouts/basiclayouts/dialog.cpp b/examples/layouts/basiclayouts/dialog.cpp index 91ae01cb0d..3814efe9f8 100644 --- a/examples/layouts/basiclayouts/dialog.cpp +++ b/examples/layouts/basiclayouts/dialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/layouts/basiclayouts/dialog.h b/examples/layouts/basiclayouts/dialog.h index 340740630b..9f45ba6721 100644 --- a/examples/layouts/basiclayouts/dialog.h +++ b/examples/layouts/basiclayouts/dialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/layouts/basiclayouts/main.cpp b/examples/layouts/basiclayouts/main.cpp index 767cf0f168..30de9c1f58 100644 --- a/examples/layouts/basiclayouts/main.cpp +++ b/examples/layouts/basiclayouts/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/layouts/borderlayout/borderlayout.cpp b/examples/layouts/borderlayout/borderlayout.cpp index c83ce0e476..e8cee5b9bb 100644 --- a/examples/layouts/borderlayout/borderlayout.cpp +++ b/examples/layouts/borderlayout/borderlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/layouts/borderlayout/borderlayout.h b/examples/layouts/borderlayout/borderlayout.h index d59c33a38b..ba6e868734 100644 --- a/examples/layouts/borderlayout/borderlayout.h +++ b/examples/layouts/borderlayout/borderlayout.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/layouts/borderlayout/main.cpp b/examples/layouts/borderlayout/main.cpp index f2079f511b..218d30316c 100644 --- a/examples/layouts/borderlayout/main.cpp +++ b/examples/layouts/borderlayout/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/layouts/borderlayout/window.cpp b/examples/layouts/borderlayout/window.cpp index 7501a7296c..40e20b425f 100644 --- a/examples/layouts/borderlayout/window.cpp +++ b/examples/layouts/borderlayout/window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/layouts/borderlayout/window.h b/examples/layouts/borderlayout/window.h index 598bc0a3f7..cd4ca9bbbe 100644 --- a/examples/layouts/borderlayout/window.h +++ b/examples/layouts/borderlayout/window.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/layouts/dynamiclayouts/dialog.cpp b/examples/layouts/dynamiclayouts/dialog.cpp index 6e4f1efebc..4ee125d624 100644 --- a/examples/layouts/dynamiclayouts/dialog.cpp +++ b/examples/layouts/dynamiclayouts/dialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/layouts/dynamiclayouts/dialog.h b/examples/layouts/dynamiclayouts/dialog.h index f40d160363..9c9a0f64ad 100644 --- a/examples/layouts/dynamiclayouts/dialog.h +++ b/examples/layouts/dynamiclayouts/dialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/layouts/dynamiclayouts/main.cpp b/examples/layouts/dynamiclayouts/main.cpp index 03ac9ad84c..397075ff3b 100644 --- a/examples/layouts/dynamiclayouts/main.cpp +++ b/examples/layouts/dynamiclayouts/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/layouts/flowlayout/flowlayout.cpp b/examples/layouts/flowlayout/flowlayout.cpp index ddca09b71b..54f3a29a44 100644 --- a/examples/layouts/flowlayout/flowlayout.cpp +++ b/examples/layouts/flowlayout/flowlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/layouts/flowlayout/flowlayout.h b/examples/layouts/flowlayout/flowlayout.h index b54fc67b71..e30f9f1235 100644 --- a/examples/layouts/flowlayout/flowlayout.h +++ b/examples/layouts/flowlayout/flowlayout.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/layouts/flowlayout/main.cpp b/examples/layouts/flowlayout/main.cpp index f2079f511b..218d30316c 100644 --- a/examples/layouts/flowlayout/main.cpp +++ b/examples/layouts/flowlayout/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/layouts/flowlayout/window.cpp b/examples/layouts/flowlayout/window.cpp index 50782b9822..1d4521d934 100644 --- a/examples/layouts/flowlayout/window.cpp +++ b/examples/layouts/flowlayout/window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/layouts/flowlayout/window.h b/examples/layouts/flowlayout/window.h index 4b57f47be3..b7b650fb7b 100644 --- a/examples/layouts/flowlayout/window.h +++ b/examples/layouts/flowlayout/window.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/linguist/arrowpad/arrowpad.cpp b/examples/linguist/arrowpad/arrowpad.cpp index 12e41474bf..c742c5cdc0 100644 --- a/examples/linguist/arrowpad/arrowpad.cpp +++ b/examples/linguist/arrowpad/arrowpad.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/linguist/arrowpad/arrowpad.h b/examples/linguist/arrowpad/arrowpad.h index f0c77dbf70..1418c89039 100644 --- a/examples/linguist/arrowpad/arrowpad.h +++ b/examples/linguist/arrowpad/arrowpad.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/linguist/arrowpad/main.cpp b/examples/linguist/arrowpad/main.cpp index 23f62b2ebf..8ca629a914 100644 --- a/examples/linguist/arrowpad/main.cpp +++ b/examples/linguist/arrowpad/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/linguist/arrowpad/mainwindow.cpp b/examples/linguist/arrowpad/mainwindow.cpp index 9e141904cd..e33687b5c9 100644 --- a/examples/linguist/arrowpad/mainwindow.cpp +++ b/examples/linguist/arrowpad/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/linguist/arrowpad/mainwindow.h b/examples/linguist/arrowpad/mainwindow.h index 3908c335b9..ad3c9c6039 100644 --- a/examples/linguist/arrowpad/mainwindow.h +++ b/examples/linguist/arrowpad/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/linguist/hellotr/main.cpp b/examples/linguist/hellotr/main.cpp index 5d3e4d75a4..e9cfda8bcc 100644 --- a/examples/linguist/hellotr/main.cpp +++ b/examples/linguist/hellotr/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/linguist/trollprint/main.cpp b/examples/linguist/trollprint/main.cpp index b2f2131927..231e32c65d 100644 --- a/examples/linguist/trollprint/main.cpp +++ b/examples/linguist/trollprint/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/linguist/trollprint/mainwindow.cpp b/examples/linguist/trollprint/mainwindow.cpp index 337b7aa8c4..f33d16bfaf 100644 --- a/examples/linguist/trollprint/mainwindow.cpp +++ b/examples/linguist/trollprint/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/linguist/trollprint/mainwindow.h b/examples/linguist/trollprint/mainwindow.h index 8febe1eb4c..42432baf66 100644 --- a/examples/linguist/trollprint/mainwindow.h +++ b/examples/linguist/trollprint/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/linguist/trollprint/printpanel.cpp b/examples/linguist/trollprint/printpanel.cpp index 74ddc18b59..8ec0931ed8 100644 --- a/examples/linguist/trollprint/printpanel.cpp +++ b/examples/linguist/trollprint/printpanel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/linguist/trollprint/printpanel.h b/examples/linguist/trollprint/printpanel.h index 45073199e5..2dfe44617b 100644 --- a/examples/linguist/trollprint/printpanel.h +++ b/examples/linguist/trollprint/printpanel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/mainwindows/application/main.cpp b/examples/mainwindows/application/main.cpp index 9a9dc9ca76..ac90a5481b 100644 --- a/examples/mainwindows/application/main.cpp +++ b/examples/mainwindows/application/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/mainwindows/application/mainwindow.cpp b/examples/mainwindows/application/mainwindow.cpp index fd8fa97e68..6478146d26 100644 --- a/examples/mainwindows/application/mainwindow.cpp +++ b/examples/mainwindows/application/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/mainwindows/application/mainwindow.h b/examples/mainwindows/application/mainwindow.h index 9d40d30026..d7527f92f2 100644 --- a/examples/mainwindows/application/mainwindow.h +++ b/examples/mainwindows/application/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/mainwindows/dockwidgets/main.cpp b/examples/mainwindows/dockwidgets/main.cpp index 5c846a4dad..4edb870237 100644 --- a/examples/mainwindows/dockwidgets/main.cpp +++ b/examples/mainwindows/dockwidgets/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/mainwindows/dockwidgets/mainwindow.cpp b/examples/mainwindows/dockwidgets/mainwindow.cpp index 8ac897455f..f55e29a27a 100644 --- a/examples/mainwindows/dockwidgets/mainwindow.cpp +++ b/examples/mainwindows/dockwidgets/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/mainwindows/dockwidgets/mainwindow.h b/examples/mainwindows/dockwidgets/mainwindow.h index 6ac8ff3883..b39dee2d8c 100644 --- a/examples/mainwindows/dockwidgets/mainwindow.h +++ b/examples/mainwindows/dockwidgets/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/mainwindows/macmainwindow/macmainwindow.h b/examples/mainwindows/macmainwindow/macmainwindow.h index 6be34654ab..14d3d6484c 100644 --- a/examples/mainwindows/macmainwindow/macmainwindow.h +++ b/examples/mainwindows/macmainwindow/macmainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/mainwindows/macmainwindow/macmainwindow.mm b/examples/mainwindows/macmainwindow/macmainwindow.mm index 4ad0134ec7..db212aa3ee 100644 --- a/examples/mainwindows/macmainwindow/macmainwindow.mm +++ b/examples/mainwindows/macmainwindow/macmainwindow.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/mainwindows/macmainwindow/main.cpp b/examples/mainwindows/macmainwindow/main.cpp index c984d80397..9b3c721d05 100644 --- a/examples/mainwindows/macmainwindow/main.cpp +++ b/examples/mainwindows/macmainwindow/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/mainwindows/mainwindow/colorswatch.cpp b/examples/mainwindows/mainwindow/colorswatch.cpp index dd16fddbe7..db0f5dab45 100644 --- a/examples/mainwindows/mainwindow/colorswatch.cpp +++ b/examples/mainwindows/mainwindow/colorswatch.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/mainwindows/mainwindow/colorswatch.h b/examples/mainwindows/mainwindow/colorswatch.h index 555f1c6cd4..7596446ae5 100644 --- a/examples/mainwindows/mainwindow/colorswatch.h +++ b/examples/mainwindows/mainwindow/colorswatch.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/mainwindows/mainwindow/main.cpp b/examples/mainwindows/mainwindow/main.cpp index 71cff13cb8..de58a59310 100644 --- a/examples/mainwindows/mainwindow/main.cpp +++ b/examples/mainwindows/mainwindow/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/mainwindows/mainwindow/mainwindow.cpp b/examples/mainwindows/mainwindow/mainwindow.cpp index 15ee5bd927..7a8dd22c7c 100644 --- a/examples/mainwindows/mainwindow/mainwindow.cpp +++ b/examples/mainwindows/mainwindow/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/mainwindows/mainwindow/mainwindow.h b/examples/mainwindows/mainwindow/mainwindow.h index aa01ffa131..25d1e198ae 100644 --- a/examples/mainwindows/mainwindow/mainwindow.h +++ b/examples/mainwindows/mainwindow/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/mainwindows/mainwindow/toolbar.cpp b/examples/mainwindows/mainwindow/toolbar.cpp index 1176ee5480..25a1468bc1 100644 --- a/examples/mainwindows/mainwindow/toolbar.cpp +++ b/examples/mainwindows/mainwindow/toolbar.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/mainwindows/mainwindow/toolbar.h b/examples/mainwindows/mainwindow/toolbar.h index 5b982ee73b..83429d4b3f 100644 --- a/examples/mainwindows/mainwindow/toolbar.h +++ b/examples/mainwindows/mainwindow/toolbar.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/mainwindows/mdi/main.cpp b/examples/mainwindows/mdi/main.cpp index 1a10a19619..ae1b9ebc19 100644 --- a/examples/mainwindows/mdi/main.cpp +++ b/examples/mainwindows/mdi/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/mainwindows/mdi/mainwindow.cpp b/examples/mainwindows/mdi/mainwindow.cpp index 816c8094da..84e2eee3ac 100644 --- a/examples/mainwindows/mdi/mainwindow.cpp +++ b/examples/mainwindows/mdi/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/mainwindows/mdi/mainwindow.h b/examples/mainwindows/mdi/mainwindow.h index 906dee9bca..0dcff1c9f9 100644 --- a/examples/mainwindows/mdi/mainwindow.h +++ b/examples/mainwindows/mdi/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/mainwindows/mdi/mdichild.cpp b/examples/mainwindows/mdi/mdichild.cpp index 0b55ee5223..bfa0c4777f 100644 --- a/examples/mainwindows/mdi/mdichild.cpp +++ b/examples/mainwindows/mdi/mdichild.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/mainwindows/mdi/mdichild.h b/examples/mainwindows/mdi/mdichild.h index e136d7f9ae..9fc99da918 100644 --- a/examples/mainwindows/mdi/mdichild.h +++ b/examples/mainwindows/mdi/mdichild.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/mainwindows/menus/main.cpp b/examples/mainwindows/menus/main.cpp index 01c8adae53..bfe61dcd01 100644 --- a/examples/mainwindows/menus/main.cpp +++ b/examples/mainwindows/menus/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/mainwindows/menus/mainwindow.cpp b/examples/mainwindows/menus/mainwindow.cpp index 2a1c3da71d..65d020de0b 100644 --- a/examples/mainwindows/menus/mainwindow.cpp +++ b/examples/mainwindows/menus/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/mainwindows/menus/mainwindow.h b/examples/mainwindows/menus/mainwindow.h index 58b33fa257..8230f2e814 100644 --- a/examples/mainwindows/menus/mainwindow.h +++ b/examples/mainwindows/menus/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/mainwindows/recentfiles/main.cpp b/examples/mainwindows/recentfiles/main.cpp index 3bbf0137c1..bf1c4c1303 100644 --- a/examples/mainwindows/recentfiles/main.cpp +++ b/examples/mainwindows/recentfiles/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/mainwindows/recentfiles/mainwindow.cpp b/examples/mainwindows/recentfiles/mainwindow.cpp index 4a8011d64a..71523d425f 100644 --- a/examples/mainwindows/recentfiles/mainwindow.cpp +++ b/examples/mainwindows/recentfiles/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/mainwindows/recentfiles/mainwindow.h b/examples/mainwindows/recentfiles/mainwindow.h index 8c41502bf1..07b106fa96 100644 --- a/examples/mainwindows/recentfiles/mainwindow.h +++ b/examples/mainwindows/recentfiles/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/mainwindows/sdi/main.cpp b/examples/mainwindows/sdi/main.cpp index 0fb8a0388d..319c9b91fb 100644 --- a/examples/mainwindows/sdi/main.cpp +++ b/examples/mainwindows/sdi/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/mainwindows/sdi/mainwindow.cpp b/examples/mainwindows/sdi/mainwindow.cpp index 7ae426d68c..676e84d5ab 100644 --- a/examples/mainwindows/sdi/mainwindow.cpp +++ b/examples/mainwindows/sdi/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/mainwindows/sdi/mainwindow.h b/examples/mainwindows/sdi/mainwindow.h index c8ca63f38b..b08c5dd806 100644 --- a/examples/mainwindows/sdi/mainwindow.h +++ b/examples/mainwindows/sdi/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/bearermonitor/bearermonitor.cpp b/examples/network/bearermonitor/bearermonitor.cpp index a543c937c6..d0d406da5e 100644 --- a/examples/network/bearermonitor/bearermonitor.cpp +++ b/examples/network/bearermonitor/bearermonitor.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/bearermonitor/bearermonitor.h b/examples/network/bearermonitor/bearermonitor.h index c4199d6230..41672344c7 100644 --- a/examples/network/bearermonitor/bearermonitor.h +++ b/examples/network/bearermonitor/bearermonitor.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/bearermonitor/main.cpp b/examples/network/bearermonitor/main.cpp index cc6d918ee7..eb07302433 100644 --- a/examples/network/bearermonitor/main.cpp +++ b/examples/network/bearermonitor/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/bearermonitor/sessionwidget.cpp b/examples/network/bearermonitor/sessionwidget.cpp index eed3660ca0..c827e393b1 100644 --- a/examples/network/bearermonitor/sessionwidget.cpp +++ b/examples/network/bearermonitor/sessionwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/bearermonitor/sessionwidget.h b/examples/network/bearermonitor/sessionwidget.h index 4b14993082..21488ab0a6 100644 --- a/examples/network/bearermonitor/sessionwidget.h +++ b/examples/network/bearermonitor/sessionwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/blockingfortuneclient/blockingclient.cpp b/examples/network/blockingfortuneclient/blockingclient.cpp index 8867e25678..2961f79498 100644 --- a/examples/network/blockingfortuneclient/blockingclient.cpp +++ b/examples/network/blockingfortuneclient/blockingclient.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/blockingfortuneclient/blockingclient.h b/examples/network/blockingfortuneclient/blockingclient.h index 99b97f13c5..ba564d9311 100644 --- a/examples/network/blockingfortuneclient/blockingclient.h +++ b/examples/network/blockingfortuneclient/blockingclient.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/blockingfortuneclient/fortunethread.cpp b/examples/network/blockingfortuneclient/fortunethread.cpp index ad3688bc5a..41b1a9187a 100644 --- a/examples/network/blockingfortuneclient/fortunethread.cpp +++ b/examples/network/blockingfortuneclient/fortunethread.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/blockingfortuneclient/fortunethread.h b/examples/network/blockingfortuneclient/fortunethread.h index 3f4ca25c86..3e426fa7bb 100644 --- a/examples/network/blockingfortuneclient/fortunethread.h +++ b/examples/network/blockingfortuneclient/fortunethread.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/blockingfortuneclient/main.cpp b/examples/network/blockingfortuneclient/main.cpp index b67464089b..d2eaf7a05a 100644 --- a/examples/network/blockingfortuneclient/main.cpp +++ b/examples/network/blockingfortuneclient/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/broadcastreceiver/main.cpp b/examples/network/broadcastreceiver/main.cpp index 748f4b5de1..7b451e0192 100644 --- a/examples/network/broadcastreceiver/main.cpp +++ b/examples/network/broadcastreceiver/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/broadcastreceiver/receiver.cpp b/examples/network/broadcastreceiver/receiver.cpp index 6a49046c91..e9dec57452 100644 --- a/examples/network/broadcastreceiver/receiver.cpp +++ b/examples/network/broadcastreceiver/receiver.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/broadcastreceiver/receiver.h b/examples/network/broadcastreceiver/receiver.h index 7a282d2253..a415c83cda 100644 --- a/examples/network/broadcastreceiver/receiver.h +++ b/examples/network/broadcastreceiver/receiver.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/broadcastsender/main.cpp b/examples/network/broadcastsender/main.cpp index 7c70255aec..e610902975 100644 --- a/examples/network/broadcastsender/main.cpp +++ b/examples/network/broadcastsender/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/broadcastsender/sender.cpp b/examples/network/broadcastsender/sender.cpp index 33b34a4a4c..9ddca66604 100644 --- a/examples/network/broadcastsender/sender.cpp +++ b/examples/network/broadcastsender/sender.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/broadcastsender/sender.h b/examples/network/broadcastsender/sender.h index 666269f38e..55bc7f2672 100644 --- a/examples/network/broadcastsender/sender.h +++ b/examples/network/broadcastsender/sender.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/download/main.cpp b/examples/network/download/main.cpp index 1b7e54ba11..22d3b1db13 100644 --- a/examples/network/download/main.cpp +++ b/examples/network/download/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/downloadmanager/downloadmanager.cpp b/examples/network/downloadmanager/downloadmanager.cpp index d58ffdf99d..30f982e42e 100644 --- a/examples/network/downloadmanager/downloadmanager.cpp +++ b/examples/network/downloadmanager/downloadmanager.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/downloadmanager/downloadmanager.h b/examples/network/downloadmanager/downloadmanager.h index 98e72b0f4c..389982835e 100644 --- a/examples/network/downloadmanager/downloadmanager.h +++ b/examples/network/downloadmanager/downloadmanager.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/downloadmanager/main.cpp b/examples/network/downloadmanager/main.cpp index ed738472f7..cb1c015b84 100644 --- a/examples/network/downloadmanager/main.cpp +++ b/examples/network/downloadmanager/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/downloadmanager/textprogressbar.cpp b/examples/network/downloadmanager/textprogressbar.cpp index 0303752b4b..cb986bd489 100644 --- a/examples/network/downloadmanager/textprogressbar.cpp +++ b/examples/network/downloadmanager/textprogressbar.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/downloadmanager/textprogressbar.h b/examples/network/downloadmanager/textprogressbar.h index 3d2be5565a..d42c357419 100644 --- a/examples/network/downloadmanager/textprogressbar.h +++ b/examples/network/downloadmanager/textprogressbar.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/fortuneclient/client.cpp b/examples/network/fortuneclient/client.cpp index 27443659df..1c5f1acf81 100644 --- a/examples/network/fortuneclient/client.cpp +++ b/examples/network/fortuneclient/client.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/fortuneclient/client.h b/examples/network/fortuneclient/client.h index f4a76c4dc2..1573580dda 100644 --- a/examples/network/fortuneclient/client.h +++ b/examples/network/fortuneclient/client.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/fortuneclient/main.cpp b/examples/network/fortuneclient/main.cpp index f6c459ee90..3678daece8 100644 --- a/examples/network/fortuneclient/main.cpp +++ b/examples/network/fortuneclient/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/fortuneserver/main.cpp b/examples/network/fortuneserver/main.cpp index 6c0e9ee9f3..77e3efa009 100644 --- a/examples/network/fortuneserver/main.cpp +++ b/examples/network/fortuneserver/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/fortuneserver/server.cpp b/examples/network/fortuneserver/server.cpp index 9ce6b650e0..e73c97b149 100644 --- a/examples/network/fortuneserver/server.cpp +++ b/examples/network/fortuneserver/server.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/fortuneserver/server.h b/examples/network/fortuneserver/server.h index a04dfa9e71..68402cad42 100644 --- a/examples/network/fortuneserver/server.h +++ b/examples/network/fortuneserver/server.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/googlesuggest/googlesuggest.cpp b/examples/network/googlesuggest/googlesuggest.cpp index ed9ff6a20e..ad8c94353d 100644 --- a/examples/network/googlesuggest/googlesuggest.cpp +++ b/examples/network/googlesuggest/googlesuggest.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/googlesuggest/googlesuggest.h b/examples/network/googlesuggest/googlesuggest.h index 6b4abff5d9..b5787c8adc 100644 --- a/examples/network/googlesuggest/googlesuggest.h +++ b/examples/network/googlesuggest/googlesuggest.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/googlesuggest/main.cpp b/examples/network/googlesuggest/main.cpp index f20e8f6c0e..2f51df138b 100644 --- a/examples/network/googlesuggest/main.cpp +++ b/examples/network/googlesuggest/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/googlesuggest/searchbox.cpp b/examples/network/googlesuggest/searchbox.cpp index cf22fd1369..00960d488e 100644 --- a/examples/network/googlesuggest/searchbox.cpp +++ b/examples/network/googlesuggest/searchbox.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/googlesuggest/searchbox.h b/examples/network/googlesuggest/searchbox.h index 5ffcbc8614..30dfae1c79 100644 --- a/examples/network/googlesuggest/searchbox.h +++ b/examples/network/googlesuggest/searchbox.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/http/httpwindow.cpp b/examples/network/http/httpwindow.cpp index 082dc910ca..15492daff4 100644 --- a/examples/network/http/httpwindow.cpp +++ b/examples/network/http/httpwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/http/httpwindow.h b/examples/network/http/httpwindow.h index 0ec87af48a..01d7ca1cd2 100644 --- a/examples/network/http/httpwindow.h +++ b/examples/network/http/httpwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/http/main.cpp b/examples/network/http/main.cpp index ae20f6f41c..e66d2ea1fa 100644 --- a/examples/network/http/main.cpp +++ b/examples/network/http/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/loopback/dialog.cpp b/examples/network/loopback/dialog.cpp index 34fc999dcc..b7d970b5ef 100644 --- a/examples/network/loopback/dialog.cpp +++ b/examples/network/loopback/dialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/loopback/dialog.h b/examples/network/loopback/dialog.h index 8261b2279a..0b55f7cd42 100644 --- a/examples/network/loopback/dialog.h +++ b/examples/network/loopback/dialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/loopback/main.cpp b/examples/network/loopback/main.cpp index 03ac9ad84c..397075ff3b 100644 --- a/examples/network/loopback/main.cpp +++ b/examples/network/loopback/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/multicastreceiver/main.cpp b/examples/network/multicastreceiver/main.cpp index 041163178d..b14e222950 100644 --- a/examples/network/multicastreceiver/main.cpp +++ b/examples/network/multicastreceiver/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/multicastreceiver/receiver.cpp b/examples/network/multicastreceiver/receiver.cpp index 8db3042a4e..767aef52c2 100644 --- a/examples/network/multicastreceiver/receiver.cpp +++ b/examples/network/multicastreceiver/receiver.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/multicastreceiver/receiver.h b/examples/network/multicastreceiver/receiver.h index fd1a67377f..9a5796cd38 100644 --- a/examples/network/multicastreceiver/receiver.h +++ b/examples/network/multicastreceiver/receiver.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/multicastsender/main.cpp b/examples/network/multicastsender/main.cpp index 56e35c9540..163dfcb655 100644 --- a/examples/network/multicastsender/main.cpp +++ b/examples/network/multicastsender/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/multicastsender/sender.cpp b/examples/network/multicastsender/sender.cpp index 6172f07063..842f97579b 100644 --- a/examples/network/multicastsender/sender.cpp +++ b/examples/network/multicastsender/sender.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/multicastsender/sender.h b/examples/network/multicastsender/sender.h index 75ce4c93ea..ebcbdd3bd3 100644 --- a/examples/network/multicastsender/sender.h +++ b/examples/network/multicastsender/sender.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/network-chat/chatdialog.cpp b/examples/network/network-chat/chatdialog.cpp index 9ad042e05f..732f43626a 100644 --- a/examples/network/network-chat/chatdialog.cpp +++ b/examples/network/network-chat/chatdialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/network-chat/chatdialog.h b/examples/network/network-chat/chatdialog.h index 258206a905..2007acac2c 100644 --- a/examples/network/network-chat/chatdialog.h +++ b/examples/network/network-chat/chatdialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/network-chat/client.cpp b/examples/network/network-chat/client.cpp index d9f594e8ac..f80b3783ef 100644 --- a/examples/network/network-chat/client.cpp +++ b/examples/network/network-chat/client.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/network-chat/client.h b/examples/network/network-chat/client.h index 317fef36a8..9227b894a8 100644 --- a/examples/network/network-chat/client.h +++ b/examples/network/network-chat/client.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/network-chat/connection.cpp b/examples/network/network-chat/connection.cpp index 9171d1fc5f..e02186fb85 100644 --- a/examples/network/network-chat/connection.cpp +++ b/examples/network/network-chat/connection.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/network-chat/connection.h b/examples/network/network-chat/connection.h index 5db5cc59e8..126ad53674 100644 --- a/examples/network/network-chat/connection.h +++ b/examples/network/network-chat/connection.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/network-chat/main.cpp b/examples/network/network-chat/main.cpp index 94a4dacae8..05afc004da 100644 --- a/examples/network/network-chat/main.cpp +++ b/examples/network/network-chat/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/network-chat/peermanager.cpp b/examples/network/network-chat/peermanager.cpp index a0374e7e7e..d774ce4158 100644 --- a/examples/network/network-chat/peermanager.cpp +++ b/examples/network/network-chat/peermanager.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/network-chat/peermanager.h b/examples/network/network-chat/peermanager.h index a061bbbb53..b100d19652 100644 --- a/examples/network/network-chat/peermanager.h +++ b/examples/network/network-chat/peermanager.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/network-chat/server.cpp b/examples/network/network-chat/server.cpp index 4a3a28298a..5f545d3819 100644 --- a/examples/network/network-chat/server.cpp +++ b/examples/network/network-chat/server.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/network-chat/server.h b/examples/network/network-chat/server.h index 0d88c873da..feb57dc392 100644 --- a/examples/network/network-chat/server.h +++ b/examples/network/network-chat/server.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/qftp/ftpwindow.cpp b/examples/network/qftp/ftpwindow.cpp index ba568d6ec0..26a934ea9f 100644 --- a/examples/network/qftp/ftpwindow.cpp +++ b/examples/network/qftp/ftpwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/qftp/ftpwindow.h b/examples/network/qftp/ftpwindow.h index f060bfc0ce..83ebf8eb98 100644 --- a/examples/network/qftp/ftpwindow.h +++ b/examples/network/qftp/ftpwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/qftp/main.cpp b/examples/network/qftp/main.cpp index 15689b5a55..8330052b3e 100644 --- a/examples/network/qftp/main.cpp +++ b/examples/network/qftp/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/securesocketclient/certificateinfo.cpp b/examples/network/securesocketclient/certificateinfo.cpp index 9c9ffdeb4c..a3976dac16 100644 --- a/examples/network/securesocketclient/certificateinfo.cpp +++ b/examples/network/securesocketclient/certificateinfo.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/securesocketclient/certificateinfo.h b/examples/network/securesocketclient/certificateinfo.h index cc5cc34e8a..3c54e2c229 100644 --- a/examples/network/securesocketclient/certificateinfo.h +++ b/examples/network/securesocketclient/certificateinfo.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/securesocketclient/main.cpp b/examples/network/securesocketclient/main.cpp index c15534b523..349752d0ce 100644 --- a/examples/network/securesocketclient/main.cpp +++ b/examples/network/securesocketclient/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/securesocketclient/sslclient.cpp b/examples/network/securesocketclient/sslclient.cpp index 8d862c4c56..8527337e1b 100644 --- a/examples/network/securesocketclient/sslclient.cpp +++ b/examples/network/securesocketclient/sslclient.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/securesocketclient/sslclient.h b/examples/network/securesocketclient/sslclient.h index 4e0bc1891f..5c1317f131 100644 --- a/examples/network/securesocketclient/sslclient.h +++ b/examples/network/securesocketclient/sslclient.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/threadedfortuneserver/dialog.cpp b/examples/network/threadedfortuneserver/dialog.cpp index 2340a6bc5a..94a0c657e3 100644 --- a/examples/network/threadedfortuneserver/dialog.cpp +++ b/examples/network/threadedfortuneserver/dialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/threadedfortuneserver/dialog.h b/examples/network/threadedfortuneserver/dialog.h index 19a6fc2f47..1fdc4b21a0 100644 --- a/examples/network/threadedfortuneserver/dialog.h +++ b/examples/network/threadedfortuneserver/dialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/threadedfortuneserver/fortuneserver.cpp b/examples/network/threadedfortuneserver/fortuneserver.cpp index 7179ba51e8..90fba144e1 100644 --- a/examples/network/threadedfortuneserver/fortuneserver.cpp +++ b/examples/network/threadedfortuneserver/fortuneserver.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/threadedfortuneserver/fortuneserver.h b/examples/network/threadedfortuneserver/fortuneserver.h index 785a72e27e..470e868965 100644 --- a/examples/network/threadedfortuneserver/fortuneserver.h +++ b/examples/network/threadedfortuneserver/fortuneserver.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/threadedfortuneserver/fortunethread.cpp b/examples/network/threadedfortuneserver/fortunethread.cpp index e9878e06d7..18c8f1f25a 100644 --- a/examples/network/threadedfortuneserver/fortunethread.cpp +++ b/examples/network/threadedfortuneserver/fortunethread.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/threadedfortuneserver/fortunethread.h b/examples/network/threadedfortuneserver/fortunethread.h index 1d6f5608d8..b3b8a20ae4 100644 --- a/examples/network/threadedfortuneserver/fortunethread.h +++ b/examples/network/threadedfortuneserver/fortunethread.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/threadedfortuneserver/main.cpp b/examples/network/threadedfortuneserver/main.cpp index 0bf75aa18c..1174b7e827 100644 --- a/examples/network/threadedfortuneserver/main.cpp +++ b/examples/network/threadedfortuneserver/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/torrent/addtorrentdialog.cpp b/examples/network/torrent/addtorrentdialog.cpp index c78535a309..5e473df15e 100644 --- a/examples/network/torrent/addtorrentdialog.cpp +++ b/examples/network/torrent/addtorrentdialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/torrent/addtorrentdialog.h b/examples/network/torrent/addtorrentdialog.h index 09aa48c354..649296bdb2 100644 --- a/examples/network/torrent/addtorrentdialog.h +++ b/examples/network/torrent/addtorrentdialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/torrent/bencodeparser.cpp b/examples/network/torrent/bencodeparser.cpp index edb04c6d6b..cccaede179 100644 --- a/examples/network/torrent/bencodeparser.cpp +++ b/examples/network/torrent/bencodeparser.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/torrent/bencodeparser.h b/examples/network/torrent/bencodeparser.h index de8b8ffd93..6e137a62e3 100644 --- a/examples/network/torrent/bencodeparser.h +++ b/examples/network/torrent/bencodeparser.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/torrent/connectionmanager.cpp b/examples/network/torrent/connectionmanager.cpp index 889933ea83..7c55c1f6a2 100644 --- a/examples/network/torrent/connectionmanager.cpp +++ b/examples/network/torrent/connectionmanager.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/torrent/connectionmanager.h b/examples/network/torrent/connectionmanager.h index ef38507e45..90ce2841ec 100644 --- a/examples/network/torrent/connectionmanager.h +++ b/examples/network/torrent/connectionmanager.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/torrent/filemanager.cpp b/examples/network/torrent/filemanager.cpp index b4dfb25bca..bcb53f2685 100644 --- a/examples/network/torrent/filemanager.cpp +++ b/examples/network/torrent/filemanager.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/torrent/filemanager.h b/examples/network/torrent/filemanager.h index cf1a0f706b..cd59b57f9d 100644 --- a/examples/network/torrent/filemanager.h +++ b/examples/network/torrent/filemanager.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/torrent/main.cpp b/examples/network/torrent/main.cpp index 1023ae85a7..eaa637699b 100644 --- a/examples/network/torrent/main.cpp +++ b/examples/network/torrent/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/torrent/mainwindow.cpp b/examples/network/torrent/mainwindow.cpp index 3d264eb272..56a56ee164 100644 --- a/examples/network/torrent/mainwindow.cpp +++ b/examples/network/torrent/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/torrent/mainwindow.h b/examples/network/torrent/mainwindow.h index 0d42c91ce4..12d9a4fea0 100644 --- a/examples/network/torrent/mainwindow.h +++ b/examples/network/torrent/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/torrent/metainfo.cpp b/examples/network/torrent/metainfo.cpp index ba55ebace6..15efe7c30f 100644 --- a/examples/network/torrent/metainfo.cpp +++ b/examples/network/torrent/metainfo.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/torrent/metainfo.h b/examples/network/torrent/metainfo.h index afa824d74b..39c8e17e08 100644 --- a/examples/network/torrent/metainfo.h +++ b/examples/network/torrent/metainfo.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/torrent/peerwireclient.cpp b/examples/network/torrent/peerwireclient.cpp index 0d9580eeff..fa51343db6 100644 --- a/examples/network/torrent/peerwireclient.cpp +++ b/examples/network/torrent/peerwireclient.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/torrent/peerwireclient.h b/examples/network/torrent/peerwireclient.h index b8f8cb56e5..96d5c49770 100644 --- a/examples/network/torrent/peerwireclient.h +++ b/examples/network/torrent/peerwireclient.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/torrent/ratecontroller.cpp b/examples/network/torrent/ratecontroller.cpp index 47cf177ccb..af497a4437 100644 --- a/examples/network/torrent/ratecontroller.cpp +++ b/examples/network/torrent/ratecontroller.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/torrent/ratecontroller.h b/examples/network/torrent/ratecontroller.h index 4949abb641..20b7df4664 100644 --- a/examples/network/torrent/ratecontroller.h +++ b/examples/network/torrent/ratecontroller.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/torrent/torrentclient.cpp b/examples/network/torrent/torrentclient.cpp index 3df1bb886f..46f44a853b 100644 --- a/examples/network/torrent/torrentclient.cpp +++ b/examples/network/torrent/torrentclient.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/torrent/torrentclient.h b/examples/network/torrent/torrentclient.h index 7978e8e1f4..75bef55924 100644 --- a/examples/network/torrent/torrentclient.h +++ b/examples/network/torrent/torrentclient.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/torrent/torrentserver.cpp b/examples/network/torrent/torrentserver.cpp index 7a9ff67972..b9f76c40f8 100644 --- a/examples/network/torrent/torrentserver.cpp +++ b/examples/network/torrent/torrentserver.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/torrent/torrentserver.h b/examples/network/torrent/torrentserver.h index 2622384cfd..abe48f8e18 100644 --- a/examples/network/torrent/torrentserver.h +++ b/examples/network/torrent/torrentserver.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/torrent/trackerclient.cpp b/examples/network/torrent/trackerclient.cpp index 0b9a5815c9..c8525e983f 100644 --- a/examples/network/torrent/trackerclient.cpp +++ b/examples/network/torrent/trackerclient.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/network/torrent/trackerclient.h b/examples/network/torrent/trackerclient.h index de63a8f87f..02dd5f91e7 100644 --- a/examples/network/torrent/trackerclient.h +++ b/examples/network/torrent/trackerclient.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/2dpainting/glwidget.cpp b/examples/opengl/2dpainting/glwidget.cpp index 800e947385..318801db4b 100644 --- a/examples/opengl/2dpainting/glwidget.cpp +++ b/examples/opengl/2dpainting/glwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/2dpainting/glwidget.h b/examples/opengl/2dpainting/glwidget.h index c012960f31..a395f8ac50 100644 --- a/examples/opengl/2dpainting/glwidget.h +++ b/examples/opengl/2dpainting/glwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/2dpainting/helper.cpp b/examples/opengl/2dpainting/helper.cpp index dc18c60a4b..b8484e9c61 100644 --- a/examples/opengl/2dpainting/helper.cpp +++ b/examples/opengl/2dpainting/helper.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/2dpainting/helper.h b/examples/opengl/2dpainting/helper.h index 380399fa50..ce74f27a70 100644 --- a/examples/opengl/2dpainting/helper.h +++ b/examples/opengl/2dpainting/helper.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/2dpainting/main.cpp b/examples/opengl/2dpainting/main.cpp index aedfd9f8d3..027c8bd3d1 100644 --- a/examples/opengl/2dpainting/main.cpp +++ b/examples/opengl/2dpainting/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/2dpainting/widget.cpp b/examples/opengl/2dpainting/widget.cpp index 35eedae240..0c682de876 100644 --- a/examples/opengl/2dpainting/widget.cpp +++ b/examples/opengl/2dpainting/widget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/2dpainting/widget.h b/examples/opengl/2dpainting/widget.h index 7a67aaf1bf..d2c1534271 100644 --- a/examples/opengl/2dpainting/widget.h +++ b/examples/opengl/2dpainting/widget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/2dpainting/window.cpp b/examples/opengl/2dpainting/window.cpp index 0186670f38..29341d2a4e 100644 --- a/examples/opengl/2dpainting/window.cpp +++ b/examples/opengl/2dpainting/window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/2dpainting/window.h b/examples/opengl/2dpainting/window.h index 0f983d20ac..f6f1700fdb 100644 --- a/examples/opengl/2dpainting/window.h +++ b/examples/opengl/2dpainting/window.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/cube/geometryengine.cpp b/examples/opengl/cube/geometryengine.cpp index c05dde56f8..3c5fe4fe8c 100644 --- a/examples/opengl/cube/geometryengine.cpp +++ b/examples/opengl/cube/geometryengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/cube/geometryengine.h b/examples/opengl/cube/geometryengine.h index e071ef6202..ddb34fb3d3 100644 --- a/examples/opengl/cube/geometryengine.h +++ b/examples/opengl/cube/geometryengine.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/cube/main.cpp b/examples/opengl/cube/main.cpp index ef6efdc4dc..bdf1a7161f 100644 --- a/examples/opengl/cube/main.cpp +++ b/examples/opengl/cube/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/cube/mainwidget.cpp b/examples/opengl/cube/mainwidget.cpp index c095888f98..60bef9e54e 100644 --- a/examples/opengl/cube/mainwidget.cpp +++ b/examples/opengl/cube/mainwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/cube/mainwidget.h b/examples/opengl/cube/mainwidget.h index eb509d0d40..90c1bd11cc 100644 --- a/examples/opengl/cube/mainwidget.h +++ b/examples/opengl/cube/mainwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/framebufferobject2/glwidget.cpp b/examples/opengl/framebufferobject2/glwidget.cpp index 7a5adf904d..eb85797133 100644 --- a/examples/opengl/framebufferobject2/glwidget.cpp +++ b/examples/opengl/framebufferobject2/glwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/framebufferobject2/glwidget.h b/examples/opengl/framebufferobject2/glwidget.h index ccb46a3b83..6cfceb8498 100644 --- a/examples/opengl/framebufferobject2/glwidget.h +++ b/examples/opengl/framebufferobject2/glwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/framebufferobject2/main.cpp b/examples/opengl/framebufferobject2/main.cpp index 313e683da5..4c0b8420de 100644 --- a/examples/opengl/framebufferobject2/main.cpp +++ b/examples/opengl/framebufferobject2/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/grabber/glwidget.cpp b/examples/opengl/grabber/glwidget.cpp index 52d0b2662a..60974571bd 100644 --- a/examples/opengl/grabber/glwidget.cpp +++ b/examples/opengl/grabber/glwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/grabber/glwidget.h b/examples/opengl/grabber/glwidget.h index f86d5d06d6..5f3981f8ae 100644 --- a/examples/opengl/grabber/glwidget.h +++ b/examples/opengl/grabber/glwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/grabber/main.cpp b/examples/opengl/grabber/main.cpp index 923c1f8514..18ff180690 100644 --- a/examples/opengl/grabber/main.cpp +++ b/examples/opengl/grabber/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/grabber/mainwindow.cpp b/examples/opengl/grabber/mainwindow.cpp index 965c49ab1a..7d0fdefa0c 100644 --- a/examples/opengl/grabber/mainwindow.cpp +++ b/examples/opengl/grabber/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/grabber/mainwindow.h b/examples/opengl/grabber/mainwindow.h index 044d2a8dd7..48fc11f8b8 100644 --- a/examples/opengl/grabber/mainwindow.h +++ b/examples/opengl/grabber/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/hellogl/glwidget.cpp b/examples/opengl/hellogl/glwidget.cpp index 38333d8560..c30f4b7a00 100644 --- a/examples/opengl/hellogl/glwidget.cpp +++ b/examples/opengl/hellogl/glwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/hellogl/glwidget.h b/examples/opengl/hellogl/glwidget.h index 1f12b11e32..877afa90f3 100644 --- a/examples/opengl/hellogl/glwidget.h +++ b/examples/opengl/hellogl/glwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/hellogl/main.cpp b/examples/opengl/hellogl/main.cpp index cc14a70bcc..073d9e108d 100644 --- a/examples/opengl/hellogl/main.cpp +++ b/examples/opengl/hellogl/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/hellogl/window.cpp b/examples/opengl/hellogl/window.cpp index 9f7d6be68b..52f8a85143 100644 --- a/examples/opengl/hellogl/window.cpp +++ b/examples/opengl/hellogl/window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/hellogl/window.h b/examples/opengl/hellogl/window.h index 0ac3d64ee4..90f26e0f38 100644 --- a/examples/opengl/hellogl/window.h +++ b/examples/opengl/hellogl/window.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/hellogl_es/glwindow.cpp b/examples/opengl/hellogl_es/glwindow.cpp index 407cb53354..e8e00f53d4 100644 --- a/examples/opengl/hellogl_es/glwindow.cpp +++ b/examples/opengl/hellogl_es/glwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/hellogl_es/glwindow.h b/examples/opengl/hellogl_es/glwindow.h index f1f1f2ae18..bbcfc370d5 100644 --- a/examples/opengl/hellogl_es/glwindow.h +++ b/examples/opengl/hellogl_es/glwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/hellogl_es/main.cpp b/examples/opengl/hellogl_es/main.cpp index 1b42a48fe1..a18db04e6e 100644 --- a/examples/opengl/hellogl_es/main.cpp +++ b/examples/opengl/hellogl_es/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/hellogl_es2/bubble.cpp b/examples/opengl/hellogl_es2/bubble.cpp index 6db14e32bd..bac2eea09b 100644 --- a/examples/opengl/hellogl_es2/bubble.cpp +++ b/examples/opengl/hellogl_es2/bubble.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/hellogl_es2/bubble.h b/examples/opengl/hellogl_es2/bubble.h index 21f5add43e..211a127e0b 100644 --- a/examples/opengl/hellogl_es2/bubble.h +++ b/examples/opengl/hellogl_es2/bubble.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/hellogl_es2/glwidget.cpp b/examples/opengl/hellogl_es2/glwidget.cpp index a22fbdacb8..fcff502d39 100644 --- a/examples/opengl/hellogl_es2/glwidget.cpp +++ b/examples/opengl/hellogl_es2/glwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/hellogl_es2/glwidget.h b/examples/opengl/hellogl_es2/glwidget.h index 44b78d6120..a23bee5c7e 100644 --- a/examples/opengl/hellogl_es2/glwidget.h +++ b/examples/opengl/hellogl_es2/glwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/hellogl_es2/main.cpp b/examples/opengl/hellogl_es2/main.cpp index 5693d7ad55..5148dd5ecc 100644 --- a/examples/opengl/hellogl_es2/main.cpp +++ b/examples/opengl/hellogl_es2/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/hellogl_es2/mainwindow.cpp b/examples/opengl/hellogl_es2/mainwindow.cpp index cd253fcd19..4e0f7e570c 100644 --- a/examples/opengl/hellogl_es2/mainwindow.cpp +++ b/examples/opengl/hellogl_es2/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/hellogl_es2/mainwindow.h b/examples/opengl/hellogl_es2/mainwindow.h index a0a6adfc3c..f7276a66c6 100644 --- a/examples/opengl/hellogl_es2/mainwindow.h +++ b/examples/opengl/hellogl_es2/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/hellowindow/hellowindow.cpp b/examples/opengl/hellowindow/hellowindow.cpp index 742de251f4..f02ce91e2e 100644 --- a/examples/opengl/hellowindow/hellowindow.cpp +++ b/examples/opengl/hellowindow/hellowindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/hellowindow/hellowindow.h b/examples/opengl/hellowindow/hellowindow.h index b257cef20f..e88719348f 100644 --- a/examples/opengl/hellowindow/hellowindow.h +++ b/examples/opengl/hellowindow/hellowindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/hellowindow/main.cpp b/examples/opengl/hellowindow/main.cpp index 36cbc414dd..fa2309dc8b 100644 --- a/examples/opengl/hellowindow/main.cpp +++ b/examples/opengl/hellowindow/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/overpainting/bubble.cpp b/examples/opengl/overpainting/bubble.cpp index bb6d2b8070..228d6e1bf0 100644 --- a/examples/opengl/overpainting/bubble.cpp +++ b/examples/opengl/overpainting/bubble.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/overpainting/bubble.h b/examples/opengl/overpainting/bubble.h index 025e92bc00..aaf9ff5af7 100644 --- a/examples/opengl/overpainting/bubble.h +++ b/examples/opengl/overpainting/bubble.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/overpainting/glwidget.cpp b/examples/opengl/overpainting/glwidget.cpp index 4572e69644..9a426db8b0 100644 --- a/examples/opengl/overpainting/glwidget.cpp +++ b/examples/opengl/overpainting/glwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/overpainting/glwidget.h b/examples/opengl/overpainting/glwidget.h index 178fdf7fe5..7e68a3bc75 100644 --- a/examples/opengl/overpainting/glwidget.h +++ b/examples/opengl/overpainting/glwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/overpainting/main.cpp b/examples/opengl/overpainting/main.cpp index fd9b206b69..c38793242b 100644 --- a/examples/opengl/overpainting/main.cpp +++ b/examples/opengl/overpainting/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/paintedwindow/main.cpp b/examples/opengl/paintedwindow/main.cpp index c672798558..2d9a5ec675 100644 --- a/examples/opengl/paintedwindow/main.cpp +++ b/examples/opengl/paintedwindow/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/paintedwindow/paintedwindow.cpp b/examples/opengl/paintedwindow/paintedwindow.cpp index 78539d7ff1..e3dda43d3e 100644 --- a/examples/opengl/paintedwindow/paintedwindow.cpp +++ b/examples/opengl/paintedwindow/paintedwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/paintedwindow/paintedwindow.h b/examples/opengl/paintedwindow/paintedwindow.h index 28e06ec4df..8215fe0f4c 100644 --- a/examples/opengl/paintedwindow/paintedwindow.h +++ b/examples/opengl/paintedwindow/paintedwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/pbuffers/cube.cpp b/examples/opengl/pbuffers/cube.cpp index 631595a2d7..b5bd2feff6 100644 --- a/examples/opengl/pbuffers/cube.cpp +++ b/examples/opengl/pbuffers/cube.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/pbuffers/cube.h b/examples/opengl/pbuffers/cube.h index 5c985a3782..bb870961d4 100644 --- a/examples/opengl/pbuffers/cube.h +++ b/examples/opengl/pbuffers/cube.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/pbuffers/glwidget.cpp b/examples/opengl/pbuffers/glwidget.cpp index f6f89e5a0e..3272762bc6 100644 --- a/examples/opengl/pbuffers/glwidget.cpp +++ b/examples/opengl/pbuffers/glwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/pbuffers/glwidget.h b/examples/opengl/pbuffers/glwidget.h index 7a8244f4f9..651053eaba 100644 --- a/examples/opengl/pbuffers/glwidget.h +++ b/examples/opengl/pbuffers/glwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/pbuffers/main.cpp b/examples/opengl/pbuffers/main.cpp index aac6d1939c..0e0a133f44 100644 --- a/examples/opengl/pbuffers/main.cpp +++ b/examples/opengl/pbuffers/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/pbuffers2/glwidget.cpp b/examples/opengl/pbuffers2/glwidget.cpp index 53b1c5f95b..8d91e46f51 100644 --- a/examples/opengl/pbuffers2/glwidget.cpp +++ b/examples/opengl/pbuffers2/glwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/pbuffers2/glwidget.h b/examples/opengl/pbuffers2/glwidget.h index 515d5b44fc..2ca16ed400 100644 --- a/examples/opengl/pbuffers2/glwidget.h +++ b/examples/opengl/pbuffers2/glwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/pbuffers2/main.cpp b/examples/opengl/pbuffers2/main.cpp index 573b7f2cda..25d80d56ce 100644 --- a/examples/opengl/pbuffers2/main.cpp +++ b/examples/opengl/pbuffers2/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/samplebuffers/glwidget.cpp b/examples/opengl/samplebuffers/glwidget.cpp index 537dbd9bba..615f026fcf 100644 --- a/examples/opengl/samplebuffers/glwidget.cpp +++ b/examples/opengl/samplebuffers/glwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/samplebuffers/glwidget.h b/examples/opengl/samplebuffers/glwidget.h index 1d9b7b54a1..d4f289a3ec 100644 --- a/examples/opengl/samplebuffers/glwidget.h +++ b/examples/opengl/samplebuffers/glwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/samplebuffers/main.cpp b/examples/opengl/samplebuffers/main.cpp index c940541327..67f9c92220 100644 --- a/examples/opengl/samplebuffers/main.cpp +++ b/examples/opengl/samplebuffers/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/shared/qtlogo.cpp b/examples/opengl/shared/qtlogo.cpp index 93b92809e0..afdf565fc0 100644 --- a/examples/opengl/shared/qtlogo.cpp +++ b/examples/opengl/shared/qtlogo.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/shared/qtlogo.h b/examples/opengl/shared/qtlogo.h index 4c16ec1c4e..070089e812 100644 --- a/examples/opengl/shared/qtlogo.h +++ b/examples/opengl/shared/qtlogo.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/textures/glwidget.cpp b/examples/opengl/textures/glwidget.cpp index 4e74cf9d1d..87252df2df 100644 --- a/examples/opengl/textures/glwidget.cpp +++ b/examples/opengl/textures/glwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/textures/glwidget.h b/examples/opengl/textures/glwidget.h index 86dc889107..6f324048d9 100644 --- a/examples/opengl/textures/glwidget.h +++ b/examples/opengl/textures/glwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/textures/main.cpp b/examples/opengl/textures/main.cpp index b477e7b05b..4cfb015b5c 100644 --- a/examples/opengl/textures/main.cpp +++ b/examples/opengl/textures/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/textures/window.cpp b/examples/opengl/textures/window.cpp index 16f402efab..5c0789b4fe 100644 --- a/examples/opengl/textures/window.cpp +++ b/examples/opengl/textures/window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/opengl/textures/window.h b/examples/opengl/textures/window.h index 571fae47bc..71aee4b2c2 100644 --- a/examples/opengl/textures/window.h +++ b/examples/opengl/textures/window.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/affine/main.cpp b/examples/painting/affine/main.cpp index 19758938f8..8edd497187 100644 --- a/examples/painting/affine/main.cpp +++ b/examples/painting/affine/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/affine/xform.cpp b/examples/painting/affine/xform.cpp index 43f8ce4da1..d6a3e972ea 100644 --- a/examples/painting/affine/xform.cpp +++ b/examples/painting/affine/xform.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/affine/xform.h b/examples/painting/affine/xform.h index 0cf837cbdd..cf0b26d885 100644 --- a/examples/painting/affine/xform.h +++ b/examples/painting/affine/xform.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/basicdrawing/main.cpp b/examples/painting/basicdrawing/main.cpp index 6662742166..e99c121588 100644 --- a/examples/painting/basicdrawing/main.cpp +++ b/examples/painting/basicdrawing/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/basicdrawing/renderarea.cpp b/examples/painting/basicdrawing/renderarea.cpp index 87e6c187d3..a8b78f084f 100644 --- a/examples/painting/basicdrawing/renderarea.cpp +++ b/examples/painting/basicdrawing/renderarea.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/basicdrawing/renderarea.h b/examples/painting/basicdrawing/renderarea.h index 02e9b268f5..f440a50d4b 100644 --- a/examples/painting/basicdrawing/renderarea.h +++ b/examples/painting/basicdrawing/renderarea.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/basicdrawing/window.cpp b/examples/painting/basicdrawing/window.cpp index 949f4c8179..ce61e9a701 100644 --- a/examples/painting/basicdrawing/window.cpp +++ b/examples/painting/basicdrawing/window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/basicdrawing/window.h b/examples/painting/basicdrawing/window.h index 2f939fb741..18aae56053 100644 --- a/examples/painting/basicdrawing/window.h +++ b/examples/painting/basicdrawing/window.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/composition/composition.cpp b/examples/painting/composition/composition.cpp index e376d90733..437dfaa512 100644 --- a/examples/painting/composition/composition.cpp +++ b/examples/painting/composition/composition.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/composition/composition.h b/examples/painting/composition/composition.h index 73d49bf227..c63ffe3c15 100644 --- a/examples/painting/composition/composition.h +++ b/examples/painting/composition/composition.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/composition/main.cpp b/examples/painting/composition/main.cpp index 3c6a16aaf5..6d4a2c3fdc 100644 --- a/examples/painting/composition/main.cpp +++ b/examples/painting/composition/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/concentriccircles/circlewidget.cpp b/examples/painting/concentriccircles/circlewidget.cpp index 1ffab63944..9ed2cd7929 100644 --- a/examples/painting/concentriccircles/circlewidget.cpp +++ b/examples/painting/concentriccircles/circlewidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/concentriccircles/circlewidget.h b/examples/painting/concentriccircles/circlewidget.h index e8f583d643..7276667d69 100644 --- a/examples/painting/concentriccircles/circlewidget.h +++ b/examples/painting/concentriccircles/circlewidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/concentriccircles/main.cpp b/examples/painting/concentriccircles/main.cpp index f2079f511b..218d30316c 100644 --- a/examples/painting/concentriccircles/main.cpp +++ b/examples/painting/concentriccircles/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/concentriccircles/window.cpp b/examples/painting/concentriccircles/window.cpp index c4c5ed8e08..c0949f01dc 100644 --- a/examples/painting/concentriccircles/window.cpp +++ b/examples/painting/concentriccircles/window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/concentriccircles/window.h b/examples/painting/concentriccircles/window.h index b5cc7d9a97..253030fb92 100644 --- a/examples/painting/concentriccircles/window.h +++ b/examples/painting/concentriccircles/window.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/deform/main.cpp b/examples/painting/deform/main.cpp index c49117a2f2..562176ba47 100644 --- a/examples/painting/deform/main.cpp +++ b/examples/painting/deform/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/deform/pathdeform.cpp b/examples/painting/deform/pathdeform.cpp index f80ef2b8be..ecf14563e9 100644 --- a/examples/painting/deform/pathdeform.cpp +++ b/examples/painting/deform/pathdeform.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/deform/pathdeform.h b/examples/painting/deform/pathdeform.h index 73a1955082..cfc5afe626 100644 --- a/examples/painting/deform/pathdeform.h +++ b/examples/painting/deform/pathdeform.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/fontsampler/main.cpp b/examples/painting/fontsampler/main.cpp index 01c8adae53..bfe61dcd01 100644 --- a/examples/painting/fontsampler/main.cpp +++ b/examples/painting/fontsampler/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/fontsampler/mainwindow.cpp b/examples/painting/fontsampler/mainwindow.cpp index ad0ce55ede..bd9f38554b 100644 --- a/examples/painting/fontsampler/mainwindow.cpp +++ b/examples/painting/fontsampler/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/fontsampler/mainwindow.h b/examples/painting/fontsampler/mainwindow.h index 1b66c3c370..9abd481827 100644 --- a/examples/painting/fontsampler/mainwindow.h +++ b/examples/painting/fontsampler/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/gradients/gradients.cpp b/examples/painting/gradients/gradients.cpp index 338d8ebabd..13411bb4ac 100644 --- a/examples/painting/gradients/gradients.cpp +++ b/examples/painting/gradients/gradients.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/gradients/gradients.h b/examples/painting/gradients/gradients.h index 3277c4b21d..45fa269c86 100644 --- a/examples/painting/gradients/gradients.h +++ b/examples/painting/gradients/gradients.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/gradients/main.cpp b/examples/painting/gradients/main.cpp index 1d2f0d5775..ef0a010280 100644 --- a/examples/painting/gradients/main.cpp +++ b/examples/painting/gradients/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/imagecomposition/imagecomposer.cpp b/examples/painting/imagecomposition/imagecomposer.cpp index fee4f2a338..f206d1eeda 100644 --- a/examples/painting/imagecomposition/imagecomposer.cpp +++ b/examples/painting/imagecomposition/imagecomposer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/imagecomposition/imagecomposer.h b/examples/painting/imagecomposition/imagecomposer.h index 2248ba3033..601542b5b6 100644 --- a/examples/painting/imagecomposition/imagecomposer.h +++ b/examples/painting/imagecomposition/imagecomposer.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/imagecomposition/main.cpp b/examples/painting/imagecomposition/main.cpp index e70fa5fae9..1c530d1e35 100644 --- a/examples/painting/imagecomposition/main.cpp +++ b/examples/painting/imagecomposition/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/painterpaths/main.cpp b/examples/painting/painterpaths/main.cpp index f2079f511b..218d30316c 100644 --- a/examples/painting/painterpaths/main.cpp +++ b/examples/painting/painterpaths/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/painterpaths/renderarea.cpp b/examples/painting/painterpaths/renderarea.cpp index 9bff70bb41..8f3ae8bd31 100644 --- a/examples/painting/painterpaths/renderarea.cpp +++ b/examples/painting/painterpaths/renderarea.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/painterpaths/renderarea.h b/examples/painting/painterpaths/renderarea.h index 2c50ecb353..b274cbf32a 100644 --- a/examples/painting/painterpaths/renderarea.h +++ b/examples/painting/painterpaths/renderarea.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/painterpaths/window.cpp b/examples/painting/painterpaths/window.cpp index 641d3597ed..c278f367c1 100644 --- a/examples/painting/painterpaths/window.cpp +++ b/examples/painting/painterpaths/window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/painterpaths/window.h b/examples/painting/painterpaths/window.h index b95cd93851..467b11b0b9 100644 --- a/examples/painting/painterpaths/window.h +++ b/examples/painting/painterpaths/window.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/pathstroke/main.cpp b/examples/painting/pathstroke/main.cpp index b357f99336..b895438203 100644 --- a/examples/painting/pathstroke/main.cpp +++ b/examples/painting/pathstroke/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/pathstroke/pathstroke.cpp b/examples/painting/pathstroke/pathstroke.cpp index 02c35f7721..70baaaa0f0 100644 --- a/examples/painting/pathstroke/pathstroke.cpp +++ b/examples/painting/pathstroke/pathstroke.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/pathstroke/pathstroke.h b/examples/painting/pathstroke/pathstroke.h index 72b897a994..19b6d95c81 100644 --- a/examples/painting/pathstroke/pathstroke.h +++ b/examples/painting/pathstroke/pathstroke.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/shared/arthurstyle.cpp b/examples/painting/shared/arthurstyle.cpp index 432b8b34e5..a371e1187c 100644 --- a/examples/painting/shared/arthurstyle.cpp +++ b/examples/painting/shared/arthurstyle.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/shared/arthurstyle.h b/examples/painting/shared/arthurstyle.h index 32c7fad970..2a1eec2c44 100644 --- a/examples/painting/shared/arthurstyle.h +++ b/examples/painting/shared/arthurstyle.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/shared/arthurwidgets.cpp b/examples/painting/shared/arthurwidgets.cpp index 6a0183288c..c9b1faa3fd 100644 --- a/examples/painting/shared/arthurwidgets.cpp +++ b/examples/painting/shared/arthurwidgets.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/shared/arthurwidgets.h b/examples/painting/shared/arthurwidgets.h index dc8f92505d..4c6443696c 100644 --- a/examples/painting/shared/arthurwidgets.h +++ b/examples/painting/shared/arthurwidgets.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/shared/hoverpoints.cpp b/examples/painting/shared/hoverpoints.cpp index 36c24186d3..e60f096e8c 100644 --- a/examples/painting/shared/hoverpoints.cpp +++ b/examples/painting/shared/hoverpoints.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/shared/hoverpoints.h b/examples/painting/shared/hoverpoints.h index af755a2a50..e131aeee55 100644 --- a/examples/painting/shared/hoverpoints.h +++ b/examples/painting/shared/hoverpoints.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/transformations/main.cpp b/examples/painting/transformations/main.cpp index f2079f511b..218d30316c 100644 --- a/examples/painting/transformations/main.cpp +++ b/examples/painting/transformations/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/transformations/renderarea.cpp b/examples/painting/transformations/renderarea.cpp index 04a6eb511f..07dfffaf23 100644 --- a/examples/painting/transformations/renderarea.cpp +++ b/examples/painting/transformations/renderarea.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/transformations/renderarea.h b/examples/painting/transformations/renderarea.h index 039430d9a3..00d0f04954 100644 --- a/examples/painting/transformations/renderarea.h +++ b/examples/painting/transformations/renderarea.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/transformations/window.cpp b/examples/painting/transformations/window.cpp index 24d0a6f5ce..aab2750836 100644 --- a/examples/painting/transformations/window.cpp +++ b/examples/painting/transformations/window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/painting/transformations/window.h b/examples/painting/transformations/window.h index b7cd575a81..da76e9743d 100644 --- a/examples/painting/transformations/window.h +++ b/examples/painting/transformations/window.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qmake/precompile/main.cpp b/examples/qmake/precompile/main.cpp index 033fed35cb..0a3d16e901 100644 --- a/examples/qmake/precompile/main.cpp +++ b/examples/qmake/precompile/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qmake/precompile/mydialog.cpp b/examples/qmake/precompile/mydialog.cpp index 96d3fb0313..e1464ed4cf 100644 --- a/examples/qmake/precompile/mydialog.cpp +++ b/examples/qmake/precompile/mydialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qmake/precompile/mydialog.h b/examples/qmake/precompile/mydialog.h index 5e2a06f923..f29172039b 100644 --- a/examples/qmake/precompile/mydialog.h +++ b/examples/qmake/precompile/mydialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qmake/precompile/myobject.cpp b/examples/qmake/precompile/myobject.cpp index 3a8cef7991..eb87b114f6 100644 --- a/examples/qmake/precompile/myobject.cpp +++ b/examples/qmake/precompile/myobject.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qmake/precompile/myobject.h b/examples/qmake/precompile/myobject.h index 8953832b82..e5c65b3f24 100644 --- a/examples/qmake/precompile/myobject.h +++ b/examples/qmake/precompile/myobject.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qmake/precompile/stable.h b/examples/qmake/precompile/stable.h index 140af3c053..f884009dc3 100644 --- a/examples/qmake/precompile/stable.h +++ b/examples/qmake/precompile/stable.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qmake/precompile/util.cpp b/examples/qmake/precompile/util.cpp index ba85b14f87..d99a19dae2 100644 --- a/examples/qmake/precompile/util.cpp +++ b/examples/qmake/precompile/util.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qmake/tutorial/hello.cpp b/examples/qmake/tutorial/hello.cpp index 9edb4e349f..a87ab8621a 100644 --- a/examples/qmake/tutorial/hello.cpp +++ b/examples/qmake/tutorial/hello.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qmake/tutorial/hello.h b/examples/qmake/tutorial/hello.h index 05bdeef036..4acf5ae1d8 100644 --- a/examples/qmake/tutorial/hello.h +++ b/examples/qmake/tutorial/hello.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qmake/tutorial/hellounix.cpp b/examples/qmake/tutorial/hellounix.cpp index 8594546455..8207505a5c 100644 --- a/examples/qmake/tutorial/hellounix.cpp +++ b/examples/qmake/tutorial/hellounix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qmake/tutorial/hellowin.cpp b/examples/qmake/tutorial/hellowin.cpp index b23d940d96..16fc6f9620 100644 --- a/examples/qmake/tutorial/hellowin.cpp +++ b/examples/qmake/tutorial/hellowin.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qmake/tutorial/main.cpp b/examples/qmake/tutorial/main.cpp index c68602ce22..2bf9c34e61 100644 --- a/examples/qmake/tutorial/main.cpp +++ b/examples/qmake/tutorial/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qpa/windows/main.cpp b/examples/qpa/windows/main.cpp index 01f63db282..37c931c732 100644 --- a/examples/qpa/windows/main.cpp +++ b/examples/qpa/windows/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qpa/windows/window.cpp b/examples/qpa/windows/window.cpp index 7ea00f8d4c..c22ad2878e 100644 --- a/examples/qpa/windows/window.cpp +++ b/examples/qpa/windows/window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qpa/windows/window.h b/examples/qpa/windows/window.h index 19a09a6cfa..31b6e1b12f 100644 --- a/examples/qpa/windows/window.h +++ b/examples/qpa/windows/window.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qtconcurrent/imagescaling/imagescaling.cpp b/examples/qtconcurrent/imagescaling/imagescaling.cpp index fe2e3f4dad..d4d47069d7 100644 --- a/examples/qtconcurrent/imagescaling/imagescaling.cpp +++ b/examples/qtconcurrent/imagescaling/imagescaling.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qtconcurrent/imagescaling/imagescaling.h b/examples/qtconcurrent/imagescaling/imagescaling.h index 5bc9187dea..b56d07f2cb 100644 --- a/examples/qtconcurrent/imagescaling/imagescaling.h +++ b/examples/qtconcurrent/imagescaling/imagescaling.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qtconcurrent/imagescaling/main.cpp b/examples/qtconcurrent/imagescaling/main.cpp index bca840810a..8e06c968ca 100644 --- a/examples/qtconcurrent/imagescaling/main.cpp +++ b/examples/qtconcurrent/imagescaling/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qtconcurrent/map/main.cpp b/examples/qtconcurrent/map/main.cpp index a3618b4e59..1dee9412a5 100644 --- a/examples/qtconcurrent/map/main.cpp +++ b/examples/qtconcurrent/map/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qtconcurrent/progressdialog/main.cpp b/examples/qtconcurrent/progressdialog/main.cpp index 956d059911..26de3e22b7 100644 --- a/examples/qtconcurrent/progressdialog/main.cpp +++ b/examples/qtconcurrent/progressdialog/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qtconcurrent/runfunction/main.cpp b/examples/qtconcurrent/runfunction/main.cpp index f369ee8417..4003204536 100644 --- a/examples/qtconcurrent/runfunction/main.cpp +++ b/examples/qtconcurrent/runfunction/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qtconcurrent/wordcount/main.cpp b/examples/qtconcurrent/wordcount/main.cpp index 25ded55f50..a5ca67a460 100644 --- a/examples/qtconcurrent/wordcount/main.cpp +++ b/examples/qtconcurrent/wordcount/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qtestlib/tutorial1/testqstring.cpp b/examples/qtestlib/tutorial1/testqstring.cpp index 79f2bfd782..76fa98c512 100644 --- a/examples/qtestlib/tutorial1/testqstring.cpp +++ b/examples/qtestlib/tutorial1/testqstring.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qtestlib/tutorial2/testqstring.cpp b/examples/qtestlib/tutorial2/testqstring.cpp index cd0e3f186b..7bfa3bcbeb 100644 --- a/examples/qtestlib/tutorial2/testqstring.cpp +++ b/examples/qtestlib/tutorial2/testqstring.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qtestlib/tutorial3/testgui.cpp b/examples/qtestlib/tutorial3/testgui.cpp index 6618d86c14..d90f0299c7 100644 --- a/examples/qtestlib/tutorial3/testgui.cpp +++ b/examples/qtestlib/tutorial3/testgui.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qtestlib/tutorial4/testgui.cpp b/examples/qtestlib/tutorial4/testgui.cpp index 66a6cbe7c5..fd884d237b 100644 --- a/examples/qtestlib/tutorial4/testgui.cpp +++ b/examples/qtestlib/tutorial4/testgui.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qtestlib/tutorial5/benchmarking.cpp b/examples/qtestlib/tutorial5/benchmarking.cpp index f844c2e66c..bc0cf304bb 100644 --- a/examples/qtestlib/tutorial5/benchmarking.cpp +++ b/examples/qtestlib/tutorial5/benchmarking.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qtestlib/tutorial5/containers.cpp b/examples/qtestlib/tutorial5/containers.cpp index 345f9e9c43..a966045905 100644 --- a/examples/qtestlib/tutorial5/containers.cpp +++ b/examples/qtestlib/tutorial5/containers.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qws/dbscreen/dbscreen.cpp b/examples/qws/dbscreen/dbscreen.cpp index 61953d98c2..a67358afe1 100644 --- a/examples/qws/dbscreen/dbscreen.cpp +++ b/examples/qws/dbscreen/dbscreen.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qws/dbscreen/dbscreen.h b/examples/qws/dbscreen/dbscreen.h index a708f07f1f..2731a5ceae 100644 --- a/examples/qws/dbscreen/dbscreen.h +++ b/examples/qws/dbscreen/dbscreen.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qws/dbscreen/dbscreendriverplugin.cpp b/examples/qws/dbscreen/dbscreendriverplugin.cpp index 7d70431900..507dcecf48 100644 --- a/examples/qws/dbscreen/dbscreendriverplugin.cpp +++ b/examples/qws/dbscreen/dbscreendriverplugin.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qws/framebuffer/main.c b/examples/qws/framebuffer/main.c index ab1a0fd373..f9d29e6712 100644 --- a/examples/qws/framebuffer/main.c +++ b/examples/qws/framebuffer/main.c @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qws/mousecalibration/calibration.cpp b/examples/qws/mousecalibration/calibration.cpp index c0746c9aeb..d39cf62fe5 100644 --- a/examples/qws/mousecalibration/calibration.cpp +++ b/examples/qws/mousecalibration/calibration.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qws/mousecalibration/calibration.h b/examples/qws/mousecalibration/calibration.h index 4988b6e755..335b2d50a3 100644 --- a/examples/qws/mousecalibration/calibration.h +++ b/examples/qws/mousecalibration/calibration.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qws/mousecalibration/main.cpp b/examples/qws/mousecalibration/main.cpp index 3db11cd109..9393c84f13 100644 --- a/examples/qws/mousecalibration/main.cpp +++ b/examples/qws/mousecalibration/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qws/mousecalibration/scribblewidget.cpp b/examples/qws/mousecalibration/scribblewidget.cpp index cc24aeb3bf..705c60798f 100644 --- a/examples/qws/mousecalibration/scribblewidget.cpp +++ b/examples/qws/mousecalibration/scribblewidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qws/mousecalibration/scribblewidget.h b/examples/qws/mousecalibration/scribblewidget.h index a8957b4664..a5e11e2dab 100644 --- a/examples/qws/mousecalibration/scribblewidget.h +++ b/examples/qws/mousecalibration/scribblewidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qws/simpledecoration/analogclock.cpp b/examples/qws/simpledecoration/analogclock.cpp index c922c9fe18..57246c86f4 100644 --- a/examples/qws/simpledecoration/analogclock.cpp +++ b/examples/qws/simpledecoration/analogclock.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qws/simpledecoration/analogclock.h b/examples/qws/simpledecoration/analogclock.h index 6fef764ee1..43e81ff60c 100644 --- a/examples/qws/simpledecoration/analogclock.h +++ b/examples/qws/simpledecoration/analogclock.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qws/simpledecoration/main.cpp b/examples/qws/simpledecoration/main.cpp index 9a8f913ee5..2d616311b8 100644 --- a/examples/qws/simpledecoration/main.cpp +++ b/examples/qws/simpledecoration/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qws/simpledecoration/mydecoration.cpp b/examples/qws/simpledecoration/mydecoration.cpp index 907fd6d8c2..f2eb14f319 100644 --- a/examples/qws/simpledecoration/mydecoration.cpp +++ b/examples/qws/simpledecoration/mydecoration.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qws/simpledecoration/mydecoration.h b/examples/qws/simpledecoration/mydecoration.h index 6d8aebf6b2..e397775e21 100644 --- a/examples/qws/simpledecoration/mydecoration.h +++ b/examples/qws/simpledecoration/mydecoration.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qws/svgalib/svgalibpaintdevice.cpp b/examples/qws/svgalib/svgalibpaintdevice.cpp index 5b1ecb0717..5d25eccf43 100644 --- a/examples/qws/svgalib/svgalibpaintdevice.cpp +++ b/examples/qws/svgalib/svgalibpaintdevice.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qws/svgalib/svgalibpaintdevice.h b/examples/qws/svgalib/svgalibpaintdevice.h index 0b70b86df9..75415ac2bb 100644 --- a/examples/qws/svgalib/svgalibpaintdevice.h +++ b/examples/qws/svgalib/svgalibpaintdevice.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qws/svgalib/svgalibpaintengine.cpp b/examples/qws/svgalib/svgalibpaintengine.cpp index f6774d0683..ebcc46e780 100644 --- a/examples/qws/svgalib/svgalibpaintengine.cpp +++ b/examples/qws/svgalib/svgalibpaintengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qws/svgalib/svgalibpaintengine.h b/examples/qws/svgalib/svgalibpaintengine.h index d3d85ba7a8..20c1fd0f48 100644 --- a/examples/qws/svgalib/svgalibpaintengine.h +++ b/examples/qws/svgalib/svgalibpaintengine.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qws/svgalib/svgalibplugin.cpp b/examples/qws/svgalib/svgalibplugin.cpp index 9be629e63b..dc60f5e4b1 100644 --- a/examples/qws/svgalib/svgalibplugin.cpp +++ b/examples/qws/svgalib/svgalibplugin.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qws/svgalib/svgalibscreen.cpp b/examples/qws/svgalib/svgalibscreen.cpp index 163259178c..4fe97e0889 100644 --- a/examples/qws/svgalib/svgalibscreen.cpp +++ b/examples/qws/svgalib/svgalibscreen.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qws/svgalib/svgalibscreen.h b/examples/qws/svgalib/svgalibscreen.h index da3b05e103..68e236485f 100644 --- a/examples/qws/svgalib/svgalibscreen.h +++ b/examples/qws/svgalib/svgalibscreen.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qws/svgalib/svgalibsurface.cpp b/examples/qws/svgalib/svgalibsurface.cpp index ad270a1783..027e3f980a 100644 --- a/examples/qws/svgalib/svgalibsurface.cpp +++ b/examples/qws/svgalib/svgalibsurface.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/qws/svgalib/svgalibsurface.h b/examples/qws/svgalib/svgalibsurface.h index 5c25e72521..08a65d0fb8 100644 --- a/examples/qws/svgalib/svgalibsurface.h +++ b/examples/qws/svgalib/svgalibsurface.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/richtext/calendar/main.cpp b/examples/richtext/calendar/main.cpp index 808f72480b..913c41317f 100644 --- a/examples/richtext/calendar/main.cpp +++ b/examples/richtext/calendar/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/richtext/calendar/mainwindow.cpp b/examples/richtext/calendar/mainwindow.cpp index c8cb833078..5a7867c162 100644 --- a/examples/richtext/calendar/mainwindow.cpp +++ b/examples/richtext/calendar/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/richtext/calendar/mainwindow.h b/examples/richtext/calendar/mainwindow.h index a9cf5216a7..25c126e3d7 100644 --- a/examples/richtext/calendar/mainwindow.h +++ b/examples/richtext/calendar/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/richtext/orderform/detailsdialog.cpp b/examples/richtext/orderform/detailsdialog.cpp index ba395ec2bb..a1b5145b9e 100644 --- a/examples/richtext/orderform/detailsdialog.cpp +++ b/examples/richtext/orderform/detailsdialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/richtext/orderform/detailsdialog.h b/examples/richtext/orderform/detailsdialog.h index dea3ea125e..830290af4f 100644 --- a/examples/richtext/orderform/detailsdialog.h +++ b/examples/richtext/orderform/detailsdialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/richtext/orderform/main.cpp b/examples/richtext/orderform/main.cpp index eb8155fd9a..211f80e7a3 100644 --- a/examples/richtext/orderform/main.cpp +++ b/examples/richtext/orderform/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/richtext/orderform/mainwindow.cpp b/examples/richtext/orderform/mainwindow.cpp index e94d4e6316..eb538d5957 100644 --- a/examples/richtext/orderform/mainwindow.cpp +++ b/examples/richtext/orderform/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/richtext/orderform/mainwindow.h b/examples/richtext/orderform/mainwindow.h index af923f9760..23468759b2 100644 --- a/examples/richtext/orderform/mainwindow.h +++ b/examples/richtext/orderform/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/richtext/syntaxhighlighter/highlighter.cpp b/examples/richtext/syntaxhighlighter/highlighter.cpp index d14d0241fe..7ba21c407e 100644 --- a/examples/richtext/syntaxhighlighter/highlighter.cpp +++ b/examples/richtext/syntaxhighlighter/highlighter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/richtext/syntaxhighlighter/highlighter.h b/examples/richtext/syntaxhighlighter/highlighter.h index 5bc69fc218..2ed082b470 100644 --- a/examples/richtext/syntaxhighlighter/highlighter.h +++ b/examples/richtext/syntaxhighlighter/highlighter.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/richtext/syntaxhighlighter/main.cpp b/examples/richtext/syntaxhighlighter/main.cpp index eecfb12bdc..d2437372e2 100644 --- a/examples/richtext/syntaxhighlighter/main.cpp +++ b/examples/richtext/syntaxhighlighter/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/richtext/syntaxhighlighter/mainwindow.cpp b/examples/richtext/syntaxhighlighter/mainwindow.cpp index 298ba3c472..0b8655511f 100644 --- a/examples/richtext/syntaxhighlighter/mainwindow.cpp +++ b/examples/richtext/syntaxhighlighter/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/richtext/syntaxhighlighter/mainwindow.h b/examples/richtext/syntaxhighlighter/mainwindow.h index cc7cf053f3..3400474553 100644 --- a/examples/richtext/syntaxhighlighter/mainwindow.h +++ b/examples/richtext/syntaxhighlighter/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/richtext/textedit/main.cpp b/examples/richtext/textedit/main.cpp index 036fa80ba7..8b3d259011 100644 --- a/examples/richtext/textedit/main.cpp +++ b/examples/richtext/textedit/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/richtext/textedit/textedit.cpp b/examples/richtext/textedit/textedit.cpp index d76d9dec2d..12c1d55e91 100644 --- a/examples/richtext/textedit/textedit.cpp +++ b/examples/richtext/textedit/textedit.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/richtext/textedit/textedit.h b/examples/richtext/textedit/textedit.h index ed2057214e..a6cd1e63e4 100644 --- a/examples/richtext/textedit/textedit.h +++ b/examples/richtext/textedit/textedit.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/richtext/textedit/textedit.qdoc b/examples/richtext/textedit/textedit.qdoc index 8fc9609407..b9cc886d5d 100644 --- a/examples/richtext/textedit/textedit.qdoc +++ b/examples/richtext/textedit/textedit.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/scroller/graphicsview/main.cpp b/examples/scroller/graphicsview/main.cpp index ec92f031e1..3942edc757 100644 --- a/examples/scroller/graphicsview/main.cpp +++ b/examples/scroller/graphicsview/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/books/bookdelegate.cpp b/examples/sql/books/bookdelegate.cpp index a4cf5d3a26..391b2014bd 100644 --- a/examples/sql/books/bookdelegate.cpp +++ b/examples/sql/books/bookdelegate.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/books/bookdelegate.h b/examples/sql/books/bookdelegate.h index 5dc39c0223..9c86dcd13c 100644 --- a/examples/sql/books/bookdelegate.h +++ b/examples/sql/books/bookdelegate.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/books/bookwindow.cpp b/examples/sql/books/bookwindow.cpp index 40d23d1761..3485212e76 100644 --- a/examples/sql/books/bookwindow.cpp +++ b/examples/sql/books/bookwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/books/bookwindow.h b/examples/sql/books/bookwindow.h index 781a2f8bb3..ae72805ce8 100644 --- a/examples/sql/books/bookwindow.h +++ b/examples/sql/books/bookwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/books/initdb.h b/examples/sql/books/initdb.h index 9c9bebcba1..233ebd7f48 100644 --- a/examples/sql/books/initdb.h +++ b/examples/sql/books/initdb.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/books/main.cpp b/examples/sql/books/main.cpp index e08fb156c3..23fe8ed46c 100644 --- a/examples/sql/books/main.cpp +++ b/examples/sql/books/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/cachedtable/main.cpp b/examples/sql/cachedtable/main.cpp index 3869f7ad5a..4915e2253b 100644 --- a/examples/sql/cachedtable/main.cpp +++ b/examples/sql/cachedtable/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/cachedtable/tableeditor.cpp b/examples/sql/cachedtable/tableeditor.cpp index 4f90de12e5..0518db56c7 100644 --- a/examples/sql/cachedtable/tableeditor.cpp +++ b/examples/sql/cachedtable/tableeditor.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/cachedtable/tableeditor.h b/examples/sql/cachedtable/tableeditor.h index f13bd3d5bf..6956f74f14 100644 --- a/examples/sql/cachedtable/tableeditor.h +++ b/examples/sql/cachedtable/tableeditor.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/connection.h b/examples/sql/connection.h index cd2d1d44b6..3b35612024 100644 --- a/examples/sql/connection.h +++ b/examples/sql/connection.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/drilldown/imageitem.cpp b/examples/sql/drilldown/imageitem.cpp index 52dff716d5..9942fdde5f 100644 --- a/examples/sql/drilldown/imageitem.cpp +++ b/examples/sql/drilldown/imageitem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/drilldown/imageitem.h b/examples/sql/drilldown/imageitem.h index f2bd27bc9e..fb51e7795a 100644 --- a/examples/sql/drilldown/imageitem.h +++ b/examples/sql/drilldown/imageitem.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/drilldown/informationwindow.cpp b/examples/sql/drilldown/informationwindow.cpp index 351b98dd0f..ce90779f3a 100644 --- a/examples/sql/drilldown/informationwindow.cpp +++ b/examples/sql/drilldown/informationwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/drilldown/informationwindow.h b/examples/sql/drilldown/informationwindow.h index b5cf25a8e0..a7af8a8d5c 100644 --- a/examples/sql/drilldown/informationwindow.h +++ b/examples/sql/drilldown/informationwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/drilldown/main.cpp b/examples/sql/drilldown/main.cpp index c38e3439fe..7d7f93acde 100644 --- a/examples/sql/drilldown/main.cpp +++ b/examples/sql/drilldown/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/drilldown/view.cpp b/examples/sql/drilldown/view.cpp index d0f240be9e..23d47332ca 100644 --- a/examples/sql/drilldown/view.cpp +++ b/examples/sql/drilldown/view.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/drilldown/view.h b/examples/sql/drilldown/view.h index 98855350bd..4453662f74 100644 --- a/examples/sql/drilldown/view.h +++ b/examples/sql/drilldown/view.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/masterdetail/database.h b/examples/sql/masterdetail/database.h index ab9a8ff2d6..a75e390f65 100644 --- a/examples/sql/masterdetail/database.h +++ b/examples/sql/masterdetail/database.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/masterdetail/dialog.cpp b/examples/sql/masterdetail/dialog.cpp index 9dc0fe14e3..d78d4953c5 100644 --- a/examples/sql/masterdetail/dialog.cpp +++ b/examples/sql/masterdetail/dialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/masterdetail/dialog.h b/examples/sql/masterdetail/dialog.h index e311554597..2b08b13156 100644 --- a/examples/sql/masterdetail/dialog.h +++ b/examples/sql/masterdetail/dialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/masterdetail/main.cpp b/examples/sql/masterdetail/main.cpp index 0e2aca5d2e..b8338a636b 100644 --- a/examples/sql/masterdetail/main.cpp +++ b/examples/sql/masterdetail/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/masterdetail/mainwindow.cpp b/examples/sql/masterdetail/mainwindow.cpp index d00946cb39..127f18630f 100644 --- a/examples/sql/masterdetail/mainwindow.cpp +++ b/examples/sql/masterdetail/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/masterdetail/mainwindow.h b/examples/sql/masterdetail/mainwindow.h index e087b68ee3..586a22a722 100644 --- a/examples/sql/masterdetail/mainwindow.h +++ b/examples/sql/masterdetail/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/querymodel/customsqlmodel.cpp b/examples/sql/querymodel/customsqlmodel.cpp index 534707e8e1..c7999de9dc 100644 --- a/examples/sql/querymodel/customsqlmodel.cpp +++ b/examples/sql/querymodel/customsqlmodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/querymodel/customsqlmodel.h b/examples/sql/querymodel/customsqlmodel.h index 0ea1bf1e04..7627c785d2 100644 --- a/examples/sql/querymodel/customsqlmodel.h +++ b/examples/sql/querymodel/customsqlmodel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/querymodel/editablesqlmodel.cpp b/examples/sql/querymodel/editablesqlmodel.cpp index b47995ada3..2a2fadac84 100644 --- a/examples/sql/querymodel/editablesqlmodel.cpp +++ b/examples/sql/querymodel/editablesqlmodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/querymodel/editablesqlmodel.h b/examples/sql/querymodel/editablesqlmodel.h index b63409d958..f3a8bf7547 100644 --- a/examples/sql/querymodel/editablesqlmodel.h +++ b/examples/sql/querymodel/editablesqlmodel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/querymodel/main.cpp b/examples/sql/querymodel/main.cpp index 30b4954026..f40c5bd1c4 100644 --- a/examples/sql/querymodel/main.cpp +++ b/examples/sql/querymodel/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/relationaltablemodel/relationaltablemodel.cpp b/examples/sql/relationaltablemodel/relationaltablemodel.cpp index 41dbdd2890..4497599f31 100644 --- a/examples/sql/relationaltablemodel/relationaltablemodel.cpp +++ b/examples/sql/relationaltablemodel/relationaltablemodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/sqlbrowser/browser.cpp b/examples/sql/sqlbrowser/browser.cpp index 67ceefd20b..df0bee5d47 100644 --- a/examples/sql/sqlbrowser/browser.cpp +++ b/examples/sql/sqlbrowser/browser.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/sqlbrowser/browser.h b/examples/sql/sqlbrowser/browser.h index 11f9e36211..f49f36c44a 100644 --- a/examples/sql/sqlbrowser/browser.h +++ b/examples/sql/sqlbrowser/browser.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/sqlbrowser/connectionwidget.cpp b/examples/sql/sqlbrowser/connectionwidget.cpp index b68a20b309..12f6f18fbe 100644 --- a/examples/sql/sqlbrowser/connectionwidget.cpp +++ b/examples/sql/sqlbrowser/connectionwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/sqlbrowser/connectionwidget.h b/examples/sql/sqlbrowser/connectionwidget.h index aa04fc25bf..4243825b2b 100644 --- a/examples/sql/sqlbrowser/connectionwidget.h +++ b/examples/sql/sqlbrowser/connectionwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/sqlbrowser/main.cpp b/examples/sql/sqlbrowser/main.cpp index 6e0b129445..3b80899512 100644 --- a/examples/sql/sqlbrowser/main.cpp +++ b/examples/sql/sqlbrowser/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/sqlbrowser/qsqlconnectiondialog.cpp b/examples/sql/sqlbrowser/qsqlconnectiondialog.cpp index 56b6c031db..4a0a0d2793 100644 --- a/examples/sql/sqlbrowser/qsqlconnectiondialog.cpp +++ b/examples/sql/sqlbrowser/qsqlconnectiondialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/sqlbrowser/qsqlconnectiondialog.h b/examples/sql/sqlbrowser/qsqlconnectiondialog.h index 8c4519a195..5a088548e0 100644 --- a/examples/sql/sqlbrowser/qsqlconnectiondialog.h +++ b/examples/sql/sqlbrowser/qsqlconnectiondialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/sqlwidgetmapper/main.cpp b/examples/sql/sqlwidgetmapper/main.cpp index 41e756d8ad..3cbf4b5880 100644 --- a/examples/sql/sqlwidgetmapper/main.cpp +++ b/examples/sql/sqlwidgetmapper/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/sqlwidgetmapper/window.cpp b/examples/sql/sqlwidgetmapper/window.cpp index 4370f50869..e38e253728 100644 --- a/examples/sql/sqlwidgetmapper/window.cpp +++ b/examples/sql/sqlwidgetmapper/window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/sqlwidgetmapper/window.h b/examples/sql/sqlwidgetmapper/window.h index ee8b7d6672..a99907c226 100644 --- a/examples/sql/sqlwidgetmapper/window.h +++ b/examples/sql/sqlwidgetmapper/window.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/sql/tablemodel/tablemodel.cpp b/examples/sql/tablemodel/tablemodel.cpp index dc246d799e..0e46660728 100644 --- a/examples/sql/tablemodel/tablemodel.cpp +++ b/examples/sql/tablemodel/tablemodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/statemachine/eventtransitions/main.cpp b/examples/statemachine/eventtransitions/main.cpp index e202f5e0f7..def62392a4 100644 --- a/examples/statemachine/eventtransitions/main.cpp +++ b/examples/statemachine/eventtransitions/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/statemachine/factorial/main.cpp b/examples/statemachine/factorial/main.cpp index 15e1306e24..5a0c0054bc 100644 --- a/examples/statemachine/factorial/main.cpp +++ b/examples/statemachine/factorial/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/statemachine/pingpong/main.cpp b/examples/statemachine/pingpong/main.cpp index 330824d3e8..1355f1e7b2 100644 --- a/examples/statemachine/pingpong/main.cpp +++ b/examples/statemachine/pingpong/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/statemachine/rogue/main.cpp b/examples/statemachine/rogue/main.cpp index b52b55fccf..6ab41243c5 100644 --- a/examples/statemachine/rogue/main.cpp +++ b/examples/statemachine/rogue/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/statemachine/rogue/movementtransition.h b/examples/statemachine/rogue/movementtransition.h index f2dcde3375..00cd54f088 100644 --- a/examples/statemachine/rogue/movementtransition.h +++ b/examples/statemachine/rogue/movementtransition.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/statemachine/rogue/window.cpp b/examples/statemachine/rogue/window.cpp index d5c06608c1..d0962ee28f 100644 --- a/examples/statemachine/rogue/window.cpp +++ b/examples/statemachine/rogue/window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/statemachine/rogue/window.h b/examples/statemachine/rogue/window.h index 025ec79600..4426d1d4d4 100644 --- a/examples/statemachine/rogue/window.h +++ b/examples/statemachine/rogue/window.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/statemachine/trafficlight/main.cpp b/examples/statemachine/trafficlight/main.cpp index 9b10360ae2..33925dea90 100644 --- a/examples/statemachine/trafficlight/main.cpp +++ b/examples/statemachine/trafficlight/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/statemachine/twowaybutton/main.cpp b/examples/statemachine/twowaybutton/main.cpp index a6c7000446..aa985e202c 100644 --- a/examples/statemachine/twowaybutton/main.cpp +++ b/examples/statemachine/twowaybutton/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/threads/mandelbrot/main.cpp b/examples/threads/mandelbrot/main.cpp index 610534d4a3..9232de23e4 100644 --- a/examples/threads/mandelbrot/main.cpp +++ b/examples/threads/mandelbrot/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/threads/mandelbrot/mandelbrotwidget.cpp b/examples/threads/mandelbrot/mandelbrotwidget.cpp index 0db19a71c6..5d2a615ea9 100644 --- a/examples/threads/mandelbrot/mandelbrotwidget.cpp +++ b/examples/threads/mandelbrot/mandelbrotwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/threads/mandelbrot/mandelbrotwidget.h b/examples/threads/mandelbrot/mandelbrotwidget.h index ead394cc6a..7b9b6f7606 100644 --- a/examples/threads/mandelbrot/mandelbrotwidget.h +++ b/examples/threads/mandelbrot/mandelbrotwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/threads/mandelbrot/renderthread.cpp b/examples/threads/mandelbrot/renderthread.cpp index d4f3b8ad50..886f40e7bc 100644 --- a/examples/threads/mandelbrot/renderthread.cpp +++ b/examples/threads/mandelbrot/renderthread.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/threads/mandelbrot/renderthread.h b/examples/threads/mandelbrot/renderthread.h index 3370d9df4b..6e270e46d3 100644 --- a/examples/threads/mandelbrot/renderthread.h +++ b/examples/threads/mandelbrot/renderthread.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/threads/queuedcustomtype/block.cpp b/examples/threads/queuedcustomtype/block.cpp index a4252cb258..9316e82129 100644 --- a/examples/threads/queuedcustomtype/block.cpp +++ b/examples/threads/queuedcustomtype/block.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/threads/queuedcustomtype/block.h b/examples/threads/queuedcustomtype/block.h index 1c37f82d0e..d157a5741e 100644 --- a/examples/threads/queuedcustomtype/block.h +++ b/examples/threads/queuedcustomtype/block.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/threads/queuedcustomtype/main.cpp b/examples/threads/queuedcustomtype/main.cpp index d70a88a095..a4836690cf 100644 --- a/examples/threads/queuedcustomtype/main.cpp +++ b/examples/threads/queuedcustomtype/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/threads/queuedcustomtype/renderthread.cpp b/examples/threads/queuedcustomtype/renderthread.cpp index a44ac2315a..fc9c60a6e8 100644 --- a/examples/threads/queuedcustomtype/renderthread.cpp +++ b/examples/threads/queuedcustomtype/renderthread.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/threads/queuedcustomtype/renderthread.h b/examples/threads/queuedcustomtype/renderthread.h index 99f72c3e01..44db807eaa 100644 --- a/examples/threads/queuedcustomtype/renderthread.h +++ b/examples/threads/queuedcustomtype/renderthread.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/threads/queuedcustomtype/window.cpp b/examples/threads/queuedcustomtype/window.cpp index 26a78af969..78a595c38f 100644 --- a/examples/threads/queuedcustomtype/window.cpp +++ b/examples/threads/queuedcustomtype/window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/threads/queuedcustomtype/window.h b/examples/threads/queuedcustomtype/window.h index 539c240cd7..e5596eea91 100644 --- a/examples/threads/queuedcustomtype/window.h +++ b/examples/threads/queuedcustomtype/window.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/threads/semaphores/semaphores.cpp b/examples/threads/semaphores/semaphores.cpp index 9b818f394e..8085de59a6 100644 --- a/examples/threads/semaphores/semaphores.cpp +++ b/examples/threads/semaphores/semaphores.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/threads/waitconditions/waitconditions.cpp b/examples/threads/waitconditions/waitconditions.cpp index 36c358308a..403a01511f 100644 --- a/examples/threads/waitconditions/waitconditions.cpp +++ b/examples/threads/waitconditions/waitconditions.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/codecs/main.cpp b/examples/tools/codecs/main.cpp index 923c1f8514..18ff180690 100644 --- a/examples/tools/codecs/main.cpp +++ b/examples/tools/codecs/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/codecs/mainwindow.cpp b/examples/tools/codecs/mainwindow.cpp index bad23e9531..1658e476ee 100644 --- a/examples/tools/codecs/mainwindow.cpp +++ b/examples/tools/codecs/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/codecs/mainwindow.h b/examples/tools/codecs/mainwindow.h index 9a59e27310..65f89e997b 100644 --- a/examples/tools/codecs/mainwindow.h +++ b/examples/tools/codecs/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/codecs/previewform.cpp b/examples/tools/codecs/previewform.cpp index 1fc87c978d..2751ea773b 100644 --- a/examples/tools/codecs/previewform.cpp +++ b/examples/tools/codecs/previewform.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/codecs/previewform.h b/examples/tools/codecs/previewform.h index 21a2e13722..d035ee337b 100644 --- a/examples/tools/codecs/previewform.h +++ b/examples/tools/codecs/previewform.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/completer/fsmodel.cpp b/examples/tools/completer/fsmodel.cpp index 645017f099..b7fd9425bf 100644 --- a/examples/tools/completer/fsmodel.cpp +++ b/examples/tools/completer/fsmodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/completer/fsmodel.h b/examples/tools/completer/fsmodel.h index f9a59b2a3d..b0296cd1c0 100644 --- a/examples/tools/completer/fsmodel.h +++ b/examples/tools/completer/fsmodel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/completer/main.cpp b/examples/tools/completer/main.cpp index 6edd7406c2..aaa21cf2a7 100644 --- a/examples/tools/completer/main.cpp +++ b/examples/tools/completer/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/completer/mainwindow.cpp b/examples/tools/completer/mainwindow.cpp index d56ed01108..3a81c681a0 100644 --- a/examples/tools/completer/mainwindow.cpp +++ b/examples/tools/completer/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/completer/mainwindow.h b/examples/tools/completer/mainwindow.h index e22a32d83e..79ff6bcc97 100644 --- a/examples/tools/completer/mainwindow.h +++ b/examples/tools/completer/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/contiguouscache/main.cpp b/examples/tools/contiguouscache/main.cpp index d578a389bf..15004c8392 100644 --- a/examples/tools/contiguouscache/main.cpp +++ b/examples/tools/contiguouscache/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/contiguouscache/randomlistmodel.cpp b/examples/tools/contiguouscache/randomlistmodel.cpp index 845b1e7a2a..36594cc857 100644 --- a/examples/tools/contiguouscache/randomlistmodel.cpp +++ b/examples/tools/contiguouscache/randomlistmodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/contiguouscache/randomlistmodel.h b/examples/tools/contiguouscache/randomlistmodel.h index 96a4dc0c8b..c88ea145a6 100644 --- a/examples/tools/contiguouscache/randomlistmodel.h +++ b/examples/tools/contiguouscache/randomlistmodel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/customcompleter/main.cpp b/examples/tools/customcompleter/main.cpp index 2024f50a85..c11e7c89aa 100644 --- a/examples/tools/customcompleter/main.cpp +++ b/examples/tools/customcompleter/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/customcompleter/mainwindow.cpp b/examples/tools/customcompleter/mainwindow.cpp index ecb246f15b..3c0fc79ea6 100644 --- a/examples/tools/customcompleter/mainwindow.cpp +++ b/examples/tools/customcompleter/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/customcompleter/mainwindow.h b/examples/tools/customcompleter/mainwindow.h index b645984826..20efdda8c1 100644 --- a/examples/tools/customcompleter/mainwindow.h +++ b/examples/tools/customcompleter/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/customcompleter/textedit.cpp b/examples/tools/customcompleter/textedit.cpp index 4f6ae07e58..d14842ec2b 100644 --- a/examples/tools/customcompleter/textedit.cpp +++ b/examples/tools/customcompleter/textedit.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/customcompleter/textedit.h b/examples/tools/customcompleter/textedit.h index 7ab21b740d..9b8f91c370 100644 --- a/examples/tools/customcompleter/textedit.h +++ b/examples/tools/customcompleter/textedit.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/customtype/main.cpp b/examples/tools/customtype/main.cpp index 6bb5889d25..f4e291d2a9 100644 --- a/examples/tools/customtype/main.cpp +++ b/examples/tools/customtype/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/customtype/message.cpp b/examples/tools/customtype/message.cpp index 9eb67165cb..665871ce2b 100644 --- a/examples/tools/customtype/message.cpp +++ b/examples/tools/customtype/message.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/customtype/message.h b/examples/tools/customtype/message.h index 1dcb46e23e..94d54b5009 100644 --- a/examples/tools/customtype/message.h +++ b/examples/tools/customtype/message.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/customtypesending/main.cpp b/examples/tools/customtypesending/main.cpp index 436f467a4b..12ee4fc4bc 100644 --- a/examples/tools/customtypesending/main.cpp +++ b/examples/tools/customtypesending/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/customtypesending/message.cpp b/examples/tools/customtypesending/message.cpp index 0a23ff1938..1934c63d8f 100644 --- a/examples/tools/customtypesending/message.cpp +++ b/examples/tools/customtypesending/message.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/customtypesending/message.h b/examples/tools/customtypesending/message.h index 429022bad3..1b683ad513 100644 --- a/examples/tools/customtypesending/message.h +++ b/examples/tools/customtypesending/message.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/customtypesending/window.cpp b/examples/tools/customtypesending/window.cpp index 813fea9b1d..f3f68c6a6c 100644 --- a/examples/tools/customtypesending/window.cpp +++ b/examples/tools/customtypesending/window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/customtypesending/window.h b/examples/tools/customtypesending/window.h index a4e7ec2302..60479c9443 100644 --- a/examples/tools/customtypesending/window.h +++ b/examples/tools/customtypesending/window.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/echoplugin/echowindow/echointerface.h b/examples/tools/echoplugin/echowindow/echointerface.h index 885dd63848..60236eca44 100644 --- a/examples/tools/echoplugin/echowindow/echointerface.h +++ b/examples/tools/echoplugin/echowindow/echointerface.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/echoplugin/echowindow/echowindow.cpp b/examples/tools/echoplugin/echowindow/echowindow.cpp index 75e9f161b1..aa45b5221d 100644 --- a/examples/tools/echoplugin/echowindow/echowindow.cpp +++ b/examples/tools/echoplugin/echowindow/echowindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/echoplugin/echowindow/echowindow.h b/examples/tools/echoplugin/echowindow/echowindow.h index dc1ebdb685..249824f70b 100644 --- a/examples/tools/echoplugin/echowindow/echowindow.h +++ b/examples/tools/echoplugin/echowindow/echowindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/echoplugin/echowindow/main.cpp b/examples/tools/echoplugin/echowindow/main.cpp index c4659d8813..e8a9c15861 100644 --- a/examples/tools/echoplugin/echowindow/main.cpp +++ b/examples/tools/echoplugin/echowindow/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/echoplugin/plugin/echoplugin.cpp b/examples/tools/echoplugin/plugin/echoplugin.cpp index daa95aa63c..648488fb53 100644 --- a/examples/tools/echoplugin/plugin/echoplugin.cpp +++ b/examples/tools/echoplugin/plugin/echoplugin.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/echoplugin/plugin/echoplugin.h b/examples/tools/echoplugin/plugin/echoplugin.h index dca889c5f2..daeec9e7a5 100644 --- a/examples/tools/echoplugin/plugin/echoplugin.h +++ b/examples/tools/echoplugin/plugin/echoplugin.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/i18n/languagechooser.cpp b/examples/tools/i18n/languagechooser.cpp index 1c03453793..9874430457 100644 --- a/examples/tools/i18n/languagechooser.cpp +++ b/examples/tools/i18n/languagechooser.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/i18n/languagechooser.h b/examples/tools/i18n/languagechooser.h index 15378df7f3..b13a0c149a 100644 --- a/examples/tools/i18n/languagechooser.h +++ b/examples/tools/i18n/languagechooser.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/i18n/main.cpp b/examples/tools/i18n/main.cpp index ebc7a2bb27..7b4b63557e 100644 --- a/examples/tools/i18n/main.cpp +++ b/examples/tools/i18n/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/i18n/mainwindow.cpp b/examples/tools/i18n/mainwindow.cpp index 34fd99d868..ef0d33837a 100644 --- a/examples/tools/i18n/mainwindow.cpp +++ b/examples/tools/i18n/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/i18n/mainwindow.h b/examples/tools/i18n/mainwindow.h index dff0767742..eb3c6b91a5 100644 --- a/examples/tools/i18n/mainwindow.h +++ b/examples/tools/i18n/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/inputpanel/main.cpp b/examples/tools/inputpanel/main.cpp index 9d0c350faa..649d87cb15 100644 --- a/examples/tools/inputpanel/main.cpp +++ b/examples/tools/inputpanel/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/inputpanel/myinputpanel.cpp b/examples/tools/inputpanel/myinputpanel.cpp index c58d27d790..f806c97720 100644 --- a/examples/tools/inputpanel/myinputpanel.cpp +++ b/examples/tools/inputpanel/myinputpanel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/inputpanel/myinputpanel.h b/examples/tools/inputpanel/myinputpanel.h index 0d11e9c038..30d0ae6ab7 100644 --- a/examples/tools/inputpanel/myinputpanel.h +++ b/examples/tools/inputpanel/myinputpanel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/inputpanel/myinputpanelcontext.cpp b/examples/tools/inputpanel/myinputpanelcontext.cpp index a09964ab9e..79e8cc5b3b 100644 --- a/examples/tools/inputpanel/myinputpanelcontext.cpp +++ b/examples/tools/inputpanel/myinputpanelcontext.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/inputpanel/myinputpanelcontext.h b/examples/tools/inputpanel/myinputpanelcontext.h index e69a496040..c672e10aab 100644 --- a/examples/tools/inputpanel/myinputpanelcontext.h +++ b/examples/tools/inputpanel/myinputpanelcontext.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/plugandpaint/interfaces.h b/examples/tools/plugandpaint/interfaces.h index 785f3a1610..709fee509a 100644 --- a/examples/tools/plugandpaint/interfaces.h +++ b/examples/tools/plugandpaint/interfaces.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/plugandpaint/main.cpp b/examples/tools/plugandpaint/main.cpp index f5ae1da83f..e3a4efa02b 100644 --- a/examples/tools/plugandpaint/main.cpp +++ b/examples/tools/plugandpaint/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/plugandpaint/mainwindow.cpp b/examples/tools/plugandpaint/mainwindow.cpp index 292cae1fe7..fcd0507fee 100644 --- a/examples/tools/plugandpaint/mainwindow.cpp +++ b/examples/tools/plugandpaint/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/plugandpaint/mainwindow.h b/examples/tools/plugandpaint/mainwindow.h index 526e3d5005..88c2f10ac1 100644 --- a/examples/tools/plugandpaint/mainwindow.h +++ b/examples/tools/plugandpaint/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/plugandpaint/paintarea.cpp b/examples/tools/plugandpaint/paintarea.cpp index f6ace44ea5..ed01f80347 100644 --- a/examples/tools/plugandpaint/paintarea.cpp +++ b/examples/tools/plugandpaint/paintarea.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/plugandpaint/paintarea.h b/examples/tools/plugandpaint/paintarea.h index d1185b287c..552d923853 100644 --- a/examples/tools/plugandpaint/paintarea.h +++ b/examples/tools/plugandpaint/paintarea.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/plugandpaint/plugindialog.cpp b/examples/tools/plugandpaint/plugindialog.cpp index 66a51ee8ae..7c01d2507c 100644 --- a/examples/tools/plugandpaint/plugindialog.cpp +++ b/examples/tools/plugandpaint/plugindialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/plugandpaint/plugindialog.h b/examples/tools/plugandpaint/plugindialog.h index 36e79f5bf5..9c4f202921 100644 --- a/examples/tools/plugandpaint/plugindialog.h +++ b/examples/tools/plugandpaint/plugindialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/plugandpaintplugins/basictools/basictoolsplugin.cpp b/examples/tools/plugandpaintplugins/basictools/basictoolsplugin.cpp index 3e0af26efa..3b4592a5df 100644 --- a/examples/tools/plugandpaintplugins/basictools/basictoolsplugin.cpp +++ b/examples/tools/plugandpaintplugins/basictools/basictoolsplugin.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/plugandpaintplugins/basictools/basictoolsplugin.h b/examples/tools/plugandpaintplugins/basictools/basictoolsplugin.h index 79bcc5a088..f5611275d8 100644 --- a/examples/tools/plugandpaintplugins/basictools/basictoolsplugin.h +++ b/examples/tools/plugandpaintplugins/basictools/basictoolsplugin.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/plugandpaintplugins/extrafilters/extrafiltersplugin.cpp b/examples/tools/plugandpaintplugins/extrafilters/extrafiltersplugin.cpp index e58fde2205..d6cf3d4c68 100644 --- a/examples/tools/plugandpaintplugins/extrafilters/extrafiltersplugin.cpp +++ b/examples/tools/plugandpaintplugins/extrafilters/extrafiltersplugin.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/plugandpaintplugins/extrafilters/extrafiltersplugin.h b/examples/tools/plugandpaintplugins/extrafilters/extrafiltersplugin.h index db5679f016..4b4cd857d4 100644 --- a/examples/tools/plugandpaintplugins/extrafilters/extrafiltersplugin.h +++ b/examples/tools/plugandpaintplugins/extrafilters/extrafiltersplugin.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/regexp/main.cpp b/examples/tools/regexp/main.cpp index fe3fda64f0..207c3c4ab1 100644 --- a/examples/tools/regexp/main.cpp +++ b/examples/tools/regexp/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/regexp/regexpdialog.cpp b/examples/tools/regexp/regexpdialog.cpp index b9468bd49f..7fe163f012 100644 --- a/examples/tools/regexp/regexpdialog.cpp +++ b/examples/tools/regexp/regexpdialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/regexp/regexpdialog.h b/examples/tools/regexp/regexpdialog.h index c157668cd1..85635cb114 100644 --- a/examples/tools/regexp/regexpdialog.h +++ b/examples/tools/regexp/regexpdialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/settingseditor/locationdialog.cpp b/examples/tools/settingseditor/locationdialog.cpp index dcf190363a..b10b721c94 100644 --- a/examples/tools/settingseditor/locationdialog.cpp +++ b/examples/tools/settingseditor/locationdialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/settingseditor/locationdialog.h b/examples/tools/settingseditor/locationdialog.h index a8a20e460f..20aef3fc76 100644 --- a/examples/tools/settingseditor/locationdialog.h +++ b/examples/tools/settingseditor/locationdialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/settingseditor/main.cpp b/examples/tools/settingseditor/main.cpp index 923c1f8514..18ff180690 100644 --- a/examples/tools/settingseditor/main.cpp +++ b/examples/tools/settingseditor/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/settingseditor/mainwindow.cpp b/examples/tools/settingseditor/mainwindow.cpp index fc389cd009..06287db335 100644 --- a/examples/tools/settingseditor/mainwindow.cpp +++ b/examples/tools/settingseditor/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/settingseditor/mainwindow.h b/examples/tools/settingseditor/mainwindow.h index 6d997fa759..bfd276f9bb 100644 --- a/examples/tools/settingseditor/mainwindow.h +++ b/examples/tools/settingseditor/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/settingseditor/settingstree.cpp b/examples/tools/settingseditor/settingstree.cpp index 892cb30590..664ff28908 100644 --- a/examples/tools/settingseditor/settingstree.cpp +++ b/examples/tools/settingseditor/settingstree.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/settingseditor/settingstree.h b/examples/tools/settingseditor/settingstree.h index 63deb2a294..1d929ceed7 100644 --- a/examples/tools/settingseditor/settingstree.h +++ b/examples/tools/settingseditor/settingstree.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/settingseditor/variantdelegate.cpp b/examples/tools/settingseditor/variantdelegate.cpp index e4b532f9fe..e64ac791e3 100644 --- a/examples/tools/settingseditor/variantdelegate.cpp +++ b/examples/tools/settingseditor/variantdelegate.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/settingseditor/variantdelegate.h b/examples/tools/settingseditor/variantdelegate.h index abd4d93b8f..350e2311ae 100644 --- a/examples/tools/settingseditor/variantdelegate.h +++ b/examples/tools/settingseditor/variantdelegate.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/styleplugin/plugin/simplestyle.cpp b/examples/tools/styleplugin/plugin/simplestyle.cpp index d897f3a39b..e2fb8cf4fc 100644 --- a/examples/tools/styleplugin/plugin/simplestyle.cpp +++ b/examples/tools/styleplugin/plugin/simplestyle.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/styleplugin/plugin/simplestyle.h b/examples/tools/styleplugin/plugin/simplestyle.h index 1d4d9d84ae..a855399377 100644 --- a/examples/tools/styleplugin/plugin/simplestyle.h +++ b/examples/tools/styleplugin/plugin/simplestyle.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/styleplugin/plugin/simplestyleplugin.cpp b/examples/tools/styleplugin/plugin/simplestyleplugin.cpp index d5acd08206..fc7b73f919 100644 --- a/examples/tools/styleplugin/plugin/simplestyleplugin.cpp +++ b/examples/tools/styleplugin/plugin/simplestyleplugin.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/styleplugin/plugin/simplestyleplugin.h b/examples/tools/styleplugin/plugin/simplestyleplugin.h index 8a26cf6012..3ae73cdb29 100644 --- a/examples/tools/styleplugin/plugin/simplestyleplugin.h +++ b/examples/tools/styleplugin/plugin/simplestyleplugin.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/styleplugin/stylewindow/main.cpp b/examples/tools/styleplugin/stylewindow/main.cpp index da6e218000..3baa02ff86 100644 --- a/examples/tools/styleplugin/stylewindow/main.cpp +++ b/examples/tools/styleplugin/stylewindow/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/styleplugin/stylewindow/stylewindow.cpp b/examples/tools/styleplugin/stylewindow/stylewindow.cpp index 3a4da98494..5e2f4ceab3 100644 --- a/examples/tools/styleplugin/stylewindow/stylewindow.cpp +++ b/examples/tools/styleplugin/stylewindow/stylewindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/styleplugin/stylewindow/stylewindow.h b/examples/tools/styleplugin/stylewindow/stylewindow.h index aed21c77cc..bba1467ee5 100644 --- a/examples/tools/styleplugin/stylewindow/stylewindow.h +++ b/examples/tools/styleplugin/stylewindow/stylewindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/treemodelcompleter/main.cpp b/examples/tools/treemodelcompleter/main.cpp index 6c53f171d6..61d8f34206 100644 --- a/examples/tools/treemodelcompleter/main.cpp +++ b/examples/tools/treemodelcompleter/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/treemodelcompleter/mainwindow.cpp b/examples/tools/treemodelcompleter/mainwindow.cpp index 6d8c7aec80..4aafae445e 100644 --- a/examples/tools/treemodelcompleter/mainwindow.cpp +++ b/examples/tools/treemodelcompleter/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/treemodelcompleter/mainwindow.h b/examples/tools/treemodelcompleter/mainwindow.h index a6bbf472fb..02fd043c38 100644 --- a/examples/tools/treemodelcompleter/mainwindow.h +++ b/examples/tools/treemodelcompleter/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/treemodelcompleter/treemodelcompleter.cpp b/examples/tools/treemodelcompleter/treemodelcompleter.cpp index bd4cd223db..359cbc6675 100644 --- a/examples/tools/treemodelcompleter/treemodelcompleter.cpp +++ b/examples/tools/treemodelcompleter/treemodelcompleter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/treemodelcompleter/treemodelcompleter.h b/examples/tools/treemodelcompleter/treemodelcompleter.h index df79f8f700..d1182b3885 100644 --- a/examples/tools/treemodelcompleter/treemodelcompleter.h +++ b/examples/tools/treemodelcompleter/treemodelcompleter.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/undo/commands.cpp b/examples/tools/undo/commands.cpp index e688cad602..adb69cbbc3 100644 --- a/examples/tools/undo/commands.cpp +++ b/examples/tools/undo/commands.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/undo/commands.h b/examples/tools/undo/commands.h index ca7bd2b307..899d01daed 100644 --- a/examples/tools/undo/commands.h +++ b/examples/tools/undo/commands.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/undo/document.cpp b/examples/tools/undo/document.cpp index e143f98061..8c04701df2 100644 --- a/examples/tools/undo/document.cpp +++ b/examples/tools/undo/document.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/undo/document.h b/examples/tools/undo/document.h index b0eda92d41..22de77166a 100644 --- a/examples/tools/undo/document.h +++ b/examples/tools/undo/document.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/undo/main.cpp b/examples/tools/undo/main.cpp index a1bb49533a..ddab6fdbec 100644 --- a/examples/tools/undo/main.cpp +++ b/examples/tools/undo/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/undo/mainwindow.cpp b/examples/tools/undo/mainwindow.cpp index fb16606686..896fcec706 100644 --- a/examples/tools/undo/mainwindow.cpp +++ b/examples/tools/undo/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/undo/mainwindow.h b/examples/tools/undo/mainwindow.h index 4500c6d68d..7aebed0e56 100644 --- a/examples/tools/undo/mainwindow.h +++ b/examples/tools/undo/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/undoframework/commands.cpp b/examples/tools/undoframework/commands.cpp index 03f8b98d74..6ce7fe2c80 100644 --- a/examples/tools/undoframework/commands.cpp +++ b/examples/tools/undoframework/commands.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/undoframework/commands.h b/examples/tools/undoframework/commands.h index a4e4ab9549..d2cd50c5b6 100644 --- a/examples/tools/undoframework/commands.h +++ b/examples/tools/undoframework/commands.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/undoframework/diagramitem.cpp b/examples/tools/undoframework/diagramitem.cpp index 815c8dd69e..2a367904ff 100644 --- a/examples/tools/undoframework/diagramitem.cpp +++ b/examples/tools/undoframework/diagramitem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/undoframework/diagramitem.h b/examples/tools/undoframework/diagramitem.h index 9ca3c0a399..04ea2cf07c 100644 --- a/examples/tools/undoframework/diagramitem.h +++ b/examples/tools/undoframework/diagramitem.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/undoframework/diagramscene.cpp b/examples/tools/undoframework/diagramscene.cpp index c60ccc915b..af22849e80 100644 --- a/examples/tools/undoframework/diagramscene.cpp +++ b/examples/tools/undoframework/diagramscene.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/undoframework/diagramscene.h b/examples/tools/undoframework/diagramscene.h index 6ee50fb337..76e14798a9 100644 --- a/examples/tools/undoframework/diagramscene.h +++ b/examples/tools/undoframework/diagramscene.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/undoframework/main.cpp b/examples/tools/undoframework/main.cpp index 385311cb1d..e056e6fe23 100644 --- a/examples/tools/undoframework/main.cpp +++ b/examples/tools/undoframework/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/undoframework/mainwindow.cpp b/examples/tools/undoframework/mainwindow.cpp index 52a2cffac3..aac08f4c29 100644 --- a/examples/tools/undoframework/mainwindow.cpp +++ b/examples/tools/undoframework/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tools/undoframework/mainwindow.h b/examples/tools/undoframework/mainwindow.h index c21ffa0a5e..4169b11b68 100644 --- a/examples/tools/undoframework/mainwindow.h +++ b/examples/tools/undoframework/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/touch/dials/main.cpp b/examples/touch/dials/main.cpp index f361984b31..e5545ca533 100644 --- a/examples/touch/dials/main.cpp +++ b/examples/touch/dials/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/touch/fingerpaint/main.cpp b/examples/touch/fingerpaint/main.cpp index e50c13b230..859b47c348 100644 --- a/examples/touch/fingerpaint/main.cpp +++ b/examples/touch/fingerpaint/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/touch/fingerpaint/mainwindow.cpp b/examples/touch/fingerpaint/mainwindow.cpp index 8388522432..8dd8e44ba6 100644 --- a/examples/touch/fingerpaint/mainwindow.cpp +++ b/examples/touch/fingerpaint/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/touch/fingerpaint/mainwindow.h b/examples/touch/fingerpaint/mainwindow.h index cd08e223d7..830507a195 100644 --- a/examples/touch/fingerpaint/mainwindow.h +++ b/examples/touch/fingerpaint/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/touch/fingerpaint/scribblearea.cpp b/examples/touch/fingerpaint/scribblearea.cpp index a83a9f3f1d..e9b07a36df 100644 --- a/examples/touch/fingerpaint/scribblearea.cpp +++ b/examples/touch/fingerpaint/scribblearea.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/touch/fingerpaint/scribblearea.h b/examples/touch/fingerpaint/scribblearea.h index e698be4f2d..69b81f52c9 100644 --- a/examples/touch/fingerpaint/scribblearea.h +++ b/examples/touch/fingerpaint/scribblearea.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/touch/knobs/knob.cpp b/examples/touch/knobs/knob.cpp index 031c0e10da..6a80dbec67 100644 --- a/examples/touch/knobs/knob.cpp +++ b/examples/touch/knobs/knob.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/touch/knobs/knob.h b/examples/touch/knobs/knob.h index 863df532f5..861b763ca3 100644 --- a/examples/touch/knobs/knob.h +++ b/examples/touch/knobs/knob.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/touch/knobs/main.cpp b/examples/touch/knobs/main.cpp index 8ffa81944a..6c073af69d 100644 --- a/examples/touch/knobs/main.cpp +++ b/examples/touch/knobs/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/touch/pinchzoom/graphicsview.cpp b/examples/touch/pinchzoom/graphicsview.cpp index 8c30857b64..5fc217b1fb 100644 --- a/examples/touch/pinchzoom/graphicsview.cpp +++ b/examples/touch/pinchzoom/graphicsview.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/touch/pinchzoom/graphicsview.h b/examples/touch/pinchzoom/graphicsview.h index 3f227f4fc6..31e947bd7e 100644 --- a/examples/touch/pinchzoom/graphicsview.h +++ b/examples/touch/pinchzoom/graphicsview.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/touch/pinchzoom/main.cpp b/examples/touch/pinchzoom/main.cpp index bf8528c1e4..c6d8363dba 100644 --- a/examples/touch/pinchzoom/main.cpp +++ b/examples/touch/pinchzoom/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/touch/pinchzoom/mouse.cpp b/examples/touch/pinchzoom/mouse.cpp index 74ff462f78..1abc03a8a6 100644 --- a/examples/touch/pinchzoom/mouse.cpp +++ b/examples/touch/pinchzoom/mouse.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/touch/pinchzoom/mouse.h b/examples/touch/pinchzoom/mouse.h index 3a392bdb6e..4d9c140138 100644 --- a/examples/touch/pinchzoom/mouse.h +++ b/examples/touch/pinchzoom/mouse.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook-fr/part1/addressbook.cpp b/examples/tutorials/addressbook-fr/part1/addressbook.cpp index 372aa43ed0..34cbb6ffa1 100644 --- a/examples/tutorials/addressbook-fr/part1/addressbook.cpp +++ b/examples/tutorials/addressbook-fr/part1/addressbook.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook-fr/part1/addressbook.h b/examples/tutorials/addressbook-fr/part1/addressbook.h index 90b9b0ed48..7bc525dd75 100644 --- a/examples/tutorials/addressbook-fr/part1/addressbook.h +++ b/examples/tutorials/addressbook-fr/part1/addressbook.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook-fr/part1/main.cpp b/examples/tutorials/addressbook-fr/part1/main.cpp index a17c894a4b..5ef2a510b7 100644 --- a/examples/tutorials/addressbook-fr/part1/main.cpp +++ b/examples/tutorials/addressbook-fr/part1/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook-fr/part2/addressbook.cpp b/examples/tutorials/addressbook-fr/part2/addressbook.cpp index 04d4b2c693..2315dc52e0 100644 --- a/examples/tutorials/addressbook-fr/part2/addressbook.cpp +++ b/examples/tutorials/addressbook-fr/part2/addressbook.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook-fr/part2/addressbook.h b/examples/tutorials/addressbook-fr/part2/addressbook.h index 9f9b2b0b91..9e1938c744 100644 --- a/examples/tutorials/addressbook-fr/part2/addressbook.h +++ b/examples/tutorials/addressbook-fr/part2/addressbook.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook-fr/part2/main.cpp b/examples/tutorials/addressbook-fr/part2/main.cpp index a17c894a4b..5ef2a510b7 100644 --- a/examples/tutorials/addressbook-fr/part2/main.cpp +++ b/examples/tutorials/addressbook-fr/part2/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook-fr/part3/addressbook.cpp b/examples/tutorials/addressbook-fr/part3/addressbook.cpp index ee57b19b08..b594c8daa5 100644 --- a/examples/tutorials/addressbook-fr/part3/addressbook.cpp +++ b/examples/tutorials/addressbook-fr/part3/addressbook.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook-fr/part3/addressbook.h b/examples/tutorials/addressbook-fr/part3/addressbook.h index 192a5aef46..5d208af0eb 100644 --- a/examples/tutorials/addressbook-fr/part3/addressbook.h +++ b/examples/tutorials/addressbook-fr/part3/addressbook.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook-fr/part3/main.cpp b/examples/tutorials/addressbook-fr/part3/main.cpp index 15991677c2..a97c279b64 100644 --- a/examples/tutorials/addressbook-fr/part3/main.cpp +++ b/examples/tutorials/addressbook-fr/part3/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook-fr/part4/addressbook.cpp b/examples/tutorials/addressbook-fr/part4/addressbook.cpp index 047bc6e05c..1ef7396fe8 100644 --- a/examples/tutorials/addressbook-fr/part4/addressbook.cpp +++ b/examples/tutorials/addressbook-fr/part4/addressbook.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook-fr/part4/addressbook.h b/examples/tutorials/addressbook-fr/part4/addressbook.h index 4d653d1fad..6cfe3d2cce 100644 --- a/examples/tutorials/addressbook-fr/part4/addressbook.h +++ b/examples/tutorials/addressbook-fr/part4/addressbook.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook-fr/part4/main.cpp b/examples/tutorials/addressbook-fr/part4/main.cpp index 15991677c2..a97c279b64 100644 --- a/examples/tutorials/addressbook-fr/part4/main.cpp +++ b/examples/tutorials/addressbook-fr/part4/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook-fr/part5/addressbook.cpp b/examples/tutorials/addressbook-fr/part5/addressbook.cpp index 3f381766c6..b7739f7c58 100644 --- a/examples/tutorials/addressbook-fr/part5/addressbook.cpp +++ b/examples/tutorials/addressbook-fr/part5/addressbook.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook-fr/part5/addressbook.h b/examples/tutorials/addressbook-fr/part5/addressbook.h index e33f63273c..7bdea0af5f 100644 --- a/examples/tutorials/addressbook-fr/part5/addressbook.h +++ b/examples/tutorials/addressbook-fr/part5/addressbook.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook-fr/part5/finddialog.cpp b/examples/tutorials/addressbook-fr/part5/finddialog.cpp index 5bba3afd94..fa2c6a8683 100644 --- a/examples/tutorials/addressbook-fr/part5/finddialog.cpp +++ b/examples/tutorials/addressbook-fr/part5/finddialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook-fr/part5/finddialog.h b/examples/tutorials/addressbook-fr/part5/finddialog.h index 1c154885b2..59c369818c 100644 --- a/examples/tutorials/addressbook-fr/part5/finddialog.h +++ b/examples/tutorials/addressbook-fr/part5/finddialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook-fr/part5/main.cpp b/examples/tutorials/addressbook-fr/part5/main.cpp index 15991677c2..a97c279b64 100644 --- a/examples/tutorials/addressbook-fr/part5/main.cpp +++ b/examples/tutorials/addressbook-fr/part5/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook-fr/part6/addressbook.cpp b/examples/tutorials/addressbook-fr/part6/addressbook.cpp index 354b482742..0e9b5ff8e9 100644 --- a/examples/tutorials/addressbook-fr/part6/addressbook.cpp +++ b/examples/tutorials/addressbook-fr/part6/addressbook.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook-fr/part6/addressbook.h b/examples/tutorials/addressbook-fr/part6/addressbook.h index abdc6bc8e2..f1a5c48976 100644 --- a/examples/tutorials/addressbook-fr/part6/addressbook.h +++ b/examples/tutorials/addressbook-fr/part6/addressbook.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook-fr/part6/finddialog.cpp b/examples/tutorials/addressbook-fr/part6/finddialog.cpp index 86d4df9227..bdbae59107 100644 --- a/examples/tutorials/addressbook-fr/part6/finddialog.cpp +++ b/examples/tutorials/addressbook-fr/part6/finddialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook-fr/part6/finddialog.h b/examples/tutorials/addressbook-fr/part6/finddialog.h index 607a4fefc6..3b845edcb4 100644 --- a/examples/tutorials/addressbook-fr/part6/finddialog.h +++ b/examples/tutorials/addressbook-fr/part6/finddialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook-fr/part6/main.cpp b/examples/tutorials/addressbook-fr/part6/main.cpp index 15991677c2..a97c279b64 100644 --- a/examples/tutorials/addressbook-fr/part6/main.cpp +++ b/examples/tutorials/addressbook-fr/part6/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook-fr/part7/addressbook.cpp b/examples/tutorials/addressbook-fr/part7/addressbook.cpp index 73ec3dcf23..4e97296832 100644 --- a/examples/tutorials/addressbook-fr/part7/addressbook.cpp +++ b/examples/tutorials/addressbook-fr/part7/addressbook.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook-fr/part7/addressbook.h b/examples/tutorials/addressbook-fr/part7/addressbook.h index 3ab4be53fa..34daca70ec 100644 --- a/examples/tutorials/addressbook-fr/part7/addressbook.h +++ b/examples/tutorials/addressbook-fr/part7/addressbook.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook-fr/part7/finddialog.cpp b/examples/tutorials/addressbook-fr/part7/finddialog.cpp index 86d4df9227..bdbae59107 100644 --- a/examples/tutorials/addressbook-fr/part7/finddialog.cpp +++ b/examples/tutorials/addressbook-fr/part7/finddialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook-fr/part7/finddialog.h b/examples/tutorials/addressbook-fr/part7/finddialog.h index 607a4fefc6..3b845edcb4 100644 --- a/examples/tutorials/addressbook-fr/part7/finddialog.h +++ b/examples/tutorials/addressbook-fr/part7/finddialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook-fr/part7/main.cpp b/examples/tutorials/addressbook-fr/part7/main.cpp index 15991677c2..a97c279b64 100644 --- a/examples/tutorials/addressbook-fr/part7/main.cpp +++ b/examples/tutorials/addressbook-fr/part7/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook/part1/addressbook.cpp b/examples/tutorials/addressbook/part1/addressbook.cpp index 372aa43ed0..34cbb6ffa1 100644 --- a/examples/tutorials/addressbook/part1/addressbook.cpp +++ b/examples/tutorials/addressbook/part1/addressbook.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook/part1/addressbook.h b/examples/tutorials/addressbook/part1/addressbook.h index 90b9b0ed48..7bc525dd75 100644 --- a/examples/tutorials/addressbook/part1/addressbook.h +++ b/examples/tutorials/addressbook/part1/addressbook.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook/part1/main.cpp b/examples/tutorials/addressbook/part1/main.cpp index a17c894a4b..5ef2a510b7 100644 --- a/examples/tutorials/addressbook/part1/main.cpp +++ b/examples/tutorials/addressbook/part1/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook/part2/addressbook.cpp b/examples/tutorials/addressbook/part2/addressbook.cpp index a7d50017c6..2cf44e0b1d 100644 --- a/examples/tutorials/addressbook/part2/addressbook.cpp +++ b/examples/tutorials/addressbook/part2/addressbook.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook/part2/addressbook.h b/examples/tutorials/addressbook/part2/addressbook.h index 9f9b2b0b91..9e1938c744 100644 --- a/examples/tutorials/addressbook/part2/addressbook.h +++ b/examples/tutorials/addressbook/part2/addressbook.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook/part2/main.cpp b/examples/tutorials/addressbook/part2/main.cpp index a17c894a4b..5ef2a510b7 100644 --- a/examples/tutorials/addressbook/part2/main.cpp +++ b/examples/tutorials/addressbook/part2/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook/part3/addressbook.cpp b/examples/tutorials/addressbook/part3/addressbook.cpp index b539c01776..b3daed2801 100644 --- a/examples/tutorials/addressbook/part3/addressbook.cpp +++ b/examples/tutorials/addressbook/part3/addressbook.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook/part3/addressbook.h b/examples/tutorials/addressbook/part3/addressbook.h index 192a5aef46..5d208af0eb 100644 --- a/examples/tutorials/addressbook/part3/addressbook.h +++ b/examples/tutorials/addressbook/part3/addressbook.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook/part3/main.cpp b/examples/tutorials/addressbook/part3/main.cpp index 15991677c2..a97c279b64 100644 --- a/examples/tutorials/addressbook/part3/main.cpp +++ b/examples/tutorials/addressbook/part3/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook/part4/addressbook.cpp b/examples/tutorials/addressbook/part4/addressbook.cpp index d82dda74c4..064cae9231 100644 --- a/examples/tutorials/addressbook/part4/addressbook.cpp +++ b/examples/tutorials/addressbook/part4/addressbook.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook/part4/addressbook.h b/examples/tutorials/addressbook/part4/addressbook.h index 4d653d1fad..6cfe3d2cce 100644 --- a/examples/tutorials/addressbook/part4/addressbook.h +++ b/examples/tutorials/addressbook/part4/addressbook.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook/part4/main.cpp b/examples/tutorials/addressbook/part4/main.cpp index 15991677c2..a97c279b64 100644 --- a/examples/tutorials/addressbook/part4/main.cpp +++ b/examples/tutorials/addressbook/part4/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook/part5/addressbook.cpp b/examples/tutorials/addressbook/part5/addressbook.cpp index 6342db3f8d..6fffe4072c 100644 --- a/examples/tutorials/addressbook/part5/addressbook.cpp +++ b/examples/tutorials/addressbook/part5/addressbook.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook/part5/addressbook.h b/examples/tutorials/addressbook/part5/addressbook.h index e33f63273c..7bdea0af5f 100644 --- a/examples/tutorials/addressbook/part5/addressbook.h +++ b/examples/tutorials/addressbook/part5/addressbook.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook/part5/finddialog.cpp b/examples/tutorials/addressbook/part5/finddialog.cpp index 5bba3afd94..fa2c6a8683 100644 --- a/examples/tutorials/addressbook/part5/finddialog.cpp +++ b/examples/tutorials/addressbook/part5/finddialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook/part5/finddialog.h b/examples/tutorials/addressbook/part5/finddialog.h index 1c154885b2..59c369818c 100644 --- a/examples/tutorials/addressbook/part5/finddialog.h +++ b/examples/tutorials/addressbook/part5/finddialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook/part5/main.cpp b/examples/tutorials/addressbook/part5/main.cpp index 15991677c2..a97c279b64 100644 --- a/examples/tutorials/addressbook/part5/main.cpp +++ b/examples/tutorials/addressbook/part5/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook/part6/addressbook.cpp b/examples/tutorials/addressbook/part6/addressbook.cpp index 20425d15c2..39106ab2da 100644 --- a/examples/tutorials/addressbook/part6/addressbook.cpp +++ b/examples/tutorials/addressbook/part6/addressbook.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook/part6/addressbook.h b/examples/tutorials/addressbook/part6/addressbook.h index abdc6bc8e2..f1a5c48976 100644 --- a/examples/tutorials/addressbook/part6/addressbook.h +++ b/examples/tutorials/addressbook/part6/addressbook.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook/part6/finddialog.cpp b/examples/tutorials/addressbook/part6/finddialog.cpp index 86d4df9227..bdbae59107 100644 --- a/examples/tutorials/addressbook/part6/finddialog.cpp +++ b/examples/tutorials/addressbook/part6/finddialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook/part6/finddialog.h b/examples/tutorials/addressbook/part6/finddialog.h index 607a4fefc6..3b845edcb4 100644 --- a/examples/tutorials/addressbook/part6/finddialog.h +++ b/examples/tutorials/addressbook/part6/finddialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook/part6/main.cpp b/examples/tutorials/addressbook/part6/main.cpp index 15991677c2..a97c279b64 100644 --- a/examples/tutorials/addressbook/part6/main.cpp +++ b/examples/tutorials/addressbook/part6/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook/part7/addressbook.cpp b/examples/tutorials/addressbook/part7/addressbook.cpp index 88847f2ea0..2bfc81a042 100644 --- a/examples/tutorials/addressbook/part7/addressbook.cpp +++ b/examples/tutorials/addressbook/part7/addressbook.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook/part7/addressbook.h b/examples/tutorials/addressbook/part7/addressbook.h index 3ab4be53fa..34daca70ec 100644 --- a/examples/tutorials/addressbook/part7/addressbook.h +++ b/examples/tutorials/addressbook/part7/addressbook.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook/part7/finddialog.cpp b/examples/tutorials/addressbook/part7/finddialog.cpp index 86d4df9227..bdbae59107 100644 --- a/examples/tutorials/addressbook/part7/finddialog.cpp +++ b/examples/tutorials/addressbook/part7/finddialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook/part7/finddialog.h b/examples/tutorials/addressbook/part7/finddialog.h index 607a4fefc6..3b845edcb4 100644 --- a/examples/tutorials/addressbook/part7/finddialog.h +++ b/examples/tutorials/addressbook/part7/finddialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/addressbook/part7/main.cpp b/examples/tutorials/addressbook/part7/main.cpp index 15991677c2..a97c279b64 100644 --- a/examples/tutorials/addressbook/part7/main.cpp +++ b/examples/tutorials/addressbook/part7/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/gettingStarted/gsQt/part1/main.cpp b/examples/tutorials/gettingStarted/gsQt/part1/main.cpp index 5f5ac7384b..d3e29b4205 100755 --- a/examples/tutorials/gettingStarted/gsQt/part1/main.cpp +++ b/examples/tutorials/gettingStarted/gsQt/part1/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/gettingStarted/gsQt/part2/main.cpp b/examples/tutorials/gettingStarted/gsQt/part2/main.cpp index c2b94a3d0c..e76be0f456 100755 --- a/examples/tutorials/gettingStarted/gsQt/part2/main.cpp +++ b/examples/tutorials/gettingStarted/gsQt/part2/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/gettingStarted/gsQt/part3/main.cpp b/examples/tutorials/gettingStarted/gsQt/part3/main.cpp index 00fb70a4ab..98091b0190 100755 --- a/examples/tutorials/gettingStarted/gsQt/part3/main.cpp +++ b/examples/tutorials/gettingStarted/gsQt/part3/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/gettingStarted/gsQt/part4/main.cpp b/examples/tutorials/gettingStarted/gsQt/part4/main.cpp index a8cefe5347..6bb95c9c3a 100755 --- a/examples/tutorials/gettingStarted/gsQt/part4/main.cpp +++ b/examples/tutorials/gettingStarted/gsQt/part4/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/gettingStarted/gsQt/part5/main.cpp b/examples/tutorials/gettingStarted/gsQt/part5/main.cpp index f25bbd02c1..71caf03b64 100755 --- a/examples/tutorials/gettingStarted/gsQt/part5/main.cpp +++ b/examples/tutorials/gettingStarted/gsQt/part5/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/modelview/1_readonly/main.cpp b/examples/tutorials/modelview/1_readonly/main.cpp index fb1b670896..37b541168e 100755 --- a/examples/tutorials/modelview/1_readonly/main.cpp +++ b/examples/tutorials/modelview/1_readonly/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/modelview/1_readonly/mymodel.cpp b/examples/tutorials/modelview/1_readonly/mymodel.cpp index 9b5bdd7df2..30a5af1e83 100755 --- a/examples/tutorials/modelview/1_readonly/mymodel.cpp +++ b/examples/tutorials/modelview/1_readonly/mymodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/modelview/1_readonly/mymodel.h b/examples/tutorials/modelview/1_readonly/mymodel.h index f60546897a..3bb69d8e6f 100755 --- a/examples/tutorials/modelview/1_readonly/mymodel.h +++ b/examples/tutorials/modelview/1_readonly/mymodel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/modelview/2_formatting/main.cpp b/examples/tutorials/modelview/2_formatting/main.cpp index fb1b670896..37b541168e 100755 --- a/examples/tutorials/modelview/2_formatting/main.cpp +++ b/examples/tutorials/modelview/2_formatting/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/modelview/2_formatting/mymodel.cpp b/examples/tutorials/modelview/2_formatting/mymodel.cpp index 8363af9252..8c713101cd 100755 --- a/examples/tutorials/modelview/2_formatting/mymodel.cpp +++ b/examples/tutorials/modelview/2_formatting/mymodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/modelview/2_formatting/mymodel.h b/examples/tutorials/modelview/2_formatting/mymodel.h index 7ad876c1bf..ea36923e19 100755 --- a/examples/tutorials/modelview/2_formatting/mymodel.h +++ b/examples/tutorials/modelview/2_formatting/mymodel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/modelview/3_changingmodel/main.cpp b/examples/tutorials/modelview/3_changingmodel/main.cpp index 424c1dc438..a11f74dddf 100755 --- a/examples/tutorials/modelview/3_changingmodel/main.cpp +++ b/examples/tutorials/modelview/3_changingmodel/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/modelview/3_changingmodel/mymodel.cpp b/examples/tutorials/modelview/3_changingmodel/mymodel.cpp index fa50005701..24798c0431 100755 --- a/examples/tutorials/modelview/3_changingmodel/mymodel.cpp +++ b/examples/tutorials/modelview/3_changingmodel/mymodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/modelview/3_changingmodel/mymodel.h b/examples/tutorials/modelview/3_changingmodel/mymodel.h index be59c59207..da03df25fe 100755 --- a/examples/tutorials/modelview/3_changingmodel/mymodel.h +++ b/examples/tutorials/modelview/3_changingmodel/mymodel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/modelview/4_headers/main.cpp b/examples/tutorials/modelview/4_headers/main.cpp index 9dadb071a7..e435b4a0f7 100755 --- a/examples/tutorials/modelview/4_headers/main.cpp +++ b/examples/tutorials/modelview/4_headers/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/modelview/4_headers/mymodel.cpp b/examples/tutorials/modelview/4_headers/mymodel.cpp index ee0e609228..f312bf19fb 100755 --- a/examples/tutorials/modelview/4_headers/mymodel.cpp +++ b/examples/tutorials/modelview/4_headers/mymodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/modelview/4_headers/mymodel.h b/examples/tutorials/modelview/4_headers/mymodel.h index 5a185d92e4..385d02a0d7 100755 --- a/examples/tutorials/modelview/4_headers/mymodel.h +++ b/examples/tutorials/modelview/4_headers/mymodel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/modelview/5_edit/main.cpp b/examples/tutorials/modelview/5_edit/main.cpp index 2a78dd09e9..3160aa2257 100755 --- a/examples/tutorials/modelview/5_edit/main.cpp +++ b/examples/tutorials/modelview/5_edit/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/modelview/5_edit/mainwindow.cpp b/examples/tutorials/modelview/5_edit/mainwindow.cpp index 4b7e59a290..6285ab9274 100755 --- a/examples/tutorials/modelview/5_edit/mainwindow.cpp +++ b/examples/tutorials/modelview/5_edit/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/modelview/5_edit/mainwindow.h b/examples/tutorials/modelview/5_edit/mainwindow.h index 7db37919e3..a76d76fa1c 100755 --- a/examples/tutorials/modelview/5_edit/mainwindow.h +++ b/examples/tutorials/modelview/5_edit/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/modelview/5_edit/mymodel.cpp b/examples/tutorials/modelview/5_edit/mymodel.cpp index e5d20949b3..32d4bad104 100755 --- a/examples/tutorials/modelview/5_edit/mymodel.cpp +++ b/examples/tutorials/modelview/5_edit/mymodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/modelview/5_edit/mymodel.h b/examples/tutorials/modelview/5_edit/mymodel.h index ecfd58ef6b..050bbf097a 100755 --- a/examples/tutorials/modelview/5_edit/mymodel.h +++ b/examples/tutorials/modelview/5_edit/mymodel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/modelview/6_treeview/main.cpp b/examples/tutorials/modelview/6_treeview/main.cpp index 2a78dd09e9..3160aa2257 100755 --- a/examples/tutorials/modelview/6_treeview/main.cpp +++ b/examples/tutorials/modelview/6_treeview/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/modelview/6_treeview/mainwindow.cpp b/examples/tutorials/modelview/6_treeview/mainwindow.cpp index 0fa8da0ec4..71ee7f29c8 100755 --- a/examples/tutorials/modelview/6_treeview/mainwindow.cpp +++ b/examples/tutorials/modelview/6_treeview/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/modelview/6_treeview/mainwindow.h b/examples/tutorials/modelview/6_treeview/mainwindow.h index 4e35a3ffc4..9dd9508651 100755 --- a/examples/tutorials/modelview/6_treeview/mainwindow.h +++ b/examples/tutorials/modelview/6_treeview/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/modelview/7_selections/main.cpp b/examples/tutorials/modelview/7_selections/main.cpp index 2a78dd09e9..3160aa2257 100755 --- a/examples/tutorials/modelview/7_selections/main.cpp +++ b/examples/tutorials/modelview/7_selections/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/modelview/7_selections/mainwindow.cpp b/examples/tutorials/modelview/7_selections/mainwindow.cpp index 3bd36d9df4..d0f678f4b9 100755 --- a/examples/tutorials/modelview/7_selections/mainwindow.cpp +++ b/examples/tutorials/modelview/7_selections/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/modelview/7_selections/mainwindow.h b/examples/tutorials/modelview/7_selections/mainwindow.h index e78befbbc0..ee938ffa93 100755 --- a/examples/tutorials/modelview/7_selections/mainwindow.h +++ b/examples/tutorials/modelview/7_selections/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/widgets/childwidget/main.cpp b/examples/tutorials/widgets/childwidget/main.cpp index 01e8b3f5d6..c1a23140aa 100644 --- a/examples/tutorials/widgets/childwidget/main.cpp +++ b/examples/tutorials/widgets/childwidget/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/widgets/nestedlayouts/main.cpp b/examples/tutorials/widgets/nestedlayouts/main.cpp index 6783b718a7..f8a3d3788a 100644 --- a/examples/tutorials/widgets/nestedlayouts/main.cpp +++ b/examples/tutorials/widgets/nestedlayouts/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/widgets/toplevel/main.cpp b/examples/tutorials/widgets/toplevel/main.cpp index 6b84037ab2..b6fd4a46da 100644 --- a/examples/tutorials/widgets/toplevel/main.cpp +++ b/examples/tutorials/widgets/toplevel/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/tutorials/widgets/windowlayout/main.cpp b/examples/tutorials/widgets/windowlayout/main.cpp index bb5ed125b5..d41a49f5d3 100644 --- a/examples/tutorials/widgets/windowlayout/main.cpp +++ b/examples/tutorials/widgets/windowlayout/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/_image_assets.htm b/examples/webkit/webkit-guide/_image_assets.htm index 5c3f3a076f..5640e2c3c4 100644 --- a/examples/webkit/webkit-guide/_image_assets.htm +++ b/examples/webkit/webkit-guide/_image_assets.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/anim_accord.htm b/examples/webkit/webkit-guide/anim_accord.htm index 9efd3b1a0e..9f2cf55ef3 100644 --- a/examples/webkit/webkit-guide/anim_accord.htm +++ b/examples/webkit/webkit-guide/anim_accord.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/anim_demo-rotate.htm b/examples/webkit/webkit-guide/anim_demo-rotate.htm index 299fd98327..5856e302d6 100644 --- a/examples/webkit/webkit-guide/anim_demo-rotate.htm +++ b/examples/webkit/webkit-guide/anim_demo-rotate.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/anim_demo-scale.htm b/examples/webkit/webkit-guide/anim_demo-scale.htm index e6f0f79c26..b1abf409d7 100644 --- a/examples/webkit/webkit-guide/anim_demo-scale.htm +++ b/examples/webkit/webkit-guide/anim_demo-scale.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/anim_demo-skew.htm b/examples/webkit/webkit-guide/anim_demo-skew.htm index c183f646d2..07c1ae3ef5 100644 --- a/examples/webkit/webkit-guide/anim_demo-skew.htm +++ b/examples/webkit/webkit-guide/anim_demo-skew.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/anim_gallery.htm b/examples/webkit/webkit-guide/anim_gallery.htm index 3bb7e07f2c..11a1141c2a 100644 --- a/examples/webkit/webkit-guide/anim_gallery.htm +++ b/examples/webkit/webkit-guide/anim_gallery.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/anim_panel.htm b/examples/webkit/webkit-guide/anim_panel.htm index 07ecd62177..04dabeef89 100644 --- a/examples/webkit/webkit-guide/anim_panel.htm +++ b/examples/webkit/webkit-guide/anim_panel.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/anim_pulse.htm b/examples/webkit/webkit-guide/anim_pulse.htm index 97666c997f..15a47db9b1 100644 --- a/examples/webkit/webkit-guide/anim_pulse.htm +++ b/examples/webkit/webkit-guide/anim_pulse.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/anim_skew.htm b/examples/webkit/webkit-guide/anim_skew.htm index 077fe17a5e..89e5983403 100644 --- a/examples/webkit/webkit-guide/anim_skew.htm +++ b/examples/webkit/webkit-guide/anim_skew.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/anim_slide1.htm b/examples/webkit/webkit-guide/anim_slide1.htm index 866cecc44b..949e041ea1 100644 --- a/examples/webkit/webkit-guide/anim_slide1.htm +++ b/examples/webkit/webkit-guide/anim_slide1.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/anim_slide2.htm b/examples/webkit/webkit-guide/anim_slide2.htm index 474de36d6f..0d11d9b9ca 100644 --- a/examples/webkit/webkit-guide/anim_slide2.htm +++ b/examples/webkit/webkit-guide/anim_slide2.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/anim_slide3.htm b/examples/webkit/webkit-guide/anim_slide3.htm index 0da926ea63..14ffdde283 100644 --- a/examples/webkit/webkit-guide/anim_slide3.htm +++ b/examples/webkit/webkit-guide/anim_slide3.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/anim_tabbedSkew.htm b/examples/webkit/webkit-guide/anim_tabbedSkew.htm index 387e0a7bb1..b648797c61 100644 --- a/examples/webkit/webkit-guide/anim_tabbedSkew.htm +++ b/examples/webkit/webkit-guide/anim_tabbedSkew.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/css/anim_accord.css b/examples/webkit/webkit-guide/css/anim_accord.css index c9c013affa..8d1f8d97d8 100755 --- a/examples/webkit/webkit-guide/css/anim_accord.css +++ b/examples/webkit/webkit-guide/css/anim_accord.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/anim_demo-rotate.css b/examples/webkit/webkit-guide/css/anim_demo-rotate.css index fa3bd0dee8..8043791011 100755 --- a/examples/webkit/webkit-guide/css/anim_demo-rotate.css +++ b/examples/webkit/webkit-guide/css/anim_demo-rotate.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/anim_demo-scale.css b/examples/webkit/webkit-guide/css/anim_demo-scale.css index 4af469a61e..30469222ee 100755 --- a/examples/webkit/webkit-guide/css/anim_demo-scale.css +++ b/examples/webkit/webkit-guide/css/anim_demo-scale.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/anim_demo-skew.css b/examples/webkit/webkit-guide/css/anim_demo-skew.css index 2d90bf9574..4c2843a7ba 100755 --- a/examples/webkit/webkit-guide/css/anim_demo-skew.css +++ b/examples/webkit/webkit-guide/css/anim_demo-skew.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/anim_gallery.css b/examples/webkit/webkit-guide/css/anim_gallery.css index fe14aa263c..cdab9f1b11 100755 --- a/examples/webkit/webkit-guide/css/anim_gallery.css +++ b/examples/webkit/webkit-guide/css/anim_gallery.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/anim_panel.css b/examples/webkit/webkit-guide/css/anim_panel.css index 87037c9a9e..9b57fa4b06 100755 --- a/examples/webkit/webkit-guide/css/anim_panel.css +++ b/examples/webkit/webkit-guide/css/anim_panel.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/anim_pulse.css b/examples/webkit/webkit-guide/css/anim_pulse.css index 4b850b9bc8..e376f3fafb 100755 --- a/examples/webkit/webkit-guide/css/anim_pulse.css +++ b/examples/webkit/webkit-guide/css/anim_pulse.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/anim_skew.css b/examples/webkit/webkit-guide/css/anim_skew.css index e44a633e96..5074feadac 100755 --- a/examples/webkit/webkit-guide/css/anim_skew.css +++ b/examples/webkit/webkit-guide/css/anim_skew.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/anim_slide.css b/examples/webkit/webkit-guide/css/anim_slide.css index 7997cc2c2b..e5a8831265 100755 --- a/examples/webkit/webkit-guide/css/anim_slide.css +++ b/examples/webkit/webkit-guide/css/anim_slide.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/anim_tabbedSkew.css b/examples/webkit/webkit-guide/css/anim_tabbedSkew.css index 1c03e48966..1809dc95d2 100755 --- a/examples/webkit/webkit-guide/css/anim_tabbedSkew.css +++ b/examples/webkit/webkit-guide/css/anim_tabbedSkew.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/css3_backgrounds.css b/examples/webkit/webkit-guide/css/css3_backgrounds.css index c2a3a300e0..e251758a26 100755 --- a/examples/webkit/webkit-guide/css/css3_backgrounds.css +++ b/examples/webkit/webkit-guide/css/css3_backgrounds.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/css3_border-img.css b/examples/webkit/webkit-guide/css/css3_border-img.css index 1293e2e27c..b5ce67a2e7 100755 --- a/examples/webkit/webkit-guide/css/css3_border-img.css +++ b/examples/webkit/webkit-guide/css/css3_border-img.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/css3_grad-radial.css b/examples/webkit/webkit-guide/css/css3_grad-radial.css index 7799153dbd..3278cca18e 100755 --- a/examples/webkit/webkit-guide/css/css3_grad-radial.css +++ b/examples/webkit/webkit-guide/css/css3_grad-radial.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/css3_gradientBack.css b/examples/webkit/webkit-guide/css/css3_gradientBack.css index 48f9d68633..c2dc65deba 100755 --- a/examples/webkit/webkit-guide/css/css3_gradientBack.css +++ b/examples/webkit/webkit-guide/css/css3_gradientBack.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/css3_gradientBackStop.css b/examples/webkit/webkit-guide/css/css3_gradientBackStop.css index 0fbaf526ef..5138d0312a 100755 --- a/examples/webkit/webkit-guide/css/css3_gradientBackStop.css +++ b/examples/webkit/webkit-guide/css/css3_gradientBackStop.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/css3_gradientButton.css b/examples/webkit/webkit-guide/css/css3_gradientButton.css index 6d0c9f77c8..f11265271a 100755 --- a/examples/webkit/webkit-guide/css/css3_gradientButton.css +++ b/examples/webkit/webkit-guide/css/css3_gradientButton.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/css3_mask-grad.css b/examples/webkit/webkit-guide/css/css3_mask-grad.css index 24f0b227a7..515904615a 100755 --- a/examples/webkit/webkit-guide/css/css3_mask-grad.css +++ b/examples/webkit/webkit-guide/css/css3_mask-grad.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/css3_mask-img.css b/examples/webkit/webkit-guide/css/css3_mask-img.css index 0203d814fc..f77527949c 100755 --- a/examples/webkit/webkit-guide/css/css3_mask-img.css +++ b/examples/webkit/webkit-guide/css/css3_mask-img.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/css3_multicol.css b/examples/webkit/webkit-guide/css/css3_multicol.css index 3c07f8b604..0ea9fd461d 100755 --- a/examples/webkit/webkit-guide/css/css3_multicol.css +++ b/examples/webkit/webkit-guide/css/css3_multicol.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/css3_reflect.css b/examples/webkit/webkit-guide/css/css3_reflect.css index 1f2e4542e8..1286b15c23 100755 --- a/examples/webkit/webkit-guide/css/css3_reflect.css +++ b/examples/webkit/webkit-guide/css/css3_reflect.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/css3_scroll.css b/examples/webkit/webkit-guide/css/css3_scroll.css index ae37c34d1e..85c4c3c19e 100755 --- a/examples/webkit/webkit-guide/css/css3_scroll.css +++ b/examples/webkit/webkit-guide/css/css3_scroll.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/css3_sel-nth.css b/examples/webkit/webkit-guide/css/css3_sel-nth.css index aa1e04b52a..24dc19f8cd 100755 --- a/examples/webkit/webkit-guide/css/css3_sel-nth.css +++ b/examples/webkit/webkit-guide/css/css3_sel-nth.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/css3_shadow.css b/examples/webkit/webkit-guide/css/css3_shadow.css index d2f3040a4a..c65c560075 100755 --- a/examples/webkit/webkit-guide/css/css3_shadow.css +++ b/examples/webkit/webkit-guide/css/css3_shadow.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/css3_shadowBlur.css b/examples/webkit/webkit-guide/css/css3_shadowBlur.css index f44892735d..bad17238e1 100755 --- a/examples/webkit/webkit-guide/css/css3_shadowBlur.css +++ b/examples/webkit/webkit-guide/css/css3_shadowBlur.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/css3_text-overflow.css b/examples/webkit/webkit-guide/css/css3_text-overflow.css index ba491c41ae..064bb14024 100755 --- a/examples/webkit/webkit-guide/css/css3_text-overflow.css +++ b/examples/webkit/webkit-guide/css/css3_text-overflow.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/css3_text-shadow.css b/examples/webkit/webkit-guide/css/css3_text-shadow.css index 9f06662c95..3f0b8fab96 100755 --- a/examples/webkit/webkit-guide/css/css3_text-shadow.css +++ b/examples/webkit/webkit-guide/css/css3_text-shadow.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/css3_text-stroke.css b/examples/webkit/webkit-guide/css/css3_text-stroke.css index 4116de8223..c005d77b6f 100755 --- a/examples/webkit/webkit-guide/css/css3_text-stroke.css +++ b/examples/webkit/webkit-guide/css/css3_text-stroke.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/form_tapper.css b/examples/webkit/webkit-guide/css/form_tapper.css index 75142b5b19..ee7ff6cb5e 100755 --- a/examples/webkit/webkit-guide/css/form_tapper.css +++ b/examples/webkit/webkit-guide/css/form_tapper.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/form_toggler.css b/examples/webkit/webkit-guide/css/form_toggler.css index 224053f834..e290ce1261 100755 --- a/examples/webkit/webkit-guide/css/form_toggler.css +++ b/examples/webkit/webkit-guide/css/form_toggler.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/layout_link-fmt.css b/examples/webkit/webkit-guide/css/layout_link-fmt.css index 5a31aa0736..f78ed0e46c 100755 --- a/examples/webkit/webkit-guide/css/layout_link-fmt.css +++ b/examples/webkit/webkit-guide/css/layout_link-fmt.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/layout_tbl-keyhole.css b/examples/webkit/webkit-guide/css/layout_tbl-keyhole.css index 1205822e6d..8362a0b4d8 100755 --- a/examples/webkit/webkit-guide/css/layout_tbl-keyhole.css +++ b/examples/webkit/webkit-guide/css/layout_tbl-keyhole.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/mob_condjs.css b/examples/webkit/webkit-guide/css/mob_condjs.css index 6e312926ec..f97ebbce42 100755 --- a/examples/webkit/webkit-guide/css/mob_condjs.css +++ b/examples/webkit/webkit-guide/css/mob_condjs.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/mob_mediaquery.css b/examples/webkit/webkit-guide/css/mob_mediaquery.css index bbd0fbcc88..04382461d1 100755 --- a/examples/webkit/webkit-guide/css/mob_mediaquery.css +++ b/examples/webkit/webkit-guide/css/mob_mediaquery.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/mobile.css b/examples/webkit/webkit-guide/css/mobile.css index 5b9332c3ce..68623f05af 100755 --- a/examples/webkit/webkit-guide/css/mobile.css +++ b/examples/webkit/webkit-guide/css/mobile.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/mq_desktop.css b/examples/webkit/webkit-guide/css/mq_desktop.css index 32d49bfa63..3fc1f37b31 100755 --- a/examples/webkit/webkit-guide/css/mq_desktop.css +++ b/examples/webkit/webkit-guide/css/mq_desktop.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/mq_mobile.css b/examples/webkit/webkit-guide/css/mq_mobile.css index f1e87f67ce..6eaa3e9083 100755 --- a/examples/webkit/webkit-guide/css/mq_mobile.css +++ b/examples/webkit/webkit-guide/css/mq_mobile.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/mq_touch.css b/examples/webkit/webkit-guide/css/mq_touch.css index 3d2a5b6cd5..61a387ca80 100755 --- a/examples/webkit/webkit-guide/css/mq_touch.css +++ b/examples/webkit/webkit-guide/css/mq_touch.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/mqlayout_desktop.css b/examples/webkit/webkit-guide/css/mqlayout_desktop.css index 0875732145..78f8b52e46 100755 --- a/examples/webkit/webkit-guide/css/mqlayout_desktop.css +++ b/examples/webkit/webkit-guide/css/mqlayout_desktop.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/mqlayout_mobile.css b/examples/webkit/webkit-guide/css/mqlayout_mobile.css index dcd4943749..37801c240e 100755 --- a/examples/webkit/webkit-guide/css/mqlayout_mobile.css +++ b/examples/webkit/webkit-guide/css/mqlayout_mobile.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/mqlayout_touch.css b/examples/webkit/webkit-guide/css/mqlayout_touch.css index 78ed1741c3..15081b5535 100755 --- a/examples/webkit/webkit-guide/css/mqlayout_touch.css +++ b/examples/webkit/webkit-guide/css/mqlayout_touch.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css/storage.css b/examples/webkit/webkit-guide/css/storage.css index a1f1a13921..9881708139 100755 --- a/examples/webkit/webkit-guide/css/storage.css +++ b/examples/webkit/webkit-guide/css/storage.css @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/css3_backgrounds.htm b/examples/webkit/webkit-guide/css3_backgrounds.htm index 0739830125..f1f9306f4f 100644 --- a/examples/webkit/webkit-guide/css3_backgrounds.htm +++ b/examples/webkit/webkit-guide/css3_backgrounds.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/css3_border-img.htm b/examples/webkit/webkit-guide/css3_border-img.htm index b991104f86..b0522ac81f 100644 --- a/examples/webkit/webkit-guide/css3_border-img.htm +++ b/examples/webkit/webkit-guide/css3_border-img.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/css3_grad-radial.htm b/examples/webkit/webkit-guide/css3_grad-radial.htm index 3bbb7f0be1..70598287b7 100644 --- a/examples/webkit/webkit-guide/css3_grad-radial.htm +++ b/examples/webkit/webkit-guide/css3_grad-radial.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/css3_gradientBack.htm b/examples/webkit/webkit-guide/css3_gradientBack.htm index 1d025cf730..c8b46f3385 100644 --- a/examples/webkit/webkit-guide/css3_gradientBack.htm +++ b/examples/webkit/webkit-guide/css3_gradientBack.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/css3_gradientBackStop.htm b/examples/webkit/webkit-guide/css3_gradientBackStop.htm index 4558fe3466..f62548954f 100644 --- a/examples/webkit/webkit-guide/css3_gradientBackStop.htm +++ b/examples/webkit/webkit-guide/css3_gradientBackStop.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/css3_gradientButton.htm b/examples/webkit/webkit-guide/css3_gradientButton.htm index c765e45590..031b0201a3 100644 --- a/examples/webkit/webkit-guide/css3_gradientButton.htm +++ b/examples/webkit/webkit-guide/css3_gradientButton.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/css3_mask-grad.htm b/examples/webkit/webkit-guide/css3_mask-grad.htm index 9014e5d5d9..7a8523786a 100644 --- a/examples/webkit/webkit-guide/css3_mask-grad.htm +++ b/examples/webkit/webkit-guide/css3_mask-grad.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/css3_mask-img.htm b/examples/webkit/webkit-guide/css3_mask-img.htm index c102e96a1a..dd11220394 100644 --- a/examples/webkit/webkit-guide/css3_mask-img.htm +++ b/examples/webkit/webkit-guide/css3_mask-img.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/css3_multicol.htm b/examples/webkit/webkit-guide/css3_multicol.htm index 4b3fb6a792..04e4672be7 100644 --- a/examples/webkit/webkit-guide/css3_multicol.htm +++ b/examples/webkit/webkit-guide/css3_multicol.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/css3_reflect.htm b/examples/webkit/webkit-guide/css3_reflect.htm index 97e6ee20ce..950f741091 100644 --- a/examples/webkit/webkit-guide/css3_reflect.htm +++ b/examples/webkit/webkit-guide/css3_reflect.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/css3_scroll.htm b/examples/webkit/webkit-guide/css3_scroll.htm index c2d3ea7b08..472b1bb363 100644 --- a/examples/webkit/webkit-guide/css3_scroll.htm +++ b/examples/webkit/webkit-guide/css3_scroll.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/css3_sel-nth.htm b/examples/webkit/webkit-guide/css3_sel-nth.htm index 29f0605d05..16731736ab 100644 --- a/examples/webkit/webkit-guide/css3_sel-nth.htm +++ b/examples/webkit/webkit-guide/css3_sel-nth.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/css3_shadow.htm b/examples/webkit/webkit-guide/css3_shadow.htm index 7028047983..1321cbf920 100644 --- a/examples/webkit/webkit-guide/css3_shadow.htm +++ b/examples/webkit/webkit-guide/css3_shadow.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/css3_text-overflow.htm b/examples/webkit/webkit-guide/css3_text-overflow.htm index d56ac778b6..52984c84a2 100644 --- a/examples/webkit/webkit-guide/css3_text-overflow.htm +++ b/examples/webkit/webkit-guide/css3_text-overflow.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/css3_text-shadow.htm b/examples/webkit/webkit-guide/css3_text-shadow.htm index 60e2d22471..714e884094 100644 --- a/examples/webkit/webkit-guide/css3_text-shadow.htm +++ b/examples/webkit/webkit-guide/css3_text-shadow.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/css3_text-stroke.htm b/examples/webkit/webkit-guide/css3_text-stroke.htm index 25dfb1c4aa..851bfef63b 100644 --- a/examples/webkit/webkit-guide/css3_text-stroke.htm +++ b/examples/webkit/webkit-guide/css3_text-stroke.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/form_tapper.htm b/examples/webkit/webkit-guide/form_tapper.htm index 94751dc9a3..e90ffadbc2 100644 --- a/examples/webkit/webkit-guide/form_tapper.htm +++ b/examples/webkit/webkit-guide/form_tapper.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/form_toggler.htm b/examples/webkit/webkit-guide/form_toggler.htm index f4b170253e..597b75a2e9 100644 --- a/examples/webkit/webkit-guide/form_toggler.htm +++ b/examples/webkit/webkit-guide/form_toggler.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/js/anim_accord.js b/examples/webkit/webkit-guide/js/anim_accord.js index 8d58a18c7e..7d4a0ffad8 100755 --- a/examples/webkit/webkit-guide/js/anim_accord.js +++ b/examples/webkit/webkit-guide/js/anim_accord.js @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/js/anim_gallery.js b/examples/webkit/webkit-guide/js/anim_gallery.js index 3e00bc6f30..d853b0b0fe 100755 --- a/examples/webkit/webkit-guide/js/anim_gallery.js +++ b/examples/webkit/webkit-guide/js/anim_gallery.js @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/js/anim_panel.js b/examples/webkit/webkit-guide/js/anim_panel.js index 365210d84a..f4795da2a0 100755 --- a/examples/webkit/webkit-guide/js/anim_panel.js +++ b/examples/webkit/webkit-guide/js/anim_panel.js @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/js/anim_skew.js b/examples/webkit/webkit-guide/js/anim_skew.js index 1a80a6d7a8..7b412b32fa 100755 --- a/examples/webkit/webkit-guide/js/anim_skew.js +++ b/examples/webkit/webkit-guide/js/anim_skew.js @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/js/css3_backgrounds.js b/examples/webkit/webkit-guide/js/css3_backgrounds.js index 0c834d1dc8..f591bae032 100755 --- a/examples/webkit/webkit-guide/js/css3_backgrounds.js +++ b/examples/webkit/webkit-guide/js/css3_backgrounds.js @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/js/css3_border-img.js b/examples/webkit/webkit-guide/js/css3_border-img.js index b440afbfb5..b3d075c960 100755 --- a/examples/webkit/webkit-guide/js/css3_border-img.js +++ b/examples/webkit/webkit-guide/js/css3_border-img.js @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/js/css3_grad-radial.js b/examples/webkit/webkit-guide/js/css3_grad-radial.js index 46601e4d69..63377375ea 100755 --- a/examples/webkit/webkit-guide/js/css3_grad-radial.js +++ b/examples/webkit/webkit-guide/js/css3_grad-radial.js @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/js/css3_mask-grad.js b/examples/webkit/webkit-guide/js/css3_mask-grad.js index 5d516aa93c..987934458e 100755 --- a/examples/webkit/webkit-guide/js/css3_mask-grad.js +++ b/examples/webkit/webkit-guide/js/css3_mask-grad.js @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/js/css3_mask-img.js b/examples/webkit/webkit-guide/js/css3_mask-img.js index b440afbfb5..b3d075c960 100755 --- a/examples/webkit/webkit-guide/js/css3_mask-img.js +++ b/examples/webkit/webkit-guide/js/css3_mask-img.js @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/js/css3_text-overflow.js b/examples/webkit/webkit-guide/js/css3_text-overflow.js index 1a87cb3c83..a84496f5c2 100755 --- a/examples/webkit/webkit-guide/js/css3_text-overflow.js +++ b/examples/webkit/webkit-guide/js/css3_text-overflow.js @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/js/form_tapper.js b/examples/webkit/webkit-guide/js/form_tapper.js index bb0c9dca19..e9bf7cfd65 100755 --- a/examples/webkit/webkit-guide/js/form_tapper.js +++ b/examples/webkit/webkit-guide/js/form_tapper.js @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/js/mob_condjs.js b/examples/webkit/webkit-guide/js/mob_condjs.js index 1ba445e4b2..c79e040b2c 100755 --- a/examples/webkit/webkit-guide/js/mob_condjs.js +++ b/examples/webkit/webkit-guide/js/mob_condjs.js @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/js/mobile.js b/examples/webkit/webkit-guide/js/mobile.js index 880d6e45bc..5054786f49 100755 --- a/examples/webkit/webkit-guide/js/mobile.js +++ b/examples/webkit/webkit-guide/js/mobile.js @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/js/storage.js b/examples/webkit/webkit-guide/js/storage.js index 62dca84808..1bfc21e2ea 100755 --- a/examples/webkit/webkit-guide/js/storage.js +++ b/examples/webkit/webkit-guide/js/storage.js @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/webkit/webkit-guide/layout_link-fmt.htm b/examples/webkit/webkit-guide/layout_link-fmt.htm index 436d97c1f9..2bef2c4525 100644 --- a/examples/webkit/webkit-guide/layout_link-fmt.htm +++ b/examples/webkit/webkit-guide/layout_link-fmt.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/layout_tbl-keyhole.htm b/examples/webkit/webkit-guide/layout_tbl-keyhole.htm index 73d332d0c6..56e6f87f64 100644 --- a/examples/webkit/webkit-guide/layout_tbl-keyhole.htm +++ b/examples/webkit/webkit-guide/layout_tbl-keyhole.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/mob_condjs.htm b/examples/webkit/webkit-guide/mob_condjs.htm index 710a3710fb..657f6d62a6 100644 --- a/examples/webkit/webkit-guide/mob_condjs.htm +++ b/examples/webkit/webkit-guide/mob_condjs.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/mob_layout.htm b/examples/webkit/webkit-guide/mob_layout.htm index cad6f6c635..dea52e2a02 100644 --- a/examples/webkit/webkit-guide/mob_layout.htm +++ b/examples/webkit/webkit-guide/mob_layout.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). All +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/mob_mediaquery.htm b/examples/webkit/webkit-guide/mob_mediaquery.htm index 3b0e3b4e9c..c7b9794b0f 100644 --- a/examples/webkit/webkit-guide/mob_mediaquery.htm +++ b/examples/webkit/webkit-guide/mob_mediaquery.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/webkit/webkit-guide/storage.htm b/examples/webkit/webkit-guide/storage.htm index d154c81567..33eb4dfad9 100644 --- a/examples/webkit/webkit-guide/storage.htm +++ b/examples/webkit/webkit-guide/storage.htm @@ -2,7 +2,7 @@ This file is part of QtWebKit -Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. You may use this file under the terms of the BSD license as follows: diff --git a/examples/widgets/analogclock/analogclock.cpp b/examples/widgets/analogclock/analogclock.cpp index 606b962d4c..c9050b8a29 100644 --- a/examples/widgets/analogclock/analogclock.cpp +++ b/examples/widgets/analogclock/analogclock.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/analogclock/analogclock.h b/examples/widgets/analogclock/analogclock.h index 5da2780f62..f5a3ebc5c8 100644 --- a/examples/widgets/analogclock/analogclock.h +++ b/examples/widgets/analogclock/analogclock.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/analogclock/main.cpp b/examples/widgets/analogclock/main.cpp index 0f31f07573..6335a534f0 100644 --- a/examples/widgets/analogclock/main.cpp +++ b/examples/widgets/analogclock/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/applicationicon/main.cpp b/examples/widgets/applicationicon/main.cpp index 0573383620..1c6e08959d 100644 --- a/examples/widgets/applicationicon/main.cpp +++ b/examples/widgets/applicationicon/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/calculator/button.cpp b/examples/widgets/calculator/button.cpp index eaf6000893..0d2293ce04 100644 --- a/examples/widgets/calculator/button.cpp +++ b/examples/widgets/calculator/button.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/calculator/button.h b/examples/widgets/calculator/button.h index 385c1db7df..adfc0d74bc 100644 --- a/examples/widgets/calculator/button.h +++ b/examples/widgets/calculator/button.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/calculator/calculator.cpp b/examples/widgets/calculator/calculator.cpp index 1e5db2f0b2..b4431297a1 100644 --- a/examples/widgets/calculator/calculator.cpp +++ b/examples/widgets/calculator/calculator.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/calculator/calculator.h b/examples/widgets/calculator/calculator.h index 3548b85625..c637dbccbe 100644 --- a/examples/widgets/calculator/calculator.h +++ b/examples/widgets/calculator/calculator.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/calculator/main.cpp b/examples/widgets/calculator/main.cpp index 0038aa10dd..d51e8430d0 100644 --- a/examples/widgets/calculator/main.cpp +++ b/examples/widgets/calculator/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/calendarwidget/main.cpp b/examples/widgets/calendarwidget/main.cpp index 76565357ce..ab0b7b63e3 100644 --- a/examples/widgets/calendarwidget/main.cpp +++ b/examples/widgets/calendarwidget/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/calendarwidget/window.cpp b/examples/widgets/calendarwidget/window.cpp index 4df7242efa..8d21a0b75c 100644 --- a/examples/widgets/calendarwidget/window.cpp +++ b/examples/widgets/calendarwidget/window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/calendarwidget/window.h b/examples/widgets/calendarwidget/window.h index 55f2963189..2c18ebdf9b 100644 --- a/examples/widgets/calendarwidget/window.h +++ b/examples/widgets/calendarwidget/window.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/charactermap/characterwidget.cpp b/examples/widgets/charactermap/characterwidget.cpp index 7724421d3c..86b744f78b 100644 --- a/examples/widgets/charactermap/characterwidget.cpp +++ b/examples/widgets/charactermap/characterwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/charactermap/characterwidget.h b/examples/widgets/charactermap/characterwidget.h index 2ccb0aefed..4e531b6d84 100644 --- a/examples/widgets/charactermap/characterwidget.h +++ b/examples/widgets/charactermap/characterwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/charactermap/main.cpp b/examples/widgets/charactermap/main.cpp index 01c8adae53..bfe61dcd01 100644 --- a/examples/widgets/charactermap/main.cpp +++ b/examples/widgets/charactermap/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/charactermap/mainwindow.cpp b/examples/widgets/charactermap/mainwindow.cpp index 20c3bf407e..e2fa72fa3f 100644 --- a/examples/widgets/charactermap/mainwindow.cpp +++ b/examples/widgets/charactermap/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/charactermap/mainwindow.h b/examples/widgets/charactermap/mainwindow.h index 9c4e4f50ab..a77d6f1d4d 100644 --- a/examples/widgets/charactermap/mainwindow.h +++ b/examples/widgets/charactermap/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/codeeditor/codeeditor.cpp b/examples/widgets/codeeditor/codeeditor.cpp index 8676e48359..a7093f4698 100644 --- a/examples/widgets/codeeditor/codeeditor.cpp +++ b/examples/widgets/codeeditor/codeeditor.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/codeeditor/codeeditor.h b/examples/widgets/codeeditor/codeeditor.h index 84ce5c698a..aed1c4758e 100644 --- a/examples/widgets/codeeditor/codeeditor.h +++ b/examples/widgets/codeeditor/codeeditor.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/codeeditor/main.cpp b/examples/widgets/codeeditor/main.cpp index 1bce70e03f..cd8729f3d6 100644 --- a/examples/widgets/codeeditor/main.cpp +++ b/examples/widgets/codeeditor/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/digitalclock/digitalclock.cpp b/examples/widgets/digitalclock/digitalclock.cpp index bbedf0f858..7564026e90 100644 --- a/examples/widgets/digitalclock/digitalclock.cpp +++ b/examples/widgets/digitalclock/digitalclock.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/digitalclock/digitalclock.h b/examples/widgets/digitalclock/digitalclock.h index 3902b14869..4b4e9ff801 100644 --- a/examples/widgets/digitalclock/digitalclock.h +++ b/examples/widgets/digitalclock/digitalclock.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/digitalclock/main.cpp b/examples/widgets/digitalclock/main.cpp index c43162bade..1a865235a4 100644 --- a/examples/widgets/digitalclock/main.cpp +++ b/examples/widgets/digitalclock/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/elidedlabel/elidedlabel.cpp b/examples/widgets/elidedlabel/elidedlabel.cpp index fcee5c893a..1d00552bf9 100644 --- a/examples/widgets/elidedlabel/elidedlabel.cpp +++ b/examples/widgets/elidedlabel/elidedlabel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/elidedlabel/elidedlabel.h b/examples/widgets/elidedlabel/elidedlabel.h index 29fe46fd4c..807fcc469a 100644 --- a/examples/widgets/elidedlabel/elidedlabel.h +++ b/examples/widgets/elidedlabel/elidedlabel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/elidedlabel/main.cpp b/examples/widgets/elidedlabel/main.cpp index ee24d39a5a..666ee0cd59 100644 --- a/examples/widgets/elidedlabel/main.cpp +++ b/examples/widgets/elidedlabel/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/elidedlabel/testwidget.cpp b/examples/widgets/elidedlabel/testwidget.cpp index 72c5170d97..4cfe9628a5 100644 --- a/examples/widgets/elidedlabel/testwidget.cpp +++ b/examples/widgets/elidedlabel/testwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/elidedlabel/testwidget.h b/examples/widgets/elidedlabel/testwidget.h index 31c5f566cc..a71b510dbe 100644 --- a/examples/widgets/elidedlabel/testwidget.h +++ b/examples/widgets/elidedlabel/testwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/groupbox/main.cpp b/examples/widgets/groupbox/main.cpp index f2079f511b..218d30316c 100644 --- a/examples/widgets/groupbox/main.cpp +++ b/examples/widgets/groupbox/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/groupbox/window.cpp b/examples/widgets/groupbox/window.cpp index 82c042e40e..e135bd0a85 100644 --- a/examples/widgets/groupbox/window.cpp +++ b/examples/widgets/groupbox/window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/groupbox/window.h b/examples/widgets/groupbox/window.h index 1029d534c8..d4a9f3e53e 100644 --- a/examples/widgets/groupbox/window.h +++ b/examples/widgets/groupbox/window.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/icons/iconpreviewarea.cpp b/examples/widgets/icons/iconpreviewarea.cpp index 8ff82fcbfb..7a26ce5059 100644 --- a/examples/widgets/icons/iconpreviewarea.cpp +++ b/examples/widgets/icons/iconpreviewarea.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/icons/iconpreviewarea.h b/examples/widgets/icons/iconpreviewarea.h index def2b3b1de..204f213a79 100644 --- a/examples/widgets/icons/iconpreviewarea.h +++ b/examples/widgets/icons/iconpreviewarea.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/icons/iconsizespinbox.cpp b/examples/widgets/icons/iconsizespinbox.cpp index 3c6061a1f4..711ec641ee 100644 --- a/examples/widgets/icons/iconsizespinbox.cpp +++ b/examples/widgets/icons/iconsizespinbox.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/icons/iconsizespinbox.h b/examples/widgets/icons/iconsizespinbox.h index da6b9d3c7b..8adaf54103 100644 --- a/examples/widgets/icons/iconsizespinbox.h +++ b/examples/widgets/icons/iconsizespinbox.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/icons/imagedelegate.cpp b/examples/widgets/icons/imagedelegate.cpp index 20747eac1e..1c88f19429 100644 --- a/examples/widgets/icons/imagedelegate.cpp +++ b/examples/widgets/icons/imagedelegate.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/icons/imagedelegate.h b/examples/widgets/icons/imagedelegate.h index 979e12253c..1ffa920105 100644 --- a/examples/widgets/icons/imagedelegate.h +++ b/examples/widgets/icons/imagedelegate.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/icons/main.cpp b/examples/widgets/icons/main.cpp index 923c1f8514..18ff180690 100644 --- a/examples/widgets/icons/main.cpp +++ b/examples/widgets/icons/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/icons/mainwindow.cpp b/examples/widgets/icons/mainwindow.cpp index 91ce27646d..02ea8dc6bb 100644 --- a/examples/widgets/icons/mainwindow.cpp +++ b/examples/widgets/icons/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/icons/mainwindow.h b/examples/widgets/icons/mainwindow.h index 1d2eab01a6..2689b09bd2 100644 --- a/examples/widgets/icons/mainwindow.h +++ b/examples/widgets/icons/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/imageviewer/imageviewer.cpp b/examples/widgets/imageviewer/imageviewer.cpp index edee9ce00b..0f07e7e23a 100644 --- a/examples/widgets/imageviewer/imageviewer.cpp +++ b/examples/widgets/imageviewer/imageviewer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/imageviewer/imageviewer.h b/examples/widgets/imageviewer/imageviewer.h index 81ddf6c30a..c2e4b7c81a 100644 --- a/examples/widgets/imageviewer/imageviewer.h +++ b/examples/widgets/imageviewer/imageviewer.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/imageviewer/main.cpp b/examples/widgets/imageviewer/main.cpp index 55a362a622..b6c6877244 100644 --- a/examples/widgets/imageviewer/main.cpp +++ b/examples/widgets/imageviewer/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/lineedits/main.cpp b/examples/widgets/lineedits/main.cpp index f2079f511b..218d30316c 100644 --- a/examples/widgets/lineedits/main.cpp +++ b/examples/widgets/lineedits/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/lineedits/window.cpp b/examples/widgets/lineedits/window.cpp index ff6c0a3d8e..0183dc59d3 100644 --- a/examples/widgets/lineedits/window.cpp +++ b/examples/widgets/lineedits/window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/lineedits/window.h b/examples/widgets/lineedits/window.h index 6bda9d0f5a..b3f0c4b73c 100644 --- a/examples/widgets/lineedits/window.h +++ b/examples/widgets/lineedits/window.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/movie/main.cpp b/examples/widgets/movie/main.cpp index c686eec157..6b17eabd56 100644 --- a/examples/widgets/movie/main.cpp +++ b/examples/widgets/movie/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/movie/movieplayer.cpp b/examples/widgets/movie/movieplayer.cpp index e12d49763d..b53a8112bd 100644 --- a/examples/widgets/movie/movieplayer.cpp +++ b/examples/widgets/movie/movieplayer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/movie/movieplayer.h b/examples/widgets/movie/movieplayer.h index 415a2bebb5..ad9dd553fe 100644 --- a/examples/widgets/movie/movieplayer.h +++ b/examples/widgets/movie/movieplayer.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/orientation/main.cpp b/examples/widgets/orientation/main.cpp index 29e161d352..2abb59f224 100644 --- a/examples/widgets/orientation/main.cpp +++ b/examples/widgets/orientation/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/orientation/mainwindow.cpp b/examples/widgets/orientation/mainwindow.cpp index 74f1803261..ab20f6b67b 100644 --- a/examples/widgets/orientation/mainwindow.cpp +++ b/examples/widgets/orientation/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/orientation/mainwindow.h b/examples/widgets/orientation/mainwindow.h index 45907c31be..ad325704b1 100644 --- a/examples/widgets/orientation/mainwindow.h +++ b/examples/widgets/orientation/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/scribble/main.cpp b/examples/widgets/scribble/main.cpp index 01c8adae53..bfe61dcd01 100644 --- a/examples/widgets/scribble/main.cpp +++ b/examples/widgets/scribble/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/scribble/mainwindow.cpp b/examples/widgets/scribble/mainwindow.cpp index fb9d42ab31..29fb61b422 100644 --- a/examples/widgets/scribble/mainwindow.cpp +++ b/examples/widgets/scribble/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/scribble/mainwindow.h b/examples/widgets/scribble/mainwindow.h index 547d35f04f..40cee56df1 100644 --- a/examples/widgets/scribble/mainwindow.h +++ b/examples/widgets/scribble/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/scribble/scribblearea.cpp b/examples/widgets/scribble/scribblearea.cpp index 7e76d16eda..11271fdb47 100644 --- a/examples/widgets/scribble/scribblearea.cpp +++ b/examples/widgets/scribble/scribblearea.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/scribble/scribblearea.h b/examples/widgets/scribble/scribblearea.h index c93102df42..290a7fa404 100644 --- a/examples/widgets/scribble/scribblearea.h +++ b/examples/widgets/scribble/scribblearea.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/shapedclock/main.cpp b/examples/widgets/shapedclock/main.cpp index 9b7f951a48..e60d6fdf24 100644 --- a/examples/widgets/shapedclock/main.cpp +++ b/examples/widgets/shapedclock/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/shapedclock/shapedclock.cpp b/examples/widgets/shapedclock/shapedclock.cpp index 77cf685259..c7c43fc2bd 100644 --- a/examples/widgets/shapedclock/shapedclock.cpp +++ b/examples/widgets/shapedclock/shapedclock.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/shapedclock/shapedclock.h b/examples/widgets/shapedclock/shapedclock.h index b34d34c2e5..cad5f0cac1 100644 --- a/examples/widgets/shapedclock/shapedclock.h +++ b/examples/widgets/shapedclock/shapedclock.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/sliders/main.cpp b/examples/widgets/sliders/main.cpp index f2079f511b..218d30316c 100644 --- a/examples/widgets/sliders/main.cpp +++ b/examples/widgets/sliders/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/sliders/slidersgroup.cpp b/examples/widgets/sliders/slidersgroup.cpp index bf05cc1d87..7474e8bd8f 100644 --- a/examples/widgets/sliders/slidersgroup.cpp +++ b/examples/widgets/sliders/slidersgroup.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/sliders/slidersgroup.h b/examples/widgets/sliders/slidersgroup.h index dbfba22aea..8f89b09307 100644 --- a/examples/widgets/sliders/slidersgroup.h +++ b/examples/widgets/sliders/slidersgroup.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/sliders/window.cpp b/examples/widgets/sliders/window.cpp index 541279a84d..9c775e88ee 100644 --- a/examples/widgets/sliders/window.cpp +++ b/examples/widgets/sliders/window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/sliders/window.h b/examples/widgets/sliders/window.h index 3931d18ac2..cd747b2b46 100644 --- a/examples/widgets/sliders/window.h +++ b/examples/widgets/sliders/window.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/softkeys/main.cpp b/examples/widgets/softkeys/main.cpp index c23a3685d9..96cb208c63 100644 --- a/examples/widgets/softkeys/main.cpp +++ b/examples/widgets/softkeys/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/softkeys/softkeys.cpp b/examples/widgets/softkeys/softkeys.cpp index d3be9c6e7b..142c7dd85f 100644 --- a/examples/widgets/softkeys/softkeys.cpp +++ b/examples/widgets/softkeys/softkeys.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/softkeys/softkeys.h b/examples/widgets/softkeys/softkeys.h index 6e2b2665ea..f7a9187e72 100644 --- a/examples/widgets/softkeys/softkeys.h +++ b/examples/widgets/softkeys/softkeys.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/spinboxes/main.cpp b/examples/widgets/spinboxes/main.cpp index f2079f511b..218d30316c 100644 --- a/examples/widgets/spinboxes/main.cpp +++ b/examples/widgets/spinboxes/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/spinboxes/window.cpp b/examples/widgets/spinboxes/window.cpp index 9a3eb02e95..d3ff7b78d4 100644 --- a/examples/widgets/spinboxes/window.cpp +++ b/examples/widgets/spinboxes/window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/spinboxes/window.h b/examples/widgets/spinboxes/window.h index 41d75916eb..9cd35b236c 100644 --- a/examples/widgets/spinboxes/window.h +++ b/examples/widgets/spinboxes/window.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/styles/main.cpp b/examples/widgets/styles/main.cpp index 3d6d29c474..6086c363b7 100644 --- a/examples/widgets/styles/main.cpp +++ b/examples/widgets/styles/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/styles/norwegianwoodstyle.cpp b/examples/widgets/styles/norwegianwoodstyle.cpp index 637b9a3705..94161f4381 100644 --- a/examples/widgets/styles/norwegianwoodstyle.cpp +++ b/examples/widgets/styles/norwegianwoodstyle.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/styles/norwegianwoodstyle.h b/examples/widgets/styles/norwegianwoodstyle.h index cc77a406d6..5d8b5fc291 100644 --- a/examples/widgets/styles/norwegianwoodstyle.h +++ b/examples/widgets/styles/norwegianwoodstyle.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/styles/widgetgallery.cpp b/examples/widgets/styles/widgetgallery.cpp index 82b7e37296..30b69c63ed 100644 --- a/examples/widgets/styles/widgetgallery.cpp +++ b/examples/widgets/styles/widgetgallery.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/styles/widgetgallery.h b/examples/widgets/styles/widgetgallery.h index 31ccc6fb3e..d58896be5e 100644 --- a/examples/widgets/styles/widgetgallery.h +++ b/examples/widgets/styles/widgetgallery.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/stylesheet/main.cpp b/examples/widgets/stylesheet/main.cpp index 2c05ee950d..dbd91e73b8 100644 --- a/examples/widgets/stylesheet/main.cpp +++ b/examples/widgets/stylesheet/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/stylesheet/mainwindow.cpp b/examples/widgets/stylesheet/mainwindow.cpp index 221fbcc765..74096d372f 100644 --- a/examples/widgets/stylesheet/mainwindow.cpp +++ b/examples/widgets/stylesheet/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/stylesheet/mainwindow.h b/examples/widgets/stylesheet/mainwindow.h index 7430039594..673c43da6d 100644 --- a/examples/widgets/stylesheet/mainwindow.h +++ b/examples/widgets/stylesheet/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/stylesheet/stylesheeteditor.cpp b/examples/widgets/stylesheet/stylesheeteditor.cpp index 36d217cbb4..94da628fdf 100644 --- a/examples/widgets/stylesheet/stylesheeteditor.cpp +++ b/examples/widgets/stylesheet/stylesheeteditor.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/stylesheet/stylesheeteditor.h b/examples/widgets/stylesheet/stylesheeteditor.h index b2dfd431ed..ca42a852b6 100644 --- a/examples/widgets/stylesheet/stylesheeteditor.h +++ b/examples/widgets/stylesheet/stylesheeteditor.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/tablet/main.cpp b/examples/widgets/tablet/main.cpp index 40c41bfc9a..98f8791472 100644 --- a/examples/widgets/tablet/main.cpp +++ b/examples/widgets/tablet/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/tablet/mainwindow.cpp b/examples/widgets/tablet/mainwindow.cpp index ac2825bcd2..cb40198d3b 100644 --- a/examples/widgets/tablet/mainwindow.cpp +++ b/examples/widgets/tablet/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/tablet/mainwindow.h b/examples/widgets/tablet/mainwindow.h index 6d3a11af61..e92aebfaf9 100644 --- a/examples/widgets/tablet/mainwindow.h +++ b/examples/widgets/tablet/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/tablet/tabletapplication.cpp b/examples/widgets/tablet/tabletapplication.cpp index 2830ef80ab..79aafcb943 100644 --- a/examples/widgets/tablet/tabletapplication.cpp +++ b/examples/widgets/tablet/tabletapplication.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/tablet/tabletapplication.h b/examples/widgets/tablet/tabletapplication.h index 064c5af964..07edd3edd5 100644 --- a/examples/widgets/tablet/tabletapplication.h +++ b/examples/widgets/tablet/tabletapplication.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/tablet/tabletcanvas.cpp b/examples/widgets/tablet/tabletcanvas.cpp index 72f13b42ba..8bb9556c12 100644 --- a/examples/widgets/tablet/tabletcanvas.cpp +++ b/examples/widgets/tablet/tabletcanvas.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/tablet/tabletcanvas.h b/examples/widgets/tablet/tabletcanvas.h index 591a5f3f7d..c81478f8a8 100644 --- a/examples/widgets/tablet/tabletcanvas.h +++ b/examples/widgets/tablet/tabletcanvas.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/tetrix/main.cpp b/examples/widgets/tetrix/main.cpp index 6c30ae5cae..2fb0a99045 100644 --- a/examples/widgets/tetrix/main.cpp +++ b/examples/widgets/tetrix/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/tetrix/tetrixboard.cpp b/examples/widgets/tetrix/tetrixboard.cpp index efdd11f5d8..46858e3ee2 100644 --- a/examples/widgets/tetrix/tetrixboard.cpp +++ b/examples/widgets/tetrix/tetrixboard.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/tetrix/tetrixboard.h b/examples/widgets/tetrix/tetrixboard.h index 4c06734469..f842c0feef 100644 --- a/examples/widgets/tetrix/tetrixboard.h +++ b/examples/widgets/tetrix/tetrixboard.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/tetrix/tetrixpiece.cpp b/examples/widgets/tetrix/tetrixpiece.cpp index c06c904a01..49b5aaaace 100644 --- a/examples/widgets/tetrix/tetrixpiece.cpp +++ b/examples/widgets/tetrix/tetrixpiece.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/tetrix/tetrixpiece.h b/examples/widgets/tetrix/tetrixpiece.h index c28db43f8a..f162e9f4ba 100644 --- a/examples/widgets/tetrix/tetrixpiece.h +++ b/examples/widgets/tetrix/tetrixpiece.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/tetrix/tetrixwindow.cpp b/examples/widgets/tetrix/tetrixwindow.cpp index e637392521..d33830e883 100644 --- a/examples/widgets/tetrix/tetrixwindow.cpp +++ b/examples/widgets/tetrix/tetrixwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/tetrix/tetrixwindow.h b/examples/widgets/tetrix/tetrixwindow.h index 6b0ec7b4f6..10d16bac21 100644 --- a/examples/widgets/tetrix/tetrixwindow.h +++ b/examples/widgets/tetrix/tetrixwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/tooltips/main.cpp b/examples/widgets/tooltips/main.cpp index 893b65da86..e5326286f1 100644 --- a/examples/widgets/tooltips/main.cpp +++ b/examples/widgets/tooltips/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/tooltips/shapeitem.cpp b/examples/widgets/tooltips/shapeitem.cpp index 65dbfd16eb..6c319e4f0e 100644 --- a/examples/widgets/tooltips/shapeitem.cpp +++ b/examples/widgets/tooltips/shapeitem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/tooltips/shapeitem.h b/examples/widgets/tooltips/shapeitem.h index c79019abef..b75ebb9bef 100644 --- a/examples/widgets/tooltips/shapeitem.h +++ b/examples/widgets/tooltips/shapeitem.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/tooltips/sortingbox.cpp b/examples/widgets/tooltips/sortingbox.cpp index f5b45f1d7d..9d23669c97 100644 --- a/examples/widgets/tooltips/sortingbox.cpp +++ b/examples/widgets/tooltips/sortingbox.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/tooltips/sortingbox.h b/examples/widgets/tooltips/sortingbox.h index 0110a2310d..f7e8297f3b 100644 --- a/examples/widgets/tooltips/sortingbox.h +++ b/examples/widgets/tooltips/sortingbox.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/validators/ledwidget.cpp b/examples/widgets/validators/ledwidget.cpp index c63321ec63..a637e36645 100644 --- a/examples/widgets/validators/ledwidget.cpp +++ b/examples/widgets/validators/ledwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/validators/ledwidget.h b/examples/widgets/validators/ledwidget.h index 33c477dcbd..41033d7bb5 100644 --- a/examples/widgets/validators/ledwidget.h +++ b/examples/widgets/validators/ledwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/validators/localeselector.cpp b/examples/widgets/validators/localeselector.cpp index bcf5d91ba9..cfd711f669 100644 --- a/examples/widgets/validators/localeselector.cpp +++ b/examples/widgets/validators/localeselector.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/validators/localeselector.h b/examples/widgets/validators/localeselector.h index ea09224f75..5c3bbac8b1 100644 --- a/examples/widgets/validators/localeselector.h +++ b/examples/widgets/validators/localeselector.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/validators/main.cpp b/examples/widgets/validators/main.cpp index 5e5765e957..f8d5dec77b 100644 --- a/examples/widgets/validators/main.cpp +++ b/examples/widgets/validators/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/wiggly/dialog.cpp b/examples/widgets/wiggly/dialog.cpp index d2053d84ac..9db53445fe 100644 --- a/examples/widgets/wiggly/dialog.cpp +++ b/examples/widgets/wiggly/dialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/wiggly/dialog.h b/examples/widgets/wiggly/dialog.h index aa12a375fe..0d3ece7a89 100644 --- a/examples/widgets/wiggly/dialog.h +++ b/examples/widgets/wiggly/dialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/wiggly/main.cpp b/examples/widgets/wiggly/main.cpp index c64e352f47..c7f21f4b79 100644 --- a/examples/widgets/wiggly/main.cpp +++ b/examples/widgets/wiggly/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/wiggly/wigglywidget.cpp b/examples/widgets/wiggly/wigglywidget.cpp index b55efaa1fa..afd8ea96a6 100644 --- a/examples/widgets/wiggly/wigglywidget.cpp +++ b/examples/widgets/wiggly/wigglywidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/wiggly/wigglywidget.h b/examples/widgets/wiggly/wigglywidget.h index 7e8d8b5c39..26e17826fb 100644 --- a/examples/widgets/wiggly/wigglywidget.h +++ b/examples/widgets/wiggly/wigglywidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/windowflags/controllerwindow.cpp b/examples/widgets/windowflags/controllerwindow.cpp index b2b929842f..41505e8014 100644 --- a/examples/widgets/windowflags/controllerwindow.cpp +++ b/examples/widgets/windowflags/controllerwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/windowflags/controllerwindow.h b/examples/widgets/windowflags/controllerwindow.h index caa76987b1..853ec29a08 100644 --- a/examples/widgets/windowflags/controllerwindow.h +++ b/examples/widgets/windowflags/controllerwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/windowflags/main.cpp b/examples/widgets/windowflags/main.cpp index 8dd71ed0a5..2d7cef12c5 100644 --- a/examples/widgets/windowflags/main.cpp +++ b/examples/widgets/windowflags/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/windowflags/previewwindow.cpp b/examples/widgets/windowflags/previewwindow.cpp index 1cd74619e7..4b129ef0d6 100644 --- a/examples/widgets/windowflags/previewwindow.cpp +++ b/examples/widgets/windowflags/previewwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/widgets/windowflags/previewwindow.h b/examples/widgets/windowflags/previewwindow.h index 15c849aa48..cec6614a0c 100644 --- a/examples/widgets/windowflags/previewwindow.h +++ b/examples/widgets/windowflags/previewwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/xml/dombookmarks/main.cpp b/examples/xml/dombookmarks/main.cpp index d23af14af2..4f38a08938 100644 --- a/examples/xml/dombookmarks/main.cpp +++ b/examples/xml/dombookmarks/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/xml/dombookmarks/mainwindow.cpp b/examples/xml/dombookmarks/mainwindow.cpp index 0c3ceafc88..118bc96cf2 100644 --- a/examples/xml/dombookmarks/mainwindow.cpp +++ b/examples/xml/dombookmarks/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/xml/dombookmarks/mainwindow.h b/examples/xml/dombookmarks/mainwindow.h index 058f5cc221..f6911b36f1 100644 --- a/examples/xml/dombookmarks/mainwindow.h +++ b/examples/xml/dombookmarks/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/xml/dombookmarks/xbeltree.cpp b/examples/xml/dombookmarks/xbeltree.cpp index 67c85aca40..32fbab6e6e 100644 --- a/examples/xml/dombookmarks/xbeltree.cpp +++ b/examples/xml/dombookmarks/xbeltree.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/xml/dombookmarks/xbeltree.h b/examples/xml/dombookmarks/xbeltree.h index ad30de520c..74bee7deac 100644 --- a/examples/xml/dombookmarks/xbeltree.h +++ b/examples/xml/dombookmarks/xbeltree.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/xml/htmlinfo/main.cpp b/examples/xml/htmlinfo/main.cpp index 4e36b1c2cd..ef13609249 100644 --- a/examples/xml/htmlinfo/main.cpp +++ b/examples/xml/htmlinfo/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/xml/rsslisting/main.cpp b/examples/xml/rsslisting/main.cpp index a646c602db..7b0230f025 100644 --- a/examples/xml/rsslisting/main.cpp +++ b/examples/xml/rsslisting/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/xml/rsslisting/rsslisting.cpp b/examples/xml/rsslisting/rsslisting.cpp index 4fa160f9ed..bfc44bc67c 100644 --- a/examples/xml/rsslisting/rsslisting.cpp +++ b/examples/xml/rsslisting/rsslisting.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/xml/rsslisting/rsslisting.h b/examples/xml/rsslisting/rsslisting.h index 22d222e2b9..960d51cafd 100644 --- a/examples/xml/rsslisting/rsslisting.h +++ b/examples/xml/rsslisting/rsslisting.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/xml/saxbookmarks/main.cpp b/examples/xml/saxbookmarks/main.cpp index 71ce6aec0b..04717e79fd 100644 --- a/examples/xml/saxbookmarks/main.cpp +++ b/examples/xml/saxbookmarks/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/xml/saxbookmarks/mainwindow.cpp b/examples/xml/saxbookmarks/mainwindow.cpp index 0f65c1f71c..29b99437e0 100644 --- a/examples/xml/saxbookmarks/mainwindow.cpp +++ b/examples/xml/saxbookmarks/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/xml/saxbookmarks/mainwindow.h b/examples/xml/saxbookmarks/mainwindow.h index 3313d8f574..dc8a4d0a6f 100644 --- a/examples/xml/saxbookmarks/mainwindow.h +++ b/examples/xml/saxbookmarks/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/xml/saxbookmarks/xbelgenerator.cpp b/examples/xml/saxbookmarks/xbelgenerator.cpp index 7712d83d10..e5d7e4aa9f 100644 --- a/examples/xml/saxbookmarks/xbelgenerator.cpp +++ b/examples/xml/saxbookmarks/xbelgenerator.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/xml/saxbookmarks/xbelgenerator.h b/examples/xml/saxbookmarks/xbelgenerator.h index 84011a262f..cf17000381 100644 --- a/examples/xml/saxbookmarks/xbelgenerator.h +++ b/examples/xml/saxbookmarks/xbelgenerator.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/xml/saxbookmarks/xbelhandler.cpp b/examples/xml/saxbookmarks/xbelhandler.cpp index da65c2bf88..8266268fcd 100644 --- a/examples/xml/saxbookmarks/xbelhandler.cpp +++ b/examples/xml/saxbookmarks/xbelhandler.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/xml/saxbookmarks/xbelhandler.h b/examples/xml/saxbookmarks/xbelhandler.h index cee1bafe48..27c973b788 100644 --- a/examples/xml/saxbookmarks/xbelhandler.h +++ b/examples/xml/saxbookmarks/xbelhandler.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/xml/streambookmarks/main.cpp b/examples/xml/streambookmarks/main.cpp index c44e921e82..f0141e6bbd 100644 --- a/examples/xml/streambookmarks/main.cpp +++ b/examples/xml/streambookmarks/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/xml/streambookmarks/mainwindow.cpp b/examples/xml/streambookmarks/mainwindow.cpp index ed765995e7..85db5e84c1 100644 --- a/examples/xml/streambookmarks/mainwindow.cpp +++ b/examples/xml/streambookmarks/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/xml/streambookmarks/mainwindow.h b/examples/xml/streambookmarks/mainwindow.h index f27c4088bc..8eb5b00fc5 100644 --- a/examples/xml/streambookmarks/mainwindow.h +++ b/examples/xml/streambookmarks/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/xml/streambookmarks/xbelreader.cpp b/examples/xml/streambookmarks/xbelreader.cpp index 063243528b..30c783226d 100644 --- a/examples/xml/streambookmarks/xbelreader.cpp +++ b/examples/xml/streambookmarks/xbelreader.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/xml/streambookmarks/xbelreader.h b/examples/xml/streambookmarks/xbelreader.h index 1ca1190235..7807b54b67 100644 --- a/examples/xml/streambookmarks/xbelreader.h +++ b/examples/xml/streambookmarks/xbelreader.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/xml/streambookmarks/xbelwriter.cpp b/examples/xml/streambookmarks/xbelwriter.cpp index aa100d401e..43a391ceb7 100644 --- a/examples/xml/streambookmarks/xbelwriter.cpp +++ b/examples/xml/streambookmarks/xbelwriter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/xml/streambookmarks/xbelwriter.h b/examples/xml/streambookmarks/xbelwriter.h index 8160a87b52..c0ceaf24b6 100644 --- a/examples/xml/streambookmarks/xbelwriter.h +++ b/examples/xml/streambookmarks/xbelwriter.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/examples/xml/xmlstreamlint/main.cpp b/examples/xml/xmlstreamlint/main.cpp index 78f40f64fa..2e9d8973da 100644 --- a/examples/xml/xmlstreamlint/main.cpp +++ b/examples/xml/xmlstreamlint/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/header.BSD b/header.BSD index 105868ed07..6955c9ecc1 100644 --- a/header.BSD +++ b/header.BSD @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/header.FDL b/header.FDL index 6418fa2b58..238e22df51 100644 --- a/header.FDL +++ b/header.FDL @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/header.LGPL b/header.LGPL index 977ccaaa38..971b9a98f7 100644 --- a/header.LGPL +++ b/header.LGPL @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/header.LGPL-ONLY b/header.LGPL-ONLY index 4f16e90d97..ef11ac962e 100644 --- a/header.LGPL-ONLY +++ b/header.LGPL-ONLY @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/aix-g++-64/qplatformdefs.h b/mkspecs/aix-g++-64/qplatformdefs.h index 7e51e420a9..517d928867 100644 --- a/mkspecs/aix-g++-64/qplatformdefs.h +++ b/mkspecs/aix-g++-64/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/aix-g++/qplatformdefs.h b/mkspecs/aix-g++/qplatformdefs.h index 7e51e420a9..517d928867 100644 --- a/mkspecs/aix-g++/qplatformdefs.h +++ b/mkspecs/aix-g++/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/aix-xlc-64/qplatformdefs.h b/mkspecs/aix-xlc-64/qplatformdefs.h index 7e51e420a9..517d928867 100644 --- a/mkspecs/aix-xlc-64/qplatformdefs.h +++ b/mkspecs/aix-xlc-64/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/aix-xlc/qplatformdefs.h b/mkspecs/aix-xlc/qplatformdefs.h index 7e51e420a9..517d928867 100644 --- a/mkspecs/aix-xlc/qplatformdefs.h +++ b/mkspecs/aix-xlc/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/common/aix/qplatformdefs.h b/mkspecs/common/aix/qplatformdefs.h index b5fc02d985..317ca7a7c5 100644 --- a/mkspecs/common/aix/qplatformdefs.h +++ b/mkspecs/common/aix/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/common/c89/qplatformdefs.h b/mkspecs/common/c89/qplatformdefs.h index 8bd1c100c3..f6dda15d0a 100644 --- a/mkspecs/common/c89/qplatformdefs.h +++ b/mkspecs/common/c89/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/common/mac/qplatformdefs.h b/mkspecs/common/mac/qplatformdefs.h index 98bb014aed..b10ed54e9b 100644 --- a/mkspecs/common/mac/qplatformdefs.h +++ b/mkspecs/common/mac/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/common/posix/qplatformdefs.h b/mkspecs/common/posix/qplatformdefs.h index 6fac11b2b1..daecc008c3 100644 --- a/mkspecs/common/posix/qplatformdefs.h +++ b/mkspecs/common/posix/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/common/wince/qplatformdefs.h b/mkspecs/common/wince/qplatformdefs.h index 4bc947bac8..1733c34a64 100644 --- a/mkspecs/common/wince/qplatformdefs.h +++ b/mkspecs/common/wince/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/cygwin-g++/qplatformdefs.h b/mkspecs/cygwin-g++/qplatformdefs.h index 7219839d4c..254f54068f 100644 --- a/mkspecs/cygwin-g++/qplatformdefs.h +++ b/mkspecs/cygwin-g++/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/darwin-g++/qplatformdefs.h b/mkspecs/darwin-g++/qplatformdefs.h index 4aba62d8b7..bc92c3c548 100644 --- a/mkspecs/darwin-g++/qplatformdefs.h +++ b/mkspecs/darwin-g++/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/features/qt_targets.prf b/mkspecs/features/qt_targets.prf index af1a32bb02..ec15869b0f 100644 --- a/mkspecs/features/qt_targets.prf +++ b/mkspecs/features/qt_targets.prf @@ -1,4 +1,4 @@ QMAKE_TARGET_COMPANY = Nokia Corporation and/or its subsidiary(-ies) QMAKE_TARGET_PRODUCT = Qt4 QMAKE_TARGET_DESCRIPTION = C++ application development framework. -QMAKE_TARGET_COPYRIGHT = Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +QMAKE_TARGET_COPYRIGHT = Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). diff --git a/mkspecs/freebsd-g++/qplatformdefs.h b/mkspecs/freebsd-g++/qplatformdefs.h index f3c33a214e..6f6d9aa2ab 100644 --- a/mkspecs/freebsd-g++/qplatformdefs.h +++ b/mkspecs/freebsd-g++/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/freebsd-g++34/qplatformdefs.h b/mkspecs/freebsd-g++34/qplatformdefs.h index 695198777e..3f6b1f4272 100644 --- a/mkspecs/freebsd-g++34/qplatformdefs.h +++ b/mkspecs/freebsd-g++34/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/freebsd-g++40/qplatformdefs.h b/mkspecs/freebsd-g++40/qplatformdefs.h index 695198777e..3f6b1f4272 100644 --- a/mkspecs/freebsd-g++40/qplatformdefs.h +++ b/mkspecs/freebsd-g++40/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/freebsd-icc/qplatformdefs.h b/mkspecs/freebsd-icc/qplatformdefs.h index 695198777e..3f6b1f4272 100644 --- a/mkspecs/freebsd-icc/qplatformdefs.h +++ b/mkspecs/freebsd-icc/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/hpux-acc-64/qplatformdefs.h b/mkspecs/hpux-acc-64/qplatformdefs.h index 20f1f50b7f..c8ef9bd61d 100644 --- a/mkspecs/hpux-acc-64/qplatformdefs.h +++ b/mkspecs/hpux-acc-64/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/hpux-acc-o64/qplatformdefs.h b/mkspecs/hpux-acc-o64/qplatformdefs.h index 4d65f0d426..cf46eb3957 100644 --- a/mkspecs/hpux-acc-o64/qplatformdefs.h +++ b/mkspecs/hpux-acc-o64/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/hpux-acc/qplatformdefs.h b/mkspecs/hpux-acc/qplatformdefs.h index 8a44f7d772..8a0e5c61fa 100644 --- a/mkspecs/hpux-acc/qplatformdefs.h +++ b/mkspecs/hpux-acc/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/hpux-g++-64/qplatformdefs.h b/mkspecs/hpux-g++-64/qplatformdefs.h index c19964ea73..2e4a591a86 100644 --- a/mkspecs/hpux-g++-64/qplatformdefs.h +++ b/mkspecs/hpux-g++-64/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/hpux-g++/qplatformdefs.h b/mkspecs/hpux-g++/qplatformdefs.h index 9ae5461796..f1f665a81d 100644 --- a/mkspecs/hpux-g++/qplatformdefs.h +++ b/mkspecs/hpux-g++/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/hpuxi-acc-32/qplatformdefs.h b/mkspecs/hpuxi-acc-32/qplatformdefs.h index 2f67f0e86b..f59906935a 100644 --- a/mkspecs/hpuxi-acc-32/qplatformdefs.h +++ b/mkspecs/hpuxi-acc-32/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/hpuxi-acc-64/qplatformdefs.h b/mkspecs/hpuxi-acc-64/qplatformdefs.h index 2f67f0e86b..f59906935a 100644 --- a/mkspecs/hpuxi-acc-64/qplatformdefs.h +++ b/mkspecs/hpuxi-acc-64/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/hpuxi-g++-64/qplatformdefs.h b/mkspecs/hpuxi-g++-64/qplatformdefs.h index 4151ef0ffd..ab36a8c098 100644 --- a/mkspecs/hpuxi-g++-64/qplatformdefs.h +++ b/mkspecs/hpuxi-g++-64/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/hurd-g++/qplatformdefs.h b/mkspecs/hurd-g++/qplatformdefs.h index c85a722dff..1ee8800fb0 100644 --- a/mkspecs/hurd-g++/qplatformdefs.h +++ b/mkspecs/hurd-g++/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/irix-cc-64/qplatformdefs.h b/mkspecs/irix-cc-64/qplatformdefs.h index 4d55287c7a..fce2513474 100644 --- a/mkspecs/irix-cc-64/qplatformdefs.h +++ b/mkspecs/irix-cc-64/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/irix-cc/qplatformdefs.h b/mkspecs/irix-cc/qplatformdefs.h index 4d55287c7a..fce2513474 100644 --- a/mkspecs/irix-cc/qplatformdefs.h +++ b/mkspecs/irix-cc/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/irix-g++-64/qplatformdefs.h b/mkspecs/irix-g++-64/qplatformdefs.h index e1dd43671b..37417289f4 100644 --- a/mkspecs/irix-g++-64/qplatformdefs.h +++ b/mkspecs/irix-g++-64/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/irix-g++/qplatformdefs.h b/mkspecs/irix-g++/qplatformdefs.h index 41c668ea1d..af54fb1f3f 100644 --- a/mkspecs/irix-g++/qplatformdefs.h +++ b/mkspecs/irix-g++/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/linux-arm-gnueabi-g++/qplatformdefs.h b/mkspecs/linux-arm-gnueabi-g++/qplatformdefs.h index 533ef8b661..f63efdfbe1 100644 --- a/mkspecs/linux-arm-gnueabi-g++/qplatformdefs.h +++ b/mkspecs/linux-arm-gnueabi-g++/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/linux-cxx/qplatformdefs.h b/mkspecs/linux-cxx/qplatformdefs.h index 917cca4779..496032f3da 100644 --- a/mkspecs/linux-cxx/qplatformdefs.h +++ b/mkspecs/linux-cxx/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/linux-ecc-64/qplatformdefs.h b/mkspecs/linux-ecc-64/qplatformdefs.h index 917cca4779..496032f3da 100644 --- a/mkspecs/linux-ecc-64/qplatformdefs.h +++ b/mkspecs/linux-ecc-64/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/linux-g++-32/qplatformdefs.h b/mkspecs/linux-g++-32/qplatformdefs.h index 533ef8b661..f63efdfbe1 100644 --- a/mkspecs/linux-g++-32/qplatformdefs.h +++ b/mkspecs/linux-g++-32/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/linux-g++-64/qplatformdefs.h b/mkspecs/linux-g++-64/qplatformdefs.h index 533ef8b661..f63efdfbe1 100644 --- a/mkspecs/linux-g++-64/qplatformdefs.h +++ b/mkspecs/linux-g++-64/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/linux-g++-maemo/qplatformdefs.h b/mkspecs/linux-g++-maemo/qplatformdefs.h index 3d9a124394..416ce77c79 100644 --- a/mkspecs/linux-g++-maemo/qplatformdefs.h +++ b/mkspecs/linux-g++-maemo/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/linux-g++/qplatformdefs.h b/mkspecs/linux-g++/qplatformdefs.h index 07cab1db11..9e68978b34 100644 --- a/mkspecs/linux-g++/qplatformdefs.h +++ b/mkspecs/linux-g++/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/linux-icc-32/qplatformdefs.h b/mkspecs/linux-icc-32/qplatformdefs.h index 533ef8b661..f63efdfbe1 100644 --- a/mkspecs/linux-icc-32/qplatformdefs.h +++ b/mkspecs/linux-icc-32/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/linux-icc-64/qplatformdefs.h b/mkspecs/linux-icc-64/qplatformdefs.h index 533ef8b661..f63efdfbe1 100644 --- a/mkspecs/linux-icc-64/qplatformdefs.h +++ b/mkspecs/linux-icc-64/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/linux-icc/qplatformdefs.h b/mkspecs/linux-icc/qplatformdefs.h index 533ef8b661..f63efdfbe1 100644 --- a/mkspecs/linux-icc/qplatformdefs.h +++ b/mkspecs/linux-icc/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/linux-kcc/qplatformdefs.h b/mkspecs/linux-kcc/qplatformdefs.h index 68996996a7..9c5146b067 100644 --- a/mkspecs/linux-kcc/qplatformdefs.h +++ b/mkspecs/linux-kcc/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/linux-llvm/qplatformdefs.h b/mkspecs/linux-llvm/qplatformdefs.h index ca44938dcc..c189a51f83 100644 --- a/mkspecs/linux-llvm/qplatformdefs.h +++ b/mkspecs/linux-llvm/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/linux-lsb-g++/qplatformdefs.h b/mkspecs/linux-lsb-g++/qplatformdefs.h index 61bd18e9d5..eeb7062a8d 100644 --- a/mkspecs/linux-lsb-g++/qplatformdefs.h +++ b/mkspecs/linux-lsb-g++/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/linux-pgcc/qplatformdefs.h b/mkspecs/linux-pgcc/qplatformdefs.h index 917cca4779..496032f3da 100644 --- a/mkspecs/linux-pgcc/qplatformdefs.h +++ b/mkspecs/linux-pgcc/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/lynxos-g++/qplatformdefs.h b/mkspecs/lynxos-g++/qplatformdefs.h index 1e88227445..e3921f575a 100644 --- a/mkspecs/lynxos-g++/qplatformdefs.h +++ b/mkspecs/lynxos-g++/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/macx-g++/qplatformdefs.h b/mkspecs/macx-g++/qplatformdefs.h index 2bab72008a..cef8dde12e 100644 --- a/mkspecs/macx-g++/qplatformdefs.h +++ b/mkspecs/macx-g++/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/macx-g++40/qplatformdefs.h b/mkspecs/macx-g++40/qplatformdefs.h index 2bab72008a..cef8dde12e 100644 --- a/mkspecs/macx-g++40/qplatformdefs.h +++ b/mkspecs/macx-g++40/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/macx-g++42/qplatformdefs.h b/mkspecs/macx-g++42/qplatformdefs.h index 2bab72008a..cef8dde12e 100644 --- a/mkspecs/macx-g++42/qplatformdefs.h +++ b/mkspecs/macx-g++42/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/macx-icc/qplatformdefs.h b/mkspecs/macx-icc/qplatformdefs.h index 2bab72008a..cef8dde12e 100644 --- a/mkspecs/macx-icc/qplatformdefs.h +++ b/mkspecs/macx-icc/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/macx-llvm/qplatformdefs.h b/mkspecs/macx-llvm/qplatformdefs.h index 2bab72008a..cef8dde12e 100644 --- a/mkspecs/macx-llvm/qplatformdefs.h +++ b/mkspecs/macx-llvm/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/macx-pbuilder/qplatformdefs.h b/mkspecs/macx-pbuilder/qplatformdefs.h index f9bc2920dd..c13bf512b8 100644 --- a/mkspecs/macx-pbuilder/qplatformdefs.h +++ b/mkspecs/macx-pbuilder/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/macx-xcode/qplatformdefs.h b/mkspecs/macx-xcode/qplatformdefs.h index 2bab72008a..cef8dde12e 100644 --- a/mkspecs/macx-xcode/qplatformdefs.h +++ b/mkspecs/macx-xcode/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/macx-xlc/qplatformdefs.h b/mkspecs/macx-xlc/qplatformdefs.h index 850e4f28eb..faf2beb7bd 100644 --- a/mkspecs/macx-xlc/qplatformdefs.h +++ b/mkspecs/macx-xlc/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/netbsd-g++/qplatformdefs.h b/mkspecs/netbsd-g++/qplatformdefs.h index 66679c4d82..56f52f04bf 100644 --- a/mkspecs/netbsd-g++/qplatformdefs.h +++ b/mkspecs/netbsd-g++/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/openbsd-g++/qplatformdefs.h b/mkspecs/openbsd-g++/qplatformdefs.h index 162e75e42b..b97e2d51e2 100644 --- a/mkspecs/openbsd-g++/qplatformdefs.h +++ b/mkspecs/openbsd-g++/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/sco-cc/qplatformdefs.h b/mkspecs/sco-cc/qplatformdefs.h index 51a0d5bd7b..fe0230afd9 100644 --- a/mkspecs/sco-cc/qplatformdefs.h +++ b/mkspecs/sco-cc/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/sco-g++/qplatformdefs.h b/mkspecs/sco-g++/qplatformdefs.h index dabcda2c5a..d5fa0bffe9 100644 --- a/mkspecs/sco-g++/qplatformdefs.h +++ b/mkspecs/sco-g++/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/solaris-cc-64-stlport/qplatformdefs.h b/mkspecs/solaris-cc-64-stlport/qplatformdefs.h index 61e5a9234a..ed5ca4ebdd 100644 --- a/mkspecs/solaris-cc-64-stlport/qplatformdefs.h +++ b/mkspecs/solaris-cc-64-stlport/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/solaris-cc-64/qplatformdefs.h b/mkspecs/solaris-cc-64/qplatformdefs.h index 05a877c8ff..1ce441f2cc 100644 --- a/mkspecs/solaris-cc-64/qplatformdefs.h +++ b/mkspecs/solaris-cc-64/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/solaris-cc-stlport/qplatformdefs.h b/mkspecs/solaris-cc-stlport/qplatformdefs.h index bb0681af02..76a188792d 100644 --- a/mkspecs/solaris-cc-stlport/qplatformdefs.h +++ b/mkspecs/solaris-cc-stlport/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/solaris-cc/qplatformdefs.h b/mkspecs/solaris-cc/qplatformdefs.h index 18b87208c0..9b00cce85f 100644 --- a/mkspecs/solaris-cc/qplatformdefs.h +++ b/mkspecs/solaris-cc/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/solaris-g++-64/qplatformdefs.h b/mkspecs/solaris-g++-64/qplatformdefs.h index aeb99071c4..c0fcc53833 100644 --- a/mkspecs/solaris-g++-64/qplatformdefs.h +++ b/mkspecs/solaris-g++-64/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/solaris-g++/qplatformdefs.h b/mkspecs/solaris-g++/qplatformdefs.h index 37a61d6691..b4131eaea0 100644 --- a/mkspecs/solaris-g++/qplatformdefs.h +++ b/mkspecs/solaris-g++/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/tru64-cxx/qplatformdefs.h b/mkspecs/tru64-cxx/qplatformdefs.h index f99952e2be..9f6e33355f 100644 --- a/mkspecs/tru64-cxx/qplatformdefs.h +++ b/mkspecs/tru64-cxx/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/tru64-g++/qplatformdefs.h b/mkspecs/tru64-g++/qplatformdefs.h index f99952e2be..9f6e33355f 100644 --- a/mkspecs/tru64-g++/qplatformdefs.h +++ b/mkspecs/tru64-g++/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/unixware-cc/qplatformdefs.h b/mkspecs/unixware-cc/qplatformdefs.h index abce75cd20..f76ea1db84 100644 --- a/mkspecs/unixware-cc/qplatformdefs.h +++ b/mkspecs/unixware-cc/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/unixware-g++/qplatformdefs.h b/mkspecs/unixware-g++/qplatformdefs.h index abce75cd20..f76ea1db84 100644 --- a/mkspecs/unixware-g++/qplatformdefs.h +++ b/mkspecs/unixware-g++/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/unsupported/integrity-ghs/qplatformdefs.h b/mkspecs/unsupported/integrity-ghs/qplatformdefs.h index 589b3bf352..107535c6a3 100644 --- a/mkspecs/unsupported/integrity-ghs/qplatformdefs.h +++ b/mkspecs/unsupported/integrity-ghs/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/unsupported/linux-armcc/qplatformdefs.h b/mkspecs/unsupported/linux-armcc/qplatformdefs.h index 1b5dcc3d79..70f47bfdb0 100644 --- a/mkspecs/unsupported/linux-armcc/qplatformdefs.h +++ b/mkspecs/unsupported/linux-armcc/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/unsupported/linux-clang/qplatformdefs.h b/mkspecs/unsupported/linux-clang/qplatformdefs.h index 336453dfde..a903c8ceae 100644 --- a/mkspecs/unsupported/linux-clang/qplatformdefs.h +++ b/mkspecs/unsupported/linux-clang/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/unsupported/linux-host-g++/qplatformdefs.h b/mkspecs/unsupported/linux-host-g++/qplatformdefs.h index 701c330144..f7f0d3b16a 100644 --- a/mkspecs/unsupported/linux-host-g++/qplatformdefs.h +++ b/mkspecs/unsupported/linux-host-g++/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/unsupported/linux-scratchbox2-g++/qplatformdefs.h b/mkspecs/unsupported/linux-scratchbox2-g++/qplatformdefs.h index 701c330144..f7f0d3b16a 100644 --- a/mkspecs/unsupported/linux-scratchbox2-g++/qplatformdefs.h +++ b/mkspecs/unsupported/linux-scratchbox2-g++/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/unsupported/macx-clang/qplatformdefs.h b/mkspecs/unsupported/macx-clang/qplatformdefs.h index db69115967..63b72927c6 100644 --- a/mkspecs/unsupported/macx-clang/qplatformdefs.h +++ b/mkspecs/unsupported/macx-clang/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/unsupported/qnx-g++/qplatformdefs.h b/mkspecs/unsupported/qnx-g++/qplatformdefs.h index 8b50f92746..a524bb5fbc 100644 --- a/mkspecs/unsupported/qnx-g++/qplatformdefs.h +++ b/mkspecs/unsupported/qnx-g++/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/unsupported/qws/linux-x86-openkode-g++/qplatformdefs.h b/mkspecs/unsupported/qws/linux-x86-openkode-g++/qplatformdefs.h index 06641b567f..ee5db1c3cd 100644 --- a/mkspecs/unsupported/qws/linux-x86-openkode-g++/qplatformdefs.h +++ b/mkspecs/unsupported/qws/linux-x86-openkode-g++/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/unsupported/qws/qnx-641/qplatformdefs.h b/mkspecs/unsupported/qws/qnx-641/qplatformdefs.h index 0c71265ede..4be41b1e6c 100644 --- a/mkspecs/unsupported/qws/qnx-641/qplatformdefs.h +++ b/mkspecs/unsupported/qws/qnx-641/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/unsupported/qws/qnx-generic-g++/qplatformdefs.h b/mkspecs/unsupported/qws/qnx-generic-g++/qplatformdefs.h index 0c71265ede..4be41b1e6c 100644 --- a/mkspecs/unsupported/qws/qnx-generic-g++/qplatformdefs.h +++ b/mkspecs/unsupported/qws/qnx-generic-g++/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/unsupported/qws/qnx-i386-g++/qplatformdefs.h b/mkspecs/unsupported/qws/qnx-i386-g++/qplatformdefs.h index 0c71265ede..4be41b1e6c 100644 --- a/mkspecs/unsupported/qws/qnx-i386-g++/qplatformdefs.h +++ b/mkspecs/unsupported/qws/qnx-i386-g++/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/unsupported/qws/qnx-ppc-g++/qplatformdefs.h b/mkspecs/unsupported/qws/qnx-ppc-g++/qplatformdefs.h index 0c71265ede..4be41b1e6c 100644 --- a/mkspecs/unsupported/qws/qnx-ppc-g++/qplatformdefs.h +++ b/mkspecs/unsupported/qws/qnx-ppc-g++/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/unsupported/vxworks-ppc-dcc/qplatformdefs.h b/mkspecs/unsupported/vxworks-ppc-dcc/qplatformdefs.h index 7ceb75ae59..19dafe2bfc 100644 --- a/mkspecs/unsupported/vxworks-ppc-dcc/qplatformdefs.h +++ b/mkspecs/unsupported/vxworks-ppc-dcc/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/unsupported/vxworks-ppc-g++/qplatformdefs.h b/mkspecs/unsupported/vxworks-ppc-g++/qplatformdefs.h index 7ceb75ae59..19dafe2bfc 100644 --- a/mkspecs/unsupported/vxworks-ppc-g++/qplatformdefs.h +++ b/mkspecs/unsupported/vxworks-ppc-g++/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/unsupported/vxworks-simpentium-dcc/qplatformdefs.h b/mkspecs/unsupported/vxworks-simpentium-dcc/qplatformdefs.h index 7ceb75ae59..19dafe2bfc 100644 --- a/mkspecs/unsupported/vxworks-simpentium-dcc/qplatformdefs.h +++ b/mkspecs/unsupported/vxworks-simpentium-dcc/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/unsupported/vxworks-simpentium-g++/qplatformdefs.h b/mkspecs/unsupported/vxworks-simpentium-g++/qplatformdefs.h index 6dcdfdeacf..975c6af635 100644 --- a/mkspecs/unsupported/vxworks-simpentium-g++/qplatformdefs.h +++ b/mkspecs/unsupported/vxworks-simpentium-g++/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/unsupported/win32-borland/qplatformdefs.h b/mkspecs/unsupported/win32-borland/qplatformdefs.h index e1dfe710c2..6aecf9138d 100644 --- a/mkspecs/unsupported/win32-borland/qplatformdefs.h +++ b/mkspecs/unsupported/win32-borland/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/unsupported/win32-g++-cross/qplatformdefs.h b/mkspecs/unsupported/win32-g++-cross/qplatformdefs.h index 99349bfc8d..15d6be5666 100644 --- a/mkspecs/unsupported/win32-g++-cross/qplatformdefs.h +++ b/mkspecs/unsupported/win32-g++-cross/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/unsupported/win32-msvc2003/qplatformdefs.h b/mkspecs/unsupported/win32-msvc2003/qplatformdefs.h index e14f8d044a..8f42708c1d 100644 --- a/mkspecs/unsupported/win32-msvc2003/qplatformdefs.h +++ b/mkspecs/unsupported/win32-msvc2003/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/win32-g++/qplatformdefs.h b/mkspecs/win32-g++/qplatformdefs.h index 36eacb2b39..55d2b7c65a 100644 --- a/mkspecs/win32-g++/qplatformdefs.h +++ b/mkspecs/win32-g++/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/win32-icc/qplatformdefs.h b/mkspecs/win32-icc/qplatformdefs.h index 65218be812..bd969aef8d 100644 --- a/mkspecs/win32-icc/qplatformdefs.h +++ b/mkspecs/win32-icc/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/win32-msvc2005/qplatformdefs.h b/mkspecs/win32-msvc2005/qplatformdefs.h index 4a5a75d7cc..d13e7be877 100644 --- a/mkspecs/win32-msvc2005/qplatformdefs.h +++ b/mkspecs/win32-msvc2005/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/win32-msvc2008/qplatformdefs.h b/mkspecs/win32-msvc2008/qplatformdefs.h index ec11b7c39d..339e85239a 100644 --- a/mkspecs/win32-msvc2008/qplatformdefs.h +++ b/mkspecs/win32-msvc2008/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/win32-msvc2010/qplatformdefs.h b/mkspecs/win32-msvc2010/qplatformdefs.h index ec11b7c39d..339e85239a 100644 --- a/mkspecs/win32-msvc2010/qplatformdefs.h +++ b/mkspecs/win32-msvc2010/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/wince50standard-armv4i-msvc2005/qplatformdefs.h b/mkspecs/wince50standard-armv4i-msvc2005/qplatformdefs.h index 364f57b842..cd9eac3274 100644 --- a/mkspecs/wince50standard-armv4i-msvc2005/qplatformdefs.h +++ b/mkspecs/wince50standard-armv4i-msvc2005/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/wince50standard-armv4i-msvc2008/qplatformdefs.h b/mkspecs/wince50standard-armv4i-msvc2008/qplatformdefs.h index 364f57b842..cd9eac3274 100644 --- a/mkspecs/wince50standard-armv4i-msvc2008/qplatformdefs.h +++ b/mkspecs/wince50standard-armv4i-msvc2008/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/wince50standard-mipsii-msvc2005/qplatformdefs.h b/mkspecs/wince50standard-mipsii-msvc2005/qplatformdefs.h index 364f57b842..cd9eac3274 100644 --- a/mkspecs/wince50standard-mipsii-msvc2005/qplatformdefs.h +++ b/mkspecs/wince50standard-mipsii-msvc2005/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/wince50standard-mipsii-msvc2008/qplatformdefs.h b/mkspecs/wince50standard-mipsii-msvc2008/qplatformdefs.h index 364f57b842..cd9eac3274 100644 --- a/mkspecs/wince50standard-mipsii-msvc2008/qplatformdefs.h +++ b/mkspecs/wince50standard-mipsii-msvc2008/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/wince50standard-mipsiv-msvc2005/qplatformdefs.h b/mkspecs/wince50standard-mipsiv-msvc2005/qplatformdefs.h index 364f57b842..cd9eac3274 100644 --- a/mkspecs/wince50standard-mipsiv-msvc2005/qplatformdefs.h +++ b/mkspecs/wince50standard-mipsiv-msvc2005/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/wince50standard-mipsiv-msvc2008/qplatformdefs.h b/mkspecs/wince50standard-mipsiv-msvc2008/qplatformdefs.h index 364f57b842..cd9eac3274 100644 --- a/mkspecs/wince50standard-mipsiv-msvc2008/qplatformdefs.h +++ b/mkspecs/wince50standard-mipsiv-msvc2008/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/wince50standard-sh4-msvc2005/qplatformdefs.h b/mkspecs/wince50standard-sh4-msvc2005/qplatformdefs.h index 364f57b842..cd9eac3274 100644 --- a/mkspecs/wince50standard-sh4-msvc2005/qplatformdefs.h +++ b/mkspecs/wince50standard-sh4-msvc2005/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/wince50standard-sh4-msvc2008/qplatformdefs.h b/mkspecs/wince50standard-sh4-msvc2008/qplatformdefs.h index 364f57b842..cd9eac3274 100644 --- a/mkspecs/wince50standard-sh4-msvc2008/qplatformdefs.h +++ b/mkspecs/wince50standard-sh4-msvc2008/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/wince50standard-x86-msvc2005/qplatformdefs.h b/mkspecs/wince50standard-x86-msvc2005/qplatformdefs.h index 364f57b842..cd9eac3274 100644 --- a/mkspecs/wince50standard-x86-msvc2005/qplatformdefs.h +++ b/mkspecs/wince50standard-x86-msvc2005/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/wince50standard-x86-msvc2008/qplatformdefs.h b/mkspecs/wince50standard-x86-msvc2008/qplatformdefs.h index 364f57b842..cd9eac3274 100644 --- a/mkspecs/wince50standard-x86-msvc2008/qplatformdefs.h +++ b/mkspecs/wince50standard-x86-msvc2008/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/wince60standard-armv4i-msvc2005/qplatformdefs.h b/mkspecs/wince60standard-armv4i-msvc2005/qplatformdefs.h index 364f57b842..cd9eac3274 100644 --- a/mkspecs/wince60standard-armv4i-msvc2005/qplatformdefs.h +++ b/mkspecs/wince60standard-armv4i-msvc2005/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/wince60standard-x86-msvc2005/qplatformdefs.h b/mkspecs/wince60standard-x86-msvc2005/qplatformdefs.h index 364f57b842..cd9eac3274 100644 --- a/mkspecs/wince60standard-x86-msvc2005/qplatformdefs.h +++ b/mkspecs/wince60standard-x86-msvc2005/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/wincewm50pocket-msvc2005/qplatformdefs.h b/mkspecs/wincewm50pocket-msvc2005/qplatformdefs.h index 364f57b842..cd9eac3274 100644 --- a/mkspecs/wincewm50pocket-msvc2005/qplatformdefs.h +++ b/mkspecs/wincewm50pocket-msvc2005/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/wincewm50pocket-msvc2008/qplatformdefs.h b/mkspecs/wincewm50pocket-msvc2008/qplatformdefs.h index 364f57b842..cd9eac3274 100644 --- a/mkspecs/wincewm50pocket-msvc2008/qplatformdefs.h +++ b/mkspecs/wincewm50pocket-msvc2008/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/wincewm50smart-msvc2005/qplatformdefs.h b/mkspecs/wincewm50smart-msvc2005/qplatformdefs.h index 364f57b842..cd9eac3274 100644 --- a/mkspecs/wincewm50smart-msvc2005/qplatformdefs.h +++ b/mkspecs/wincewm50smart-msvc2005/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/wincewm50smart-msvc2008/qplatformdefs.h b/mkspecs/wincewm50smart-msvc2008/qplatformdefs.h index 364f57b842..cd9eac3274 100644 --- a/mkspecs/wincewm50smart-msvc2008/qplatformdefs.h +++ b/mkspecs/wincewm50smart-msvc2008/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/wincewm60professional-msvc2005/qplatformdefs.h b/mkspecs/wincewm60professional-msvc2005/qplatformdefs.h index 364f57b842..cd9eac3274 100644 --- a/mkspecs/wincewm60professional-msvc2005/qplatformdefs.h +++ b/mkspecs/wincewm60professional-msvc2005/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/wincewm60professional-msvc2008/qplatformdefs.h b/mkspecs/wincewm60professional-msvc2008/qplatformdefs.h index 364f57b842..cd9eac3274 100644 --- a/mkspecs/wincewm60professional-msvc2008/qplatformdefs.h +++ b/mkspecs/wincewm60professional-msvc2008/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/wincewm60standard-msvc2005/qplatformdefs.h b/mkspecs/wincewm60standard-msvc2005/qplatformdefs.h index 364f57b842..cd9eac3274 100644 --- a/mkspecs/wincewm60standard-msvc2005/qplatformdefs.h +++ b/mkspecs/wincewm60standard-msvc2005/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/wincewm60standard-msvc2008/qplatformdefs.h b/mkspecs/wincewm60standard-msvc2008/qplatformdefs.h index 364f57b842..cd9eac3274 100644 --- a/mkspecs/wincewm60standard-msvc2008/qplatformdefs.h +++ b/mkspecs/wincewm60standard-msvc2008/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/wincewm65professional-msvc2005/qplatformdefs.h b/mkspecs/wincewm65professional-msvc2005/qplatformdefs.h index 364f57b842..cd9eac3274 100644 --- a/mkspecs/wincewm65professional-msvc2005/qplatformdefs.h +++ b/mkspecs/wincewm65professional-msvc2005/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/mkspecs/wincewm65professional-msvc2008/qplatformdefs.h b/mkspecs/wincewm65professional-msvc2008/qplatformdefs.h index 364f57b842..cd9eac3274 100644 --- a/mkspecs/wincewm65professional-msvc2008/qplatformdefs.h +++ b/mkspecs/wincewm65professional-msvc2008/qplatformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/cachekeys.h b/qmake/cachekeys.h index 2307150ff2..64d068a6e6 100644 --- a/qmake/cachekeys.h +++ b/qmake/cachekeys.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/generators/integrity/gbuild.cpp b/qmake/generators/integrity/gbuild.cpp index f9fdb3885b..e3d1d69598 100644 --- a/qmake/generators/integrity/gbuild.cpp +++ b/qmake/generators/integrity/gbuild.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/generators/integrity/gbuild.h b/qmake/generators/integrity/gbuild.h index 0927a2e228..67646186e7 100644 --- a/qmake/generators/integrity/gbuild.h +++ b/qmake/generators/integrity/gbuild.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/generators/mac/pbuilder_pbx.cpp b/qmake/generators/mac/pbuilder_pbx.cpp index b7aec00c30..fe84c2b1db 100644 --- a/qmake/generators/mac/pbuilder_pbx.cpp +++ b/qmake/generators/mac/pbuilder_pbx.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/generators/mac/pbuilder_pbx.h b/qmake/generators/mac/pbuilder_pbx.h index 9d814dfd13..bf9749b7fd 100644 --- a/qmake/generators/mac/pbuilder_pbx.h +++ b/qmake/generators/mac/pbuilder_pbx.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/generators/makefile.cpp b/qmake/generators/makefile.cpp index 3ad240db01..0a8da26e17 100644 --- a/qmake/generators/makefile.cpp +++ b/qmake/generators/makefile.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/generators/makefile.h b/qmake/generators/makefile.h index 26b5f0e659..4324a9455a 100644 --- a/qmake/generators/makefile.h +++ b/qmake/generators/makefile.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/generators/makefiledeps.cpp b/qmake/generators/makefiledeps.cpp index 4f4c1ff57e..85fbe1e393 100644 --- a/qmake/generators/makefiledeps.cpp +++ b/qmake/generators/makefiledeps.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/generators/makefiledeps.h b/qmake/generators/makefiledeps.h index d6e5a14e46..963ade85e9 100644 --- a/qmake/generators/makefiledeps.h +++ b/qmake/generators/makefiledeps.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/generators/metamakefile.cpp b/qmake/generators/metamakefile.cpp index f06a46b821..19867f214b 100644 --- a/qmake/generators/metamakefile.cpp +++ b/qmake/generators/metamakefile.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/generators/metamakefile.h b/qmake/generators/metamakefile.h index 91c93644bc..babf2f0ec6 100644 --- a/qmake/generators/metamakefile.h +++ b/qmake/generators/metamakefile.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/generators/projectgenerator.cpp b/qmake/generators/projectgenerator.cpp index b43d7a1c22..7bfadbf182 100644 --- a/qmake/generators/projectgenerator.cpp +++ b/qmake/generators/projectgenerator.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/generators/projectgenerator.h b/qmake/generators/projectgenerator.h index b8aff4a10c..562b108dc9 100644 --- a/qmake/generators/projectgenerator.h +++ b/qmake/generators/projectgenerator.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/generators/unix/unixmake.cpp b/qmake/generators/unix/unixmake.cpp index cb4e67e8ca..c5e43b0552 100644 --- a/qmake/generators/unix/unixmake.cpp +++ b/qmake/generators/unix/unixmake.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/generators/unix/unixmake.h b/qmake/generators/unix/unixmake.h index 04ee0ee873..12b42f7bf2 100644 --- a/qmake/generators/unix/unixmake.h +++ b/qmake/generators/unix/unixmake.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/generators/unix/unixmake2.cpp b/qmake/generators/unix/unixmake2.cpp index 3582ef1776..173be72919 100644 --- a/qmake/generators/unix/unixmake2.cpp +++ b/qmake/generators/unix/unixmake2.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/generators/win32/borland_bmake.cpp b/qmake/generators/win32/borland_bmake.cpp index f8278424d5..086636f219 100644 --- a/qmake/generators/win32/borland_bmake.cpp +++ b/qmake/generators/win32/borland_bmake.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/generators/win32/borland_bmake.h b/qmake/generators/win32/borland_bmake.h index c38af03a76..603c413244 100644 --- a/qmake/generators/win32/borland_bmake.h +++ b/qmake/generators/win32/borland_bmake.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/generators/win32/mingw_make.cpp b/qmake/generators/win32/mingw_make.cpp index 29381eb7f4..c82259e5ae 100644 --- a/qmake/generators/win32/mingw_make.cpp +++ b/qmake/generators/win32/mingw_make.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/generators/win32/mingw_make.h b/qmake/generators/win32/mingw_make.h index 1dbfa07724..fda1ca4187 100644 --- a/qmake/generators/win32/mingw_make.h +++ b/qmake/generators/win32/mingw_make.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/generators/win32/msbuild_objectmodel.cpp b/qmake/generators/win32/msbuild_objectmodel.cpp index 4435c5f389..b20f2f951d 100644 --- a/qmake/generators/win32/msbuild_objectmodel.cpp +++ b/qmake/generators/win32/msbuild_objectmodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/generators/win32/msbuild_objectmodel.h b/qmake/generators/win32/msbuild_objectmodel.h index bd5e5d137c..5e9d06dd9f 100644 --- a/qmake/generators/win32/msbuild_objectmodel.h +++ b/qmake/generators/win32/msbuild_objectmodel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/generators/win32/msvc_nmake.cpp b/qmake/generators/win32/msvc_nmake.cpp index dd4e34d967..f75ea05567 100644 --- a/qmake/generators/win32/msvc_nmake.cpp +++ b/qmake/generators/win32/msvc_nmake.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/generators/win32/msvc_nmake.h b/qmake/generators/win32/msvc_nmake.h index 99f7279cc2..c758d5eb81 100644 --- a/qmake/generators/win32/msvc_nmake.h +++ b/qmake/generators/win32/msvc_nmake.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/generators/win32/msvc_objectmodel.cpp b/qmake/generators/win32/msvc_objectmodel.cpp index 85a642badc..5b60c79613 100644 --- a/qmake/generators/win32/msvc_objectmodel.cpp +++ b/qmake/generators/win32/msvc_objectmodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/generators/win32/msvc_objectmodel.h b/qmake/generators/win32/msvc_objectmodel.h index 950176d00d..7a530c8e5a 100644 --- a/qmake/generators/win32/msvc_objectmodel.h +++ b/qmake/generators/win32/msvc_objectmodel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/generators/win32/msvc_vcproj.cpp b/qmake/generators/win32/msvc_vcproj.cpp index 0a3f5fb27c..a5f0c6a616 100644 --- a/qmake/generators/win32/msvc_vcproj.cpp +++ b/qmake/generators/win32/msvc_vcproj.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/generators/win32/msvc_vcproj.h b/qmake/generators/win32/msvc_vcproj.h index 5c3cb89b78..b58550743c 100644 --- a/qmake/generators/win32/msvc_vcproj.h +++ b/qmake/generators/win32/msvc_vcproj.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/generators/win32/msvc_vcxproj.cpp b/qmake/generators/win32/msvc_vcxproj.cpp index 429025f801..5d2047fd2f 100644 --- a/qmake/generators/win32/msvc_vcxproj.cpp +++ b/qmake/generators/win32/msvc_vcxproj.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/generators/win32/msvc_vcxproj.h b/qmake/generators/win32/msvc_vcxproj.h index 702dca3652..0c43a0a8d8 100644 --- a/qmake/generators/win32/msvc_vcxproj.h +++ b/qmake/generators/win32/msvc_vcxproj.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/generators/win32/winmakefile.cpp b/qmake/generators/win32/winmakefile.cpp index 62466e203d..11927dbd94 100644 --- a/qmake/generators/win32/winmakefile.cpp +++ b/qmake/generators/win32/winmakefile.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/generators/win32/winmakefile.h b/qmake/generators/win32/winmakefile.h index d3513aa41e..1e8b706088 100644 --- a/qmake/generators/win32/winmakefile.h +++ b/qmake/generators/win32/winmakefile.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/generators/xmloutput.cpp b/qmake/generators/xmloutput.cpp index 4a35b215e8..1b39f38203 100644 --- a/qmake/generators/xmloutput.cpp +++ b/qmake/generators/xmloutput.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/generators/xmloutput.h b/qmake/generators/xmloutput.h index e1c744c0df..6560ebc7b6 100644 --- a/qmake/generators/xmloutput.h +++ b/qmake/generators/xmloutput.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/main.cpp b/qmake/main.cpp index 561f4aaf6a..99015177b2 100644 --- a/qmake/main.cpp +++ b/qmake/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/meta.cpp b/qmake/meta.cpp index fd043d4e3d..b01c7993cf 100644 --- a/qmake/meta.cpp +++ b/qmake/meta.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/meta.h b/qmake/meta.h index 32ca5ed4a6..9c0c85672b 100644 --- a/qmake/meta.h +++ b/qmake/meta.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/option.cpp b/qmake/option.cpp index c3e89de818..8ad8a22f79 100644 --- a/qmake/option.cpp +++ b/qmake/option.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/option.h b/qmake/option.h index 23fc9543da..ffccb8efc5 100644 --- a/qmake/option.h +++ b/qmake/option.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/project.cpp b/qmake/project.cpp index f1d000f05e..c381d3aaa8 100644 --- a/qmake/project.cpp +++ b/qmake/project.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/project.h b/qmake/project.h index 68110a8448..d458dd9e0a 100644 --- a/qmake/project.h +++ b/qmake/project.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/property.cpp b/qmake/property.cpp index 29e3857838..2bacc43e51 100644 --- a/qmake/property.cpp +++ b/qmake/property.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/property.h b/qmake/property.h index 5c1c28ff38..22a8957e53 100644 --- a/qmake/property.h +++ b/qmake/property.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/qmake/qmake_pch.h b/qmake/qmake_pch.h index 351ef486a0..a24c2f7c92 100644 --- a/qmake/qmake_pch.h +++ b/qmake/qmake_pch.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/3rdparty/harfbuzz/src/harfbuzz-greek.c b/src/3rdparty/harfbuzz/src/harfbuzz-greek.c index 8099838323..f3c0ff62ef 100644 --- a/src/3rdparty/harfbuzz/src/harfbuzz-greek.c +++ b/src/3rdparty/harfbuzz/src/harfbuzz-greek.c @@ -1,5 +1,5 @@ /* - * Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies) + * Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies) * * This is part of HarfBuzz, an OpenType Layout engine library. * diff --git a/src/3rdparty/s60/eiksoftkeyimage.h b/src/3rdparty/s60/eiksoftkeyimage.h index d2b1cf7ce0..01a41a5b47 100644 --- a/src/3rdparty/s60/eiksoftkeyimage.h +++ b/src/3rdparty/s60/eiksoftkeyimage.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/animation/qabstractanimation.cpp b/src/corelib/animation/qabstractanimation.cpp index a7d428384a..9e4b361883 100644 --- a/src/corelib/animation/qabstractanimation.cpp +++ b/src/corelib/animation/qabstractanimation.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/animation/qabstractanimation.h b/src/corelib/animation/qabstractanimation.h index 456c017bba..4c20d25a53 100644 --- a/src/corelib/animation/qabstractanimation.h +++ b/src/corelib/animation/qabstractanimation.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/animation/qabstractanimation_p.h b/src/corelib/animation/qabstractanimation_p.h index e7c1effa9f..a079a71242 100644 --- a/src/corelib/animation/qabstractanimation_p.h +++ b/src/corelib/animation/qabstractanimation_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/animation/qanimationgroup.cpp b/src/corelib/animation/qanimationgroup.cpp index 0d2eac2ebb..5993eda307 100644 --- a/src/corelib/animation/qanimationgroup.cpp +++ b/src/corelib/animation/qanimationgroup.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/animation/qanimationgroup.h b/src/corelib/animation/qanimationgroup.h index 7569671374..69a2686b69 100644 --- a/src/corelib/animation/qanimationgroup.h +++ b/src/corelib/animation/qanimationgroup.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/animation/qanimationgroup_p.h b/src/corelib/animation/qanimationgroup_p.h index d2e2498a87..8415610bdc 100644 --- a/src/corelib/animation/qanimationgroup_p.h +++ b/src/corelib/animation/qanimationgroup_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/animation/qparallelanimationgroup.cpp b/src/corelib/animation/qparallelanimationgroup.cpp index 6e942e0257..6e21efbc7f 100644 --- a/src/corelib/animation/qparallelanimationgroup.cpp +++ b/src/corelib/animation/qparallelanimationgroup.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/animation/qparallelanimationgroup.h b/src/corelib/animation/qparallelanimationgroup.h index 74eb36f4cd..b03163cfbb 100644 --- a/src/corelib/animation/qparallelanimationgroup.h +++ b/src/corelib/animation/qparallelanimationgroup.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/animation/qparallelanimationgroup_p.h b/src/corelib/animation/qparallelanimationgroup_p.h index cb8b3ae190..73fed5541c 100644 --- a/src/corelib/animation/qparallelanimationgroup_p.h +++ b/src/corelib/animation/qparallelanimationgroup_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/animation/qpauseanimation.cpp b/src/corelib/animation/qpauseanimation.cpp index 0f1e07e1f1..fe5bafa3bd 100644 --- a/src/corelib/animation/qpauseanimation.cpp +++ b/src/corelib/animation/qpauseanimation.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/animation/qpauseanimation.h b/src/corelib/animation/qpauseanimation.h index 827f1694ad..7f8a2ddf26 100644 --- a/src/corelib/animation/qpauseanimation.h +++ b/src/corelib/animation/qpauseanimation.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/animation/qpropertyanimation.cpp b/src/corelib/animation/qpropertyanimation.cpp index 481b79d196..d34242739e 100644 --- a/src/corelib/animation/qpropertyanimation.cpp +++ b/src/corelib/animation/qpropertyanimation.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/animation/qpropertyanimation.h b/src/corelib/animation/qpropertyanimation.h index 28fc837f33..f41b96ce64 100644 --- a/src/corelib/animation/qpropertyanimation.h +++ b/src/corelib/animation/qpropertyanimation.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/animation/qpropertyanimation_p.h b/src/corelib/animation/qpropertyanimation_p.h index c8c69720e9..83f7c3f0fa 100644 --- a/src/corelib/animation/qpropertyanimation_p.h +++ b/src/corelib/animation/qpropertyanimation_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/animation/qsequentialanimationgroup.cpp b/src/corelib/animation/qsequentialanimationgroup.cpp index 8b32d6b76d..a991a38823 100644 --- a/src/corelib/animation/qsequentialanimationgroup.cpp +++ b/src/corelib/animation/qsequentialanimationgroup.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/animation/qsequentialanimationgroup.h b/src/corelib/animation/qsequentialanimationgroup.h index 40201a9a32..07b2e3b8fc 100644 --- a/src/corelib/animation/qsequentialanimationgroup.h +++ b/src/corelib/animation/qsequentialanimationgroup.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/animation/qsequentialanimationgroup_p.h b/src/corelib/animation/qsequentialanimationgroup_p.h index 33af063bc9..87cdc044b2 100644 --- a/src/corelib/animation/qsequentialanimationgroup_p.h +++ b/src/corelib/animation/qsequentialanimationgroup_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/animation/qvariantanimation.cpp b/src/corelib/animation/qvariantanimation.cpp index 7dfb4bddc1..8984abbe03 100644 --- a/src/corelib/animation/qvariantanimation.cpp +++ b/src/corelib/animation/qvariantanimation.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/animation/qvariantanimation.h b/src/corelib/animation/qvariantanimation.h index 3c92219b2a..4176b4f428 100644 --- a/src/corelib/animation/qvariantanimation.h +++ b/src/corelib/animation/qvariantanimation.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/animation/qvariantanimation_p.h b/src/corelib/animation/qvariantanimation_p.h index a8868d13ce..940cdbfe39 100644 --- a/src/corelib/animation/qvariantanimation_p.h +++ b/src/corelib/animation/qvariantanimation_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/arch/alpha/qatomic_alpha.s b/src/corelib/arch/alpha/qatomic_alpha.s index 31f3925499..7dd09d4480 100644 --- a/src/corelib/arch/alpha/qatomic_alpha.s +++ b/src/corelib/arch/alpha/qatomic_alpha.s @@ -1,6 +1,6 @@ ;/**************************************************************************** ;** -;** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +;** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ;** All rights reserved. ;** Contact: Nokia Corporation (qt-info@nokia.com) ;** diff --git a/src/corelib/arch/arm/qatomic_arm.cpp b/src/corelib/arch/arm/qatomic_arm.cpp index 30612cef11..0eaeb5a15b 100644 --- a/src/corelib/arch/arm/qatomic_arm.cpp +++ b/src/corelib/arch/arm/qatomic_arm.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/arch/generic/qatomic_generic_unix.cpp b/src/corelib/arch/generic/qatomic_generic_unix.cpp index e474a65642..78292e7e49 100644 --- a/src/corelib/arch/generic/qatomic_generic_unix.cpp +++ b/src/corelib/arch/generic/qatomic_generic_unix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/arch/generic/qatomic_generic_windows.cpp b/src/corelib/arch/generic/qatomic_generic_windows.cpp index 7ce0eea076..94129cb106 100644 --- a/src/corelib/arch/generic/qatomic_generic_windows.cpp +++ b/src/corelib/arch/generic/qatomic_generic_windows.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/arch/ia64/qatomic_ia64.s b/src/corelib/arch/ia64/qatomic_ia64.s index 26db10d994..f6b100c170 100644 --- a/src/corelib/arch/ia64/qatomic_ia64.s +++ b/src/corelib/arch/ia64/qatomic_ia64.s @@ -1,6 +1,6 @@ ;/**************************************************************************** ;** -;** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +;** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ;** All rights reserved. ;** Contact: Nokia Corporation (qt-info@nokia.com) ;** diff --git a/src/corelib/arch/macosx/qatomic32_ppc.s b/src/corelib/arch/macosx/qatomic32_ppc.s index edb80473e1..97d68cba70 100644 --- a/src/corelib/arch/macosx/qatomic32_ppc.s +++ b/src/corelib/arch/macosx/qatomic32_ppc.s @@ -1,6 +1,6 @@ ;/**************************************************************************** ;** -;** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +;** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ;** All rights reserved. ;** Contact: Nokia Corporation (qt-info@nokia.com) ;** diff --git a/src/corelib/arch/mips/qatomic_mips32.s b/src/corelib/arch/mips/qatomic_mips32.s index cd1585ecbc..b4013dfff5 100644 --- a/src/corelib/arch/mips/qatomic_mips32.s +++ b/src/corelib/arch/mips/qatomic_mips32.s @@ -1,6 +1,6 @@ ;/**************************************************************************** ;** -;** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +;** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ;** All rights reserved. ;** Contact: Nokia Corporation (qt-info@nokia.com) ;** diff --git a/src/corelib/arch/mips/qatomic_mips64.s b/src/corelib/arch/mips/qatomic_mips64.s index 60c9a83881..a66b785e30 100644 --- a/src/corelib/arch/mips/qatomic_mips64.s +++ b/src/corelib/arch/mips/qatomic_mips64.s @@ -1,6 +1,6 @@ ;/**************************************************************************** ;** -;** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +;** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ;** All rights reserved. ;** Contact: Nokia Corporation (qt-info@nokia.com) ;** diff --git a/src/corelib/arch/parisc/q_ldcw.s b/src/corelib/arch/parisc/q_ldcw.s index 86d50c79a5..0c1db6f394 100644 --- a/src/corelib/arch/parisc/q_ldcw.s +++ b/src/corelib/arch/parisc/q_ldcw.s @@ -1,6 +1,6 @@ ;/**************************************************************************** ;** -;** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +;** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ;** All rights reserved. ;** Contact: Nokia Corporation (qt-info@nokia.com) ;** diff --git a/src/corelib/arch/parisc/qatomic_parisc.cpp b/src/corelib/arch/parisc/qatomic_parisc.cpp index aa2189162c..da8d480a4f 100644 --- a/src/corelib/arch/parisc/qatomic_parisc.cpp +++ b/src/corelib/arch/parisc/qatomic_parisc.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/arch/powerpc/qatomic32.s b/src/corelib/arch/powerpc/qatomic32.s index 794a397b77..dfc0605cff 100644 --- a/src/corelib/arch/powerpc/qatomic32.s +++ b/src/corelib/arch/powerpc/qatomic32.s @@ -1,6 +1,6 @@ ############################################################################ ## -## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ## All rights reserved. ## Contact: Nokia Corporation (qt-info@nokia.com) ## diff --git a/src/corelib/arch/powerpc/qatomic64.s b/src/corelib/arch/powerpc/qatomic64.s index 4a10b25012..9e81eb0bc0 100644 --- a/src/corelib/arch/powerpc/qatomic64.s +++ b/src/corelib/arch/powerpc/qatomic64.s @@ -1,6 +1,6 @@ ############################################################################ ## -## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ## All rights reserved. ## Contact: Nokia Corporation (qt-info@nokia.com) ## diff --git a/src/corelib/arch/qatomic_alpha.h b/src/corelib/arch/qatomic_alpha.h index a99a84b32a..b44b9f23f5 100644 --- a/src/corelib/arch/qatomic_alpha.h +++ b/src/corelib/arch/qatomic_alpha.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/arch/qatomic_arch.h b/src/corelib/arch/qatomic_arch.h index 905ccd7d99..66e12cc95b 100644 --- a/src/corelib/arch/qatomic_arch.h +++ b/src/corelib/arch/qatomic_arch.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/arch/qatomic_arm.h b/src/corelib/arch/qatomic_arm.h index 0f27009066..b5856102b2 100644 --- a/src/corelib/arch/qatomic_arm.h +++ b/src/corelib/arch/qatomic_arm.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/arch/qatomic_armv5.h b/src/corelib/arch/qatomic_armv5.h index 2a18042a26..d602e83e64 100644 --- a/src/corelib/arch/qatomic_armv5.h +++ b/src/corelib/arch/qatomic_armv5.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/arch/qatomic_armv6.h b/src/corelib/arch/qatomic_armv6.h index dd465db18b..260f48d563 100644 --- a/src/corelib/arch/qatomic_armv6.h +++ b/src/corelib/arch/qatomic_armv6.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/arch/qatomic_armv7.h b/src/corelib/arch/qatomic_armv7.h index 3554cd4301..814eefb376 100644 --- a/src/corelib/arch/qatomic_armv7.h +++ b/src/corelib/arch/qatomic_armv7.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/arch/qatomic_avr32.h b/src/corelib/arch/qatomic_avr32.h index 78d5fc7dd3..749cc0fd36 100644 --- a/src/corelib/arch/qatomic_avr32.h +++ b/src/corelib/arch/qatomic_avr32.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/arch/qatomic_bfin.h b/src/corelib/arch/qatomic_bfin.h index 21026ee440..4784b634fc 100644 --- a/src/corelib/arch/qatomic_bfin.h +++ b/src/corelib/arch/qatomic_bfin.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/arch/qatomic_bootstrap.h b/src/corelib/arch/qatomic_bootstrap.h index 74dc6cfbb2..86376062a2 100644 --- a/src/corelib/arch/qatomic_bootstrap.h +++ b/src/corelib/arch/qatomic_bootstrap.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/arch/qatomic_generic.h b/src/corelib/arch/qatomic_generic.h index 2565451a41..0abc29cdb0 100644 --- a/src/corelib/arch/qatomic_generic.h +++ b/src/corelib/arch/qatomic_generic.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/arch/qatomic_i386.h b/src/corelib/arch/qatomic_i386.h index 86230054b9..53a81864bf 100644 --- a/src/corelib/arch/qatomic_i386.h +++ b/src/corelib/arch/qatomic_i386.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/arch/qatomic_ia64.h b/src/corelib/arch/qatomic_ia64.h index e3cab66dc6..0782ab3f36 100644 --- a/src/corelib/arch/qatomic_ia64.h +++ b/src/corelib/arch/qatomic_ia64.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/arch/qatomic_integrity.h b/src/corelib/arch/qatomic_integrity.h index f957297769..e83124bf4e 100644 --- a/src/corelib/arch/qatomic_integrity.h +++ b/src/corelib/arch/qatomic_integrity.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/arch/qatomic_macosx.h b/src/corelib/arch/qatomic_macosx.h index e26cf65ecd..a973fe1b57 100644 --- a/src/corelib/arch/qatomic_macosx.h +++ b/src/corelib/arch/qatomic_macosx.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/arch/qatomic_mips.h b/src/corelib/arch/qatomic_mips.h index 8b025adfd5..97cef3c457 100644 --- a/src/corelib/arch/qatomic_mips.h +++ b/src/corelib/arch/qatomic_mips.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/arch/qatomic_parisc.h b/src/corelib/arch/qatomic_parisc.h index 8fbbb2e709..200ca14aee 100644 --- a/src/corelib/arch/qatomic_parisc.h +++ b/src/corelib/arch/qatomic_parisc.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/arch/qatomic_powerpc.h b/src/corelib/arch/qatomic_powerpc.h index c0f957b8ac..bb9afe38d7 100644 --- a/src/corelib/arch/qatomic_powerpc.h +++ b/src/corelib/arch/qatomic_powerpc.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/arch/qatomic_s390.h b/src/corelib/arch/qatomic_s390.h index 079dd2db16..e167c7c6e3 100644 --- a/src/corelib/arch/qatomic_s390.h +++ b/src/corelib/arch/qatomic_s390.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/arch/qatomic_sh.h b/src/corelib/arch/qatomic_sh.h index a764a31c71..ca50eb1bf0 100644 --- a/src/corelib/arch/qatomic_sh.h +++ b/src/corelib/arch/qatomic_sh.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/arch/qatomic_sh4a.h b/src/corelib/arch/qatomic_sh4a.h index 3ca1917863..14238a6f10 100644 --- a/src/corelib/arch/qatomic_sh4a.h +++ b/src/corelib/arch/qatomic_sh4a.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/arch/qatomic_sparc.h b/src/corelib/arch/qatomic_sparc.h index ab4386a675..feb172e68d 100644 --- a/src/corelib/arch/qatomic_sparc.h +++ b/src/corelib/arch/qatomic_sparc.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/arch/qatomic_symbian.h b/src/corelib/arch/qatomic_symbian.h index 0162ebccfd..6cb91f0788 100644 --- a/src/corelib/arch/qatomic_symbian.h +++ b/src/corelib/arch/qatomic_symbian.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/arch/qatomic_vxworks.h b/src/corelib/arch/qatomic_vxworks.h index 706dea6f4f..13d6764d36 100644 --- a/src/corelib/arch/qatomic_vxworks.h +++ b/src/corelib/arch/qatomic_vxworks.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/arch/qatomic_windows.h b/src/corelib/arch/qatomic_windows.h index 4807c69905..667e58124e 100644 --- a/src/corelib/arch/qatomic_windows.h +++ b/src/corelib/arch/qatomic_windows.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/arch/qatomic_windowsce.h b/src/corelib/arch/qatomic_windowsce.h index f58119ebdf..3681655285 100644 --- a/src/corelib/arch/qatomic_windowsce.h +++ b/src/corelib/arch/qatomic_windowsce.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/arch/qatomic_x86_64.h b/src/corelib/arch/qatomic_x86_64.h index abbf0a932e..c2627c825f 100644 --- a/src/corelib/arch/qatomic_x86_64.h +++ b/src/corelib/arch/qatomic_x86_64.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/arch/sh/qatomic_sh.cpp b/src/corelib/arch/sh/qatomic_sh.cpp index c1f0f332d6..b552392b64 100644 --- a/src/corelib/arch/sh/qatomic_sh.cpp +++ b/src/corelib/arch/sh/qatomic_sh.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/arch/sparc/qatomic32.s b/src/corelib/arch/sparc/qatomic32.s index 612093b81c..5f695a9093 100644 --- a/src/corelib/arch/sparc/qatomic32.s +++ b/src/corelib/arch/sparc/qatomic32.s @@ -1,6 +1,6 @@ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !! -!! Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +!! Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). !! All rights reserved. !! Contact: Nokia Corporation (qt-info@nokia.com) !! diff --git a/src/corelib/arch/sparc/qatomic64.s b/src/corelib/arch/sparc/qatomic64.s index d78b5b628e..448afbd34e 100644 --- a/src/corelib/arch/sparc/qatomic64.s +++ b/src/corelib/arch/sparc/qatomic64.s @@ -1,6 +1,6 @@ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !! -!! Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +!! Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). !! All rights reserved. !! Contact: Nokia Corporation (qt-info@nokia.com) !! diff --git a/src/corelib/arch/sparc/qatomic_sparc.cpp b/src/corelib/arch/sparc/qatomic_sparc.cpp index 71859aeaec..85848d04a0 100644 --- a/src/corelib/arch/sparc/qatomic_sparc.cpp +++ b/src/corelib/arch/sparc/qatomic_sparc.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/codecs/codecs.qdoc b/src/corelib/codecs/codecs.qdoc index ff14e67c83..76c3f98b42 100644 --- a/src/corelib/codecs/codecs.qdoc +++ b/src/corelib/codecs/codecs.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/codecs/qfontlaocodec.cpp b/src/corelib/codecs/qfontlaocodec.cpp index b852cf576c..ea21fa2898 100644 --- a/src/corelib/codecs/qfontlaocodec.cpp +++ b/src/corelib/codecs/qfontlaocodec.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/codecs/qfontlaocodec_p.h b/src/corelib/codecs/qfontlaocodec_p.h index f81ac1d821..c61ac2181b 100644 --- a/src/corelib/codecs/qfontlaocodec_p.h +++ b/src/corelib/codecs/qfontlaocodec_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/codecs/qiconvcodec.cpp b/src/corelib/codecs/qiconvcodec.cpp index fb27f6ddfd..428e7d4bbe 100644 --- a/src/corelib/codecs/qiconvcodec.cpp +++ b/src/corelib/codecs/qiconvcodec.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/codecs/qiconvcodec_p.h b/src/corelib/codecs/qiconvcodec_p.h index 5a9742e192..fb2d89eeac 100644 --- a/src/corelib/codecs/qiconvcodec_p.h +++ b/src/corelib/codecs/qiconvcodec_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/codecs/qisciicodec.cpp b/src/corelib/codecs/qisciicodec.cpp index e66f424e43..e17b21a507 100644 --- a/src/corelib/codecs/qisciicodec.cpp +++ b/src/corelib/codecs/qisciicodec.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/codecs/qisciicodec_p.h b/src/corelib/codecs/qisciicodec_p.h index 9ae450b848..d529be1215 100644 --- a/src/corelib/codecs/qisciicodec_p.h +++ b/src/corelib/codecs/qisciicodec_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/codecs/qlatincodec.cpp b/src/corelib/codecs/qlatincodec.cpp index 3c69ab0dd7..d95fcfc601 100644 --- a/src/corelib/codecs/qlatincodec.cpp +++ b/src/corelib/codecs/qlatincodec.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/codecs/qlatincodec_p.h b/src/corelib/codecs/qlatincodec_p.h index f7930e72f6..71eded6d08 100644 --- a/src/corelib/codecs/qlatincodec_p.h +++ b/src/corelib/codecs/qlatincodec_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/codecs/qsimplecodec.cpp b/src/corelib/codecs/qsimplecodec.cpp index d24b4d4cfd..ed8bc76c07 100644 --- a/src/corelib/codecs/qsimplecodec.cpp +++ b/src/corelib/codecs/qsimplecodec.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/codecs/qsimplecodec_p.h b/src/corelib/codecs/qsimplecodec_p.h index fc28c97c67..fbff15b6aa 100644 --- a/src/corelib/codecs/qsimplecodec_p.h +++ b/src/corelib/codecs/qsimplecodec_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/codecs/qtextcodec.cpp b/src/corelib/codecs/qtextcodec.cpp index 42fac98a71..ff1db7c67e 100644 --- a/src/corelib/codecs/qtextcodec.cpp +++ b/src/corelib/codecs/qtextcodec.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/codecs/qtextcodec.h b/src/corelib/codecs/qtextcodec.h index 015c0941f2..97eba2009a 100644 --- a/src/corelib/codecs/qtextcodec.h +++ b/src/corelib/codecs/qtextcodec.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/codecs/qtextcodec_p.h b/src/corelib/codecs/qtextcodec_p.h index ed09c4d1ac..03d9d3dfaf 100644 --- a/src/corelib/codecs/qtextcodec_p.h +++ b/src/corelib/codecs/qtextcodec_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/codecs/qtextcodec_symbian.cpp b/src/corelib/codecs/qtextcodec_symbian.cpp index c8a7357edc..2b1c98f91d 100644 --- a/src/corelib/codecs/qtextcodec_symbian.cpp +++ b/src/corelib/codecs/qtextcodec_symbian.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/codecs/qtextcodecplugin.cpp b/src/corelib/codecs/qtextcodecplugin.cpp index 91b172d591..4eb075c5f2 100644 --- a/src/corelib/codecs/qtextcodecplugin.cpp +++ b/src/corelib/codecs/qtextcodecplugin.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/codecs/qtextcodecplugin.h b/src/corelib/codecs/qtextcodecplugin.h index d80b173c8c..9a00bbc9fa 100644 --- a/src/corelib/codecs/qtextcodecplugin.h +++ b/src/corelib/codecs/qtextcodecplugin.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/codecs/qtsciicodec.cpp b/src/corelib/codecs/qtsciicodec.cpp index 868136605e..c158ad2dc5 100644 --- a/src/corelib/codecs/qtsciicodec.cpp +++ b/src/corelib/codecs/qtsciicodec.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/codecs/qtsciicodec_p.h b/src/corelib/codecs/qtsciicodec_p.h index b55d8bf288..b74b38c429 100644 --- a/src/corelib/codecs/qtsciicodec_p.h +++ b/src/corelib/codecs/qtsciicodec_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/codecs/qutfcodec.cpp b/src/corelib/codecs/qutfcodec.cpp index 34e4695a26..d279f8591c 100644 --- a/src/corelib/codecs/qutfcodec.cpp +++ b/src/corelib/codecs/qutfcodec.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/codecs/qutfcodec_p.h b/src/corelib/codecs/qutfcodec_p.h index 982a3d198a..737697f5d6 100644 --- a/src/corelib/codecs/qutfcodec_p.h +++ b/src/corelib/codecs/qutfcodec_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qfuture.cpp b/src/corelib/concurrent/qfuture.cpp index 5bffd66fc3..81655502e9 100644 --- a/src/corelib/concurrent/qfuture.cpp +++ b/src/corelib/concurrent/qfuture.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qfuture.h b/src/corelib/concurrent/qfuture.h index 911fb7ecc5..6407fc39e7 100644 --- a/src/corelib/concurrent/qfuture.h +++ b/src/corelib/concurrent/qfuture.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qfutureinterface.cpp b/src/corelib/concurrent/qfutureinterface.cpp index f54b335403..63033080a1 100644 --- a/src/corelib/concurrent/qfutureinterface.cpp +++ b/src/corelib/concurrent/qfutureinterface.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qfutureinterface.h b/src/corelib/concurrent/qfutureinterface.h index b92a47a33d..2acd1f46fd 100644 --- a/src/corelib/concurrent/qfutureinterface.h +++ b/src/corelib/concurrent/qfutureinterface.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qfutureinterface_p.h b/src/corelib/concurrent/qfutureinterface_p.h index 7b5275f5f8..96567c35eb 100644 --- a/src/corelib/concurrent/qfutureinterface_p.h +++ b/src/corelib/concurrent/qfutureinterface_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qfuturesynchronizer.cpp b/src/corelib/concurrent/qfuturesynchronizer.cpp index 18990ae2f0..d46aa3e7e7 100644 --- a/src/corelib/concurrent/qfuturesynchronizer.cpp +++ b/src/corelib/concurrent/qfuturesynchronizer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qfuturesynchronizer.h b/src/corelib/concurrent/qfuturesynchronizer.h index ba838a8b66..4fc1987f65 100644 --- a/src/corelib/concurrent/qfuturesynchronizer.h +++ b/src/corelib/concurrent/qfuturesynchronizer.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qfuturewatcher.cpp b/src/corelib/concurrent/qfuturewatcher.cpp index e405896f0b..e0f197c7e7 100644 --- a/src/corelib/concurrent/qfuturewatcher.cpp +++ b/src/corelib/concurrent/qfuturewatcher.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qfuturewatcher.h b/src/corelib/concurrent/qfuturewatcher.h index a5f723c100..efd7d94101 100644 --- a/src/corelib/concurrent/qfuturewatcher.h +++ b/src/corelib/concurrent/qfuturewatcher.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qfuturewatcher_p.h b/src/corelib/concurrent/qfuturewatcher_p.h index e90bff1e9b..4898779c33 100644 --- a/src/corelib/concurrent/qfuturewatcher_p.h +++ b/src/corelib/concurrent/qfuturewatcher_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qrunnable.cpp b/src/corelib/concurrent/qrunnable.cpp index 9ac335bc83..e5f7dc0efb 100644 --- a/src/corelib/concurrent/qrunnable.cpp +++ b/src/corelib/concurrent/qrunnable.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qrunnable.h b/src/corelib/concurrent/qrunnable.h index 34ef16bc10..d4b3bda956 100644 --- a/src/corelib/concurrent/qrunnable.h +++ b/src/corelib/concurrent/qrunnable.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qtconcurrentcompilertest.h b/src/corelib/concurrent/qtconcurrentcompilertest.h index c139c7a8b2..b6385b5a8f 100644 --- a/src/corelib/concurrent/qtconcurrentcompilertest.h +++ b/src/corelib/concurrent/qtconcurrentcompilertest.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qtconcurrentexception.cpp b/src/corelib/concurrent/qtconcurrentexception.cpp index 237152c0d3..3bc4c05684 100644 --- a/src/corelib/concurrent/qtconcurrentexception.cpp +++ b/src/corelib/concurrent/qtconcurrentexception.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qtconcurrentexception.h b/src/corelib/concurrent/qtconcurrentexception.h index 1c100a5206..c926d9ffe7 100644 --- a/src/corelib/concurrent/qtconcurrentexception.h +++ b/src/corelib/concurrent/qtconcurrentexception.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qtconcurrentfilter.cpp b/src/corelib/concurrent/qtconcurrentfilter.cpp index dff5e2e5ed..0b3ddd829d 100644 --- a/src/corelib/concurrent/qtconcurrentfilter.cpp +++ b/src/corelib/concurrent/qtconcurrentfilter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qtconcurrentfilter.h b/src/corelib/concurrent/qtconcurrentfilter.h index d8c5f43a48..c9ed9bbdfa 100644 --- a/src/corelib/concurrent/qtconcurrentfilter.h +++ b/src/corelib/concurrent/qtconcurrentfilter.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qtconcurrentfilterkernel.h b/src/corelib/concurrent/qtconcurrentfilterkernel.h index 95dc5b70be..61d13423a3 100644 --- a/src/corelib/concurrent/qtconcurrentfilterkernel.h +++ b/src/corelib/concurrent/qtconcurrentfilterkernel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qtconcurrentfunctionwrappers.h b/src/corelib/concurrent/qtconcurrentfunctionwrappers.h index 1e09221cee..1468b4e4e6 100644 --- a/src/corelib/concurrent/qtconcurrentfunctionwrappers.h +++ b/src/corelib/concurrent/qtconcurrentfunctionwrappers.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qtconcurrentiteratekernel.cpp b/src/corelib/concurrent/qtconcurrentiteratekernel.cpp index c9ea79bd34..9b3b177ce8 100644 --- a/src/corelib/concurrent/qtconcurrentiteratekernel.cpp +++ b/src/corelib/concurrent/qtconcurrentiteratekernel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qtconcurrentiteratekernel.h b/src/corelib/concurrent/qtconcurrentiteratekernel.h index 49c053caf7..6adb05574b 100644 --- a/src/corelib/concurrent/qtconcurrentiteratekernel.h +++ b/src/corelib/concurrent/qtconcurrentiteratekernel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qtconcurrentmap.cpp b/src/corelib/concurrent/qtconcurrentmap.cpp index ebd0ccdcd8..f078a0646a 100644 --- a/src/corelib/concurrent/qtconcurrentmap.cpp +++ b/src/corelib/concurrent/qtconcurrentmap.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qtconcurrentmap.h b/src/corelib/concurrent/qtconcurrentmap.h index 166d5c8527..d735045173 100644 --- a/src/corelib/concurrent/qtconcurrentmap.h +++ b/src/corelib/concurrent/qtconcurrentmap.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qtconcurrentmapkernel.h b/src/corelib/concurrent/qtconcurrentmapkernel.h index 48f5b60de1..ed8a1543ce 100644 --- a/src/corelib/concurrent/qtconcurrentmapkernel.h +++ b/src/corelib/concurrent/qtconcurrentmapkernel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qtconcurrentmedian.h b/src/corelib/concurrent/qtconcurrentmedian.h index e563b3bd3a..13983fd2a4 100644 --- a/src/corelib/concurrent/qtconcurrentmedian.h +++ b/src/corelib/concurrent/qtconcurrentmedian.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qtconcurrentreducekernel.h b/src/corelib/concurrent/qtconcurrentreducekernel.h index ebc37e7936..1a30d2e3e3 100644 --- a/src/corelib/concurrent/qtconcurrentreducekernel.h +++ b/src/corelib/concurrent/qtconcurrentreducekernel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qtconcurrentresultstore.cpp b/src/corelib/concurrent/qtconcurrentresultstore.cpp index 89f561c2ac..e9d76448a7 100644 --- a/src/corelib/concurrent/qtconcurrentresultstore.cpp +++ b/src/corelib/concurrent/qtconcurrentresultstore.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qtconcurrentresultstore.h b/src/corelib/concurrent/qtconcurrentresultstore.h index 627aca27bd..c2a9f0a3e2 100644 --- a/src/corelib/concurrent/qtconcurrentresultstore.h +++ b/src/corelib/concurrent/qtconcurrentresultstore.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qtconcurrentrun.cpp b/src/corelib/concurrent/qtconcurrentrun.cpp index 87952da882..676a542471 100644 --- a/src/corelib/concurrent/qtconcurrentrun.cpp +++ b/src/corelib/concurrent/qtconcurrentrun.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qtconcurrentrun.h b/src/corelib/concurrent/qtconcurrentrun.h index ef51b2adcb..06da380430 100644 --- a/src/corelib/concurrent/qtconcurrentrun.h +++ b/src/corelib/concurrent/qtconcurrentrun.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qtconcurrentrunbase.h b/src/corelib/concurrent/qtconcurrentrunbase.h index c1270e953b..51390028b0 100644 --- a/src/corelib/concurrent/qtconcurrentrunbase.h +++ b/src/corelib/concurrent/qtconcurrentrunbase.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qtconcurrentstoredfunctioncall.h b/src/corelib/concurrent/qtconcurrentstoredfunctioncall.h index 9beb0b9c35..8a02497ddd 100644 --- a/src/corelib/concurrent/qtconcurrentstoredfunctioncall.h +++ b/src/corelib/concurrent/qtconcurrentstoredfunctioncall.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qtconcurrentthreadengine.cpp b/src/corelib/concurrent/qtconcurrentthreadengine.cpp index 71a47164d2..559e7bb490 100644 --- a/src/corelib/concurrent/qtconcurrentthreadengine.cpp +++ b/src/corelib/concurrent/qtconcurrentthreadengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qtconcurrentthreadengine.h b/src/corelib/concurrent/qtconcurrentthreadengine.h index 38d01ee11a..98edd2d9ec 100644 --- a/src/corelib/concurrent/qtconcurrentthreadengine.h +++ b/src/corelib/concurrent/qtconcurrentthreadengine.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qthreadpool.cpp b/src/corelib/concurrent/qthreadpool.cpp index 91e77d9eff..2cc31b9943 100644 --- a/src/corelib/concurrent/qthreadpool.cpp +++ b/src/corelib/concurrent/qthreadpool.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qthreadpool.h b/src/corelib/concurrent/qthreadpool.h index d857073b42..1b5677b9fa 100644 --- a/src/corelib/concurrent/qthreadpool.h +++ b/src/corelib/concurrent/qthreadpool.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/concurrent/qthreadpool_p.h b/src/corelib/concurrent/qthreadpool_p.h index db50ec92c6..009dfcdee2 100644 --- a/src/corelib/concurrent/qthreadpool_p.h +++ b/src/corelib/concurrent/qthreadpool_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/global/qconfig-dist.h b/src/corelib/global/qconfig-dist.h index bc3ab9a024..727eea0018 100644 --- a/src/corelib/global/qconfig-dist.h +++ b/src/corelib/global/qconfig-dist.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/global/qconfig-large.h b/src/corelib/global/qconfig-large.h index 65367e9be1..8a2553a6a6 100644 --- a/src/corelib/global/qconfig-large.h +++ b/src/corelib/global/qconfig-large.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/global/qconfig-medium.h b/src/corelib/global/qconfig-medium.h index f9ecf92388..96207d1cd8 100644 --- a/src/corelib/global/qconfig-medium.h +++ b/src/corelib/global/qconfig-medium.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/global/qconfig-minimal.h b/src/corelib/global/qconfig-minimal.h index ace1eea508..05a595ed55 100644 --- a/src/corelib/global/qconfig-minimal.h +++ b/src/corelib/global/qconfig-minimal.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/global/qconfig-nacl.h b/src/corelib/global/qconfig-nacl.h index 18ae261809..6b943ab422 100644 --- a/src/corelib/global/qconfig-nacl.h +++ b/src/corelib/global/qconfig-nacl.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/global/qconfig-small.h b/src/corelib/global/qconfig-small.h index 4f34169d75..fefbfb6f02 100644 --- a/src/corelib/global/qconfig-small.h +++ b/src/corelib/global/qconfig-small.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/global/qendian.h b/src/corelib/global/qendian.h index 8a17af55f2..66d66cb78f 100644 --- a/src/corelib/global/qendian.h +++ b/src/corelib/global/qendian.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/global/qendian.qdoc b/src/corelib/global/qendian.qdoc index 307db59426..3133d3c252 100644 --- a/src/corelib/global/qendian.qdoc +++ b/src/corelib/global/qendian.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/global/qfeatures.h b/src/corelib/global/qfeatures.h index e0b8a8fb6d..027068b61c 100644 --- a/src/corelib/global/qfeatures.h +++ b/src/corelib/global/qfeatures.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/global/qglobal.cpp b/src/corelib/global/qglobal.cpp index 615598b378..2953e2620b 100644 --- a/src/corelib/global/qglobal.cpp +++ b/src/corelib/global/qglobal.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/global/qglobal.h b/src/corelib/global/qglobal.h index ac721f19ba..f1ce80e1ea 100644 --- a/src/corelib/global/qglobal.h +++ b/src/corelib/global/qglobal.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/global/qlibraryinfo.cpp b/src/corelib/global/qlibraryinfo.cpp index 7868d3db59..375349c18d 100644 --- a/src/corelib/global/qlibraryinfo.cpp +++ b/src/corelib/global/qlibraryinfo.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** @@ -498,7 +498,7 @@ extern "C" void qt_core_boilerplate(); void qt_core_boilerplate() { printf("This is the QtCore library version " QT_VERSION_STR "\n" - "Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).\n" + "Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies).\n" "Contact: Nokia Corporation (qt-info@nokia.com)\n" "\n" "Build date: %s\n" diff --git a/src/corelib/global/qlibraryinfo.h b/src/corelib/global/qlibraryinfo.h index 8d1607d045..21fcdeb62c 100644 --- a/src/corelib/global/qlibraryinfo.h +++ b/src/corelib/global/qlibraryinfo.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/global/qmalloc.cpp b/src/corelib/global/qmalloc.cpp index 466f70614d..2da9e34b1e 100644 --- a/src/corelib/global/qmalloc.cpp +++ b/src/corelib/global/qmalloc.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/global/qnamespace.h b/src/corelib/global/qnamespace.h index 51d9571a9d..0aa3f3c632 100644 --- a/src/corelib/global/qnamespace.h +++ b/src/corelib/global/qnamespace.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/global/qnamespace.qdoc b/src/corelib/global/qnamespace.qdoc index 20ae1baa80..267c25deb3 100644 --- a/src/corelib/global/qnamespace.qdoc +++ b/src/corelib/global/qnamespace.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/global/qnumeric.cpp b/src/corelib/global/qnumeric.cpp index 621b9885b0..7677d86db0 100644 --- a/src/corelib/global/qnumeric.cpp +++ b/src/corelib/global/qnumeric.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/global/qnumeric.h b/src/corelib/global/qnumeric.h index bd8c2a4237..9f5ce691b1 100644 --- a/src/corelib/global/qnumeric.h +++ b/src/corelib/global/qnumeric.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/global/qnumeric_p.h b/src/corelib/global/qnumeric_p.h index 336b348f3f..94d64409b3 100644 --- a/src/corelib/global/qnumeric_p.h +++ b/src/corelib/global/qnumeric_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/global/qt_pch.h b/src/corelib/global/qt_pch.h index 0926e02af1..a16e6be567 100644 --- a/src/corelib/global/qt_pch.h +++ b/src/corelib/global/qt_pch.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/global/qt_windows.h b/src/corelib/global/qt_windows.h index ba4041e765..3081645b6b 100644 --- a/src/corelib/global/qt_windows.h +++ b/src/corelib/global/qt_windows.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qabstractfileengine.cpp b/src/corelib/io/qabstractfileengine.cpp index d2b250d336..c315d33606 100644 --- a/src/corelib/io/qabstractfileengine.cpp +++ b/src/corelib/io/qabstractfileengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qabstractfileengine.h b/src/corelib/io/qabstractfileengine.h index cc167a2aa6..c9bab7d435 100644 --- a/src/corelib/io/qabstractfileengine.h +++ b/src/corelib/io/qabstractfileengine.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qabstractfileengine_p.h b/src/corelib/io/qabstractfileengine_p.h index dd9a707316..72b8339e39 100644 --- a/src/corelib/io/qabstractfileengine_p.h +++ b/src/corelib/io/qabstractfileengine_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qbuffer.cpp b/src/corelib/io/qbuffer.cpp index 35e7b6809c..dd7e9d2427 100644 --- a/src/corelib/io/qbuffer.cpp +++ b/src/corelib/io/qbuffer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qbuffer.h b/src/corelib/io/qbuffer.h index 9227a2f3dc..b222c7d6ca 100644 --- a/src/corelib/io/qbuffer.h +++ b/src/corelib/io/qbuffer.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qdatastream.cpp b/src/corelib/io/qdatastream.cpp index 0e0a47267a..fb2528e45f 100644 --- a/src/corelib/io/qdatastream.cpp +++ b/src/corelib/io/qdatastream.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qdatastream.h b/src/corelib/io/qdatastream.h index 1ae0573f6c..30cf8417ad 100644 --- a/src/corelib/io/qdatastream.h +++ b/src/corelib/io/qdatastream.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qdatastream_p.h b/src/corelib/io/qdatastream_p.h index d372d54e36..2501e98d1d 100644 --- a/src/corelib/io/qdatastream_p.h +++ b/src/corelib/io/qdatastream_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qdataurl.cpp b/src/corelib/io/qdataurl.cpp index 2764212279..7e856ad647 100644 --- a/src/corelib/io/qdataurl.cpp +++ b/src/corelib/io/qdataurl.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qdataurl_p.h b/src/corelib/io/qdataurl_p.h index a8c9ed847b..b92f363e1d 100644 --- a/src/corelib/io/qdataurl_p.h +++ b/src/corelib/io/qdataurl_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qdebug.cpp b/src/corelib/io/qdebug.cpp index a27716b8dc..8ca15b19ca 100644 --- a/src/corelib/io/qdebug.cpp +++ b/src/corelib/io/qdebug.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qdebug.h b/src/corelib/io/qdebug.h index 67221c7ce2..d5fe36e0c8 100644 --- a/src/corelib/io/qdebug.h +++ b/src/corelib/io/qdebug.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qdir.cpp b/src/corelib/io/qdir.cpp index 04e61e5b26..d6979bad57 100644 --- a/src/corelib/io/qdir.cpp +++ b/src/corelib/io/qdir.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qdir.h b/src/corelib/io/qdir.h index e246f2f1aa..5b058272e7 100644 --- a/src/corelib/io/qdir.h +++ b/src/corelib/io/qdir.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qdir_p.h b/src/corelib/io/qdir_p.h index a34427a716..7865c1d5a3 100644 --- a/src/corelib/io/qdir_p.h +++ b/src/corelib/io/qdir_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qdiriterator.cpp b/src/corelib/io/qdiriterator.cpp index 0b02adb4b6..28aa4a0f59 100644 --- a/src/corelib/io/qdiriterator.cpp +++ b/src/corelib/io/qdiriterator.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qdiriterator.h b/src/corelib/io/qdiriterator.h index 5ad8acb496..be03415372 100644 --- a/src/corelib/io/qdiriterator.h +++ b/src/corelib/io/qdiriterator.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfile.cpp b/src/corelib/io/qfile.cpp index d5118525cf..95d842da42 100644 --- a/src/corelib/io/qfile.cpp +++ b/src/corelib/io/qfile.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfile.h b/src/corelib/io/qfile.h index 554b2954e1..903ba13963 100644 --- a/src/corelib/io/qfile.h +++ b/src/corelib/io/qfile.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfile_p.h b/src/corelib/io/qfile_p.h index 3072f5bc9e..24013c3c3d 100644 --- a/src/corelib/io/qfile_p.h +++ b/src/corelib/io/qfile_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfileinfo.cpp b/src/corelib/io/qfileinfo.cpp index 1ea6c8d50a..226b5d3560 100644 --- a/src/corelib/io/qfileinfo.cpp +++ b/src/corelib/io/qfileinfo.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfileinfo.h b/src/corelib/io/qfileinfo.h index ef4573132c..6d6da3527a 100644 --- a/src/corelib/io/qfileinfo.h +++ b/src/corelib/io/qfileinfo.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfileinfo_p.h b/src/corelib/io/qfileinfo_p.h index 23ea0225f5..64e644f29f 100644 --- a/src/corelib/io/qfileinfo_p.h +++ b/src/corelib/io/qfileinfo_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfilesystemengine.cpp b/src/corelib/io/qfilesystemengine.cpp index 72900ec033..ab10f30585 100644 --- a/src/corelib/io/qfilesystemengine.cpp +++ b/src/corelib/io/qfilesystemengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfilesystemengine_mac.cpp b/src/corelib/io/qfilesystemengine_mac.cpp index 0d1556522a..f5e61ff29f 100644 --- a/src/corelib/io/qfilesystemengine_mac.cpp +++ b/src/corelib/io/qfilesystemengine_mac.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfilesystemengine_p.h b/src/corelib/io/qfilesystemengine_p.h index bbd4c4c020..af32a1c575 100644 --- a/src/corelib/io/qfilesystemengine_p.h +++ b/src/corelib/io/qfilesystemengine_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfilesystemengine_unix.cpp b/src/corelib/io/qfilesystemengine_unix.cpp index 9778b526ac..901aaf8f91 100644 --- a/src/corelib/io/qfilesystemengine_unix.cpp +++ b/src/corelib/io/qfilesystemengine_unix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfilesystemengine_win.cpp b/src/corelib/io/qfilesystemengine_win.cpp index 10ba95e97f..5d4f4c379e 100644 --- a/src/corelib/io/qfilesystemengine_win.cpp +++ b/src/corelib/io/qfilesystemengine_win.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfilesystementry.cpp b/src/corelib/io/qfilesystementry.cpp index 2f37542f66..11b73dd745 100644 --- a/src/corelib/io/qfilesystementry.cpp +++ b/src/corelib/io/qfilesystementry.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfilesystementry_p.h b/src/corelib/io/qfilesystementry_p.h index 8d524c087e..61902f77d0 100644 --- a/src/corelib/io/qfilesystementry_p.h +++ b/src/corelib/io/qfilesystementry_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfilesystemiterator_p.h b/src/corelib/io/qfilesystemiterator_p.h index 6f2d1e1c6e..7df5988459 100644 --- a/src/corelib/io/qfilesystemiterator_p.h +++ b/src/corelib/io/qfilesystemiterator_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfilesystemiterator_unix.cpp b/src/corelib/io/qfilesystemiterator_unix.cpp index 6987660ea3..d0eb04a145 100644 --- a/src/corelib/io/qfilesystemiterator_unix.cpp +++ b/src/corelib/io/qfilesystemiterator_unix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfilesystemiterator_win.cpp b/src/corelib/io/qfilesystemiterator_win.cpp index 5fff4f82c6..1f5cf356a0 100644 --- a/src/corelib/io/qfilesystemiterator_win.cpp +++ b/src/corelib/io/qfilesystemiterator_win.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfilesystemmetadata_p.h b/src/corelib/io/qfilesystemmetadata_p.h index 64749e3889..6ed5cec954 100644 --- a/src/corelib/io/qfilesystemmetadata_p.h +++ b/src/corelib/io/qfilesystemmetadata_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfilesystemwatcher.cpp b/src/corelib/io/qfilesystemwatcher.cpp index c5d49a8caa..4e9ac9b689 100644 --- a/src/corelib/io/qfilesystemwatcher.cpp +++ b/src/corelib/io/qfilesystemwatcher.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfilesystemwatcher.h b/src/corelib/io/qfilesystemwatcher.h index a6954850f0..7b7dbe98c5 100644 --- a/src/corelib/io/qfilesystemwatcher.h +++ b/src/corelib/io/qfilesystemwatcher.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfilesystemwatcher_fsevents.cpp b/src/corelib/io/qfilesystemwatcher_fsevents.cpp index 95da897974..8f7094f9e7 100644 --- a/src/corelib/io/qfilesystemwatcher_fsevents.cpp +++ b/src/corelib/io/qfilesystemwatcher_fsevents.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfilesystemwatcher_fsevents_p.h b/src/corelib/io/qfilesystemwatcher_fsevents_p.h index 3830002c0a..311a5b55e3 100644 --- a/src/corelib/io/qfilesystemwatcher_fsevents_p.h +++ b/src/corelib/io/qfilesystemwatcher_fsevents_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfilesystemwatcher_inotify.cpp b/src/corelib/io/qfilesystemwatcher_inotify.cpp index ef302243da..ffe3a2e067 100644 --- a/src/corelib/io/qfilesystemwatcher_inotify.cpp +++ b/src/corelib/io/qfilesystemwatcher_inotify.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfilesystemwatcher_inotify_p.h b/src/corelib/io/qfilesystemwatcher_inotify_p.h index 0abd205237..7d45711006 100644 --- a/src/corelib/io/qfilesystemwatcher_inotify_p.h +++ b/src/corelib/io/qfilesystemwatcher_inotify_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfilesystemwatcher_kqueue.cpp b/src/corelib/io/qfilesystemwatcher_kqueue.cpp index 387a7f7c4b..7379c69d66 100644 --- a/src/corelib/io/qfilesystemwatcher_kqueue.cpp +++ b/src/corelib/io/qfilesystemwatcher_kqueue.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfilesystemwatcher_kqueue_p.h b/src/corelib/io/qfilesystemwatcher_kqueue_p.h index fd9d820e7d..13c72d1854 100644 --- a/src/corelib/io/qfilesystemwatcher_kqueue_p.h +++ b/src/corelib/io/qfilesystemwatcher_kqueue_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfilesystemwatcher_p.h b/src/corelib/io/qfilesystemwatcher_p.h index 52e88002ef..cf0f283bc6 100644 --- a/src/corelib/io/qfilesystemwatcher_p.h +++ b/src/corelib/io/qfilesystemwatcher_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfilesystemwatcher_polling.cpp b/src/corelib/io/qfilesystemwatcher_polling.cpp index be5d855e40..54bdfaf8cb 100644 --- a/src/corelib/io/qfilesystemwatcher_polling.cpp +++ b/src/corelib/io/qfilesystemwatcher_polling.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfilesystemwatcher_polling_p.h b/src/corelib/io/qfilesystemwatcher_polling_p.h index 810b85a409..740dcc284f 100644 --- a/src/corelib/io/qfilesystemwatcher_polling_p.h +++ b/src/corelib/io/qfilesystemwatcher_polling_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfilesystemwatcher_win.cpp b/src/corelib/io/qfilesystemwatcher_win.cpp index 4e94623844..270ed31413 100644 --- a/src/corelib/io/qfilesystemwatcher_win.cpp +++ b/src/corelib/io/qfilesystemwatcher_win.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfilesystemwatcher_win_p.h b/src/corelib/io/qfilesystemwatcher_win_p.h index 3e9938a490..e0b0b0b16b 100644 --- a/src/corelib/io/qfilesystemwatcher_win_p.h +++ b/src/corelib/io/qfilesystemwatcher_win_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfsfileengine.cpp b/src/corelib/io/qfsfileengine.cpp index 0d23a27909..a49ea84603 100644 --- a/src/corelib/io/qfsfileengine.cpp +++ b/src/corelib/io/qfsfileengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfsfileengine.h b/src/corelib/io/qfsfileengine.h index 2e0b1eb923..0ed883a4a7 100644 --- a/src/corelib/io/qfsfileengine.h +++ b/src/corelib/io/qfsfileengine.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfsfileengine_iterator.cpp b/src/corelib/io/qfsfileengine_iterator.cpp index 323ab58335..2d162f6a7d 100644 --- a/src/corelib/io/qfsfileengine_iterator.cpp +++ b/src/corelib/io/qfsfileengine_iterator.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfsfileengine_iterator_p.h b/src/corelib/io/qfsfileengine_iterator_p.h index deccb01bfb..782930a52c 100644 --- a/src/corelib/io/qfsfileengine_iterator_p.h +++ b/src/corelib/io/qfsfileengine_iterator_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfsfileengine_p.h b/src/corelib/io/qfsfileengine_p.h index 89c08aeca7..158c6f3a23 100644 --- a/src/corelib/io/qfsfileengine_p.h +++ b/src/corelib/io/qfsfileengine_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfsfileengine_unix.cpp b/src/corelib/io/qfsfileengine_unix.cpp index 681e55dff7..b09518865e 100644 --- a/src/corelib/io/qfsfileengine_unix.cpp +++ b/src/corelib/io/qfsfileengine_unix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qfsfileengine_win.cpp b/src/corelib/io/qfsfileengine_win.cpp index f2b3e5f534..e0abd9298f 100644 --- a/src/corelib/io/qfsfileengine_win.cpp +++ b/src/corelib/io/qfsfileengine_win.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qiodevice.cpp b/src/corelib/io/qiodevice.cpp index 8e1b2d5d0c..ef530f379f 100644 --- a/src/corelib/io/qiodevice.cpp +++ b/src/corelib/io/qiodevice.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qiodevice.h b/src/corelib/io/qiodevice.h index 7d4afca850..4b34ad4f69 100644 --- a/src/corelib/io/qiodevice.h +++ b/src/corelib/io/qiodevice.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qiodevice_p.h b/src/corelib/io/qiodevice_p.h index 3ccad6254a..2515fe5705 100644 --- a/src/corelib/io/qiodevice_p.h +++ b/src/corelib/io/qiodevice_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qnoncontiguousbytedevice.cpp b/src/corelib/io/qnoncontiguousbytedevice.cpp index 113ba4b4bb..ba711493c6 100644 --- a/src/corelib/io/qnoncontiguousbytedevice.cpp +++ b/src/corelib/io/qnoncontiguousbytedevice.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qnoncontiguousbytedevice_p.h b/src/corelib/io/qnoncontiguousbytedevice_p.h index c7c94243b9..ded605681e 100644 --- a/src/corelib/io/qnoncontiguousbytedevice_p.h +++ b/src/corelib/io/qnoncontiguousbytedevice_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qprocess.cpp b/src/corelib/io/qprocess.cpp index d2aee16c45..6f57f9f0e8 100644 --- a/src/corelib/io/qprocess.cpp +++ b/src/corelib/io/qprocess.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qprocess.h b/src/corelib/io/qprocess.h index b2a5a4cbff..96a1edefd8 100644 --- a/src/corelib/io/qprocess.h +++ b/src/corelib/io/qprocess.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qprocess_p.h b/src/corelib/io/qprocess_p.h index 5bebff089e..7e0fecc320 100644 --- a/src/corelib/io/qprocess_p.h +++ b/src/corelib/io/qprocess_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qprocess_unix.cpp b/src/corelib/io/qprocess_unix.cpp index 5fc69ed2cd..f01df3c078 100644 --- a/src/corelib/io/qprocess_unix.cpp +++ b/src/corelib/io/qprocess_unix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qprocess_win.cpp b/src/corelib/io/qprocess_win.cpp index d47e55dee4..410f153447 100644 --- a/src/corelib/io/qprocess_win.cpp +++ b/src/corelib/io/qprocess_win.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qresource.cpp b/src/corelib/io/qresource.cpp index 37f4591859..0ae3f9e647 100644 --- a/src/corelib/io/qresource.cpp +++ b/src/corelib/io/qresource.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qresource.h b/src/corelib/io/qresource.h index 1edc7a4f13..452e141e41 100644 --- a/src/corelib/io/qresource.h +++ b/src/corelib/io/qresource.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qresource_iterator.cpp b/src/corelib/io/qresource_iterator.cpp index e19bad1e03..3317ef5fff 100644 --- a/src/corelib/io/qresource_iterator.cpp +++ b/src/corelib/io/qresource_iterator.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qresource_iterator_p.h b/src/corelib/io/qresource_iterator_p.h index 519f46199c..3603c64819 100644 --- a/src/corelib/io/qresource_iterator_p.h +++ b/src/corelib/io/qresource_iterator_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qresource_p.h b/src/corelib/io/qresource_p.h index 4beda142ed..f558319dc2 100644 --- a/src/corelib/io/qresource_p.h +++ b/src/corelib/io/qresource_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qsettings.cpp b/src/corelib/io/qsettings.cpp index 37bd8c460d..81dc5bb078 100644 --- a/src/corelib/io/qsettings.cpp +++ b/src/corelib/io/qsettings.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qsettings.h b/src/corelib/io/qsettings.h index b144a9af4c..65aeb89523 100644 --- a/src/corelib/io/qsettings.h +++ b/src/corelib/io/qsettings.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qsettings_mac.cpp b/src/corelib/io/qsettings_mac.cpp index 11e0c3c103..6bb815c561 100644 --- a/src/corelib/io/qsettings_mac.cpp +++ b/src/corelib/io/qsettings_mac.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qsettings_p.h b/src/corelib/io/qsettings_p.h index 5d62c839a6..cf348122dc 100644 --- a/src/corelib/io/qsettings_p.h +++ b/src/corelib/io/qsettings_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qsettings_win.cpp b/src/corelib/io/qsettings_win.cpp index bbc7dd1677..2cac379ec6 100644 --- a/src/corelib/io/qsettings_win.cpp +++ b/src/corelib/io/qsettings_win.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qstandardpaths.cpp b/src/corelib/io/qstandardpaths.cpp index 2f5a01a7b5..5accb61cc5 100644 --- a/src/corelib/io/qstandardpaths.cpp +++ b/src/corelib/io/qstandardpaths.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qstandardpaths.h b/src/corelib/io/qstandardpaths.h index af74bfec10..bae7b3f7b5 100644 --- a/src/corelib/io/qstandardpaths.h +++ b/src/corelib/io/qstandardpaths.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qstandardpaths_mac.cpp b/src/corelib/io/qstandardpaths_mac.cpp index 104ba221fa..f37c21ed39 100644 --- a/src/corelib/io/qstandardpaths_mac.cpp +++ b/src/corelib/io/qstandardpaths_mac.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qstandardpaths_unix.cpp b/src/corelib/io/qstandardpaths_unix.cpp index 4a4b5049aa..5aef52eaba 100644 --- a/src/corelib/io/qstandardpaths_unix.cpp +++ b/src/corelib/io/qstandardpaths_unix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qstandardpaths_win.cpp b/src/corelib/io/qstandardpaths_win.cpp index 7b21363858..e3f86b7134 100644 --- a/src/corelib/io/qstandardpaths_win.cpp +++ b/src/corelib/io/qstandardpaths_win.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qtemporarydir.cpp b/src/corelib/io/qtemporarydir.cpp index 78ec1774eb..15d3258a9a 100644 --- a/src/corelib/io/qtemporarydir.cpp +++ b/src/corelib/io/qtemporarydir.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qtemporarydir.h b/src/corelib/io/qtemporarydir.h index da0d1214c4..22c0a271e4 100644 --- a/src/corelib/io/qtemporarydir.h +++ b/src/corelib/io/qtemporarydir.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qtemporaryfile.cpp b/src/corelib/io/qtemporaryfile.cpp index 677be45f65..eb645fabe8 100644 --- a/src/corelib/io/qtemporaryfile.cpp +++ b/src/corelib/io/qtemporaryfile.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qtemporaryfile.h b/src/corelib/io/qtemporaryfile.h index 282b897813..20956d2cf0 100644 --- a/src/corelib/io/qtemporaryfile.h +++ b/src/corelib/io/qtemporaryfile.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qtextstream.cpp b/src/corelib/io/qtextstream.cpp index 177f73def3..8c7f57fddf 100644 --- a/src/corelib/io/qtextstream.cpp +++ b/src/corelib/io/qtextstream.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qtextstream.h b/src/corelib/io/qtextstream.h index db038855a8..0531d4017d 100644 --- a/src/corelib/io/qtextstream.h +++ b/src/corelib/io/qtextstream.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qtldurl.cpp b/src/corelib/io/qtldurl.cpp index 7d06ca4b17..2c725f17fd 100644 --- a/src/corelib/io/qtldurl.cpp +++ b/src/corelib/io/qtldurl.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qtldurl_p.h b/src/corelib/io/qtldurl_p.h index 77c0a15823..0a94f3015b 100644 --- a/src/corelib/io/qtldurl_p.h +++ b/src/corelib/io/qtldurl_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qurl.cpp b/src/corelib/io/qurl.cpp index c921a89b30..53b4df4729 100644 --- a/src/corelib/io/qurl.cpp +++ b/src/corelib/io/qurl.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qurl.h b/src/corelib/io/qurl.h index e62cd0a85b..75a88e8048 100644 --- a/src/corelib/io/qurl.h +++ b/src/corelib/io/qurl.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qwindowspipereader.cpp b/src/corelib/io/qwindowspipereader.cpp index 0c471e0202..8da786ebd9 100644 --- a/src/corelib/io/qwindowspipereader.cpp +++ b/src/corelib/io/qwindowspipereader.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qwindowspipereader_p.h b/src/corelib/io/qwindowspipereader_p.h index 12dd593f8f..e78d6b29ad 100644 --- a/src/corelib/io/qwindowspipereader_p.h +++ b/src/corelib/io/qwindowspipereader_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qwindowspipewriter.cpp b/src/corelib/io/qwindowspipewriter.cpp index cb802f1d91..a1765b4178 100644 --- a/src/corelib/io/qwindowspipewriter.cpp +++ b/src/corelib/io/qwindowspipewriter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/io/qwindowspipewriter_p.h b/src/corelib/io/qwindowspipewriter_p.h index dfcb77e17c..44a1d04b4e 100644 --- a/src/corelib/io/qwindowspipewriter_p.h +++ b/src/corelib/io/qwindowspipewriter_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/itemmodels/qabstractitemmodel.cpp b/src/corelib/itemmodels/qabstractitemmodel.cpp index a185a1ce83..f320d595e8 100644 --- a/src/corelib/itemmodels/qabstractitemmodel.cpp +++ b/src/corelib/itemmodels/qabstractitemmodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/itemmodels/qabstractitemmodel.h b/src/corelib/itemmodels/qabstractitemmodel.h index 0aa8144602..0ac297e57b 100644 --- a/src/corelib/itemmodels/qabstractitemmodel.h +++ b/src/corelib/itemmodels/qabstractitemmodel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/itemmodels/qabstractitemmodel_p.h b/src/corelib/itemmodels/qabstractitemmodel_p.h index 86680dd0bc..3c5d8e5d20 100644 --- a/src/corelib/itemmodels/qabstractitemmodel_p.h +++ b/src/corelib/itemmodels/qabstractitemmodel_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/itemmodels/qabstractproxymodel.cpp b/src/corelib/itemmodels/qabstractproxymodel.cpp index 4beea7b5d9..46678403db 100644 --- a/src/corelib/itemmodels/qabstractproxymodel.cpp +++ b/src/corelib/itemmodels/qabstractproxymodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/itemmodels/qabstractproxymodel.h b/src/corelib/itemmodels/qabstractproxymodel.h index 655ea1db02..000fc8d0ce 100644 --- a/src/corelib/itemmodels/qabstractproxymodel.h +++ b/src/corelib/itemmodels/qabstractproxymodel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/itemmodels/qabstractproxymodel_p.h b/src/corelib/itemmodels/qabstractproxymodel_p.h index cb798e0439..7d6e49a235 100644 --- a/src/corelib/itemmodels/qabstractproxymodel_p.h +++ b/src/corelib/itemmodels/qabstractproxymodel_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/itemmodels/qitemselectionmodel.cpp b/src/corelib/itemmodels/qitemselectionmodel.cpp index d4a2efd35f..3321735498 100644 --- a/src/corelib/itemmodels/qitemselectionmodel.cpp +++ b/src/corelib/itemmodels/qitemselectionmodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/itemmodels/qitemselectionmodel.h b/src/corelib/itemmodels/qitemselectionmodel.h index be1f34f9a2..3b3fa8d1e8 100644 --- a/src/corelib/itemmodels/qitemselectionmodel.h +++ b/src/corelib/itemmodels/qitemselectionmodel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/itemmodels/qitemselectionmodel_p.h b/src/corelib/itemmodels/qitemselectionmodel_p.h index 5eb9ecccda..919c4fab05 100644 --- a/src/corelib/itemmodels/qitemselectionmodel_p.h +++ b/src/corelib/itemmodels/qitemselectionmodel_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/itemmodels/qsortfilterproxymodel.cpp b/src/corelib/itemmodels/qsortfilterproxymodel.cpp index 085ade1680..3a63c923d3 100644 --- a/src/corelib/itemmodels/qsortfilterproxymodel.cpp +++ b/src/corelib/itemmodels/qsortfilterproxymodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/itemmodels/qsortfilterproxymodel.h b/src/corelib/itemmodels/qsortfilterproxymodel.h index 80f49e405a..c8cd581420 100644 --- a/src/corelib/itemmodels/qsortfilterproxymodel.h +++ b/src/corelib/itemmodels/qsortfilterproxymodel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/itemmodels/qstringlistmodel.cpp b/src/corelib/itemmodels/qstringlistmodel.cpp index 434f790890..5e72977d20 100644 --- a/src/corelib/itemmodels/qstringlistmodel.cpp +++ b/src/corelib/itemmodels/qstringlistmodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/itemmodels/qstringlistmodel.h b/src/corelib/itemmodels/qstringlistmodel.h index 3d1331403f..c70072de9e 100644 --- a/src/corelib/itemmodels/qstringlistmodel.h +++ b/src/corelib/itemmodels/qstringlistmodel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qabstracteventdispatcher.cpp b/src/corelib/kernel/qabstracteventdispatcher.cpp index fae7eee4c3..1d4bf3cf1f 100644 --- a/src/corelib/kernel/qabstracteventdispatcher.cpp +++ b/src/corelib/kernel/qabstracteventdispatcher.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qabstracteventdispatcher.h b/src/corelib/kernel/qabstracteventdispatcher.h index 0add7bc71a..80e77c02af 100644 --- a/src/corelib/kernel/qabstracteventdispatcher.h +++ b/src/corelib/kernel/qabstracteventdispatcher.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qabstracteventdispatcher_p.h b/src/corelib/kernel/qabstracteventdispatcher_p.h index 31c579d865..6e1c81ae33 100644 --- a/src/corelib/kernel/qabstracteventdispatcher_p.h +++ b/src/corelib/kernel/qabstracteventdispatcher_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qbasictimer.cpp b/src/corelib/kernel/qbasictimer.cpp index acefcb88e4..5890df392f 100644 --- a/src/corelib/kernel/qbasictimer.cpp +++ b/src/corelib/kernel/qbasictimer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qbasictimer.h b/src/corelib/kernel/qbasictimer.h index ae5401e99c..84b232e766 100644 --- a/src/corelib/kernel/qbasictimer.h +++ b/src/corelib/kernel/qbasictimer.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qcore_mac.cpp b/src/corelib/kernel/qcore_mac.cpp index 0814c1aec7..88cc83ce48 100644 --- a/src/corelib/kernel/qcore_mac.cpp +++ b/src/corelib/kernel/qcore_mac.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qcore_mac_p.h b/src/corelib/kernel/qcore_mac_p.h index adbad83cad..4efd6bf653 100644 --- a/src/corelib/kernel/qcore_mac_p.h +++ b/src/corelib/kernel/qcore_mac_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qcore_unix.cpp b/src/corelib/kernel/qcore_unix.cpp index f30fceeb68..08a2f69bf3 100644 --- a/src/corelib/kernel/qcore_unix.cpp +++ b/src/corelib/kernel/qcore_unix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qcore_unix_p.h b/src/corelib/kernel/qcore_unix_p.h index e7259d29c9..9ac4f5c480 100644 --- a/src/corelib/kernel/qcore_unix_p.h +++ b/src/corelib/kernel/qcore_unix_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qcoreapplication.cpp b/src/corelib/kernel/qcoreapplication.cpp index e105100e3e..2c462cb42f 100644 --- a/src/corelib/kernel/qcoreapplication.cpp +++ b/src/corelib/kernel/qcoreapplication.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qcoreapplication.h b/src/corelib/kernel/qcoreapplication.h index 0135d88045..abbc6e5821 100644 --- a/src/corelib/kernel/qcoreapplication.h +++ b/src/corelib/kernel/qcoreapplication.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qcoreapplication_mac.cpp b/src/corelib/kernel/qcoreapplication_mac.cpp index 8fec4bfcb2..289c2f4bdb 100644 --- a/src/corelib/kernel/qcoreapplication_mac.cpp +++ b/src/corelib/kernel/qcoreapplication_mac.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qcoreapplication_p.h b/src/corelib/kernel/qcoreapplication_p.h index d61a5a1bf5..692e460114 100644 --- a/src/corelib/kernel/qcoreapplication_p.h +++ b/src/corelib/kernel/qcoreapplication_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qcoreapplication_win.cpp b/src/corelib/kernel/qcoreapplication_win.cpp index 1b51e6f568..3cba628a41 100644 --- a/src/corelib/kernel/qcoreapplication_win.cpp +++ b/src/corelib/kernel/qcoreapplication_win.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qcorecmdlineargs_p.h b/src/corelib/kernel/qcorecmdlineargs_p.h index 2081d5cc17..937c9898cd 100644 --- a/src/corelib/kernel/qcorecmdlineargs_p.h +++ b/src/corelib/kernel/qcorecmdlineargs_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qcoreevent.cpp b/src/corelib/kernel/qcoreevent.cpp index a4db3eeefd..bf8207283b 100644 --- a/src/corelib/kernel/qcoreevent.cpp +++ b/src/corelib/kernel/qcoreevent.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qcoreevent.h b/src/corelib/kernel/qcoreevent.h index ba1106276a..4093c66977 100644 --- a/src/corelib/kernel/qcoreevent.h +++ b/src/corelib/kernel/qcoreevent.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qcoreglobaldata.cpp b/src/corelib/kernel/qcoreglobaldata.cpp index bac95251fd..3854f7d53a 100644 --- a/src/corelib/kernel/qcoreglobaldata.cpp +++ b/src/corelib/kernel/qcoreglobaldata.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qcoreglobaldata_p.h b/src/corelib/kernel/qcoreglobaldata_p.h index f12d42842b..7b5120a0dc 100644 --- a/src/corelib/kernel/qcoreglobaldata_p.h +++ b/src/corelib/kernel/qcoreglobaldata_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qcrashhandler.cpp b/src/corelib/kernel/qcrashhandler.cpp index 979e215997..8f4577be24 100644 --- a/src/corelib/kernel/qcrashhandler.cpp +++ b/src/corelib/kernel/qcrashhandler.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qcrashhandler_p.h b/src/corelib/kernel/qcrashhandler_p.h index 2383bb9dcc..a23dc98967 100644 --- a/src/corelib/kernel/qcrashhandler_p.h +++ b/src/corelib/kernel/qcrashhandler_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qeventdispatcher_glib.cpp b/src/corelib/kernel/qeventdispatcher_glib.cpp index 261d8d3b4c..f34570007b 100644 --- a/src/corelib/kernel/qeventdispatcher_glib.cpp +++ b/src/corelib/kernel/qeventdispatcher_glib.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qeventdispatcher_glib_p.h b/src/corelib/kernel/qeventdispatcher_glib_p.h index 1c3b7e8645..facacb07a8 100644 --- a/src/corelib/kernel/qeventdispatcher_glib_p.h +++ b/src/corelib/kernel/qeventdispatcher_glib_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qeventdispatcher_unix.cpp b/src/corelib/kernel/qeventdispatcher_unix.cpp index 4b61667710..26a9e9f0ca 100644 --- a/src/corelib/kernel/qeventdispatcher_unix.cpp +++ b/src/corelib/kernel/qeventdispatcher_unix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qeventdispatcher_unix_p.h b/src/corelib/kernel/qeventdispatcher_unix_p.h index 07cbf92d6a..f4862bd9c3 100644 --- a/src/corelib/kernel/qeventdispatcher_unix_p.h +++ b/src/corelib/kernel/qeventdispatcher_unix_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qeventdispatcher_win.cpp b/src/corelib/kernel/qeventdispatcher_win.cpp index c2f33821b8..b52a4decac 100644 --- a/src/corelib/kernel/qeventdispatcher_win.cpp +++ b/src/corelib/kernel/qeventdispatcher_win.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qeventdispatcher_win_p.h b/src/corelib/kernel/qeventdispatcher_win_p.h index 62502f7f11..833fcf13ac 100644 --- a/src/corelib/kernel/qeventdispatcher_win_p.h +++ b/src/corelib/kernel/qeventdispatcher_win_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qeventloop.cpp b/src/corelib/kernel/qeventloop.cpp index 37c06a2093..05e284ba34 100644 --- a/src/corelib/kernel/qeventloop.cpp +++ b/src/corelib/kernel/qeventloop.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qeventloop.h b/src/corelib/kernel/qeventloop.h index 5bd4146352..a76ba0ad93 100644 --- a/src/corelib/kernel/qeventloop.h +++ b/src/corelib/kernel/qeventloop.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qfunctions_nacl.cpp b/src/corelib/kernel/qfunctions_nacl.cpp index 410df0f1e8..76272154b3 100644 --- a/src/corelib/kernel/qfunctions_nacl.cpp +++ b/src/corelib/kernel/qfunctions_nacl.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qfunctions_nacl.h b/src/corelib/kernel/qfunctions_nacl.h index c4c1fd0e2e..a2f5d928f0 100644 --- a/src/corelib/kernel/qfunctions_nacl.h +++ b/src/corelib/kernel/qfunctions_nacl.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qfunctions_p.h b/src/corelib/kernel/qfunctions_p.h index 1e75fec25d..88686e976a 100644 --- a/src/corelib/kernel/qfunctions_p.h +++ b/src/corelib/kernel/qfunctions_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qfunctions_vxworks.cpp b/src/corelib/kernel/qfunctions_vxworks.cpp index 845825740e..c39e6ad458 100644 --- a/src/corelib/kernel/qfunctions_vxworks.cpp +++ b/src/corelib/kernel/qfunctions_vxworks.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qfunctions_vxworks.h b/src/corelib/kernel/qfunctions_vxworks.h index d7d4ebe382..22dc7bcc06 100644 --- a/src/corelib/kernel/qfunctions_vxworks.h +++ b/src/corelib/kernel/qfunctions_vxworks.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qfunctions_wince.cpp b/src/corelib/kernel/qfunctions_wince.cpp index f0f1a071b9..8fd09679ce 100644 --- a/src/corelib/kernel/qfunctions_wince.cpp +++ b/src/corelib/kernel/qfunctions_wince.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qfunctions_wince.h b/src/corelib/kernel/qfunctions_wince.h index 5569b7c777..d634cba67e 100644 --- a/src/corelib/kernel/qfunctions_wince.h +++ b/src/corelib/kernel/qfunctions_wince.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qmath.cpp b/src/corelib/kernel/qmath.cpp index 376a707d66..fb5087092c 100644 --- a/src/corelib/kernel/qmath.cpp +++ b/src/corelib/kernel/qmath.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qmath.h b/src/corelib/kernel/qmath.h index cc20f96166..793138a5e0 100644 --- a/src/corelib/kernel/qmath.h +++ b/src/corelib/kernel/qmath.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qmath.qdoc b/src/corelib/kernel/qmath.qdoc index 5b21740d3a..b2de54ee32 100644 --- a/src/corelib/kernel/qmath.qdoc +++ b/src/corelib/kernel/qmath.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qmetaobject.cpp b/src/corelib/kernel/qmetaobject.cpp index 3178ee1b26..04770b7a91 100644 --- a/src/corelib/kernel/qmetaobject.cpp +++ b/src/corelib/kernel/qmetaobject.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qmetaobject.h b/src/corelib/kernel/qmetaobject.h index 47ccc9e2b7..61ca373745 100644 --- a/src/corelib/kernel/qmetaobject.h +++ b/src/corelib/kernel/qmetaobject.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qmetaobject_moc_p.h b/src/corelib/kernel/qmetaobject_moc_p.h index fd4e5d25c8..abfdc442c0 100644 --- a/src/corelib/kernel/qmetaobject_moc_p.h +++ b/src/corelib/kernel/qmetaobject_moc_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qmetaobject_p.h b/src/corelib/kernel/qmetaobject_p.h index b99907e822..45fb95495c 100644 --- a/src/corelib/kernel/qmetaobject_p.h +++ b/src/corelib/kernel/qmetaobject_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qmetaobjectbuilder.cpp b/src/corelib/kernel/qmetaobjectbuilder.cpp index dd098e8a64..0b4ff89a14 100644 --- a/src/corelib/kernel/qmetaobjectbuilder.cpp +++ b/src/corelib/kernel/qmetaobjectbuilder.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qmetaobjectbuilder_p.h b/src/corelib/kernel/qmetaobjectbuilder_p.h index a563d6a5cd..0b582ccd0d 100644 --- a/src/corelib/kernel/qmetaobjectbuilder_p.h +++ b/src/corelib/kernel/qmetaobjectbuilder_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qmetatype.cpp b/src/corelib/kernel/qmetatype.cpp index 38bfd2987c..c5e3d21c6d 100644 --- a/src/corelib/kernel/qmetatype.cpp +++ b/src/corelib/kernel/qmetatype.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qmetatype.h b/src/corelib/kernel/qmetatype.h index 9bc949105c..ab0203e5e4 100644 --- a/src/corelib/kernel/qmetatype.h +++ b/src/corelib/kernel/qmetatype.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qmetatype_p.h b/src/corelib/kernel/qmetatype_p.h index 391f37c93d..11139288d1 100644 --- a/src/corelib/kernel/qmetatype_p.h +++ b/src/corelib/kernel/qmetatype_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qmetatypeswitcher_p.h b/src/corelib/kernel/qmetatypeswitcher_p.h index cba6504956..d3cf1024c3 100644 --- a/src/corelib/kernel/qmetatypeswitcher_p.h +++ b/src/corelib/kernel/qmetatypeswitcher_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qmimedata.cpp b/src/corelib/kernel/qmimedata.cpp index 9d1e03e9e8..c43ef505fb 100644 --- a/src/corelib/kernel/qmimedata.cpp +++ b/src/corelib/kernel/qmimedata.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qmimedata.h b/src/corelib/kernel/qmimedata.h index e8f32ed43c..60498b7ab8 100644 --- a/src/corelib/kernel/qmimedata.h +++ b/src/corelib/kernel/qmimedata.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qobject.cpp b/src/corelib/kernel/qobject.cpp index 6efff619e8..ebb0a3a5c7 100644 --- a/src/corelib/kernel/qobject.cpp +++ b/src/corelib/kernel/qobject.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qobject.h b/src/corelib/kernel/qobject.h index f87309bb47..11f524180c 100644 --- a/src/corelib/kernel/qobject.h +++ b/src/corelib/kernel/qobject.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qobject_impl.h b/src/corelib/kernel/qobject_impl.h index 1ddc95fc44..44aaa9a218 100644 --- a/src/corelib/kernel/qobject_impl.h +++ b/src/corelib/kernel/qobject_impl.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qobject_p.h b/src/corelib/kernel/qobject_p.h index 84f362618e..dbd2e4fa37 100644 --- a/src/corelib/kernel/qobject_p.h +++ b/src/corelib/kernel/qobject_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qobjectcleanuphandler.cpp b/src/corelib/kernel/qobjectcleanuphandler.cpp index 512aa097ee..8a0cc2840e 100644 --- a/src/corelib/kernel/qobjectcleanuphandler.cpp +++ b/src/corelib/kernel/qobjectcleanuphandler.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qobjectcleanuphandler.h b/src/corelib/kernel/qobjectcleanuphandler.h index 601164f784..5997f0e250 100644 --- a/src/corelib/kernel/qobjectcleanuphandler.h +++ b/src/corelib/kernel/qobjectcleanuphandler.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qobjectdefs.h b/src/corelib/kernel/qobjectdefs.h index faadb6f48c..320e41b2e2 100644 --- a/src/corelib/kernel/qobjectdefs.h +++ b/src/corelib/kernel/qobjectdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qpointer.cpp b/src/corelib/kernel/qpointer.cpp index 51c8b2ad74..575dad9ed8 100644 --- a/src/corelib/kernel/qpointer.cpp +++ b/src/corelib/kernel/qpointer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qpointer.h b/src/corelib/kernel/qpointer.h index a1d1f2037f..4c0aebb41d 100644 --- a/src/corelib/kernel/qpointer.h +++ b/src/corelib/kernel/qpointer.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qsharedmemory.cpp b/src/corelib/kernel/qsharedmemory.cpp index acb6044bac..c5b1b56747 100644 --- a/src/corelib/kernel/qsharedmemory.cpp +++ b/src/corelib/kernel/qsharedmemory.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qsharedmemory.h b/src/corelib/kernel/qsharedmemory.h index b2ce7e20f4..d536e94fa1 100644 --- a/src/corelib/kernel/qsharedmemory.h +++ b/src/corelib/kernel/qsharedmemory.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qsharedmemory_p.h b/src/corelib/kernel/qsharedmemory_p.h index d5fafeff97..d3d3c023ba 100644 --- a/src/corelib/kernel/qsharedmemory_p.h +++ b/src/corelib/kernel/qsharedmemory_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qsharedmemory_unix.cpp b/src/corelib/kernel/qsharedmemory_unix.cpp index 2bbda4933f..fd435d7b97 100644 --- a/src/corelib/kernel/qsharedmemory_unix.cpp +++ b/src/corelib/kernel/qsharedmemory_unix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qsharedmemory_win.cpp b/src/corelib/kernel/qsharedmemory_win.cpp index 3cc14fe512..c02ab15c88 100644 --- a/src/corelib/kernel/qsharedmemory_win.cpp +++ b/src/corelib/kernel/qsharedmemory_win.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qsignalmapper.cpp b/src/corelib/kernel/qsignalmapper.cpp index 665b9e22b5..7bdffd4153 100644 --- a/src/corelib/kernel/qsignalmapper.cpp +++ b/src/corelib/kernel/qsignalmapper.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qsignalmapper.h b/src/corelib/kernel/qsignalmapper.h index 72593679a9..04278b491c 100644 --- a/src/corelib/kernel/qsignalmapper.h +++ b/src/corelib/kernel/qsignalmapper.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qsocketnotifier.cpp b/src/corelib/kernel/qsocketnotifier.cpp index 5e99d1d483..d76e905ee3 100644 --- a/src/corelib/kernel/qsocketnotifier.cpp +++ b/src/corelib/kernel/qsocketnotifier.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qsocketnotifier.h b/src/corelib/kernel/qsocketnotifier.h index 07dc129825..336bac6996 100644 --- a/src/corelib/kernel/qsocketnotifier.h +++ b/src/corelib/kernel/qsocketnotifier.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qsystemerror.cpp b/src/corelib/kernel/qsystemerror.cpp index 71c2807341..eabb20001c 100644 --- a/src/corelib/kernel/qsystemerror.cpp +++ b/src/corelib/kernel/qsystemerror.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qsystemerror_p.h b/src/corelib/kernel/qsystemerror_p.h index 0bcada7350..2a90760197 100644 --- a/src/corelib/kernel/qsystemerror_p.h +++ b/src/corelib/kernel/qsystemerror_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qsystemsemaphore.cpp b/src/corelib/kernel/qsystemsemaphore.cpp index 98ee6f4231..690a4e8b92 100644 --- a/src/corelib/kernel/qsystemsemaphore.cpp +++ b/src/corelib/kernel/qsystemsemaphore.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qsystemsemaphore.h b/src/corelib/kernel/qsystemsemaphore.h index 1623215ec5..0cb69d5e7c 100644 --- a/src/corelib/kernel/qsystemsemaphore.h +++ b/src/corelib/kernel/qsystemsemaphore.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qsystemsemaphore_p.h b/src/corelib/kernel/qsystemsemaphore_p.h index d4e86e8866..31fd596fd5 100644 --- a/src/corelib/kernel/qsystemsemaphore_p.h +++ b/src/corelib/kernel/qsystemsemaphore_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qsystemsemaphore_unix.cpp b/src/corelib/kernel/qsystemsemaphore_unix.cpp index 5e533e7f0e..cc86e335e5 100644 --- a/src/corelib/kernel/qsystemsemaphore_unix.cpp +++ b/src/corelib/kernel/qsystemsemaphore_unix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qsystemsemaphore_win.cpp b/src/corelib/kernel/qsystemsemaphore_win.cpp index 30cab7ebfe..aad78459d7 100644 --- a/src/corelib/kernel/qsystemsemaphore_win.cpp +++ b/src/corelib/kernel/qsystemsemaphore_win.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qtcore_eval.cpp b/src/corelib/kernel/qtcore_eval.cpp index 927aa672a1..2f9ccdae46 100644 --- a/src/corelib/kernel/qtcore_eval.cpp +++ b/src/corelib/kernel/qtcore_eval.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** @@ -54,7 +54,7 @@ QT_BEGIN_NAMESPACE static const char boilerplate_unsuported[] = "\nQt %1 Evaluation License\n" - "Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).\n" + "Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies).\n" "All rights reserved.\n\n" "This trial version may only be used for evaluation purposes\n" "and will shut down after 120 minutes.\n" @@ -65,7 +65,7 @@ static const char boilerplate_unsuported[] = static const char boilerplate_supported[] = "\nQt %1 Evaluation License\n" - "Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).\n" + "Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies).\n" "All rights reserved.\n\n" "This trial version may only be used for evaluation purposes\n" "Registered to:\n" diff --git a/src/corelib/kernel/qtimer.cpp b/src/corelib/kernel/qtimer.cpp index 8bf65c3c0e..da1cfe91b2 100644 --- a/src/corelib/kernel/qtimer.cpp +++ b/src/corelib/kernel/qtimer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qtimer.h b/src/corelib/kernel/qtimer.h index 5b7dbd1b36..b1bbfa4241 100644 --- a/src/corelib/kernel/qtimer.h +++ b/src/corelib/kernel/qtimer.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qtimerinfo_unix.cpp b/src/corelib/kernel/qtimerinfo_unix.cpp index 4ea1b75c62..12cddde42b 100644 --- a/src/corelib/kernel/qtimerinfo_unix.cpp +++ b/src/corelib/kernel/qtimerinfo_unix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qtimerinfo_unix_p.h b/src/corelib/kernel/qtimerinfo_unix_p.h index b551f472df..cff02b6da8 100644 --- a/src/corelib/kernel/qtimerinfo_unix_p.h +++ b/src/corelib/kernel/qtimerinfo_unix_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qtranslator.cpp b/src/corelib/kernel/qtranslator.cpp index 2796902590..aadf3a76e9 100644 --- a/src/corelib/kernel/qtranslator.cpp +++ b/src/corelib/kernel/qtranslator.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qtranslator.h b/src/corelib/kernel/qtranslator.h index 43cd63d1da..b1f378a8b5 100644 --- a/src/corelib/kernel/qtranslator.h +++ b/src/corelib/kernel/qtranslator.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qtranslator_p.h b/src/corelib/kernel/qtranslator_p.h index 426be0b19b..23164ecac6 100644 --- a/src/corelib/kernel/qtranslator_p.h +++ b/src/corelib/kernel/qtranslator_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qvariant.cpp b/src/corelib/kernel/qvariant.cpp index abffe53ab7..3002db480a 100644 --- a/src/corelib/kernel/qvariant.cpp +++ b/src/corelib/kernel/qvariant.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qvariant.h b/src/corelib/kernel/qvariant.h index 8d00cb0713..28bddc14d2 100644 --- a/src/corelib/kernel/qvariant.h +++ b/src/corelib/kernel/qvariant.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qvariant_p.h b/src/corelib/kernel/qvariant_p.h index 0436e9fe29..b79d4623c1 100644 --- a/src/corelib/kernel/qvariant_p.h +++ b/src/corelib/kernel/qvariant_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qwineventnotifier.cpp b/src/corelib/kernel/qwineventnotifier.cpp index 1ef77cdf62..e06e1d5b0a 100644 --- a/src/corelib/kernel/qwineventnotifier.cpp +++ b/src/corelib/kernel/qwineventnotifier.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/kernel/qwineventnotifier.h b/src/corelib/kernel/qwineventnotifier.h index d265c8c181..386a640434 100644 --- a/src/corelib/kernel/qwineventnotifier.h +++ b/src/corelib/kernel/qwineventnotifier.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/plugin/qelfparser_p.cpp b/src/corelib/plugin/qelfparser_p.cpp index e3c6b30820..cfe9a9d1b5 100644 --- a/src/corelib/plugin/qelfparser_p.cpp +++ b/src/corelib/plugin/qelfparser_p.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/plugin/qelfparser_p.h b/src/corelib/plugin/qelfparser_p.h index 510ffed567..2f10807720 100644 --- a/src/corelib/plugin/qelfparser_p.h +++ b/src/corelib/plugin/qelfparser_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/plugin/qfactoryinterface.h b/src/corelib/plugin/qfactoryinterface.h index 647d97f173..b7e4f3de16 100644 --- a/src/corelib/plugin/qfactoryinterface.h +++ b/src/corelib/plugin/qfactoryinterface.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/plugin/qfactoryloader.cpp b/src/corelib/plugin/qfactoryloader.cpp index 749a7deddd..9ae97c6313 100644 --- a/src/corelib/plugin/qfactoryloader.cpp +++ b/src/corelib/plugin/qfactoryloader.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/plugin/qfactoryloader_p.h b/src/corelib/plugin/qfactoryloader_p.h index 75d40f8c3f..be40e66efd 100644 --- a/src/corelib/plugin/qfactoryloader_p.h +++ b/src/corelib/plugin/qfactoryloader_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/plugin/qlibrary.cpp b/src/corelib/plugin/qlibrary.cpp index 02b08e326d..eeec831d4a 100644 --- a/src/corelib/plugin/qlibrary.cpp +++ b/src/corelib/plugin/qlibrary.cpp @@ -1,7 +1,7 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/plugin/qlibrary.h b/src/corelib/plugin/qlibrary.h index e3f557dd7d..729277e838 100644 --- a/src/corelib/plugin/qlibrary.h +++ b/src/corelib/plugin/qlibrary.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/plugin/qlibrary_p.h b/src/corelib/plugin/qlibrary_p.h index 15825c699f..45c8843d20 100644 --- a/src/corelib/plugin/qlibrary_p.h +++ b/src/corelib/plugin/qlibrary_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/plugin/qlibrary_unix.cpp b/src/corelib/plugin/qlibrary_unix.cpp index d3b08e1acf..ce6d645ca4 100644 --- a/src/corelib/plugin/qlibrary_unix.cpp +++ b/src/corelib/plugin/qlibrary_unix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/plugin/qlibrary_win.cpp b/src/corelib/plugin/qlibrary_win.cpp index 4eeb2fc441..fd46a7107e 100644 --- a/src/corelib/plugin/qlibrary_win.cpp +++ b/src/corelib/plugin/qlibrary_win.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/plugin/qplugin.h b/src/corelib/plugin/qplugin.h index 52661671b5..c9388c1337 100644 --- a/src/corelib/plugin/qplugin.h +++ b/src/corelib/plugin/qplugin.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/plugin/qplugin.qdoc b/src/corelib/plugin/qplugin.qdoc index 1c24de3254..2149fa7179 100644 --- a/src/corelib/plugin/qplugin.qdoc +++ b/src/corelib/plugin/qplugin.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/plugin/qpluginloader.cpp b/src/corelib/plugin/qpluginloader.cpp index f1ec09439d..1557df2eef 100644 --- a/src/corelib/plugin/qpluginloader.cpp +++ b/src/corelib/plugin/qpluginloader.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/plugin/qpluginloader.h b/src/corelib/plugin/qpluginloader.h index b8f40379c8..0854d3dcdf 100644 --- a/src/corelib/plugin/qpluginloader.h +++ b/src/corelib/plugin/qpluginloader.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/plugin/qsystemlibrary.cpp b/src/corelib/plugin/qsystemlibrary.cpp index bb9c82a35a..f949cc0f86 100644 --- a/src/corelib/plugin/qsystemlibrary.cpp +++ b/src/corelib/plugin/qsystemlibrary.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/plugin/qsystemlibrary_p.h b/src/corelib/plugin/qsystemlibrary_p.h index 3298f05b8f..4015fb6958 100644 --- a/src/corelib/plugin/qsystemlibrary_p.h +++ b/src/corelib/plugin/qsystemlibrary_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/plugin/quuid.cpp b/src/corelib/plugin/quuid.cpp index 9f94d3bf6d..1cf171f663 100644 --- a/src/corelib/plugin/quuid.cpp +++ b/src/corelib/plugin/quuid.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/plugin/quuid.h b/src/corelib/plugin/quuid.h index 0c4f3037a7..85691d94c0 100644 --- a/src/corelib/plugin/quuid.h +++ b/src/corelib/plugin/quuid.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/statemachine/qabstractstate.cpp b/src/corelib/statemachine/qabstractstate.cpp index 79b72ea538..c2d24e3c00 100644 --- a/src/corelib/statemachine/qabstractstate.cpp +++ b/src/corelib/statemachine/qabstractstate.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/statemachine/qabstractstate.h b/src/corelib/statemachine/qabstractstate.h index 21169e4fee..33dbde23aa 100644 --- a/src/corelib/statemachine/qabstractstate.h +++ b/src/corelib/statemachine/qabstractstate.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/statemachine/qabstractstate_p.h b/src/corelib/statemachine/qabstractstate_p.h index 98b1d0a9b4..cf86e0cbe9 100644 --- a/src/corelib/statemachine/qabstractstate_p.h +++ b/src/corelib/statemachine/qabstractstate_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/statemachine/qabstracttransition.cpp b/src/corelib/statemachine/qabstracttransition.cpp index ff2b4b5978..a8fdea2cfc 100644 --- a/src/corelib/statemachine/qabstracttransition.cpp +++ b/src/corelib/statemachine/qabstracttransition.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/statemachine/qabstracttransition.h b/src/corelib/statemachine/qabstracttransition.h index dbe7f3aa38..fd1eedb72e 100644 --- a/src/corelib/statemachine/qabstracttransition.h +++ b/src/corelib/statemachine/qabstracttransition.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/statemachine/qabstracttransition_p.h b/src/corelib/statemachine/qabstracttransition_p.h index 57f962d77d..4de0f4b8d6 100644 --- a/src/corelib/statemachine/qabstracttransition_p.h +++ b/src/corelib/statemachine/qabstracttransition_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/statemachine/qeventtransition.cpp b/src/corelib/statemachine/qeventtransition.cpp index 63f89669b9..f55cdbc927 100644 --- a/src/corelib/statemachine/qeventtransition.cpp +++ b/src/corelib/statemachine/qeventtransition.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/statemachine/qeventtransition.h b/src/corelib/statemachine/qeventtransition.h index 434b72e76c..173d24ef4a 100644 --- a/src/corelib/statemachine/qeventtransition.h +++ b/src/corelib/statemachine/qeventtransition.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/statemachine/qeventtransition_p.h b/src/corelib/statemachine/qeventtransition_p.h index ed096df81d..6c3dc9dda4 100644 --- a/src/corelib/statemachine/qeventtransition_p.h +++ b/src/corelib/statemachine/qeventtransition_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/statemachine/qfinalstate.cpp b/src/corelib/statemachine/qfinalstate.cpp index c583c32183..c2bb2ee218 100644 --- a/src/corelib/statemachine/qfinalstate.cpp +++ b/src/corelib/statemachine/qfinalstate.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/statemachine/qfinalstate.h b/src/corelib/statemachine/qfinalstate.h index 9a18888c84..652abd6600 100644 --- a/src/corelib/statemachine/qfinalstate.h +++ b/src/corelib/statemachine/qfinalstate.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/statemachine/qhistorystate.cpp b/src/corelib/statemachine/qhistorystate.cpp index 5f3a5dcf4c..b45cd30935 100644 --- a/src/corelib/statemachine/qhistorystate.cpp +++ b/src/corelib/statemachine/qhistorystate.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/statemachine/qhistorystate.h b/src/corelib/statemachine/qhistorystate.h index 1ba28e97f1..e9ec058d53 100644 --- a/src/corelib/statemachine/qhistorystate.h +++ b/src/corelib/statemachine/qhistorystate.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/statemachine/qhistorystate_p.h b/src/corelib/statemachine/qhistorystate_p.h index b915c2820c..35662d88f8 100644 --- a/src/corelib/statemachine/qhistorystate_p.h +++ b/src/corelib/statemachine/qhistorystate_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/statemachine/qsignaleventgenerator_p.h b/src/corelib/statemachine/qsignaleventgenerator_p.h index c38177b766..e681add086 100644 --- a/src/corelib/statemachine/qsignaleventgenerator_p.h +++ b/src/corelib/statemachine/qsignaleventgenerator_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/statemachine/qsignaltransition.cpp b/src/corelib/statemachine/qsignaltransition.cpp index 92862cbab6..51a8a82b2d 100644 --- a/src/corelib/statemachine/qsignaltransition.cpp +++ b/src/corelib/statemachine/qsignaltransition.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/statemachine/qsignaltransition.h b/src/corelib/statemachine/qsignaltransition.h index 155e0f3d9d..fd91dd4c6d 100644 --- a/src/corelib/statemachine/qsignaltransition.h +++ b/src/corelib/statemachine/qsignaltransition.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/statemachine/qsignaltransition_p.h b/src/corelib/statemachine/qsignaltransition_p.h index 8bf928804b..aadb4efcc7 100644 --- a/src/corelib/statemachine/qsignaltransition_p.h +++ b/src/corelib/statemachine/qsignaltransition_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/statemachine/qstate.cpp b/src/corelib/statemachine/qstate.cpp index 7dc9889dc0..4f37bb0642 100644 --- a/src/corelib/statemachine/qstate.cpp +++ b/src/corelib/statemachine/qstate.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/statemachine/qstate.h b/src/corelib/statemachine/qstate.h index 4d3acc1341..337659295e 100644 --- a/src/corelib/statemachine/qstate.h +++ b/src/corelib/statemachine/qstate.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/statemachine/qstate_p.h b/src/corelib/statemachine/qstate_p.h index 74b425361b..daa2f467c1 100644 --- a/src/corelib/statemachine/qstate_p.h +++ b/src/corelib/statemachine/qstate_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/statemachine/qstatemachine.cpp b/src/corelib/statemachine/qstatemachine.cpp index 927389a33b..a24c71c105 100644 --- a/src/corelib/statemachine/qstatemachine.cpp +++ b/src/corelib/statemachine/qstatemachine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/statemachine/qstatemachine.h b/src/corelib/statemachine/qstatemachine.h index 1238f480f4..b2a251038d 100644 --- a/src/corelib/statemachine/qstatemachine.h +++ b/src/corelib/statemachine/qstatemachine.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/statemachine/qstatemachine_p.h b/src/corelib/statemachine/qstatemachine_p.h index 3227f81e58..88b16a22bf 100644 --- a/src/corelib/statemachine/qstatemachine_p.h +++ b/src/corelib/statemachine/qstatemachine_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/thread/qatomic.cpp b/src/corelib/thread/qatomic.cpp index 3cdb3c6d7b..c2c9484cf6 100644 --- a/src/corelib/thread/qatomic.cpp +++ b/src/corelib/thread/qatomic.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/thread/qatomic.h b/src/corelib/thread/qatomic.h index eff2182e28..46026f3000 100644 --- a/src/corelib/thread/qatomic.h +++ b/src/corelib/thread/qatomic.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/thread/qbasicatomic.h b/src/corelib/thread/qbasicatomic.h index d3e988d8c5..2f952c9e0a 100644 --- a/src/corelib/thread/qbasicatomic.h +++ b/src/corelib/thread/qbasicatomic.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/thread/qmutex.cpp b/src/corelib/thread/qmutex.cpp index df36120d88..6c8ed3b897 100644 --- a/src/corelib/thread/qmutex.cpp +++ b/src/corelib/thread/qmutex.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/thread/qmutex.h b/src/corelib/thread/qmutex.h index 086a289569..1d7e591b7d 100644 --- a/src/corelib/thread/qmutex.h +++ b/src/corelib/thread/qmutex.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/thread/qmutex_linux.cpp b/src/corelib/thread/qmutex_linux.cpp index 18ddd23819..9bb9c9061e 100644 --- a/src/corelib/thread/qmutex_linux.cpp +++ b/src/corelib/thread/qmutex_linux.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/thread/qmutex_mac.cpp b/src/corelib/thread/qmutex_mac.cpp index 2fdb2ec489..1a561aa5d5 100644 --- a/src/corelib/thread/qmutex_mac.cpp +++ b/src/corelib/thread/qmutex_mac.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/thread/qmutex_p.h b/src/corelib/thread/qmutex_p.h index e385181e0f..0cbc99adc6 100644 --- a/src/corelib/thread/qmutex_p.h +++ b/src/corelib/thread/qmutex_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/thread/qmutex_unix.cpp b/src/corelib/thread/qmutex_unix.cpp index b693088015..a426d958f2 100644 --- a/src/corelib/thread/qmutex_unix.cpp +++ b/src/corelib/thread/qmutex_unix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/thread/qmutex_win.cpp b/src/corelib/thread/qmutex_win.cpp index 781a632a61..b513b6e1ad 100644 --- a/src/corelib/thread/qmutex_win.cpp +++ b/src/corelib/thread/qmutex_win.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/thread/qmutexpool.cpp b/src/corelib/thread/qmutexpool.cpp index ef4e9560fb..6be5e092d7 100644 --- a/src/corelib/thread/qmutexpool.cpp +++ b/src/corelib/thread/qmutexpool.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/thread/qmutexpool_p.h b/src/corelib/thread/qmutexpool_p.h index 20449c24d4..90b89f9a17 100644 --- a/src/corelib/thread/qmutexpool_p.h +++ b/src/corelib/thread/qmutexpool_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/thread/qorderedmutexlocker_p.h b/src/corelib/thread/qorderedmutexlocker_p.h index e65a601369..14a29c7edf 100644 --- a/src/corelib/thread/qorderedmutexlocker_p.h +++ b/src/corelib/thread/qorderedmutexlocker_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/thread/qreadwritelock.cpp b/src/corelib/thread/qreadwritelock.cpp index 5ae672b844..54926111d5 100644 --- a/src/corelib/thread/qreadwritelock.cpp +++ b/src/corelib/thread/qreadwritelock.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/thread/qreadwritelock.h b/src/corelib/thread/qreadwritelock.h index c369e20d90..cdbd7894a1 100644 --- a/src/corelib/thread/qreadwritelock.h +++ b/src/corelib/thread/qreadwritelock.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/thread/qreadwritelock_p.h b/src/corelib/thread/qreadwritelock_p.h index fda7bf44e6..125245bb4a 100644 --- a/src/corelib/thread/qreadwritelock_p.h +++ b/src/corelib/thread/qreadwritelock_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/thread/qsemaphore.cpp b/src/corelib/thread/qsemaphore.cpp index acfd478a14..12539a794d 100644 --- a/src/corelib/thread/qsemaphore.cpp +++ b/src/corelib/thread/qsemaphore.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/thread/qsemaphore.h b/src/corelib/thread/qsemaphore.h index 50d32c5f65..4790a84bb6 100644 --- a/src/corelib/thread/qsemaphore.h +++ b/src/corelib/thread/qsemaphore.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/thread/qthread.cpp b/src/corelib/thread/qthread.cpp index 1df768c1ed..9d48c4dbe5 100644 --- a/src/corelib/thread/qthread.cpp +++ b/src/corelib/thread/qthread.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/thread/qthread.h b/src/corelib/thread/qthread.h index baad793969..597e29546a 100644 --- a/src/corelib/thread/qthread.h +++ b/src/corelib/thread/qthread.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/thread/qthread_p.h b/src/corelib/thread/qthread_p.h index 8be9f134ae..094c9b0daf 100644 --- a/src/corelib/thread/qthread_p.h +++ b/src/corelib/thread/qthread_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/thread/qthread_unix.cpp b/src/corelib/thread/qthread_unix.cpp index 6deae261c6..672b7cb976 100644 --- a/src/corelib/thread/qthread_unix.cpp +++ b/src/corelib/thread/qthread_unix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/thread/qthread_win.cpp b/src/corelib/thread/qthread_win.cpp index 0c834cfff2..3184b18471 100644 --- a/src/corelib/thread/qthread_win.cpp +++ b/src/corelib/thread/qthread_win.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/thread/qthreadstorage.cpp b/src/corelib/thread/qthreadstorage.cpp index 0913292852..6dba8d670e 100644 --- a/src/corelib/thread/qthreadstorage.cpp +++ b/src/corelib/thread/qthreadstorage.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/thread/qthreadstorage.h b/src/corelib/thread/qthreadstorage.h index 172dff0b3d..790f9a51ef 100644 --- a/src/corelib/thread/qthreadstorage.h +++ b/src/corelib/thread/qthreadstorage.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/thread/qwaitcondition.h b/src/corelib/thread/qwaitcondition.h index 0a96689f0b..7d4eb684ee 100644 --- a/src/corelib/thread/qwaitcondition.h +++ b/src/corelib/thread/qwaitcondition.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/thread/qwaitcondition.qdoc b/src/corelib/thread/qwaitcondition.qdoc index 00d4b0ff00..f079e5a6ba 100644 --- a/src/corelib/thread/qwaitcondition.qdoc +++ b/src/corelib/thread/qwaitcondition.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/thread/qwaitcondition_unix.cpp b/src/corelib/thread/qwaitcondition_unix.cpp index dd85bf4023..91aea010d9 100644 --- a/src/corelib/thread/qwaitcondition_unix.cpp +++ b/src/corelib/thread/qwaitcondition_unix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/thread/qwaitcondition_win.cpp b/src/corelib/thread/qwaitcondition_win.cpp index bf1ec5e5ba..0106dbf13a 100644 --- a/src/corelib/thread/qwaitcondition_win.cpp +++ b/src/corelib/thread/qwaitcondition_win.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qalgorithms.h b/src/corelib/tools/qalgorithms.h index 90a9caa905..a1c656934d 100644 --- a/src/corelib/tools/qalgorithms.h +++ b/src/corelib/tools/qalgorithms.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qalgorithms.qdoc b/src/corelib/tools/qalgorithms.qdoc index b11f4092a8..3ba86b6838 100644 --- a/src/corelib/tools/qalgorithms.qdoc +++ b/src/corelib/tools/qalgorithms.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qbitarray.cpp b/src/corelib/tools/qbitarray.cpp index 5538180b37..4ef066cf8b 100644 --- a/src/corelib/tools/qbitarray.cpp +++ b/src/corelib/tools/qbitarray.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qbitarray.h b/src/corelib/tools/qbitarray.h index 3b66b9f4df..29abf19573 100644 --- a/src/corelib/tools/qbitarray.h +++ b/src/corelib/tools/qbitarray.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qbytearray.cpp b/src/corelib/tools/qbytearray.cpp index ed3f31fc43..d8c0668a39 100644 --- a/src/corelib/tools/qbytearray.cpp +++ b/src/corelib/tools/qbytearray.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qbytearray.h b/src/corelib/tools/qbytearray.h index 3ebeb3c340..e96997909f 100644 --- a/src/corelib/tools/qbytearray.h +++ b/src/corelib/tools/qbytearray.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qbytearraymatcher.cpp b/src/corelib/tools/qbytearraymatcher.cpp index 43924a764e..fbe54fb9b3 100644 --- a/src/corelib/tools/qbytearraymatcher.cpp +++ b/src/corelib/tools/qbytearraymatcher.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qbytearraymatcher.h b/src/corelib/tools/qbytearraymatcher.h index 0eb50bb77d..9acfa0d581 100644 --- a/src/corelib/tools/qbytearraymatcher.h +++ b/src/corelib/tools/qbytearraymatcher.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qbytedata_p.h b/src/corelib/tools/qbytedata_p.h index 22ec47fb9d..2708df3d52 100644 --- a/src/corelib/tools/qbytedata_p.h +++ b/src/corelib/tools/qbytedata_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qcache.h b/src/corelib/tools/qcache.h index 2928140863..dccef68c1b 100644 --- a/src/corelib/tools/qcache.h +++ b/src/corelib/tools/qcache.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qcache.qdoc b/src/corelib/tools/qcache.qdoc index 397c5fbb0c..9c8aef15df 100644 --- a/src/corelib/tools/qcache.qdoc +++ b/src/corelib/tools/qcache.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qchar.cpp b/src/corelib/tools/qchar.cpp index ec4b0cce58..5109bf22a4 100644 --- a/src/corelib/tools/qchar.cpp +++ b/src/corelib/tools/qchar.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qchar.h b/src/corelib/tools/qchar.h index 1bc6962ca1..0e02d109f6 100644 --- a/src/corelib/tools/qchar.h +++ b/src/corelib/tools/qchar.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qcontainerfwd.h b/src/corelib/tools/qcontainerfwd.h index ed6ab4332c..51ba07d856 100644 --- a/src/corelib/tools/qcontainerfwd.h +++ b/src/corelib/tools/qcontainerfwd.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qcontiguouscache.cpp b/src/corelib/tools/qcontiguouscache.cpp index eef1f74b8c..29601149e4 100644 --- a/src/corelib/tools/qcontiguouscache.cpp +++ b/src/corelib/tools/qcontiguouscache.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qcontiguouscache.h b/src/corelib/tools/qcontiguouscache.h index e192edf0ab..3c43b3abe7 100644 --- a/src/corelib/tools/qcontiguouscache.h +++ b/src/corelib/tools/qcontiguouscache.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qcryptographichash.cpp b/src/corelib/tools/qcryptographichash.cpp index e5ac73c3f5..350c785e8b 100644 --- a/src/corelib/tools/qcryptographichash.cpp +++ b/src/corelib/tools/qcryptographichash.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qcryptographichash.h b/src/corelib/tools/qcryptographichash.h index 15ebd22418..64d54838fa 100644 --- a/src/corelib/tools/qcryptographichash.h +++ b/src/corelib/tools/qcryptographichash.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qdatetime.cpp b/src/corelib/tools/qdatetime.cpp index 3c8848ba0f..8a452847f1 100644 --- a/src/corelib/tools/qdatetime.cpp +++ b/src/corelib/tools/qdatetime.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qdatetime.h b/src/corelib/tools/qdatetime.h index 62bdcab7cc..e33cd69a1c 100644 --- a/src/corelib/tools/qdatetime.h +++ b/src/corelib/tools/qdatetime.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qdatetime_p.h b/src/corelib/tools/qdatetime_p.h index c20f2123f9..38aa748c6c 100644 --- a/src/corelib/tools/qdatetime_p.h +++ b/src/corelib/tools/qdatetime_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qeasingcurve.cpp b/src/corelib/tools/qeasingcurve.cpp index 4337c4a594..a3614f9b6c 100644 --- a/src/corelib/tools/qeasingcurve.cpp +++ b/src/corelib/tools/qeasingcurve.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qeasingcurve.h b/src/corelib/tools/qeasingcurve.h index 326e7f6e61..ef18ae20bc 100644 --- a/src/corelib/tools/qeasingcurve.h +++ b/src/corelib/tools/qeasingcurve.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qelapsedtimer.cpp b/src/corelib/tools/qelapsedtimer.cpp index 039c76960e..087252a926 100644 --- a/src/corelib/tools/qelapsedtimer.cpp +++ b/src/corelib/tools/qelapsedtimer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qelapsedtimer.h b/src/corelib/tools/qelapsedtimer.h index 6e5be84c00..73ec8d637e 100644 --- a/src/corelib/tools/qelapsedtimer.h +++ b/src/corelib/tools/qelapsedtimer.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qelapsedtimer_generic.cpp b/src/corelib/tools/qelapsedtimer_generic.cpp index 165efa96f2..3c7bb197d7 100644 --- a/src/corelib/tools/qelapsedtimer_generic.cpp +++ b/src/corelib/tools/qelapsedtimer_generic.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qelapsedtimer_mac.cpp b/src/corelib/tools/qelapsedtimer_mac.cpp index 4b1275fe5c..f8f124f6a9 100644 --- a/src/corelib/tools/qelapsedtimer_mac.cpp +++ b/src/corelib/tools/qelapsedtimer_mac.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qelapsedtimer_symbian.cpp b/src/corelib/tools/qelapsedtimer_symbian.cpp index dd5909f76f..4ae3f3d1ab 100644 --- a/src/corelib/tools/qelapsedtimer_symbian.cpp +++ b/src/corelib/tools/qelapsedtimer_symbian.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qelapsedtimer_unix.cpp b/src/corelib/tools/qelapsedtimer_unix.cpp index 8a046063f9..7f3d4f635c 100644 --- a/src/corelib/tools/qelapsedtimer_unix.cpp +++ b/src/corelib/tools/qelapsedtimer_unix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qelapsedtimer_win.cpp b/src/corelib/tools/qelapsedtimer_win.cpp index cd076a60d7..183171e306 100644 --- a/src/corelib/tools/qelapsedtimer_win.cpp +++ b/src/corelib/tools/qelapsedtimer_win.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qfreelist.cpp b/src/corelib/tools/qfreelist.cpp index bbbdb25e49..57530cf3c8 100644 --- a/src/corelib/tools/qfreelist.cpp +++ b/src/corelib/tools/qfreelist.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qfreelist_p.h b/src/corelib/tools/qfreelist_p.h index 5af0bb1807..2105e5af56 100644 --- a/src/corelib/tools/qfreelist_p.h +++ b/src/corelib/tools/qfreelist_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qharfbuzz.cpp b/src/corelib/tools/qharfbuzz.cpp index 324cd481ed..4eb6565557 100644 --- a/src/corelib/tools/qharfbuzz.cpp +++ b/src/corelib/tools/qharfbuzz.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qharfbuzz_p.h b/src/corelib/tools/qharfbuzz_p.h index f67b094c2d..a8da47b71c 100644 --- a/src/corelib/tools/qharfbuzz_p.h +++ b/src/corelib/tools/qharfbuzz_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qhash.cpp b/src/corelib/tools/qhash.cpp index afb5ebe951..f4ec4ebd56 100644 --- a/src/corelib/tools/qhash.cpp +++ b/src/corelib/tools/qhash.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qhash.h b/src/corelib/tools/qhash.h index ec9bd42c83..0fdb1ad794 100644 --- a/src/corelib/tools/qhash.h +++ b/src/corelib/tools/qhash.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qiterator.h b/src/corelib/tools/qiterator.h index c789e23ddc..0747940bf2 100644 --- a/src/corelib/tools/qiterator.h +++ b/src/corelib/tools/qiterator.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qiterator.qdoc b/src/corelib/tools/qiterator.qdoc index 6594a2f874..0e33aecbe4 100644 --- a/src/corelib/tools/qiterator.qdoc +++ b/src/corelib/tools/qiterator.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qline.cpp b/src/corelib/tools/qline.cpp index 0f67652fb5..161123cfff 100644 --- a/src/corelib/tools/qline.cpp +++ b/src/corelib/tools/qline.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qline.h b/src/corelib/tools/qline.h index af2eda0850..956cbf9ce8 100644 --- a/src/corelib/tools/qline.h +++ b/src/corelib/tools/qline.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qlinkedlist.cpp b/src/corelib/tools/qlinkedlist.cpp index 16105530bf..3ef67cb85b 100644 --- a/src/corelib/tools/qlinkedlist.cpp +++ b/src/corelib/tools/qlinkedlist.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qlinkedlist.h b/src/corelib/tools/qlinkedlist.h index 36cbc68eb8..f1def3d166 100644 --- a/src/corelib/tools/qlinkedlist.h +++ b/src/corelib/tools/qlinkedlist.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qlist.cpp b/src/corelib/tools/qlist.cpp index 94be78ea21..9ac46365a2 100644 --- a/src/corelib/tools/qlist.cpp +++ b/src/corelib/tools/qlist.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qlist.h b/src/corelib/tools/qlist.h index 5c8a58a196..d192d31234 100644 --- a/src/corelib/tools/qlist.h +++ b/src/corelib/tools/qlist.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qlocale.cpp b/src/corelib/tools/qlocale.cpp index 595f178009..d9777433d4 100644 --- a/src/corelib/tools/qlocale.cpp +++ b/src/corelib/tools/qlocale.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qlocale.h b/src/corelib/tools/qlocale.h index dca3dd7259..100dcc9722 100644 --- a/src/corelib/tools/qlocale.h +++ b/src/corelib/tools/qlocale.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qlocale.qdoc b/src/corelib/tools/qlocale.qdoc index fd139c3bec..c8d8a38929 100644 --- a/src/corelib/tools/qlocale.qdoc +++ b/src/corelib/tools/qlocale.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qlocale_data_p.h b/src/corelib/tools/qlocale_data_p.h index 95b23a29a6..a29e40079a 100644 --- a/src/corelib/tools/qlocale_data_p.h +++ b/src/corelib/tools/qlocale_data_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qlocale_p.h b/src/corelib/tools/qlocale_p.h index b607038aaf..0b229e5e3f 100644 --- a/src/corelib/tools/qlocale_p.h +++ b/src/corelib/tools/qlocale_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qlocale_symbian.cpp b/src/corelib/tools/qlocale_symbian.cpp index a4f6cc8458..abe437fc89 100644 --- a/src/corelib/tools/qlocale_symbian.cpp +++ b/src/corelib/tools/qlocale_symbian.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qmap.cpp b/src/corelib/tools/qmap.cpp index f605a82dfe..280409fde8 100644 --- a/src/corelib/tools/qmap.cpp +++ b/src/corelib/tools/qmap.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qmap.h b/src/corelib/tools/qmap.h index 362b723b0a..f975b7eb16 100644 --- a/src/corelib/tools/qmap.h +++ b/src/corelib/tools/qmap.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qmargins.cpp b/src/corelib/tools/qmargins.cpp index 9c7dd038e7..e14e2aa227 100644 --- a/src/corelib/tools/qmargins.cpp +++ b/src/corelib/tools/qmargins.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qmargins.h b/src/corelib/tools/qmargins.h index 635ac56137..4e69907440 100644 --- a/src/corelib/tools/qmargins.h +++ b/src/corelib/tools/qmargins.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qpair.h b/src/corelib/tools/qpair.h index 95868840ea..0acd617e26 100644 --- a/src/corelib/tools/qpair.h +++ b/src/corelib/tools/qpair.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qpair.qdoc b/src/corelib/tools/qpair.qdoc index a9d73419ff..26e7c78996 100644 --- a/src/corelib/tools/qpair.qdoc +++ b/src/corelib/tools/qpair.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qpodlist_p.h b/src/corelib/tools/qpodlist_p.h index d06c9479e7..9c03f0e64a 100644 --- a/src/corelib/tools/qpodlist_p.h +++ b/src/corelib/tools/qpodlist_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qpoint.cpp b/src/corelib/tools/qpoint.cpp index bd32fe77b1..9139f4033c 100644 --- a/src/corelib/tools/qpoint.cpp +++ b/src/corelib/tools/qpoint.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qpoint.h b/src/corelib/tools/qpoint.h index b394ece1a6..a6381578d8 100644 --- a/src/corelib/tools/qpoint.h +++ b/src/corelib/tools/qpoint.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qqueue.cpp b/src/corelib/tools/qqueue.cpp index 2f5aae4026..5753c7d695 100644 --- a/src/corelib/tools/qqueue.cpp +++ b/src/corelib/tools/qqueue.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qqueue.h b/src/corelib/tools/qqueue.h index c10e6c0b2b..9aa7a7bdb0 100644 --- a/src/corelib/tools/qqueue.h +++ b/src/corelib/tools/qqueue.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qrect.cpp b/src/corelib/tools/qrect.cpp index 41ec816c46..2d63eb85e6 100644 --- a/src/corelib/tools/qrect.cpp +++ b/src/corelib/tools/qrect.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qrect.h b/src/corelib/tools/qrect.h index 58221f4739..94e69e637d 100644 --- a/src/corelib/tools/qrect.h +++ b/src/corelib/tools/qrect.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qrefcount.cpp b/src/corelib/tools/qrefcount.cpp index c40214b2ab..5341d27a91 100644 --- a/src/corelib/tools/qrefcount.cpp +++ b/src/corelib/tools/qrefcount.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qrefcount.h b/src/corelib/tools/qrefcount.h index 619f61e072..5b3884806f 100644 --- a/src/corelib/tools/qrefcount.h +++ b/src/corelib/tools/qrefcount.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qregexp.cpp b/src/corelib/tools/qregexp.cpp index 688b38d132..9be494472f 100644 --- a/src/corelib/tools/qregexp.cpp +++ b/src/corelib/tools/qregexp.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qregexp.h b/src/corelib/tools/qregexp.h index 4ce2f6e0be..583fa15a5f 100644 --- a/src/corelib/tools/qregexp.h +++ b/src/corelib/tools/qregexp.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qringbuffer_p.h b/src/corelib/tools/qringbuffer_p.h index 4a19e12647..6bbce03a44 100644 --- a/src/corelib/tools/qringbuffer_p.h +++ b/src/corelib/tools/qringbuffer_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qscopedpointer.cpp b/src/corelib/tools/qscopedpointer.cpp index 9277a3ebbf..a95468617b 100644 --- a/src/corelib/tools/qscopedpointer.cpp +++ b/src/corelib/tools/qscopedpointer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qscopedpointer.h b/src/corelib/tools/qscopedpointer.h index a24f62e7ba..41e6dff90c 100644 --- a/src/corelib/tools/qscopedpointer.h +++ b/src/corelib/tools/qscopedpointer.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qscopedpointer_p.h b/src/corelib/tools/qscopedpointer_p.h index 8dcc503ad2..eb7cc80e54 100644 --- a/src/corelib/tools/qscopedpointer_p.h +++ b/src/corelib/tools/qscopedpointer_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qscopedvaluerollback.cpp b/src/corelib/tools/qscopedvaluerollback.cpp index 1ad47f45dd..e5b68ded1f 100644 --- a/src/corelib/tools/qscopedvaluerollback.cpp +++ b/src/corelib/tools/qscopedvaluerollback.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qscopedvaluerollback.h b/src/corelib/tools/qscopedvaluerollback.h index ee62147540..3b821956eb 100644 --- a/src/corelib/tools/qscopedvaluerollback.h +++ b/src/corelib/tools/qscopedvaluerollback.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qset.h b/src/corelib/tools/qset.h index 5f48042114..7694faa74e 100644 --- a/src/corelib/tools/qset.h +++ b/src/corelib/tools/qset.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qset.qdoc b/src/corelib/tools/qset.qdoc index f562c68b72..28b53e690d 100644 --- a/src/corelib/tools/qset.qdoc +++ b/src/corelib/tools/qset.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qshareddata.cpp b/src/corelib/tools/qshareddata.cpp index ee2b0c4f3c..2995d4a123 100644 --- a/src/corelib/tools/qshareddata.cpp +++ b/src/corelib/tools/qshareddata.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qshareddata.h b/src/corelib/tools/qshareddata.h index 6de6a19289..add8025d5a 100644 --- a/src/corelib/tools/qshareddata.h +++ b/src/corelib/tools/qshareddata.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qsharedpointer.cpp b/src/corelib/tools/qsharedpointer.cpp index 34060926c7..0069eb6831 100644 --- a/src/corelib/tools/qsharedpointer.cpp +++ b/src/corelib/tools/qsharedpointer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qsharedpointer.h b/src/corelib/tools/qsharedpointer.h index 6b2b41f1de..f4a0c02ebf 100644 --- a/src/corelib/tools/qsharedpointer.h +++ b/src/corelib/tools/qsharedpointer.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qsharedpointer_impl.h b/src/corelib/tools/qsharedpointer_impl.h index f03889106f..3cad13856c 100644 --- a/src/corelib/tools/qsharedpointer_impl.h +++ b/src/corelib/tools/qsharedpointer_impl.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qsimd.cpp b/src/corelib/tools/qsimd.cpp index 3dfe38a4d1..9001c4a399 100644 --- a/src/corelib/tools/qsimd.cpp +++ b/src/corelib/tools/qsimd.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qsimd_p.h b/src/corelib/tools/qsimd_p.h index 296c275b61..2fc6d88fb6 100644 --- a/src/corelib/tools/qsimd_p.h +++ b/src/corelib/tools/qsimd_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qsize.cpp b/src/corelib/tools/qsize.cpp index d8bd14de8d..41abb0be17 100644 --- a/src/corelib/tools/qsize.cpp +++ b/src/corelib/tools/qsize.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qsize.h b/src/corelib/tools/qsize.h index adc857be96..c9712b3976 100644 --- a/src/corelib/tools/qsize.h +++ b/src/corelib/tools/qsize.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qstack.cpp b/src/corelib/tools/qstack.cpp index 0fbb8d8516..de851d2f0d 100644 --- a/src/corelib/tools/qstack.cpp +++ b/src/corelib/tools/qstack.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qstack.h b/src/corelib/tools/qstack.h index 224935455d..35518cfe5e 100644 --- a/src/corelib/tools/qstack.h +++ b/src/corelib/tools/qstack.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qstring.cpp b/src/corelib/tools/qstring.cpp index be8876af48..38e19d1c98 100644 --- a/src/corelib/tools/qstring.cpp +++ b/src/corelib/tools/qstring.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qstring.h b/src/corelib/tools/qstring.h index 8f063dd1e8..9d92f403eb 100644 --- a/src/corelib/tools/qstring.h +++ b/src/corelib/tools/qstring.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qstringbuilder.cpp b/src/corelib/tools/qstringbuilder.cpp index 2b40a68e0b..018a312fa6 100644 --- a/src/corelib/tools/qstringbuilder.cpp +++ b/src/corelib/tools/qstringbuilder.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qstringbuilder.h b/src/corelib/tools/qstringbuilder.h index 30b81c42f4..a9b8c973b1 100644 --- a/src/corelib/tools/qstringbuilder.h +++ b/src/corelib/tools/qstringbuilder.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qstringlist.cpp b/src/corelib/tools/qstringlist.cpp index bab7d42215..1fca78b03b 100644 --- a/src/corelib/tools/qstringlist.cpp +++ b/src/corelib/tools/qstringlist.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qstringlist.h b/src/corelib/tools/qstringlist.h index bded94399d..6c32f11096 100644 --- a/src/corelib/tools/qstringlist.h +++ b/src/corelib/tools/qstringlist.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qstringmatcher.cpp b/src/corelib/tools/qstringmatcher.cpp index 0117d78544..36016a9401 100644 --- a/src/corelib/tools/qstringmatcher.cpp +++ b/src/corelib/tools/qstringmatcher.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qstringmatcher.h b/src/corelib/tools/qstringmatcher.h index ed4e503644..9f5e10b942 100644 --- a/src/corelib/tools/qstringmatcher.h +++ b/src/corelib/tools/qstringmatcher.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qtextboundaryfinder.cpp b/src/corelib/tools/qtextboundaryfinder.cpp index aabb6949ad..4554ebb34f 100644 --- a/src/corelib/tools/qtextboundaryfinder.cpp +++ b/src/corelib/tools/qtextboundaryfinder.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qtextboundaryfinder.h b/src/corelib/tools/qtextboundaryfinder.h index 4d5369c3af..3f4f309d31 100644 --- a/src/corelib/tools/qtextboundaryfinder.h +++ b/src/corelib/tools/qtextboundaryfinder.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qtimeline.cpp b/src/corelib/tools/qtimeline.cpp index 0ca406308a..2ff25a9a46 100644 --- a/src/corelib/tools/qtimeline.cpp +++ b/src/corelib/tools/qtimeline.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qtimeline.h b/src/corelib/tools/qtimeline.h index d65822ff40..06a5d76a4b 100644 --- a/src/corelib/tools/qtimeline.h +++ b/src/corelib/tools/qtimeline.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qtools_p.h b/src/corelib/tools/qtools_p.h index 9a7f5dd852..6a1b78b12b 100644 --- a/src/corelib/tools/qtools_p.h +++ b/src/corelib/tools/qtools_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qunicodetables.cpp b/src/corelib/tools/qunicodetables.cpp index 88fd2afb72..7fc09e7d60 100644 --- a/src/corelib/tools/qunicodetables.cpp +++ b/src/corelib/tools/qunicodetables.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qunicodetables_p.h b/src/corelib/tools/qunicodetables_p.h index 0c9bd02c04..0a357c0da6 100644 --- a/src/corelib/tools/qunicodetables_p.h +++ b/src/corelib/tools/qunicodetables_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qvarlengtharray.h b/src/corelib/tools/qvarlengtharray.h index 48b14e6816..d37389a8dc 100644 --- a/src/corelib/tools/qvarlengtharray.h +++ b/src/corelib/tools/qvarlengtharray.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qvarlengtharray.qdoc b/src/corelib/tools/qvarlengtharray.qdoc index 032521d1c2..c4198aafa7 100644 --- a/src/corelib/tools/qvarlengtharray.qdoc +++ b/src/corelib/tools/qvarlengtharray.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qvector.cpp b/src/corelib/tools/qvector.cpp index e1828c2b0f..c58c846aa8 100644 --- a/src/corelib/tools/qvector.cpp +++ b/src/corelib/tools/qvector.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qvector.h b/src/corelib/tools/qvector.h index eab9311eb3..17f51fb575 100644 --- a/src/corelib/tools/qvector.h +++ b/src/corelib/tools/qvector.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/tools/qvsnprintf.cpp b/src/corelib/tools/qvsnprintf.cpp index 0b85cf0c0a..85f8270ffd 100644 --- a/src/corelib/tools/qvsnprintf.cpp +++ b/src/corelib/tools/qvsnprintf.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/xml/make-parser.sh b/src/corelib/xml/make-parser.sh index 11ac2196a6..a02538ba79 100755 --- a/src/corelib/xml/make-parser.sh +++ b/src/corelib/xml/make-parser.sh @@ -1,7 +1,7 @@ #!/bin/sh ############################################################################# ## -## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ## All rights reserved. ## Contact: Nokia Corporation (qt-info@nokia.com) ## diff --git a/src/corelib/xml/qxmlstream.cpp b/src/corelib/xml/qxmlstream.cpp index bf37902950..787bbee409 100644 --- a/src/corelib/xml/qxmlstream.cpp +++ b/src/corelib/xml/qxmlstream.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/xml/qxmlstream.g b/src/corelib/xml/qxmlstream.g index 26e7323a5f..88bfcd47cc 100644 --- a/src/corelib/xml/qxmlstream.g +++ b/src/corelib/xml/qxmlstream.g @@ -1,6 +1,6 @@ ---------------------------------------------------------------------------- -- --- Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +-- Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). -- All rights reserved. -- Contact: Nokia Corporation (qt-info@nokia.com) -- diff --git a/src/corelib/xml/qxmlstream.h b/src/corelib/xml/qxmlstream.h index 3e19bef273..04f9322712 100644 --- a/src/corelib/xml/qxmlstream.h +++ b/src/corelib/xml/qxmlstream.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/xml/qxmlstream_p.h b/src/corelib/xml/qxmlstream_p.h index db5fb65246..e67ff3d76b 100644 --- a/src/corelib/xml/qxmlstream_p.h +++ b/src/corelib/xml/qxmlstream_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/xml/qxmlutils.cpp b/src/corelib/xml/qxmlutils.cpp index 9cae7632e5..afc4fff8d6 100644 --- a/src/corelib/xml/qxmlutils.cpp +++ b/src/corelib/xml/qxmlutils.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/corelib/xml/qxmlutils_p.h b/src/corelib/xml/qxmlutils_p.h index 5fa913e63a..8b8d2358c9 100644 --- a/src/corelib/xml/qxmlutils_p.h +++ b/src/corelib/xml/qxmlutils_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbus_symbols.cpp b/src/dbus/qdbus_symbols.cpp index 8e74b8b922..8f02bedf15 100644 --- a/src/dbus/qdbus_symbols.cpp +++ b/src/dbus/qdbus_symbols.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbus_symbols_p.h b/src/dbus/qdbus_symbols_p.h index 8178e2ecf3..bb17231c34 100644 --- a/src/dbus/qdbus_symbols_p.h +++ b/src/dbus/qdbus_symbols_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusabstractadaptor.cpp b/src/dbus/qdbusabstractadaptor.cpp index 9d9e0f6e28..6acbd98fbf 100644 --- a/src/dbus/qdbusabstractadaptor.cpp +++ b/src/dbus/qdbusabstractadaptor.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusabstractadaptor.h b/src/dbus/qdbusabstractadaptor.h index bb9c11bbaa..2f5896a9cb 100644 --- a/src/dbus/qdbusabstractadaptor.h +++ b/src/dbus/qdbusabstractadaptor.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusabstractadaptor_p.h b/src/dbus/qdbusabstractadaptor_p.h index 4c197be226..a9e184a186 100644 --- a/src/dbus/qdbusabstractadaptor_p.h +++ b/src/dbus/qdbusabstractadaptor_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusabstractinterface.cpp b/src/dbus/qdbusabstractinterface.cpp index 9f68313040..a63864a0b3 100644 --- a/src/dbus/qdbusabstractinterface.cpp +++ b/src/dbus/qdbusabstractinterface.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusabstractinterface.h b/src/dbus/qdbusabstractinterface.h index 34ff4107f9..9cc68594e6 100644 --- a/src/dbus/qdbusabstractinterface.h +++ b/src/dbus/qdbusabstractinterface.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusabstractinterface_p.h b/src/dbus/qdbusabstractinterface_p.h index 4f96165aa0..b0fb04e831 100644 --- a/src/dbus/qdbusabstractinterface_p.h +++ b/src/dbus/qdbusabstractinterface_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusargument.cpp b/src/dbus/qdbusargument.cpp index af800d765d..4bb5d55724 100644 --- a/src/dbus/qdbusargument.cpp +++ b/src/dbus/qdbusargument.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusargument.h b/src/dbus/qdbusargument.h index cea28f9b61..74a5b37078 100644 --- a/src/dbus/qdbusargument.h +++ b/src/dbus/qdbusargument.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusargument_p.h b/src/dbus/qdbusargument_p.h index 4327e74267..c04e458449 100644 --- a/src/dbus/qdbusargument_p.h +++ b/src/dbus/qdbusargument_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusconnection.cpp b/src/dbus/qdbusconnection.cpp index 7d3cf9be4c..8b519e6884 100644 --- a/src/dbus/qdbusconnection.cpp +++ b/src/dbus/qdbusconnection.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusconnection.h b/src/dbus/qdbusconnection.h index 8b126af77e..3b88ad3f9a 100644 --- a/src/dbus/qdbusconnection.h +++ b/src/dbus/qdbusconnection.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusconnection_p.h b/src/dbus/qdbusconnection_p.h index d481cf16ba..46fed80865 100644 --- a/src/dbus/qdbusconnection_p.h +++ b/src/dbus/qdbusconnection_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusconnectioninterface.cpp b/src/dbus/qdbusconnectioninterface.cpp index 063fb88afa..46080027a6 100644 --- a/src/dbus/qdbusconnectioninterface.cpp +++ b/src/dbus/qdbusconnectioninterface.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusconnectioninterface.h b/src/dbus/qdbusconnectioninterface.h index a516bc4552..93ee6709eb 100644 --- a/src/dbus/qdbusconnectioninterface.h +++ b/src/dbus/qdbusconnectioninterface.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusconnectionmanager_p.h b/src/dbus/qdbusconnectionmanager_p.h index f9a9e2906e..9d929b019b 100644 --- a/src/dbus/qdbusconnectionmanager_p.h +++ b/src/dbus/qdbusconnectionmanager_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbuscontext.cpp b/src/dbus/qdbuscontext.cpp index b65af73e63..e4a5d879d7 100644 --- a/src/dbus/qdbuscontext.cpp +++ b/src/dbus/qdbuscontext.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbuscontext.h b/src/dbus/qdbuscontext.h index 8dd9b40981..9ceef6ecc1 100644 --- a/src/dbus/qdbuscontext.h +++ b/src/dbus/qdbuscontext.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbuscontext_p.h b/src/dbus/qdbuscontext_p.h index 691e69d2f1..5aa5da0378 100644 --- a/src/dbus/qdbuscontext_p.h +++ b/src/dbus/qdbuscontext_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusdemarshaller.cpp b/src/dbus/qdbusdemarshaller.cpp index 96729fd603..215e6a1eb1 100644 --- a/src/dbus/qdbusdemarshaller.cpp +++ b/src/dbus/qdbusdemarshaller.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbuserror.cpp b/src/dbus/qdbuserror.cpp index 09e3450ecc..911e104736 100644 --- a/src/dbus/qdbuserror.cpp +++ b/src/dbus/qdbuserror.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbuserror.h b/src/dbus/qdbuserror.h index 4683f30385..3f6a66c2f4 100644 --- a/src/dbus/qdbuserror.h +++ b/src/dbus/qdbuserror.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusextratypes.cpp b/src/dbus/qdbusextratypes.cpp index 05a95c09e5..9adceb8871 100644 --- a/src/dbus/qdbusextratypes.cpp +++ b/src/dbus/qdbusextratypes.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusextratypes.h b/src/dbus/qdbusextratypes.h index 984d4537ec..ec37453167 100644 --- a/src/dbus/qdbusextratypes.h +++ b/src/dbus/qdbusextratypes.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusintegrator.cpp b/src/dbus/qdbusintegrator.cpp index f6b433e1ba..59b191bd10 100644 --- a/src/dbus/qdbusintegrator.cpp +++ b/src/dbus/qdbusintegrator.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusintegrator_p.h b/src/dbus/qdbusintegrator_p.h index 745048a7e2..1e39bd734a 100644 --- a/src/dbus/qdbusintegrator_p.h +++ b/src/dbus/qdbusintegrator_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusinterface.cpp b/src/dbus/qdbusinterface.cpp index b670244a0a..1bf468acad 100644 --- a/src/dbus/qdbusinterface.cpp +++ b/src/dbus/qdbusinterface.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusinterface.h b/src/dbus/qdbusinterface.h index 9396d9b483..75e876a389 100644 --- a/src/dbus/qdbusinterface.h +++ b/src/dbus/qdbusinterface.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusinterface_p.h b/src/dbus/qdbusinterface_p.h index 1bff192209..b85d3cea77 100644 --- a/src/dbus/qdbusinterface_p.h +++ b/src/dbus/qdbusinterface_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusinternalfilters.cpp b/src/dbus/qdbusinternalfilters.cpp index b874a64644..7d07c92663 100644 --- a/src/dbus/qdbusinternalfilters.cpp +++ b/src/dbus/qdbusinternalfilters.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusintrospection.cpp b/src/dbus/qdbusintrospection.cpp index 710a943941..23eda78e5a 100644 --- a/src/dbus/qdbusintrospection.cpp +++ b/src/dbus/qdbusintrospection.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusintrospection_p.h b/src/dbus/qdbusintrospection_p.h index 29d5772189..025cf63fe3 100644 --- a/src/dbus/qdbusintrospection_p.h +++ b/src/dbus/qdbusintrospection_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusmacros.h b/src/dbus/qdbusmacros.h index f942a28c58..e508362db0 100644 --- a/src/dbus/qdbusmacros.h +++ b/src/dbus/qdbusmacros.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusmarshaller.cpp b/src/dbus/qdbusmarshaller.cpp index 790f044fd7..843388c51e 100644 --- a/src/dbus/qdbusmarshaller.cpp +++ b/src/dbus/qdbusmarshaller.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusmessage.cpp b/src/dbus/qdbusmessage.cpp index 78a1d902c3..779ab81008 100644 --- a/src/dbus/qdbusmessage.cpp +++ b/src/dbus/qdbusmessage.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusmessage.h b/src/dbus/qdbusmessage.h index 14027ff27b..9cb1a476ca 100644 --- a/src/dbus/qdbusmessage.h +++ b/src/dbus/qdbusmessage.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusmessage_p.h b/src/dbus/qdbusmessage_p.h index 2c17c38e28..da716a6def 100644 --- a/src/dbus/qdbusmessage_p.h +++ b/src/dbus/qdbusmessage_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusmetaobject.cpp b/src/dbus/qdbusmetaobject.cpp index 8daf2300b7..e25de261ed 100644 --- a/src/dbus/qdbusmetaobject.cpp +++ b/src/dbus/qdbusmetaobject.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusmetaobject_p.h b/src/dbus/qdbusmetaobject_p.h index d9b1eedaa9..063234a49e 100644 --- a/src/dbus/qdbusmetaobject_p.h +++ b/src/dbus/qdbusmetaobject_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusmetatype.cpp b/src/dbus/qdbusmetatype.cpp index 20e8969590..e3ed5b5146 100644 --- a/src/dbus/qdbusmetatype.cpp +++ b/src/dbus/qdbusmetatype.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusmetatype.h b/src/dbus/qdbusmetatype.h index 979e28510c..53b4c29591 100644 --- a/src/dbus/qdbusmetatype.h +++ b/src/dbus/qdbusmetatype.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusmetatype_p.h b/src/dbus/qdbusmetatype_p.h index d33198f450..68deffbe08 100644 --- a/src/dbus/qdbusmetatype_p.h +++ b/src/dbus/qdbusmetatype_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusmisc.cpp b/src/dbus/qdbusmisc.cpp index 24eabfbfa6..e7c7715eaa 100644 --- a/src/dbus/qdbusmisc.cpp +++ b/src/dbus/qdbusmisc.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbuspendingcall.cpp b/src/dbus/qdbuspendingcall.cpp index 2278db4394..1004146f1d 100644 --- a/src/dbus/qdbuspendingcall.cpp +++ b/src/dbus/qdbuspendingcall.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbuspendingcall.h b/src/dbus/qdbuspendingcall.h index 4791c3e6aa..dfdaf4e76a 100644 --- a/src/dbus/qdbuspendingcall.h +++ b/src/dbus/qdbuspendingcall.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbuspendingcall_p.h b/src/dbus/qdbuspendingcall_p.h index ae17214834..02057a74b2 100644 --- a/src/dbus/qdbuspendingcall_p.h +++ b/src/dbus/qdbuspendingcall_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbuspendingreply.cpp b/src/dbus/qdbuspendingreply.cpp index 2d8c4872ca..5f930c71a1 100644 --- a/src/dbus/qdbuspendingreply.cpp +++ b/src/dbus/qdbuspendingreply.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbuspendingreply.h b/src/dbus/qdbuspendingreply.h index 926e3ab48d..596a459009 100644 --- a/src/dbus/qdbuspendingreply.h +++ b/src/dbus/qdbuspendingreply.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusreply.cpp b/src/dbus/qdbusreply.cpp index 145412e3c3..6c5b598ea2 100644 --- a/src/dbus/qdbusreply.cpp +++ b/src/dbus/qdbusreply.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusreply.h b/src/dbus/qdbusreply.h index 33274f41cf..b9013185b4 100644 --- a/src/dbus/qdbusreply.h +++ b/src/dbus/qdbusreply.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusserver.cpp b/src/dbus/qdbusserver.cpp index a892e80faf..078f56aa61 100644 --- a/src/dbus/qdbusserver.cpp +++ b/src/dbus/qdbusserver.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusserver.h b/src/dbus/qdbusserver.h index d00702a26f..900c652d37 100644 --- a/src/dbus/qdbusserver.h +++ b/src/dbus/qdbusserver.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusservicewatcher.cpp b/src/dbus/qdbusservicewatcher.cpp index c56a3d4841..6db9a28712 100644 --- a/src/dbus/qdbusservicewatcher.cpp +++ b/src/dbus/qdbusservicewatcher.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusservicewatcher.h b/src/dbus/qdbusservicewatcher.h index 96318b274d..853064032b 100644 --- a/src/dbus/qdbusservicewatcher.h +++ b/src/dbus/qdbusservicewatcher.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusthreaddebug_p.h b/src/dbus/qdbusthreaddebug_p.h index c7e0dc584e..131437d370 100644 --- a/src/dbus/qdbusthreaddebug_p.h +++ b/src/dbus/qdbusthreaddebug_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusunixfiledescriptor.cpp b/src/dbus/qdbusunixfiledescriptor.cpp index 0ee29fc20f..5a8835735e 100644 --- a/src/dbus/qdbusunixfiledescriptor.cpp +++ b/src/dbus/qdbusunixfiledescriptor.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusunixfiledescriptor.h b/src/dbus/qdbusunixfiledescriptor.h index 9afa6ac8a6..46d933ea24 100644 --- a/src/dbus/qdbusunixfiledescriptor.h +++ b/src/dbus/qdbusunixfiledescriptor.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusutil.cpp b/src/dbus/qdbusutil.cpp index 0c7f0e63e0..70ef22f428 100644 --- a/src/dbus/qdbusutil.cpp +++ b/src/dbus/qdbusutil.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusutil_p.h b/src/dbus/qdbusutil_p.h index bda0b923d1..50ef4fc9c2 100644 --- a/src/dbus/qdbusutil_p.h +++ b/src/dbus/qdbusutil_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusvirtualobject.cpp b/src/dbus/qdbusvirtualobject.cpp index 992ccbf229..c421e7dfd6 100644 --- a/src/dbus/qdbusvirtualobject.cpp +++ b/src/dbus/qdbusvirtualobject.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusvirtualobject.h b/src/dbus/qdbusvirtualobject.h index be323de720..6f0807f16d 100644 --- a/src/dbus/qdbusvirtualobject.h +++ b/src/dbus/qdbusvirtualobject.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusxmlgenerator.cpp b/src/dbus/qdbusxmlgenerator.cpp index 076af8a0b7..b49756ebfe 100644 --- a/src/dbus/qdbusxmlgenerator.cpp +++ b/src/dbus/qdbusxmlgenerator.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusxmlparser.cpp b/src/dbus/qdbusxmlparser.cpp index 19b35e6c07..b1d0b78c96 100644 --- a/src/dbus/qdbusxmlparser.cpp +++ b/src/dbus/qdbusxmlparser.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/dbus/qdbusxmlparser_p.h b/src/dbus/qdbusxmlparser_p.h index 3bf31a48e9..f7677e0ae4 100644 --- a/src/dbus/qdbusxmlparser_p.h +++ b/src/dbus/qdbusxmlparser_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/accessible/qaccessible.cpp b/src/gui/accessible/qaccessible.cpp index 3251e46a96..8556126de0 100644 --- a/src/gui/accessible/qaccessible.cpp +++ b/src/gui/accessible/qaccessible.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/accessible/qaccessible.h b/src/gui/accessible/qaccessible.h index 55541810a3..7ccd379138 100644 --- a/src/gui/accessible/qaccessible.h +++ b/src/gui/accessible/qaccessible.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/accessible/qaccessible2.cpp b/src/gui/accessible/qaccessible2.cpp index d8bebdc697..23eec62cd6 100644 --- a/src/gui/accessible/qaccessible2.cpp +++ b/src/gui/accessible/qaccessible2.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/accessible/qaccessible2.h b/src/gui/accessible/qaccessible2.h index e83268c520..8de52978f1 100644 --- a/src/gui/accessible/qaccessible2.h +++ b/src/gui/accessible/qaccessible2.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/accessible/qaccessible_mac.mm b/src/gui/accessible/qaccessible_mac.mm index a250730493..980d4d56b5 100644 --- a/src/gui/accessible/qaccessible_mac.mm +++ b/src/gui/accessible/qaccessible_mac.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/accessible/qaccessible_mac_carbon.cpp b/src/gui/accessible/qaccessible_mac_carbon.cpp index 32a242f274..121e3269e1 100644 --- a/src/gui/accessible/qaccessible_mac_carbon.cpp +++ b/src/gui/accessible/qaccessible_mac_carbon.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/accessible/qaccessible_mac_cocoa.mm b/src/gui/accessible/qaccessible_mac_cocoa.mm index 461b61aacf..19af5b5160 100644 --- a/src/gui/accessible/qaccessible_mac_cocoa.mm +++ b/src/gui/accessible/qaccessible_mac_cocoa.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/accessible/qaccessible_mac_p.h b/src/gui/accessible/qaccessible_mac_p.h index 9b7d25a334..a964dc37c9 100644 --- a/src/gui/accessible/qaccessible_mac_p.h +++ b/src/gui/accessible/qaccessible_mac_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/accessible/qaccessiblebridge.cpp b/src/gui/accessible/qaccessiblebridge.cpp index b08a2e83bf..d702972cd2 100644 --- a/src/gui/accessible/qaccessiblebridge.cpp +++ b/src/gui/accessible/qaccessiblebridge.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/accessible/qaccessiblebridge.h b/src/gui/accessible/qaccessiblebridge.h index 73edf51183..d0470f38e6 100644 --- a/src/gui/accessible/qaccessiblebridge.h +++ b/src/gui/accessible/qaccessiblebridge.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/accessible/qaccessibleobject.cpp b/src/gui/accessible/qaccessibleobject.cpp index b3e9479013..af86ad47c2 100644 --- a/src/gui/accessible/qaccessibleobject.cpp +++ b/src/gui/accessible/qaccessibleobject.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/accessible/qaccessibleobject.h b/src/gui/accessible/qaccessibleobject.h index ac385fcc39..58b95baffa 100644 --- a/src/gui/accessible/qaccessibleobject.h +++ b/src/gui/accessible/qaccessibleobject.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/accessible/qaccessibleplugin.cpp b/src/gui/accessible/qaccessibleplugin.cpp index 618a31ad5e..0d9d57b0ec 100644 --- a/src/gui/accessible/qaccessibleplugin.cpp +++ b/src/gui/accessible/qaccessibleplugin.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/accessible/qaccessibleplugin.h b/src/gui/accessible/qaccessibleplugin.h index 4e09034dfd..d3610e40f6 100644 --- a/src/gui/accessible/qaccessibleplugin.h +++ b/src/gui/accessible/qaccessibleplugin.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/accessible/qplatformaccessibility_qpa.cpp b/src/gui/accessible/qplatformaccessibility_qpa.cpp index 722e8a59bd..47c351921e 100644 --- a/src/gui/accessible/qplatformaccessibility_qpa.cpp +++ b/src/gui/accessible/qplatformaccessibility_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/accessible/qplatformaccessibility_qpa.h b/src/gui/accessible/qplatformaccessibility_qpa.h index 2931f4180a..15297110b8 100644 --- a/src/gui/accessible/qplatformaccessibility_qpa.h +++ b/src/gui/accessible/qplatformaccessibility_qpa.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/egl/qegl.cpp b/src/gui/egl/qegl.cpp index 4675533144..4ee656f777 100644 --- a/src/gui/egl/qegl.cpp +++ b/src/gui/egl/qegl.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/egl/qegl_p.h b/src/gui/egl/qegl_p.h index db8d8b7a38..02712b4026 100644 --- a/src/gui/egl/qegl_p.h +++ b/src/gui/egl/qegl_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/egl/qegl_stub.cpp b/src/gui/egl/qegl_stub.cpp index 783393c148..3d9d72587e 100644 --- a/src/gui/egl/qegl_stub.cpp +++ b/src/gui/egl/qegl_stub.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/egl/qeglcontext_p.h b/src/gui/egl/qeglcontext_p.h index 7ea18627d1..70cdfc72ac 100644 --- a/src/gui/egl/qeglcontext_p.h +++ b/src/gui/egl/qeglcontext_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/egl/qeglproperties.cpp b/src/gui/egl/qeglproperties.cpp index 7f4785499d..29b1cd371d 100644 --- a/src/gui/egl/qeglproperties.cpp +++ b/src/gui/egl/qeglproperties.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/egl/qeglproperties_p.h b/src/gui/egl/qeglproperties_p.h index ec596200fb..d7bc0893d4 100644 --- a/src/gui/egl/qeglproperties_p.h +++ b/src/gui/egl/qeglproperties_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/egl/qeglproperties_stub.cpp b/src/gui/egl/qeglproperties_stub.cpp index c04f6a1070..7be8a0a4b9 100644 --- a/src/gui/egl/qeglproperties_stub.cpp +++ b/src/gui/egl/qeglproperties_stub.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qbitmap.cpp b/src/gui/image/qbitmap.cpp index 4c03379550..6c1320e868 100644 --- a/src/gui/image/qbitmap.cpp +++ b/src/gui/image/qbitmap.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qbitmap.h b/src/gui/image/qbitmap.h index a3104f5083..5740b874db 100644 --- a/src/gui/image/qbitmap.h +++ b/src/gui/image/qbitmap.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qbmphandler.cpp b/src/gui/image/qbmphandler.cpp index 3011a6c130..3d9f8228f2 100644 --- a/src/gui/image/qbmphandler.cpp +++ b/src/gui/image/qbmphandler.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qbmphandler_p.h b/src/gui/image/qbmphandler_p.h index 373f8fbaaf..f2eb8f69b2 100644 --- a/src/gui/image/qbmphandler_p.h +++ b/src/gui/image/qbmphandler_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qgifhandler.cpp b/src/gui/image/qgifhandler.cpp index 2708790947..6968ca6736 100644 --- a/src/gui/image/qgifhandler.cpp +++ b/src/gui/image/qgifhandler.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qgifhandler_p.h b/src/gui/image/qgifhandler_p.h index ca82f3c979..0d9724a071 100644 --- a/src/gui/image/qgifhandler_p.h +++ b/src/gui/image/qgifhandler_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qimage.cpp b/src/gui/image/qimage.cpp index 9df6bd104c..0e5a4484dc 100644 --- a/src/gui/image/qimage.cpp +++ b/src/gui/image/qimage.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qimage.h b/src/gui/image/qimage.h index 4d1b503cc4..3abf203b3b 100644 --- a/src/gui/image/qimage.h +++ b/src/gui/image/qimage.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qimage_neon.cpp b/src/gui/image/qimage_neon.cpp index a91bd94b03..cdf817b051 100644 --- a/src/gui/image/qimage_neon.cpp +++ b/src/gui/image/qimage_neon.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qimage_p.h b/src/gui/image/qimage_p.h index 77b9a7d1a1..6e846fd0cf 100644 --- a/src/gui/image/qimage_p.h +++ b/src/gui/image/qimage_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qimage_sse2.cpp b/src/gui/image/qimage_sse2.cpp index fe0bf8b303..872d1d6be7 100644 --- a/src/gui/image/qimage_sse2.cpp +++ b/src/gui/image/qimage_sse2.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qimage_ssse3.cpp b/src/gui/image/qimage_ssse3.cpp index fcdd4e5eb2..95cf694d2a 100644 --- a/src/gui/image/qimage_ssse3.cpp +++ b/src/gui/image/qimage_ssse3.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qimageiohandler.cpp b/src/gui/image/qimageiohandler.cpp index 80e8fec9d0..d9691563b1 100644 --- a/src/gui/image/qimageiohandler.cpp +++ b/src/gui/image/qimageiohandler.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qimageiohandler.h b/src/gui/image/qimageiohandler.h index ace49c9be0..188b4ef1a8 100644 --- a/src/gui/image/qimageiohandler.h +++ b/src/gui/image/qimageiohandler.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qimagepixmapcleanuphooks.cpp b/src/gui/image/qimagepixmapcleanuphooks.cpp index 7901045593..e83897aced 100644 --- a/src/gui/image/qimagepixmapcleanuphooks.cpp +++ b/src/gui/image/qimagepixmapcleanuphooks.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qimagepixmapcleanuphooks_p.h b/src/gui/image/qimagepixmapcleanuphooks_p.h index c98da6110a..11abe173c4 100644 --- a/src/gui/image/qimagepixmapcleanuphooks_p.h +++ b/src/gui/image/qimagepixmapcleanuphooks_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qimagereader.cpp b/src/gui/image/qimagereader.cpp index 4bf4b08349..b6345191d6 100644 --- a/src/gui/image/qimagereader.cpp +++ b/src/gui/image/qimagereader.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qimagereader.h b/src/gui/image/qimagereader.h index b85ef2b61d..f132991d92 100644 --- a/src/gui/image/qimagereader.h +++ b/src/gui/image/qimagereader.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qimagewriter.cpp b/src/gui/image/qimagewriter.cpp index 82ae64593a..b7d57fa4d3 100644 --- a/src/gui/image/qimagewriter.cpp +++ b/src/gui/image/qimagewriter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qimagewriter.h b/src/gui/image/qimagewriter.h index cc7fdd2871..5aac7e8599 100644 --- a/src/gui/image/qimagewriter.h +++ b/src/gui/image/qimagewriter.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qjpeghandler.cpp b/src/gui/image/qjpeghandler.cpp index 673a6d63d9..f0f9368e22 100644 --- a/src/gui/image/qjpeghandler.cpp +++ b/src/gui/image/qjpeghandler.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qjpeghandler_p.h b/src/gui/image/qjpeghandler_p.h index c573b4944e..7827804959 100644 --- a/src/gui/image/qjpeghandler_p.h +++ b/src/gui/image/qjpeghandler_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qmnghandler.cpp b/src/gui/image/qmnghandler.cpp index 179fff8e93..6a6ee8d2cf 100644 --- a/src/gui/image/qmnghandler.cpp +++ b/src/gui/image/qmnghandler.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qmnghandler_p.h b/src/gui/image/qmnghandler_p.h index f217f0da7f..42b4fd06a8 100644 --- a/src/gui/image/qmnghandler_p.h +++ b/src/gui/image/qmnghandler_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qmovie.cpp b/src/gui/image/qmovie.cpp index 3447c26397..0be6833a87 100644 --- a/src/gui/image/qmovie.cpp +++ b/src/gui/image/qmovie.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qmovie.h b/src/gui/image/qmovie.h index d1c0900ff8..eb2b81d0b5 100644 --- a/src/gui/image/qmovie.h +++ b/src/gui/image/qmovie.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qnativeimage.cpp b/src/gui/image/qnativeimage.cpp index 30c1c0621e..776a17857e 100644 --- a/src/gui/image/qnativeimage.cpp +++ b/src/gui/image/qnativeimage.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qnativeimage_p.h b/src/gui/image/qnativeimage_p.h index 433460b463..0d8834cad3 100644 --- a/src/gui/image/qnativeimage_p.h +++ b/src/gui/image/qnativeimage_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qpaintengine_pic.cpp b/src/gui/image/qpaintengine_pic.cpp index ec3a4a050a..cf9ecc17da 100644 --- a/src/gui/image/qpaintengine_pic.cpp +++ b/src/gui/image/qpaintengine_pic.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qpaintengine_pic_p.h b/src/gui/image/qpaintengine_pic_p.h index 4307e3ad69..830867d89d 100644 --- a/src/gui/image/qpaintengine_pic_p.h +++ b/src/gui/image/qpaintengine_pic_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qpicture.cpp b/src/gui/image/qpicture.cpp index 2cddb9af5f..1ca34df356 100644 --- a/src/gui/image/qpicture.cpp +++ b/src/gui/image/qpicture.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qpicture.h b/src/gui/image/qpicture.h index ab25723fba..e408d65cbc 100644 --- a/src/gui/image/qpicture.h +++ b/src/gui/image/qpicture.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qpicture_p.h b/src/gui/image/qpicture_p.h index 097ba72e60..8c68d19558 100644 --- a/src/gui/image/qpicture_p.h +++ b/src/gui/image/qpicture_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qpictureformatplugin.cpp b/src/gui/image/qpictureformatplugin.cpp index 175406e661..558d4febce 100644 --- a/src/gui/image/qpictureformatplugin.cpp +++ b/src/gui/image/qpictureformatplugin.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qpictureformatplugin.h b/src/gui/image/qpictureformatplugin.h index b030c05913..9fd79c001d 100644 --- a/src/gui/image/qpictureformatplugin.h +++ b/src/gui/image/qpictureformatplugin.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qpixmap.cpp b/src/gui/image/qpixmap.cpp index 2a2bd5d6fa..cc7171a598 100644 --- a/src/gui/image/qpixmap.cpp +++ b/src/gui/image/qpixmap.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qpixmap.h b/src/gui/image/qpixmap.h index ea73119538..dfb729a77d 100644 --- a/src/gui/image/qpixmap.h +++ b/src/gui/image/qpixmap.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qpixmap_blitter.cpp b/src/gui/image/qpixmap_blitter.cpp index 2a47a891c7..041c11af3a 100644 --- a/src/gui/image/qpixmap_blitter.cpp +++ b/src/gui/image/qpixmap_blitter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qpixmap_blitter_p.h b/src/gui/image/qpixmap_blitter_p.h index 50ac16889a..42d649642f 100644 --- a/src/gui/image/qpixmap_blitter_p.h +++ b/src/gui/image/qpixmap_blitter_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qpixmap_raster.cpp b/src/gui/image/qpixmap_raster.cpp index 887074c7b7..424572ebd4 100644 --- a/src/gui/image/qpixmap_raster.cpp +++ b/src/gui/image/qpixmap_raster.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qpixmap_raster_p.h b/src/gui/image/qpixmap_raster_p.h index 91ed4cfdc5..de4d0e6f17 100644 --- a/src/gui/image/qpixmap_raster_p.h +++ b/src/gui/image/qpixmap_raster_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qpixmap_win.cpp b/src/gui/image/qpixmap_win.cpp index f46d503936..5ee7ca9eba 100644 --- a/src/gui/image/qpixmap_win.cpp +++ b/src/gui/image/qpixmap_win.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qpixmapcache.cpp b/src/gui/image/qpixmapcache.cpp index 94f38347c1..0f874bee6c 100644 --- a/src/gui/image/qpixmapcache.cpp +++ b/src/gui/image/qpixmapcache.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qpixmapcache.h b/src/gui/image/qpixmapcache.h index e5c20c8e78..81f9f4b028 100644 --- a/src/gui/image/qpixmapcache.h +++ b/src/gui/image/qpixmapcache.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qpixmapcache_p.h b/src/gui/image/qpixmapcache_p.h index 7b96f5a2cf..2f609a8471 100644 --- a/src/gui/image/qpixmapcache_p.h +++ b/src/gui/image/qpixmapcache_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qplatformpixmap.cpp b/src/gui/image/qplatformpixmap.cpp index e1bf944d9b..30f1f4819b 100644 --- a/src/gui/image/qplatformpixmap.cpp +++ b/src/gui/image/qplatformpixmap.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qplatformpixmap_qpa.h b/src/gui/image/qplatformpixmap_qpa.h index ad0a8dc69e..13c3bc2fe8 100644 --- a/src/gui/image/qplatformpixmap_qpa.h +++ b/src/gui/image/qplatformpixmap_qpa.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qpnghandler.cpp b/src/gui/image/qpnghandler.cpp index 1714442eb6..a935ea3a28 100644 --- a/src/gui/image/qpnghandler.cpp +++ b/src/gui/image/qpnghandler.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qpnghandler_p.h b/src/gui/image/qpnghandler_p.h index 1ee22d73c9..8f17bd18a4 100644 --- a/src/gui/image/qpnghandler_p.h +++ b/src/gui/image/qpnghandler_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qppmhandler.cpp b/src/gui/image/qppmhandler.cpp index e4dbde8ece..b08f97a3ca 100644 --- a/src/gui/image/qppmhandler.cpp +++ b/src/gui/image/qppmhandler.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qppmhandler_p.h b/src/gui/image/qppmhandler_p.h index a1cd9594e9..43e9b09f70 100644 --- a/src/gui/image/qppmhandler_p.h +++ b/src/gui/image/qppmhandler_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qtiffhandler.cpp b/src/gui/image/qtiffhandler.cpp index 4dc9775d46..587e1e1867 100644 --- a/src/gui/image/qtiffhandler.cpp +++ b/src/gui/image/qtiffhandler.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qtiffhandler_p.h b/src/gui/image/qtiffhandler_p.h index 4cbcfacaec..16e68b0ad6 100644 --- a/src/gui/image/qtiffhandler_p.h +++ b/src/gui/image/qtiffhandler_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qvolatileimage.cpp b/src/gui/image/qvolatileimage.cpp index 8fd3620b4b..e675e4ca67 100644 --- a/src/gui/image/qvolatileimage.cpp +++ b/src/gui/image/qvolatileimage.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qvolatileimage_p.h b/src/gui/image/qvolatileimage_p.h index 91f8ce3598..8f1664c429 100644 --- a/src/gui/image/qvolatileimage_p.h +++ b/src/gui/image/qvolatileimage_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qvolatileimagedata.cpp b/src/gui/image/qvolatileimagedata.cpp index a2a7f71697..32f265e9d9 100644 --- a/src/gui/image/qvolatileimagedata.cpp +++ b/src/gui/image/qvolatileimagedata.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qvolatileimagedata_p.h b/src/gui/image/qvolatileimagedata_p.h index 9f817874a4..2890530aaa 100644 --- a/src/gui/image/qvolatileimagedata_p.h +++ b/src/gui/image/qvolatileimagedata_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qvolatileimagedata_symbian.cpp b/src/gui/image/qvolatileimagedata_symbian.cpp index 6984722c0f..f438d96e68 100644 --- a/src/gui/image/qvolatileimagedata_symbian.cpp +++ b/src/gui/image/qvolatileimagedata_symbian.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qxbmhandler.cpp b/src/gui/image/qxbmhandler.cpp index 04756ac351..dda57239cc 100644 --- a/src/gui/image/qxbmhandler.cpp +++ b/src/gui/image/qxbmhandler.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qxbmhandler_p.h b/src/gui/image/qxbmhandler_p.h index 8fc6bda3f9..13ab343f8b 100644 --- a/src/gui/image/qxbmhandler_p.h +++ b/src/gui/image/qxbmhandler_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qxpmhandler.cpp b/src/gui/image/qxpmhandler.cpp index a3779fc041..48047d2d55 100644 --- a/src/gui/image/qxpmhandler.cpp +++ b/src/gui/image/qxpmhandler.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/image/qxpmhandler_p.h b/src/gui/image/qxpmhandler_p.h index 35cf142db5..092d9bb3f1 100644 --- a/src/gui/image/qxpmhandler_p.h +++ b/src/gui/image/qxpmhandler_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qclipboard.cpp b/src/gui/kernel/qclipboard.cpp index 970d365af8..341b042328 100644 --- a/src/gui/kernel/qclipboard.cpp +++ b/src/gui/kernel/qclipboard.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qclipboard.h b/src/gui/kernel/qclipboard.h index 6902a1362b..b909889815 100644 --- a/src/gui/kernel/qclipboard.h +++ b/src/gui/kernel/qclipboard.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qcursor.cpp b/src/gui/kernel/qcursor.cpp index faa9500f9f..e2fc1e0c99 100644 --- a/src/gui/kernel/qcursor.cpp +++ b/src/gui/kernel/qcursor.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qcursor.h b/src/gui/kernel/qcursor.h index 584aff42d3..121bd2c2e6 100644 --- a/src/gui/kernel/qcursor.h +++ b/src/gui/kernel/qcursor.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qcursor_p.h b/src/gui/kernel/qcursor_p.h index 71a07cca49..a904260388 100644 --- a/src/gui/kernel/qcursor_p.h +++ b/src/gui/kernel/qcursor_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qdnd.cpp b/src/gui/kernel/qdnd.cpp index 4edcfa886f..4010fd73ff 100644 --- a/src/gui/kernel/qdnd.cpp +++ b/src/gui/kernel/qdnd.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qdnd_p.h b/src/gui/kernel/qdnd_p.h index 548e3d2e77..47018edde8 100644 --- a/src/gui/kernel/qdnd_p.h +++ b/src/gui/kernel/qdnd_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qdrag.cpp b/src/gui/kernel/qdrag.cpp index 399c467643..284b1e5c1b 100644 --- a/src/gui/kernel/qdrag.cpp +++ b/src/gui/kernel/qdrag.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qdrag.h b/src/gui/kernel/qdrag.h index b590c4f015..ccadd8f1cc 100644 --- a/src/gui/kernel/qdrag.h +++ b/src/gui/kernel/qdrag.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qevent.cpp b/src/gui/kernel/qevent.cpp index 7bcc2b407e..e0ce334321 100644 --- a/src/gui/kernel/qevent.cpp +++ b/src/gui/kernel/qevent.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qevent.h b/src/gui/kernel/qevent.h index c8155026cc..5d54d39378 100644 --- a/src/gui/kernel/qevent.h +++ b/src/gui/kernel/qevent.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qevent_p.h b/src/gui/kernel/qevent_p.h index 1eee92d176..6dff55ca14 100644 --- a/src/gui/kernel/qevent_p.h +++ b/src/gui/kernel/qevent_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qguiapplication.cpp b/src/gui/kernel/qguiapplication.cpp index c3dddddf3b..aaefb2c31b 100644 --- a/src/gui/kernel/qguiapplication.cpp +++ b/src/gui/kernel/qguiapplication.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qguiapplication.h b/src/gui/kernel/qguiapplication.h index 1afbf17cf7..c66cb7d22d 100644 --- a/src/gui/kernel/qguiapplication.h +++ b/src/gui/kernel/qguiapplication.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qguiapplication_p.h b/src/gui/kernel/qguiapplication_p.h index 2d13127487..b1269178d0 100644 --- a/src/gui/kernel/qguiapplication_p.h +++ b/src/gui/kernel/qguiapplication_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qguivariant.cpp b/src/gui/kernel/qguivariant.cpp index dfd052df4f..8618c04a32 100644 --- a/src/gui/kernel/qguivariant.cpp +++ b/src/gui/kernel/qguivariant.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qinputpanel.cpp b/src/gui/kernel/qinputpanel.cpp index d6d58bf1c5..1459a8e831 100644 --- a/src/gui/kernel/qinputpanel.cpp +++ b/src/gui/kernel/qinputpanel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qinputpanel.h b/src/gui/kernel/qinputpanel.h index 4edc902104..66f7f3be5a 100644 --- a/src/gui/kernel/qinputpanel.h +++ b/src/gui/kernel/qinputpanel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qinputpanel_p.h b/src/gui/kernel/qinputpanel_p.h index 6fcf2d7243..f30c8a1b80 100644 --- a/src/gui/kernel/qinputpanel_p.h +++ b/src/gui/kernel/qinputpanel_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qkeymapper.cpp b/src/gui/kernel/qkeymapper.cpp index 4ee7d66dd8..a411ee5904 100644 --- a/src/gui/kernel/qkeymapper.cpp +++ b/src/gui/kernel/qkeymapper.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qkeymapper_p.h b/src/gui/kernel/qkeymapper_p.h index 1fada6f59a..bf19f1d80a 100644 --- a/src/gui/kernel/qkeymapper_p.h +++ b/src/gui/kernel/qkeymapper_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qkeymapper_qpa.cpp b/src/gui/kernel/qkeymapper_qpa.cpp index 13c6d6c28b..fd04ff234c 100644 --- a/src/gui/kernel/qkeymapper_qpa.cpp +++ b/src/gui/kernel/qkeymapper_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qkeysequence.cpp b/src/gui/kernel/qkeysequence.cpp index c17d41ba6f..4f6eba2f88 100644 --- a/src/gui/kernel/qkeysequence.cpp +++ b/src/gui/kernel/qkeysequence.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qkeysequence.h b/src/gui/kernel/qkeysequence.h index 31cec17fb1..1127e8afca 100644 --- a/src/gui/kernel/qkeysequence.h +++ b/src/gui/kernel/qkeysequence.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qkeysequence_p.h b/src/gui/kernel/qkeysequence_p.h index 7fa98dd5eb..57f6e1927f 100644 --- a/src/gui/kernel/qkeysequence_p.h +++ b/src/gui/kernel/qkeysequence_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qopenglcontext.cpp b/src/gui/kernel/qopenglcontext.cpp index 29a9e92e5c..c8321c8701 100644 --- a/src/gui/kernel/qopenglcontext.cpp +++ b/src/gui/kernel/qopenglcontext.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qopenglcontext.h b/src/gui/kernel/qopenglcontext.h index 0d02cfe613..3a4c5e4d9b 100644 --- a/src/gui/kernel/qopenglcontext.h +++ b/src/gui/kernel/qopenglcontext.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qopenglcontext_p.h b/src/gui/kernel/qopenglcontext_p.h index aff1042c5b..7040b883bf 100644 --- a/src/gui/kernel/qopenglcontext_p.h +++ b/src/gui/kernel/qopenglcontext_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qpalette.cpp b/src/gui/kernel/qpalette.cpp index 893cc5eff6..0e067392c6 100644 --- a/src/gui/kernel/qpalette.cpp +++ b/src/gui/kernel/qpalette.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qpalette.h b/src/gui/kernel/qpalette.h index dd59d121a0..23cecd2cfc 100644 --- a/src/gui/kernel/qpalette.h +++ b/src/gui/kernel/qpalette.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qplatformclipboard_qpa.cpp b/src/gui/kernel/qplatformclipboard_qpa.cpp index c7c779e4eb..4d8d65de0a 100644 --- a/src/gui/kernel/qplatformclipboard_qpa.cpp +++ b/src/gui/kernel/qplatformclipboard_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qplatformclipboard_qpa.h b/src/gui/kernel/qplatformclipboard_qpa.h index fc0505b87e..643733fdf7 100644 --- a/src/gui/kernel/qplatformclipboard_qpa.h +++ b/src/gui/kernel/qplatformclipboard_qpa.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qplatformcursor_qpa.cpp b/src/gui/kernel/qplatformcursor_qpa.cpp index 752de18969..a3824381d3 100644 --- a/src/gui/kernel/qplatformcursor_qpa.cpp +++ b/src/gui/kernel/qplatformcursor_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qplatformdrag_qpa.h b/src/gui/kernel/qplatformdrag_qpa.h index 0b65174f71..fb71f29de9 100644 --- a/src/gui/kernel/qplatformdrag_qpa.h +++ b/src/gui/kernel/qplatformdrag_qpa.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qplatforminputcontext_qpa.cpp b/src/gui/kernel/qplatforminputcontext_qpa.cpp index bc0bcf8f4f..02b51712bc 100644 --- a/src/gui/kernel/qplatforminputcontext_qpa.cpp +++ b/src/gui/kernel/qplatforminputcontext_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qplatforminputcontext_qpa.h b/src/gui/kernel/qplatforminputcontext_qpa.h index 76aa122720..289b3316bd 100644 --- a/src/gui/kernel/qplatforminputcontext_qpa.h +++ b/src/gui/kernel/qplatforminputcontext_qpa.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qplatformintegration_qpa.cpp b/src/gui/kernel/qplatformintegration_qpa.cpp index 956180c728..39664f61c8 100644 --- a/src/gui/kernel/qplatformintegration_qpa.cpp +++ b/src/gui/kernel/qplatformintegration_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qplatformintegration_qpa.h b/src/gui/kernel/qplatformintegration_qpa.h index d5eb14bc50..d6e3be85e1 100644 --- a/src/gui/kernel/qplatformintegration_qpa.h +++ b/src/gui/kernel/qplatformintegration_qpa.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qplatformintegrationfactory_qpa.cpp b/src/gui/kernel/qplatformintegrationfactory_qpa.cpp index c40494c408..7f2260b5f6 100644 --- a/src/gui/kernel/qplatformintegrationfactory_qpa.cpp +++ b/src/gui/kernel/qplatformintegrationfactory_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qplatformintegrationfactory_qpa_p.h b/src/gui/kernel/qplatformintegrationfactory_qpa_p.h index 5ffdf85425..189b352139 100644 --- a/src/gui/kernel/qplatformintegrationfactory_qpa_p.h +++ b/src/gui/kernel/qplatformintegrationfactory_qpa_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qplatformintegrationplugin_qpa.cpp b/src/gui/kernel/qplatformintegrationplugin_qpa.cpp index 0181b98ad7..a57b980ea3 100644 --- a/src/gui/kernel/qplatformintegrationplugin_qpa.cpp +++ b/src/gui/kernel/qplatformintegrationplugin_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qplatformintegrationplugin_qpa.h b/src/gui/kernel/qplatformintegrationplugin_qpa.h index b397f56d7c..f53d66d1c8 100644 --- a/src/gui/kernel/qplatformintegrationplugin_qpa.h +++ b/src/gui/kernel/qplatformintegrationplugin_qpa.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qplatformnativeinterface_qpa.cpp b/src/gui/kernel/qplatformnativeinterface_qpa.cpp index 5c1f8458db..f9ddd1f72a 100644 --- a/src/gui/kernel/qplatformnativeinterface_qpa.cpp +++ b/src/gui/kernel/qplatformnativeinterface_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qplatformnativeinterface_qpa.h b/src/gui/kernel/qplatformnativeinterface_qpa.h index bfcf78813b..47e2f82810 100644 --- a/src/gui/kernel/qplatformnativeinterface_qpa.h +++ b/src/gui/kernel/qplatformnativeinterface_qpa.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qplatformopenglcontext_qpa.cpp b/src/gui/kernel/qplatformopenglcontext_qpa.cpp index e764419825..7c5e8245df 100644 --- a/src/gui/kernel/qplatformopenglcontext_qpa.cpp +++ b/src/gui/kernel/qplatformopenglcontext_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qplatformopenglcontext_qpa.h b/src/gui/kernel/qplatformopenglcontext_qpa.h index 1b3bfc9a34..ac5cf969d9 100644 --- a/src/gui/kernel/qplatformopenglcontext_qpa.h +++ b/src/gui/kernel/qplatformopenglcontext_qpa.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qplatformscreen_qpa.cpp b/src/gui/kernel/qplatformscreen_qpa.cpp index 3fdb809137..7b9e73fbb3 100644 --- a/src/gui/kernel/qplatformscreen_qpa.cpp +++ b/src/gui/kernel/qplatformscreen_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qplatformscreen_qpa.h b/src/gui/kernel/qplatformscreen_qpa.h index 64115a6cd5..492c5c9ebc 100644 --- a/src/gui/kernel/qplatformscreen_qpa.h +++ b/src/gui/kernel/qplatformscreen_qpa.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qplatformsurface_qpa.cpp b/src/gui/kernel/qplatformsurface_qpa.cpp index dcfd201ea3..3347f7984f 100644 --- a/src/gui/kernel/qplatformsurface_qpa.cpp +++ b/src/gui/kernel/qplatformsurface_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qplatformsurface_qpa.h b/src/gui/kernel/qplatformsurface_qpa.h index 76b564de25..7ceb39f049 100644 --- a/src/gui/kernel/qplatformsurface_qpa.h +++ b/src/gui/kernel/qplatformsurface_qpa.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qplatformtheme_qpa.cpp b/src/gui/kernel/qplatformtheme_qpa.cpp index c887d78edb..b4a177f915 100644 --- a/src/gui/kernel/qplatformtheme_qpa.cpp +++ b/src/gui/kernel/qplatformtheme_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qplatformtheme_qpa.h b/src/gui/kernel/qplatformtheme_qpa.h index 2090ce37e1..06a81fda4a 100644 --- a/src/gui/kernel/qplatformtheme_qpa.h +++ b/src/gui/kernel/qplatformtheme_qpa.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qplatformthemefactory_qpa.cpp b/src/gui/kernel/qplatformthemefactory_qpa.cpp index 87f96762c2..c278f41411 100644 --- a/src/gui/kernel/qplatformthemefactory_qpa.cpp +++ b/src/gui/kernel/qplatformthemefactory_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qplatformthemefactory_qpa_p.h b/src/gui/kernel/qplatformthemefactory_qpa_p.h index b65e6e197a..71987aa723 100644 --- a/src/gui/kernel/qplatformthemefactory_qpa_p.h +++ b/src/gui/kernel/qplatformthemefactory_qpa_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qplatformthemeplugin_qpa.cpp b/src/gui/kernel/qplatformthemeplugin_qpa.cpp index e17e36fc3d..c51d4e9fc5 100644 --- a/src/gui/kernel/qplatformthemeplugin_qpa.cpp +++ b/src/gui/kernel/qplatformthemeplugin_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qplatformthemeplugin_qpa.h b/src/gui/kernel/qplatformthemeplugin_qpa.h index 0df9a8842d..89348deae0 100644 --- a/src/gui/kernel/qplatformthemeplugin_qpa.h +++ b/src/gui/kernel/qplatformthemeplugin_qpa.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qplatformwindow_qpa.cpp b/src/gui/kernel/qplatformwindow_qpa.cpp index 90fdec69f0..d69cb0e64e 100644 --- a/src/gui/kernel/qplatformwindow_qpa.cpp +++ b/src/gui/kernel/qplatformwindow_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qplatformwindow_qpa.h b/src/gui/kernel/qplatformwindow_qpa.h index c6b5bb80ea..7605a5a4aa 100644 --- a/src/gui/kernel/qplatformwindow_qpa.h +++ b/src/gui/kernel/qplatformwindow_qpa.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qscreen.cpp b/src/gui/kernel/qscreen.cpp index 8a35ce6b8f..1089c84af7 100644 --- a/src/gui/kernel/qscreen.cpp +++ b/src/gui/kernel/qscreen.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qscreen.h b/src/gui/kernel/qscreen.h index 6fc97c1799..5a85e28a28 100644 --- a/src/gui/kernel/qscreen.h +++ b/src/gui/kernel/qscreen.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qsessionmanager.h b/src/gui/kernel/qsessionmanager.h index 31a26c1582..89c5cf47b6 100644 --- a/src/gui/kernel/qsessionmanager.h +++ b/src/gui/kernel/qsessionmanager.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qsessionmanager_qpa.cpp b/src/gui/kernel/qsessionmanager_qpa.cpp index 7ade0df3a8..9b6ec26ff4 100644 --- a/src/gui/kernel/qsessionmanager_qpa.cpp +++ b/src/gui/kernel/qsessionmanager_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qshortcutmap.cpp b/src/gui/kernel/qshortcutmap.cpp index 64b0aa1741..2bacac9598 100644 --- a/src/gui/kernel/qshortcutmap.cpp +++ b/src/gui/kernel/qshortcutmap.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qshortcutmap_p.h b/src/gui/kernel/qshortcutmap_p.h index 28c37f9a2e..e447507b87 100644 --- a/src/gui/kernel/qshortcutmap_p.h +++ b/src/gui/kernel/qshortcutmap_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qstylehints.cpp b/src/gui/kernel/qstylehints.cpp index 7585d23558..1fa395c285 100644 --- a/src/gui/kernel/qstylehints.cpp +++ b/src/gui/kernel/qstylehints.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qstylehints.h b/src/gui/kernel/qstylehints.h index bcc9b589e2..c61ae9aca2 100644 --- a/src/gui/kernel/qstylehints.h +++ b/src/gui/kernel/qstylehints.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qsurface.cpp b/src/gui/kernel/qsurface.cpp index 871b765bfd..bfdb772cfb 100644 --- a/src/gui/kernel/qsurface.cpp +++ b/src/gui/kernel/qsurface.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qsurface.h b/src/gui/kernel/qsurface.h index a6c8745a7a..fba1690af4 100644 --- a/src/gui/kernel/qsurface.h +++ b/src/gui/kernel/qsurface.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qsurfaceformat.cpp b/src/gui/kernel/qsurfaceformat.cpp index b200cdb113..39b2d491a3 100644 --- a/src/gui/kernel/qsurfaceformat.cpp +++ b/src/gui/kernel/qsurfaceformat.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qsurfaceformat.h b/src/gui/kernel/qsurfaceformat.h index cdbd50740b..3d3bfeb30b 100644 --- a/src/gui/kernel/qsurfaceformat.h +++ b/src/gui/kernel/qsurfaceformat.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qt_gui_pch.h b/src/gui/kernel/qt_gui_pch.h index 3cb527d0b1..98a516f54e 100644 --- a/src/gui/kernel/qt_gui_pch.h +++ b/src/gui/kernel/qt_gui_pch.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qtouchdevice.cpp b/src/gui/kernel/qtouchdevice.cpp index abf1acc310..b8d4d01655 100644 --- a/src/gui/kernel/qtouchdevice.cpp +++ b/src/gui/kernel/qtouchdevice.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qtouchdevice.h b/src/gui/kernel/qtouchdevice.h index 496bb7a522..6efa7814c9 100644 --- a/src/gui/kernel/qtouchdevice.h +++ b/src/gui/kernel/qtouchdevice.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qtouchdevice_p.h b/src/gui/kernel/qtouchdevice_p.h index f782d1585d..c37e4a8bf5 100644 --- a/src/gui/kernel/qtouchdevice_p.h +++ b/src/gui/kernel/qtouchdevice_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qwindow.cpp b/src/gui/kernel/qwindow.cpp index d4f5e1dcf2..2e724e1b3c 100644 --- a/src/gui/kernel/qwindow.cpp +++ b/src/gui/kernel/qwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qwindow.h b/src/gui/kernel/qwindow.h index 2a50248c8f..6f9e4855b1 100644 --- a/src/gui/kernel/qwindow.h +++ b/src/gui/kernel/qwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qwindow_p.h b/src/gui/kernel/qwindow_p.h index ee91b61cf1..d3b6868aa5 100644 --- a/src/gui/kernel/qwindow_p.h +++ b/src/gui/kernel/qwindow_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qwindowdefs.h b/src/gui/kernel/qwindowdefs.h index b77ec0b2f3..3366606036 100644 --- a/src/gui/kernel/qwindowdefs.h +++ b/src/gui/kernel/qwindowdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qwindowdefs_win.h b/src/gui/kernel/qwindowdefs_win.h index 2bf9c8e672..2db1a4649f 100644 --- a/src/gui/kernel/qwindowdefs_win.h +++ b/src/gui/kernel/qwindowdefs_win.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qwindowsysteminterface_qpa.cpp b/src/gui/kernel/qwindowsysteminterface_qpa.cpp index e6ebadc05a..8ab4137a1b 100644 --- a/src/gui/kernel/qwindowsysteminterface_qpa.cpp +++ b/src/gui/kernel/qwindowsysteminterface_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/kernel/qwindowsysteminterface_qpa.h b/src/gui/kernel/qwindowsysteminterface_qpa.h index a17c096982..d860916e9d 100644 --- a/src/gui/kernel/qwindowsysteminterface_qpa.h +++ b/src/gui/kernel/qwindowsysteminterface_qpa.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/math3d/qgenericmatrix.cpp b/src/gui/math3d/qgenericmatrix.cpp index c1e1d92935..88682702de 100644 --- a/src/gui/math3d/qgenericmatrix.cpp +++ b/src/gui/math3d/qgenericmatrix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/math3d/qgenericmatrix.h b/src/gui/math3d/qgenericmatrix.h index a90d32a2b6..c992415426 100644 --- a/src/gui/math3d/qgenericmatrix.h +++ b/src/gui/math3d/qgenericmatrix.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/math3d/qmatrix4x4.cpp b/src/gui/math3d/qmatrix4x4.cpp index 1797564a98..b6b60e7072 100644 --- a/src/gui/math3d/qmatrix4x4.cpp +++ b/src/gui/math3d/qmatrix4x4.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/math3d/qmatrix4x4.h b/src/gui/math3d/qmatrix4x4.h index 2c98dd03e3..98f967f63c 100644 --- a/src/gui/math3d/qmatrix4x4.h +++ b/src/gui/math3d/qmatrix4x4.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/math3d/qquaternion.cpp b/src/gui/math3d/qquaternion.cpp index ef1b545e10..53e01323d9 100644 --- a/src/gui/math3d/qquaternion.cpp +++ b/src/gui/math3d/qquaternion.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/math3d/qquaternion.h b/src/gui/math3d/qquaternion.h index 802de8b3b7..78b2d91d13 100644 --- a/src/gui/math3d/qquaternion.h +++ b/src/gui/math3d/qquaternion.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/math3d/qvector2d.cpp b/src/gui/math3d/qvector2d.cpp index cd94007aad..a1c7ac048f 100644 --- a/src/gui/math3d/qvector2d.cpp +++ b/src/gui/math3d/qvector2d.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/math3d/qvector2d.h b/src/gui/math3d/qvector2d.h index f771ce34d0..df435bcf49 100644 --- a/src/gui/math3d/qvector2d.h +++ b/src/gui/math3d/qvector2d.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/math3d/qvector3d.cpp b/src/gui/math3d/qvector3d.cpp index 4e8a62fea3..096d14223c 100644 --- a/src/gui/math3d/qvector3d.cpp +++ b/src/gui/math3d/qvector3d.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/math3d/qvector3d.h b/src/gui/math3d/qvector3d.h index 17785a6c7c..55c0e36ca2 100644 --- a/src/gui/math3d/qvector3d.h +++ b/src/gui/math3d/qvector3d.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/math3d/qvector4d.cpp b/src/gui/math3d/qvector4d.cpp index 41c7b296be..ce3d410b39 100644 --- a/src/gui/math3d/qvector4d.cpp +++ b/src/gui/math3d/qvector4d.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/math3d/qvector4d.h b/src/gui/math3d/qvector4d.h index 64b8079b76..ceff21163f 100644 --- a/src/gui/math3d/qvector4d.h +++ b/src/gui/math3d/qvector4d.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopengl.cpp b/src/gui/opengl/qopengl.cpp index 3233fcfa5b..246d4dfa24 100644 --- a/src/gui/opengl/qopengl.cpp +++ b/src/gui/opengl/qopengl.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopengl.h b/src/gui/opengl/qopengl.h index cc64804efd..a3ec59cef1 100644 --- a/src/gui/opengl/qopengl.h +++ b/src/gui/opengl/qopengl.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopengl2pexvertexarray.cpp b/src/gui/opengl/qopengl2pexvertexarray.cpp index ec26fdbf5b..1db2223667 100644 --- a/src/gui/opengl/qopengl2pexvertexarray.cpp +++ b/src/gui/opengl/qopengl2pexvertexarray.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopengl2pexvertexarray_p.h b/src/gui/opengl/qopengl2pexvertexarray_p.h index 5ad4f7a237..779fa5a545 100644 --- a/src/gui/opengl/qopengl2pexvertexarray_p.h +++ b/src/gui/opengl/qopengl2pexvertexarray_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopengl_p.h b/src/gui/opengl/qopengl_p.h index b09f9447db..5323604ce5 100644 --- a/src/gui/opengl/qopengl_p.h +++ b/src/gui/opengl/qopengl_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopenglbuffer.cpp b/src/gui/opengl/qopenglbuffer.cpp index bdd38018fa..6bf4fedc8e 100644 --- a/src/gui/opengl/qopenglbuffer.cpp +++ b/src/gui/opengl/qopenglbuffer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopenglbuffer.h b/src/gui/opengl/qopenglbuffer.h index 52a2c4d640..83ad5cda51 100644 --- a/src/gui/opengl/qopenglbuffer.h +++ b/src/gui/opengl/qopenglbuffer.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopenglcustomshaderstage.cpp b/src/gui/opengl/qopenglcustomshaderstage.cpp index 6cedf66df1..25a07b2a4c 100644 --- a/src/gui/opengl/qopenglcustomshaderstage.cpp +++ b/src/gui/opengl/qopenglcustomshaderstage.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopenglcustomshaderstage_p.h b/src/gui/opengl/qopenglcustomshaderstage_p.h index de459c0050..35c59a9e9b 100644 --- a/src/gui/opengl/qopenglcustomshaderstage_p.h +++ b/src/gui/opengl/qopenglcustomshaderstage_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopenglengineshadermanager.cpp b/src/gui/opengl/qopenglengineshadermanager.cpp index aaca6ad89c..da9952a905 100644 --- a/src/gui/opengl/qopenglengineshadermanager.cpp +++ b/src/gui/opengl/qopenglengineshadermanager.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopenglengineshadermanager_p.h b/src/gui/opengl/qopenglengineshadermanager_p.h index 1dcc4fe7a7..39cd2e4d70 100644 --- a/src/gui/opengl/qopenglengineshadermanager_p.h +++ b/src/gui/opengl/qopenglengineshadermanager_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopenglengineshadersource_p.h b/src/gui/opengl/qopenglengineshadersource_p.h index cb85212308..65e3fc54a5 100644 --- a/src/gui/opengl/qopenglengineshadersource_p.h +++ b/src/gui/opengl/qopenglengineshadersource_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopenglextensions_p.h b/src/gui/opengl/qopenglextensions_p.h index 65d92e3a65..b66af217a6 100644 --- a/src/gui/opengl/qopenglextensions_p.h +++ b/src/gui/opengl/qopenglextensions_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopenglframebufferobject.cpp b/src/gui/opengl/qopenglframebufferobject.cpp index bd2f1fd5dc..261a6df27d 100644 --- a/src/gui/opengl/qopenglframebufferobject.cpp +++ b/src/gui/opengl/qopenglframebufferobject.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopenglframebufferobject.h b/src/gui/opengl/qopenglframebufferobject.h index 8a57784f4f..acce7d7391 100644 --- a/src/gui/opengl/qopenglframebufferobject.h +++ b/src/gui/opengl/qopenglframebufferobject.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopenglframebufferobject_p.h b/src/gui/opengl/qopenglframebufferobject_p.h index 93a8bbf32f..aeaa2a0e7d 100644 --- a/src/gui/opengl/qopenglframebufferobject_p.h +++ b/src/gui/opengl/qopenglframebufferobject_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopenglfunctions.cpp b/src/gui/opengl/qopenglfunctions.cpp index 24cf858a7c..a34dfc193c 100644 --- a/src/gui/opengl/qopenglfunctions.cpp +++ b/src/gui/opengl/qopenglfunctions.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopenglfunctions.h b/src/gui/opengl/qopenglfunctions.h index 7d9e34740e..2f4b5b18cb 100644 --- a/src/gui/opengl/qopenglfunctions.h +++ b/src/gui/opengl/qopenglfunctions.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopenglgradientcache.cpp b/src/gui/opengl/qopenglgradientcache.cpp index f8d61cd620..dde5eaf93e 100644 --- a/src/gui/opengl/qopenglgradientcache.cpp +++ b/src/gui/opengl/qopenglgradientcache.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopenglgradientcache_p.h b/src/gui/opengl/qopenglgradientcache_p.h index 53abf221d2..055798fcd8 100644 --- a/src/gui/opengl/qopenglgradientcache_p.h +++ b/src/gui/opengl/qopenglgradientcache_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopenglpaintdevice.cpp b/src/gui/opengl/qopenglpaintdevice.cpp index 4e5c2703dc..35ef609529 100644 --- a/src/gui/opengl/qopenglpaintdevice.cpp +++ b/src/gui/opengl/qopenglpaintdevice.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopenglpaintdevice.h b/src/gui/opengl/qopenglpaintdevice.h index 9edc347b32..0a7bb3c9f3 100644 --- a/src/gui/opengl/qopenglpaintdevice.h +++ b/src/gui/opengl/qopenglpaintdevice.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopenglpaintengine.cpp b/src/gui/opengl/qopenglpaintengine.cpp index c1bde757a2..441b3fa5be 100644 --- a/src/gui/opengl/qopenglpaintengine.cpp +++ b/src/gui/opengl/qopenglpaintengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopenglpaintengine_p.h b/src/gui/opengl/qopenglpaintengine_p.h index 1ce04eb5a7..9f125eb616 100644 --- a/src/gui/opengl/qopenglpaintengine_p.h +++ b/src/gui/opengl/qopenglpaintengine_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopenglshadercache_meego_p.h b/src/gui/opengl/qopenglshadercache_meego_p.h index 86a8a861da..02a1c84336 100644 --- a/src/gui/opengl/qopenglshadercache_meego_p.h +++ b/src/gui/opengl/qopenglshadercache_meego_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopenglshadercache_p.h b/src/gui/opengl/qopenglshadercache_p.h index 05a058050c..64435eb1c2 100644 --- a/src/gui/opengl/qopenglshadercache_p.h +++ b/src/gui/opengl/qopenglshadercache_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopenglshaderprogram.cpp b/src/gui/opengl/qopenglshaderprogram.cpp index 70f9b042c7..26b2120610 100644 --- a/src/gui/opengl/qopenglshaderprogram.cpp +++ b/src/gui/opengl/qopenglshaderprogram.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopenglshaderprogram.h b/src/gui/opengl/qopenglshaderprogram.h index 4c123749a2..f6244cd12c 100644 --- a/src/gui/opengl/qopenglshaderprogram.h +++ b/src/gui/opengl/qopenglshaderprogram.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopengltexturecache.cpp b/src/gui/opengl/qopengltexturecache.cpp index 067b7a9e20..4806a9d5ff 100644 --- a/src/gui/opengl/qopengltexturecache.cpp +++ b/src/gui/opengl/qopengltexturecache.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopengltexturecache_p.h b/src/gui/opengl/qopengltexturecache_p.h index 74166cbabc..c6e46dd6cb 100644 --- a/src/gui/opengl/qopengltexturecache_p.h +++ b/src/gui/opengl/qopengltexturecache_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopengltextureglyphcache.cpp b/src/gui/opengl/qopengltextureglyphcache.cpp index 55acdb39b9..9f5ce46854 100644 --- a/src/gui/opengl/qopengltextureglyphcache.cpp +++ b/src/gui/opengl/qopengltextureglyphcache.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopengltextureglyphcache_p.h b/src/gui/opengl/qopengltextureglyphcache_p.h index 97f9ac3c64..5da8d1ce4b 100644 --- a/src/gui/opengl/qopengltextureglyphcache_p.h +++ b/src/gui/opengl/qopengltextureglyphcache_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopengltriangulatingstroker.cpp b/src/gui/opengl/qopengltriangulatingstroker.cpp index 4d1a8f86b2..65ee8753c4 100644 --- a/src/gui/opengl/qopengltriangulatingstroker.cpp +++ b/src/gui/opengl/qopengltriangulatingstroker.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qopengltriangulatingstroker_p.h b/src/gui/opengl/qopengltriangulatingstroker_p.h index abb10957c0..965fce6157 100644 --- a/src/gui/opengl/qopengltriangulatingstroker_p.h +++ b/src/gui/opengl/qopengltriangulatingstroker_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qrbtree_p.h b/src/gui/opengl/qrbtree_p.h index ac464a3fbe..dbcf037193 100644 --- a/src/gui/opengl/qrbtree_p.h +++ b/src/gui/opengl/qrbtree_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qtriangulator.cpp b/src/gui/opengl/qtriangulator.cpp index ae7eb21e72..bf8e54e717 100644 --- a/src/gui/opengl/qtriangulator.cpp +++ b/src/gui/opengl/qtriangulator.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/opengl/qtriangulator_p.h b/src/gui/opengl/qtriangulator_p.h index 8f95d58e23..96dedd5eca 100644 --- a/src/gui/opengl/qtriangulator_p.h +++ b/src/gui/opengl/qtriangulator_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qbackingstore.cpp b/src/gui/painting/qbackingstore.cpp index fa29589508..08f809ed88 100644 --- a/src/gui/painting/qbackingstore.cpp +++ b/src/gui/painting/qbackingstore.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qbackingstore.h b/src/gui/painting/qbackingstore.h index d5ec3b31d3..0172a78d85 100644 --- a/src/gui/painting/qbackingstore.h +++ b/src/gui/painting/qbackingstore.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qbezier.cpp b/src/gui/painting/qbezier.cpp index bdba3f21ef..4305ea8cbc 100644 --- a/src/gui/painting/qbezier.cpp +++ b/src/gui/painting/qbezier.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qbezier_p.h b/src/gui/painting/qbezier_p.h index e8594ffa5a..368ae7e483 100644 --- a/src/gui/painting/qbezier_p.h +++ b/src/gui/painting/qbezier_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qblendfunctions.cpp b/src/gui/painting/qblendfunctions.cpp index fd3a8fce52..40047d8c94 100644 --- a/src/gui/painting/qblendfunctions.cpp +++ b/src/gui/painting/qblendfunctions.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qblendfunctions_p.h b/src/gui/painting/qblendfunctions_p.h index 76e71b9d2f..412be40d67 100644 --- a/src/gui/painting/qblendfunctions_p.h +++ b/src/gui/painting/qblendfunctions_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qblittable.cpp b/src/gui/painting/qblittable.cpp index fe51f7adb0..020eba0235 100644 --- a/src/gui/painting/qblittable.cpp +++ b/src/gui/painting/qblittable.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qblittable_p.h b/src/gui/painting/qblittable_p.h index 248183d2e6..c704c86452 100644 --- a/src/gui/painting/qblittable_p.h +++ b/src/gui/painting/qblittable_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qbrush.cpp b/src/gui/painting/qbrush.cpp index b4aa27db2f..66f0395582 100644 --- a/src/gui/painting/qbrush.cpp +++ b/src/gui/painting/qbrush.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qbrush.h b/src/gui/painting/qbrush.h index daad47cb19..060d11fd79 100644 --- a/src/gui/painting/qbrush.h +++ b/src/gui/painting/qbrush.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qcolor.cpp b/src/gui/painting/qcolor.cpp index df2aa1ffe8..5f15ccbc63 100644 --- a/src/gui/painting/qcolor.cpp +++ b/src/gui/painting/qcolor.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qcolor.h b/src/gui/painting/qcolor.h index 460a43183f..ac525cb068 100644 --- a/src/gui/painting/qcolor.h +++ b/src/gui/painting/qcolor.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qcolor_p.cpp b/src/gui/painting/qcolor_p.cpp index 454fe82cfe..14b984978c 100644 --- a/src/gui/painting/qcolor_p.cpp +++ b/src/gui/painting/qcolor_p.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qcolor_p.h b/src/gui/painting/qcolor_p.h index 8aec184ee2..f1a4d313e3 100644 --- a/src/gui/painting/qcolor_p.h +++ b/src/gui/painting/qcolor_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qcosmeticstroker.cpp b/src/gui/painting/qcosmeticstroker.cpp index eb00ec87d8..c59399c905 100644 --- a/src/gui/painting/qcosmeticstroker.cpp +++ b/src/gui/painting/qcosmeticstroker.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qcosmeticstroker_p.h b/src/gui/painting/qcosmeticstroker_p.h index 53cdf2c0ac..a7742769bd 100644 --- a/src/gui/painting/qcosmeticstroker_p.h +++ b/src/gui/painting/qcosmeticstroker_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qcssutil.cpp b/src/gui/painting/qcssutil.cpp index f670258e46..4758a1362c 100644 --- a/src/gui/painting/qcssutil.cpp +++ b/src/gui/painting/qcssutil.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qcssutil_p.h b/src/gui/painting/qcssutil_p.h index fe5b7057b9..e555788343 100644 --- a/src/gui/painting/qcssutil_p.h +++ b/src/gui/painting/qcssutil_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qdatabuffer_p.h b/src/gui/painting/qdatabuffer_p.h index 8247e4233b..6c0f5d57c6 100644 --- a/src/gui/painting/qdatabuffer_p.h +++ b/src/gui/painting/qdatabuffer_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qdrawhelper.cpp b/src/gui/painting/qdrawhelper.cpp index cf899b986d..26fe6df3d4 100644 --- a/src/gui/painting/qdrawhelper.cpp +++ b/src/gui/painting/qdrawhelper.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qdrawhelper_arm_simd.cpp b/src/gui/painting/qdrawhelper_arm_simd.cpp index 48b67f4020..e1784e049f 100644 --- a/src/gui/painting/qdrawhelper_arm_simd.cpp +++ b/src/gui/painting/qdrawhelper_arm_simd.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qdrawhelper_arm_simd_p.h b/src/gui/painting/qdrawhelper_arm_simd_p.h index a9def32b6c..e920456d45 100644 --- a/src/gui/painting/qdrawhelper_arm_simd_p.h +++ b/src/gui/painting/qdrawhelper_arm_simd_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qdrawhelper_iwmmxt.cpp b/src/gui/painting/qdrawhelper_iwmmxt.cpp index 95266eeceb..59b9f28dcd 100644 --- a/src/gui/painting/qdrawhelper_iwmmxt.cpp +++ b/src/gui/painting/qdrawhelper_iwmmxt.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qdrawhelper_mmx.cpp b/src/gui/painting/qdrawhelper_mmx.cpp index 45cfcd32a0..261cf06a42 100644 --- a/src/gui/painting/qdrawhelper_mmx.cpp +++ b/src/gui/painting/qdrawhelper_mmx.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qdrawhelper_mmx3dnow.cpp b/src/gui/painting/qdrawhelper_mmx3dnow.cpp index 204f061e1a..7bec5ec336 100644 --- a/src/gui/painting/qdrawhelper_mmx3dnow.cpp +++ b/src/gui/painting/qdrawhelper_mmx3dnow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qdrawhelper_mmx_p.h b/src/gui/painting/qdrawhelper_mmx_p.h index e2205a89a5..d6f7056669 100644 --- a/src/gui/painting/qdrawhelper_mmx_p.h +++ b/src/gui/painting/qdrawhelper_mmx_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qdrawhelper_neon.cpp b/src/gui/painting/qdrawhelper_neon.cpp index a7e510e0ac..09eba9103b 100644 --- a/src/gui/painting/qdrawhelper_neon.cpp +++ b/src/gui/painting/qdrawhelper_neon.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qdrawhelper_neon_asm.S b/src/gui/painting/qdrawhelper_neon_asm.S index 0c0c6a4b1e..d1e6e585c4 100644 --- a/src/gui/painting/qdrawhelper_neon_asm.S +++ b/src/gui/painting/qdrawhelper_neon_asm.S @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qdrawhelper_neon_p.h b/src/gui/painting/qdrawhelper_neon_p.h index 97ef8ce4e6..6ce1d5e59e 100644 --- a/src/gui/painting/qdrawhelper_neon_p.h +++ b/src/gui/painting/qdrawhelper_neon_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qdrawhelper_p.h b/src/gui/painting/qdrawhelper_p.h index 3d83ba8587..52f50240a4 100644 --- a/src/gui/painting/qdrawhelper_p.h +++ b/src/gui/painting/qdrawhelper_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qdrawhelper_sse.cpp b/src/gui/painting/qdrawhelper_sse.cpp index a03ceee02a..4e17c32c17 100644 --- a/src/gui/painting/qdrawhelper_sse.cpp +++ b/src/gui/painting/qdrawhelper_sse.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qdrawhelper_sse2.cpp b/src/gui/painting/qdrawhelper_sse2.cpp index 3bbdae00bd..f974b586d0 100644 --- a/src/gui/painting/qdrawhelper_sse2.cpp +++ b/src/gui/painting/qdrawhelper_sse2.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qdrawhelper_sse3dnow.cpp b/src/gui/painting/qdrawhelper_sse3dnow.cpp index 513ed7d713..42061feac3 100644 --- a/src/gui/painting/qdrawhelper_sse3dnow.cpp +++ b/src/gui/painting/qdrawhelper_sse3dnow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qdrawhelper_sse_p.h b/src/gui/painting/qdrawhelper_sse_p.h index 3f2419578d..99ef917e71 100644 --- a/src/gui/painting/qdrawhelper_sse_p.h +++ b/src/gui/painting/qdrawhelper_sse_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qdrawhelper_ssse3.cpp b/src/gui/painting/qdrawhelper_ssse3.cpp index ef6e33bc1e..1281d4d526 100644 --- a/src/gui/painting/qdrawhelper_ssse3.cpp +++ b/src/gui/painting/qdrawhelper_ssse3.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qdrawhelper_x86_p.h b/src/gui/painting/qdrawhelper_x86_p.h index ac671ccc51..20d0f7a36b 100644 --- a/src/gui/painting/qdrawhelper_x86_p.h +++ b/src/gui/painting/qdrawhelper_x86_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qdrawingprimitive_sse2_p.h b/src/gui/painting/qdrawingprimitive_sse2_p.h index dad8f6cb5d..28b9ceee8a 100644 --- a/src/gui/painting/qdrawingprimitive_sse2_p.h +++ b/src/gui/painting/qdrawingprimitive_sse2_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qemulationpaintengine.cpp b/src/gui/painting/qemulationpaintengine.cpp index 903ab1f605..3e40d25ec8 100644 --- a/src/gui/painting/qemulationpaintengine.cpp +++ b/src/gui/painting/qemulationpaintengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qemulationpaintengine_p.h b/src/gui/painting/qemulationpaintengine_p.h index fdc3688876..b49ce2bdaf 100644 --- a/src/gui/painting/qemulationpaintengine_p.h +++ b/src/gui/painting/qemulationpaintengine_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qfixed_p.h b/src/gui/painting/qfixed_p.h index df5a685053..dba52f75b4 100644 --- a/src/gui/painting/qfixed_p.h +++ b/src/gui/painting/qfixed_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qgrayraster.c b/src/gui/painting/qgrayraster.c index 837bf0292a..50ec22e73a 100644 --- a/src/gui/painting/qgrayraster.c +++ b/src/gui/painting/qgrayraster.c @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qgrayraster_p.h b/src/gui/painting/qgrayraster_p.h index d5932982db..11470ab279 100644 --- a/src/gui/painting/qgrayraster_p.h +++ b/src/gui/painting/qgrayraster_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qimagescale.cpp b/src/gui/painting/qimagescale.cpp index 46e09ddc49..83cd9ad970 100644 --- a/src/gui/painting/qimagescale.cpp +++ b/src/gui/painting/qimagescale.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qimagescale_p.h b/src/gui/painting/qimagescale_p.h index 4efe75df60..654602cefe 100644 --- a/src/gui/painting/qimagescale_p.h +++ b/src/gui/painting/qimagescale_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qmath_p.h b/src/gui/painting/qmath_p.h index ea46aa7902..21bbeeeaed 100644 --- a/src/gui/painting/qmath_p.h +++ b/src/gui/painting/qmath_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qmatrix.cpp b/src/gui/painting/qmatrix.cpp index 41278920cb..cf99e31b90 100644 --- a/src/gui/painting/qmatrix.cpp +++ b/src/gui/painting/qmatrix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qmatrix.h b/src/gui/painting/qmatrix.h index 830a0a734f..e963b90a44 100644 --- a/src/gui/painting/qmatrix.h +++ b/src/gui/painting/qmatrix.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qmemrotate.cpp b/src/gui/painting/qmemrotate.cpp index 857621df6e..478d6470b2 100644 --- a/src/gui/painting/qmemrotate.cpp +++ b/src/gui/painting/qmemrotate.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qmemrotate_p.h b/src/gui/painting/qmemrotate_p.h index a8c2c6bfbd..d9793b2404 100644 --- a/src/gui/painting/qmemrotate_p.h +++ b/src/gui/painting/qmemrotate_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qoutlinemapper.cpp b/src/gui/painting/qoutlinemapper.cpp index 1aa77592ae..da77722491 100644 --- a/src/gui/painting/qoutlinemapper.cpp +++ b/src/gui/painting/qoutlinemapper.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qoutlinemapper_p.h b/src/gui/painting/qoutlinemapper_p.h index 7bcf3166ca..ceb70f1a7b 100644 --- a/src/gui/painting/qoutlinemapper_p.h +++ b/src/gui/painting/qoutlinemapper_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpagedpaintdevice.cpp b/src/gui/painting/qpagedpaintdevice.cpp index b7b882e93a..038852a842 100644 --- a/src/gui/painting/qpagedpaintdevice.cpp +++ b/src/gui/painting/qpagedpaintdevice.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpagedpaintdevice.h b/src/gui/painting/qpagedpaintdevice.h index 9f06fc923a..f113534956 100644 --- a/src/gui/painting/qpagedpaintdevice.h +++ b/src/gui/painting/qpagedpaintdevice.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpagedpaintdevice_p.h b/src/gui/painting/qpagedpaintdevice_p.h index 55f78d54c5..28a2c80b94 100644 --- a/src/gui/painting/qpagedpaintdevice_p.h +++ b/src/gui/painting/qpagedpaintdevice_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpaintbuffer.cpp b/src/gui/painting/qpaintbuffer.cpp index f9e8432a8c..a4edba9299 100644 --- a/src/gui/painting/qpaintbuffer.cpp +++ b/src/gui/painting/qpaintbuffer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpaintbuffer_p.h b/src/gui/painting/qpaintbuffer_p.h index 7cb743e585..536d5c8a61 100644 --- a/src/gui/painting/qpaintbuffer_p.h +++ b/src/gui/painting/qpaintbuffer_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpaintdevice.cpp b/src/gui/painting/qpaintdevice.cpp index 857f147231..b094019c84 100644 --- a/src/gui/painting/qpaintdevice.cpp +++ b/src/gui/painting/qpaintdevice.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpaintdevice.h b/src/gui/painting/qpaintdevice.h index 476f883645..fdceaa1886 100644 --- a/src/gui/painting/qpaintdevice.h +++ b/src/gui/painting/qpaintdevice.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpaintdevice.qdoc b/src/gui/painting/qpaintdevice.qdoc index 8d7e86f424..747047d53a 100644 --- a/src/gui/painting/qpaintdevice.qdoc +++ b/src/gui/painting/qpaintdevice.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpaintengine.cpp b/src/gui/painting/qpaintengine.cpp index da97116c6f..8364218b6e 100644 --- a/src/gui/painting/qpaintengine.cpp +++ b/src/gui/painting/qpaintengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpaintengine.h b/src/gui/painting/qpaintengine.h index 5d5424dfae..ee08ef1fbd 100644 --- a/src/gui/painting/qpaintengine.h +++ b/src/gui/painting/qpaintengine.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpaintengine_blitter.cpp b/src/gui/painting/qpaintengine_blitter.cpp index f8d6f037fa..37c158a3d9 100644 --- a/src/gui/painting/qpaintengine_blitter.cpp +++ b/src/gui/painting/qpaintengine_blitter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpaintengine_blitter_p.h b/src/gui/painting/qpaintengine_blitter_p.h index bb6eba496f..dba0bad9ef 100644 --- a/src/gui/painting/qpaintengine_blitter_p.h +++ b/src/gui/painting/qpaintengine_blitter_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpaintengine_p.h b/src/gui/painting/qpaintengine_p.h index 5d540bd11b..57075fed90 100644 --- a/src/gui/painting/qpaintengine_p.h +++ b/src/gui/painting/qpaintengine_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpaintengine_raster.cpp b/src/gui/painting/qpaintengine_raster.cpp index e1b271dc64..5100393c69 100644 --- a/src/gui/painting/qpaintengine_raster.cpp +++ b/src/gui/painting/qpaintengine_raster.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpaintengine_raster_p.h b/src/gui/painting/qpaintengine_raster_p.h index 446d26d450..aa454c0509 100644 --- a/src/gui/painting/qpaintengine_raster_p.h +++ b/src/gui/painting/qpaintengine_raster_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpaintengineex.cpp b/src/gui/painting/qpaintengineex.cpp index 3f194334b2..e5e14c9135 100644 --- a/src/gui/painting/qpaintengineex.cpp +++ b/src/gui/painting/qpaintengineex.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpaintengineex_p.h b/src/gui/painting/qpaintengineex_p.h index 9674f04ba1..33a6081570 100644 --- a/src/gui/painting/qpaintengineex_p.h +++ b/src/gui/painting/qpaintengineex_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpainter.cpp b/src/gui/painting/qpainter.cpp index 38f4ebd260..77c3fc183f 100644 --- a/src/gui/painting/qpainter.cpp +++ b/src/gui/painting/qpainter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpainter.h b/src/gui/painting/qpainter.h index fd40111368..ba9a9fbb97 100644 --- a/src/gui/painting/qpainter.h +++ b/src/gui/painting/qpainter.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpainter_p.h b/src/gui/painting/qpainter_p.h index 79d4b4bbe0..0fb3069ee0 100644 --- a/src/gui/painting/qpainter_p.h +++ b/src/gui/painting/qpainter_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpainterpath.cpp b/src/gui/painting/qpainterpath.cpp index 5b70f4b22a..9c69644033 100644 --- a/src/gui/painting/qpainterpath.cpp +++ b/src/gui/painting/qpainterpath.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpainterpath.h b/src/gui/painting/qpainterpath.h index a558abca3d..46af341df3 100644 --- a/src/gui/painting/qpainterpath.h +++ b/src/gui/painting/qpainterpath.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpainterpath_p.h b/src/gui/painting/qpainterpath_p.h index 738c2d382d..1cf00bbae3 100644 --- a/src/gui/painting/qpainterpath_p.h +++ b/src/gui/painting/qpainterpath_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpathclipper.cpp b/src/gui/painting/qpathclipper.cpp index f739198be0..03f48d8fda 100644 --- a/src/gui/painting/qpathclipper.cpp +++ b/src/gui/painting/qpathclipper.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpathclipper_p.h b/src/gui/painting/qpathclipper_p.h index fe4a97ad4c..daf97884c0 100644 --- a/src/gui/painting/qpathclipper_p.h +++ b/src/gui/painting/qpathclipper_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpdf.cpp b/src/gui/painting/qpdf.cpp index 8f21663ffc..62f4b9b3f6 100644 --- a/src/gui/painting/qpdf.cpp +++ b/src/gui/painting/qpdf.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpdf_p.h b/src/gui/painting/qpdf_p.h index 6df5052c06..32b59e92e8 100644 --- a/src/gui/painting/qpdf_p.h +++ b/src/gui/painting/qpdf_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpdfwriter.cpp b/src/gui/painting/qpdfwriter.cpp index a0f8df2061..23be05c49c 100644 --- a/src/gui/painting/qpdfwriter.cpp +++ b/src/gui/painting/qpdfwriter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpdfwriter.h b/src/gui/painting/qpdfwriter.h index 005d8e640b..dfe49b403a 100644 --- a/src/gui/painting/qpdfwriter.h +++ b/src/gui/painting/qpdfwriter.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpen.cpp b/src/gui/painting/qpen.cpp index 5358239014..3654c6f007 100644 --- a/src/gui/painting/qpen.cpp +++ b/src/gui/painting/qpen.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpen.h b/src/gui/painting/qpen.h index a751c2fdd3..708f131ece 100644 --- a/src/gui/painting/qpen.h +++ b/src/gui/painting/qpen.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpen_p.h b/src/gui/painting/qpen_p.h index d91566664d..4610026e2f 100644 --- a/src/gui/painting/qpen_p.h +++ b/src/gui/painting/qpen_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qplatformbackingstore_qpa.cpp b/src/gui/painting/qplatformbackingstore_qpa.cpp index 2c0053af86..9d855735f4 100644 --- a/src/gui/painting/qplatformbackingstore_qpa.cpp +++ b/src/gui/painting/qplatformbackingstore_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qplatformbackingstore_qpa.h b/src/gui/painting/qplatformbackingstore_qpa.h index d5a2536ea6..a47106771e 100644 --- a/src/gui/painting/qplatformbackingstore_qpa.h +++ b/src/gui/painting/qplatformbackingstore_qpa.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpolygon.cpp b/src/gui/painting/qpolygon.cpp index fc22aed392..b745e1a6ee 100644 --- a/src/gui/painting/qpolygon.cpp +++ b/src/gui/painting/qpolygon.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpolygon.h b/src/gui/painting/qpolygon.h index cf3bf472f6..348cf9eef7 100644 --- a/src/gui/painting/qpolygon.h +++ b/src/gui/painting/qpolygon.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qpolygonclipper_p.h b/src/gui/painting/qpolygonclipper_p.h index df0bfccc3f..6512a3a0ed 100644 --- a/src/gui/painting/qpolygonclipper_p.h +++ b/src/gui/painting/qpolygonclipper_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qrasterdefs_p.h b/src/gui/painting/qrasterdefs_p.h index 8d9d4e9277..a113ab0abf 100644 --- a/src/gui/painting/qrasterdefs_p.h +++ b/src/gui/painting/qrasterdefs_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qrasterizer.cpp b/src/gui/painting/qrasterizer.cpp index 1d3f581b88..5a46d1ba48 100644 --- a/src/gui/painting/qrasterizer.cpp +++ b/src/gui/painting/qrasterizer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qrasterizer_p.h b/src/gui/painting/qrasterizer_p.h index 913e2d3229..ed7d4eb957 100644 --- a/src/gui/painting/qrasterizer_p.h +++ b/src/gui/painting/qrasterizer_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qregion.cpp b/src/gui/painting/qregion.cpp index 66b12e5034..68338602e2 100644 --- a/src/gui/painting/qregion.cpp +++ b/src/gui/painting/qregion.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qregion.h b/src/gui/painting/qregion.h index a5ea88b8bd..834a015ceb 100644 --- a/src/gui/painting/qregion.h +++ b/src/gui/painting/qregion.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qrgb.h b/src/gui/painting/qrgb.h index 1f9c922bf2..b982707344 100644 --- a/src/gui/painting/qrgb.h +++ b/src/gui/painting/qrgb.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qstroker.cpp b/src/gui/painting/qstroker.cpp index bbb951eb9b..f7e50c82c0 100644 --- a/src/gui/painting/qstroker.cpp +++ b/src/gui/painting/qstroker.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qstroker_p.h b/src/gui/painting/qstroker_p.h index 58d4f5da40..b6cae1d2a0 100644 --- a/src/gui/painting/qstroker_p.h +++ b/src/gui/painting/qstroker_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qtextureglyphcache.cpp b/src/gui/painting/qtextureglyphcache.cpp index 1e0ed0f798..0743804319 100644 --- a/src/gui/painting/qtextureglyphcache.cpp +++ b/src/gui/painting/qtextureglyphcache.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qtextureglyphcache_p.h b/src/gui/painting/qtextureglyphcache_p.h index d9d57f41ab..d29a31f4f3 100644 --- a/src/gui/painting/qtextureglyphcache_p.h +++ b/src/gui/painting/qtextureglyphcache_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qtransform.cpp b/src/gui/painting/qtransform.cpp index e42eec6f96..f9948bf8d1 100644 --- a/src/gui/painting/qtransform.cpp +++ b/src/gui/painting/qtransform.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qtransform.h b/src/gui/painting/qtransform.h index 3289bf4d26..08a4861100 100644 --- a/src/gui/painting/qtransform.h +++ b/src/gui/painting/qtransform.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/painting/qvectorpath_p.h b/src/gui/painting/qvectorpath_p.h index 6a061a405b..8a54e65aed 100644 --- a/src/gui/painting/qvectorpath_p.h +++ b/src/gui/painting/qvectorpath_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qabstractfontengine_p.h b/src/gui/text/qabstractfontengine_p.h index b744d6664c..7d0eaa7b42 100644 --- a/src/gui/text/qabstractfontengine_p.h +++ b/src/gui/text/qabstractfontengine_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qabstracttextdocumentlayout.cpp b/src/gui/text/qabstracttextdocumentlayout.cpp index c392b54520..5dd29e6548 100644 --- a/src/gui/text/qabstracttextdocumentlayout.cpp +++ b/src/gui/text/qabstracttextdocumentlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qabstracttextdocumentlayout.h b/src/gui/text/qabstracttextdocumentlayout.h index 8e792e9b80..1362640b4f 100644 --- a/src/gui/text/qabstracttextdocumentlayout.h +++ b/src/gui/text/qabstracttextdocumentlayout.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qabstracttextdocumentlayout_p.h b/src/gui/text/qabstracttextdocumentlayout_p.h index 692b535991..6f8f113bff 100644 --- a/src/gui/text/qabstracttextdocumentlayout_p.h +++ b/src/gui/text/qabstracttextdocumentlayout_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qcssparser.cpp b/src/gui/text/qcssparser.cpp index 6a28ff2d74..06a88f02ee 100644 --- a/src/gui/text/qcssparser.cpp +++ b/src/gui/text/qcssparser.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qcssparser_p.h b/src/gui/text/qcssparser_p.h index 171085b800..fa60a3fd2e 100644 --- a/src/gui/text/qcssparser_p.h +++ b/src/gui/text/qcssparser_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qcssscanner.cpp b/src/gui/text/qcssscanner.cpp index 375f211d9f..07928a62af 100644 --- a/src/gui/text/qcssscanner.cpp +++ b/src/gui/text/qcssscanner.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qfont.cpp b/src/gui/text/qfont.cpp index 804d3f9e66..5bf9094615 100644 --- a/src/gui/text/qfont.cpp +++ b/src/gui/text/qfont.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qfont.h b/src/gui/text/qfont.h index 326dc9d63e..afeea3ce65 100644 --- a/src/gui/text/qfont.h +++ b/src/gui/text/qfont.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qfont_p.h b/src/gui/text/qfont_p.h index 2d4f3de7e7..b57af5f213 100644 --- a/src/gui/text/qfont_p.h +++ b/src/gui/text/qfont_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qfont_qpa.cpp b/src/gui/text/qfont_qpa.cpp index 28fd77df56..2f5b6f7660 100644 --- a/src/gui/text/qfont_qpa.cpp +++ b/src/gui/text/qfont_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qfontdatabase.cpp b/src/gui/text/qfontdatabase.cpp index c80ded6e7b..e7cbe2a8a8 100644 --- a/src/gui/text/qfontdatabase.cpp +++ b/src/gui/text/qfontdatabase.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qfontdatabase.h b/src/gui/text/qfontdatabase.h index 873d00946c..3bfc07fbfd 100644 --- a/src/gui/text/qfontdatabase.h +++ b/src/gui/text/qfontdatabase.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qfontdatabase_qpa.cpp b/src/gui/text/qfontdatabase_qpa.cpp index 55b9023c7c..a5cb923460 100644 --- a/src/gui/text/qfontdatabase_qpa.cpp +++ b/src/gui/text/qfontdatabase_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qfontengine.cpp b/src/gui/text/qfontengine.cpp index 5c6c8d186a..d569cb58b9 100644 --- a/src/gui/text/qfontengine.cpp +++ b/src/gui/text/qfontengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qfontengine_ft.cpp b/src/gui/text/qfontengine_ft.cpp index b2bff92b76..e41c0a93c7 100644 --- a/src/gui/text/qfontengine_ft.cpp +++ b/src/gui/text/qfontengine_ft.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qfontengine_ft_p.h b/src/gui/text/qfontengine_ft_p.h index edc2457687..c84c11163a 100644 --- a/src/gui/text/qfontengine_ft_p.h +++ b/src/gui/text/qfontengine_ft_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qfontengine_p.h b/src/gui/text/qfontengine_p.h index 4caf91e735..02523ada82 100644 --- a/src/gui/text/qfontengine_p.h +++ b/src/gui/text/qfontengine_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qfontengine_qpa.cpp b/src/gui/text/qfontengine_qpa.cpp index c25ed43fdc..3408d3a2a8 100644 --- a/src/gui/text/qfontengine_qpa.cpp +++ b/src/gui/text/qfontengine_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qfontengine_qpa_p.h b/src/gui/text/qfontengine_qpa_p.h index a88c1bc3cc..d09692bc57 100644 --- a/src/gui/text/qfontengine_qpa_p.h +++ b/src/gui/text/qfontengine_qpa_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qfontengine_qpf.cpp b/src/gui/text/qfontengine_qpf.cpp index 8bdaa46524..bedc54f92a 100644 --- a/src/gui/text/qfontengine_qpf.cpp +++ b/src/gui/text/qfontengine_qpf.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qfontengine_qpf_p.h b/src/gui/text/qfontengine_qpf_p.h index 9473e6b6b7..8a79f65814 100644 --- a/src/gui/text/qfontengine_qpf_p.h +++ b/src/gui/text/qfontengine_qpf_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qfontenginedirectwrite.cpp b/src/gui/text/qfontenginedirectwrite.cpp index 952e06d151..438d30a913 100644 --- a/src/gui/text/qfontenginedirectwrite.cpp +++ b/src/gui/text/qfontenginedirectwrite.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qfontenginedirectwrite_p.h b/src/gui/text/qfontenginedirectwrite_p.h index edf1e6a182..26198e64ee 100644 --- a/src/gui/text/qfontenginedirectwrite_p.h +++ b/src/gui/text/qfontenginedirectwrite_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qfontengineglyphcache_p.h b/src/gui/text/qfontengineglyphcache_p.h index 6b633d615c..855c4a0aa0 100644 --- a/src/gui/text/qfontengineglyphcache_p.h +++ b/src/gui/text/qfontengineglyphcache_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qfontinfo.h b/src/gui/text/qfontinfo.h index 37a724ec7c..88e1d9f65d 100644 --- a/src/gui/text/qfontinfo.h +++ b/src/gui/text/qfontinfo.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qfontmetrics.cpp b/src/gui/text/qfontmetrics.cpp index 1d80e316fd..11e41ad685 100644 --- a/src/gui/text/qfontmetrics.cpp +++ b/src/gui/text/qfontmetrics.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qfontmetrics.h b/src/gui/text/qfontmetrics.h index 21e211a4a7..f5184aacba 100644 --- a/src/gui/text/qfontmetrics.h +++ b/src/gui/text/qfontmetrics.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qfontsubset.cpp b/src/gui/text/qfontsubset.cpp index de945e129b..91d8264f76 100644 --- a/src/gui/text/qfontsubset.cpp +++ b/src/gui/text/qfontsubset.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qfontsubset_p.h b/src/gui/text/qfontsubset_p.h index a99236f4cc..3dabec5f0b 100644 --- a/src/gui/text/qfontsubset_p.h +++ b/src/gui/text/qfontsubset_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qfragmentmap.cpp b/src/gui/text/qfragmentmap.cpp index 134293194b..ac923bb639 100644 --- a/src/gui/text/qfragmentmap.cpp +++ b/src/gui/text/qfragmentmap.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qfragmentmap_p.h b/src/gui/text/qfragmentmap_p.h index d05438ab5b..e6da236552 100644 --- a/src/gui/text/qfragmentmap_p.h +++ b/src/gui/text/qfragmentmap_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qglyphrun.cpp b/src/gui/text/qglyphrun.cpp index 2e7097f88c..3f9989090a 100644 --- a/src/gui/text/qglyphrun.cpp +++ b/src/gui/text/qglyphrun.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qglyphrun.h b/src/gui/text/qglyphrun.h index 826156fe11..0c47c6f4bc 100644 --- a/src/gui/text/qglyphrun.h +++ b/src/gui/text/qglyphrun.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qglyphrun_p.h b/src/gui/text/qglyphrun_p.h index 863b9d883e..c3b6cf40be 100644 --- a/src/gui/text/qglyphrun_p.h +++ b/src/gui/text/qglyphrun_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qharfbuzz_copy_p.h b/src/gui/text/qharfbuzz_copy_p.h index 10356e4aea..aa48667e2e 100644 --- a/src/gui/text/qharfbuzz_copy_p.h +++ b/src/gui/text/qharfbuzz_copy_p.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies) + * Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies) * Copyright (C) 2007 Red Hat, Inc. * * This code is a modified version of some part of HarfBuzz, diff --git a/src/gui/text/qlinecontrol.cpp b/src/gui/text/qlinecontrol.cpp index 62f4515fcc..fc8bcafed4 100644 --- a/src/gui/text/qlinecontrol.cpp +++ b/src/gui/text/qlinecontrol.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qlinecontrol_p.h b/src/gui/text/qlinecontrol_p.h index 4970a8c05e..166300f997 100644 --- a/src/gui/text/qlinecontrol_p.h +++ b/src/gui/text/qlinecontrol_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qpfutil.cpp b/src/gui/text/qpfutil.cpp index 8e69a4b67f..f60b358dbe 100644 --- a/src/gui/text/qpfutil.cpp +++ b/src/gui/text/qpfutil.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qplatformfontdatabase_qpa.cpp b/src/gui/text/qplatformfontdatabase_qpa.cpp index 165bd8b992..fbd9cb09cf 100644 --- a/src/gui/text/qplatformfontdatabase_qpa.cpp +++ b/src/gui/text/qplatformfontdatabase_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qplatformfontdatabase_qpa.h b/src/gui/text/qplatformfontdatabase_qpa.h index a0953ca1b4..9ee2bfd76a 100644 --- a/src/gui/text/qplatformfontdatabase_qpa.h +++ b/src/gui/text/qplatformfontdatabase_qpa.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qrawfont.cpp b/src/gui/text/qrawfont.cpp index 8fccd9b0ca..65d9797374 100644 --- a/src/gui/text/qrawfont.cpp +++ b/src/gui/text/qrawfont.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qrawfont.h b/src/gui/text/qrawfont.h index b66bc04eab..87f4a75bc7 100644 --- a/src/gui/text/qrawfont.h +++ b/src/gui/text/qrawfont.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qrawfont_ft.cpp b/src/gui/text/qrawfont_ft.cpp index c941b98694..f0251b28f6 100644 --- a/src/gui/text/qrawfont_ft.cpp +++ b/src/gui/text/qrawfont_ft.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qrawfont_p.h b/src/gui/text/qrawfont_p.h index 992cb2f720..b1a71d96ab 100644 --- a/src/gui/text/qrawfont_p.h +++ b/src/gui/text/qrawfont_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qrawfont_qpa.cpp b/src/gui/text/qrawfont_qpa.cpp index 47815baf06..444efd0a0b 100644 --- a/src/gui/text/qrawfont_qpa.cpp +++ b/src/gui/text/qrawfont_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qstatictext.cpp b/src/gui/text/qstatictext.cpp index a52cf25a98..c356aa7e99 100644 --- a/src/gui/text/qstatictext.cpp +++ b/src/gui/text/qstatictext.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qstatictext.h b/src/gui/text/qstatictext.h index 61a590c798..ad55c6a05d 100644 --- a/src/gui/text/qstatictext.h +++ b/src/gui/text/qstatictext.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qstatictext_p.h b/src/gui/text/qstatictext_p.h index 5f9410c31d..2607bcfe8a 100644 --- a/src/gui/text/qstatictext_p.h +++ b/src/gui/text/qstatictext_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qsyntaxhighlighter.cpp b/src/gui/text/qsyntaxhighlighter.cpp index 5f1a53b556..d9bdeeddfe 100644 --- a/src/gui/text/qsyntaxhighlighter.cpp +++ b/src/gui/text/qsyntaxhighlighter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qsyntaxhighlighter.h b/src/gui/text/qsyntaxhighlighter.h index 1c421d1c26..bd64de34bb 100644 --- a/src/gui/text/qsyntaxhighlighter.h +++ b/src/gui/text/qsyntaxhighlighter.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextcontrol.cpp b/src/gui/text/qtextcontrol.cpp index f74d67cf6d..b21dae5298 100644 --- a/src/gui/text/qtextcontrol.cpp +++ b/src/gui/text/qtextcontrol.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextcontrol_p.h b/src/gui/text/qtextcontrol_p.h index f80c4c81b6..e00ffd4042 100644 --- a/src/gui/text/qtextcontrol_p.h +++ b/src/gui/text/qtextcontrol_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextcontrol_p_p.h b/src/gui/text/qtextcontrol_p_p.h index 9c7ab56395..12dfbafb69 100644 --- a/src/gui/text/qtextcontrol_p_p.h +++ b/src/gui/text/qtextcontrol_p_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextcursor.cpp b/src/gui/text/qtextcursor.cpp index 2bebf4c861..10bbff3671 100644 --- a/src/gui/text/qtextcursor.cpp +++ b/src/gui/text/qtextcursor.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextcursor.h b/src/gui/text/qtextcursor.h index bc4cdb5fb6..32ded45137 100644 --- a/src/gui/text/qtextcursor.h +++ b/src/gui/text/qtextcursor.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextcursor_p.h b/src/gui/text/qtextcursor_p.h index c612169acf..d64498a7ac 100644 --- a/src/gui/text/qtextcursor_p.h +++ b/src/gui/text/qtextcursor_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextdocument.cpp b/src/gui/text/qtextdocument.cpp index 1028a2329a..3038504591 100644 --- a/src/gui/text/qtextdocument.cpp +++ b/src/gui/text/qtextdocument.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextdocument.h b/src/gui/text/qtextdocument.h index 9d9af2b5bb..b7c77c2c54 100644 --- a/src/gui/text/qtextdocument.h +++ b/src/gui/text/qtextdocument.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextdocument_p.cpp b/src/gui/text/qtextdocument_p.cpp index 901375d8c8..9e410b40af 100644 --- a/src/gui/text/qtextdocument_p.cpp +++ b/src/gui/text/qtextdocument_p.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextdocument_p.h b/src/gui/text/qtextdocument_p.h index fbf91bfc0e..07a5230ec5 100644 --- a/src/gui/text/qtextdocument_p.h +++ b/src/gui/text/qtextdocument_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextdocumentfragment.cpp b/src/gui/text/qtextdocumentfragment.cpp index 5ab7daf6ad..a42a4ce39a 100644 --- a/src/gui/text/qtextdocumentfragment.cpp +++ b/src/gui/text/qtextdocumentfragment.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextdocumentfragment.h b/src/gui/text/qtextdocumentfragment.h index 2add88233e..cc7dd293f2 100644 --- a/src/gui/text/qtextdocumentfragment.h +++ b/src/gui/text/qtextdocumentfragment.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextdocumentfragment_p.h b/src/gui/text/qtextdocumentfragment_p.h index 227123ed80..44276d3629 100644 --- a/src/gui/text/qtextdocumentfragment_p.h +++ b/src/gui/text/qtextdocumentfragment_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextdocumentlayout.cpp b/src/gui/text/qtextdocumentlayout.cpp index 5138aa3e70..80975f928b 100644 --- a/src/gui/text/qtextdocumentlayout.cpp +++ b/src/gui/text/qtextdocumentlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextdocumentlayout_p.h b/src/gui/text/qtextdocumentlayout_p.h index bef4c844f6..e5f8cc19a8 100644 --- a/src/gui/text/qtextdocumentlayout_p.h +++ b/src/gui/text/qtextdocumentlayout_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextdocumentwriter.cpp b/src/gui/text/qtextdocumentwriter.cpp index 11bf3fcb08..a371471b76 100644 --- a/src/gui/text/qtextdocumentwriter.cpp +++ b/src/gui/text/qtextdocumentwriter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextdocumentwriter.h b/src/gui/text/qtextdocumentwriter.h index 0b3f11042b..7dc903c412 100644 --- a/src/gui/text/qtextdocumentwriter.h +++ b/src/gui/text/qtextdocumentwriter.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextengine.cpp b/src/gui/text/qtextengine.cpp index d2c37d451d..00418bae5a 100644 --- a/src/gui/text/qtextengine.cpp +++ b/src/gui/text/qtextengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextengine_p.h b/src/gui/text/qtextengine_p.h index d821fa50cb..368ad3763d 100644 --- a/src/gui/text/qtextengine_p.h +++ b/src/gui/text/qtextengine_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextformat.cpp b/src/gui/text/qtextformat.cpp index 833414f79f..a118462514 100644 --- a/src/gui/text/qtextformat.cpp +++ b/src/gui/text/qtextformat.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextformat.h b/src/gui/text/qtextformat.h index a7bc15eb74..a535f900a7 100644 --- a/src/gui/text/qtextformat.h +++ b/src/gui/text/qtextformat.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextformat_p.h b/src/gui/text/qtextformat_p.h index d7d082c39b..61e3e1f253 100644 --- a/src/gui/text/qtextformat_p.h +++ b/src/gui/text/qtextformat_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtexthtmlparser.cpp b/src/gui/text/qtexthtmlparser.cpp index ced71f5c60..4ee282c46e 100644 --- a/src/gui/text/qtexthtmlparser.cpp +++ b/src/gui/text/qtexthtmlparser.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtexthtmlparser_p.h b/src/gui/text/qtexthtmlparser_p.h index 9019942304..f1a90ee0a3 100644 --- a/src/gui/text/qtexthtmlparser_p.h +++ b/src/gui/text/qtexthtmlparser_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextimagehandler.cpp b/src/gui/text/qtextimagehandler.cpp index fb93563d10..c7cf2df903 100644 --- a/src/gui/text/qtextimagehandler.cpp +++ b/src/gui/text/qtextimagehandler.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextimagehandler_p.h b/src/gui/text/qtextimagehandler_p.h index b748a1913f..ce1d481eba 100644 --- a/src/gui/text/qtextimagehandler_p.h +++ b/src/gui/text/qtextimagehandler_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextlayout.cpp b/src/gui/text/qtextlayout.cpp index d470c6daac..1e8cb9e478 100644 --- a/src/gui/text/qtextlayout.cpp +++ b/src/gui/text/qtextlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextlayout.h b/src/gui/text/qtextlayout.h index f1bfdc75db..e698625d9b 100644 --- a/src/gui/text/qtextlayout.h +++ b/src/gui/text/qtextlayout.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextlist.cpp b/src/gui/text/qtextlist.cpp index 92e509d8d9..97ad9dc82b 100644 --- a/src/gui/text/qtextlist.cpp +++ b/src/gui/text/qtextlist.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextlist.h b/src/gui/text/qtextlist.h index 83d10834c7..5a470f4582 100644 --- a/src/gui/text/qtextlist.h +++ b/src/gui/text/qtextlist.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextobject.cpp b/src/gui/text/qtextobject.cpp index d641266367..e49b0d3ad8 100644 --- a/src/gui/text/qtextobject.cpp +++ b/src/gui/text/qtextobject.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextobject.h b/src/gui/text/qtextobject.h index c2b46e4d12..f56a38b366 100644 --- a/src/gui/text/qtextobject.h +++ b/src/gui/text/qtextobject.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextobject_p.h b/src/gui/text/qtextobject_p.h index 798b9d1340..0ca2f87f0d 100644 --- a/src/gui/text/qtextobject_p.h +++ b/src/gui/text/qtextobject_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextodfwriter.cpp b/src/gui/text/qtextodfwriter.cpp index cb313f64fe..0fe2efdd5f 100644 --- a/src/gui/text/qtextodfwriter.cpp +++ b/src/gui/text/qtextodfwriter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextodfwriter_p.h b/src/gui/text/qtextodfwriter_p.h index 377c7fdeea..5108175291 100644 --- a/src/gui/text/qtextodfwriter_p.h +++ b/src/gui/text/qtextodfwriter_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextoption.cpp b/src/gui/text/qtextoption.cpp index fe58583d04..2fe6284592 100644 --- a/src/gui/text/qtextoption.cpp +++ b/src/gui/text/qtextoption.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtextoption.h b/src/gui/text/qtextoption.h index 3c04c76933..8b7b006921 100644 --- a/src/gui/text/qtextoption.h +++ b/src/gui/text/qtextoption.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtexttable.cpp b/src/gui/text/qtexttable.cpp index 6935ffc6f4..64b28811e5 100644 --- a/src/gui/text/qtexttable.cpp +++ b/src/gui/text/qtexttable.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtexttable.h b/src/gui/text/qtexttable.h index b275a5783a..e5ea7609dd 100644 --- a/src/gui/text/qtexttable.h +++ b/src/gui/text/qtexttable.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qtexttable_p.h b/src/gui/text/qtexttable_p.h index cd16f50a62..237a1a883c 100644 --- a/src/gui/text/qtexttable_p.h +++ b/src/gui/text/qtexttable_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qzip.cpp b/src/gui/text/qzip.cpp index 0ffcade591..b82e679d8b 100644 --- a/src/gui/text/qzip.cpp +++ b/src/gui/text/qzip.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qzipreader_p.h b/src/gui/text/qzipreader_p.h index b1df316cab..a569b584cf 100644 --- a/src/gui/text/qzipreader_p.h +++ b/src/gui/text/qzipreader_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/text/qzipwriter_p.h b/src/gui/text/qzipwriter_p.h index 1ba93b88d7..0860c004f9 100644 --- a/src/gui/text/qzipwriter_p.h +++ b/src/gui/text/qzipwriter_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/util/qdesktopservices.cpp b/src/gui/util/qdesktopservices.cpp index 4fbf0a59f3..0bb233c82f 100644 --- a/src/gui/util/qdesktopservices.cpp +++ b/src/gui/util/qdesktopservices.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/util/qdesktopservices.h b/src/gui/util/qdesktopservices.h index ba7702f0d7..af9aa7bec7 100644 --- a/src/gui/util/qdesktopservices.h +++ b/src/gui/util/qdesktopservices.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/util/qdesktopservices_mac.cpp b/src/gui/util/qdesktopservices_mac.cpp index f4b5263f62..d822455886 100644 --- a/src/gui/util/qdesktopservices_mac.cpp +++ b/src/gui/util/qdesktopservices_mac.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/util/qdesktopservices_qpa.cpp b/src/gui/util/qdesktopservices_qpa.cpp index c60cec8422..9e517a0166 100644 --- a/src/gui/util/qdesktopservices_qpa.cpp +++ b/src/gui/util/qdesktopservices_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/util/qdesktopservices_win.cpp b/src/gui/util/qdesktopservices_win.cpp index 8b120b4bf1..fe6d65994a 100644 --- a/src/gui/util/qdesktopservices_win.cpp +++ b/src/gui/util/qdesktopservices_win.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/util/qdesktopservices_x11.cpp b/src/gui/util/qdesktopservices_x11.cpp index cf8dce3734..e64833a20c 100644 --- a/src/gui/util/qdesktopservices_x11.cpp +++ b/src/gui/util/qdesktopservices_x11.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/util/qhexstring_p.h b/src/gui/util/qhexstring_p.h index 7cebce0650..7579e4ff78 100644 --- a/src/gui/util/qhexstring_p.h +++ b/src/gui/util/qhexstring_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/util/qvalidator.cpp b/src/gui/util/qvalidator.cpp index 37997c0359..5b637e4383 100644 --- a/src/gui/util/qvalidator.cpp +++ b/src/gui/util/qvalidator.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/gui/util/qvalidator.h b/src/gui/util/qvalidator.h index 5ea7fef4fc..de313aaf23 100644 --- a/src/gui/util/qvalidator.h +++ b/src/gui/util/qvalidator.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qabstractnetworkcache.cpp b/src/network/access/qabstractnetworkcache.cpp index c15337a0e5..638e93be53 100644 --- a/src/network/access/qabstractnetworkcache.cpp +++ b/src/network/access/qabstractnetworkcache.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qabstractnetworkcache.h b/src/network/access/qabstractnetworkcache.h index 3fff74cb5b..5d03756957 100644 --- a/src/network/access/qabstractnetworkcache.h +++ b/src/network/access/qabstractnetworkcache.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qabstractnetworkcache_p.h b/src/network/access/qabstractnetworkcache_p.h index 9b0628f829..162422f8c0 100644 --- a/src/network/access/qabstractnetworkcache_p.h +++ b/src/network/access/qabstractnetworkcache_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qftp.cpp b/src/network/access/qftp.cpp index eaed4dff5a..3dc22424f4 100644 --- a/src/network/access/qftp.cpp +++ b/src/network/access/qftp.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qftp.h b/src/network/access/qftp.h index 671b9ba7c7..326e967f3b 100644 --- a/src/network/access/qftp.h +++ b/src/network/access/qftp.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qhttp.cpp b/src/network/access/qhttp.cpp index f2b24221fe..067b7f95d7 100644 --- a/src/network/access/qhttp.cpp +++ b/src/network/access/qhttp.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qhttp.h b/src/network/access/qhttp.h index 83b23f85f9..5dd3b5bc3d 100644 --- a/src/network/access/qhttp.h +++ b/src/network/access/qhttp.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qhttpmultipart.cpp b/src/network/access/qhttpmultipart.cpp index 75456581f8..6de7a807e4 100644 --- a/src/network/access/qhttpmultipart.cpp +++ b/src/network/access/qhttpmultipart.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qhttpmultipart.h b/src/network/access/qhttpmultipart.h index 76e8e14b8a..317b068e3d 100644 --- a/src/network/access/qhttpmultipart.h +++ b/src/network/access/qhttpmultipart.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qhttpmultipart_p.h b/src/network/access/qhttpmultipart_p.h index f57b0eb8a2..0ab2fa1d7f 100644 --- a/src/network/access/qhttpmultipart_p.h +++ b/src/network/access/qhttpmultipart_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qhttpnetworkconnection.cpp b/src/network/access/qhttpnetworkconnection.cpp index c1544f08c6..4bbfa4740b 100644 --- a/src/network/access/qhttpnetworkconnection.cpp +++ b/src/network/access/qhttpnetworkconnection.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qhttpnetworkconnection_p.h b/src/network/access/qhttpnetworkconnection_p.h index 75da382145..8ce9bf24fe 100644 --- a/src/network/access/qhttpnetworkconnection_p.h +++ b/src/network/access/qhttpnetworkconnection_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qhttpnetworkconnectionchannel.cpp b/src/network/access/qhttpnetworkconnectionchannel.cpp index 1eabf3b99d..3acfe54ef7 100644 --- a/src/network/access/qhttpnetworkconnectionchannel.cpp +++ b/src/network/access/qhttpnetworkconnectionchannel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qhttpnetworkconnectionchannel_p.h b/src/network/access/qhttpnetworkconnectionchannel_p.h index b93d002de6..d5a0925f7d 100644 --- a/src/network/access/qhttpnetworkconnectionchannel_p.h +++ b/src/network/access/qhttpnetworkconnectionchannel_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qhttpnetworkheader.cpp b/src/network/access/qhttpnetworkheader.cpp index 1d457b90a7..531afe92e0 100644 --- a/src/network/access/qhttpnetworkheader.cpp +++ b/src/network/access/qhttpnetworkheader.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qhttpnetworkheader_p.h b/src/network/access/qhttpnetworkheader_p.h index 38db0506b9..00393b5e92 100644 --- a/src/network/access/qhttpnetworkheader_p.h +++ b/src/network/access/qhttpnetworkheader_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qhttpnetworkreply.cpp b/src/network/access/qhttpnetworkreply.cpp index e6d0d3238c..a9ba5d2b24 100644 --- a/src/network/access/qhttpnetworkreply.cpp +++ b/src/network/access/qhttpnetworkreply.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qhttpnetworkreply_p.h b/src/network/access/qhttpnetworkreply_p.h index a6bf3fcc8e..1bb0832d19 100644 --- a/src/network/access/qhttpnetworkreply_p.h +++ b/src/network/access/qhttpnetworkreply_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qhttpnetworkrequest.cpp b/src/network/access/qhttpnetworkrequest.cpp index cbc0d97e12..e39faaeaa8 100644 --- a/src/network/access/qhttpnetworkrequest.cpp +++ b/src/network/access/qhttpnetworkrequest.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qhttpnetworkrequest_p.h b/src/network/access/qhttpnetworkrequest_p.h index 4000ecad87..71e09eba06 100644 --- a/src/network/access/qhttpnetworkrequest_p.h +++ b/src/network/access/qhttpnetworkrequest_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qhttpthreaddelegate.cpp b/src/network/access/qhttpthreaddelegate.cpp index f0755337fc..323b7c71f6 100644 --- a/src/network/access/qhttpthreaddelegate.cpp +++ b/src/network/access/qhttpthreaddelegate.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qhttpthreaddelegate_p.h b/src/network/access/qhttpthreaddelegate_p.h index d97193d7c7..366d3bcc60 100644 --- a/src/network/access/qhttpthreaddelegate_p.h +++ b/src/network/access/qhttpthreaddelegate_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkaccessauthenticationmanager.cpp b/src/network/access/qnetworkaccessauthenticationmanager.cpp index 9551b767df..30e3174f25 100644 --- a/src/network/access/qnetworkaccessauthenticationmanager.cpp +++ b/src/network/access/qnetworkaccessauthenticationmanager.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkaccessauthenticationmanager_p.h b/src/network/access/qnetworkaccessauthenticationmanager_p.h index 718c58fc8d..7e7be8ca8a 100644 --- a/src/network/access/qnetworkaccessauthenticationmanager_p.h +++ b/src/network/access/qnetworkaccessauthenticationmanager_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkaccessbackend.cpp b/src/network/access/qnetworkaccessbackend.cpp index 8dfcb33282..6647c58f8d 100644 --- a/src/network/access/qnetworkaccessbackend.cpp +++ b/src/network/access/qnetworkaccessbackend.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkaccessbackend_p.h b/src/network/access/qnetworkaccessbackend_p.h index 7f6aff9b79..f9563da4a7 100644 --- a/src/network/access/qnetworkaccessbackend_p.h +++ b/src/network/access/qnetworkaccessbackend_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkaccesscache.cpp b/src/network/access/qnetworkaccesscache.cpp index 0458a59e22..2594e53949 100644 --- a/src/network/access/qnetworkaccesscache.cpp +++ b/src/network/access/qnetworkaccesscache.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkaccesscache_p.h b/src/network/access/qnetworkaccesscache_p.h index b9f468e767..813ba3c35f 100644 --- a/src/network/access/qnetworkaccesscache_p.h +++ b/src/network/access/qnetworkaccesscache_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkaccesscachebackend.cpp b/src/network/access/qnetworkaccesscachebackend.cpp index 1881dac126..baf6292124 100644 --- a/src/network/access/qnetworkaccesscachebackend.cpp +++ b/src/network/access/qnetworkaccesscachebackend.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkaccesscachebackend_p.h b/src/network/access/qnetworkaccesscachebackend_p.h index be0f2fb84a..5444703793 100644 --- a/src/network/access/qnetworkaccesscachebackend_p.h +++ b/src/network/access/qnetworkaccesscachebackend_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkaccessdebugpipebackend.cpp b/src/network/access/qnetworkaccessdebugpipebackend.cpp index 6a59bad2bd..678d6e404e 100644 --- a/src/network/access/qnetworkaccessdebugpipebackend.cpp +++ b/src/network/access/qnetworkaccessdebugpipebackend.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkaccessdebugpipebackend_p.h b/src/network/access/qnetworkaccessdebugpipebackend_p.h index d22acf7c9f..411c38b3ba 100644 --- a/src/network/access/qnetworkaccessdebugpipebackend_p.h +++ b/src/network/access/qnetworkaccessdebugpipebackend_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkaccessfilebackend.cpp b/src/network/access/qnetworkaccessfilebackend.cpp index 6a8f0993a0..0080e23a8f 100644 --- a/src/network/access/qnetworkaccessfilebackend.cpp +++ b/src/network/access/qnetworkaccessfilebackend.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkaccessfilebackend_p.h b/src/network/access/qnetworkaccessfilebackend_p.h index 795d4b9d25..2fbf806851 100644 --- a/src/network/access/qnetworkaccessfilebackend_p.h +++ b/src/network/access/qnetworkaccessfilebackend_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkaccessftpbackend.cpp b/src/network/access/qnetworkaccessftpbackend.cpp index 0461da284b..7b7ebb5e46 100644 --- a/src/network/access/qnetworkaccessftpbackend.cpp +++ b/src/network/access/qnetworkaccessftpbackend.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkaccessftpbackend_p.h b/src/network/access/qnetworkaccessftpbackend_p.h index 2dc3c1becf..0e286d99c7 100644 --- a/src/network/access/qnetworkaccessftpbackend_p.h +++ b/src/network/access/qnetworkaccessftpbackend_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkaccessmanager.cpp b/src/network/access/qnetworkaccessmanager.cpp index 5b6919bc33..32b91708ad 100644 --- a/src/network/access/qnetworkaccessmanager.cpp +++ b/src/network/access/qnetworkaccessmanager.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkaccessmanager.h b/src/network/access/qnetworkaccessmanager.h index c707243ec6..72fd86c5a5 100644 --- a/src/network/access/qnetworkaccessmanager.h +++ b/src/network/access/qnetworkaccessmanager.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkaccessmanager_p.h b/src/network/access/qnetworkaccessmanager_p.h index 39a9874acc..bc8df575a0 100644 --- a/src/network/access/qnetworkaccessmanager_p.h +++ b/src/network/access/qnetworkaccessmanager_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkcookie.cpp b/src/network/access/qnetworkcookie.cpp index 06707385fb..a5c4fb516c 100644 --- a/src/network/access/qnetworkcookie.cpp +++ b/src/network/access/qnetworkcookie.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkcookie.h b/src/network/access/qnetworkcookie.h index 0f7690c174..9c20fe4a5a 100644 --- a/src/network/access/qnetworkcookie.h +++ b/src/network/access/qnetworkcookie.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkcookie_p.h b/src/network/access/qnetworkcookie_p.h index a059a7abbd..7e45219fce 100644 --- a/src/network/access/qnetworkcookie_p.h +++ b/src/network/access/qnetworkcookie_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkcookiejar.cpp b/src/network/access/qnetworkcookiejar.cpp index a2fa689256..54c2ccfaba 100644 --- a/src/network/access/qnetworkcookiejar.cpp +++ b/src/network/access/qnetworkcookiejar.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkcookiejar.h b/src/network/access/qnetworkcookiejar.h index 006d58eafe..c53d45359d 100644 --- a/src/network/access/qnetworkcookiejar.h +++ b/src/network/access/qnetworkcookiejar.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkcookiejar_p.h b/src/network/access/qnetworkcookiejar_p.h index 34858d9c92..32fdecdb50 100644 --- a/src/network/access/qnetworkcookiejar_p.h +++ b/src/network/access/qnetworkcookiejar_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkdiskcache.cpp b/src/network/access/qnetworkdiskcache.cpp index 1c515c2ac7..8dd2033a35 100644 --- a/src/network/access/qnetworkdiskcache.cpp +++ b/src/network/access/qnetworkdiskcache.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkdiskcache.h b/src/network/access/qnetworkdiskcache.h index 5492a02d29..b8f1de5930 100644 --- a/src/network/access/qnetworkdiskcache.h +++ b/src/network/access/qnetworkdiskcache.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkdiskcache_p.h b/src/network/access/qnetworkdiskcache_p.h index ceb300d08c..d8f386e9eb 100644 --- a/src/network/access/qnetworkdiskcache_p.h +++ b/src/network/access/qnetworkdiskcache_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkreply.cpp b/src/network/access/qnetworkreply.cpp index 1ce7e8fce5..c38414ea44 100644 --- a/src/network/access/qnetworkreply.cpp +++ b/src/network/access/qnetworkreply.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkreply.h b/src/network/access/qnetworkreply.h index f8352a2dfe..dadbe4c958 100644 --- a/src/network/access/qnetworkreply.h +++ b/src/network/access/qnetworkreply.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkreply_p.h b/src/network/access/qnetworkreply_p.h index 687e65252e..b725a11520 100644 --- a/src/network/access/qnetworkreply_p.h +++ b/src/network/access/qnetworkreply_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkreplydataimpl.cpp b/src/network/access/qnetworkreplydataimpl.cpp index 46b41104eb..1c12eadd6c 100644 --- a/src/network/access/qnetworkreplydataimpl.cpp +++ b/src/network/access/qnetworkreplydataimpl.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkreplydataimpl_p.h b/src/network/access/qnetworkreplydataimpl_p.h index 11e17d1c43..0b47bbbb34 100644 --- a/src/network/access/qnetworkreplydataimpl_p.h +++ b/src/network/access/qnetworkreplydataimpl_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkreplyfileimpl.cpp b/src/network/access/qnetworkreplyfileimpl.cpp index 7a0c5c7fcc..0b4c89987c 100644 --- a/src/network/access/qnetworkreplyfileimpl.cpp +++ b/src/network/access/qnetworkreplyfileimpl.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkreplyfileimpl_p.h b/src/network/access/qnetworkreplyfileimpl_p.h index c9f5def12a..c097fedb68 100644 --- a/src/network/access/qnetworkreplyfileimpl_p.h +++ b/src/network/access/qnetworkreplyfileimpl_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkreplyhttpimpl.cpp b/src/network/access/qnetworkreplyhttpimpl.cpp index 2df18b24d9..284b8c64dc 100644 --- a/src/network/access/qnetworkreplyhttpimpl.cpp +++ b/src/network/access/qnetworkreplyhttpimpl.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkreplyhttpimpl_p.h b/src/network/access/qnetworkreplyhttpimpl_p.h index 0c6721b646..346cc6464c 100644 --- a/src/network/access/qnetworkreplyhttpimpl_p.h +++ b/src/network/access/qnetworkreplyhttpimpl_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkreplyimpl.cpp b/src/network/access/qnetworkreplyimpl.cpp index 46cc364172..8513207ef7 100644 --- a/src/network/access/qnetworkreplyimpl.cpp +++ b/src/network/access/qnetworkreplyimpl.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkreplyimpl_p.h b/src/network/access/qnetworkreplyimpl_p.h index 089c87e693..aa3af3864b 100644 --- a/src/network/access/qnetworkreplyimpl_p.h +++ b/src/network/access/qnetworkreplyimpl_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkrequest.cpp b/src/network/access/qnetworkrequest.cpp index 608aaa5eec..c909ce2fea 100644 --- a/src/network/access/qnetworkrequest.cpp +++ b/src/network/access/qnetworkrequest.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkrequest.h b/src/network/access/qnetworkrequest.h index aa86007127..66bfcf5942 100644 --- a/src/network/access/qnetworkrequest.h +++ b/src/network/access/qnetworkrequest.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/access/qnetworkrequest_p.h b/src/network/access/qnetworkrequest_p.h index 54251c82a7..eb61f092f1 100644 --- a/src/network/access/qnetworkrequest_p.h +++ b/src/network/access/qnetworkrequest_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/bearer/qbearerengine.cpp b/src/network/bearer/qbearerengine.cpp index b761eb2e9b..5cf52af744 100644 --- a/src/network/bearer/qbearerengine.cpp +++ b/src/network/bearer/qbearerengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/bearer/qbearerengine_p.h b/src/network/bearer/qbearerengine_p.h index 64af68a520..42481fcd15 100644 --- a/src/network/bearer/qbearerengine_p.h +++ b/src/network/bearer/qbearerengine_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/bearer/qbearerplugin.cpp b/src/network/bearer/qbearerplugin.cpp index bea7116451..02f6e36807 100644 --- a/src/network/bearer/qbearerplugin.cpp +++ b/src/network/bearer/qbearerplugin.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/bearer/qbearerplugin_p.h b/src/network/bearer/qbearerplugin_p.h index 424dfe1edd..6533cebf4f 100644 --- a/src/network/bearer/qbearerplugin_p.h +++ b/src/network/bearer/qbearerplugin_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/bearer/qnetworkconfigmanager.cpp b/src/network/bearer/qnetworkconfigmanager.cpp index 28bbafab36..1a96ba77a9 100644 --- a/src/network/bearer/qnetworkconfigmanager.cpp +++ b/src/network/bearer/qnetworkconfigmanager.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/bearer/qnetworkconfigmanager.h b/src/network/bearer/qnetworkconfigmanager.h index e317cdfb44..5f4e64b957 100644 --- a/src/network/bearer/qnetworkconfigmanager.h +++ b/src/network/bearer/qnetworkconfigmanager.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/bearer/qnetworkconfigmanager_p.cpp b/src/network/bearer/qnetworkconfigmanager_p.cpp index 54cd898c67..5f8f0dff53 100644 --- a/src/network/bearer/qnetworkconfigmanager_p.cpp +++ b/src/network/bearer/qnetworkconfigmanager_p.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/bearer/qnetworkconfigmanager_p.h b/src/network/bearer/qnetworkconfigmanager_p.h index e73e9bb399..dcd736cc6e 100644 --- a/src/network/bearer/qnetworkconfigmanager_p.h +++ b/src/network/bearer/qnetworkconfigmanager_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/bearer/qnetworkconfiguration.cpp b/src/network/bearer/qnetworkconfiguration.cpp index e207feb97c..150e1cf715 100644 --- a/src/network/bearer/qnetworkconfiguration.cpp +++ b/src/network/bearer/qnetworkconfiguration.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/bearer/qnetworkconfiguration.h b/src/network/bearer/qnetworkconfiguration.h index 4839b7b809..5b650d0303 100644 --- a/src/network/bearer/qnetworkconfiguration.h +++ b/src/network/bearer/qnetworkconfiguration.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/bearer/qnetworkconfiguration_p.h b/src/network/bearer/qnetworkconfiguration_p.h index edb7105e6e..9acda9210b 100644 --- a/src/network/bearer/qnetworkconfiguration_p.h +++ b/src/network/bearer/qnetworkconfiguration_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/bearer/qnetworksession.cpp b/src/network/bearer/qnetworksession.cpp index f63298dba1..7f76fde4f0 100644 --- a/src/network/bearer/qnetworksession.cpp +++ b/src/network/bearer/qnetworksession.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/bearer/qnetworksession.h b/src/network/bearer/qnetworksession.h index 1eeea02ae1..5321875078 100644 --- a/src/network/bearer/qnetworksession.h +++ b/src/network/bearer/qnetworksession.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/bearer/qnetworksession_p.h b/src/network/bearer/qnetworksession_p.h index ddf0428b52..c43762136d 100644 --- a/src/network/bearer/qnetworksession_p.h +++ b/src/network/bearer/qnetworksession_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/bearer/qsharednetworksession.cpp b/src/network/bearer/qsharednetworksession.cpp index f10eaaa489..358bc95377 100644 --- a/src/network/bearer/qsharednetworksession.cpp +++ b/src/network/bearer/qsharednetworksession.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/bearer/qsharednetworksession_p.h b/src/network/bearer/qsharednetworksession_p.h index 31b61b53ec..86946955a1 100644 --- a/src/network/bearer/qsharednetworksession_p.h +++ b/src/network/bearer/qsharednetworksession_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/kernel/qauthenticator.cpp b/src/network/kernel/qauthenticator.cpp index 3fa25368bb..fa5906a3ed 100644 --- a/src/network/kernel/qauthenticator.cpp +++ b/src/network/kernel/qauthenticator.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/kernel/qauthenticator.h b/src/network/kernel/qauthenticator.h index 37649e905b..958532e9dc 100644 --- a/src/network/kernel/qauthenticator.h +++ b/src/network/kernel/qauthenticator.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/kernel/qauthenticator_p.h b/src/network/kernel/qauthenticator_p.h index 937f4e0f04..4b79202d92 100644 --- a/src/network/kernel/qauthenticator_p.h +++ b/src/network/kernel/qauthenticator_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/kernel/qhostaddress.cpp b/src/network/kernel/qhostaddress.cpp index b662a1d610..3bda5410d0 100644 --- a/src/network/kernel/qhostaddress.cpp +++ b/src/network/kernel/qhostaddress.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/kernel/qhostaddress.h b/src/network/kernel/qhostaddress.h index 83e8a7ce3c..4747499e38 100644 --- a/src/network/kernel/qhostaddress.h +++ b/src/network/kernel/qhostaddress.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/kernel/qhostaddress_p.h b/src/network/kernel/qhostaddress_p.h index 255d706858..bc863a8562 100644 --- a/src/network/kernel/qhostaddress_p.h +++ b/src/network/kernel/qhostaddress_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/kernel/qhostinfo.cpp b/src/network/kernel/qhostinfo.cpp index 465345c085..1361799a4d 100644 --- a/src/network/kernel/qhostinfo.cpp +++ b/src/network/kernel/qhostinfo.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/kernel/qhostinfo.h b/src/network/kernel/qhostinfo.h index 80e39573ed..d84d6d72fa 100644 --- a/src/network/kernel/qhostinfo.h +++ b/src/network/kernel/qhostinfo.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/kernel/qhostinfo_p.h b/src/network/kernel/qhostinfo_p.h index fb7ae37c53..deb76c0ee9 100644 --- a/src/network/kernel/qhostinfo_p.h +++ b/src/network/kernel/qhostinfo_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/kernel/qhostinfo_unix.cpp b/src/network/kernel/qhostinfo_unix.cpp index 37444ae2d9..85df770654 100644 --- a/src/network/kernel/qhostinfo_unix.cpp +++ b/src/network/kernel/qhostinfo_unix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/kernel/qhostinfo_win.cpp b/src/network/kernel/qhostinfo_win.cpp index 10528634db..fc3724f879 100644 --- a/src/network/kernel/qhostinfo_win.cpp +++ b/src/network/kernel/qhostinfo_win.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/kernel/qnetworkinterface.cpp b/src/network/kernel/qnetworkinterface.cpp index ed479b2b3f..1f69d9fa1b 100644 --- a/src/network/kernel/qnetworkinterface.cpp +++ b/src/network/kernel/qnetworkinterface.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/kernel/qnetworkinterface.h b/src/network/kernel/qnetworkinterface.h index a749e53250..17a8e09cee 100644 --- a/src/network/kernel/qnetworkinterface.h +++ b/src/network/kernel/qnetworkinterface.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/kernel/qnetworkinterface_p.h b/src/network/kernel/qnetworkinterface_p.h index d58909eb6a..a964f9bc54 100644 --- a/src/network/kernel/qnetworkinterface_p.h +++ b/src/network/kernel/qnetworkinterface_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/kernel/qnetworkinterface_unix.cpp b/src/network/kernel/qnetworkinterface_unix.cpp index 528e195ef6..8bd7e32766 100644 --- a/src/network/kernel/qnetworkinterface_unix.cpp +++ b/src/network/kernel/qnetworkinterface_unix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/kernel/qnetworkinterface_win.cpp b/src/network/kernel/qnetworkinterface_win.cpp index e8b96f6c47..741e8e73ae 100644 --- a/src/network/kernel/qnetworkinterface_win.cpp +++ b/src/network/kernel/qnetworkinterface_win.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/kernel/qnetworkinterface_win_p.h b/src/network/kernel/qnetworkinterface_win_p.h index f56d103a5f..0445e512d2 100644 --- a/src/network/kernel/qnetworkinterface_win_p.h +++ b/src/network/kernel/qnetworkinterface_win_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/kernel/qnetworkproxy.cpp b/src/network/kernel/qnetworkproxy.cpp index 19cf67feec..551b90116a 100644 --- a/src/network/kernel/qnetworkproxy.cpp +++ b/src/network/kernel/qnetworkproxy.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/kernel/qnetworkproxy.h b/src/network/kernel/qnetworkproxy.h index 07da51e5ec..472c220e62 100644 --- a/src/network/kernel/qnetworkproxy.h +++ b/src/network/kernel/qnetworkproxy.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/kernel/qnetworkproxy_generic.cpp b/src/network/kernel/qnetworkproxy_generic.cpp index f78f63d561..9328eb379a 100644 --- a/src/network/kernel/qnetworkproxy_generic.cpp +++ b/src/network/kernel/qnetworkproxy_generic.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/kernel/qnetworkproxy_mac.cpp b/src/network/kernel/qnetworkproxy_mac.cpp index 56c25d66f5..a994976860 100644 --- a/src/network/kernel/qnetworkproxy_mac.cpp +++ b/src/network/kernel/qnetworkproxy_mac.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/kernel/qnetworkproxy_win.cpp b/src/network/kernel/qnetworkproxy_win.cpp index 84112867e0..84b2b79c11 100644 --- a/src/network/kernel/qnetworkproxy_win.cpp +++ b/src/network/kernel/qnetworkproxy_win.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/kernel/qurlinfo.cpp b/src/network/kernel/qurlinfo.cpp index fed954d30a..8b320a9e03 100644 --- a/src/network/kernel/qurlinfo.cpp +++ b/src/network/kernel/qurlinfo.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/kernel/qurlinfo.h b/src/network/kernel/qurlinfo.h index bd460867be..3bcdff6a9c 100644 --- a/src/network/kernel/qurlinfo.h +++ b/src/network/kernel/qurlinfo.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/socket/qabstractsocket.cpp b/src/network/socket/qabstractsocket.cpp index b8e301523f..9437bbaa8c 100644 --- a/src/network/socket/qabstractsocket.cpp +++ b/src/network/socket/qabstractsocket.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/socket/qabstractsocket.h b/src/network/socket/qabstractsocket.h index 15e24de59c..3b98a32e10 100644 --- a/src/network/socket/qabstractsocket.h +++ b/src/network/socket/qabstractsocket.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/socket/qabstractsocket_p.h b/src/network/socket/qabstractsocket_p.h index 978fb1433a..937ea53e37 100644 --- a/src/network/socket/qabstractsocket_p.h +++ b/src/network/socket/qabstractsocket_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/socket/qabstractsocketengine.cpp b/src/network/socket/qabstractsocketengine.cpp index 7fc0ea3993..70b1748fcd 100644 --- a/src/network/socket/qabstractsocketengine.cpp +++ b/src/network/socket/qabstractsocketengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/socket/qabstractsocketengine_p.h b/src/network/socket/qabstractsocketengine_p.h index e58cc5ab95..ae7119962b 100644 --- a/src/network/socket/qabstractsocketengine_p.h +++ b/src/network/socket/qabstractsocketengine_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/socket/qhttpsocketengine.cpp b/src/network/socket/qhttpsocketengine.cpp index f79795b8f8..95e46019b0 100644 --- a/src/network/socket/qhttpsocketengine.cpp +++ b/src/network/socket/qhttpsocketengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/socket/qhttpsocketengine_p.h b/src/network/socket/qhttpsocketengine_p.h index 476d689c11..a8484b8920 100644 --- a/src/network/socket/qhttpsocketengine_p.h +++ b/src/network/socket/qhttpsocketengine_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/socket/qlocalserver.cpp b/src/network/socket/qlocalserver.cpp index ffd87aa946..fc5fe3443e 100644 --- a/src/network/socket/qlocalserver.cpp +++ b/src/network/socket/qlocalserver.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/socket/qlocalserver.h b/src/network/socket/qlocalserver.h index 4468bf90e3..6887c16056 100644 --- a/src/network/socket/qlocalserver.h +++ b/src/network/socket/qlocalserver.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/socket/qlocalserver_p.h b/src/network/socket/qlocalserver_p.h index ed699fc1d5..d762818692 100644 --- a/src/network/socket/qlocalserver_p.h +++ b/src/network/socket/qlocalserver_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/socket/qlocalserver_tcp.cpp b/src/network/socket/qlocalserver_tcp.cpp index 47c4204802..cb4ee53f6a 100644 --- a/src/network/socket/qlocalserver_tcp.cpp +++ b/src/network/socket/qlocalserver_tcp.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/socket/qlocalserver_unix.cpp b/src/network/socket/qlocalserver_unix.cpp index e0115de8d2..5859ab0080 100644 --- a/src/network/socket/qlocalserver_unix.cpp +++ b/src/network/socket/qlocalserver_unix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/socket/qlocalserver_win.cpp b/src/network/socket/qlocalserver_win.cpp index 8e6bbc6deb..bdbe4d74f1 100644 --- a/src/network/socket/qlocalserver_win.cpp +++ b/src/network/socket/qlocalserver_win.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/socket/qlocalsocket.cpp b/src/network/socket/qlocalsocket.cpp index 93c98b7ab6..b2bc25061d 100644 --- a/src/network/socket/qlocalsocket.cpp +++ b/src/network/socket/qlocalsocket.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/socket/qlocalsocket.h b/src/network/socket/qlocalsocket.h index 4025f9b93d..2de6aa5098 100644 --- a/src/network/socket/qlocalsocket.h +++ b/src/network/socket/qlocalsocket.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/socket/qlocalsocket_p.h b/src/network/socket/qlocalsocket_p.h index b256f84325..3541d950e8 100644 --- a/src/network/socket/qlocalsocket_p.h +++ b/src/network/socket/qlocalsocket_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/socket/qlocalsocket_tcp.cpp b/src/network/socket/qlocalsocket_tcp.cpp index 4585fddbc3..5a2fe3fcf7 100644 --- a/src/network/socket/qlocalsocket_tcp.cpp +++ b/src/network/socket/qlocalsocket_tcp.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/socket/qlocalsocket_unix.cpp b/src/network/socket/qlocalsocket_unix.cpp index ae8ec83474..81875b4029 100644 --- a/src/network/socket/qlocalsocket_unix.cpp +++ b/src/network/socket/qlocalsocket_unix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/socket/qlocalsocket_win.cpp b/src/network/socket/qlocalsocket_win.cpp index 8b18c13d65..cb417990b1 100644 --- a/src/network/socket/qlocalsocket_win.cpp +++ b/src/network/socket/qlocalsocket_win.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/socket/qnativesocketengine.cpp b/src/network/socket/qnativesocketengine.cpp index 5e3e22a23e..a63101dd23 100644 --- a/src/network/socket/qnativesocketengine.cpp +++ b/src/network/socket/qnativesocketengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/socket/qnativesocketengine_p.h b/src/network/socket/qnativesocketengine_p.h index a024cd42d1..68aa2e6e40 100644 --- a/src/network/socket/qnativesocketengine_p.h +++ b/src/network/socket/qnativesocketengine_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/socket/qnativesocketengine_unix.cpp b/src/network/socket/qnativesocketengine_unix.cpp index c0a55b9a26..324705d998 100644 --- a/src/network/socket/qnativesocketengine_unix.cpp +++ b/src/network/socket/qnativesocketengine_unix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/socket/qnativesocketengine_win.cpp b/src/network/socket/qnativesocketengine_win.cpp index b9a9c613d4..5643314f17 100644 --- a/src/network/socket/qnativesocketengine_win.cpp +++ b/src/network/socket/qnativesocketengine_win.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/socket/qnet_unix_p.h b/src/network/socket/qnet_unix_p.h index fe22c329e4..7b2ba54648 100644 --- a/src/network/socket/qnet_unix_p.h +++ b/src/network/socket/qnet_unix_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/socket/qsocks5socketengine.cpp b/src/network/socket/qsocks5socketengine.cpp index 5f510fa84b..aafbdcb8bc 100644 --- a/src/network/socket/qsocks5socketengine.cpp +++ b/src/network/socket/qsocks5socketengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/socket/qsocks5socketengine_p.h b/src/network/socket/qsocks5socketengine_p.h index 9b2f6e3ade..bc30afbb21 100644 --- a/src/network/socket/qsocks5socketengine_p.h +++ b/src/network/socket/qsocks5socketengine_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/socket/qtcpserver.cpp b/src/network/socket/qtcpserver.cpp index 500d383e0f..7d278a8d15 100644 --- a/src/network/socket/qtcpserver.cpp +++ b/src/network/socket/qtcpserver.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/socket/qtcpserver.h b/src/network/socket/qtcpserver.h index 2fe090af32..4900ba89fe 100644 --- a/src/network/socket/qtcpserver.h +++ b/src/network/socket/qtcpserver.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/socket/qtcpsocket.cpp b/src/network/socket/qtcpsocket.cpp index 78fb4cd050..f960010e0c 100644 --- a/src/network/socket/qtcpsocket.cpp +++ b/src/network/socket/qtcpsocket.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/socket/qtcpsocket.h b/src/network/socket/qtcpsocket.h index 8323836a54..aa2e89d840 100644 --- a/src/network/socket/qtcpsocket.h +++ b/src/network/socket/qtcpsocket.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/socket/qtcpsocket_p.h b/src/network/socket/qtcpsocket_p.h index 1ecc274fcd..33672539cc 100644 --- a/src/network/socket/qtcpsocket_p.h +++ b/src/network/socket/qtcpsocket_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/socket/qudpsocket.cpp b/src/network/socket/qudpsocket.cpp index e12034d86b..f378fea7b9 100644 --- a/src/network/socket/qudpsocket.cpp +++ b/src/network/socket/qudpsocket.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/socket/qudpsocket.h b/src/network/socket/qudpsocket.h index 068c20b9c4..ed5f539732 100644 --- a/src/network/socket/qudpsocket.h +++ b/src/network/socket/qudpsocket.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/ssl/qssl.cpp b/src/network/ssl/qssl.cpp index d0d7584ff1..7bb68956ee 100644 --- a/src/network/ssl/qssl.cpp +++ b/src/network/ssl/qssl.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/ssl/qssl.h b/src/network/ssl/qssl.h index 0793a84671..7da5a78c56 100644 --- a/src/network/ssl/qssl.h +++ b/src/network/ssl/qssl.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/ssl/qsslcertificate.cpp b/src/network/ssl/qsslcertificate.cpp index d1624faaea..94cf99c6ed 100644 --- a/src/network/ssl/qsslcertificate.cpp +++ b/src/network/ssl/qsslcertificate.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/ssl/qsslcertificate.h b/src/network/ssl/qsslcertificate.h index dcc7f64aa4..22721ad6b9 100644 --- a/src/network/ssl/qsslcertificate.h +++ b/src/network/ssl/qsslcertificate.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/ssl/qsslcertificate_p.h b/src/network/ssl/qsslcertificate_p.h index c4a833460a..031165b267 100644 --- a/src/network/ssl/qsslcertificate_p.h +++ b/src/network/ssl/qsslcertificate_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/ssl/qsslcipher.cpp b/src/network/ssl/qsslcipher.cpp index a583257a88..3c59a8ebf9 100644 --- a/src/network/ssl/qsslcipher.cpp +++ b/src/network/ssl/qsslcipher.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/ssl/qsslcipher.h b/src/network/ssl/qsslcipher.h index d9d3b9b31e..112b7753a7 100644 --- a/src/network/ssl/qsslcipher.h +++ b/src/network/ssl/qsslcipher.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/ssl/qsslcipher_p.h b/src/network/ssl/qsslcipher_p.h index a47c159ade..d4117abe3a 100644 --- a/src/network/ssl/qsslcipher_p.h +++ b/src/network/ssl/qsslcipher_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/ssl/qsslconfiguration.cpp b/src/network/ssl/qsslconfiguration.cpp index 0e9eb5db62..f29bb02813 100644 --- a/src/network/ssl/qsslconfiguration.cpp +++ b/src/network/ssl/qsslconfiguration.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/ssl/qsslconfiguration.h b/src/network/ssl/qsslconfiguration.h index ff8c8fc4b4..961c821ffc 100644 --- a/src/network/ssl/qsslconfiguration.h +++ b/src/network/ssl/qsslconfiguration.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/ssl/qsslconfiguration_p.h b/src/network/ssl/qsslconfiguration_p.h index 59078ae7cc..d9f41d6351 100644 --- a/src/network/ssl/qsslconfiguration_p.h +++ b/src/network/ssl/qsslconfiguration_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/ssl/qsslerror.cpp b/src/network/ssl/qsslerror.cpp index 5091ed27a4..39e6d6114e 100644 --- a/src/network/ssl/qsslerror.cpp +++ b/src/network/ssl/qsslerror.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/ssl/qsslerror.h b/src/network/ssl/qsslerror.h index 451c95f180..552d91da48 100644 --- a/src/network/ssl/qsslerror.h +++ b/src/network/ssl/qsslerror.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/ssl/qsslkey.cpp b/src/network/ssl/qsslkey.cpp index 580b71bca9..cb038d726f 100644 --- a/src/network/ssl/qsslkey.cpp +++ b/src/network/ssl/qsslkey.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/ssl/qsslkey.h b/src/network/ssl/qsslkey.h index 7064d22eb4..eadb79dabe 100644 --- a/src/network/ssl/qsslkey.h +++ b/src/network/ssl/qsslkey.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/ssl/qsslkey_p.h b/src/network/ssl/qsslkey_p.h index 14075ecad0..1beb2a608a 100644 --- a/src/network/ssl/qsslkey_p.h +++ b/src/network/ssl/qsslkey_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/ssl/qsslsocket.cpp b/src/network/ssl/qsslsocket.cpp index e3dd6ae0c5..e9ed484e3d 100644 --- a/src/network/ssl/qsslsocket.cpp +++ b/src/network/ssl/qsslsocket.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/ssl/qsslsocket.h b/src/network/ssl/qsslsocket.h index 803e79e0c4..0450bd3d09 100644 --- a/src/network/ssl/qsslsocket.h +++ b/src/network/ssl/qsslsocket.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/ssl/qsslsocket_openssl.cpp b/src/network/ssl/qsslsocket_openssl.cpp index d24a12c7a5..f22d0bd2e5 100644 --- a/src/network/ssl/qsslsocket_openssl.cpp +++ b/src/network/ssl/qsslsocket_openssl.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/ssl/qsslsocket_openssl_p.h b/src/network/ssl/qsslsocket_openssl_p.h index 371049c177..4d1ed9e681 100644 --- a/src/network/ssl/qsslsocket_openssl_p.h +++ b/src/network/ssl/qsslsocket_openssl_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/ssl/qsslsocket_openssl_symbols.cpp b/src/network/ssl/qsslsocket_openssl_symbols.cpp index 70eb596525..c3bee3edd2 100644 --- a/src/network/ssl/qsslsocket_openssl_symbols.cpp +++ b/src/network/ssl/qsslsocket_openssl_symbols.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/ssl/qsslsocket_openssl_symbols_p.h b/src/network/ssl/qsslsocket_openssl_symbols_p.h index cc3da512dc..1f1e842c13 100644 --- a/src/network/ssl/qsslsocket_openssl_symbols_p.h +++ b/src/network/ssl/qsslsocket_openssl_symbols_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/network/ssl/qsslsocket_p.h b/src/network/ssl/qsslsocket_p.h index b1dc656e88..6fa443d0c7 100644 --- a/src/network/ssl/qsslsocket_p.h +++ b/src/network/ssl/qsslsocket_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/gl2paintengineex/qgl2pexvertexarray.cpp b/src/opengl/gl2paintengineex/qgl2pexvertexarray.cpp index 4374f80d35..50444ecc86 100644 --- a/src/opengl/gl2paintengineex/qgl2pexvertexarray.cpp +++ b/src/opengl/gl2paintengineex/qgl2pexvertexarray.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/gl2paintengineex/qgl2pexvertexarray_p.h b/src/opengl/gl2paintengineex/qgl2pexvertexarray_p.h index 904d20bdbb..8324bab28e 100644 --- a/src/opengl/gl2paintengineex/qgl2pexvertexarray_p.h +++ b/src/opengl/gl2paintengineex/qgl2pexvertexarray_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/gl2paintengineex/qglcustomshaderstage.cpp b/src/opengl/gl2paintengineex/qglcustomshaderstage.cpp index 550b65237b..9f1cd3cf32 100644 --- a/src/opengl/gl2paintengineex/qglcustomshaderstage.cpp +++ b/src/opengl/gl2paintengineex/qglcustomshaderstage.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/gl2paintengineex/qglcustomshaderstage_p.h b/src/opengl/gl2paintengineex/qglcustomshaderstage_p.h index 392c7775f8..166779cd75 100644 --- a/src/opengl/gl2paintengineex/qglcustomshaderstage_p.h +++ b/src/opengl/gl2paintengineex/qglcustomshaderstage_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/gl2paintengineex/qglengineshadermanager.cpp b/src/opengl/gl2paintengineex/qglengineshadermanager.cpp index aebdce6e01..8755fbc938 100644 --- a/src/opengl/gl2paintengineex/qglengineshadermanager.cpp +++ b/src/opengl/gl2paintengineex/qglengineshadermanager.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/gl2paintengineex/qglengineshadermanager_p.h b/src/opengl/gl2paintengineex/qglengineshadermanager_p.h index 58c761df43..fc922928cd 100644 --- a/src/opengl/gl2paintengineex/qglengineshadermanager_p.h +++ b/src/opengl/gl2paintengineex/qglengineshadermanager_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/gl2paintengineex/qglengineshadersource_p.h b/src/opengl/gl2paintengineex/qglengineshadersource_p.h index 1d35124bc8..8a6bce0d8c 100644 --- a/src/opengl/gl2paintengineex/qglengineshadersource_p.h +++ b/src/opengl/gl2paintengineex/qglengineshadersource_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/gl2paintengineex/qglgradientcache.cpp b/src/opengl/gl2paintengineex/qglgradientcache.cpp index 6ca09ba140..96a8a4c33a 100644 --- a/src/opengl/gl2paintengineex/qglgradientcache.cpp +++ b/src/opengl/gl2paintengineex/qglgradientcache.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/gl2paintengineex/qglgradientcache_p.h b/src/opengl/gl2paintengineex/qglgradientcache_p.h index 600085a75f..105afb157e 100644 --- a/src/opengl/gl2paintengineex/qglgradientcache_p.h +++ b/src/opengl/gl2paintengineex/qglgradientcache_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/gl2paintengineex/qglshadercache_meego_p.h b/src/opengl/gl2paintengineex/qglshadercache_meego_p.h index 5f239a698d..2d013ae77a 100644 --- a/src/opengl/gl2paintengineex/qglshadercache_meego_p.h +++ b/src/opengl/gl2paintengineex/qglshadercache_meego_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/gl2paintengineex/qglshadercache_p.h b/src/opengl/gl2paintengineex/qglshadercache_p.h index 9fd16fcff9..26f5076a5a 100644 --- a/src/opengl/gl2paintengineex/qglshadercache_p.h +++ b/src/opengl/gl2paintengineex/qglshadercache_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp b/src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp index 45ac639286..388c3a36f9 100644 --- a/src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp +++ b/src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/gl2paintengineex/qpaintengineex_opengl2_p.h b/src/opengl/gl2paintengineex/qpaintengineex_opengl2_p.h index dbf760929c..629a0f3ddb 100644 --- a/src/opengl/gl2paintengineex/qpaintengineex_opengl2_p.h +++ b/src/opengl/gl2paintengineex/qpaintengineex_opengl2_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/gl2paintengineex/qtextureglyphcache_gl.cpp b/src/opengl/gl2paintengineex/qtextureglyphcache_gl.cpp index 3a3abb19d4..c3f0257100 100644 --- a/src/opengl/gl2paintengineex/qtextureglyphcache_gl.cpp +++ b/src/opengl/gl2paintengineex/qtextureglyphcache_gl.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/gl2paintengineex/qtextureglyphcache_gl_p.h b/src/opengl/gl2paintengineex/qtextureglyphcache_gl_p.h index 7b7da9d8e8..ca5832ca4a 100644 --- a/src/opengl/gl2paintengineex/qtextureglyphcache_gl_p.h +++ b/src/opengl/gl2paintengineex/qtextureglyphcache_gl_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/gl2paintengineex/qtriangulatingstroker.cpp b/src/opengl/gl2paintengineex/qtriangulatingstroker.cpp index 29e660fbc7..7cad66e6ec 100644 --- a/src/opengl/gl2paintengineex/qtriangulatingstroker.cpp +++ b/src/opengl/gl2paintengineex/qtriangulatingstroker.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/gl2paintengineex/qtriangulatingstroker_p.h b/src/opengl/gl2paintengineex/qtriangulatingstroker_p.h index 2985a6e550..3dbadaadde 100644 --- a/src/opengl/gl2paintengineex/qtriangulatingstroker_p.h +++ b/src/opengl/gl2paintengineex/qtriangulatingstroker_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/qgl.cpp b/src/opengl/qgl.cpp index 42235bca18..0ef2a0b0de 100644 --- a/src/opengl/qgl.cpp +++ b/src/opengl/qgl.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/qgl.h b/src/opengl/qgl.h index 5f164440be..3af7411ae5 100644 --- a/src/opengl/qgl.h +++ b/src/opengl/qgl.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/qgl_p.h b/src/opengl/qgl_p.h index 2f8b677b7c..78eb2d5d6b 100644 --- a/src/opengl/qgl_p.h +++ b/src/opengl/qgl_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/qgl_qpa.cpp b/src/opengl/qgl_qpa.cpp index afa2772a6f..ae46fc99c6 100644 --- a/src/opengl/qgl_qpa.cpp +++ b/src/opengl/qgl_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/qglbuffer.cpp b/src/opengl/qglbuffer.cpp index c1128a0ebd..baeac676e7 100644 --- a/src/opengl/qglbuffer.cpp +++ b/src/opengl/qglbuffer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/qglbuffer.h b/src/opengl/qglbuffer.h index 0acf0c32ed..3dece18ab3 100644 --- a/src/opengl/qglbuffer.h +++ b/src/opengl/qglbuffer.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/qglcolormap.cpp b/src/opengl/qglcolormap.cpp index 8ff2f9fa0a..8a3c9d7b86 100644 --- a/src/opengl/qglcolormap.cpp +++ b/src/opengl/qglcolormap.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/qglcolormap.h b/src/opengl/qglcolormap.h index cc8519173b..5774aea1d0 100644 --- a/src/opengl/qglcolormap.h +++ b/src/opengl/qglcolormap.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/qglextensions.cpp b/src/opengl/qglextensions.cpp index 42f1ea59dd..906fd4d9a1 100644 --- a/src/opengl/qglextensions.cpp +++ b/src/opengl/qglextensions.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/qglextensions_p.h b/src/opengl/qglextensions_p.h index d391a99643..f8eff5a8bc 100644 --- a/src/opengl/qglextensions_p.h +++ b/src/opengl/qglextensions_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/qglframebufferobject.cpp b/src/opengl/qglframebufferobject.cpp index d0d2b2773f..dc62bf0426 100644 --- a/src/opengl/qglframebufferobject.cpp +++ b/src/opengl/qglframebufferobject.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/qglframebufferobject.h b/src/opengl/qglframebufferobject.h index 817aecd9b7..a3211ebdfd 100644 --- a/src/opengl/qglframebufferobject.h +++ b/src/opengl/qglframebufferobject.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/qglframebufferobject_p.h b/src/opengl/qglframebufferobject_p.h index 61d39c6a07..461d13bbcc 100644 --- a/src/opengl/qglframebufferobject_p.h +++ b/src/opengl/qglframebufferobject_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/qglfunctions.cpp b/src/opengl/qglfunctions.cpp index 227e6cc176..9c84fe637e 100644 --- a/src/opengl/qglfunctions.cpp +++ b/src/opengl/qglfunctions.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/qglfunctions.h b/src/opengl/qglfunctions.h index 3b50a1cd66..725fc22bc5 100644 --- a/src/opengl/qglfunctions.h +++ b/src/opengl/qglfunctions.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/qglpaintdevice.cpp b/src/opengl/qglpaintdevice.cpp index 08807bdd49..1ef13259c5 100644 --- a/src/opengl/qglpaintdevice.cpp +++ b/src/opengl/qglpaintdevice.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/qglpaintdevice_p.h b/src/opengl/qglpaintdevice_p.h index 32ae85dc90..c630009171 100644 --- a/src/opengl/qglpaintdevice_p.h +++ b/src/opengl/qglpaintdevice_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/qglpixelbuffer.cpp b/src/opengl/qglpixelbuffer.cpp index ddabbef0b2..39f589cbab 100644 --- a/src/opengl/qglpixelbuffer.cpp +++ b/src/opengl/qglpixelbuffer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/qglpixelbuffer.h b/src/opengl/qglpixelbuffer.h index 0c7ad38237..09a7eeec7c 100644 --- a/src/opengl/qglpixelbuffer.h +++ b/src/opengl/qglpixelbuffer.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/qglpixelbuffer_p.h b/src/opengl/qglpixelbuffer_p.h index 05e161b7ef..559af5d63e 100644 --- a/src/opengl/qglpixelbuffer_p.h +++ b/src/opengl/qglpixelbuffer_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/qglpixelbuffer_stub.cpp b/src/opengl/qglpixelbuffer_stub.cpp index 0d1d8d6d21..8d8cd93975 100644 --- a/src/opengl/qglpixelbuffer_stub.cpp +++ b/src/opengl/qglpixelbuffer_stub.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/qglshaderprogram.cpp b/src/opengl/qglshaderprogram.cpp index af093bc9b4..6ffba78b7c 100644 --- a/src/opengl/qglshaderprogram.cpp +++ b/src/opengl/qglshaderprogram.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/qglshaderprogram.h b/src/opengl/qglshaderprogram.h index 591aab27cd..3af47e5939 100644 --- a/src/opengl/qglshaderprogram.h +++ b/src/opengl/qglshaderprogram.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/qgraphicsshadereffect.cpp b/src/opengl/qgraphicsshadereffect.cpp index c785fb29ad..b0c46a96cd 100644 --- a/src/opengl/qgraphicsshadereffect.cpp +++ b/src/opengl/qgraphicsshadereffect.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/opengl/qgraphicsshadereffect_p.h b/src/opengl/qgraphicsshadereffect_p.h index 7ae5f53d7e..de6048acbf 100644 --- a/src/opengl/qgraphicsshadereffect_p.h +++ b/src/opengl/qgraphicsshadereffect_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/cglconvenience/cglconvenience.mm b/src/platformsupport/cglconvenience/cglconvenience.mm index 280baf48a5..a1a7f8bd89 100644 --- a/src/platformsupport/cglconvenience/cglconvenience.mm +++ b/src/platformsupport/cglconvenience/cglconvenience.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/cglconvenience/cglconvenience_p.h b/src/platformsupport/cglconvenience/cglconvenience_p.h index facf8c9b7f..8ac5039bf3 100644 --- a/src/platformsupport/cglconvenience/cglconvenience_p.h +++ b/src/platformsupport/cglconvenience/cglconvenience_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/dnd/qsimpledrag.cpp b/src/platformsupport/dnd/qsimpledrag.cpp index 72da29c063..857bc0356a 100644 --- a/src/platformsupport/dnd/qsimpledrag.cpp +++ b/src/platformsupport/dnd/qsimpledrag.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/dnd/qsimpledrag_p.h b/src/platformsupport/dnd/qsimpledrag_p.h index 82668a68c9..980be04ff8 100644 --- a/src/platformsupport/dnd/qsimpledrag_p.h +++ b/src/platformsupport/dnd/qsimpledrag_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/eglconvenience/qeglconvenience.cpp b/src/platformsupport/eglconvenience/qeglconvenience.cpp index ea4b5566c5..5a01e5a03c 100644 --- a/src/platformsupport/eglconvenience/qeglconvenience.cpp +++ b/src/platformsupport/eglconvenience/qeglconvenience.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/eglconvenience/qeglconvenience_p.h b/src/platformsupport/eglconvenience/qeglconvenience_p.h index 7b5b970415..1384f11b5e 100644 --- a/src/platformsupport/eglconvenience/qeglconvenience_p.h +++ b/src/platformsupport/eglconvenience/qeglconvenience_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/eglconvenience/qeglplatformcontext.cpp b/src/platformsupport/eglconvenience/qeglplatformcontext.cpp index 1f1f215494..cab551fe51 100644 --- a/src/platformsupport/eglconvenience/qeglplatformcontext.cpp +++ b/src/platformsupport/eglconvenience/qeglplatformcontext.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/eglconvenience/qeglplatformcontext_p.h b/src/platformsupport/eglconvenience/qeglplatformcontext_p.h index 7002c8b9c2..a0e984b390 100644 --- a/src/platformsupport/eglconvenience/qeglplatformcontext_p.h +++ b/src/platformsupport/eglconvenience/qeglplatformcontext_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/eglconvenience/qxlibeglintegration.cpp b/src/platformsupport/eglconvenience/qxlibeglintegration.cpp index aeebd35d21..a0a758fc51 100644 --- a/src/platformsupport/eglconvenience/qxlibeglintegration.cpp +++ b/src/platformsupport/eglconvenience/qxlibeglintegration.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/eglconvenience/qxlibeglintegration_p.h b/src/platformsupport/eglconvenience/qxlibeglintegration_p.h index ad77754eee..3a2de0d780 100644 --- a/src/platformsupport/eglconvenience/qxlibeglintegration_p.h +++ b/src/platformsupport/eglconvenience/qxlibeglintegration_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/eventdispatchers/qeventdispatcher_glib.cpp b/src/platformsupport/eventdispatchers/qeventdispatcher_glib.cpp index 005c44a034..75ce257aac 100644 --- a/src/platformsupport/eventdispatchers/qeventdispatcher_glib.cpp +++ b/src/platformsupport/eventdispatchers/qeventdispatcher_glib.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/eventdispatchers/qeventdispatcher_glib_p.h b/src/platformsupport/eventdispatchers/qeventdispatcher_glib_p.h index 8a34e78357..e329dfb0b2 100644 --- a/src/platformsupport/eventdispatchers/qeventdispatcher_glib_p.h +++ b/src/platformsupport/eventdispatchers/qeventdispatcher_glib_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/eventdispatchers/qgenericunixeventdispatcher.cpp b/src/platformsupport/eventdispatchers/qgenericunixeventdispatcher.cpp index 4f8784b068..01e6866158 100644 --- a/src/platformsupport/eventdispatchers/qgenericunixeventdispatcher.cpp +++ b/src/platformsupport/eventdispatchers/qgenericunixeventdispatcher.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/eventdispatchers/qgenericunixeventdispatcher_p.h b/src/platformsupport/eventdispatchers/qgenericunixeventdispatcher_p.h index e50f57d9a8..453fa06e13 100644 --- a/src/platformsupport/eventdispatchers/qgenericunixeventdispatcher_p.h +++ b/src/platformsupport/eventdispatchers/qgenericunixeventdispatcher_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/eventdispatchers/qunixeventdispatcher_qpa.cpp b/src/platformsupport/eventdispatchers/qunixeventdispatcher_qpa.cpp index 018d843b8b..838c59174d 100644 --- a/src/platformsupport/eventdispatchers/qunixeventdispatcher_qpa.cpp +++ b/src/platformsupport/eventdispatchers/qunixeventdispatcher_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/eventdispatchers/qunixeventdispatcher_qpa_p.h b/src/platformsupport/eventdispatchers/qunixeventdispatcher_qpa_p.h index f6f8364be3..b242f6350b 100644 --- a/src/platformsupport/eventdispatchers/qunixeventdispatcher_qpa_p.h +++ b/src/platformsupport/eventdispatchers/qunixeventdispatcher_qpa_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/fb_base/fb_base.cpp b/src/platformsupport/fb_base/fb_base.cpp index aa395fec29..37b20752c2 100644 --- a/src/platformsupport/fb_base/fb_base.cpp +++ b/src/platformsupport/fb_base/fb_base.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/fb_base/fb_base_p.h b/src/platformsupport/fb_base/fb_base_p.h index 6b0b152482..d5c825092d 100644 --- a/src/platformsupport/fb_base/fb_base_p.h +++ b/src/platformsupport/fb_base/fb_base_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/fontdatabases/basic/qbasicfontdatabase.cpp b/src/platformsupport/fontdatabases/basic/qbasicfontdatabase.cpp index 9c5d3be637..eb951cad41 100644 --- a/src/platformsupport/fontdatabases/basic/qbasicfontdatabase.cpp +++ b/src/platformsupport/fontdatabases/basic/qbasicfontdatabase.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/fontdatabases/basic/qbasicfontdatabase_p.h b/src/platformsupport/fontdatabases/basic/qbasicfontdatabase_p.h index 3816ec5862..e7ccce445c 100644 --- a/src/platformsupport/fontdatabases/basic/qbasicfontdatabase_p.h +++ b/src/platformsupport/fontdatabases/basic/qbasicfontdatabase_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/fontdatabases/fontconfig/qfontconfigdatabase.cpp b/src/platformsupport/fontdatabases/fontconfig/qfontconfigdatabase.cpp index faa2522a89..a859f6c672 100644 --- a/src/platformsupport/fontdatabases/fontconfig/qfontconfigdatabase.cpp +++ b/src/platformsupport/fontdatabases/fontconfig/qfontconfigdatabase.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/fontdatabases/fontconfig/qfontconfigdatabase_p.h b/src/platformsupport/fontdatabases/fontconfig/qfontconfigdatabase_p.h index ecf2d4da49..389338b911 100644 --- a/src/platformsupport/fontdatabases/fontconfig/qfontconfigdatabase_p.h +++ b/src/platformsupport/fontdatabases/fontconfig/qfontconfigdatabase_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/fontdatabases/genericunix/qgenericunixfontdatabase_p.h b/src/platformsupport/fontdatabases/genericunix/qgenericunixfontdatabase_p.h index ef2414a2d5..55e33fffaa 100644 --- a/src/platformsupport/fontdatabases/genericunix/qgenericunixfontdatabase_p.h +++ b/src/platformsupport/fontdatabases/genericunix/qgenericunixfontdatabase_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase.mm b/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase.mm index 9dbc60f6c7..dc54efd67b 100644 --- a/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase.mm +++ b/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase_p.h b/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase_p.h index 63012f4f8d..3e77548de6 100644 --- a/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase_p.h +++ b/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm b/src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm index 687ddb2486..fa18de9621 100644 --- a/src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm +++ b/src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/fontdatabases/mac/qfontengine_coretext_p.h b/src/platformsupport/fontdatabases/mac/qfontengine_coretext_p.h index 502cf3819c..543c170cdd 100644 --- a/src/platformsupport/fontdatabases/mac/qfontengine_coretext_p.h +++ b/src/platformsupport/fontdatabases/mac/qfontengine_coretext_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/glxconvenience/qglxconvenience.cpp b/src/platformsupport/glxconvenience/qglxconvenience.cpp index ce0c49d93f..a857d734c3 100644 --- a/src/platformsupport/glxconvenience/qglxconvenience.cpp +++ b/src/platformsupport/glxconvenience/qglxconvenience.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/glxconvenience/qglxconvenience_p.h b/src/platformsupport/glxconvenience/qglxconvenience_p.h index 4892b07729..df6fe99ed8 100644 --- a/src/platformsupport/glxconvenience/qglxconvenience_p.h +++ b/src/platformsupport/glxconvenience/qglxconvenience_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/inputcontext/qplatforminputcontextfactory_qpa.cpp b/src/platformsupport/inputcontext/qplatforminputcontextfactory_qpa.cpp index fa16fea628..aa268ff940 100644 --- a/src/platformsupport/inputcontext/qplatforminputcontextfactory_qpa.cpp +++ b/src/platformsupport/inputcontext/qplatforminputcontextfactory_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/inputcontext/qplatforminputcontextfactory_qpa_p.h b/src/platformsupport/inputcontext/qplatforminputcontextfactory_qpa_p.h index 5c42931357..c43658dd4a 100644 --- a/src/platformsupport/inputcontext/qplatforminputcontextfactory_qpa_p.h +++ b/src/platformsupport/inputcontext/qplatforminputcontextfactory_qpa_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/inputcontext/qplatforminputcontextplugin_qpa.cpp b/src/platformsupport/inputcontext/qplatforminputcontextplugin_qpa.cpp index 380ab06d9c..737eab1a66 100644 --- a/src/platformsupport/inputcontext/qplatforminputcontextplugin_qpa.cpp +++ b/src/platformsupport/inputcontext/qplatforminputcontextplugin_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/inputcontext/qplatforminputcontextplugin_qpa_p.h b/src/platformsupport/inputcontext/qplatforminputcontextplugin_qpa_p.h index ea9b10f66c..e0ed477acb 100644 --- a/src/platformsupport/inputcontext/qplatforminputcontextplugin_qpa_p.h +++ b/src/platformsupport/inputcontext/qplatforminputcontextplugin_qpa_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/printersupport/genericunix/qgenericunixprintersupport.cpp b/src/platformsupport/printersupport/genericunix/qgenericunixprintersupport.cpp index bac5ba20f0..db4737706e 100644 --- a/src/platformsupport/printersupport/genericunix/qgenericunixprintersupport.cpp +++ b/src/platformsupport/printersupport/genericunix/qgenericunixprintersupport.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/platformsupport/printersupport/genericunix/qgenericunixprintersupport_p.h b/src/platformsupport/printersupport/genericunix/qgenericunixprintersupport_p.h index bcfc36799f..95d8280659 100644 --- a/src/platformsupport/printersupport/genericunix/qgenericunixprintersupport_p.h +++ b/src/platformsupport/printersupport/genericunix/qgenericunixprintersupport_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/accessible/widgets/complexwidgets.cpp b/src/plugins/accessible/widgets/complexwidgets.cpp index 12f2d3d62f..b1ff87132f 100644 --- a/src/plugins/accessible/widgets/complexwidgets.cpp +++ b/src/plugins/accessible/widgets/complexwidgets.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/accessible/widgets/complexwidgets.h b/src/plugins/accessible/widgets/complexwidgets.h index 90fc180313..66dbdcfab8 100644 --- a/src/plugins/accessible/widgets/complexwidgets.h +++ b/src/plugins/accessible/widgets/complexwidgets.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/accessible/widgets/itemviews.cpp b/src/plugins/accessible/widgets/itemviews.cpp index 03f9afe275..f6d719ae3a 100644 --- a/src/plugins/accessible/widgets/itemviews.cpp +++ b/src/plugins/accessible/widgets/itemviews.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/accessible/widgets/itemviews.h b/src/plugins/accessible/widgets/itemviews.h index be309e61a7..6fe6138d6b 100644 --- a/src/plugins/accessible/widgets/itemviews.h +++ b/src/plugins/accessible/widgets/itemviews.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/accessible/widgets/main.cpp b/src/plugins/accessible/widgets/main.cpp index 821b219b36..67e1a46703 100644 --- a/src/plugins/accessible/widgets/main.cpp +++ b/src/plugins/accessible/widgets/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/accessible/widgets/qaccessiblemenu.cpp b/src/plugins/accessible/widgets/qaccessiblemenu.cpp index 95c5c05097..8204621c13 100644 --- a/src/plugins/accessible/widgets/qaccessiblemenu.cpp +++ b/src/plugins/accessible/widgets/qaccessiblemenu.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/accessible/widgets/qaccessiblemenu.h b/src/plugins/accessible/widgets/qaccessiblemenu.h index 4ce161309b..d44c02b753 100644 --- a/src/plugins/accessible/widgets/qaccessiblemenu.h +++ b/src/plugins/accessible/widgets/qaccessiblemenu.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/accessible/widgets/qaccessiblewidgets.cpp b/src/plugins/accessible/widgets/qaccessiblewidgets.cpp index 1e74de6ffd..98b88b5917 100644 --- a/src/plugins/accessible/widgets/qaccessiblewidgets.cpp +++ b/src/plugins/accessible/widgets/qaccessiblewidgets.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/accessible/widgets/qaccessiblewidgets.h b/src/plugins/accessible/widgets/qaccessiblewidgets.h index a544fd941c..1beeae849b 100644 --- a/src/plugins/accessible/widgets/qaccessiblewidgets.h +++ b/src/plugins/accessible/widgets/qaccessiblewidgets.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/accessible/widgets/rangecontrols.cpp b/src/plugins/accessible/widgets/rangecontrols.cpp index 06ff8e2cbf..799260cc8c 100644 --- a/src/plugins/accessible/widgets/rangecontrols.cpp +++ b/src/plugins/accessible/widgets/rangecontrols.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/accessible/widgets/rangecontrols.h b/src/plugins/accessible/widgets/rangecontrols.h index f6cbcc6900..ea1f644650 100644 --- a/src/plugins/accessible/widgets/rangecontrols.h +++ b/src/plugins/accessible/widgets/rangecontrols.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/accessible/widgets/simplewidgets.cpp b/src/plugins/accessible/widgets/simplewidgets.cpp index 8f4fed48fe..a9145254bd 100644 --- a/src/plugins/accessible/widgets/simplewidgets.cpp +++ b/src/plugins/accessible/widgets/simplewidgets.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/accessible/widgets/simplewidgets.h b/src/plugins/accessible/widgets/simplewidgets.h index 40386153be..05feca2877 100644 --- a/src/plugins/accessible/widgets/simplewidgets.h +++ b/src/plugins/accessible/widgets/simplewidgets.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/connman/main.cpp b/src/plugins/bearer/connman/main.cpp index a04f2a760f..730e6857ed 100644 --- a/src/plugins/bearer/connman/main.cpp +++ b/src/plugins/bearer/connman/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/connman/qconnmanengine.cpp b/src/plugins/bearer/connman/qconnmanengine.cpp index de3985efd3..254a5ddd87 100644 --- a/src/plugins/bearer/connman/qconnmanengine.cpp +++ b/src/plugins/bearer/connman/qconnmanengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/connman/qconnmanengine.h b/src/plugins/bearer/connman/qconnmanengine.h index 0175112c80..ce944e3352 100644 --- a/src/plugins/bearer/connman/qconnmanengine.h +++ b/src/plugins/bearer/connman/qconnmanengine.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/connman/qconnmanservice_linux.cpp b/src/plugins/bearer/connman/qconnmanservice_linux.cpp index edb8665039..81024e0e8b 100644 --- a/src/plugins/bearer/connman/qconnmanservice_linux.cpp +++ b/src/plugins/bearer/connman/qconnmanservice_linux.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/connman/qconnmanservice_linux_p.h b/src/plugins/bearer/connman/qconnmanservice_linux_p.h index 00a8bd8087..0298459798 100644 --- a/src/plugins/bearer/connman/qconnmanservice_linux_p.h +++ b/src/plugins/bearer/connman/qconnmanservice_linux_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/connman/qofonoservice_linux.cpp b/src/plugins/bearer/connman/qofonoservice_linux.cpp index 0980f79b99..b6670c98d6 100644 --- a/src/plugins/bearer/connman/qofonoservice_linux.cpp +++ b/src/plugins/bearer/connman/qofonoservice_linux.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/connman/qofonoservice_linux_p.h b/src/plugins/bearer/connman/qofonoservice_linux_p.h index e3282f1241..a6a64b8657 100644 --- a/src/plugins/bearer/connman/qofonoservice_linux_p.h +++ b/src/plugins/bearer/connman/qofonoservice_linux_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/corewlan/main.cpp b/src/plugins/bearer/corewlan/main.cpp index 781ec141b4..7cc8e9db29 100644 --- a/src/plugins/bearer/corewlan/main.cpp +++ b/src/plugins/bearer/corewlan/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/corewlan/qcorewlanengine.h b/src/plugins/bearer/corewlan/qcorewlanengine.h index 858d83a2f0..570640bc8f 100644 --- a/src/plugins/bearer/corewlan/qcorewlanengine.h +++ b/src/plugins/bearer/corewlan/qcorewlanengine.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/corewlan/qcorewlanengine.mm b/src/plugins/bearer/corewlan/qcorewlanengine.mm index c81f56a92c..5552252692 100644 --- a/src/plugins/bearer/corewlan/qcorewlanengine.mm +++ b/src/plugins/bearer/corewlan/qcorewlanengine.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/generic/main.cpp b/src/plugins/bearer/generic/main.cpp index 838a6057f0..84d49a2365 100644 --- a/src/plugins/bearer/generic/main.cpp +++ b/src/plugins/bearer/generic/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/generic/qgenericengine.cpp b/src/plugins/bearer/generic/qgenericengine.cpp index 7e97ffef5b..1413514794 100644 --- a/src/plugins/bearer/generic/qgenericengine.cpp +++ b/src/plugins/bearer/generic/qgenericengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/generic/qgenericengine.h b/src/plugins/bearer/generic/qgenericengine.h index 23abb2dbca..33af624ce0 100644 --- a/src/plugins/bearer/generic/qgenericengine.h +++ b/src/plugins/bearer/generic/qgenericengine.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/icd/dbusdispatcher.cpp b/src/plugins/bearer/icd/dbusdispatcher.cpp index 60e4640f22..1f2220bb1c 100644 --- a/src/plugins/bearer/icd/dbusdispatcher.cpp +++ b/src/plugins/bearer/icd/dbusdispatcher.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/icd/dbusdispatcher.h b/src/plugins/bearer/icd/dbusdispatcher.h index bba63662fe..d4039ebf66 100644 --- a/src/plugins/bearer/icd/dbusdispatcher.h +++ b/src/plugins/bearer/icd/dbusdispatcher.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/icd/iapconf.cpp b/src/plugins/bearer/icd/iapconf.cpp index a29e326a22..72eb04ce0f 100644 --- a/src/plugins/bearer/icd/iapconf.cpp +++ b/src/plugins/bearer/icd/iapconf.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/icd/iapconf.h b/src/plugins/bearer/icd/iapconf.h index f7b0ca316c..c4dd5b6779 100644 --- a/src/plugins/bearer/icd/iapconf.h +++ b/src/plugins/bearer/icd/iapconf.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/icd/iapmonitor.cpp b/src/plugins/bearer/icd/iapmonitor.cpp index ba20778861..b170361b9e 100644 --- a/src/plugins/bearer/icd/iapmonitor.cpp +++ b/src/plugins/bearer/icd/iapmonitor.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/icd/iapmonitor.h b/src/plugins/bearer/icd/iapmonitor.h index 9f7c3b2cef..5e21bcbbfc 100644 --- a/src/plugins/bearer/icd/iapmonitor.h +++ b/src/plugins/bearer/icd/iapmonitor.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/icd/maemo_icd.cpp b/src/plugins/bearer/icd/maemo_icd.cpp index 2ab416ac5a..e740f480d1 100644 --- a/src/plugins/bearer/icd/maemo_icd.cpp +++ b/src/plugins/bearer/icd/maemo_icd.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/icd/maemo_icd.h b/src/plugins/bearer/icd/maemo_icd.h index 367a171189..3be4646bdc 100644 --- a/src/plugins/bearer/icd/maemo_icd.h +++ b/src/plugins/bearer/icd/maemo_icd.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/icd/main.cpp b/src/plugins/bearer/icd/main.cpp index 0b52d25e60..a9fb68fb0b 100644 --- a/src/plugins/bearer/icd/main.cpp +++ b/src/plugins/bearer/icd/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/icd/proxyconf.cpp b/src/plugins/bearer/icd/proxyconf.cpp index 904fabca94..93b6f3f2d7 100644 --- a/src/plugins/bearer/icd/proxyconf.cpp +++ b/src/plugins/bearer/icd/proxyconf.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/icd/proxyconf.h b/src/plugins/bearer/icd/proxyconf.h index 9f657f87ba..4564c5cb66 100644 --- a/src/plugins/bearer/icd/proxyconf.h +++ b/src/plugins/bearer/icd/proxyconf.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/icd/qicdengine.cpp b/src/plugins/bearer/icd/qicdengine.cpp index d79a513ec4..b2693a9485 100644 --- a/src/plugins/bearer/icd/qicdengine.cpp +++ b/src/plugins/bearer/icd/qicdengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/icd/qicdengine.h b/src/plugins/bearer/icd/qicdengine.h index a72cc72b8e..df65d01728 100644 --- a/src/plugins/bearer/icd/qicdengine.h +++ b/src/plugins/bearer/icd/qicdengine.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/icd/qnetworksession_impl.cpp b/src/plugins/bearer/icd/qnetworksession_impl.cpp index f08d8bf363..e4f4effa33 100644 --- a/src/plugins/bearer/icd/qnetworksession_impl.cpp +++ b/src/plugins/bearer/icd/qnetworksession_impl.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/icd/qnetworksession_impl.h b/src/plugins/bearer/icd/qnetworksession_impl.h index b47396b8e1..18094e4ce0 100644 --- a/src/plugins/bearer/icd/qnetworksession_impl.h +++ b/src/plugins/bearer/icd/qnetworksession_impl.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/icd/wlan-utils.h b/src/plugins/bearer/icd/wlan-utils.h index b98ee7e64c..5735caaa6a 100644 --- a/src/plugins/bearer/icd/wlan-utils.h +++ b/src/plugins/bearer/icd/wlan-utils.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/nativewifi/main.cpp b/src/plugins/bearer/nativewifi/main.cpp index ce7d9063c2..5e9fb6ed7d 100644 --- a/src/plugins/bearer/nativewifi/main.cpp +++ b/src/plugins/bearer/nativewifi/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/nativewifi/platformdefs.h b/src/plugins/bearer/nativewifi/platformdefs.h index 41ff30a165..62ea55c6b2 100644 --- a/src/plugins/bearer/nativewifi/platformdefs.h +++ b/src/plugins/bearer/nativewifi/platformdefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/nativewifi/qnativewifiengine.cpp b/src/plugins/bearer/nativewifi/qnativewifiengine.cpp index 48f5536eda..6bde5d46de 100644 --- a/src/plugins/bearer/nativewifi/qnativewifiengine.cpp +++ b/src/plugins/bearer/nativewifi/qnativewifiengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/nativewifi/qnativewifiengine.h b/src/plugins/bearer/nativewifi/qnativewifiengine.h index c38b43ad97..2307538028 100644 --- a/src/plugins/bearer/nativewifi/qnativewifiengine.h +++ b/src/plugins/bearer/nativewifi/qnativewifiengine.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/networkmanager/main.cpp b/src/plugins/bearer/networkmanager/main.cpp index 5377bb0d58..01932429b1 100644 --- a/src/plugins/bearer/networkmanager/main.cpp +++ b/src/plugins/bearer/networkmanager/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/networkmanager/qnetworkmanagerengine.cpp b/src/plugins/bearer/networkmanager/qnetworkmanagerengine.cpp index 43c1d28c9b..dd845314f5 100644 --- a/src/plugins/bearer/networkmanager/qnetworkmanagerengine.cpp +++ b/src/plugins/bearer/networkmanager/qnetworkmanagerengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/networkmanager/qnetworkmanagerengine.h b/src/plugins/bearer/networkmanager/qnetworkmanagerengine.h index 24c170d52f..445c316627 100644 --- a/src/plugins/bearer/networkmanager/qnetworkmanagerengine.h +++ b/src/plugins/bearer/networkmanager/qnetworkmanagerengine.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/networkmanager/qnetworkmanagerservice.cpp b/src/plugins/bearer/networkmanager/qnetworkmanagerservice.cpp index 8ca94b97d8..126d3da891 100644 --- a/src/plugins/bearer/networkmanager/qnetworkmanagerservice.cpp +++ b/src/plugins/bearer/networkmanager/qnetworkmanagerservice.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/networkmanager/qnetworkmanagerservice.h b/src/plugins/bearer/networkmanager/qnetworkmanagerservice.h index e8fd0d0284..2c2f35a06c 100644 --- a/src/plugins/bearer/networkmanager/qnetworkmanagerservice.h +++ b/src/plugins/bearer/networkmanager/qnetworkmanagerservice.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/networkmanager/qnmdbushelper.cpp b/src/plugins/bearer/networkmanager/qnmdbushelper.cpp index e66be4c51a..86b6376ca7 100644 --- a/src/plugins/bearer/networkmanager/qnmdbushelper.cpp +++ b/src/plugins/bearer/networkmanager/qnmdbushelper.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/networkmanager/qnmdbushelper.h b/src/plugins/bearer/networkmanager/qnmdbushelper.h index 0b84c5153a..93f141b7a6 100644 --- a/src/plugins/bearer/networkmanager/qnmdbushelper.h +++ b/src/plugins/bearer/networkmanager/qnmdbushelper.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/nla/main.cpp b/src/plugins/bearer/nla/main.cpp index 963fbaa1df..e70a3e381e 100644 --- a/src/plugins/bearer/nla/main.cpp +++ b/src/plugins/bearer/nla/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/nla/qnlaengine.cpp b/src/plugins/bearer/nla/qnlaengine.cpp index c155623140..a9ee4b4bb3 100644 --- a/src/plugins/bearer/nla/qnlaengine.cpp +++ b/src/plugins/bearer/nla/qnlaengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/nla/qnlaengine.h b/src/plugins/bearer/nla/qnlaengine.h index 72b3db8241..c0b6311f7d 100644 --- a/src/plugins/bearer/nla/qnlaengine.h +++ b/src/plugins/bearer/nla/qnlaengine.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/platformdefs_win.h b/src/plugins/bearer/platformdefs_win.h index 1d8a8426e1..a4c9bac11b 100644 --- a/src/plugins/bearer/platformdefs_win.h +++ b/src/plugins/bearer/platformdefs_win.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/qbearerengine_impl.h b/src/plugins/bearer/qbearerengine_impl.h index 6a61c1bee0..01bce7bf72 100644 --- a/src/plugins/bearer/qbearerengine_impl.h +++ b/src/plugins/bearer/qbearerengine_impl.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/qnetworksession_impl.cpp b/src/plugins/bearer/qnetworksession_impl.cpp index 4a14dcc990..ab0c44321e 100644 --- a/src/plugins/bearer/qnetworksession_impl.cpp +++ b/src/plugins/bearer/qnetworksession_impl.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/bearer/qnetworksession_impl.h b/src/plugins/bearer/qnetworksession_impl.h index a15ef9a44b..e022c7b7d2 100644 --- a/src/plugins/bearer/qnetworksession_impl.h +++ b/src/plugins/bearer/qnetworksession_impl.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/codecs/cn/main.cpp b/src/plugins/codecs/cn/main.cpp index 11be817289..fb1e61a451 100644 --- a/src/plugins/codecs/cn/main.cpp +++ b/src/plugins/codecs/cn/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/codecs/cn/qgb18030codec.cpp b/src/plugins/codecs/cn/qgb18030codec.cpp index e647c5e78a..28d42e0983 100644 --- a/src/plugins/codecs/cn/qgb18030codec.cpp +++ b/src/plugins/codecs/cn/qgb18030codec.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/codecs/cn/qgb18030codec.h b/src/plugins/codecs/cn/qgb18030codec.h index 4aacc42c8e..492f59b295 100644 --- a/src/plugins/codecs/cn/qgb18030codec.h +++ b/src/plugins/codecs/cn/qgb18030codec.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/codecs/jp/main.cpp b/src/plugins/codecs/jp/main.cpp index 2891f55671..e4b22935db 100644 --- a/src/plugins/codecs/jp/main.cpp +++ b/src/plugins/codecs/jp/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/codecs/jp/qeucjpcodec.cpp b/src/plugins/codecs/jp/qeucjpcodec.cpp index 1154f443c4..4ff555220b 100644 --- a/src/plugins/codecs/jp/qeucjpcodec.cpp +++ b/src/plugins/codecs/jp/qeucjpcodec.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/codecs/jp/qeucjpcodec.h b/src/plugins/codecs/jp/qeucjpcodec.h index e40ba9506c..af02ed95e4 100644 --- a/src/plugins/codecs/jp/qeucjpcodec.h +++ b/src/plugins/codecs/jp/qeucjpcodec.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/codecs/jp/qfontjpcodec.cpp b/src/plugins/codecs/jp/qfontjpcodec.cpp index e73f67801b..8c9d78087c 100644 --- a/src/plugins/codecs/jp/qfontjpcodec.cpp +++ b/src/plugins/codecs/jp/qfontjpcodec.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/codecs/jp/qfontjpcodec.h b/src/plugins/codecs/jp/qfontjpcodec.h index 37940440db..1f577498fb 100644 --- a/src/plugins/codecs/jp/qfontjpcodec.h +++ b/src/plugins/codecs/jp/qfontjpcodec.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/codecs/jp/qjiscodec.cpp b/src/plugins/codecs/jp/qjiscodec.cpp index e9b3691174..99c756e859 100644 --- a/src/plugins/codecs/jp/qjiscodec.cpp +++ b/src/plugins/codecs/jp/qjiscodec.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/codecs/jp/qjiscodec.h b/src/plugins/codecs/jp/qjiscodec.h index eabbeca786..aaf02a90d0 100644 --- a/src/plugins/codecs/jp/qjiscodec.h +++ b/src/plugins/codecs/jp/qjiscodec.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/codecs/jp/qjpunicode.cpp b/src/plugins/codecs/jp/qjpunicode.cpp index 8e1c5e52c7..feb0f410c1 100644 --- a/src/plugins/codecs/jp/qjpunicode.cpp +++ b/src/plugins/codecs/jp/qjpunicode.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/codecs/jp/qjpunicode.h b/src/plugins/codecs/jp/qjpunicode.h index a0ff5a453e..069f49a137 100644 --- a/src/plugins/codecs/jp/qjpunicode.h +++ b/src/plugins/codecs/jp/qjpunicode.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/codecs/jp/qsjiscodec.cpp b/src/plugins/codecs/jp/qsjiscodec.cpp index 2a732ffc42..ac89b333c4 100644 --- a/src/plugins/codecs/jp/qsjiscodec.cpp +++ b/src/plugins/codecs/jp/qsjiscodec.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/codecs/jp/qsjiscodec.h b/src/plugins/codecs/jp/qsjiscodec.h index e61cc9136c..c56a103366 100644 --- a/src/plugins/codecs/jp/qsjiscodec.h +++ b/src/plugins/codecs/jp/qsjiscodec.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/codecs/kr/cp949codetbl.h b/src/plugins/codecs/kr/cp949codetbl.h index f54db8dc3f..48bb40685e 100644 --- a/src/plugins/codecs/kr/cp949codetbl.h +++ b/src/plugins/codecs/kr/cp949codetbl.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/codecs/kr/main.cpp b/src/plugins/codecs/kr/main.cpp index 683dee3f74..16c49b6eea 100644 --- a/src/plugins/codecs/kr/main.cpp +++ b/src/plugins/codecs/kr/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/codecs/kr/qeuckrcodec.cpp b/src/plugins/codecs/kr/qeuckrcodec.cpp index ec6395adeb..979b9bb8bc 100644 --- a/src/plugins/codecs/kr/qeuckrcodec.cpp +++ b/src/plugins/codecs/kr/qeuckrcodec.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/codecs/kr/qeuckrcodec.h b/src/plugins/codecs/kr/qeuckrcodec.h index 0a86c274e8..d5be33e74b 100644 --- a/src/plugins/codecs/kr/qeuckrcodec.h +++ b/src/plugins/codecs/kr/qeuckrcodec.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/codecs/tw/main.cpp b/src/plugins/codecs/tw/main.cpp index cb2792f232..159752cc26 100644 --- a/src/plugins/codecs/tw/main.cpp +++ b/src/plugins/codecs/tw/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/codecs/tw/qbig5codec.cpp b/src/plugins/codecs/tw/qbig5codec.cpp index 9ec7c75220..f337dd8d8a 100644 --- a/src/plugins/codecs/tw/qbig5codec.cpp +++ b/src/plugins/codecs/tw/qbig5codec.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/codecs/tw/qbig5codec.h b/src/plugins/codecs/tw/qbig5codec.h index 495e378ef5..c5b649ef6f 100644 --- a/src/plugins/codecs/tw/qbig5codec.h +++ b/src/plugins/codecs/tw/qbig5codec.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/generic/tslib/main.cpp b/src/plugins/generic/tslib/main.cpp index 9e86e26ece..49bc60a615 100644 --- a/src/plugins/generic/tslib/main.cpp +++ b/src/plugins/generic/tslib/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/generic/tslib/qtslib.cpp b/src/plugins/generic/tslib/qtslib.cpp index 1349b9dbba..5b08ec8a34 100644 --- a/src/plugins/generic/tslib/qtslib.cpp +++ b/src/plugins/generic/tslib/qtslib.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/generic/tslib/qtslib.h b/src/plugins/generic/tslib/qtslib.h index ea7e227c3c..5e595b5a0c 100644 --- a/src/plugins/generic/tslib/qtslib.h +++ b/src/plugins/generic/tslib/qtslib.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/imageformats/gif/main.cpp b/src/plugins/imageformats/gif/main.cpp index 7a7cc0a995..b006d56fd7 100644 --- a/src/plugins/imageformats/gif/main.cpp +++ b/src/plugins/imageformats/gif/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/imageformats/ico/main.cpp b/src/plugins/imageformats/ico/main.cpp index 1d572fbe5d..ac9ceb037c 100644 --- a/src/plugins/imageformats/ico/main.cpp +++ b/src/plugins/imageformats/ico/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/imageformats/ico/qicohandler.cpp b/src/plugins/imageformats/ico/qicohandler.cpp index da6b8a75bc..c05ee12671 100644 --- a/src/plugins/imageformats/ico/qicohandler.cpp +++ b/src/plugins/imageformats/ico/qicohandler.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/imageformats/ico/qicohandler.h b/src/plugins/imageformats/ico/qicohandler.h index 8a338018bb..d6bf97f319 100644 --- a/src/plugins/imageformats/ico/qicohandler.h +++ b/src/plugins/imageformats/ico/qicohandler.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/imageformats/jpeg/main.cpp b/src/plugins/imageformats/jpeg/main.cpp index 785b77b646..ed457ca7ec 100644 --- a/src/plugins/imageformats/jpeg/main.cpp +++ b/src/plugins/imageformats/jpeg/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/imageformats/mng/main.cpp b/src/plugins/imageformats/mng/main.cpp index ae4909fa69..9fed507ce4 100644 --- a/src/plugins/imageformats/mng/main.cpp +++ b/src/plugins/imageformats/mng/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/imageformats/tiff/main.cpp b/src/plugins/imageformats/tiff/main.cpp index 6323b387f7..4bfd07b836 100644 --- a/src/plugins/imageformats/tiff/main.cpp +++ b/src/plugins/imageformats/tiff/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforminputcontexts/ibus/main.cpp b/src/plugins/platforminputcontexts/ibus/main.cpp index 9d2dbc6b2a..c93fef670a 100644 --- a/src/plugins/platforminputcontexts/ibus/main.cpp +++ b/src/plugins/platforminputcontexts/ibus/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforminputcontexts/ibus/qibusinputcontextproxy.cpp b/src/plugins/platforminputcontexts/ibus/qibusinputcontextproxy.cpp index 7adffbc2e2..9d64b78862 100644 --- a/src/plugins/platforminputcontexts/ibus/qibusinputcontextproxy.cpp +++ b/src/plugins/platforminputcontexts/ibus/qibusinputcontextproxy.cpp @@ -2,7 +2,7 @@ * This file was generated by qdbusxml2cpp version 0.7 * Command line was: qdbusxml2cpp -N -p qibusinputcontextproxy -c QIBusInputContextProxy interfaces/org.freedesktop.IBus.InputContext.xml * - * qdbusxml2cpp is Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). + * qdbusxml2cpp is Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). * * This is an auto-generated file. * This file may have been hand-edited. Look for HAND-EDIT comments diff --git a/src/plugins/platforminputcontexts/ibus/qibusinputcontextproxy.h b/src/plugins/platforminputcontexts/ibus/qibusinputcontextproxy.h index 9a91c4e484..56e194c66b 100644 --- a/src/plugins/platforminputcontexts/ibus/qibusinputcontextproxy.h +++ b/src/plugins/platforminputcontexts/ibus/qibusinputcontextproxy.h @@ -2,7 +2,7 @@ * This file was generated by qdbusxml2cpp version 0.7 * Command line was: qdbusxml2cpp -N -p qibusinputcontextproxy -c QIBusInputContextProxy interfaces/org.freedesktop.IBus.InputContext.xml * - * qdbusxml2cpp is Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). + * qdbusxml2cpp is Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). * * This is an auto-generated file. * Do not edit! All changes made to it will be lost. diff --git a/src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.cpp b/src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.cpp index 502b415079..ed858c8853 100644 --- a/src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.cpp +++ b/src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.h b/src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.h index 5f0b4d4691..0f57bcd5a5 100644 --- a/src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.h +++ b/src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforminputcontexts/ibus/qibusproxy.cpp b/src/plugins/platforminputcontexts/ibus/qibusproxy.cpp index 9d64b603f3..c177c4f04a 100644 --- a/src/plugins/platforminputcontexts/ibus/qibusproxy.cpp +++ b/src/plugins/platforminputcontexts/ibus/qibusproxy.cpp @@ -2,7 +2,7 @@ * This file was generated by qdbusxml2cpp version 0.7 * Command line was: qdbusxml2cpp -N -p qibusproxy -c QIBusProxy interfaces/org.freedesktop.IBus.xml * - * qdbusxml2cpp is Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). + * qdbusxml2cpp is Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). * * This is an auto-generated file. * This file may have been hand-edited. Look for HAND-EDIT comments diff --git a/src/plugins/platforminputcontexts/ibus/qibusproxy.h b/src/plugins/platforminputcontexts/ibus/qibusproxy.h index 389eec3175..7d7d174162 100644 --- a/src/plugins/platforminputcontexts/ibus/qibusproxy.h +++ b/src/plugins/platforminputcontexts/ibus/qibusproxy.h @@ -2,7 +2,7 @@ * This file was generated by qdbusxml2cpp version 0.7 * Command line was: qdbusxml2cpp -N -p qibusproxy -c QIBusProxy interfaces/org.freedesktop.IBus.xml * - * qdbusxml2cpp is Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). + * qdbusxml2cpp is Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). * * This is an auto-generated file. * Do not edit! All changes made to it will be lost. diff --git a/src/plugins/platforminputcontexts/ibus/qibustypes.cpp b/src/plugins/platforminputcontexts/ibus/qibustypes.cpp index c6dcfb10b9..424ea02fe3 100644 --- a/src/plugins/platforminputcontexts/ibus/qibustypes.cpp +++ b/src/plugins/platforminputcontexts/ibus/qibustypes.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforminputcontexts/ibus/qibustypes.h b/src/plugins/platforminputcontexts/ibus/qibustypes.h index 6848149c8b..1c9c33e159 100644 --- a/src/plugins/platforminputcontexts/ibus/qibustypes.h +++ b/src/plugins/platforminputcontexts/ibus/qibustypes.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforminputcontexts/meego/contextadaptor.cpp b/src/plugins/platforminputcontexts/meego/contextadaptor.cpp index 45b1102a98..da5920c396 100644 --- a/src/plugins/platforminputcontexts/meego/contextadaptor.cpp +++ b/src/plugins/platforminputcontexts/meego/contextadaptor.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforminputcontexts/meego/contextadaptor.h b/src/plugins/platforminputcontexts/meego/contextadaptor.h index 8f134a5cb0..2150cd1e57 100644 --- a/src/plugins/platforminputcontexts/meego/contextadaptor.h +++ b/src/plugins/platforminputcontexts/meego/contextadaptor.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforminputcontexts/meego/main.cpp b/src/plugins/platforminputcontexts/meego/main.cpp index f8558b498d..5c87a9caed 100644 --- a/src/plugins/platforminputcontexts/meego/main.cpp +++ b/src/plugins/platforminputcontexts/meego/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforminputcontexts/meego/qmeegoplatforminputcontext.cpp b/src/plugins/platforminputcontexts/meego/qmeegoplatforminputcontext.cpp index c66ea4a178..cab0be4067 100644 --- a/src/plugins/platforminputcontexts/meego/qmeegoplatforminputcontext.cpp +++ b/src/plugins/platforminputcontexts/meego/qmeegoplatforminputcontext.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforminputcontexts/meego/qmeegoplatforminputcontext.h b/src/plugins/platforminputcontexts/meego/qmeegoplatforminputcontext.h index 04eb28eab2..4e6e724bdc 100644 --- a/src/plugins/platforminputcontexts/meego/qmeegoplatforminputcontext.h +++ b/src/plugins/platforminputcontexts/meego/qmeegoplatforminputcontext.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforminputcontexts/meego/serverproxy.cpp b/src/plugins/platforminputcontexts/meego/serverproxy.cpp index 5715d8f19a..8f20238405 100644 --- a/src/plugins/platforminputcontexts/meego/serverproxy.cpp +++ b/src/plugins/platforminputcontexts/meego/serverproxy.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforminputcontexts/meego/serverproxy.h b/src/plugins/platforminputcontexts/meego/serverproxy.h index 3ad589409c..31cb82ba07 100644 --- a/src/plugins/platforminputcontexts/meego/serverproxy.h +++ b/src/plugins/platforminputcontexts/meego/serverproxy.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/main.mm b/src/plugins/platforms/cocoa/main.mm index 0be6ebd682..f88e1b7786 100644 --- a/src/plugins/platforms/cocoa/main.mm +++ b/src/plugins/platforms/cocoa/main.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoaaccessibility.h b/src/plugins/platforms/cocoa/qcocoaaccessibility.h index 7f4a840b15..36795c50ed 100644 --- a/src/plugins/platforms/cocoa/qcocoaaccessibility.h +++ b/src/plugins/platforms/cocoa/qcocoaaccessibility.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoaaccessibility.mm b/src/plugins/platforms/cocoa/qcocoaaccessibility.mm index a2ce743804..4b58ef2faa 100644 --- a/src/plugins/platforms/cocoa/qcocoaaccessibility.mm +++ b/src/plugins/platforms/cocoa/qcocoaaccessibility.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** - ** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). + ** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoaaccessibilityelement.h b/src/plugins/platforms/cocoa/qcocoaaccessibilityelement.h index 76509f9e43..2136d6628a 100644 --- a/src/plugins/platforms/cocoa/qcocoaaccessibilityelement.h +++ b/src/plugins/platforms/cocoa/qcocoaaccessibilityelement.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoaaccessibilityelement.mm b/src/plugins/platforms/cocoa/qcocoaaccessibilityelement.mm index 5ad9e57c31..11cc89f04f 100644 --- a/src/plugins/platforms/cocoa/qcocoaaccessibilityelement.mm +++ b/src/plugins/platforms/cocoa/qcocoaaccessibilityelement.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** - ** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). + ** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoaapplication.h b/src/plugins/platforms/cocoa/qcocoaapplication.h index 5b6b2f48f2..edd50958de 100644 --- a/src/plugins/platforms/cocoa/qcocoaapplication.h +++ b/src/plugins/platforms/cocoa/qcocoaapplication.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoaapplication.mm b/src/plugins/platforms/cocoa/qcocoaapplication.mm index 0ea47d7f3b..b389635eaa 100644 --- a/src/plugins/platforms/cocoa/qcocoaapplication.mm +++ b/src/plugins/platforms/cocoa/qcocoaapplication.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoaapplicationdelegate.h b/src/plugins/platforms/cocoa/qcocoaapplicationdelegate.h index 7f8d1dfacd..00546d6fe5 100644 --- a/src/plugins/platforms/cocoa/qcocoaapplicationdelegate.h +++ b/src/plugins/platforms/cocoa/qcocoaapplicationdelegate.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoaapplicationdelegate.mm b/src/plugins/platforms/cocoa/qcocoaapplicationdelegate.mm index debda91243..26928d0df5 100644 --- a/src/plugins/platforms/cocoa/qcocoaapplicationdelegate.mm +++ b/src/plugins/platforms/cocoa/qcocoaapplicationdelegate.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoaautoreleasepool.h b/src/plugins/platforms/cocoa/qcocoaautoreleasepool.h index 359b5d34d0..1ce2c1bd05 100644 --- a/src/plugins/platforms/cocoa/qcocoaautoreleasepool.h +++ b/src/plugins/platforms/cocoa/qcocoaautoreleasepool.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoaautoreleasepool.mm b/src/plugins/platforms/cocoa/qcocoaautoreleasepool.mm index d97793634e..e6d7ecc82b 100644 --- a/src/plugins/platforms/cocoa/qcocoaautoreleasepool.mm +++ b/src/plugins/platforms/cocoa/qcocoaautoreleasepool.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoabackingstore.h b/src/plugins/platforms/cocoa/qcocoabackingstore.h index 938e27347c..70ac8e109c 100644 --- a/src/plugins/platforms/cocoa/qcocoabackingstore.h +++ b/src/plugins/platforms/cocoa/qcocoabackingstore.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoabackingstore.mm b/src/plugins/platforms/cocoa/qcocoabackingstore.mm index d278392409..8f7b0aafde 100644 --- a/src/plugins/platforms/cocoa/qcocoabackingstore.mm +++ b/src/plugins/platforms/cocoa/qcocoabackingstore.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoacursor.h b/src/plugins/platforms/cocoa/qcocoacursor.h index dd66185f70..2c58994119 100644 --- a/src/plugins/platforms/cocoa/qcocoacursor.h +++ b/src/plugins/platforms/cocoa/qcocoacursor.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoacursor.mm b/src/plugins/platforms/cocoa/qcocoacursor.mm index 67386c78e1..cd0a173596 100644 --- a/src/plugins/platforms/cocoa/qcocoacursor.mm +++ b/src/plugins/platforms/cocoa/qcocoacursor.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoaeventdispatcher.h b/src/plugins/platforms/cocoa/qcocoaeventdispatcher.h index a83bde03ea..c66b4b77f8 100644 --- a/src/plugins/platforms/cocoa/qcocoaeventdispatcher.h +++ b/src/plugins/platforms/cocoa/qcocoaeventdispatcher.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoaeventdispatcher.mm b/src/plugins/platforms/cocoa/qcocoaeventdispatcher.mm index 35b6866a0a..18f0ee1c5e 100644 --- a/src/plugins/platforms/cocoa/qcocoaeventdispatcher.mm +++ b/src/plugins/platforms/cocoa/qcocoaeventdispatcher.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoafiledialoghelper.h b/src/plugins/platforms/cocoa/qcocoafiledialoghelper.h index 4204de22c9..e99fe58570 100644 --- a/src/plugins/platforms/cocoa/qcocoafiledialoghelper.h +++ b/src/plugins/platforms/cocoa/qcocoafiledialoghelper.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoafiledialoghelper.mm b/src/plugins/platforms/cocoa/qcocoafiledialoghelper.mm index 6ff0e94dc4..a513237977 100644 --- a/src/plugins/platforms/cocoa/qcocoafiledialoghelper.mm +++ b/src/plugins/platforms/cocoa/qcocoafiledialoghelper.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoaglcontext.h b/src/plugins/platforms/cocoa/qcocoaglcontext.h index dc8a428a91..652c3b33c8 100644 --- a/src/plugins/platforms/cocoa/qcocoaglcontext.h +++ b/src/plugins/platforms/cocoa/qcocoaglcontext.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoaglcontext.mm b/src/plugins/platforms/cocoa/qcocoaglcontext.mm index 2b21f08601..08c0ce61a8 100644 --- a/src/plugins/platforms/cocoa/qcocoaglcontext.mm +++ b/src/plugins/platforms/cocoa/qcocoaglcontext.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoahelpers.h b/src/plugins/platforms/cocoa/qcocoahelpers.h index 4ab19ee3fd..61076aadd4 100644 --- a/src/plugins/platforms/cocoa/qcocoahelpers.h +++ b/src/plugins/platforms/cocoa/qcocoahelpers.h @@ -1,6 +1,6 @@ /**************************************************************************** ** - ** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). + ** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoahelpers.mm b/src/plugins/platforms/cocoa/qcocoahelpers.mm index 1ac6911461..50e9122966 100644 --- a/src/plugins/platforms/cocoa/qcocoahelpers.mm +++ b/src/plugins/platforms/cocoa/qcocoahelpers.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** - ** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). + ** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoaintegration.h b/src/plugins/platforms/cocoa/qcocoaintegration.h index 1852173b5b..dd0c4aedfe 100644 --- a/src/plugins/platforms/cocoa/qcocoaintegration.h +++ b/src/plugins/platforms/cocoa/qcocoaintegration.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoaintegration.mm b/src/plugins/platforms/cocoa/qcocoaintegration.mm index 03348bb434..7d91be776a 100644 --- a/src/plugins/platforms/cocoa/qcocoaintegration.mm +++ b/src/plugins/platforms/cocoa/qcocoaintegration.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoamenu.h b/src/plugins/platforms/cocoa/qcocoamenu.h index 4e8ce20580..e0ba8a116f 100644 --- a/src/plugins/platforms/cocoa/qcocoamenu.h +++ b/src/plugins/platforms/cocoa/qcocoamenu.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoamenu.mm b/src/plugins/platforms/cocoa/qcocoamenu.mm index 1bb5f45a94..5f695eb07a 100644 --- a/src/plugins/platforms/cocoa/qcocoamenu.mm +++ b/src/plugins/platforms/cocoa/qcocoamenu.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoamenuloader.h b/src/plugins/platforms/cocoa/qcocoamenuloader.h index 2fcda512f0..c4b56a6d19 100644 --- a/src/plugins/platforms/cocoa/qcocoamenuloader.h +++ b/src/plugins/platforms/cocoa/qcocoamenuloader.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoamenuloader.mm b/src/plugins/platforms/cocoa/qcocoamenuloader.mm index 353808655f..3c7d3c8bff 100644 --- a/src/plugins/platforms/cocoa/qcocoamenuloader.mm +++ b/src/plugins/platforms/cocoa/qcocoamenuloader.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoanativeinterface.h b/src/plugins/platforms/cocoa/qcocoanativeinterface.h index f8216d8e61..3c190aedb2 100644 --- a/src/plugins/platforms/cocoa/qcocoanativeinterface.h +++ b/src/plugins/platforms/cocoa/qcocoanativeinterface.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoanativeinterface.mm b/src/plugins/platforms/cocoa/qcocoanativeinterface.mm index e48d588e5a..426ac1e494 100644 --- a/src/plugins/platforms/cocoa/qcocoanativeinterface.mm +++ b/src/plugins/platforms/cocoa/qcocoanativeinterface.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoatheme.h b/src/plugins/platforms/cocoa/qcocoatheme.h index 8a7add73a8..901f6443f9 100644 --- a/src/plugins/platforms/cocoa/qcocoatheme.h +++ b/src/plugins/platforms/cocoa/qcocoatheme.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoatheme.mm b/src/plugins/platforms/cocoa/qcocoatheme.mm index ef73cc2abe..db333417a9 100644 --- a/src/plugins/platforms/cocoa/qcocoatheme.mm +++ b/src/plugins/platforms/cocoa/qcocoatheme.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoawindow.h b/src/plugins/platforms/cocoa/qcocoawindow.h index 2c5f6b5db0..d3dc7d5f91 100644 --- a/src/plugins/platforms/cocoa/qcocoawindow.h +++ b/src/plugins/platforms/cocoa/qcocoawindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qcocoawindow.mm b/src/plugins/platforms/cocoa/qcocoawindow.mm index d200ed4038..b65d371c63 100644 --- a/src/plugins/platforms/cocoa/qcocoawindow.mm +++ b/src/plugins/platforms/cocoa/qcocoawindow.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qmenu_mac.h b/src/plugins/platforms/cocoa/qmenu_mac.h index 0bca25ff5f..1e72b2fa41 100644 --- a/src/plugins/platforms/cocoa/qmenu_mac.h +++ b/src/plugins/platforms/cocoa/qmenu_mac.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qmenu_mac.mm b/src/plugins/platforms/cocoa/qmenu_mac.mm index dde6464392..db6dda79f1 100644 --- a/src/plugins/platforms/cocoa/qmenu_mac.mm +++ b/src/plugins/platforms/cocoa/qmenu_mac.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qmultitouch_mac.mm b/src/plugins/platforms/cocoa/qmultitouch_mac.mm index f680f022ae..cc85c47c58 100644 --- a/src/plugins/platforms/cocoa/qmultitouch_mac.mm +++ b/src/plugins/platforms/cocoa/qmultitouch_mac.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qmultitouch_mac_p.h b/src/plugins/platforms/cocoa/qmultitouch_mac_p.h index 811813c963..146c21d53c 100644 --- a/src/plugins/platforms/cocoa/qmultitouch_mac_p.h +++ b/src/plugins/platforms/cocoa/qmultitouch_mac_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qnsview.h b/src/plugins/platforms/cocoa/qnsview.h index f3d5c9bb43..b778c7c87b 100644 --- a/src/plugins/platforms/cocoa/qnsview.h +++ b/src/plugins/platforms/cocoa/qnsview.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qnsview.mm b/src/plugins/platforms/cocoa/qnsview.mm index da6f894790..c853e721a4 100644 --- a/src/plugins/platforms/cocoa/qnsview.mm +++ b/src/plugins/platforms/cocoa/qnsview.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qnsviewaccessibility.mm b/src/plugins/platforms/cocoa/qnsviewaccessibility.mm index 562ad4264a..2e59931dd5 100644 --- a/src/plugins/platforms/cocoa/qnsviewaccessibility.mm +++ b/src/plugins/platforms/cocoa/qnsviewaccessibility.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qnswindowdelegate.h b/src/plugins/platforms/cocoa/qnswindowdelegate.h index 5cd226a71d..c41477cc49 100644 --- a/src/plugins/platforms/cocoa/qnswindowdelegate.h +++ b/src/plugins/platforms/cocoa/qnswindowdelegate.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/cocoa/qnswindowdelegate.mm b/src/plugins/platforms/cocoa/qnswindowdelegate.mm index 869ef7840b..ddbff031c9 100644 --- a/src/plugins/platforms/cocoa/qnswindowdelegate.mm +++ b/src/plugins/platforms/cocoa/qnswindowdelegate.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/directfb/main.cpp b/src/plugins/platforms/directfb/main.cpp index 1a254e4fe7..77d8a7e519 100644 --- a/src/plugins/platforms/directfb/main.cpp +++ b/src/plugins/platforms/directfb/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/directfb/qdirectfb_egl.cpp b/src/plugins/platforms/directfb/qdirectfb_egl.cpp index 958a3be5e3..0736b284c9 100644 --- a/src/plugins/platforms/directfb/qdirectfb_egl.cpp +++ b/src/plugins/platforms/directfb/qdirectfb_egl.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/directfb/qdirectfb_egl.h b/src/plugins/platforms/directfb/qdirectfb_egl.h index 9e53939232..652a5b53da 100644 --- a/src/plugins/platforms/directfb/qdirectfb_egl.h +++ b/src/plugins/platforms/directfb/qdirectfb_egl.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/directfb/qdirectfbbackingstore.cpp b/src/plugins/platforms/directfb/qdirectfbbackingstore.cpp index 9666deb1c7..8e03cde101 100644 --- a/src/plugins/platforms/directfb/qdirectfbbackingstore.cpp +++ b/src/plugins/platforms/directfb/qdirectfbbackingstore.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/directfb/qdirectfbbackingstore.h b/src/plugins/platforms/directfb/qdirectfbbackingstore.h index 2b129d547e..d51237e7e8 100644 --- a/src/plugins/platforms/directfb/qdirectfbbackingstore.h +++ b/src/plugins/platforms/directfb/qdirectfbbackingstore.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/directfb/qdirectfbblitter.cpp b/src/plugins/platforms/directfb/qdirectfbblitter.cpp index 63b98a3fcb..bb5fa0b288 100644 --- a/src/plugins/platforms/directfb/qdirectfbblitter.cpp +++ b/src/plugins/platforms/directfb/qdirectfbblitter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/directfb/qdirectfbblitter.h b/src/plugins/platforms/directfb/qdirectfbblitter.h index d1c6a0d6ee..99120dd25f 100644 --- a/src/plugins/platforms/directfb/qdirectfbblitter.h +++ b/src/plugins/platforms/directfb/qdirectfbblitter.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/directfb/qdirectfbconvenience.cpp b/src/plugins/platforms/directfb/qdirectfbconvenience.cpp index a448cc7f6f..9df56ac66a 100644 --- a/src/plugins/platforms/directfb/qdirectfbconvenience.cpp +++ b/src/plugins/platforms/directfb/qdirectfbconvenience.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/directfb/qdirectfbconvenience.h b/src/plugins/platforms/directfb/qdirectfbconvenience.h index 3a6176a216..1dfce81eab 100644 --- a/src/plugins/platforms/directfb/qdirectfbconvenience.h +++ b/src/plugins/platforms/directfb/qdirectfbconvenience.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/directfb/qdirectfbcursor.cpp b/src/plugins/platforms/directfb/qdirectfbcursor.cpp index 1d3b2b37a3..3967630fde 100644 --- a/src/plugins/platforms/directfb/qdirectfbcursor.cpp +++ b/src/plugins/platforms/directfb/qdirectfbcursor.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/directfb/qdirectfbcursor.h b/src/plugins/platforms/directfb/qdirectfbcursor.h index ec0c7446fa..8a95f03d61 100644 --- a/src/plugins/platforms/directfb/qdirectfbcursor.h +++ b/src/plugins/platforms/directfb/qdirectfbcursor.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/directfb/qdirectfbglcontext.cpp b/src/plugins/platforms/directfb/qdirectfbglcontext.cpp index 7c888ddcac..91ae24d976 100644 --- a/src/plugins/platforms/directfb/qdirectfbglcontext.cpp +++ b/src/plugins/platforms/directfb/qdirectfbglcontext.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/directfb/qdirectfbglcontext.h b/src/plugins/platforms/directfb/qdirectfbglcontext.h index 2311ff2d04..4a6018a99a 100644 --- a/src/plugins/platforms/directfb/qdirectfbglcontext.h +++ b/src/plugins/platforms/directfb/qdirectfbglcontext.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/directfb/qdirectfbinput.cpp b/src/plugins/platforms/directfb/qdirectfbinput.cpp index 3b803537ba..bcb291cdde 100644 --- a/src/plugins/platforms/directfb/qdirectfbinput.cpp +++ b/src/plugins/platforms/directfb/qdirectfbinput.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/directfb/qdirectfbinput.h b/src/plugins/platforms/directfb/qdirectfbinput.h index 5641943970..ab9aa912a1 100644 --- a/src/plugins/platforms/directfb/qdirectfbinput.h +++ b/src/plugins/platforms/directfb/qdirectfbinput.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/directfb/qdirectfbintegration.cpp b/src/plugins/platforms/directfb/qdirectfbintegration.cpp index b40e64e25a..6c579f0dc7 100644 --- a/src/plugins/platforms/directfb/qdirectfbintegration.cpp +++ b/src/plugins/platforms/directfb/qdirectfbintegration.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/directfb/qdirectfbintegration.h b/src/plugins/platforms/directfb/qdirectfbintegration.h index 42a085261d..58372b4178 100644 --- a/src/plugins/platforms/directfb/qdirectfbintegration.h +++ b/src/plugins/platforms/directfb/qdirectfbintegration.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/directfb/qdirectfbscreen.cpp b/src/plugins/platforms/directfb/qdirectfbscreen.cpp index c903a2995c..6b9855e489 100644 --- a/src/plugins/platforms/directfb/qdirectfbscreen.cpp +++ b/src/plugins/platforms/directfb/qdirectfbscreen.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/directfb/qdirectfbscreen.h b/src/plugins/platforms/directfb/qdirectfbscreen.h index b9d53beaa5..a3e1f1eebf 100644 --- a/src/plugins/platforms/directfb/qdirectfbscreen.h +++ b/src/plugins/platforms/directfb/qdirectfbscreen.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/directfb/qdirectfbwindow.cpp b/src/plugins/platforms/directfb/qdirectfbwindow.cpp index ed26ce2c63..b18970cb50 100644 --- a/src/plugins/platforms/directfb/qdirectfbwindow.cpp +++ b/src/plugins/platforms/directfb/qdirectfbwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/directfb/qdirectfbwindow.h b/src/plugins/platforms/directfb/qdirectfbwindow.h index 35b44ca8df..bf009a1441 100644 --- a/src/plugins/platforms/directfb/qdirectfbwindow.h +++ b/src/plugins/platforms/directfb/qdirectfbwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/eglfs/main.cpp b/src/plugins/platforms/eglfs/main.cpp index 050dc62ac7..f88ef1c928 100644 --- a/src/plugins/platforms/eglfs/main.cpp +++ b/src/plugins/platforms/eglfs/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/eglfs/qeglfsbackingstore.cpp b/src/plugins/platforms/eglfs/qeglfsbackingstore.cpp index bbe5864cc5..448958758a 100644 --- a/src/plugins/platforms/eglfs/qeglfsbackingstore.cpp +++ b/src/plugins/platforms/eglfs/qeglfsbackingstore.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/eglfs/qeglfsbackingstore.h b/src/plugins/platforms/eglfs/qeglfsbackingstore.h index d6a28a7665..7057544174 100644 --- a/src/plugins/platforms/eglfs/qeglfsbackingstore.h +++ b/src/plugins/platforms/eglfs/qeglfsbackingstore.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/eglfs/qeglfsintegration.cpp b/src/plugins/platforms/eglfs/qeglfsintegration.cpp index c2717a33d4..12d196ffd6 100644 --- a/src/plugins/platforms/eglfs/qeglfsintegration.cpp +++ b/src/plugins/platforms/eglfs/qeglfsintegration.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/eglfs/qeglfsintegration.h b/src/plugins/platforms/eglfs/qeglfsintegration.h index 9538850faf..997ed3afd2 100644 --- a/src/plugins/platforms/eglfs/qeglfsintegration.h +++ b/src/plugins/platforms/eglfs/qeglfsintegration.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/eglfs/qeglfsscreen.cpp b/src/plugins/platforms/eglfs/qeglfsscreen.cpp index abbe0d951f..ad1db3cd1c 100644 --- a/src/plugins/platforms/eglfs/qeglfsscreen.cpp +++ b/src/plugins/platforms/eglfs/qeglfsscreen.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/eglfs/qeglfsscreen.h b/src/plugins/platforms/eglfs/qeglfsscreen.h index 41465d871c..c9b9ecd442 100644 --- a/src/plugins/platforms/eglfs/qeglfsscreen.h +++ b/src/plugins/platforms/eglfs/qeglfsscreen.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/eglfs/qeglfswindow.cpp b/src/plugins/platforms/eglfs/qeglfswindow.cpp index a6115cc829..7c5df8b197 100644 --- a/src/plugins/platforms/eglfs/qeglfswindow.cpp +++ b/src/plugins/platforms/eglfs/qeglfswindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/eglfs/qeglfswindow.h b/src/plugins/platforms/eglfs/qeglfswindow.h index 09f553d3b7..83ad7886b3 100644 --- a/src/plugins/platforms/eglfs/qeglfswindow.h +++ b/src/plugins/platforms/eglfs/qeglfswindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/kms/main.cpp b/src/plugins/platforms/kms/main.cpp index a07f1645dc..743b82dbf4 100644 --- a/src/plugins/platforms/kms/main.cpp +++ b/src/plugins/platforms/kms/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/kms/qkmsbackingstore.cpp b/src/plugins/platforms/kms/qkmsbackingstore.cpp index eb682e8ab3..7d6e709c4d 100644 --- a/src/plugins/platforms/kms/qkmsbackingstore.cpp +++ b/src/plugins/platforms/kms/qkmsbackingstore.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/kms/qkmsbackingstore.h b/src/plugins/platforms/kms/qkmsbackingstore.h index e270d04db0..6d06697cf1 100644 --- a/src/plugins/platforms/kms/qkmsbackingstore.h +++ b/src/plugins/platforms/kms/qkmsbackingstore.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/kms/qkmsbuffermanager.cpp b/src/plugins/platforms/kms/qkmsbuffermanager.cpp index 0c2eec0f3b..743c592383 100644 --- a/src/plugins/platforms/kms/qkmsbuffermanager.cpp +++ b/src/plugins/platforms/kms/qkmsbuffermanager.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/kms/qkmsbuffermanager.h b/src/plugins/platforms/kms/qkmsbuffermanager.h index 59db7ebeb1..1a0a41cf47 100644 --- a/src/plugins/platforms/kms/qkmsbuffermanager.h +++ b/src/plugins/platforms/kms/qkmsbuffermanager.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/kms/qkmscontext.cpp b/src/plugins/platforms/kms/qkmscontext.cpp index f27673a24d..5a966deca4 100644 --- a/src/plugins/platforms/kms/qkmscontext.cpp +++ b/src/plugins/platforms/kms/qkmscontext.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/kms/qkmscontext.h b/src/plugins/platforms/kms/qkmscontext.h index 2f4f44c3d0..e1c636d925 100644 --- a/src/plugins/platforms/kms/qkmscontext.h +++ b/src/plugins/platforms/kms/qkmscontext.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/kms/qkmscursor.cpp b/src/plugins/platforms/kms/qkmscursor.cpp index 91c23b0f1c..825c884a98 100644 --- a/src/plugins/platforms/kms/qkmscursor.cpp +++ b/src/plugins/platforms/kms/qkmscursor.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/kms/qkmscursor.h b/src/plugins/platforms/kms/qkmscursor.h index 96be88e991..b4276c7b0c 100644 --- a/src/plugins/platforms/kms/qkmscursor.h +++ b/src/plugins/platforms/kms/qkmscursor.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/kms/qkmsdevice.cpp b/src/plugins/platforms/kms/qkmsdevice.cpp index e0fac5611d..ed33829baa 100644 --- a/src/plugins/platforms/kms/qkmsdevice.cpp +++ b/src/plugins/platforms/kms/qkmsdevice.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/kms/qkmsdevice.h b/src/plugins/platforms/kms/qkmsdevice.h index 4868a72ede..5b4583a03b 100644 --- a/src/plugins/platforms/kms/qkmsdevice.h +++ b/src/plugins/platforms/kms/qkmsdevice.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/kms/qkmsintegration.cpp b/src/plugins/platforms/kms/qkmsintegration.cpp index d0055f258a..5d219d7327 100644 --- a/src/plugins/platforms/kms/qkmsintegration.cpp +++ b/src/plugins/platforms/kms/qkmsintegration.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/kms/qkmsintegration.h b/src/plugins/platforms/kms/qkmsintegration.h index 15bbd1b827..4b3f5dc74b 100644 --- a/src/plugins/platforms/kms/qkmsintegration.h +++ b/src/plugins/platforms/kms/qkmsintegration.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/kms/qkmsscreen.cpp b/src/plugins/platforms/kms/qkmsscreen.cpp index 9ea20ae505..26189b2d13 100644 --- a/src/plugins/platforms/kms/qkmsscreen.cpp +++ b/src/plugins/platforms/kms/qkmsscreen.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/kms/qkmsscreen.h b/src/plugins/platforms/kms/qkmsscreen.h index 5807366f8b..f78663dbf4 100644 --- a/src/plugins/platforms/kms/qkmsscreen.h +++ b/src/plugins/platforms/kms/qkmsscreen.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/kms/qkmswindow.cpp b/src/plugins/platforms/kms/qkmswindow.cpp index 63271c4ef5..5d540a8eb6 100644 --- a/src/plugins/platforms/kms/qkmswindow.cpp +++ b/src/plugins/platforms/kms/qkmswindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/kms/qkmswindow.h b/src/plugins/platforms/kms/qkmswindow.h index 789d42e6f8..6433ab7fd9 100644 --- a/src/plugins/platforms/kms/qkmswindow.h +++ b/src/plugins/platforms/kms/qkmswindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/linuxfb/main.cpp b/src/plugins/platforms/linuxfb/main.cpp index aca8110c77..99efc68a32 100644 --- a/src/plugins/platforms/linuxfb/main.cpp +++ b/src/plugins/platforms/linuxfb/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/linuxfb/qlinuxfbintegration.cpp b/src/plugins/platforms/linuxfb/qlinuxfbintegration.cpp index 1c098a0ffc..7f76b045de 100644 --- a/src/plugins/platforms/linuxfb/qlinuxfbintegration.cpp +++ b/src/plugins/platforms/linuxfb/qlinuxfbintegration.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/linuxfb/qlinuxfbintegration.h b/src/plugins/platforms/linuxfb/qlinuxfbintegration.h index f972a30452..1c10a6b8fc 100644 --- a/src/plugins/platforms/linuxfb/qlinuxfbintegration.h +++ b/src/plugins/platforms/linuxfb/qlinuxfbintegration.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/minimal/main.cpp b/src/plugins/platforms/minimal/main.cpp index 2627855ea0..4d9b24edc1 100644 --- a/src/plugins/platforms/minimal/main.cpp +++ b/src/plugins/platforms/minimal/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/minimal/qminimalbackingstore.cpp b/src/plugins/platforms/minimal/qminimalbackingstore.cpp index 08281405a4..c564e8eff0 100644 --- a/src/plugins/platforms/minimal/qminimalbackingstore.cpp +++ b/src/plugins/platforms/minimal/qminimalbackingstore.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/minimal/qminimalbackingstore.h b/src/plugins/platforms/minimal/qminimalbackingstore.h index 9b61275e9d..717474cd27 100644 --- a/src/plugins/platforms/minimal/qminimalbackingstore.h +++ b/src/plugins/platforms/minimal/qminimalbackingstore.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/minimal/qminimalintegration.cpp b/src/plugins/platforms/minimal/qminimalintegration.cpp index 7d882caecf..05fd28a08b 100644 --- a/src/plugins/platforms/minimal/qminimalintegration.cpp +++ b/src/plugins/platforms/minimal/qminimalintegration.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/minimal/qminimalintegration.h b/src/plugins/platforms/minimal/qminimalintegration.h index 0835c39ab6..01118c32ee 100644 --- a/src/plugins/platforms/minimal/qminimalintegration.h +++ b/src/plugins/platforms/minimal/qminimalintegration.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openkode/main.cpp b/src/plugins/platforms/openkode/main.cpp index a93ee780f8..7b857d288c 100644 --- a/src/plugins/platforms/openkode/main.cpp +++ b/src/plugins/platforms/openkode/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openkode/openkodekeytranslator.h b/src/plugins/platforms/openkode/openkodekeytranslator.h index cd99daf1fa..37f697a787 100644 --- a/src/plugins/platforms/openkode/openkodekeytranslator.h +++ b/src/plugins/platforms/openkode/openkodekeytranslator.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openkode/qopenkodeeventloopintegration.cpp b/src/plugins/platforms/openkode/qopenkodeeventloopintegration.cpp index 418b3d7ae6..c4808790e0 100644 --- a/src/plugins/platforms/openkode/qopenkodeeventloopintegration.cpp +++ b/src/plugins/platforms/openkode/qopenkodeeventloopintegration.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openkode/qopenkodeeventloopintegration.h b/src/plugins/platforms/openkode/qopenkodeeventloopintegration.h index 7dadc29148..1e9960f011 100644 --- a/src/plugins/platforms/openkode/qopenkodeeventloopintegration.h +++ b/src/plugins/platforms/openkode/qopenkodeeventloopintegration.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openkode/qopenkodeintegration.cpp b/src/plugins/platforms/openkode/qopenkodeintegration.cpp index 38c4325bb4..c882cb96c7 100644 --- a/src/plugins/platforms/openkode/qopenkodeintegration.cpp +++ b/src/plugins/platforms/openkode/qopenkodeintegration.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openkode/qopenkodeintegration.h b/src/plugins/platforms/openkode/qopenkodeintegration.h index 43961add6d..c10aecb821 100644 --- a/src/plugins/platforms/openkode/qopenkodeintegration.h +++ b/src/plugins/platforms/openkode/qopenkodeintegration.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openkode/qopenkodewindow.cpp b/src/plugins/platforms/openkode/qopenkodewindow.cpp index e20904470f..14f7438b99 100644 --- a/src/plugins/platforms/openkode/qopenkodewindow.cpp +++ b/src/plugins/platforms/openkode/qopenkodewindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openkode/qopenkodewindow.h b/src/plugins/platforms/openkode/qopenkodewindow.h index f48c3a2bc0..3142aa2faa 100644 --- a/src/plugins/platforms/openkode/qopenkodewindow.h +++ b/src/plugins/platforms/openkode/qopenkodewindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openkode/shaders/frag.glslf b/src/plugins/platforms/openkode/shaders/frag.glslf index 2d54d90e46..a48a342679 100644 --- a/src/plugins/platforms/openkode/shaders/frag.glslf +++ b/src/plugins/platforms/openkode/shaders/frag.glslf @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openkode/shaders/vert.glslv b/src/plugins/platforms/openkode/shaders/vert.glslv index 22dee8c8ac..3eb8010773 100644 --- a/src/plugins/platforms/openkode/shaders/vert.glslv +++ b/src/plugins/platforms/openkode/shaders/vert.glslv @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openvglite/main.cpp b/src/plugins/platforms/openvglite/main.cpp index 19220a6574..de6b2e38b3 100644 --- a/src/plugins/platforms/openvglite/main.cpp +++ b/src/plugins/platforms/openvglite/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openvglite/qgraphicssystem_vglite.cpp b/src/plugins/platforms/openvglite/qgraphicssystem_vglite.cpp index d8e4cc984c..29a02fedb5 100644 --- a/src/plugins/platforms/openvglite/qgraphicssystem_vglite.cpp +++ b/src/plugins/platforms/openvglite/qgraphicssystem_vglite.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openvglite/qgraphicssystem_vglite.h b/src/plugins/platforms/openvglite/qgraphicssystem_vglite.h index 6dc6a38439..c661ad8ffe 100644 --- a/src/plugins/platforms/openvglite/qgraphicssystem_vglite.h +++ b/src/plugins/platforms/openvglite/qgraphicssystem_vglite.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openvglite/qwindowsurface_vglite.cpp b/src/plugins/platforms/openvglite/qwindowsurface_vglite.cpp index dad23c1638..17136b88a1 100644 --- a/src/plugins/platforms/openvglite/qwindowsurface_vglite.cpp +++ b/src/plugins/platforms/openvglite/qwindowsurface_vglite.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openvglite/qwindowsurface_vglite.h b/src/plugins/platforms/openvglite/qwindowsurface_vglite.h index b6e22d820c..2bd7b9e417 100644 --- a/src/plugins/platforms/openvglite/qwindowsurface_vglite.h +++ b/src/plugins/platforms/openvglite/qwindowsurface_vglite.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openwfd/main.cpp b/src/plugins/platforms/openwfd/main.cpp index c0159e7218..c7c05718ad 100644 --- a/src/plugins/platforms/openwfd/main.cpp +++ b/src/plugins/platforms/openwfd/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openwfd/qopenwfdbackingstore.cpp b/src/plugins/platforms/openwfd/qopenwfdbackingstore.cpp index 9e2d86a618..b166d6e7f9 100644 --- a/src/plugins/platforms/openwfd/qopenwfdbackingstore.cpp +++ b/src/plugins/platforms/openwfd/qopenwfdbackingstore.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openwfd/qopenwfdbackingstore.h b/src/plugins/platforms/openwfd/qopenwfdbackingstore.h index c173de6c19..f7b2bb9734 100644 --- a/src/plugins/platforms/openwfd/qopenwfdbackingstore.h +++ b/src/plugins/platforms/openwfd/qopenwfdbackingstore.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openwfd/qopenwfddevice.cpp b/src/plugins/platforms/openwfd/qopenwfddevice.cpp index d3ff6d45d8..5c3049cfe4 100644 --- a/src/plugins/platforms/openwfd/qopenwfddevice.cpp +++ b/src/plugins/platforms/openwfd/qopenwfddevice.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openwfd/qopenwfddevice.h b/src/plugins/platforms/openwfd/qopenwfddevice.h index 83a5539124..32c3c0f74b 100644 --- a/src/plugins/platforms/openwfd/qopenwfddevice.h +++ b/src/plugins/platforms/openwfd/qopenwfddevice.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openwfd/qopenwfdevent.cpp b/src/plugins/platforms/openwfd/qopenwfdevent.cpp index 748dde65e7..3a54210bf8 100644 --- a/src/plugins/platforms/openwfd/qopenwfdevent.cpp +++ b/src/plugins/platforms/openwfd/qopenwfdevent.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openwfd/qopenwfdevent.h b/src/plugins/platforms/openwfd/qopenwfdevent.h index 3010fdb55b..e807afbe36 100644 --- a/src/plugins/platforms/openwfd/qopenwfdevent.h +++ b/src/plugins/platforms/openwfd/qopenwfdevent.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openwfd/qopenwfdglcontext.cpp b/src/plugins/platforms/openwfd/qopenwfdglcontext.cpp index 0db717c4d6..e83c0da42c 100644 --- a/src/plugins/platforms/openwfd/qopenwfdglcontext.cpp +++ b/src/plugins/platforms/openwfd/qopenwfdglcontext.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openwfd/qopenwfdglcontext.h b/src/plugins/platforms/openwfd/qopenwfdglcontext.h index 3287a853c7..bef8739fcb 100644 --- a/src/plugins/platforms/openwfd/qopenwfdglcontext.h +++ b/src/plugins/platforms/openwfd/qopenwfdglcontext.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openwfd/qopenwfdintegration.cpp b/src/plugins/platforms/openwfd/qopenwfdintegration.cpp index 3d57759183..ad9afb345d 100644 --- a/src/plugins/platforms/openwfd/qopenwfdintegration.cpp +++ b/src/plugins/platforms/openwfd/qopenwfdintegration.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openwfd/qopenwfdintegration.h b/src/plugins/platforms/openwfd/qopenwfdintegration.h index b5315b31da..0359dc60d6 100644 --- a/src/plugins/platforms/openwfd/qopenwfdintegration.h +++ b/src/plugins/platforms/openwfd/qopenwfdintegration.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openwfd/qopenwfdnativeinterface.cpp b/src/plugins/platforms/openwfd/qopenwfdnativeinterface.cpp index 758e0c4398..b9647ac9c4 100644 --- a/src/plugins/platforms/openwfd/qopenwfdnativeinterface.cpp +++ b/src/plugins/platforms/openwfd/qopenwfdnativeinterface.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openwfd/qopenwfdnativeinterface.h b/src/plugins/platforms/openwfd/qopenwfdnativeinterface.h index cff49dc8b0..5311d75f0e 100644 --- a/src/plugins/platforms/openwfd/qopenwfdnativeinterface.h +++ b/src/plugins/platforms/openwfd/qopenwfdnativeinterface.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openwfd/qopenwfdoutputbuffer.cpp b/src/plugins/platforms/openwfd/qopenwfdoutputbuffer.cpp index fb3292c31a..da144b841e 100644 --- a/src/plugins/platforms/openwfd/qopenwfdoutputbuffer.cpp +++ b/src/plugins/platforms/openwfd/qopenwfdoutputbuffer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openwfd/qopenwfdoutputbuffer.h b/src/plugins/platforms/openwfd/qopenwfdoutputbuffer.h index 1697f076a9..b852286061 100644 --- a/src/plugins/platforms/openwfd/qopenwfdoutputbuffer.h +++ b/src/plugins/platforms/openwfd/qopenwfdoutputbuffer.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openwfd/qopenwfdport.cpp b/src/plugins/platforms/openwfd/qopenwfdport.cpp index 5f38e48eed..7da54acbb7 100644 --- a/src/plugins/platforms/openwfd/qopenwfdport.cpp +++ b/src/plugins/platforms/openwfd/qopenwfdport.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openwfd/qopenwfdport.h b/src/plugins/platforms/openwfd/qopenwfdport.h index 497c43749e..9378c3bc6a 100644 --- a/src/plugins/platforms/openwfd/qopenwfdport.h +++ b/src/plugins/platforms/openwfd/qopenwfdport.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openwfd/qopenwfdportmode.cpp b/src/plugins/platforms/openwfd/qopenwfdportmode.cpp index 4e507a42a1..669ace68c3 100644 --- a/src/plugins/platforms/openwfd/qopenwfdportmode.cpp +++ b/src/plugins/platforms/openwfd/qopenwfdportmode.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openwfd/qopenwfdportmode.h b/src/plugins/platforms/openwfd/qopenwfdportmode.h index dd95339404..93297d5673 100644 --- a/src/plugins/platforms/openwfd/qopenwfdportmode.h +++ b/src/plugins/platforms/openwfd/qopenwfdportmode.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openwfd/qopenwfdscreen.cpp b/src/plugins/platforms/openwfd/qopenwfdscreen.cpp index 0d3361899b..0c6c888164 100644 --- a/src/plugins/platforms/openwfd/qopenwfdscreen.cpp +++ b/src/plugins/platforms/openwfd/qopenwfdscreen.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openwfd/qopenwfdscreen.h b/src/plugins/platforms/openwfd/qopenwfdscreen.h index fc65e504ac..5bd6cf243d 100644 --- a/src/plugins/platforms/openwfd/qopenwfdscreen.h +++ b/src/plugins/platforms/openwfd/qopenwfdscreen.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openwfd/qopenwfdwindow.cpp b/src/plugins/platforms/openwfd/qopenwfdwindow.cpp index 15dc4b11c4..00f452a226 100644 --- a/src/plugins/platforms/openwfd/qopenwfdwindow.cpp +++ b/src/plugins/platforms/openwfd/qopenwfdwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/openwfd/qopenwfdwindow.h b/src/plugins/platforms/openwfd/qopenwfdwindow.h index 3c97b014b1..10cdda650e 100644 --- a/src/plugins/platforms/openwfd/qopenwfdwindow.h +++ b/src/plugins/platforms/openwfd/qopenwfdwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/qvfb/main.cpp b/src/plugins/platforms/qvfb/main.cpp index 1c6b3907f4..a603f7a414 100644 --- a/src/plugins/platforms/qvfb/main.cpp +++ b/src/plugins/platforms/qvfb/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/qvfb/qvfbintegration.cpp b/src/plugins/platforms/qvfb/qvfbintegration.cpp index 1ddf934ee9..ae9b3ffebf 100644 --- a/src/plugins/platforms/qvfb/qvfbintegration.cpp +++ b/src/plugins/platforms/qvfb/qvfbintegration.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/qvfb/qvfbintegration.h b/src/plugins/platforms/qvfb/qvfbintegration.h index c6bfcc519c..cea8fe0594 100644 --- a/src/plugins/platforms/qvfb/qvfbintegration.h +++ b/src/plugins/platforms/qvfb/qvfbintegration.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/qvfb/qvfbwindowsurface.cpp b/src/plugins/platforms/qvfb/qvfbwindowsurface.cpp index 3fdfe29cb1..94b743ba16 100644 --- a/src/plugins/platforms/qvfb/qvfbwindowsurface.cpp +++ b/src/plugins/platforms/qvfb/qvfbwindowsurface.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/qvfb/qvfbwindowsurface.h b/src/plugins/platforms/qvfb/qvfbwindowsurface.h index 2759fae848..450f87c646 100644 --- a/src/plugins/platforms/qvfb/qvfbwindowsurface.h +++ b/src/plugins/platforms/qvfb/qvfbwindowsurface.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/uikit/examples/qmltest/main.mm b/src/plugins/platforms/uikit/examples/qmltest/main.mm index 662354e13c..33d10091d8 100644 --- a/src/plugins/platforms/uikit/examples/qmltest/main.mm +++ b/src/plugins/platforms/uikit/examples/qmltest/main.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/uikit/examples/qmltest/qml/main.qml b/src/plugins/platforms/uikit/examples/qmltest/qml/main.qml index 889a6d063f..9f787b79dd 100644 --- a/src/plugins/platforms/uikit/examples/qmltest/qml/main.qml +++ b/src/plugins/platforms/uikit/examples/qmltest/qml/main.qml @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/uikit/examples/qmltest/qmlapplicationviewer/moc_qmlapplicationviewer.cpp b/src/plugins/platforms/uikit/examples/qmltest/qmlapplicationviewer/moc_qmlapplicationviewer.cpp index a5c02becf1..cdc4c78bae 100644 --- a/src/plugins/platforms/uikit/examples/qmltest/qmlapplicationviewer/moc_qmlapplicationviewer.cpp +++ b/src/plugins/platforms/uikit/examples/qmltest/qmlapplicationviewer/moc_qmlapplicationviewer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/uikit/examples/qmltest/qmlapplicationviewer/qmlapplicationviewer.cpp b/src/plugins/platforms/uikit/examples/qmltest/qmlapplicationviewer/qmlapplicationviewer.cpp index 47d08702ac..dca4013ee8 100644 --- a/src/plugins/platforms/uikit/examples/qmltest/qmlapplicationviewer/qmlapplicationviewer.cpp +++ b/src/plugins/platforms/uikit/examples/qmltest/qmlapplicationviewer/qmlapplicationviewer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/uikit/examples/qmltest/qmlapplicationviewer/qmlapplicationviewer.h b/src/plugins/platforms/uikit/examples/qmltest/qmlapplicationviewer/qmlapplicationviewer.h index d7d9fe2307..cde3bba4e4 100644 --- a/src/plugins/platforms/uikit/examples/qmltest/qmlapplicationviewer/qmlapplicationviewer.h +++ b/src/plugins/platforms/uikit/examples/qmltest/qmlapplicationviewer/qmlapplicationviewer.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/uikit/main.mm b/src/plugins/platforms/uikit/main.mm index a0aa110508..812de5ab05 100644 --- a/src/plugins/platforms/uikit/main.mm +++ b/src/plugins/platforms/uikit/main.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/uikit/quikiteventloop.h b/src/plugins/platforms/uikit/quikiteventloop.h index 893ab233e9..4519f8b645 100644 --- a/src/plugins/platforms/uikit/quikiteventloop.h +++ b/src/plugins/platforms/uikit/quikiteventloop.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/uikit/quikiteventloop.mm b/src/plugins/platforms/uikit/quikiteventloop.mm index 8884f63475..eef5976aa9 100644 --- a/src/plugins/platforms/uikit/quikiteventloop.mm +++ b/src/plugins/platforms/uikit/quikiteventloop.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/uikit/quikitintegration.h b/src/plugins/platforms/uikit/quikitintegration.h index b8a15b3807..53ade53d48 100644 --- a/src/plugins/platforms/uikit/quikitintegration.h +++ b/src/plugins/platforms/uikit/quikitintegration.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/uikit/quikitintegration.mm b/src/plugins/platforms/uikit/quikitintegration.mm index 37ba2b9a02..6d616a5317 100644 --- a/src/plugins/platforms/uikit/quikitintegration.mm +++ b/src/plugins/platforms/uikit/quikitintegration.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/uikit/quikitscreen.h b/src/plugins/platforms/uikit/quikitscreen.h index bde4f89a1e..ca26b3d5f9 100644 --- a/src/plugins/platforms/uikit/quikitscreen.h +++ b/src/plugins/platforms/uikit/quikitscreen.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/uikit/quikitscreen.mm b/src/plugins/platforms/uikit/quikitscreen.mm index b938542df4..3955ba7e85 100644 --- a/src/plugins/platforms/uikit/quikitscreen.mm +++ b/src/plugins/platforms/uikit/quikitscreen.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/uikit/quikitsoftwareinputhandler.h b/src/plugins/platforms/uikit/quikitsoftwareinputhandler.h index 7e4f8e9ddc..9093e26049 100644 --- a/src/plugins/platforms/uikit/quikitsoftwareinputhandler.h +++ b/src/plugins/platforms/uikit/quikitsoftwareinputhandler.h @@ -2,7 +2,7 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/uikit/quikitwindow.h b/src/plugins/platforms/uikit/quikitwindow.h index 67f0242a48..b38cb877c9 100644 --- a/src/plugins/platforms/uikit/quikitwindow.h +++ b/src/plugins/platforms/uikit/quikitwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/uikit/quikitwindow.mm b/src/plugins/platforms/uikit/quikitwindow.mm index cc17dbcbfb..ddf52a8ed6 100644 --- a/src/plugins/platforms/uikit/quikitwindow.mm +++ b/src/plugins/platforms/uikit/quikitwindow.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/uikit/quikitwindowsurface.h b/src/plugins/platforms/uikit/quikitwindowsurface.h index be3f608c59..c0f486a4dd 100644 --- a/src/plugins/platforms/uikit/quikitwindowsurface.h +++ b/src/plugins/platforms/uikit/quikitwindowsurface.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/uikit/quikitwindowsurface.mm b/src/plugins/platforms/uikit/quikitwindowsurface.mm index 54723f8a1a..a78a47c2ea 100644 --- a/src/plugins/platforms/uikit/quikitwindowsurface.mm +++ b/src/plugins/platforms/uikit/quikitwindowsurface.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/vnc/main.cpp b/src/plugins/platforms/vnc/main.cpp index 333c09fc80..9fd77ea87c 100644 --- a/src/plugins/platforms/vnc/main.cpp +++ b/src/plugins/platforms/vnc/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/vnc/qvnccursor.cpp b/src/plugins/platforms/vnc/qvnccursor.cpp index 5073f534d8..44f3bf45fa 100644 --- a/src/plugins/platforms/vnc/qvnccursor.cpp +++ b/src/plugins/platforms/vnc/qvnccursor.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/vnc/qvnccursor.h b/src/plugins/platforms/vnc/qvnccursor.h index 5ca603a2da..af9d6816e9 100644 --- a/src/plugins/platforms/vnc/qvnccursor.h +++ b/src/plugins/platforms/vnc/qvnccursor.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/vnc/qvncintegration.cpp b/src/plugins/platforms/vnc/qvncintegration.cpp index 7506bff307..06eb52529a 100644 --- a/src/plugins/platforms/vnc/qvncintegration.cpp +++ b/src/plugins/platforms/vnc/qvncintegration.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/vnc/qvncintegration.h b/src/plugins/platforms/vnc/qvncintegration.h index 9787a59f0f..c594ffb142 100644 --- a/src/plugins/platforms/vnc/qvncintegration.h +++ b/src/plugins/platforms/vnc/qvncintegration.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/vnc/qvncserver.cpp b/src/plugins/platforms/vnc/qvncserver.cpp index 37412b6bd1..832206c2ea 100644 --- a/src/plugins/platforms/vnc/qvncserver.cpp +++ b/src/plugins/platforms/vnc/qvncserver.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/vnc/qvncserver.h b/src/plugins/platforms/vnc/qvncserver.h index 1ff8945f44..c3042410f4 100644 --- a/src/plugins/platforms/vnc/qvncserver.h +++ b/src/plugins/platforms/vnc/qvncserver.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/array.h b/src/plugins/platforms/windows/array.h index 699bff5ac1..f098a77d00 100644 --- a/src/plugins/platforms/windows/array.h +++ b/src/plugins/platforms/windows/array.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/main.cpp b/src/plugins/platforms/windows/main.cpp index 69ef24be72..4d8d4e732e 100644 --- a/src/plugins/platforms/windows/main.cpp +++ b/src/plugins/platforms/windows/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qtwindows_additional.h b/src/plugins/platforms/windows/qtwindows_additional.h index 770da9e9c6..abb38a1bfd 100644 --- a/src/plugins/platforms/windows/qtwindows_additional.h +++ b/src/plugins/platforms/windows/qtwindows_additional.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qtwindowsglobal.h b/src/plugins/platforms/windows/qtwindowsglobal.h index 254463e445..599fb0d201 100644 --- a/src/plugins/platforms/windows/qtwindowsglobal.h +++ b/src/plugins/platforms/windows/qtwindowsglobal.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsaccessibility.cpp b/src/plugins/platforms/windows/qwindowsaccessibility.cpp index 5539079725..1455d7af86 100644 --- a/src/plugins/platforms/windows/qwindowsaccessibility.cpp +++ b/src/plugins/platforms/windows/qwindowsaccessibility.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsaccessibility.h b/src/plugins/platforms/windows/qwindowsaccessibility.h index aec3ffd4b1..892480ecf4 100644 --- a/src/plugins/platforms/windows/qwindowsaccessibility.h +++ b/src/plugins/platforms/windows/qwindowsaccessibility.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsbackingstore.cpp b/src/plugins/platforms/windows/qwindowsbackingstore.cpp index ecabdcfcc7..56e74c5587 100644 --- a/src/plugins/platforms/windows/qwindowsbackingstore.cpp +++ b/src/plugins/platforms/windows/qwindowsbackingstore.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsbackingstore.h b/src/plugins/platforms/windows/qwindowsbackingstore.h index 72120abb34..60cc5ad787 100644 --- a/src/plugins/platforms/windows/qwindowsbackingstore.h +++ b/src/plugins/platforms/windows/qwindowsbackingstore.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsclipboard.cpp b/src/plugins/platforms/windows/qwindowsclipboard.cpp index 80520213c3..e5edab3f4b 100644 --- a/src/plugins/platforms/windows/qwindowsclipboard.cpp +++ b/src/plugins/platforms/windows/qwindowsclipboard.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsclipboard.h b/src/plugins/platforms/windows/qwindowsclipboard.h index ffe441f732..321db201e8 100644 --- a/src/plugins/platforms/windows/qwindowsclipboard.h +++ b/src/plugins/platforms/windows/qwindowsclipboard.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowscontext.cpp b/src/plugins/platforms/windows/qwindowscontext.cpp index f620cf8724..70d879e19f 100644 --- a/src/plugins/platforms/windows/qwindowscontext.cpp +++ b/src/plugins/platforms/windows/qwindowscontext.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowscontext.h b/src/plugins/platforms/windows/qwindowscontext.h index 1ff93e2d88..db57f7c097 100644 --- a/src/plugins/platforms/windows/qwindowscontext.h +++ b/src/plugins/platforms/windows/qwindowscontext.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowscursor.cpp b/src/plugins/platforms/windows/qwindowscursor.cpp index a3edd785d3..2b228e9fb8 100644 --- a/src/plugins/platforms/windows/qwindowscursor.cpp +++ b/src/plugins/platforms/windows/qwindowscursor.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowscursor.h b/src/plugins/platforms/windows/qwindowscursor.h index 261aacc09e..61ed170af2 100644 --- a/src/plugins/platforms/windows/qwindowscursor.h +++ b/src/plugins/platforms/windows/qwindowscursor.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsdialoghelpers.cpp b/src/plugins/platforms/windows/qwindowsdialoghelpers.cpp index 7a83baabb1..9023769b8b 100644 --- a/src/plugins/platforms/windows/qwindowsdialoghelpers.cpp +++ b/src/plugins/platforms/windows/qwindowsdialoghelpers.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsdialoghelpers.h b/src/plugins/platforms/windows/qwindowsdialoghelpers.h index a4fa8c4a3a..120076e58b 100644 --- a/src/plugins/platforms/windows/qwindowsdialoghelpers.h +++ b/src/plugins/platforms/windows/qwindowsdialoghelpers.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsdrag.cpp b/src/plugins/platforms/windows/qwindowsdrag.cpp index 35b2618850..cbd81b99a0 100644 --- a/src/plugins/platforms/windows/qwindowsdrag.cpp +++ b/src/plugins/platforms/windows/qwindowsdrag.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsdrag.h b/src/plugins/platforms/windows/qwindowsdrag.h index 7281eeabfc..2f2aa569f1 100644 --- a/src/plugins/platforms/windows/qwindowsdrag.h +++ b/src/plugins/platforms/windows/qwindowsdrag.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsfontdatabase.cpp b/src/plugins/platforms/windows/qwindowsfontdatabase.cpp index 7741aeb9a8..5969fbf0ab 100644 --- a/src/plugins/platforms/windows/qwindowsfontdatabase.cpp +++ b/src/plugins/platforms/windows/qwindowsfontdatabase.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsfontdatabase.h b/src/plugins/platforms/windows/qwindowsfontdatabase.h index 2e25ccf1a1..c991aed5ca 100644 --- a/src/plugins/platforms/windows/qwindowsfontdatabase.h +++ b/src/plugins/platforms/windows/qwindowsfontdatabase.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsfontdatabase_ft.cpp b/src/plugins/platforms/windows/qwindowsfontdatabase_ft.cpp index a7861998b9..c7bd5ebbb1 100644 --- a/src/plugins/platforms/windows/qwindowsfontdatabase_ft.cpp +++ b/src/plugins/platforms/windows/qwindowsfontdatabase_ft.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsfontdatabase_ft.h b/src/plugins/platforms/windows/qwindowsfontdatabase_ft.h index d9b8106227..94cf556925 100644 --- a/src/plugins/platforms/windows/qwindowsfontdatabase_ft.h +++ b/src/plugins/platforms/windows/qwindowsfontdatabase_ft.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsfontengine.cpp b/src/plugins/platforms/windows/qwindowsfontengine.cpp index b4faf597e1..f6c456bc7b 100644 --- a/src/plugins/platforms/windows/qwindowsfontengine.cpp +++ b/src/plugins/platforms/windows/qwindowsfontengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsfontengine.h b/src/plugins/platforms/windows/qwindowsfontengine.h index 9831d568ea..75968cc403 100644 --- a/src/plugins/platforms/windows/qwindowsfontengine.h +++ b/src/plugins/platforms/windows/qwindowsfontengine.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsfontenginedirectwrite.cpp b/src/plugins/platforms/windows/qwindowsfontenginedirectwrite.cpp index 6f1e12a6d0..293c1c3b15 100644 --- a/src/plugins/platforms/windows/qwindowsfontenginedirectwrite.cpp +++ b/src/plugins/platforms/windows/qwindowsfontenginedirectwrite.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsfontenginedirectwrite.h b/src/plugins/platforms/windows/qwindowsfontenginedirectwrite.h index 1dfa69e3b7..f995c49a60 100644 --- a/src/plugins/platforms/windows/qwindowsfontenginedirectwrite.h +++ b/src/plugins/platforms/windows/qwindowsfontenginedirectwrite.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsglcontext.cpp b/src/plugins/platforms/windows/qwindowsglcontext.cpp index 1685adccec..1866faecd1 100644 --- a/src/plugins/platforms/windows/qwindowsglcontext.cpp +++ b/src/plugins/platforms/windows/qwindowsglcontext.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsglcontext.h b/src/plugins/platforms/windows/qwindowsglcontext.h index f2784f3d9b..17a33a7c14 100644 --- a/src/plugins/platforms/windows/qwindowsglcontext.h +++ b/src/plugins/platforms/windows/qwindowsglcontext.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsguieventdispatcher.cpp b/src/plugins/platforms/windows/qwindowsguieventdispatcher.cpp index 06ee97278a..cd5d28317e 100644 --- a/src/plugins/platforms/windows/qwindowsguieventdispatcher.cpp +++ b/src/plugins/platforms/windows/qwindowsguieventdispatcher.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsguieventdispatcher.h b/src/plugins/platforms/windows/qwindowsguieventdispatcher.h index c385631a30..8d2bc1997b 100644 --- a/src/plugins/platforms/windows/qwindowsguieventdispatcher.h +++ b/src/plugins/platforms/windows/qwindowsguieventdispatcher.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsinputcontext.cpp b/src/plugins/platforms/windows/qwindowsinputcontext.cpp index 8cd26f1efe..41c1a6c8f0 100644 --- a/src/plugins/platforms/windows/qwindowsinputcontext.cpp +++ b/src/plugins/platforms/windows/qwindowsinputcontext.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsinputcontext.h b/src/plugins/platforms/windows/qwindowsinputcontext.h index 17cae5b158..d735d1fd93 100644 --- a/src/plugins/platforms/windows/qwindowsinputcontext.h +++ b/src/plugins/platforms/windows/qwindowsinputcontext.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsintegration.cpp b/src/plugins/platforms/windows/qwindowsintegration.cpp index cebb17c9c7..4633173e7e 100644 --- a/src/plugins/platforms/windows/qwindowsintegration.cpp +++ b/src/plugins/platforms/windows/qwindowsintegration.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsintegration.h b/src/plugins/platforms/windows/qwindowsintegration.h index 1c2a714fcb..fa133fa5de 100644 --- a/src/plugins/platforms/windows/qwindowsintegration.h +++ b/src/plugins/platforms/windows/qwindowsintegration.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsinternalmimedata.h b/src/plugins/platforms/windows/qwindowsinternalmimedata.h index 9997bddcf7..ceecd08f70 100644 --- a/src/plugins/platforms/windows/qwindowsinternalmimedata.h +++ b/src/plugins/platforms/windows/qwindowsinternalmimedata.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowskeymapper.cpp b/src/plugins/platforms/windows/qwindowskeymapper.cpp index 8049b0832d..369deb7598 100644 --- a/src/plugins/platforms/windows/qwindowskeymapper.cpp +++ b/src/plugins/platforms/windows/qwindowskeymapper.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowskeymapper.h b/src/plugins/platforms/windows/qwindowskeymapper.h index 0eb743c924..e5e50c5886 100644 --- a/src/plugins/platforms/windows/qwindowskeymapper.h +++ b/src/plugins/platforms/windows/qwindowskeymapper.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsmime.cpp b/src/plugins/platforms/windows/qwindowsmime.cpp index cd4da16cff..026ab94d32 100644 --- a/src/plugins/platforms/windows/qwindowsmime.cpp +++ b/src/plugins/platforms/windows/qwindowsmime.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsmime.h b/src/plugins/platforms/windows/qwindowsmime.h index 3b71e55cfa..adac573375 100644 --- a/src/plugins/platforms/windows/qwindowsmime.h +++ b/src/plugins/platforms/windows/qwindowsmime.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsmousehandler.cpp b/src/plugins/platforms/windows/qwindowsmousehandler.cpp index 79422be005..54a16d5013 100644 --- a/src/plugins/platforms/windows/qwindowsmousehandler.cpp +++ b/src/plugins/platforms/windows/qwindowsmousehandler.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsmousehandler.h b/src/plugins/platforms/windows/qwindowsmousehandler.h index 178936e2ec..4885d82b84 100644 --- a/src/plugins/platforms/windows/qwindowsmousehandler.h +++ b/src/plugins/platforms/windows/qwindowsmousehandler.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsnativeimage.cpp b/src/plugins/platforms/windows/qwindowsnativeimage.cpp index 2b252842e2..353366db8f 100644 --- a/src/plugins/platforms/windows/qwindowsnativeimage.cpp +++ b/src/plugins/platforms/windows/qwindowsnativeimage.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsnativeimage.h b/src/plugins/platforms/windows/qwindowsnativeimage.h index f2efca55f9..6d453b0509 100644 --- a/src/plugins/platforms/windows/qwindowsnativeimage.h +++ b/src/plugins/platforms/windows/qwindowsnativeimage.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsole.cpp b/src/plugins/platforms/windows/qwindowsole.cpp index f7b84a7b66..fc61c2aa47 100644 --- a/src/plugins/platforms/windows/qwindowsole.cpp +++ b/src/plugins/platforms/windows/qwindowsole.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsole.h b/src/plugins/platforms/windows/qwindowsole.h index 0da55a8a88..47fc22526c 100644 --- a/src/plugins/platforms/windows/qwindowsole.h +++ b/src/plugins/platforms/windows/qwindowsole.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsscreen.cpp b/src/plugins/platforms/windows/qwindowsscreen.cpp index 08696a646b..c8966f2ecc 100644 --- a/src/plugins/platforms/windows/qwindowsscreen.cpp +++ b/src/plugins/platforms/windows/qwindowsscreen.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowsscreen.h b/src/plugins/platforms/windows/qwindowsscreen.h index b424375694..dc1c8238d9 100644 --- a/src/plugins/platforms/windows/qwindowsscreen.h +++ b/src/plugins/platforms/windows/qwindowsscreen.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowstheme.cpp b/src/plugins/platforms/windows/qwindowstheme.cpp index a7001719fe..4e1b004631 100644 --- a/src/plugins/platforms/windows/qwindowstheme.cpp +++ b/src/plugins/platforms/windows/qwindowstheme.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowstheme.h b/src/plugins/platforms/windows/qwindowstheme.h index 057e30d262..67a0813835 100644 --- a/src/plugins/platforms/windows/qwindowstheme.h +++ b/src/plugins/platforms/windows/qwindowstheme.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowswindow.cpp b/src/plugins/platforms/windows/qwindowswindow.cpp index df9ad57a18..282576105f 100644 --- a/src/plugins/platforms/windows/qwindowswindow.cpp +++ b/src/plugins/platforms/windows/qwindowswindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/windows/qwindowswindow.h b/src/plugins/platforms/windows/qwindowswindow.h index 95e497acdb..364f3d0bc5 100644 --- a/src/plugins/platforms/windows/qwindowswindow.h +++ b/src/plugins/platforms/windows/qwindowswindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/main.cpp b/src/plugins/platforms/xcb/main.cpp index c544f7073d..16ef7628a7 100644 --- a/src/plugins/platforms/xcb/main.cpp +++ b/src/plugins/platforms/xcb/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/qdri2context.cpp b/src/plugins/platforms/xcb/qdri2context.cpp index 31e613d4ba..c16052f021 100644 --- a/src/plugins/platforms/xcb/qdri2context.cpp +++ b/src/plugins/platforms/xcb/qdri2context.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/qdri2context.h b/src/plugins/platforms/xcb/qdri2context.h index 6b93a0a93f..7c4dbb35c2 100644 --- a/src/plugins/platforms/xcb/qdri2context.h +++ b/src/plugins/platforms/xcb/qdri2context.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/qglxintegration.cpp b/src/plugins/platforms/xcb/qglxintegration.cpp index de41f862bd..86b7f09166 100644 --- a/src/plugins/platforms/xcb/qglxintegration.cpp +++ b/src/plugins/platforms/xcb/qglxintegration.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/qglxintegration.h b/src/plugins/platforms/xcb/qglxintegration.h index 211a654c03..93c4805ec8 100644 --- a/src/plugins/platforms/xcb/qglxintegration.h +++ b/src/plugins/platforms/xcb/qglxintegration.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/qxcbbackingstore.cpp b/src/plugins/platforms/xcb/qxcbbackingstore.cpp index fb8384212d..8f833def66 100644 --- a/src/plugins/platforms/xcb/qxcbbackingstore.cpp +++ b/src/plugins/platforms/xcb/qxcbbackingstore.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/qxcbbackingstore.h b/src/plugins/platforms/xcb/qxcbbackingstore.h index a389f97ac3..70fed46563 100644 --- a/src/plugins/platforms/xcb/qxcbbackingstore.h +++ b/src/plugins/platforms/xcb/qxcbbackingstore.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/qxcbclipboard.cpp b/src/plugins/platforms/xcb/qxcbclipboard.cpp index 03ee054f59..3c3469a73b 100644 --- a/src/plugins/platforms/xcb/qxcbclipboard.cpp +++ b/src/plugins/platforms/xcb/qxcbclipboard.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/qxcbclipboard.h b/src/plugins/platforms/xcb/qxcbclipboard.h index 3fd59964c1..9debdcefbb 100644 --- a/src/plugins/platforms/xcb/qxcbclipboard.h +++ b/src/plugins/platforms/xcb/qxcbclipboard.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/qxcbconnection.cpp b/src/plugins/platforms/xcb/qxcbconnection.cpp index 636b6da86e..de091b0308 100644 --- a/src/plugins/platforms/xcb/qxcbconnection.cpp +++ b/src/plugins/platforms/xcb/qxcbconnection.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/qxcbconnection.h b/src/plugins/platforms/xcb/qxcbconnection.h index 8f83dbb728..e41265c1e9 100644 --- a/src/plugins/platforms/xcb/qxcbconnection.h +++ b/src/plugins/platforms/xcb/qxcbconnection.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/qxcbconnection_maemo.cpp b/src/plugins/platforms/xcb/qxcbconnection_maemo.cpp index 39195b9aab..1ac8e771fc 100644 --- a/src/plugins/platforms/xcb/qxcbconnection_maemo.cpp +++ b/src/plugins/platforms/xcb/qxcbconnection_maemo.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/qxcbcursor.cpp b/src/plugins/platforms/xcb/qxcbcursor.cpp index f6856d5694..a00fdd4824 100644 --- a/src/plugins/platforms/xcb/qxcbcursor.cpp +++ b/src/plugins/platforms/xcb/qxcbcursor.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/qxcbcursor.h b/src/plugins/platforms/xcb/qxcbcursor.h index 4bbb9a928b..f766d7c74e 100644 --- a/src/plugins/platforms/xcb/qxcbcursor.h +++ b/src/plugins/platforms/xcb/qxcbcursor.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/qxcbdrag.cpp b/src/plugins/platforms/xcb/qxcbdrag.cpp index c15bbeed83..777f915c7f 100644 --- a/src/plugins/platforms/xcb/qxcbdrag.cpp +++ b/src/plugins/platforms/xcb/qxcbdrag.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/qxcbdrag.h b/src/plugins/platforms/xcb/qxcbdrag.h index 8142a77875..0233cc32b2 100644 --- a/src/plugins/platforms/xcb/qxcbdrag.h +++ b/src/plugins/platforms/xcb/qxcbdrag.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/qxcbeglsurface.h b/src/plugins/platforms/xcb/qxcbeglsurface.h index a372cd9830..c4367cf572 100644 --- a/src/plugins/platforms/xcb/qxcbeglsurface.h +++ b/src/plugins/platforms/xcb/qxcbeglsurface.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/qxcbimage.cpp b/src/plugins/platforms/xcb/qxcbimage.cpp index 569e4fc4e4..824805a983 100644 --- a/src/plugins/platforms/xcb/qxcbimage.cpp +++ b/src/plugins/platforms/xcb/qxcbimage.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/qxcbimage.h b/src/plugins/platforms/xcb/qxcbimage.h index 1e7f104084..6a06610937 100644 --- a/src/plugins/platforms/xcb/qxcbimage.h +++ b/src/plugins/platforms/xcb/qxcbimage.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/qxcbintegration.cpp b/src/plugins/platforms/xcb/qxcbintegration.cpp index 2190722f98..3cf50cbbd9 100644 --- a/src/plugins/platforms/xcb/qxcbintegration.cpp +++ b/src/plugins/platforms/xcb/qxcbintegration.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/qxcbintegration.h b/src/plugins/platforms/xcb/qxcbintegration.h index 91fcc0b6cb..8a3926dbfb 100644 --- a/src/plugins/platforms/xcb/qxcbintegration.h +++ b/src/plugins/platforms/xcb/qxcbintegration.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/qxcbkeyboard.cpp b/src/plugins/platforms/xcb/qxcbkeyboard.cpp index 581693ccb7..0eee7e4ff3 100644 --- a/src/plugins/platforms/xcb/qxcbkeyboard.cpp +++ b/src/plugins/platforms/xcb/qxcbkeyboard.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/qxcbkeyboard.h b/src/plugins/platforms/xcb/qxcbkeyboard.h index a4b6a28886..90fa4fab67 100644 --- a/src/plugins/platforms/xcb/qxcbkeyboard.h +++ b/src/plugins/platforms/xcb/qxcbkeyboard.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/qxcbmime.cpp b/src/plugins/platforms/xcb/qxcbmime.cpp index 271d41ae75..5d86a118c7 100644 --- a/src/plugins/platforms/xcb/qxcbmime.cpp +++ b/src/plugins/platforms/xcb/qxcbmime.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/qxcbmime.h b/src/plugins/platforms/xcb/qxcbmime.h index ac032db442..02be4c9c5b 100644 --- a/src/plugins/platforms/xcb/qxcbmime.h +++ b/src/plugins/platforms/xcb/qxcbmime.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/qxcbnativeinterface.cpp b/src/plugins/platforms/xcb/qxcbnativeinterface.cpp index 5e0af8d24d..52ff30991e 100644 --- a/src/plugins/platforms/xcb/qxcbnativeinterface.cpp +++ b/src/plugins/platforms/xcb/qxcbnativeinterface.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/qxcbnativeinterface.h b/src/plugins/platforms/xcb/qxcbnativeinterface.h index 0902af03eb..517e92bc64 100644 --- a/src/plugins/platforms/xcb/qxcbnativeinterface.h +++ b/src/plugins/platforms/xcb/qxcbnativeinterface.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/qxcbobject.h b/src/plugins/platforms/xcb/qxcbobject.h index a594066545..b164f63f76 100644 --- a/src/plugins/platforms/xcb/qxcbobject.h +++ b/src/plugins/platforms/xcb/qxcbobject.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/qxcbscreen.cpp b/src/plugins/platforms/xcb/qxcbscreen.cpp index 1336ddb32a..8b01b4389f 100644 --- a/src/plugins/platforms/xcb/qxcbscreen.cpp +++ b/src/plugins/platforms/xcb/qxcbscreen.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/qxcbscreen.h b/src/plugins/platforms/xcb/qxcbscreen.h index 76cc0fa1b4..1975d56189 100644 --- a/src/plugins/platforms/xcb/qxcbscreen.h +++ b/src/plugins/platforms/xcb/qxcbscreen.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/qxcbwindow.cpp b/src/plugins/platforms/xcb/qxcbwindow.cpp index 8e01c8ec40..2cd2a15fb7 100644 --- a/src/plugins/platforms/xcb/qxcbwindow.cpp +++ b/src/plugins/platforms/xcb/qxcbwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/qxcbwindow.h b/src/plugins/platforms/xcb/qxcbwindow.h index 6ff1627f98..f0b6437699 100644 --- a/src/plugins/platforms/xcb/qxcbwindow.h +++ b/src/plugins/platforms/xcb/qxcbwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/qxcbwmsupport.cpp b/src/plugins/platforms/xcb/qxcbwmsupport.cpp index 15e423e95b..f06c9c503c 100644 --- a/src/plugins/platforms/xcb/qxcbwmsupport.cpp +++ b/src/plugins/platforms/xcb/qxcbwmsupport.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xcb/qxcbwmsupport.h b/src/plugins/platforms/xcb/qxcbwmsupport.h index 7b0a21f035..faa0934a3d 100644 --- a/src/plugins/platforms/xcb/qxcbwmsupport.h +++ b/src/plugins/platforms/xcb/qxcbwmsupport.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xlib/main.cpp b/src/plugins/platforms/xlib/main.cpp index b4241fa228..41c86a5c18 100644 --- a/src/plugins/platforms/xlib/main.cpp +++ b/src/plugins/platforms/xlib/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xlib/qglxintegration.cpp b/src/plugins/platforms/xlib/qglxintegration.cpp index 6733f22093..c995070fe3 100644 --- a/src/plugins/platforms/xlib/qglxintegration.cpp +++ b/src/plugins/platforms/xlib/qglxintegration.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xlib/qglxintegration.h b/src/plugins/platforms/xlib/qglxintegration.h index e3172b718c..c1ef2c9d36 100644 --- a/src/plugins/platforms/xlib/qglxintegration.h +++ b/src/plugins/platforms/xlib/qglxintegration.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xlib/qxlibbackingstore.cpp b/src/plugins/platforms/xlib/qxlibbackingstore.cpp index 24a346a29d..954b7c32a5 100644 --- a/src/plugins/platforms/xlib/qxlibbackingstore.cpp +++ b/src/plugins/platforms/xlib/qxlibbackingstore.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xlib/qxlibbackingstore.h b/src/plugins/platforms/xlib/qxlibbackingstore.h index 35093f6784..7c0ac4b252 100644 --- a/src/plugins/platforms/xlib/qxlibbackingstore.h +++ b/src/plugins/platforms/xlib/qxlibbackingstore.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xlib/qxlibclipboard.cpp b/src/plugins/platforms/xlib/qxlibclipboard.cpp index 3ee4d4269c..601314ff4f 100644 --- a/src/plugins/platforms/xlib/qxlibclipboard.cpp +++ b/src/plugins/platforms/xlib/qxlibclipboard.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xlib/qxlibclipboard.h b/src/plugins/platforms/xlib/qxlibclipboard.h index 8fdc18b7d4..e9faef465b 100644 --- a/src/plugins/platforms/xlib/qxlibclipboard.h +++ b/src/plugins/platforms/xlib/qxlibclipboard.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xlib/qxlibcursor.cpp b/src/plugins/platforms/xlib/qxlibcursor.cpp index 7a074bc0e6..44c9ccd489 100644 --- a/src/plugins/platforms/xlib/qxlibcursor.cpp +++ b/src/plugins/platforms/xlib/qxlibcursor.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xlib/qxlibcursor.h b/src/plugins/platforms/xlib/qxlibcursor.h index fd574778d7..74d520e2d1 100644 --- a/src/plugins/platforms/xlib/qxlibcursor.h +++ b/src/plugins/platforms/xlib/qxlibcursor.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xlib/qxlibdisplay.cpp b/src/plugins/platforms/xlib/qxlibdisplay.cpp index 32cffcf4fe..9e9536c93d 100644 --- a/src/plugins/platforms/xlib/qxlibdisplay.cpp +++ b/src/plugins/platforms/xlib/qxlibdisplay.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xlib/qxlibdisplay.h b/src/plugins/platforms/xlib/qxlibdisplay.h index 650b72c6dd..02cbd42809 100644 --- a/src/plugins/platforms/xlib/qxlibdisplay.h +++ b/src/plugins/platforms/xlib/qxlibdisplay.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xlib/qxlibintegration.cpp b/src/plugins/platforms/xlib/qxlibintegration.cpp index c1f0941619..216673cc65 100644 --- a/src/plugins/platforms/xlib/qxlibintegration.cpp +++ b/src/plugins/platforms/xlib/qxlibintegration.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xlib/qxlibintegration.h b/src/plugins/platforms/xlib/qxlibintegration.h index f5150fca6f..3b505df65a 100644 --- a/src/plugins/platforms/xlib/qxlibintegration.h +++ b/src/plugins/platforms/xlib/qxlibintegration.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xlib/qxlibkeyboard.cpp b/src/plugins/platforms/xlib/qxlibkeyboard.cpp index 1d3dc83464..688ff5bf4a 100644 --- a/src/plugins/platforms/xlib/qxlibkeyboard.cpp +++ b/src/plugins/platforms/xlib/qxlibkeyboard.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xlib/qxlibkeyboard.h b/src/plugins/platforms/xlib/qxlibkeyboard.h index a33ad61d27..4f781983e6 100644 --- a/src/plugins/platforms/xlib/qxlibkeyboard.h +++ b/src/plugins/platforms/xlib/qxlibkeyboard.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xlib/qxlibmime.cpp b/src/plugins/platforms/xlib/qxlibmime.cpp index 4f29a13063..40faa7ed98 100644 --- a/src/plugins/platforms/xlib/qxlibmime.cpp +++ b/src/plugins/platforms/xlib/qxlibmime.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xlib/qxlibmime.h b/src/plugins/platforms/xlib/qxlibmime.h index ddfe908d88..a10b0002f9 100644 --- a/src/plugins/platforms/xlib/qxlibmime.h +++ b/src/plugins/platforms/xlib/qxlibmime.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xlib/qxlibnativeinterface.cpp b/src/plugins/platforms/xlib/qxlibnativeinterface.cpp index 2c706e64e4..154b31fe3f 100644 --- a/src/plugins/platforms/xlib/qxlibnativeinterface.cpp +++ b/src/plugins/platforms/xlib/qxlibnativeinterface.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xlib/qxlibnativeinterface.h b/src/plugins/platforms/xlib/qxlibnativeinterface.h index 4c6ce770b0..7bb5b01f61 100644 --- a/src/plugins/platforms/xlib/qxlibnativeinterface.h +++ b/src/plugins/platforms/xlib/qxlibnativeinterface.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xlib/qxlibscreen.cpp b/src/plugins/platforms/xlib/qxlibscreen.cpp index 314a3e4ecb..c9b8bae49a 100644 --- a/src/plugins/platforms/xlib/qxlibscreen.cpp +++ b/src/plugins/platforms/xlib/qxlibscreen.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xlib/qxlibscreen.h b/src/plugins/platforms/xlib/qxlibscreen.h index 13fc03ef0f..44d2174f17 100644 --- a/src/plugins/platforms/xlib/qxlibscreen.h +++ b/src/plugins/platforms/xlib/qxlibscreen.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xlib/qxlibstatic.cpp b/src/plugins/platforms/xlib/qxlibstatic.cpp index c9ed13aeea..147c591b85 100644 --- a/src/plugins/platforms/xlib/qxlibstatic.cpp +++ b/src/plugins/platforms/xlib/qxlibstatic.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xlib/qxlibstatic.h b/src/plugins/platforms/xlib/qxlibstatic.h index a4a2106a77..d203fa3d5d 100644 --- a/src/plugins/platforms/xlib/qxlibstatic.h +++ b/src/plugins/platforms/xlib/qxlibstatic.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xlib/qxlibwindow.cpp b/src/plugins/platforms/xlib/qxlibwindow.cpp index 70eb061c13..eeb028d359 100644 --- a/src/plugins/platforms/xlib/qxlibwindow.cpp +++ b/src/plugins/platforms/xlib/qxlibwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/platforms/xlib/qxlibwindow.h b/src/plugins/platforms/xlib/qxlibwindow.h index eb69369150..f3e83deed5 100644 --- a/src/plugins/platforms/xlib/qxlibwindow.h +++ b/src/plugins/platforms/xlib/qxlibwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/printsupport/windows/main.cpp b/src/plugins/printsupport/windows/main.cpp index 1ed8f6d0ad..415663b260 100644 --- a/src/plugins/printsupport/windows/main.cpp +++ b/src/plugins/printsupport/windows/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/printsupport/windows/qwindowsprinterinfo.cpp b/src/plugins/printsupport/windows/qwindowsprinterinfo.cpp index 09ae632587..1420186a36 100644 --- a/src/plugins/printsupport/windows/qwindowsprinterinfo.cpp +++ b/src/plugins/printsupport/windows/qwindowsprinterinfo.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/printsupport/windows/qwindowsprintersupport.cpp b/src/plugins/printsupport/windows/qwindowsprintersupport.cpp index f7033733e1..208c26ea0b 100644 --- a/src/plugins/printsupport/windows/qwindowsprintersupport.cpp +++ b/src/plugins/printsupport/windows/qwindowsprintersupport.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/printsupport/windows/qwindowsprintersupport.h b/src/plugins/printsupport/windows/qwindowsprintersupport.h index c45e79587a..2774d0693a 100644 --- a/src/plugins/printsupport/windows/qwindowsprintersupport.h +++ b/src/plugins/printsupport/windows/qwindowsprintersupport.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/sqldrivers/db2/main.cpp b/src/plugins/sqldrivers/db2/main.cpp index b8e9bdd835..1a6ca90776 100644 --- a/src/plugins/sqldrivers/db2/main.cpp +++ b/src/plugins/sqldrivers/db2/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/sqldrivers/ibase/main.cpp b/src/plugins/sqldrivers/ibase/main.cpp index 6b3e088208..059620314e 100644 --- a/src/plugins/sqldrivers/ibase/main.cpp +++ b/src/plugins/sqldrivers/ibase/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/sqldrivers/mysql/main.cpp b/src/plugins/sqldrivers/mysql/main.cpp index de16ea760e..5243c2cb33 100644 --- a/src/plugins/sqldrivers/mysql/main.cpp +++ b/src/plugins/sqldrivers/mysql/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/sqldrivers/oci/main.cpp b/src/plugins/sqldrivers/oci/main.cpp index a97126501b..8d95db8867 100644 --- a/src/plugins/sqldrivers/oci/main.cpp +++ b/src/plugins/sqldrivers/oci/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/sqldrivers/odbc/main.cpp b/src/plugins/sqldrivers/odbc/main.cpp index cd5debfd75..9b8cac6f98 100644 --- a/src/plugins/sqldrivers/odbc/main.cpp +++ b/src/plugins/sqldrivers/odbc/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/sqldrivers/psql/main.cpp b/src/plugins/sqldrivers/psql/main.cpp index ecaca84670..ce2273da5b 100644 --- a/src/plugins/sqldrivers/psql/main.cpp +++ b/src/plugins/sqldrivers/psql/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/sqldrivers/sqlite/smain.cpp b/src/plugins/sqldrivers/sqlite/smain.cpp index f61ace9f4b..8027f01bf3 100644 --- a/src/plugins/sqldrivers/sqlite/smain.cpp +++ b/src/plugins/sqldrivers/sqlite/smain.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/sqldrivers/sqlite2/smain.cpp b/src/plugins/sqldrivers/sqlite2/smain.cpp index de2299cc75..ebdb0b4d54 100644 --- a/src/plugins/sqldrivers/sqlite2/smain.cpp +++ b/src/plugins/sqldrivers/sqlite2/smain.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/plugins/sqldrivers/tds/main.cpp b/src/plugins/sqldrivers/tds/main.cpp index bde409ddc6..81e3a21f9b 100644 --- a/src/plugins/sqldrivers/tds/main.cpp +++ b/src/plugins/sqldrivers/tds/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/dialogs/qabstractpagesetupdialog.cpp b/src/printsupport/dialogs/qabstractpagesetupdialog.cpp index 8268065bfd..33408b6bd2 100644 --- a/src/printsupport/dialogs/qabstractpagesetupdialog.cpp +++ b/src/printsupport/dialogs/qabstractpagesetupdialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/dialogs/qabstractpagesetupdialog.h b/src/printsupport/dialogs/qabstractpagesetupdialog.h index 597a7258d9..821d8775da 100644 --- a/src/printsupport/dialogs/qabstractpagesetupdialog.h +++ b/src/printsupport/dialogs/qabstractpagesetupdialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/dialogs/qabstractpagesetupdialog_p.h b/src/printsupport/dialogs/qabstractpagesetupdialog_p.h index 3a4711dd6b..659114cc8e 100644 --- a/src/printsupport/dialogs/qabstractpagesetupdialog_p.h +++ b/src/printsupport/dialogs/qabstractpagesetupdialog_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/dialogs/qabstractprintdialog.cpp b/src/printsupport/dialogs/qabstractprintdialog.cpp index 25a287945c..fa91c715c0 100644 --- a/src/printsupport/dialogs/qabstractprintdialog.cpp +++ b/src/printsupport/dialogs/qabstractprintdialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/dialogs/qabstractprintdialog.h b/src/printsupport/dialogs/qabstractprintdialog.h index 2f8a750827..da6c831347 100644 --- a/src/printsupport/dialogs/qabstractprintdialog.h +++ b/src/printsupport/dialogs/qabstractprintdialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/dialogs/qabstractprintdialog_p.h b/src/printsupport/dialogs/qabstractprintdialog_p.h index e329cb3169..3ecd749f2d 100644 --- a/src/printsupport/dialogs/qabstractprintdialog_p.h +++ b/src/printsupport/dialogs/qabstractprintdialog_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/dialogs/qpagesetupdialog.cpp b/src/printsupport/dialogs/qpagesetupdialog.cpp index 9c37572c3d..f63835f5e4 100644 --- a/src/printsupport/dialogs/qpagesetupdialog.cpp +++ b/src/printsupport/dialogs/qpagesetupdialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/dialogs/qpagesetupdialog.h b/src/printsupport/dialogs/qpagesetupdialog.h index 1581ce6c41..1bc94ba9de 100644 --- a/src/printsupport/dialogs/qpagesetupdialog.h +++ b/src/printsupport/dialogs/qpagesetupdialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/dialogs/qpagesetupdialog_mac.mm b/src/printsupport/dialogs/qpagesetupdialog_mac.mm index 0bbdbcc242..d2bbfaa412 100644 --- a/src/printsupport/dialogs/qpagesetupdialog_mac.mm +++ b/src/printsupport/dialogs/qpagesetupdialog_mac.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/dialogs/qpagesetupdialog_unix.cpp b/src/printsupport/dialogs/qpagesetupdialog_unix.cpp index e5b12f8ba5..6dc182631c 100644 --- a/src/printsupport/dialogs/qpagesetupdialog_unix.cpp +++ b/src/printsupport/dialogs/qpagesetupdialog_unix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/dialogs/qpagesetupdialog_unix_p.h b/src/printsupport/dialogs/qpagesetupdialog_unix_p.h index 2303db9fe8..c51b68dcad 100644 --- a/src/printsupport/dialogs/qpagesetupdialog_unix_p.h +++ b/src/printsupport/dialogs/qpagesetupdialog_unix_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/dialogs/qpagesetupdialog_win.cpp b/src/printsupport/dialogs/qpagesetupdialog_win.cpp index f177ec4ea5..276cfc1b5b 100644 --- a/src/printsupport/dialogs/qpagesetupdialog_win.cpp +++ b/src/printsupport/dialogs/qpagesetupdialog_win.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/dialogs/qprintdialog.h b/src/printsupport/dialogs/qprintdialog.h index 06ad99d02e..09d5213bad 100644 --- a/src/printsupport/dialogs/qprintdialog.h +++ b/src/printsupport/dialogs/qprintdialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/dialogs/qprintdialog.qdoc b/src/printsupport/dialogs/qprintdialog.qdoc index 6418fa2b58..238e22df51 100644 --- a/src/printsupport/dialogs/qprintdialog.qdoc +++ b/src/printsupport/dialogs/qprintdialog.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/dialogs/qprintdialog_mac.mm b/src/printsupport/dialogs/qprintdialog_mac.mm index b1f211ffb3..a4f73ea396 100644 --- a/src/printsupport/dialogs/qprintdialog_mac.mm +++ b/src/printsupport/dialogs/qprintdialog_mac.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/dialogs/qprintdialog_unix.cpp b/src/printsupport/dialogs/qprintdialog_unix.cpp index d503623bae..2e338ad884 100644 --- a/src/printsupport/dialogs/qprintdialog_unix.cpp +++ b/src/printsupport/dialogs/qprintdialog_unix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/dialogs/qprintdialog_win.cpp b/src/printsupport/dialogs/qprintdialog_win.cpp index d413faeb18..24ba6e6910 100644 --- a/src/printsupport/dialogs/qprintdialog_win.cpp +++ b/src/printsupport/dialogs/qprintdialog_win.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/dialogs/qprintpreviewdialog.cpp b/src/printsupport/dialogs/qprintpreviewdialog.cpp index 7e5c7dac94..50783969c5 100644 --- a/src/printsupport/dialogs/qprintpreviewdialog.cpp +++ b/src/printsupport/dialogs/qprintpreviewdialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/dialogs/qprintpreviewdialog.h b/src/printsupport/dialogs/qprintpreviewdialog.h index f2997b09f5..f87cedafa7 100644 --- a/src/printsupport/dialogs/qprintpreviewdialog.h +++ b/src/printsupport/dialogs/qprintpreviewdialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/kernel/qcups.cpp b/src/printsupport/kernel/qcups.cpp index 76050d9d71..46a6545952 100644 --- a/src/printsupport/kernel/qcups.cpp +++ b/src/printsupport/kernel/qcups.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/kernel/qcups_p.h b/src/printsupport/kernel/qcups_p.h index cb7a79e486..3ad6e3e6a3 100644 --- a/src/printsupport/kernel/qcups_p.h +++ b/src/printsupport/kernel/qcups_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/kernel/qpaintengine_alpha.cpp b/src/printsupport/kernel/qpaintengine_alpha.cpp index dc40bd95fb..6c0d1d8c26 100644 --- a/src/printsupport/kernel/qpaintengine_alpha.cpp +++ b/src/printsupport/kernel/qpaintengine_alpha.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/kernel/qpaintengine_alpha_p.h b/src/printsupport/kernel/qpaintengine_alpha_p.h index 407cf96cbc..e04d2a61da 100644 --- a/src/printsupport/kernel/qpaintengine_alpha_p.h +++ b/src/printsupport/kernel/qpaintengine_alpha_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/kernel/qpaintengine_preview.cpp b/src/printsupport/kernel/qpaintengine_preview.cpp index 3cf06f5770..12de24d59d 100644 --- a/src/printsupport/kernel/qpaintengine_preview.cpp +++ b/src/printsupport/kernel/qpaintengine_preview.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/kernel/qpaintengine_preview_p.h b/src/printsupport/kernel/qpaintengine_preview_p.h index c2e11313c2..417870827e 100644 --- a/src/printsupport/kernel/qpaintengine_preview_p.h +++ b/src/printsupport/kernel/qpaintengine_preview_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/kernel/qplatformprintersupport_qpa.cpp b/src/printsupport/kernel/qplatformprintersupport_qpa.cpp index e97ca3fef4..08a59f5f1b 100644 --- a/src/printsupport/kernel/qplatformprintersupport_qpa.cpp +++ b/src/printsupport/kernel/qplatformprintersupport_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/kernel/qplatformprintersupport_qpa.h b/src/printsupport/kernel/qplatformprintersupport_qpa.h index 800713c5bb..690f91bd0b 100644 --- a/src/printsupport/kernel/qplatformprintersupport_qpa.h +++ b/src/printsupport/kernel/qplatformprintersupport_qpa.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/kernel/qplatformprintplugin.cpp b/src/printsupport/kernel/qplatformprintplugin.cpp index 8b3c75127e..6b131855e8 100644 --- a/src/printsupport/kernel/qplatformprintplugin.cpp +++ b/src/printsupport/kernel/qplatformprintplugin.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/kernel/qplatformprintplugin_qpa.h b/src/printsupport/kernel/qplatformprintplugin_qpa.h index 831a0546b0..173e7818a2 100644 --- a/src/printsupport/kernel/qplatformprintplugin_qpa.h +++ b/src/printsupport/kernel/qplatformprintplugin_qpa.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/kernel/qprintengine.h b/src/printsupport/kernel/qprintengine.h index 782b6ef8bd..222f992f62 100644 --- a/src/printsupport/kernel/qprintengine.h +++ b/src/printsupport/kernel/qprintengine.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/kernel/qprintengine_pdf.cpp b/src/printsupport/kernel/qprintengine_pdf.cpp index 7489d7118a..e66dfe5ae9 100644 --- a/src/printsupport/kernel/qprintengine_pdf.cpp +++ b/src/printsupport/kernel/qprintengine_pdf.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/kernel/qprintengine_pdf_p.h b/src/printsupport/kernel/qprintengine_pdf_p.h index 483cde9af9..c97635f941 100644 --- a/src/printsupport/kernel/qprintengine_pdf_p.h +++ b/src/printsupport/kernel/qprintengine_pdf_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/kernel/qprintengine_win.cpp b/src/printsupport/kernel/qprintengine_win.cpp index 52fd765051..48256388ea 100644 --- a/src/printsupport/kernel/qprintengine_win.cpp +++ b/src/printsupport/kernel/qprintengine_win.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/kernel/qprintengine_win_p.h b/src/printsupport/kernel/qprintengine_win_p.h index 566e42ea2f..e11b3cb63c 100644 --- a/src/printsupport/kernel/qprintengine_win_p.h +++ b/src/printsupport/kernel/qprintengine_win_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/kernel/qprinter.cpp b/src/printsupport/kernel/qprinter.cpp index 03d58667d4..ae5b2def62 100644 --- a/src/printsupport/kernel/qprinter.cpp +++ b/src/printsupport/kernel/qprinter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/kernel/qprinter.h b/src/printsupport/kernel/qprinter.h index f09a4cc798..a4964d64bc 100644 --- a/src/printsupport/kernel/qprinter.h +++ b/src/printsupport/kernel/qprinter.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/kernel/qprinter_p.h b/src/printsupport/kernel/qprinter_p.h index 362202fe32..d798207379 100644 --- a/src/printsupport/kernel/qprinter_p.h +++ b/src/printsupport/kernel/qprinter_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/kernel/qprinterinfo.cpp b/src/printsupport/kernel/qprinterinfo.cpp index baff9e88dc..c49c8ab7cd 100644 --- a/src/printsupport/kernel/qprinterinfo.cpp +++ b/src/printsupport/kernel/qprinterinfo.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/kernel/qprinterinfo.h b/src/printsupport/kernel/qprinterinfo.h index 59e6f2c138..22372158dc 100644 --- a/src/printsupport/kernel/qprinterinfo.h +++ b/src/printsupport/kernel/qprinterinfo.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/kernel/qprinterinfo_p.h b/src/printsupport/kernel/qprinterinfo_p.h index 6c94e4e227..6a30eb062e 100644 --- a/src/printsupport/kernel/qprinterinfo_p.h +++ b/src/printsupport/kernel/qprinterinfo_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/kernel/qprinterinfo_unix.cpp b/src/printsupport/kernel/qprinterinfo_unix.cpp index 63b7a2a7d9..9aeba9a4ce 100644 --- a/src/printsupport/kernel/qprinterinfo_unix.cpp +++ b/src/printsupport/kernel/qprinterinfo_unix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/kernel/qprinterinfo_unix_p.h b/src/printsupport/kernel/qprinterinfo_unix_p.h index c12aa39556..4d69e5ae21 100644 --- a/src/printsupport/kernel/qprinterinfo_unix_p.h +++ b/src/printsupport/kernel/qprinterinfo_unix_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/widgets/qprintpreviewwidget.cpp b/src/printsupport/widgets/qprintpreviewwidget.cpp index 6514a1af8b..551f9d2ced 100644 --- a/src/printsupport/widgets/qprintpreviewwidget.cpp +++ b/src/printsupport/widgets/qprintpreviewwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/printsupport/widgets/qprintpreviewwidget.h b/src/printsupport/widgets/qprintpreviewwidget.h index 1c12bc0945..d3551b9c08 100644 --- a/src/printsupport/widgets/qprintpreviewwidget.h +++ b/src/printsupport/widgets/qprintpreviewwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/drivers/db2/qsql_db2.cpp b/src/sql/drivers/db2/qsql_db2.cpp index 1cd782dbcb..f8a803568e 100644 --- a/src/sql/drivers/db2/qsql_db2.cpp +++ b/src/sql/drivers/db2/qsql_db2.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/drivers/db2/qsql_db2.h b/src/sql/drivers/db2/qsql_db2.h index 51450c134b..4982aba776 100644 --- a/src/sql/drivers/db2/qsql_db2.h +++ b/src/sql/drivers/db2/qsql_db2.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/drivers/ibase/qsql_ibase.cpp b/src/sql/drivers/ibase/qsql_ibase.cpp index f5423d963d..3d08649de9 100644 --- a/src/sql/drivers/ibase/qsql_ibase.cpp +++ b/src/sql/drivers/ibase/qsql_ibase.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/drivers/ibase/qsql_ibase.h b/src/sql/drivers/ibase/qsql_ibase.h index 878d5f2a2b..cd8d302db5 100644 --- a/src/sql/drivers/ibase/qsql_ibase.h +++ b/src/sql/drivers/ibase/qsql_ibase.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/drivers/mysql/qsql_mysql.cpp b/src/sql/drivers/mysql/qsql_mysql.cpp index 96b3b3fff1..b0d8d04d1e 100644 --- a/src/sql/drivers/mysql/qsql_mysql.cpp +++ b/src/sql/drivers/mysql/qsql_mysql.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/drivers/mysql/qsql_mysql.h b/src/sql/drivers/mysql/qsql_mysql.h index b45d7c3bab..632d29305b 100644 --- a/src/sql/drivers/mysql/qsql_mysql.h +++ b/src/sql/drivers/mysql/qsql_mysql.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/drivers/oci/qsql_oci.cpp b/src/sql/drivers/oci/qsql_oci.cpp index 059cce6f5c..9b4f887421 100644 --- a/src/sql/drivers/oci/qsql_oci.cpp +++ b/src/sql/drivers/oci/qsql_oci.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/drivers/oci/qsql_oci.h b/src/sql/drivers/oci/qsql_oci.h index 1d1bf59962..5b82829221 100644 --- a/src/sql/drivers/oci/qsql_oci.h +++ b/src/sql/drivers/oci/qsql_oci.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/drivers/odbc/qsql_odbc.cpp b/src/sql/drivers/odbc/qsql_odbc.cpp index 168ea22e3e..ed7700eea4 100644 --- a/src/sql/drivers/odbc/qsql_odbc.cpp +++ b/src/sql/drivers/odbc/qsql_odbc.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/drivers/odbc/qsql_odbc.h b/src/sql/drivers/odbc/qsql_odbc.h index 1ac4549f6f..c28ebce535 100644 --- a/src/sql/drivers/odbc/qsql_odbc.h +++ b/src/sql/drivers/odbc/qsql_odbc.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/drivers/psql/qsql_psql.cpp b/src/sql/drivers/psql/qsql_psql.cpp index c8578c6de7..55d8cc6146 100644 --- a/src/sql/drivers/psql/qsql_psql.cpp +++ b/src/sql/drivers/psql/qsql_psql.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/drivers/psql/qsql_psql.h b/src/sql/drivers/psql/qsql_psql.h index 8b23bfbeb4..16a40463fb 100644 --- a/src/sql/drivers/psql/qsql_psql.h +++ b/src/sql/drivers/psql/qsql_psql.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/drivers/sqlite/qsql_sqlite.cpp b/src/sql/drivers/sqlite/qsql_sqlite.cpp index d4acedc69b..d7ec53c451 100644 --- a/src/sql/drivers/sqlite/qsql_sqlite.cpp +++ b/src/sql/drivers/sqlite/qsql_sqlite.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/drivers/sqlite/qsql_sqlite.h b/src/sql/drivers/sqlite/qsql_sqlite.h index 2ee8e09661..eac90b1e47 100644 --- a/src/sql/drivers/sqlite/qsql_sqlite.h +++ b/src/sql/drivers/sqlite/qsql_sqlite.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/drivers/sqlite2/qsql_sqlite2.cpp b/src/sql/drivers/sqlite2/qsql_sqlite2.cpp index 6593a69625..d69acc15a6 100644 --- a/src/sql/drivers/sqlite2/qsql_sqlite2.cpp +++ b/src/sql/drivers/sqlite2/qsql_sqlite2.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/drivers/sqlite2/qsql_sqlite2.h b/src/sql/drivers/sqlite2/qsql_sqlite2.h index a34706d8f3..6372495a54 100644 --- a/src/sql/drivers/sqlite2/qsql_sqlite2.h +++ b/src/sql/drivers/sqlite2/qsql_sqlite2.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/drivers/tds/qsql_tds.cpp b/src/sql/drivers/tds/qsql_tds.cpp index 735e68b603..c97d96beb8 100644 --- a/src/sql/drivers/tds/qsql_tds.cpp +++ b/src/sql/drivers/tds/qsql_tds.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/drivers/tds/qsql_tds.h b/src/sql/drivers/tds/qsql_tds.h index 7808b5fd14..d14d1b6cf7 100644 --- a/src/sql/drivers/tds/qsql_tds.h +++ b/src/sql/drivers/tds/qsql_tds.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/kernel/qsql.h b/src/sql/kernel/qsql.h index f23b518bfb..54c9a684f6 100644 --- a/src/sql/kernel/qsql.h +++ b/src/sql/kernel/qsql.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/kernel/qsql.qdoc b/src/sql/kernel/qsql.qdoc index 06ea601229..a935acb661 100644 --- a/src/sql/kernel/qsql.qdoc +++ b/src/sql/kernel/qsql.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/kernel/qsqlcachedresult.cpp b/src/sql/kernel/qsqlcachedresult.cpp index 78a9758c9e..a2ae24a2f4 100644 --- a/src/sql/kernel/qsqlcachedresult.cpp +++ b/src/sql/kernel/qsqlcachedresult.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/kernel/qsqlcachedresult_p.h b/src/sql/kernel/qsqlcachedresult_p.h index dced9e7479..c2e4aeb2be 100644 --- a/src/sql/kernel/qsqlcachedresult_p.h +++ b/src/sql/kernel/qsqlcachedresult_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/kernel/qsqldatabase.cpp b/src/sql/kernel/qsqldatabase.cpp index 6aa45c46e1..7ba3c24999 100644 --- a/src/sql/kernel/qsqldatabase.cpp +++ b/src/sql/kernel/qsqldatabase.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/kernel/qsqldatabase.h b/src/sql/kernel/qsqldatabase.h index 72c5694ceb..9dfbd43ed2 100644 --- a/src/sql/kernel/qsqldatabase.h +++ b/src/sql/kernel/qsqldatabase.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/kernel/qsqldriver.cpp b/src/sql/kernel/qsqldriver.cpp index f5436ff594..3b64bb10cb 100644 --- a/src/sql/kernel/qsqldriver.cpp +++ b/src/sql/kernel/qsqldriver.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/kernel/qsqldriver.h b/src/sql/kernel/qsqldriver.h index ee1e52538a..446cdf4df6 100644 --- a/src/sql/kernel/qsqldriver.h +++ b/src/sql/kernel/qsqldriver.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/kernel/qsqldriverplugin.cpp b/src/sql/kernel/qsqldriverplugin.cpp index 8b9adb64d0..0f98ce3196 100644 --- a/src/sql/kernel/qsqldriverplugin.cpp +++ b/src/sql/kernel/qsqldriverplugin.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/kernel/qsqldriverplugin.h b/src/sql/kernel/qsqldriverplugin.h index 2c1def0a54..13ffd1e409 100644 --- a/src/sql/kernel/qsqldriverplugin.h +++ b/src/sql/kernel/qsqldriverplugin.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/kernel/qsqlerror.cpp b/src/sql/kernel/qsqlerror.cpp index fd731e4974..8a8d2c318a 100644 --- a/src/sql/kernel/qsqlerror.cpp +++ b/src/sql/kernel/qsqlerror.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/kernel/qsqlerror.h b/src/sql/kernel/qsqlerror.h index c1df370a86..11ebf5a615 100644 --- a/src/sql/kernel/qsqlerror.h +++ b/src/sql/kernel/qsqlerror.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/kernel/qsqlfield.cpp b/src/sql/kernel/qsqlfield.cpp index 95e9a195a6..dca9e169fa 100644 --- a/src/sql/kernel/qsqlfield.cpp +++ b/src/sql/kernel/qsqlfield.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/kernel/qsqlfield.h b/src/sql/kernel/qsqlfield.h index 93992ea9d4..3188b18a4a 100644 --- a/src/sql/kernel/qsqlfield.h +++ b/src/sql/kernel/qsqlfield.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/kernel/qsqlindex.cpp b/src/sql/kernel/qsqlindex.cpp index 764e93a678..ad66e814ef 100644 --- a/src/sql/kernel/qsqlindex.cpp +++ b/src/sql/kernel/qsqlindex.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/kernel/qsqlindex.h b/src/sql/kernel/qsqlindex.h index c88e30603f..328a8716e2 100644 --- a/src/sql/kernel/qsqlindex.h +++ b/src/sql/kernel/qsqlindex.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/kernel/qsqlnulldriver_p.h b/src/sql/kernel/qsqlnulldriver_p.h index 1334e4229b..9de9c5641b 100644 --- a/src/sql/kernel/qsqlnulldriver_p.h +++ b/src/sql/kernel/qsqlnulldriver_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/kernel/qsqlquery.cpp b/src/sql/kernel/qsqlquery.cpp index 74812b5bb7..4b65ef1d8b 100644 --- a/src/sql/kernel/qsqlquery.cpp +++ b/src/sql/kernel/qsqlquery.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/kernel/qsqlquery.h b/src/sql/kernel/qsqlquery.h index bd498f344a..2791784374 100644 --- a/src/sql/kernel/qsqlquery.h +++ b/src/sql/kernel/qsqlquery.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/kernel/qsqlrecord.cpp b/src/sql/kernel/qsqlrecord.cpp index 3f14cba245..18dd9fbc80 100644 --- a/src/sql/kernel/qsqlrecord.cpp +++ b/src/sql/kernel/qsqlrecord.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/kernel/qsqlrecord.h b/src/sql/kernel/qsqlrecord.h index 8c7a17ab1d..52168255d2 100644 --- a/src/sql/kernel/qsqlrecord.h +++ b/src/sql/kernel/qsqlrecord.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/kernel/qsqlresult.cpp b/src/sql/kernel/qsqlresult.cpp index 9065a6ad09..de348c99f5 100644 --- a/src/sql/kernel/qsqlresult.cpp +++ b/src/sql/kernel/qsqlresult.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/kernel/qsqlresult.h b/src/sql/kernel/qsqlresult.h index 984bd5e03f..07780937a6 100644 --- a/src/sql/kernel/qsqlresult.h +++ b/src/sql/kernel/qsqlresult.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/models/qsqlquerymodel.cpp b/src/sql/models/qsqlquerymodel.cpp index 5e61922916..a740071d33 100644 --- a/src/sql/models/qsqlquerymodel.cpp +++ b/src/sql/models/qsqlquerymodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/models/qsqlquerymodel.h b/src/sql/models/qsqlquerymodel.h index 5836122ad5..75ae2a5eff 100644 --- a/src/sql/models/qsqlquerymodel.h +++ b/src/sql/models/qsqlquerymodel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/models/qsqlquerymodel_p.h b/src/sql/models/qsqlquerymodel_p.h index f974882602..c25d3c98a0 100644 --- a/src/sql/models/qsqlquerymodel_p.h +++ b/src/sql/models/qsqlquerymodel_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/models/qsqlrelationaldelegate.cpp b/src/sql/models/qsqlrelationaldelegate.cpp index c20b5f86da..aaba25d06a 100644 --- a/src/sql/models/qsqlrelationaldelegate.cpp +++ b/src/sql/models/qsqlrelationaldelegate.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/models/qsqlrelationaldelegate.h b/src/sql/models/qsqlrelationaldelegate.h index 93f0089c71..60e56ff99d 100644 --- a/src/sql/models/qsqlrelationaldelegate.h +++ b/src/sql/models/qsqlrelationaldelegate.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/models/qsqlrelationaltablemodel.cpp b/src/sql/models/qsqlrelationaltablemodel.cpp index ad05e0f39b..ce0786bd70 100644 --- a/src/sql/models/qsqlrelationaltablemodel.cpp +++ b/src/sql/models/qsqlrelationaltablemodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/models/qsqlrelationaltablemodel.h b/src/sql/models/qsqlrelationaltablemodel.h index 32d88b3189..decdc08216 100644 --- a/src/sql/models/qsqlrelationaltablemodel.h +++ b/src/sql/models/qsqlrelationaltablemodel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/models/qsqltablemodel.cpp b/src/sql/models/qsqltablemodel.cpp index c615a30b48..d2b9427287 100644 --- a/src/sql/models/qsqltablemodel.cpp +++ b/src/sql/models/qsqltablemodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/models/qsqltablemodel.h b/src/sql/models/qsqltablemodel.h index 87ddfc08d6..d40e591238 100644 --- a/src/sql/models/qsqltablemodel.h +++ b/src/sql/models/qsqltablemodel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/sql/models/qsqltablemodel_p.h b/src/sql/models/qsqltablemodel_p.h index 1c448f8fe5..9275712cee 100644 --- a/src/sql/models/qsqltablemodel_p.h +++ b/src/sql/models/qsqltablemodel_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qabstracttestlogger.cpp b/src/testlib/qabstracttestlogger.cpp index 7f0c70e975..d3a2678ecf 100644 --- a/src/testlib/qabstracttestlogger.cpp +++ b/src/testlib/qabstracttestlogger.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qabstracttestlogger_p.h b/src/testlib/qabstracttestlogger_p.h index a217b66df1..009fbddf23 100644 --- a/src/testlib/qabstracttestlogger_p.h +++ b/src/testlib/qabstracttestlogger_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qasciikey.cpp b/src/testlib/qasciikey.cpp index bcbbddff63..ee18ec87f6 100644 --- a/src/testlib/qasciikey.cpp +++ b/src/testlib/qasciikey.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qbenchmark.cpp b/src/testlib/qbenchmark.cpp index ae15ef259e..02644f7dc3 100644 --- a/src/testlib/qbenchmark.cpp +++ b/src/testlib/qbenchmark.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qbenchmark.h b/src/testlib/qbenchmark.h index 586d01be58..d43f1a6297 100644 --- a/src/testlib/qbenchmark.h +++ b/src/testlib/qbenchmark.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qbenchmark_p.h b/src/testlib/qbenchmark_p.h index 38f34c416b..402eccfa14 100644 --- a/src/testlib/qbenchmark_p.h +++ b/src/testlib/qbenchmark_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qbenchmarkevent.cpp b/src/testlib/qbenchmarkevent.cpp index 05d00156c8..a531d44748 100644 --- a/src/testlib/qbenchmarkevent.cpp +++ b/src/testlib/qbenchmarkevent.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qbenchmarkevent_p.h b/src/testlib/qbenchmarkevent_p.h index 3773aea7e7..3f94af2c67 100644 --- a/src/testlib/qbenchmarkevent_p.h +++ b/src/testlib/qbenchmarkevent_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qbenchmarkmeasurement.cpp b/src/testlib/qbenchmarkmeasurement.cpp index be52b4f211..db0f7c0958 100644 --- a/src/testlib/qbenchmarkmeasurement.cpp +++ b/src/testlib/qbenchmarkmeasurement.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qbenchmarkmeasurement_p.h b/src/testlib/qbenchmarkmeasurement_p.h index c493d96dd6..82721e8c87 100644 --- a/src/testlib/qbenchmarkmeasurement_p.h +++ b/src/testlib/qbenchmarkmeasurement_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qbenchmarkmetric.cpp b/src/testlib/qbenchmarkmetric.cpp index fb7f8f857a..6cd9aa468f 100644 --- a/src/testlib/qbenchmarkmetric.cpp +++ b/src/testlib/qbenchmarkmetric.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qbenchmarkmetric.h b/src/testlib/qbenchmarkmetric.h index 133a114cd6..35b441a84e 100644 --- a/src/testlib/qbenchmarkmetric.h +++ b/src/testlib/qbenchmarkmetric.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qbenchmarkmetric_p.h b/src/testlib/qbenchmarkmetric_p.h index a3e885b56a..247a2ca795 100644 --- a/src/testlib/qbenchmarkmetric_p.h +++ b/src/testlib/qbenchmarkmetric_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qbenchmarkvalgrind.cpp b/src/testlib/qbenchmarkvalgrind.cpp index c511796884..f62cd299bc 100644 --- a/src/testlib/qbenchmarkvalgrind.cpp +++ b/src/testlib/qbenchmarkvalgrind.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qbenchmarkvalgrind_p.h b/src/testlib/qbenchmarkvalgrind_p.h index e6a0720a37..f242d85531 100644 --- a/src/testlib/qbenchmarkvalgrind_p.h +++ b/src/testlib/qbenchmarkvalgrind_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qplaintestlogger.cpp b/src/testlib/qplaintestlogger.cpp index 5fb51c9840..f0e83183ec 100644 --- a/src/testlib/qplaintestlogger.cpp +++ b/src/testlib/qplaintestlogger.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qplaintestlogger_p.h b/src/testlib/qplaintestlogger_p.h index 432e900320..dc0cec6dc4 100644 --- a/src/testlib/qplaintestlogger_p.h +++ b/src/testlib/qplaintestlogger_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qsignaldumper.cpp b/src/testlib/qsignaldumper.cpp index 18a505066f..ae8c353e6e 100644 --- a/src/testlib/qsignaldumper.cpp +++ b/src/testlib/qsignaldumper.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qsignaldumper_p.h b/src/testlib/qsignaldumper_p.h index ddc42291f4..acf259733d 100644 --- a/src/testlib/qsignaldumper_p.h +++ b/src/testlib/qsignaldumper_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qsignalspy.h b/src/testlib/qsignalspy.h index 38a718d2a2..61d65131f1 100644 --- a/src/testlib/qsignalspy.h +++ b/src/testlib/qsignalspy.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qsignalspy.qdoc b/src/testlib/qsignalspy.qdoc index fa7c48bc70..c63f315619 100644 --- a/src/testlib/qsignalspy.qdoc +++ b/src/testlib/qsignalspy.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qtest.h b/src/testlib/qtest.h index e4b5a21a7f..53b29e1064 100644 --- a/src/testlib/qtest.h +++ b/src/testlib/qtest.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qtest_global.h b/src/testlib/qtest_global.h index 31ab940474..ddd749e29d 100644 --- a/src/testlib/qtest_global.h +++ b/src/testlib/qtest_global.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qtest_gui.h b/src/testlib/qtest_gui.h index 47ec8cf13e..e92547089c 100644 --- a/src/testlib/qtest_gui.h +++ b/src/testlib/qtest_gui.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qtestaccessible.h b/src/testlib/qtestaccessible.h index 90ed8838b3..6bd3339a0f 100644 --- a/src/testlib/qtestaccessible.h +++ b/src/testlib/qtestaccessible.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qtestassert.h b/src/testlib/qtestassert.h index 24edab278d..0dc24762ab 100644 --- a/src/testlib/qtestassert.h +++ b/src/testlib/qtestassert.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qtestcase.cpp b/src/testlib/qtestcase.cpp index a00f91f4f0..b1bceb771c 100644 --- a/src/testlib/qtestcase.cpp +++ b/src/testlib/qtestcase.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qtestcase.h b/src/testlib/qtestcase.h index 70055a71df..d6409f0441 100644 --- a/src/testlib/qtestcase.h +++ b/src/testlib/qtestcase.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qtestcoreelement_p.h b/src/testlib/qtestcoreelement_p.h index 17e6ede4b6..3eb50f20d4 100644 --- a/src/testlib/qtestcoreelement_p.h +++ b/src/testlib/qtestcoreelement_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qtestcorelist_p.h b/src/testlib/qtestcorelist_p.h index 263df17172..2571f75af4 100644 --- a/src/testlib/qtestcorelist_p.h +++ b/src/testlib/qtestcorelist_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qtestdata.cpp b/src/testlib/qtestdata.cpp index 6ee0063738..1a246591c7 100644 --- a/src/testlib/qtestdata.cpp +++ b/src/testlib/qtestdata.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qtestdata.h b/src/testlib/qtestdata.h index 02ee03ff7d..90b1395bf5 100644 --- a/src/testlib/qtestdata.h +++ b/src/testlib/qtestdata.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qtestelement.cpp b/src/testlib/qtestelement.cpp index d0af966e8c..cad7b28da6 100644 --- a/src/testlib/qtestelement.cpp +++ b/src/testlib/qtestelement.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qtestelement_p.h b/src/testlib/qtestelement_p.h index 583ef1cfea..22bcddaf87 100644 --- a/src/testlib/qtestelement_p.h +++ b/src/testlib/qtestelement_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qtestelementattribute.cpp b/src/testlib/qtestelementattribute.cpp index 1ab25af25b..c3e62cc654 100644 --- a/src/testlib/qtestelementattribute.cpp +++ b/src/testlib/qtestelementattribute.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qtestelementattribute_p.h b/src/testlib/qtestelementattribute_p.h index 9993321e81..04f06f20e3 100644 --- a/src/testlib/qtestelementattribute_p.h +++ b/src/testlib/qtestelementattribute_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qtestevent.h b/src/testlib/qtestevent.h index c7af5b28d7..ac23bb69cd 100644 --- a/src/testlib/qtestevent.h +++ b/src/testlib/qtestevent.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qtestevent.qdoc b/src/testlib/qtestevent.qdoc index 356f10367d..405f64abcc 100644 --- a/src/testlib/qtestevent.qdoc +++ b/src/testlib/qtestevent.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qtesteventloop.h b/src/testlib/qtesteventloop.h index cb7c078136..205aba9fc7 100644 --- a/src/testlib/qtesteventloop.h +++ b/src/testlib/qtesteventloop.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qtestkeyboard.h b/src/testlib/qtestkeyboard.h index deb572b8fd..8a823db7c8 100644 --- a/src/testlib/qtestkeyboard.h +++ b/src/testlib/qtestkeyboard.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qtestlog.cpp b/src/testlib/qtestlog.cpp index f85113d45d..cb33961deb 100644 --- a/src/testlib/qtestlog.cpp +++ b/src/testlib/qtestlog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qtestlog_p.h b/src/testlib/qtestlog_p.h index b2aa8c1890..a98d3c8a01 100644 --- a/src/testlib/qtestlog_p.h +++ b/src/testlib/qtestlog_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qtestmouse.h b/src/testlib/qtestmouse.h index cc6b3de9a9..cca556b8ba 100644 --- a/src/testlib/qtestmouse.h +++ b/src/testlib/qtestmouse.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qtestresult.cpp b/src/testlib/qtestresult.cpp index 44a5de97d1..4ec4ab411f 100644 --- a/src/testlib/qtestresult.cpp +++ b/src/testlib/qtestresult.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qtestresult_p.h b/src/testlib/qtestresult_p.h index 1ce81854b5..a8424ef51e 100644 --- a/src/testlib/qtestresult_p.h +++ b/src/testlib/qtestresult_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qtestspontaneevent.h b/src/testlib/qtestspontaneevent.h index bf5a74ca4b..20e396bda6 100644 --- a/src/testlib/qtestspontaneevent.h +++ b/src/testlib/qtestspontaneevent.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qtestsystem.h b/src/testlib/qtestsystem.h index 6a87fe3460..ff621cdb6f 100644 --- a/src/testlib/qtestsystem.h +++ b/src/testlib/qtestsystem.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qtesttable.cpp b/src/testlib/qtesttable.cpp index bc8bc3e13c..203a74618d 100644 --- a/src/testlib/qtesttable.cpp +++ b/src/testlib/qtesttable.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qtesttable_p.h b/src/testlib/qtesttable_p.h index ed435865a9..46ee4a99d9 100644 --- a/src/testlib/qtesttable_p.h +++ b/src/testlib/qtesttable_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qtesttouch.h b/src/testlib/qtesttouch.h index 3763a9a500..6bdd2368f9 100644 --- a/src/testlib/qtesttouch.h +++ b/src/testlib/qtesttouch.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qtestxunitstreamer.cpp b/src/testlib/qtestxunitstreamer.cpp index 2c0b074cd8..607167ccce 100644 --- a/src/testlib/qtestxunitstreamer.cpp +++ b/src/testlib/qtestxunitstreamer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qtestxunitstreamer_p.h b/src/testlib/qtestxunitstreamer_p.h index 825890258a..c43d399acc 100644 --- a/src/testlib/qtestxunitstreamer_p.h +++ b/src/testlib/qtestxunitstreamer_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qxmltestlogger.cpp b/src/testlib/qxmltestlogger.cpp index b74f7d6d0e..b06f4736e7 100644 --- a/src/testlib/qxmltestlogger.cpp +++ b/src/testlib/qxmltestlogger.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qxmltestlogger_p.h b/src/testlib/qxmltestlogger_p.h index c273493c48..0adb857633 100644 --- a/src/testlib/qxmltestlogger_p.h +++ b/src/testlib/qxmltestlogger_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qxunittestlogger.cpp b/src/testlib/qxunittestlogger.cpp index e13dca4b29..892cce855e 100644 --- a/src/testlib/qxunittestlogger.cpp +++ b/src/testlib/qxunittestlogger.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/testlib/qxunittestlogger_p.h b/src/testlib/qxunittestlogger_p.h index ea3aaf4d92..0778fa4843 100644 --- a/src/testlib/qxunittestlogger_p.h +++ b/src/testlib/qxunittestlogger_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/moc/generator.cpp b/src/tools/moc/generator.cpp index 7a9684fd02..8274f10a53 100644 --- a/src/tools/moc/generator.cpp +++ b/src/tools/moc/generator.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/moc/generator.h b/src/tools/moc/generator.h index 90e586b6a0..3be216ae76 100644 --- a/src/tools/moc/generator.h +++ b/src/tools/moc/generator.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/moc/keywords.cpp b/src/tools/moc/keywords.cpp index 20b98e2fc1..fd59c1279f 100644 --- a/src/tools/moc/keywords.cpp +++ b/src/tools/moc/keywords.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/moc/main.cpp b/src/tools/moc/main.cpp index bf7e22c0b9..82bd288f0f 100644 --- a/src/tools/moc/main.cpp +++ b/src/tools/moc/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/moc/moc.cpp b/src/tools/moc/moc.cpp index 4f414ba35e..6d8e6f899a 100644 --- a/src/tools/moc/moc.cpp +++ b/src/tools/moc/moc.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/moc/moc.h b/src/tools/moc/moc.h index c2577a2f4c..a80cf304d7 100644 --- a/src/tools/moc/moc.h +++ b/src/tools/moc/moc.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/moc/mwerks_mac.cpp b/src/tools/moc/mwerks_mac.cpp index 9286d29349..752fc0d683 100644 --- a/src/tools/moc/mwerks_mac.cpp +++ b/src/tools/moc/mwerks_mac.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/moc/mwerks_mac.h b/src/tools/moc/mwerks_mac.h index ab1723c2af..526dc66d81 100644 --- a/src/tools/moc/mwerks_mac.h +++ b/src/tools/moc/mwerks_mac.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/moc/outputrevision.h b/src/tools/moc/outputrevision.h index a2a0cda162..4955cca169 100644 --- a/src/tools/moc/outputrevision.h +++ b/src/tools/moc/outputrevision.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/moc/parser.cpp b/src/tools/moc/parser.cpp index e960975ecf..39de3abbaf 100644 --- a/src/tools/moc/parser.cpp +++ b/src/tools/moc/parser.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/moc/parser.h b/src/tools/moc/parser.h index 651234dd78..7aeac80c38 100644 --- a/src/tools/moc/parser.h +++ b/src/tools/moc/parser.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/moc/ppkeywords.cpp b/src/tools/moc/ppkeywords.cpp index f76d59da07..a4f139098e 100644 --- a/src/tools/moc/ppkeywords.cpp +++ b/src/tools/moc/ppkeywords.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/moc/preprocessor.cpp b/src/tools/moc/preprocessor.cpp index ecf6d7d4de..376935cd60 100644 --- a/src/tools/moc/preprocessor.cpp +++ b/src/tools/moc/preprocessor.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/moc/preprocessor.h b/src/tools/moc/preprocessor.h index 11b6476380..bf1e6d49b3 100644 --- a/src/tools/moc/preprocessor.h +++ b/src/tools/moc/preprocessor.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/moc/symbols.h b/src/tools/moc/symbols.h index 9c6de87365..6e773bcab1 100644 --- a/src/tools/moc/symbols.h +++ b/src/tools/moc/symbols.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/moc/token.cpp b/src/tools/moc/token.cpp index 0b702bb2a0..d7ae9437e4 100644 --- a/src/tools/moc/token.cpp +++ b/src/tools/moc/token.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/moc/token.h b/src/tools/moc/token.h index 3a5f01d638..359a46f2e8 100644 --- a/src/tools/moc/token.h +++ b/src/tools/moc/token.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/moc/util/generate.sh b/src/tools/moc/util/generate.sh index 6340e9e98f..1cb6c5f7ec 100755 --- a/src/tools/moc/util/generate.sh +++ b/src/tools/moc/util/generate.sh @@ -1,7 +1,7 @@ #!/bin/sh ############################################################################# ## -## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ## All rights reserved. ## Contact: Nokia Corporation (qt-info@nokia.com) ## diff --git a/src/tools/moc/util/generate_keywords.cpp b/src/tools/moc/util/generate_keywords.cpp index 0c6f331e64..751019797b 100644 --- a/src/tools/moc/util/generate_keywords.cpp +++ b/src/tools/moc/util/generate_keywords.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/moc/util/licenseheader.txt b/src/tools/moc/util/licenseheader.txt index 6f593a762b..a6f7b3e29a 100644 --- a/src/tools/moc/util/licenseheader.txt +++ b/src/tools/moc/util/licenseheader.txt @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/moc/utils.h b/src/tools/moc/utils.h index 31358db682..e5aad4df9c 100644 --- a/src/tools/moc/utils.h +++ b/src/tools/moc/utils.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/rcc/main.cpp b/src/tools/rcc/main.cpp index 46ff59e154..6d90f02491 100644 --- a/src/tools/rcc/main.cpp +++ b/src/tools/rcc/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/rcc/rcc.cpp b/src/tools/rcc/rcc.cpp index 01cc0299f5..6748841615 100644 --- a/src/tools/rcc/rcc.cpp +++ b/src/tools/rcc/rcc.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/rcc/rcc.h b/src/tools/rcc/rcc.h index 0a51c3cba5..0510df0bf3 100644 --- a/src/tools/rcc/rcc.h +++ b/src/tools/rcc/rcc.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/uic/cpp/cppextractimages.cpp b/src/tools/uic/cpp/cppextractimages.cpp index 45447d8660..8d9060db44 100644 --- a/src/tools/uic/cpp/cppextractimages.cpp +++ b/src/tools/uic/cpp/cppextractimages.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/uic/cpp/cppextractimages.h b/src/tools/uic/cpp/cppextractimages.h index ad0183e335..9641e02060 100644 --- a/src/tools/uic/cpp/cppextractimages.h +++ b/src/tools/uic/cpp/cppextractimages.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/uic/cpp/cppwritedeclaration.cpp b/src/tools/uic/cpp/cppwritedeclaration.cpp index d8adc4b7db..afa26b27e4 100644 --- a/src/tools/uic/cpp/cppwritedeclaration.cpp +++ b/src/tools/uic/cpp/cppwritedeclaration.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/uic/cpp/cppwritedeclaration.h b/src/tools/uic/cpp/cppwritedeclaration.h index 9a7d6edeb2..7d3653362f 100644 --- a/src/tools/uic/cpp/cppwritedeclaration.h +++ b/src/tools/uic/cpp/cppwritedeclaration.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/uic/cpp/cppwriteicondata.cpp b/src/tools/uic/cpp/cppwriteicondata.cpp index ab362ab0a7..c0f9cc4149 100644 --- a/src/tools/uic/cpp/cppwriteicondata.cpp +++ b/src/tools/uic/cpp/cppwriteicondata.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/uic/cpp/cppwriteicondata.h b/src/tools/uic/cpp/cppwriteicondata.h index 2ea0a5baa6..7c43ba842a 100644 --- a/src/tools/uic/cpp/cppwriteicondata.h +++ b/src/tools/uic/cpp/cppwriteicondata.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/uic/cpp/cppwriteicondeclaration.cpp b/src/tools/uic/cpp/cppwriteicondeclaration.cpp index 46788819e7..8ba9790f2c 100644 --- a/src/tools/uic/cpp/cppwriteicondeclaration.cpp +++ b/src/tools/uic/cpp/cppwriteicondeclaration.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/uic/cpp/cppwriteicondeclaration.h b/src/tools/uic/cpp/cppwriteicondeclaration.h index 63369997b6..911aab473c 100644 --- a/src/tools/uic/cpp/cppwriteicondeclaration.h +++ b/src/tools/uic/cpp/cppwriteicondeclaration.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/uic/cpp/cppwriteiconinitialization.cpp b/src/tools/uic/cpp/cppwriteiconinitialization.cpp index f2a35a0b7d..1045bafe0a 100644 --- a/src/tools/uic/cpp/cppwriteiconinitialization.cpp +++ b/src/tools/uic/cpp/cppwriteiconinitialization.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/uic/cpp/cppwriteiconinitialization.h b/src/tools/uic/cpp/cppwriteiconinitialization.h index dcbb0ef8df..2b4495785a 100644 --- a/src/tools/uic/cpp/cppwriteiconinitialization.h +++ b/src/tools/uic/cpp/cppwriteiconinitialization.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/uic/cpp/cppwriteincludes.cpp b/src/tools/uic/cpp/cppwriteincludes.cpp index c4613e20ae..de0deb3852 100644 --- a/src/tools/uic/cpp/cppwriteincludes.cpp +++ b/src/tools/uic/cpp/cppwriteincludes.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/uic/cpp/cppwriteincludes.h b/src/tools/uic/cpp/cppwriteincludes.h index e8215364b9..bce8ece0ec 100644 --- a/src/tools/uic/cpp/cppwriteincludes.h +++ b/src/tools/uic/cpp/cppwriteincludes.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/uic/cpp/cppwriteinitialization.cpp b/src/tools/uic/cpp/cppwriteinitialization.cpp index a887719d4f..dfb4a3299e 100644 --- a/src/tools/uic/cpp/cppwriteinitialization.cpp +++ b/src/tools/uic/cpp/cppwriteinitialization.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/uic/cpp/cppwriteinitialization.h b/src/tools/uic/cpp/cppwriteinitialization.h index a33a1b9883..721eb0f79e 100644 --- a/src/tools/uic/cpp/cppwriteinitialization.h +++ b/src/tools/uic/cpp/cppwriteinitialization.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/uic/customwidgetsinfo.cpp b/src/tools/uic/customwidgetsinfo.cpp index f4a9381f73..d63054313c 100644 --- a/src/tools/uic/customwidgetsinfo.cpp +++ b/src/tools/uic/customwidgetsinfo.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/uic/customwidgetsinfo.h b/src/tools/uic/customwidgetsinfo.h index f04dd53853..ed96a33c58 100644 --- a/src/tools/uic/customwidgetsinfo.h +++ b/src/tools/uic/customwidgetsinfo.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/uic/databaseinfo.cpp b/src/tools/uic/databaseinfo.cpp index cbd26033fb..53a6bf3111 100644 --- a/src/tools/uic/databaseinfo.cpp +++ b/src/tools/uic/databaseinfo.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/uic/databaseinfo.h b/src/tools/uic/databaseinfo.h index 87d4ceb1e3..7df32fb6e0 100644 --- a/src/tools/uic/databaseinfo.h +++ b/src/tools/uic/databaseinfo.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/uic/driver.cpp b/src/tools/uic/driver.cpp index 0dd528c4cb..38217c603e 100644 --- a/src/tools/uic/driver.cpp +++ b/src/tools/uic/driver.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/uic/driver.h b/src/tools/uic/driver.h index 22575c9127..66bfde6d53 100644 --- a/src/tools/uic/driver.h +++ b/src/tools/uic/driver.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/uic/globaldefs.h b/src/tools/uic/globaldefs.h index a30c35a91c..45e0142821 100644 --- a/src/tools/uic/globaldefs.h +++ b/src/tools/uic/globaldefs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/uic/main.cpp b/src/tools/uic/main.cpp index 1f6e27b2a4..ec63c70dc1 100644 --- a/src/tools/uic/main.cpp +++ b/src/tools/uic/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/uic/option.h b/src/tools/uic/option.h index 42b449530b..2eed07f0dc 100644 --- a/src/tools/uic/option.h +++ b/src/tools/uic/option.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/uic/treewalker.cpp b/src/tools/uic/treewalker.cpp index 9974e61aab..cc1dca3820 100644 --- a/src/tools/uic/treewalker.cpp +++ b/src/tools/uic/treewalker.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/uic/treewalker.h b/src/tools/uic/treewalker.h index 8cd718509b..f57b6009c2 100644 --- a/src/tools/uic/treewalker.h +++ b/src/tools/uic/treewalker.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/uic/ui4.cpp b/src/tools/uic/ui4.cpp index 5374fe9202..0c8adcd07a 100644 --- a/src/tools/uic/ui4.cpp +++ b/src/tools/uic/ui4.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/uic/ui4.h b/src/tools/uic/ui4.h index 6a56c9eadc..ce8e9c1473 100644 --- a/src/tools/uic/ui4.h +++ b/src/tools/uic/ui4.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/uic/uic.cpp b/src/tools/uic/uic.cpp index 347efb1042..8f425c8212 100644 --- a/src/tools/uic/uic.cpp +++ b/src/tools/uic/uic.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/uic/uic.h b/src/tools/uic/uic.h index a6437161ee..9f77e54749 100644 --- a/src/tools/uic/uic.h +++ b/src/tools/uic/uic.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/uic/utils.h b/src/tools/uic/utils.h index edc1e2a5e2..9455598868 100644 --- a/src/tools/uic/utils.h +++ b/src/tools/uic/utils.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/uic/validator.cpp b/src/tools/uic/validator.cpp index 1d8157444c..687b19599d 100644 --- a/src/tools/uic/validator.cpp +++ b/src/tools/uic/validator.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/tools/uic/validator.h b/src/tools/uic/validator.h index 53085b06d8..1cc313472e 100644 --- a/src/tools/uic/validator.h +++ b/src/tools/uic/validator.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/accessible/qaccessiblewidget.cpp b/src/widgets/accessible/qaccessiblewidget.cpp index a2295f4749..5953333d0c 100644 --- a/src/widgets/accessible/qaccessiblewidget.cpp +++ b/src/widgets/accessible/qaccessiblewidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/accessible/qaccessiblewidget.h b/src/widgets/accessible/qaccessiblewidget.h index 01730f7070..da217b94ca 100644 --- a/src/widgets/accessible/qaccessiblewidget.h +++ b/src/widgets/accessible/qaccessiblewidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/animation/qguivariantanimation.cpp b/src/widgets/animation/qguivariantanimation.cpp index f99b74e2ab..2167e4a173 100644 --- a/src/widgets/animation/qguivariantanimation.cpp +++ b/src/widgets/animation/qguivariantanimation.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qcolordialog.cpp b/src/widgets/dialogs/qcolordialog.cpp index d0a926e0cb..777e4cc4ba 100644 --- a/src/widgets/dialogs/qcolordialog.cpp +++ b/src/widgets/dialogs/qcolordialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qcolordialog.h b/src/widgets/dialogs/qcolordialog.h index 1d21c06f99..1bdb0b41a2 100644 --- a/src/widgets/dialogs/qcolordialog.h +++ b/src/widgets/dialogs/qcolordialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qcolordialog_mac.mm b/src/widgets/dialogs/qcolordialog_mac.mm index 1d77751e2b..bdf5e1cccd 100644 --- a/src/widgets/dialogs/qcolordialog_mac.mm +++ b/src/widgets/dialogs/qcolordialog_mac.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qcolordialog_p.h b/src/widgets/dialogs/qcolordialog_p.h index 42176fe214..a6149017d7 100644 --- a/src/widgets/dialogs/qcolordialog_p.h +++ b/src/widgets/dialogs/qcolordialog_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qdialog.cpp b/src/widgets/dialogs/qdialog.cpp index 4170530ff7..501fd4d264 100644 --- a/src/widgets/dialogs/qdialog.cpp +++ b/src/widgets/dialogs/qdialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qdialog.h b/src/widgets/dialogs/qdialog.h index 18f65274e5..8329e6460a 100644 --- a/src/widgets/dialogs/qdialog.h +++ b/src/widgets/dialogs/qdialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qdialog_p.h b/src/widgets/dialogs/qdialog_p.h index 83964a1b99..ecdfff03fd 100644 --- a/src/widgets/dialogs/qdialog_p.h +++ b/src/widgets/dialogs/qdialog_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qerrormessage.cpp b/src/widgets/dialogs/qerrormessage.cpp index e87551cd80..1c950a7158 100644 --- a/src/widgets/dialogs/qerrormessage.cpp +++ b/src/widgets/dialogs/qerrormessage.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qerrormessage.h b/src/widgets/dialogs/qerrormessage.h index 3736526f93..c43df749f7 100644 --- a/src/widgets/dialogs/qerrormessage.h +++ b/src/widgets/dialogs/qerrormessage.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qfiledialog.cpp b/src/widgets/dialogs/qfiledialog.cpp index c3561cc62a..2f49a226e9 100644 --- a/src/widgets/dialogs/qfiledialog.cpp +++ b/src/widgets/dialogs/qfiledialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qfiledialog.h b/src/widgets/dialogs/qfiledialog.h index df33fdb265..ac011e634a 100644 --- a/src/widgets/dialogs/qfiledialog.h +++ b/src/widgets/dialogs/qfiledialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qfiledialog.ui b/src/widgets/dialogs/qfiledialog.ui index 9d61de351f..ff86e9cc13 100644 --- a/src/widgets/dialogs/qfiledialog.ui +++ b/src/widgets/dialogs/qfiledialog.ui @@ -1,7 +1,7 @@ ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qfiledialog_embedded.ui b/src/widgets/dialogs/qfiledialog_embedded.ui index f067d31f62..5eb9f52a12 100644 --- a/src/widgets/dialogs/qfiledialog_embedded.ui +++ b/src/widgets/dialogs/qfiledialog_embedded.ui @@ -1,7 +1,7 @@ ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qfiledialog_mac.mm b/src/widgets/dialogs/qfiledialog_mac.mm index 1a9f36892d..fe3c41a4b7 100644 --- a/src/widgets/dialogs/qfiledialog_mac.mm +++ b/src/widgets/dialogs/qfiledialog_mac.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qfiledialog_p.h b/src/widgets/dialogs/qfiledialog_p.h index cdafcf6058..30c73ade7b 100644 --- a/src/widgets/dialogs/qfiledialog_p.h +++ b/src/widgets/dialogs/qfiledialog_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qfileinfogatherer.cpp b/src/widgets/dialogs/qfileinfogatherer.cpp index 315b93131f..1e08dbd1a5 100644 --- a/src/widgets/dialogs/qfileinfogatherer.cpp +++ b/src/widgets/dialogs/qfileinfogatherer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qfileinfogatherer_p.h b/src/widgets/dialogs/qfileinfogatherer_p.h index 98217c1dc8..3621c6b6ad 100644 --- a/src/widgets/dialogs/qfileinfogatherer_p.h +++ b/src/widgets/dialogs/qfileinfogatherer_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qfilesystemmodel.cpp b/src/widgets/dialogs/qfilesystemmodel.cpp index 9de79e0e81..e44a9ea882 100644 --- a/src/widgets/dialogs/qfilesystemmodel.cpp +++ b/src/widgets/dialogs/qfilesystemmodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qfilesystemmodel.h b/src/widgets/dialogs/qfilesystemmodel.h index ce907cd10e..09e8d9d529 100644 --- a/src/widgets/dialogs/qfilesystemmodel.h +++ b/src/widgets/dialogs/qfilesystemmodel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qfilesystemmodel_p.h b/src/widgets/dialogs/qfilesystemmodel_p.h index 3d5f5b7f00..2ab7838dad 100644 --- a/src/widgets/dialogs/qfilesystemmodel_p.h +++ b/src/widgets/dialogs/qfilesystemmodel_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qfontdialog.cpp b/src/widgets/dialogs/qfontdialog.cpp index 3cc33dad9b..c8fb36d9d6 100644 --- a/src/widgets/dialogs/qfontdialog.cpp +++ b/src/widgets/dialogs/qfontdialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qfontdialog.h b/src/widgets/dialogs/qfontdialog.h index 469a5680e1..f5353d512f 100644 --- a/src/widgets/dialogs/qfontdialog.h +++ b/src/widgets/dialogs/qfontdialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qfontdialog_mac.mm b/src/widgets/dialogs/qfontdialog_mac.mm index d4d3c6a6f0..71b142cd48 100644 --- a/src/widgets/dialogs/qfontdialog_mac.mm +++ b/src/widgets/dialogs/qfontdialog_mac.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qfontdialog_p.h b/src/widgets/dialogs/qfontdialog_p.h index 8762ef2b07..506d52b0b6 100644 --- a/src/widgets/dialogs/qfontdialog_p.h +++ b/src/widgets/dialogs/qfontdialog_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qfscompleter_p.h b/src/widgets/dialogs/qfscompleter_p.h index e078542cdc..c25bcf20cb 100644 --- a/src/widgets/dialogs/qfscompleter_p.h +++ b/src/widgets/dialogs/qfscompleter_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qinputdialog.cpp b/src/widgets/dialogs/qinputdialog.cpp index 808858a711..dc7e30368b 100644 --- a/src/widgets/dialogs/qinputdialog.cpp +++ b/src/widgets/dialogs/qinputdialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qinputdialog.h b/src/widgets/dialogs/qinputdialog.h index 93abdaec22..164e0d1014 100644 --- a/src/widgets/dialogs/qinputdialog.h +++ b/src/widgets/dialogs/qinputdialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qmessagebox.cpp b/src/widgets/dialogs/qmessagebox.cpp index 1dbdeff1a7..6a2773d466 100644 --- a/src/widgets/dialogs/qmessagebox.cpp +++ b/src/widgets/dialogs/qmessagebox.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** @@ -1778,7 +1778,7 @@ void QMessageBox::aboutQt(QWidget *parent, const QString &title) "to comply with the terms of the GNU GPL version 3.0.

" "

Please see qt.nokia.com/products/licensing " "for an overview of Qt licensing.

" - "

Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).

" + "

Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies).

" "

Qt is a Nokia product. See qt.nokia.com " "for more information.

" ); diff --git a/src/widgets/dialogs/qmessagebox.h b/src/widgets/dialogs/qmessagebox.h index ebfd28a1aa..4774389a69 100644 --- a/src/widgets/dialogs/qmessagebox.h +++ b/src/widgets/dialogs/qmessagebox.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qnspanelproxy_mac.mm b/src/widgets/dialogs/qnspanelproxy_mac.mm index 1de548413a..4f171eab74 100644 --- a/src/widgets/dialogs/qnspanelproxy_mac.mm +++ b/src/widgets/dialogs/qnspanelproxy_mac.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qprogressdialog.cpp b/src/widgets/dialogs/qprogressdialog.cpp index c38d79e58c..3cf576462d 100644 --- a/src/widgets/dialogs/qprogressdialog.cpp +++ b/src/widgets/dialogs/qprogressdialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qprogressdialog.h b/src/widgets/dialogs/qprogressdialog.h index b981e5ef63..6089de3f80 100644 --- a/src/widgets/dialogs/qprogressdialog.h +++ b/src/widgets/dialogs/qprogressdialog.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qsidebar.cpp b/src/widgets/dialogs/qsidebar.cpp index 1fd9bf236d..b62afec9bf 100644 --- a/src/widgets/dialogs/qsidebar.cpp +++ b/src/widgets/dialogs/qsidebar.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qsidebar_p.h b/src/widgets/dialogs/qsidebar_p.h index ec3f4c096d..265408b4ef 100644 --- a/src/widgets/dialogs/qsidebar_p.h +++ b/src/widgets/dialogs/qsidebar_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qwizard.cpp b/src/widgets/dialogs/qwizard.cpp index 81e23fbb18..dbdff5e34d 100644 --- a/src/widgets/dialogs/qwizard.cpp +++ b/src/widgets/dialogs/qwizard.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qwizard.h b/src/widgets/dialogs/qwizard.h index 77eef53037..f9af57c0b1 100644 --- a/src/widgets/dialogs/qwizard.h +++ b/src/widgets/dialogs/qwizard.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qwizard_win.cpp b/src/widgets/dialogs/qwizard_win.cpp index 075c8b81bb..06640a5864 100644 --- a/src/widgets/dialogs/qwizard_win.cpp +++ b/src/widgets/dialogs/qwizard_win.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/dialogs/qwizard_win_p.h b/src/widgets/dialogs/qwizard_win_p.h index f53a9ba75c..ab16d293af 100644 --- a/src/widgets/dialogs/qwizard_win_p.h +++ b/src/widgets/dialogs/qwizard_win_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/effects/qgraphicseffect.cpp b/src/widgets/effects/qgraphicseffect.cpp index 45f31d8062..ac33bffd6c 100644 --- a/src/widgets/effects/qgraphicseffect.cpp +++ b/src/widgets/effects/qgraphicseffect.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/effects/qgraphicseffect.h b/src/widgets/effects/qgraphicseffect.h index 0ee6b26463..e8e97aa7e7 100644 --- a/src/widgets/effects/qgraphicseffect.h +++ b/src/widgets/effects/qgraphicseffect.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/effects/qgraphicseffect_p.h b/src/widgets/effects/qgraphicseffect_p.h index ac15f04d05..b2859f9a41 100644 --- a/src/widgets/effects/qgraphicseffect_p.h +++ b/src/widgets/effects/qgraphicseffect_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/effects/qpixmapfilter.cpp b/src/widgets/effects/qpixmapfilter.cpp index 9cdedc19a3..826bf2e93d 100644 --- a/src/widgets/effects/qpixmapfilter.cpp +++ b/src/widgets/effects/qpixmapfilter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/effects/qpixmapfilter_p.h b/src/widgets/effects/qpixmapfilter_p.h index b0edd8d4b0..3f6ed069a1 100644 --- a/src/widgets/effects/qpixmapfilter_p.h +++ b/src/widgets/effects/qpixmapfilter_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraph_p.h b/src/widgets/graphicsview/qgraph_p.h index 3b9d839a17..7c5b07f05d 100644 --- a/src/widgets/graphicsview/qgraph_p.h +++ b/src/widgets/graphicsview/qgraph_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicsanchorlayout.cpp b/src/widgets/graphicsview/qgraphicsanchorlayout.cpp index 3bd83ae6c4..3fb768d30a 100644 --- a/src/widgets/graphicsview/qgraphicsanchorlayout.cpp +++ b/src/widgets/graphicsview/qgraphicsanchorlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicsanchorlayout.h b/src/widgets/graphicsview/qgraphicsanchorlayout.h index 4e57dbccf9..8db6391987 100644 --- a/src/widgets/graphicsview/qgraphicsanchorlayout.h +++ b/src/widgets/graphicsview/qgraphicsanchorlayout.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicsanchorlayout_p.cpp b/src/widgets/graphicsview/qgraphicsanchorlayout_p.cpp index c9bda58123..2ac3953676 100644 --- a/src/widgets/graphicsview/qgraphicsanchorlayout_p.cpp +++ b/src/widgets/graphicsview/qgraphicsanchorlayout_p.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicsanchorlayout_p.h b/src/widgets/graphicsview/qgraphicsanchorlayout_p.h index d78e5c89c3..21524e9157 100644 --- a/src/widgets/graphicsview/qgraphicsanchorlayout_p.h +++ b/src/widgets/graphicsview/qgraphicsanchorlayout_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicsgridlayout.cpp b/src/widgets/graphicsview/qgraphicsgridlayout.cpp index dd4102fdb9..fb4cf954e4 100644 --- a/src/widgets/graphicsview/qgraphicsgridlayout.cpp +++ b/src/widgets/graphicsview/qgraphicsgridlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicsgridlayout.h b/src/widgets/graphicsview/qgraphicsgridlayout.h index c6bc2229b6..749af57b0a 100644 --- a/src/widgets/graphicsview/qgraphicsgridlayout.h +++ b/src/widgets/graphicsview/qgraphicsgridlayout.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicsitem.cpp b/src/widgets/graphicsview/qgraphicsitem.cpp index b30d29e704..eb77aee9ae 100644 --- a/src/widgets/graphicsview/qgraphicsitem.cpp +++ b/src/widgets/graphicsview/qgraphicsitem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicsitem.h b/src/widgets/graphicsview/qgraphicsitem.h index 811305ac9d..3873857b8a 100644 --- a/src/widgets/graphicsview/qgraphicsitem.h +++ b/src/widgets/graphicsview/qgraphicsitem.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicsitem_p.h b/src/widgets/graphicsview/qgraphicsitem_p.h index 3cd77f3cdb..beedbfaa27 100644 --- a/src/widgets/graphicsview/qgraphicsitem_p.h +++ b/src/widgets/graphicsview/qgraphicsitem_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicsitemanimation.cpp b/src/widgets/graphicsview/qgraphicsitemanimation.cpp index a0b7ea4002..10c292bed1 100644 --- a/src/widgets/graphicsview/qgraphicsitemanimation.cpp +++ b/src/widgets/graphicsview/qgraphicsitemanimation.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicsitemanimation.h b/src/widgets/graphicsview/qgraphicsitemanimation.h index a6425a50e4..1f17d7e2e5 100644 --- a/src/widgets/graphicsview/qgraphicsitemanimation.h +++ b/src/widgets/graphicsview/qgraphicsitemanimation.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicslayout.cpp b/src/widgets/graphicsview/qgraphicslayout.cpp index 0f463334cc..6c8a2662be 100644 --- a/src/widgets/graphicsview/qgraphicslayout.cpp +++ b/src/widgets/graphicsview/qgraphicslayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicslayout.h b/src/widgets/graphicsview/qgraphicslayout.h index 6b19f0e622..4e5b2a982a 100644 --- a/src/widgets/graphicsview/qgraphicslayout.h +++ b/src/widgets/graphicsview/qgraphicslayout.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicslayout_p.cpp b/src/widgets/graphicsview/qgraphicslayout_p.cpp index c0df2c0d64..ce3525b68d 100644 --- a/src/widgets/graphicsview/qgraphicslayout_p.cpp +++ b/src/widgets/graphicsview/qgraphicslayout_p.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicslayout_p.h b/src/widgets/graphicsview/qgraphicslayout_p.h index f11bfbf38c..ea98a4a679 100644 --- a/src/widgets/graphicsview/qgraphicslayout_p.h +++ b/src/widgets/graphicsview/qgraphicslayout_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicslayoutitem.cpp b/src/widgets/graphicsview/qgraphicslayoutitem.cpp index 5eaf0a516e..ff53f1fd95 100644 --- a/src/widgets/graphicsview/qgraphicslayoutitem.cpp +++ b/src/widgets/graphicsview/qgraphicslayoutitem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicslayoutitem.h b/src/widgets/graphicsview/qgraphicslayoutitem.h index c617959a06..926a2b15dc 100644 --- a/src/widgets/graphicsview/qgraphicslayoutitem.h +++ b/src/widgets/graphicsview/qgraphicslayoutitem.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicslayoutitem_p.h b/src/widgets/graphicsview/qgraphicslayoutitem_p.h index 244c699faa..c13402dc49 100644 --- a/src/widgets/graphicsview/qgraphicslayoutitem_p.h +++ b/src/widgets/graphicsview/qgraphicslayoutitem_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicslinearlayout.cpp b/src/widgets/graphicsview/qgraphicslinearlayout.cpp index ee0db09df0..eeb4c0b01c 100644 --- a/src/widgets/graphicsview/qgraphicslinearlayout.cpp +++ b/src/widgets/graphicsview/qgraphicslinearlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicslinearlayout.h b/src/widgets/graphicsview/qgraphicslinearlayout.h index 5d2d5c309f..6d869197cf 100644 --- a/src/widgets/graphicsview/qgraphicslinearlayout.h +++ b/src/widgets/graphicsview/qgraphicslinearlayout.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicsproxywidget.cpp b/src/widgets/graphicsview/qgraphicsproxywidget.cpp index 1b03879804..2eadec0ef1 100644 --- a/src/widgets/graphicsview/qgraphicsproxywidget.cpp +++ b/src/widgets/graphicsview/qgraphicsproxywidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicsproxywidget.h b/src/widgets/graphicsview/qgraphicsproxywidget.h index 9f0a711c46..141b61bf09 100644 --- a/src/widgets/graphicsview/qgraphicsproxywidget.h +++ b/src/widgets/graphicsview/qgraphicsproxywidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicsproxywidget_p.h b/src/widgets/graphicsview/qgraphicsproxywidget_p.h index 86aec5f86b..e3e2cd174b 100644 --- a/src/widgets/graphicsview/qgraphicsproxywidget_p.h +++ b/src/widgets/graphicsview/qgraphicsproxywidget_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicsscene.cpp b/src/widgets/graphicsview/qgraphicsscene.cpp index f5057490c7..a8c3f8dee6 100644 --- a/src/widgets/graphicsview/qgraphicsscene.cpp +++ b/src/widgets/graphicsview/qgraphicsscene.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicsscene.h b/src/widgets/graphicsview/qgraphicsscene.h index 1b475e4d02..4e06a7483e 100644 --- a/src/widgets/graphicsview/qgraphicsscene.h +++ b/src/widgets/graphicsview/qgraphicsscene.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicsscene_bsp.cpp b/src/widgets/graphicsview/qgraphicsscene_bsp.cpp index cc8a558ad3..8b35fb0022 100644 --- a/src/widgets/graphicsview/qgraphicsscene_bsp.cpp +++ b/src/widgets/graphicsview/qgraphicsscene_bsp.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicsscene_bsp_p.h b/src/widgets/graphicsview/qgraphicsscene_bsp_p.h index 2e8149867b..d371ba5f66 100644 --- a/src/widgets/graphicsview/qgraphicsscene_bsp_p.h +++ b/src/widgets/graphicsview/qgraphicsscene_bsp_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicsscene_p.h b/src/widgets/graphicsview/qgraphicsscene_p.h index 8cb24457d6..a693c0c309 100644 --- a/src/widgets/graphicsview/qgraphicsscene_p.h +++ b/src/widgets/graphicsview/qgraphicsscene_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicsscenebsptreeindex.cpp b/src/widgets/graphicsview/qgraphicsscenebsptreeindex.cpp index 979ce6823b..1f4c3d1c18 100644 --- a/src/widgets/graphicsview/qgraphicsscenebsptreeindex.cpp +++ b/src/widgets/graphicsview/qgraphicsscenebsptreeindex.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicsscenebsptreeindex_p.h b/src/widgets/graphicsview/qgraphicsscenebsptreeindex_p.h index 0b353c74a4..d1b3099295 100644 --- a/src/widgets/graphicsview/qgraphicsscenebsptreeindex_p.h +++ b/src/widgets/graphicsview/qgraphicsscenebsptreeindex_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicssceneevent.cpp b/src/widgets/graphicsview/qgraphicssceneevent.cpp index 4927b6933f..ca6ff59bec 100644 --- a/src/widgets/graphicsview/qgraphicssceneevent.cpp +++ b/src/widgets/graphicsview/qgraphicssceneevent.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicssceneevent.h b/src/widgets/graphicsview/qgraphicssceneevent.h index f3677fbef8..cf88a66e3c 100644 --- a/src/widgets/graphicsview/qgraphicssceneevent.h +++ b/src/widgets/graphicsview/qgraphicssceneevent.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicssceneindex.cpp b/src/widgets/graphicsview/qgraphicssceneindex.cpp index d5ca504cae..8fb6c666a0 100644 --- a/src/widgets/graphicsview/qgraphicssceneindex.cpp +++ b/src/widgets/graphicsview/qgraphicssceneindex.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicssceneindex_p.h b/src/widgets/graphicsview/qgraphicssceneindex_p.h index d7e01f64b3..eff75e89b1 100644 --- a/src/widgets/graphicsview/qgraphicssceneindex_p.h +++ b/src/widgets/graphicsview/qgraphicssceneindex_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicsscenelinearindex.cpp b/src/widgets/graphicsview/qgraphicsscenelinearindex.cpp index 9a4b3389bc..08fcdaf08d 100644 --- a/src/widgets/graphicsview/qgraphicsscenelinearindex.cpp +++ b/src/widgets/graphicsview/qgraphicsscenelinearindex.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicsscenelinearindex_p.h b/src/widgets/graphicsview/qgraphicsscenelinearindex_p.h index 37ba363c1e..fdd6a82bda 100644 --- a/src/widgets/graphicsview/qgraphicsscenelinearindex_p.h +++ b/src/widgets/graphicsview/qgraphicsscenelinearindex_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicstransform.cpp b/src/widgets/graphicsview/qgraphicstransform.cpp index c0cc571bd4..33e3a3cc4d 100644 --- a/src/widgets/graphicsview/qgraphicstransform.cpp +++ b/src/widgets/graphicsview/qgraphicstransform.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicstransform.h b/src/widgets/graphicsview/qgraphicstransform.h index 4bceecc47c..8e93a5ee76 100644 --- a/src/widgets/graphicsview/qgraphicstransform.h +++ b/src/widgets/graphicsview/qgraphicstransform.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicstransform_p.h b/src/widgets/graphicsview/qgraphicstransform_p.h index d2b851fe97..976ffed2c3 100644 --- a/src/widgets/graphicsview/qgraphicstransform_p.h +++ b/src/widgets/graphicsview/qgraphicstransform_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicsview.cpp b/src/widgets/graphicsview/qgraphicsview.cpp index 8efd4eee4a..4c5c586ec9 100644 --- a/src/widgets/graphicsview/qgraphicsview.cpp +++ b/src/widgets/graphicsview/qgraphicsview.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicsview.h b/src/widgets/graphicsview/qgraphicsview.h index 19b5753938..2e33548a29 100644 --- a/src/widgets/graphicsview/qgraphicsview.h +++ b/src/widgets/graphicsview/qgraphicsview.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicsview_p.h b/src/widgets/graphicsview/qgraphicsview_p.h index 535679f1d8..c8b36bc89f 100644 --- a/src/widgets/graphicsview/qgraphicsview_p.h +++ b/src/widgets/graphicsview/qgraphicsview_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicswidget.cpp b/src/widgets/graphicsview/qgraphicswidget.cpp index e1fbdd4aa8..c415c704bc 100644 --- a/src/widgets/graphicsview/qgraphicswidget.cpp +++ b/src/widgets/graphicsview/qgraphicswidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicswidget.h b/src/widgets/graphicsview/qgraphicswidget.h index 8222886411..b469b64acd 100644 --- a/src/widgets/graphicsview/qgraphicswidget.h +++ b/src/widgets/graphicsview/qgraphicswidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicswidget_p.cpp b/src/widgets/graphicsview/qgraphicswidget_p.cpp index fd5afaabf4..40333fd1b5 100644 --- a/src/widgets/graphicsview/qgraphicswidget_p.cpp +++ b/src/widgets/graphicsview/qgraphicswidget_p.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgraphicswidget_p.h b/src/widgets/graphicsview/qgraphicswidget_p.h index 16c5303235..99f5661b98 100644 --- a/src/widgets/graphicsview/qgraphicswidget_p.h +++ b/src/widgets/graphicsview/qgraphicswidget_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgridlayoutengine.cpp b/src/widgets/graphicsview/qgridlayoutengine.cpp index 66b4a5b6b4..d5eeea68f2 100644 --- a/src/widgets/graphicsview/qgridlayoutengine.cpp +++ b/src/widgets/graphicsview/qgridlayoutengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qgridlayoutengine_p.h b/src/widgets/graphicsview/qgridlayoutengine_p.h index f947d67d5a..f8ef75ab12 100644 --- a/src/widgets/graphicsview/qgridlayoutengine_p.h +++ b/src/widgets/graphicsview/qgridlayoutengine_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qsimplex_p.cpp b/src/widgets/graphicsview/qsimplex_p.cpp index eb8bcb8c1f..0a1472a384 100644 --- a/src/widgets/graphicsview/qsimplex_p.cpp +++ b/src/widgets/graphicsview/qsimplex_p.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/graphicsview/qsimplex_p.h b/src/widgets/graphicsview/qsimplex_p.h index 3df82c6ccf..82f65bac01 100644 --- a/src/widgets/graphicsview/qsimplex_p.h +++ b/src/widgets/graphicsview/qsimplex_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qabstractitemdelegate.cpp b/src/widgets/itemviews/qabstractitemdelegate.cpp index 514e98ed2f..5e000b4d70 100644 --- a/src/widgets/itemviews/qabstractitemdelegate.cpp +++ b/src/widgets/itemviews/qabstractitemdelegate.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qabstractitemdelegate.h b/src/widgets/itemviews/qabstractitemdelegate.h index a4859f2ff0..315feda69e 100644 --- a/src/widgets/itemviews/qabstractitemdelegate.h +++ b/src/widgets/itemviews/qabstractitemdelegate.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qabstractitemview.cpp b/src/widgets/itemviews/qabstractitemview.cpp index aa4f8f5ec0..38bd22dc24 100644 --- a/src/widgets/itemviews/qabstractitemview.cpp +++ b/src/widgets/itemviews/qabstractitemview.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qabstractitemview.h b/src/widgets/itemviews/qabstractitemview.h index 00b19cf0d1..5258b7c4e5 100644 --- a/src/widgets/itemviews/qabstractitemview.h +++ b/src/widgets/itemviews/qabstractitemview.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qabstractitemview_p.h b/src/widgets/itemviews/qabstractitemview_p.h index 031e325cff..34c9ff2892 100644 --- a/src/widgets/itemviews/qabstractitemview_p.h +++ b/src/widgets/itemviews/qabstractitemview_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qbsptree.cpp b/src/widgets/itemviews/qbsptree.cpp index 89f98f50f3..a049b9d095 100644 --- a/src/widgets/itemviews/qbsptree.cpp +++ b/src/widgets/itemviews/qbsptree.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qbsptree_p.h b/src/widgets/itemviews/qbsptree_p.h index c98efba6fa..d7404010d1 100644 --- a/src/widgets/itemviews/qbsptree_p.h +++ b/src/widgets/itemviews/qbsptree_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qcolumnview.cpp b/src/widgets/itemviews/qcolumnview.cpp index 3b4bcae847..8b4db02961 100644 --- a/src/widgets/itemviews/qcolumnview.cpp +++ b/src/widgets/itemviews/qcolumnview.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qcolumnview.h b/src/widgets/itemviews/qcolumnview.h index b6d8687808..ac734c131d 100644 --- a/src/widgets/itemviews/qcolumnview.h +++ b/src/widgets/itemviews/qcolumnview.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qcolumnview_p.h b/src/widgets/itemviews/qcolumnview_p.h index 0da719e756..ce1275e220 100644 --- a/src/widgets/itemviews/qcolumnview_p.h +++ b/src/widgets/itemviews/qcolumnview_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qcolumnviewgrip.cpp b/src/widgets/itemviews/qcolumnviewgrip.cpp index 19b8c1aa78..ce25fdac03 100644 --- a/src/widgets/itemviews/qcolumnviewgrip.cpp +++ b/src/widgets/itemviews/qcolumnviewgrip.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qcolumnviewgrip_p.h b/src/widgets/itemviews/qcolumnviewgrip_p.h index 13bdb3694b..2991f070eb 100644 --- a/src/widgets/itemviews/qcolumnviewgrip_p.h +++ b/src/widgets/itemviews/qcolumnviewgrip_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qdatawidgetmapper.cpp b/src/widgets/itemviews/qdatawidgetmapper.cpp index 8f5203936d..3574d63d1c 100644 --- a/src/widgets/itemviews/qdatawidgetmapper.cpp +++ b/src/widgets/itemviews/qdatawidgetmapper.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qdatawidgetmapper.h b/src/widgets/itemviews/qdatawidgetmapper.h index ebb180fa20..36b208529c 100644 --- a/src/widgets/itemviews/qdatawidgetmapper.h +++ b/src/widgets/itemviews/qdatawidgetmapper.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qdirmodel.cpp b/src/widgets/itemviews/qdirmodel.cpp index c80662414a..aa74f604e5 100644 --- a/src/widgets/itemviews/qdirmodel.cpp +++ b/src/widgets/itemviews/qdirmodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qdirmodel.h b/src/widgets/itemviews/qdirmodel.h index 4ad89065f9..ee6ec3f4aa 100644 --- a/src/widgets/itemviews/qdirmodel.h +++ b/src/widgets/itemviews/qdirmodel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qfileiconprovider.cpp b/src/widgets/itemviews/qfileiconprovider.cpp index 1821171de8..a085f37d6c 100644 --- a/src/widgets/itemviews/qfileiconprovider.cpp +++ b/src/widgets/itemviews/qfileiconprovider.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qfileiconprovider.h b/src/widgets/itemviews/qfileiconprovider.h index fcaaa9f78e..2b90e800a9 100644 --- a/src/widgets/itemviews/qfileiconprovider.h +++ b/src/widgets/itemviews/qfileiconprovider.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qheaderview.cpp b/src/widgets/itemviews/qheaderview.cpp index cbc40367e3..bec39c4fa5 100644 --- a/src/widgets/itemviews/qheaderview.cpp +++ b/src/widgets/itemviews/qheaderview.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qheaderview.h b/src/widgets/itemviews/qheaderview.h index c9793759a1..cd3b6e9d15 100644 --- a/src/widgets/itemviews/qheaderview.h +++ b/src/widgets/itemviews/qheaderview.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qheaderview_p.h b/src/widgets/itemviews/qheaderview_p.h index b2b8d686b5..923ab36f72 100644 --- a/src/widgets/itemviews/qheaderview_p.h +++ b/src/widgets/itemviews/qheaderview_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qitemdelegate.cpp b/src/widgets/itemviews/qitemdelegate.cpp index 72f358ce68..200d99b212 100644 --- a/src/widgets/itemviews/qitemdelegate.cpp +++ b/src/widgets/itemviews/qitemdelegate.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qitemdelegate.h b/src/widgets/itemviews/qitemdelegate.h index 97f3cc820e..9e21686b8b 100644 --- a/src/widgets/itemviews/qitemdelegate.h +++ b/src/widgets/itemviews/qitemdelegate.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qitemeditorfactory.cpp b/src/widgets/itemviews/qitemeditorfactory.cpp index 7ff3622ec4..506ca79702 100644 --- a/src/widgets/itemviews/qitemeditorfactory.cpp +++ b/src/widgets/itemviews/qitemeditorfactory.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qitemeditorfactory.h b/src/widgets/itemviews/qitemeditorfactory.h index b48cac224f..3d3359dc1a 100644 --- a/src/widgets/itemviews/qitemeditorfactory.h +++ b/src/widgets/itemviews/qitemeditorfactory.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qitemeditorfactory_p.h b/src/widgets/itemviews/qitemeditorfactory_p.h index effa6f26a2..613d4e0e81 100644 --- a/src/widgets/itemviews/qitemeditorfactory_p.h +++ b/src/widgets/itemviews/qitemeditorfactory_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qlistview.cpp b/src/widgets/itemviews/qlistview.cpp index 44ae7246c4..6a6d33fbc8 100644 --- a/src/widgets/itemviews/qlistview.cpp +++ b/src/widgets/itemviews/qlistview.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qlistview.h b/src/widgets/itemviews/qlistview.h index 8e1a04492f..163485fb1f 100644 --- a/src/widgets/itemviews/qlistview.h +++ b/src/widgets/itemviews/qlistview.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qlistview_p.h b/src/widgets/itemviews/qlistview_p.h index 6a7acf669d..b959e66686 100644 --- a/src/widgets/itemviews/qlistview_p.h +++ b/src/widgets/itemviews/qlistview_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qlistwidget.cpp b/src/widgets/itemviews/qlistwidget.cpp index a4aaa6b4b6..d99d63c15f 100644 --- a/src/widgets/itemviews/qlistwidget.cpp +++ b/src/widgets/itemviews/qlistwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qlistwidget.h b/src/widgets/itemviews/qlistwidget.h index 6eb2ab78fd..b119b62046 100644 --- a/src/widgets/itemviews/qlistwidget.h +++ b/src/widgets/itemviews/qlistwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qlistwidget_p.h b/src/widgets/itemviews/qlistwidget_p.h index 2e879cc5d7..9d6b28d813 100644 --- a/src/widgets/itemviews/qlistwidget_p.h +++ b/src/widgets/itemviews/qlistwidget_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qproxymodel.cpp b/src/widgets/itemviews/qproxymodel.cpp index bc76bf1623..861cb95ca4 100644 --- a/src/widgets/itemviews/qproxymodel.cpp +++ b/src/widgets/itemviews/qproxymodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qproxymodel.h b/src/widgets/itemviews/qproxymodel.h index 948f9a07c9..870ea7b003 100644 --- a/src/widgets/itemviews/qproxymodel.h +++ b/src/widgets/itemviews/qproxymodel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qproxymodel_p.h b/src/widgets/itemviews/qproxymodel_p.h index 0a8668d2f8..3b73e844dc 100644 --- a/src/widgets/itemviews/qproxymodel_p.h +++ b/src/widgets/itemviews/qproxymodel_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qstandarditemmodel.cpp b/src/widgets/itemviews/qstandarditemmodel.cpp index 293420beb7..7bfece75ac 100644 --- a/src/widgets/itemviews/qstandarditemmodel.cpp +++ b/src/widgets/itemviews/qstandarditemmodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qstandarditemmodel.h b/src/widgets/itemviews/qstandarditemmodel.h index b1e70fffad..41047f7ed5 100644 --- a/src/widgets/itemviews/qstandarditemmodel.h +++ b/src/widgets/itemviews/qstandarditemmodel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qstandarditemmodel_p.h b/src/widgets/itemviews/qstandarditemmodel_p.h index dc2b5b9a3f..9fcddbe7d1 100644 --- a/src/widgets/itemviews/qstandarditemmodel_p.h +++ b/src/widgets/itemviews/qstandarditemmodel_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qstyleditemdelegate.cpp b/src/widgets/itemviews/qstyleditemdelegate.cpp index 35d8d3d85b..bf6cbdb7a4 100644 --- a/src/widgets/itemviews/qstyleditemdelegate.cpp +++ b/src/widgets/itemviews/qstyleditemdelegate.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qstyleditemdelegate.h b/src/widgets/itemviews/qstyleditemdelegate.h index 6dda0041c9..67f7182446 100644 --- a/src/widgets/itemviews/qstyleditemdelegate.h +++ b/src/widgets/itemviews/qstyleditemdelegate.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qtableview.cpp b/src/widgets/itemviews/qtableview.cpp index ec629cad8e..625a7e353b 100644 --- a/src/widgets/itemviews/qtableview.cpp +++ b/src/widgets/itemviews/qtableview.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qtableview.h b/src/widgets/itemviews/qtableview.h index 29f3793836..d2773c650e 100644 --- a/src/widgets/itemviews/qtableview.h +++ b/src/widgets/itemviews/qtableview.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qtableview_p.h b/src/widgets/itemviews/qtableview_p.h index dce0ed06ac..49ec36f680 100644 --- a/src/widgets/itemviews/qtableview_p.h +++ b/src/widgets/itemviews/qtableview_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qtablewidget.cpp b/src/widgets/itemviews/qtablewidget.cpp index 6485fa503d..abfba19117 100644 --- a/src/widgets/itemviews/qtablewidget.cpp +++ b/src/widgets/itemviews/qtablewidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qtablewidget.h b/src/widgets/itemviews/qtablewidget.h index d7332542d2..37b6d0f530 100644 --- a/src/widgets/itemviews/qtablewidget.h +++ b/src/widgets/itemviews/qtablewidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qtablewidget_p.h b/src/widgets/itemviews/qtablewidget_p.h index 7b7fc21ce8..881c4bd8a3 100644 --- a/src/widgets/itemviews/qtablewidget_p.h +++ b/src/widgets/itemviews/qtablewidget_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qtreeview.cpp b/src/widgets/itemviews/qtreeview.cpp index 5674162b05..acff457de4 100644 --- a/src/widgets/itemviews/qtreeview.cpp +++ b/src/widgets/itemviews/qtreeview.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qtreeview.h b/src/widgets/itemviews/qtreeview.h index 8c49375d1d..baa3ebca4d 100644 --- a/src/widgets/itemviews/qtreeview.h +++ b/src/widgets/itemviews/qtreeview.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qtreeview_p.h b/src/widgets/itemviews/qtreeview_p.h index 5a90b15389..1c37a13f08 100644 --- a/src/widgets/itemviews/qtreeview_p.h +++ b/src/widgets/itemviews/qtreeview_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qtreewidget.cpp b/src/widgets/itemviews/qtreewidget.cpp index 8c32e0ce87..71797b182c 100644 --- a/src/widgets/itemviews/qtreewidget.cpp +++ b/src/widgets/itemviews/qtreewidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qtreewidget.h b/src/widgets/itemviews/qtreewidget.h index ec4b0d8585..9f30e94580 100644 --- a/src/widgets/itemviews/qtreewidget.h +++ b/src/widgets/itemviews/qtreewidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qtreewidget_p.h b/src/widgets/itemviews/qtreewidget_p.h index 1ead6837c1..a26666dd40 100644 --- a/src/widgets/itemviews/qtreewidget_p.h +++ b/src/widgets/itemviews/qtreewidget_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qtreewidgetitemiterator.cpp b/src/widgets/itemviews/qtreewidgetitemiterator.cpp index f538917a09..5fdab5d024 100644 --- a/src/widgets/itemviews/qtreewidgetitemiterator.cpp +++ b/src/widgets/itemviews/qtreewidgetitemiterator.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qtreewidgetitemiterator.h b/src/widgets/itemviews/qtreewidgetitemiterator.h index 8d27afe2c3..d994b88b12 100644 --- a/src/widgets/itemviews/qtreewidgetitemiterator.h +++ b/src/widgets/itemviews/qtreewidgetitemiterator.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qtreewidgetitemiterator_p.h b/src/widgets/itemviews/qtreewidgetitemiterator_p.h index 5ece7fd7b6..c338b944a1 100644 --- a/src/widgets/itemviews/qtreewidgetitemiterator_p.h +++ b/src/widgets/itemviews/qtreewidgetitemiterator_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/itemviews/qwidgetitemdata_p.h b/src/widgets/itemviews/qwidgetitemdata_p.h index e7a08de378..cae3e8d1ff 100644 --- a/src/widgets/itemviews/qwidgetitemdata_p.h +++ b/src/widgets/itemviews/qwidgetitemdata_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qaction.cpp b/src/widgets/kernel/qaction.cpp index 15954abf8c..81ab1645cd 100644 --- a/src/widgets/kernel/qaction.cpp +++ b/src/widgets/kernel/qaction.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qaction.h b/src/widgets/kernel/qaction.h index 5c163c2314..a2cafa2027 100644 --- a/src/widgets/kernel/qaction.h +++ b/src/widgets/kernel/qaction.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qaction_p.h b/src/widgets/kernel/qaction_p.h index 8f9e1f0f8e..d57cd05cff 100644 --- a/src/widgets/kernel/qaction_p.h +++ b/src/widgets/kernel/qaction_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qactiongroup.cpp b/src/widgets/kernel/qactiongroup.cpp index 0397883009..67e0ee7adf 100644 --- a/src/widgets/kernel/qactiongroup.cpp +++ b/src/widgets/kernel/qactiongroup.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qactiongroup.h b/src/widgets/kernel/qactiongroup.h index 5379ef4197..bdef33294c 100644 --- a/src/widgets/kernel/qactiongroup.h +++ b/src/widgets/kernel/qactiongroup.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qapplication.cpp b/src/widgets/kernel/qapplication.cpp index 3e61d77d72..b9a02fa09c 100644 --- a/src/widgets/kernel/qapplication.cpp +++ b/src/widgets/kernel/qapplication.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qapplication.h b/src/widgets/kernel/qapplication.h index 4883ecefac..32706f8b06 100644 --- a/src/widgets/kernel/qapplication.h +++ b/src/widgets/kernel/qapplication.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qapplication_p.h b/src/widgets/kernel/qapplication_p.h index fe3240b004..aacdf32862 100644 --- a/src/widgets/kernel/qapplication_p.h +++ b/src/widgets/kernel/qapplication_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qboxlayout.cpp b/src/widgets/kernel/qboxlayout.cpp index 059c59fa1c..e8d653e25d 100644 --- a/src/widgets/kernel/qboxlayout.cpp +++ b/src/widgets/kernel/qboxlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qboxlayout.h b/src/widgets/kernel/qboxlayout.h index 5031972226..8df0fbca94 100644 --- a/src/widgets/kernel/qboxlayout.h +++ b/src/widgets/kernel/qboxlayout.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qdesktopwidget.cpp b/src/widgets/kernel/qdesktopwidget.cpp index 8c25d72f84..871715fed4 100644 --- a/src/widgets/kernel/qdesktopwidget.cpp +++ b/src/widgets/kernel/qdesktopwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qdesktopwidget.h b/src/widgets/kernel/qdesktopwidget.h index e1ed8cfa07..ec38b32239 100644 --- a/src/widgets/kernel/qdesktopwidget.h +++ b/src/widgets/kernel/qdesktopwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qdesktopwidget.qdoc b/src/widgets/kernel/qdesktopwidget.qdoc index 06a52af893..10690dfe35 100644 --- a/src/widgets/kernel/qdesktopwidget.qdoc +++ b/src/widgets/kernel/qdesktopwidget.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qdesktopwidget_qpa_p.h b/src/widgets/kernel/qdesktopwidget_qpa_p.h index 01ba44875d..50b5f4826e 100644 --- a/src/widgets/kernel/qdesktopwidget_qpa_p.h +++ b/src/widgets/kernel/qdesktopwidget_qpa_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qformlayout.cpp b/src/widgets/kernel/qformlayout.cpp index 6430472462..e902e4c9ac 100644 --- a/src/widgets/kernel/qformlayout.cpp +++ b/src/widgets/kernel/qformlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qformlayout.h b/src/widgets/kernel/qformlayout.h index 05bb57d981..b37d2b6e3a 100644 --- a/src/widgets/kernel/qformlayout.h +++ b/src/widgets/kernel/qformlayout.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qgesture.cpp b/src/widgets/kernel/qgesture.cpp index 12a0eaf45a..f79b577765 100644 --- a/src/widgets/kernel/qgesture.cpp +++ b/src/widgets/kernel/qgesture.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qgesture.h b/src/widgets/kernel/qgesture.h index 610ae2b9f6..25dba1c886 100644 --- a/src/widgets/kernel/qgesture.h +++ b/src/widgets/kernel/qgesture.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qgesture_p.h b/src/widgets/kernel/qgesture_p.h index 85d1c85884..be8e38cd7f 100644 --- a/src/widgets/kernel/qgesture_p.h +++ b/src/widgets/kernel/qgesture_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qgesturemanager.cpp b/src/widgets/kernel/qgesturemanager.cpp index 5b5d8dcb2a..5abbbde4cb 100644 --- a/src/widgets/kernel/qgesturemanager.cpp +++ b/src/widgets/kernel/qgesturemanager.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qgesturemanager_p.h b/src/widgets/kernel/qgesturemanager_p.h index 6c8cbb9cd0..800d7c5ad9 100644 --- a/src/widgets/kernel/qgesturemanager_p.h +++ b/src/widgets/kernel/qgesturemanager_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qgesturerecognizer.cpp b/src/widgets/kernel/qgesturerecognizer.cpp index 98f8b0a758..fc0e918987 100644 --- a/src/widgets/kernel/qgesturerecognizer.cpp +++ b/src/widgets/kernel/qgesturerecognizer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qgesturerecognizer.h b/src/widgets/kernel/qgesturerecognizer.h index 019f856f09..92f9f622c0 100644 --- a/src/widgets/kernel/qgesturerecognizer.h +++ b/src/widgets/kernel/qgesturerecognizer.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qgridlayout.cpp b/src/widgets/kernel/qgridlayout.cpp index 9168346e30..80834a0105 100644 --- a/src/widgets/kernel/qgridlayout.cpp +++ b/src/widgets/kernel/qgridlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qgridlayout.h b/src/widgets/kernel/qgridlayout.h index ef95d29cd1..f72ed32dcb 100644 --- a/src/widgets/kernel/qgridlayout.h +++ b/src/widgets/kernel/qgridlayout.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qguiplatformplugin.cpp b/src/widgets/kernel/qguiplatformplugin.cpp index aa17d0dc55..7faf17b9ab 100644 --- a/src/widgets/kernel/qguiplatformplugin.cpp +++ b/src/widgets/kernel/qguiplatformplugin.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qguiplatformplugin_p.h b/src/widgets/kernel/qguiplatformplugin_p.h index 84319b71a0..74a01b9d58 100644 --- a/src/widgets/kernel/qguiplatformplugin_p.h +++ b/src/widgets/kernel/qguiplatformplugin_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qicon.cpp b/src/widgets/kernel/qicon.cpp index de7544f09a..1b1b490d2b 100644 --- a/src/widgets/kernel/qicon.cpp +++ b/src/widgets/kernel/qicon.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qicon.h b/src/widgets/kernel/qicon.h index 3c527eb974..76c7fda7e2 100644 --- a/src/widgets/kernel/qicon.h +++ b/src/widgets/kernel/qicon.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qicon_p.h b/src/widgets/kernel/qicon_p.h index 7ba471b002..02ac3afed4 100644 --- a/src/widgets/kernel/qicon_p.h +++ b/src/widgets/kernel/qicon_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qiconengine.cpp b/src/widgets/kernel/qiconengine.cpp index 52e8cfd384..930d7e1699 100644 --- a/src/widgets/kernel/qiconengine.cpp +++ b/src/widgets/kernel/qiconengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qiconengine.h b/src/widgets/kernel/qiconengine.h index 63cfcbff5e..083ceee33d 100644 --- a/src/widgets/kernel/qiconengine.h +++ b/src/widgets/kernel/qiconengine.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qiconengineplugin.cpp b/src/widgets/kernel/qiconengineplugin.cpp index 2775fb201d..895572120e 100644 --- a/src/widgets/kernel/qiconengineplugin.cpp +++ b/src/widgets/kernel/qiconengineplugin.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qiconengineplugin.h b/src/widgets/kernel/qiconengineplugin.h index c228e8666b..1bd9075866 100644 --- a/src/widgets/kernel/qiconengineplugin.h +++ b/src/widgets/kernel/qiconengineplugin.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qiconloader.cpp b/src/widgets/kernel/qiconloader.cpp index 45959c03ef..d8bef74dd8 100644 --- a/src/widgets/kernel/qiconloader.cpp +++ b/src/widgets/kernel/qiconloader.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qiconloader_p.h b/src/widgets/kernel/qiconloader_p.h index 1c6c0cb1a5..840a2858b6 100644 --- a/src/widgets/kernel/qiconloader_p.h +++ b/src/widgets/kernel/qiconloader_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qinputcontext.cpp b/src/widgets/kernel/qinputcontext.cpp index 66595e8ee4..27576193e9 100644 --- a/src/widgets/kernel/qinputcontext.cpp +++ b/src/widgets/kernel/qinputcontext.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qinputcontext.h b/src/widgets/kernel/qinputcontext.h index 8a80d72ac2..147061f221 100644 --- a/src/widgets/kernel/qinputcontext.h +++ b/src/widgets/kernel/qinputcontext.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qlayout.cpp b/src/widgets/kernel/qlayout.cpp index ebf9cf6cae..a682354df1 100644 --- a/src/widgets/kernel/qlayout.cpp +++ b/src/widgets/kernel/qlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qlayout.h b/src/widgets/kernel/qlayout.h index 65fccb13fa..4d9213c1ec 100644 --- a/src/widgets/kernel/qlayout.h +++ b/src/widgets/kernel/qlayout.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qlayout_p.h b/src/widgets/kernel/qlayout_p.h index e282360418..cc80987500 100644 --- a/src/widgets/kernel/qlayout_p.h +++ b/src/widgets/kernel/qlayout_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qlayoutengine.cpp b/src/widgets/kernel/qlayoutengine.cpp index a7470aabaa..38e6555658 100644 --- a/src/widgets/kernel/qlayoutengine.cpp +++ b/src/widgets/kernel/qlayoutengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qlayoutengine_p.h b/src/widgets/kernel/qlayoutengine_p.h index 9be9ecd321..5f5d0aa49e 100644 --- a/src/widgets/kernel/qlayoutengine_p.h +++ b/src/widgets/kernel/qlayoutengine_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qlayoutitem.cpp b/src/widgets/kernel/qlayoutitem.cpp index 5fcda5dfea..8479ae92c5 100644 --- a/src/widgets/kernel/qlayoutitem.cpp +++ b/src/widgets/kernel/qlayoutitem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qlayoutitem.h b/src/widgets/kernel/qlayoutitem.h index d03f77654b..a09dcf33de 100644 --- a/src/widgets/kernel/qlayoutitem.h +++ b/src/widgets/kernel/qlayoutitem.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qplatformdialoghelper_qpa.cpp b/src/widgets/kernel/qplatformdialoghelper_qpa.cpp index f2ece1d617..cfe2b15572 100644 --- a/src/widgets/kernel/qplatformdialoghelper_qpa.cpp +++ b/src/widgets/kernel/qplatformdialoghelper_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** - ** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). + ** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qplatformdialoghelper_qpa.h b/src/widgets/kernel/qplatformdialoghelper_qpa.h index e607d3e810..b0b8b3a5b3 100644 --- a/src/widgets/kernel/qplatformdialoghelper_qpa.h +++ b/src/widgets/kernel/qplatformdialoghelper_qpa.h @@ -1,6 +1,6 @@ /**************************************************************************** ** - ** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). + ** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qplatformmenu_qpa.cpp b/src/widgets/kernel/qplatformmenu_qpa.cpp index fd5cc78bf0..2a11884a67 100644 --- a/src/widgets/kernel/qplatformmenu_qpa.cpp +++ b/src/widgets/kernel/qplatformmenu_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qplatformmenu_qpa.h b/src/widgets/kernel/qplatformmenu_qpa.h index d2736ed354..b6473c0b15 100644 --- a/src/widgets/kernel/qplatformmenu_qpa.h +++ b/src/widgets/kernel/qplatformmenu_qpa.h @@ -1,6 +1,6 @@ /**************************************************************************** ** - ** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). + ** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qshortcut.cpp b/src/widgets/kernel/qshortcut.cpp index 94f809d199..9c3c51dd9a 100644 --- a/src/widgets/kernel/qshortcut.cpp +++ b/src/widgets/kernel/qshortcut.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qshortcut.h b/src/widgets/kernel/qshortcut.h index 6e3c647852..e240ea8864 100644 --- a/src/widgets/kernel/qshortcut.h +++ b/src/widgets/kernel/qshortcut.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qsizepolicy.h b/src/widgets/kernel/qsizepolicy.h index 826991ceb3..32ef8535f1 100644 --- a/src/widgets/kernel/qsizepolicy.h +++ b/src/widgets/kernel/qsizepolicy.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qsizepolicy.qdoc b/src/widgets/kernel/qsizepolicy.qdoc index e4d1cc137c..a0e565caff 100644 --- a/src/widgets/kernel/qsizepolicy.qdoc +++ b/src/widgets/kernel/qsizepolicy.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qsoftkeymanager.cpp b/src/widgets/kernel/qsoftkeymanager.cpp index 7d7c56fe84..a7c128337f 100644 --- a/src/widgets/kernel/qsoftkeymanager.cpp +++ b/src/widgets/kernel/qsoftkeymanager.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qsoftkeymanager_common_p.h b/src/widgets/kernel/qsoftkeymanager_common_p.h index fc484dc3c6..121d4f8e22 100644 --- a/src/widgets/kernel/qsoftkeymanager_common_p.h +++ b/src/widgets/kernel/qsoftkeymanager_common_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qsoftkeymanager_p.h b/src/widgets/kernel/qsoftkeymanager_p.h index d58b546d74..ad49a1b586 100644 --- a/src/widgets/kernel/qsoftkeymanager_p.h +++ b/src/widgets/kernel/qsoftkeymanager_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qstackedlayout.cpp b/src/widgets/kernel/qstackedlayout.cpp index 950db2178c..7179ddc62c 100644 --- a/src/widgets/kernel/qstackedlayout.cpp +++ b/src/widgets/kernel/qstackedlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qstackedlayout.h b/src/widgets/kernel/qstackedlayout.h index d895d139ab..e80e909eae 100644 --- a/src/widgets/kernel/qstackedlayout.h +++ b/src/widgets/kernel/qstackedlayout.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qstandardgestures.cpp b/src/widgets/kernel/qstandardgestures.cpp index a557342023..3a9bd2bc38 100644 --- a/src/widgets/kernel/qstandardgestures.cpp +++ b/src/widgets/kernel/qstandardgestures.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qstandardgestures_p.h b/src/widgets/kernel/qstandardgestures_p.h index be30d70058..28b0b71797 100644 --- a/src/widgets/kernel/qstandardgestures_p.h +++ b/src/widgets/kernel/qstandardgestures_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qt_widgets_pch.h b/src/widgets/kernel/qt_widgets_pch.h index 012d92ce8c..8e8985d21f 100644 --- a/src/widgets/kernel/qt_widgets_pch.h +++ b/src/widgets/kernel/qt_widgets_pch.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qtooltip.cpp b/src/widgets/kernel/qtooltip.cpp index fb1b67922d..fc0efc3dc2 100644 --- a/src/widgets/kernel/qtooltip.cpp +++ b/src/widgets/kernel/qtooltip.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qtooltip.h b/src/widgets/kernel/qtooltip.h index 3d537f40af..8218a18338 100644 --- a/src/widgets/kernel/qtooltip.h +++ b/src/widgets/kernel/qtooltip.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qwhatsthis.cpp b/src/widgets/kernel/qwhatsthis.cpp index 7a53dc3415..7b29ac6e8f 100644 --- a/src/widgets/kernel/qwhatsthis.cpp +++ b/src/widgets/kernel/qwhatsthis.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qwhatsthis.h b/src/widgets/kernel/qwhatsthis.h index 9ef96e7197..93e97ddff8 100644 --- a/src/widgets/kernel/qwhatsthis.h +++ b/src/widgets/kernel/qwhatsthis.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qwidget.cpp b/src/widgets/kernel/qwidget.cpp index 68d1b432e7..d7a7efda6d 100644 --- a/src/widgets/kernel/qwidget.cpp +++ b/src/widgets/kernel/qwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qwidget.h b/src/widgets/kernel/qwidget.h index 2b4fc8897c..60d4b8b698 100644 --- a/src/widgets/kernel/qwidget.h +++ b/src/widgets/kernel/qwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qwidget_p.h b/src/widgets/kernel/qwidget_p.h index c890dfe70c..43c3eaeff0 100644 --- a/src/widgets/kernel/qwidget_p.h +++ b/src/widgets/kernel/qwidget_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qwidgetaction.cpp b/src/widgets/kernel/qwidgetaction.cpp index a2c2477922..caab1c16e6 100644 --- a/src/widgets/kernel/qwidgetaction.cpp +++ b/src/widgets/kernel/qwidgetaction.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qwidgetaction.h b/src/widgets/kernel/qwidgetaction.h index 31d58a819a..62ef05596b 100644 --- a/src/widgets/kernel/qwidgetaction.h +++ b/src/widgets/kernel/qwidgetaction.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qwidgetaction_p.h b/src/widgets/kernel/qwidgetaction_p.h index 99439d9919..ff8a37425c 100644 --- a/src/widgets/kernel/qwidgetaction_p.h +++ b/src/widgets/kernel/qwidgetaction_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qwidgetbackingstore.cpp b/src/widgets/kernel/qwidgetbackingstore.cpp index d151d5e9e1..0eb9407925 100644 --- a/src/widgets/kernel/qwidgetbackingstore.cpp +++ b/src/widgets/kernel/qwidgetbackingstore.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qwidgetbackingstore_p.h b/src/widgets/kernel/qwidgetbackingstore_p.h index 4d43a90322..2d28cae88e 100644 --- a/src/widgets/kernel/qwidgetbackingstore_p.h +++ b/src/widgets/kernel/qwidgetbackingstore_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qwidgetsvariant.cpp b/src/widgets/kernel/qwidgetsvariant.cpp index 92c8d9e6c2..e33d0da0a1 100644 --- a/src/widgets/kernel/qwidgetsvariant.cpp +++ b/src/widgets/kernel/qwidgetsvariant.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qwidgetwindow_qpa.cpp b/src/widgets/kernel/qwidgetwindow_qpa.cpp index e3178db8c9..b89dca7357 100644 --- a/src/widgets/kernel/qwidgetwindow_qpa.cpp +++ b/src/widgets/kernel/qwidgetwindow_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/kernel/qwidgetwindow_qpa_p.h b/src/widgets/kernel/qwidgetwindow_qpa_p.h index 906b96c47b..82448ab5fd 100644 --- a/src/widgets/kernel/qwidgetwindow_qpa_p.h +++ b/src/widgets/kernel/qwidgetwindow_qpa_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qapplication_mac.mm b/src/widgets/platforms/mac/qapplication_mac.mm index cab207e667..13fb6fd624 100644 --- a/src/widgets/platforms/mac/qapplication_mac.mm +++ b/src/widgets/platforms/mac/qapplication_mac.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qclipboard_mac.cpp b/src/widgets/platforms/mac/qclipboard_mac.cpp index b8a4d2915d..3ec4bfb8c1 100644 --- a/src/widgets/platforms/mac/qclipboard_mac.cpp +++ b/src/widgets/platforms/mac/qclipboard_mac.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qcocoaintrospection_mac.mm b/src/widgets/platforms/mac/qcocoaintrospection_mac.mm index 7388f5a4e9..e68aacb4a0 100644 --- a/src/widgets/platforms/mac/qcocoaintrospection_mac.mm +++ b/src/widgets/platforms/mac/qcocoaintrospection_mac.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qcocoaintrospection_p.h b/src/widgets/platforms/mac/qcocoaintrospection_p.h index e18646d063..9521957382 100644 --- a/src/widgets/platforms/mac/qcocoaintrospection_p.h +++ b/src/widgets/platforms/mac/qcocoaintrospection_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qcocoapanel_mac.mm b/src/widgets/platforms/mac/qcocoapanel_mac.mm index 2dca64d5ff..115f78b153 100644 --- a/src/widgets/platforms/mac/qcocoapanel_mac.mm +++ b/src/widgets/platforms/mac/qcocoapanel_mac.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qcocoapanel_mac_p.h b/src/widgets/platforms/mac/qcocoapanel_mac_p.h index 43282be7c6..19eab92dbf 100644 --- a/src/widgets/platforms/mac/qcocoapanel_mac_p.h +++ b/src/widgets/platforms/mac/qcocoapanel_mac_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qcocoasharedwindowmethods_mac_p.h b/src/widgets/platforms/mac/qcocoasharedwindowmethods_mac_p.h index f5a93d98d2..edafcfccdf 100644 --- a/src/widgets/platforms/mac/qcocoasharedwindowmethods_mac_p.h +++ b/src/widgets/platforms/mac/qcocoasharedwindowmethods_mac_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qcocoaview_mac.mm b/src/widgets/platforms/mac/qcocoaview_mac.mm index 61a5ee10ff..f4b2b8d707 100644 --- a/src/widgets/platforms/mac/qcocoaview_mac.mm +++ b/src/widgets/platforms/mac/qcocoaview_mac.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qcocoaview_mac_p.h b/src/widgets/platforms/mac/qcocoaview_mac_p.h index 928e489abe..e534e7ab47 100644 --- a/src/widgets/platforms/mac/qcocoaview_mac_p.h +++ b/src/widgets/platforms/mac/qcocoaview_mac_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qcocoawindow_mac.mm b/src/widgets/platforms/mac/qcocoawindow_mac.mm index 730504f672..918e5a0a13 100644 --- a/src/widgets/platforms/mac/qcocoawindow_mac.mm +++ b/src/widgets/platforms/mac/qcocoawindow_mac.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qcocoawindow_mac_p.h b/src/widgets/platforms/mac/qcocoawindow_mac_p.h index 704e6bd01c..83ecb7c13e 100644 --- a/src/widgets/platforms/mac/qcocoawindow_mac_p.h +++ b/src/widgets/platforms/mac/qcocoawindow_mac_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qcocoawindowcustomthemeframe_mac.mm b/src/widgets/platforms/mac/qcocoawindowcustomthemeframe_mac.mm index 9e3b4cfee7..f1b38148be 100644 --- a/src/widgets/platforms/mac/qcocoawindowcustomthemeframe_mac.mm +++ b/src/widgets/platforms/mac/qcocoawindowcustomthemeframe_mac.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qcocoawindowcustomthemeframe_mac_p.h b/src/widgets/platforms/mac/qcocoawindowcustomthemeframe_mac_p.h index 7ac8a28539..cd497849a7 100644 --- a/src/widgets/platforms/mac/qcocoawindowcustomthemeframe_mac_p.h +++ b/src/widgets/platforms/mac/qcocoawindowcustomthemeframe_mac_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qcocoawindowdelegate_mac.mm b/src/widgets/platforms/mac/qcocoawindowdelegate_mac.mm index 44fb9b6eba..fc89821f41 100644 --- a/src/widgets/platforms/mac/qcocoawindowdelegate_mac.mm +++ b/src/widgets/platforms/mac/qcocoawindowdelegate_mac.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qcocoawindowdelegate_mac_p.h b/src/widgets/platforms/mac/qcocoawindowdelegate_mac_p.h index 261d1d192a..27906e116c 100644 --- a/src/widgets/platforms/mac/qcocoawindowdelegate_mac_p.h +++ b/src/widgets/platforms/mac/qcocoawindowdelegate_mac_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qcolormap_mac.cpp b/src/widgets/platforms/mac/qcolormap_mac.cpp index 0c3fd70468..de920d7144 100644 --- a/src/widgets/platforms/mac/qcolormap_mac.cpp +++ b/src/widgets/platforms/mac/qcolormap_mac.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qdesktopwidget_mac.mm b/src/widgets/platforms/mac/qdesktopwidget_mac.mm index 0bf213303e..9869eeeab2 100644 --- a/src/widgets/platforms/mac/qdesktopwidget_mac.mm +++ b/src/widgets/platforms/mac/qdesktopwidget_mac.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qdesktopwidget_mac_p.h b/src/widgets/platforms/mac/qdesktopwidget_mac_p.h index e1ca7e7a37..a2d7552120 100644 --- a/src/widgets/platforms/mac/qdesktopwidget_mac_p.h +++ b/src/widgets/platforms/mac/qdesktopwidget_mac_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qdnd_mac.mm b/src/widgets/platforms/mac/qdnd_mac.mm index 73acb93f0b..b5543024c0 100644 --- a/src/widgets/platforms/mac/qdnd_mac.mm +++ b/src/widgets/platforms/mac/qdnd_mac.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qeventdispatcher_mac.mm b/src/widgets/platforms/mac/qeventdispatcher_mac.mm index 2a5227c19f..0056ebeca8 100644 --- a/src/widgets/platforms/mac/qeventdispatcher_mac.mm +++ b/src/widgets/platforms/mac/qeventdispatcher_mac.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qeventdispatcher_mac_p.h b/src/widgets/platforms/mac/qeventdispatcher_mac_p.h index 241adf2fce..57797b070b 100644 --- a/src/widgets/platforms/mac/qeventdispatcher_mac_p.h +++ b/src/widgets/platforms/mac/qeventdispatcher_mac_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qkeymapper_mac.cpp b/src/widgets/platforms/mac/qkeymapper_mac.cpp index df18511b4f..3cacb098aa 100644 --- a/src/widgets/platforms/mac/qkeymapper_mac.cpp +++ b/src/widgets/platforms/mac/qkeymapper_mac.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qmacdefines_mac.h b/src/widgets/platforms/mac/qmacdefines_mac.h index d0accf872f..9f27dfa584 100644 --- a/src/widgets/platforms/mac/qmacdefines_mac.h +++ b/src/widgets/platforms/mac/qmacdefines_mac.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qmacgesturerecognizer_mac.mm b/src/widgets/platforms/mac/qmacgesturerecognizer_mac.mm index 6e77f41d2d..54823aa04f 100644 --- a/src/widgets/platforms/mac/qmacgesturerecognizer_mac.mm +++ b/src/widgets/platforms/mac/qmacgesturerecognizer_mac.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qmacgesturerecognizer_mac_p.h b/src/widgets/platforms/mac/qmacgesturerecognizer_mac_p.h index 8d1bd337d7..c77ead3c21 100644 --- a/src/widgets/platforms/mac/qmacgesturerecognizer_mac_p.h +++ b/src/widgets/platforms/mac/qmacgesturerecognizer_mac_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qmacinputcontext_mac.cpp b/src/widgets/platforms/mac/qmacinputcontext_mac.cpp index 43da4a911f..ee0bf70427 100644 --- a/src/widgets/platforms/mac/qmacinputcontext_mac.cpp +++ b/src/widgets/platforms/mac/qmacinputcontext_mac.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qmacinputcontext_p.h b/src/widgets/platforms/mac/qmacinputcontext_p.h index 4fb3eb57b6..7a7ef9687b 100644 --- a/src/widgets/platforms/mac/qmacinputcontext_p.h +++ b/src/widgets/platforms/mac/qmacinputcontext_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qmime_mac.cpp b/src/widgets/platforms/mac/qmime_mac.cpp index a9843b7e87..730f672ecd 100644 --- a/src/widgets/platforms/mac/qmime_mac.cpp +++ b/src/widgets/platforms/mac/qmime_mac.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qnsframeview_mac_p.h b/src/widgets/platforms/mac/qnsframeview_mac_p.h index 72245c1782..1534ad1461 100644 --- a/src/widgets/platforms/mac/qnsframeview_mac_p.h +++ b/src/widgets/platforms/mac/qnsframeview_mac_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qnsthemeframe_mac_p.h b/src/widgets/platforms/mac/qnsthemeframe_mac_p.h index a1fa4ef1d8..1768ad8687 100644 --- a/src/widgets/platforms/mac/qnsthemeframe_mac_p.h +++ b/src/widgets/platforms/mac/qnsthemeframe_mac_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qnstitledframe_mac_p.h b/src/widgets/platforms/mac/qnstitledframe_mac_p.h index 18a6155925..531b943646 100644 --- a/src/widgets/platforms/mac/qnstitledframe_mac_p.h +++ b/src/widgets/platforms/mac/qnstitledframe_mac_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qpaintdevice_mac.cpp b/src/widgets/platforms/mac/qpaintdevice_mac.cpp index 4bdb5d8733..01f4a18bf6 100644 --- a/src/widgets/platforms/mac/qpaintdevice_mac.cpp +++ b/src/widgets/platforms/mac/qpaintdevice_mac.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qpaintengine_mac.cpp b/src/widgets/platforms/mac/qpaintengine_mac.cpp index b3605adb19..f1e397e7b0 100644 --- a/src/widgets/platforms/mac/qpaintengine_mac.cpp +++ b/src/widgets/platforms/mac/qpaintengine_mac.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qpaintengine_mac_p.h b/src/widgets/platforms/mac/qpaintengine_mac_p.h index 2434011e52..a8e27a808d 100644 --- a/src/widgets/platforms/mac/qpaintengine_mac_p.h +++ b/src/widgets/platforms/mac/qpaintengine_mac_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qpixmap_mac.cpp b/src/widgets/platforms/mac/qpixmap_mac.cpp index 48835c7d46..3b2452c37c 100644 --- a/src/widgets/platforms/mac/qpixmap_mac.cpp +++ b/src/widgets/platforms/mac/qpixmap_mac.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qpixmap_mac_p.h b/src/widgets/platforms/mac/qpixmap_mac_p.h index 4f53160074..582eef27b6 100644 --- a/src/widgets/platforms/mac/qpixmap_mac_p.h +++ b/src/widgets/platforms/mac/qpixmap_mac_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qprintengine_mac.mm b/src/widgets/platforms/mac/qprintengine_mac.mm index b01d7a5762..9902b3216d 100644 --- a/src/widgets/platforms/mac/qprintengine_mac.mm +++ b/src/widgets/platforms/mac/qprintengine_mac.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qprintengine_mac_p.h b/src/widgets/platforms/mac/qprintengine_mac_p.h index 6c17818fbd..349dfd10f2 100644 --- a/src/widgets/platforms/mac/qprintengine_mac_p.h +++ b/src/widgets/platforms/mac/qprintengine_mac_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qprinterinfo_mac.cpp b/src/widgets/platforms/mac/qprinterinfo_mac.cpp index 455510d5d3..98492a5af6 100644 --- a/src/widgets/platforms/mac/qprinterinfo_mac.cpp +++ b/src/widgets/platforms/mac/qprinterinfo_mac.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qregion_mac.cpp b/src/widgets/platforms/mac/qregion_mac.cpp index 3a861f1cdd..71e7a3b44b 100644 --- a/src/widgets/platforms/mac/qregion_mac.cpp +++ b/src/widgets/platforms/mac/qregion_mac.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qt_cocoa_helpers_mac.mm b/src/widgets/platforms/mac/qt_cocoa_helpers_mac.mm index b8ec6bbcf3..348b989ec6 100644 --- a/src/widgets/platforms/mac/qt_cocoa_helpers_mac.mm +++ b/src/widgets/platforms/mac/qt_cocoa_helpers_mac.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qt_cocoa_helpers_mac_p.h b/src/widgets/platforms/mac/qt_cocoa_helpers_mac_p.h index 79ae7df8b6..bae479ec6a 100644 --- a/src/widgets/platforms/mac/qt_cocoa_helpers_mac_p.h +++ b/src/widgets/platforms/mac/qt_cocoa_helpers_mac_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qt_mac.cpp b/src/widgets/platforms/mac/qt_mac.cpp index bb7e047479..adf8f70cab 100644 --- a/src/widgets/platforms/mac/qt_mac.cpp +++ b/src/widgets/platforms/mac/qt_mac.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qt_mac_p.h b/src/widgets/platforms/mac/qt_mac_p.h index 5a1d4ee42e..3b679c32ec 100644 --- a/src/widgets/platforms/mac/qt_mac_p.h +++ b/src/widgets/platforms/mac/qt_mac_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/platforms/mac/qwidget_mac.mm b/src/widgets/platforms/mac/qwidget_mac.mm index dd958761a1..6c8413e42e 100644 --- a/src/widgets/platforms/mac/qwidget_mac.mm +++ b/src/widgets/platforms/mac/qwidget_mac.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/statemachine/qbasickeyeventtransition.cpp b/src/widgets/statemachine/qbasickeyeventtransition.cpp index 615e642a7e..fca11eb036 100644 --- a/src/widgets/statemachine/qbasickeyeventtransition.cpp +++ b/src/widgets/statemachine/qbasickeyeventtransition.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/statemachine/qbasickeyeventtransition_p.h b/src/widgets/statemachine/qbasickeyeventtransition_p.h index 6a51260155..379c151e60 100644 --- a/src/widgets/statemachine/qbasickeyeventtransition_p.h +++ b/src/widgets/statemachine/qbasickeyeventtransition_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/statemachine/qbasicmouseeventtransition.cpp b/src/widgets/statemachine/qbasicmouseeventtransition.cpp index 0edf430af6..c05b262b66 100644 --- a/src/widgets/statemachine/qbasicmouseeventtransition.cpp +++ b/src/widgets/statemachine/qbasicmouseeventtransition.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/statemachine/qbasicmouseeventtransition_p.h b/src/widgets/statemachine/qbasicmouseeventtransition_p.h index 3a608cb0af..98a8f28ca8 100644 --- a/src/widgets/statemachine/qbasicmouseeventtransition_p.h +++ b/src/widgets/statemachine/qbasicmouseeventtransition_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/statemachine/qguistatemachine.cpp b/src/widgets/statemachine/qguistatemachine.cpp index f717662ace..064295ea7f 100644 --- a/src/widgets/statemachine/qguistatemachine.cpp +++ b/src/widgets/statemachine/qguistatemachine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/statemachine/qkeyeventtransition.cpp b/src/widgets/statemachine/qkeyeventtransition.cpp index b1ff2e33b2..175d4924a9 100644 --- a/src/widgets/statemachine/qkeyeventtransition.cpp +++ b/src/widgets/statemachine/qkeyeventtransition.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/statemachine/qkeyeventtransition.h b/src/widgets/statemachine/qkeyeventtransition.h index 7862bd41d7..b22a4e0934 100644 --- a/src/widgets/statemachine/qkeyeventtransition.h +++ b/src/widgets/statemachine/qkeyeventtransition.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/statemachine/qmouseeventtransition.cpp b/src/widgets/statemachine/qmouseeventtransition.cpp index 416529bddd..60c2c85159 100644 --- a/src/widgets/statemachine/qmouseeventtransition.cpp +++ b/src/widgets/statemachine/qmouseeventtransition.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/statemachine/qmouseeventtransition.h b/src/widgets/statemachine/qmouseeventtransition.h index 7255a968ac..bdd64c5f3f 100644 --- a/src/widgets/statemachine/qmouseeventtransition.h +++ b/src/widgets/statemachine/qmouseeventtransition.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qcdestyle.cpp b/src/widgets/styles/qcdestyle.cpp index 426ab19007..518461c279 100644 --- a/src/widgets/styles/qcdestyle.cpp +++ b/src/widgets/styles/qcdestyle.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qcdestyle.h b/src/widgets/styles/qcdestyle.h index 854bfc6c69..b5293d30f3 100644 --- a/src/widgets/styles/qcdestyle.h +++ b/src/widgets/styles/qcdestyle.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qcleanlooksstyle.cpp b/src/widgets/styles/qcleanlooksstyle.cpp index 567efa8851..42f9b38bd4 100644 --- a/src/widgets/styles/qcleanlooksstyle.cpp +++ b/src/widgets/styles/qcleanlooksstyle.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qcleanlooksstyle.h b/src/widgets/styles/qcleanlooksstyle.h index 1b35aa7969..94b3aa889c 100644 --- a/src/widgets/styles/qcleanlooksstyle.h +++ b/src/widgets/styles/qcleanlooksstyle.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qcleanlooksstyle_p.h b/src/widgets/styles/qcleanlooksstyle_p.h index 4df13c8a43..d9968bb531 100644 --- a/src/widgets/styles/qcleanlooksstyle_p.h +++ b/src/widgets/styles/qcleanlooksstyle_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qcommonstyle.cpp b/src/widgets/styles/qcommonstyle.cpp index 31311a50f4..10c2dedaeb 100644 --- a/src/widgets/styles/qcommonstyle.cpp +++ b/src/widgets/styles/qcommonstyle.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qcommonstyle.h b/src/widgets/styles/qcommonstyle.h index a4a7ac11c5..e023c702da 100644 --- a/src/widgets/styles/qcommonstyle.h +++ b/src/widgets/styles/qcommonstyle.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qcommonstyle_p.h b/src/widgets/styles/qcommonstyle_p.h index 554a8130f6..10a9cd875a 100644 --- a/src/widgets/styles/qcommonstyle_p.h +++ b/src/widgets/styles/qcommonstyle_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qcommonstylepixmaps_p.h b/src/widgets/styles/qcommonstylepixmaps_p.h index 93cd837fb7..73c183d485 100644 --- a/src/widgets/styles/qcommonstylepixmaps_p.h +++ b/src/widgets/styles/qcommonstylepixmaps_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qdrawutil.cpp b/src/widgets/styles/qdrawutil.cpp index 5cd7bae658..fd8a272851 100644 --- a/src/widgets/styles/qdrawutil.cpp +++ b/src/widgets/styles/qdrawutil.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qdrawutil.h b/src/widgets/styles/qdrawutil.h index 2f35d236b7..74347b09c1 100644 --- a/src/widgets/styles/qdrawutil.h +++ b/src/widgets/styles/qdrawutil.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qgtkpainter.cpp b/src/widgets/styles/qgtkpainter.cpp index 373732f924..a9d1ed2281 100644 --- a/src/widgets/styles/qgtkpainter.cpp +++ b/src/widgets/styles/qgtkpainter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qgtkpainter_p.h b/src/widgets/styles/qgtkpainter_p.h index a9d4dc0dcd..b0874d2315 100644 --- a/src/widgets/styles/qgtkpainter_p.h +++ b/src/widgets/styles/qgtkpainter_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qgtkstyle.cpp b/src/widgets/styles/qgtkstyle.cpp index da39c95a58..30e1371354 100644 --- a/src/widgets/styles/qgtkstyle.cpp +++ b/src/widgets/styles/qgtkstyle.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qgtkstyle.h b/src/widgets/styles/qgtkstyle.h index 1ca6e3cc85..26665dcd51 100644 --- a/src/widgets/styles/qgtkstyle.h +++ b/src/widgets/styles/qgtkstyle.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qgtkstyle_p.cpp b/src/widgets/styles/qgtkstyle_p.cpp index a2fabde736..f3b41e0ba1 100644 --- a/src/widgets/styles/qgtkstyle_p.cpp +++ b/src/widgets/styles/qgtkstyle_p.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qgtkstyle_p.h b/src/widgets/styles/qgtkstyle_p.h index 55089268b3..656a187ded 100644 --- a/src/widgets/styles/qgtkstyle_p.h +++ b/src/widgets/styles/qgtkstyle_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qmacstyle.qdoc b/src/widgets/styles/qmacstyle.qdoc index 709332aa1d..97baf80e9d 100644 --- a/src/widgets/styles/qmacstyle.qdoc +++ b/src/widgets/styles/qmacstyle.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qmacstyle_mac.h b/src/widgets/styles/qmacstyle_mac.h index 317a0cdc88..7a3a4248b3 100644 --- a/src/widgets/styles/qmacstyle_mac.h +++ b/src/widgets/styles/qmacstyle_mac.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qmacstyle_mac.mm b/src/widgets/styles/qmacstyle_mac.mm index 9e9f5d48ed..ca9b5cf234 100644 --- a/src/widgets/styles/qmacstyle_mac.mm +++ b/src/widgets/styles/qmacstyle_mac.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qmacstyle_mac_p.h b/src/widgets/styles/qmacstyle_mac_p.h index fc10be507f..1739a382f3 100644 --- a/src/widgets/styles/qmacstyle_mac_p.h +++ b/src/widgets/styles/qmacstyle_mac_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qmacstylepixmaps_mac_p.h b/src/widgets/styles/qmacstylepixmaps_mac_p.h index 7bd1a2b43e..3f852a63f3 100644 --- a/src/widgets/styles/qmacstylepixmaps_mac_p.h +++ b/src/widgets/styles/qmacstylepixmaps_mac_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qmotifstyle.cpp b/src/widgets/styles/qmotifstyle.cpp index 46a64eb575..fc697454c1 100644 --- a/src/widgets/styles/qmotifstyle.cpp +++ b/src/widgets/styles/qmotifstyle.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qmotifstyle.h b/src/widgets/styles/qmotifstyle.h index 35b3448289..0aa506d2ac 100644 --- a/src/widgets/styles/qmotifstyle.h +++ b/src/widgets/styles/qmotifstyle.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qmotifstyle_p.h b/src/widgets/styles/qmotifstyle_p.h index 90e0c6d530..83394059e8 100644 --- a/src/widgets/styles/qmotifstyle_p.h +++ b/src/widgets/styles/qmotifstyle_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qplastiquestyle.cpp b/src/widgets/styles/qplastiquestyle.cpp index 65e269f800..750d0765ef 100644 --- a/src/widgets/styles/qplastiquestyle.cpp +++ b/src/widgets/styles/qplastiquestyle.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qplastiquestyle.h b/src/widgets/styles/qplastiquestyle.h index d0afce6cf0..837e07a75f 100644 --- a/src/widgets/styles/qplastiquestyle.h +++ b/src/widgets/styles/qplastiquestyle.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qproxystyle.cpp b/src/widgets/styles/qproxystyle.cpp index b41e85f31c..56e3dc56b4 100644 --- a/src/widgets/styles/qproxystyle.cpp +++ b/src/widgets/styles/qproxystyle.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qproxystyle.h b/src/widgets/styles/qproxystyle.h index 96c5c34f18..e5d05eb3e5 100644 --- a/src/widgets/styles/qproxystyle.h +++ b/src/widgets/styles/qproxystyle.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qproxystyle_p.h b/src/widgets/styles/qproxystyle_p.h index 9ccd382cd3..3dc960afcd 100644 --- a/src/widgets/styles/qproxystyle_p.h +++ b/src/widgets/styles/qproxystyle_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qstyle.cpp b/src/widgets/styles/qstyle.cpp index 44b8f3bc0f..e4000bef19 100644 --- a/src/widgets/styles/qstyle.cpp +++ b/src/widgets/styles/qstyle.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qstyle.h b/src/widgets/styles/qstyle.h index 6b296871d4..fcc8412414 100644 --- a/src/widgets/styles/qstyle.h +++ b/src/widgets/styles/qstyle.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qstyle_p.h b/src/widgets/styles/qstyle_p.h index dfb0e95731..3fd221938d 100644 --- a/src/widgets/styles/qstyle_p.h +++ b/src/widgets/styles/qstyle_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qstylefactory.cpp b/src/widgets/styles/qstylefactory.cpp index 4de4a7b495..cc19a895d0 100644 --- a/src/widgets/styles/qstylefactory.cpp +++ b/src/widgets/styles/qstylefactory.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qstylefactory.h b/src/widgets/styles/qstylefactory.h index b972c8e0e6..f98d37b26e 100644 --- a/src/widgets/styles/qstylefactory.h +++ b/src/widgets/styles/qstylefactory.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qstylehelper.cpp b/src/widgets/styles/qstylehelper.cpp index bf7cb49bcf..823d29bc83 100644 --- a/src/widgets/styles/qstylehelper.cpp +++ b/src/widgets/styles/qstylehelper.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qstylehelper_p.h b/src/widgets/styles/qstylehelper_p.h index f2bb81929c..a193e2ec78 100644 --- a/src/widgets/styles/qstylehelper_p.h +++ b/src/widgets/styles/qstylehelper_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qstyleoption.cpp b/src/widgets/styles/qstyleoption.cpp index 01e3f0e384..0e4a1e98f8 100644 --- a/src/widgets/styles/qstyleoption.cpp +++ b/src/widgets/styles/qstyleoption.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qstyleoption.h b/src/widgets/styles/qstyleoption.h index 0640eef606..56203a6615 100644 --- a/src/widgets/styles/qstyleoption.h +++ b/src/widgets/styles/qstyleoption.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qstylepainter.cpp b/src/widgets/styles/qstylepainter.cpp index 3dc3f9dce7..9870f01dd0 100644 --- a/src/widgets/styles/qstylepainter.cpp +++ b/src/widgets/styles/qstylepainter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qstylepainter.h b/src/widgets/styles/qstylepainter.h index ccb591c0f9..56c6684507 100644 --- a/src/widgets/styles/qstylepainter.h +++ b/src/widgets/styles/qstylepainter.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qstyleplugin.cpp b/src/widgets/styles/qstyleplugin.cpp index 836f388c23..8a169d9797 100644 --- a/src/widgets/styles/qstyleplugin.cpp +++ b/src/widgets/styles/qstyleplugin.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qstyleplugin.h b/src/widgets/styles/qstyleplugin.h index ab55cdf54c..c9a35caaa4 100644 --- a/src/widgets/styles/qstyleplugin.h +++ b/src/widgets/styles/qstyleplugin.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qstylesheetstyle.cpp b/src/widgets/styles/qstylesheetstyle.cpp index ab611aedde..b384ff7681 100644 --- a/src/widgets/styles/qstylesheetstyle.cpp +++ b/src/widgets/styles/qstylesheetstyle.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qstylesheetstyle_default.cpp b/src/widgets/styles/qstylesheetstyle_default.cpp index c9cfc435fa..580232f326 100644 --- a/src/widgets/styles/qstylesheetstyle_default.cpp +++ b/src/widgets/styles/qstylesheetstyle_default.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qstylesheetstyle_p.h b/src/widgets/styles/qstylesheetstyle_p.h index 1d38627edf..2d89f784d4 100644 --- a/src/widgets/styles/qstylesheetstyle_p.h +++ b/src/widgets/styles/qstylesheetstyle_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qwindowscestyle.cpp b/src/widgets/styles/qwindowscestyle.cpp index 39174f9855..fd3a391e54 100644 --- a/src/widgets/styles/qwindowscestyle.cpp +++ b/src/widgets/styles/qwindowscestyle.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qwindowscestyle.h b/src/widgets/styles/qwindowscestyle.h index 3db9be58e2..dbb83a910e 100644 --- a/src/widgets/styles/qwindowscestyle.h +++ b/src/widgets/styles/qwindowscestyle.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qwindowscestyle_p.h b/src/widgets/styles/qwindowscestyle_p.h index d32ac99d52..6b3b9a8bfe 100644 --- a/src/widgets/styles/qwindowscestyle_p.h +++ b/src/widgets/styles/qwindowscestyle_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qwindowsmobilestyle.cpp b/src/widgets/styles/qwindowsmobilestyle.cpp index 1e029a30e0..efba73fe80 100644 --- a/src/widgets/styles/qwindowsmobilestyle.cpp +++ b/src/widgets/styles/qwindowsmobilestyle.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qwindowsmobilestyle.h b/src/widgets/styles/qwindowsmobilestyle.h index 050f641888..65eb08707f 100644 --- a/src/widgets/styles/qwindowsmobilestyle.h +++ b/src/widgets/styles/qwindowsmobilestyle.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qwindowsmobilestyle_p.h b/src/widgets/styles/qwindowsmobilestyle_p.h index 32ebe911ef..23b395e3a6 100644 --- a/src/widgets/styles/qwindowsmobilestyle_p.h +++ b/src/widgets/styles/qwindowsmobilestyle_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qwindowsstyle.cpp b/src/widgets/styles/qwindowsstyle.cpp index f883ace67e..2f3d60eed8 100644 --- a/src/widgets/styles/qwindowsstyle.cpp +++ b/src/widgets/styles/qwindowsstyle.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qwindowsstyle.h b/src/widgets/styles/qwindowsstyle.h index acecfa9140..5392409882 100644 --- a/src/widgets/styles/qwindowsstyle.h +++ b/src/widgets/styles/qwindowsstyle.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qwindowsstyle_p.h b/src/widgets/styles/qwindowsstyle_p.h index 1e517e9e79..9861172873 100644 --- a/src/widgets/styles/qwindowsstyle_p.h +++ b/src/widgets/styles/qwindowsstyle_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qwindowsvistastyle.cpp b/src/widgets/styles/qwindowsvistastyle.cpp index d83ad855c2..bbc07a5bd9 100644 --- a/src/widgets/styles/qwindowsvistastyle.cpp +++ b/src/widgets/styles/qwindowsvistastyle.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qwindowsvistastyle.h b/src/widgets/styles/qwindowsvistastyle.h index 68b489107e..dec8f16aee 100644 --- a/src/widgets/styles/qwindowsvistastyle.h +++ b/src/widgets/styles/qwindowsvistastyle.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qwindowsvistastyle_p.h b/src/widgets/styles/qwindowsvistastyle_p.h index 4167bc4d0f..8ed2ec421e 100644 --- a/src/widgets/styles/qwindowsvistastyle_p.h +++ b/src/widgets/styles/qwindowsvistastyle_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qwindowsxpstyle.cpp b/src/widgets/styles/qwindowsxpstyle.cpp index 8b13794d05..d8b33f3b0f 100644 --- a/src/widgets/styles/qwindowsxpstyle.cpp +++ b/src/widgets/styles/qwindowsxpstyle.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qwindowsxpstyle.h b/src/widgets/styles/qwindowsxpstyle.h index 1cfd16479b..87bccc2271 100644 --- a/src/widgets/styles/qwindowsxpstyle.h +++ b/src/widgets/styles/qwindowsxpstyle.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/styles/qwindowsxpstyle_p.h b/src/widgets/styles/qwindowsxpstyle_p.h index 05ab2ec2e4..1fb89cb478 100644 --- a/src/widgets/styles/qwindowsxpstyle_p.h +++ b/src/widgets/styles/qwindowsxpstyle_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/util/qcolormap.h b/src/widgets/util/qcolormap.h index ebb5142768..c0c3643985 100644 --- a/src/widgets/util/qcolormap.h +++ b/src/widgets/util/qcolormap.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/util/qcolormap.qdoc b/src/widgets/util/qcolormap.qdoc index 88deabcfd6..fd6da862ec 100644 --- a/src/widgets/util/qcolormap.qdoc +++ b/src/widgets/util/qcolormap.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/util/qcompleter.cpp b/src/widgets/util/qcompleter.cpp index 34db1b364b..aa38aba08e 100644 --- a/src/widgets/util/qcompleter.cpp +++ b/src/widgets/util/qcompleter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/util/qcompleter.h b/src/widgets/util/qcompleter.h index c7e1b6e945..68fe22f88f 100644 --- a/src/widgets/util/qcompleter.h +++ b/src/widgets/util/qcompleter.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/util/qcompleter_p.h b/src/widgets/util/qcompleter_p.h index 78e201bd9e..94287c1ebf 100644 --- a/src/widgets/util/qcompleter_p.h +++ b/src/widgets/util/qcompleter_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/util/qflickgesture.cpp b/src/widgets/util/qflickgesture.cpp index fbbefcf89f..843a2fa95c 100644 --- a/src/widgets/util/qflickgesture.cpp +++ b/src/widgets/util/qflickgesture.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/util/qflickgesture_p.h b/src/widgets/util/qflickgesture_p.h index 23c8b6e788..6a9630ede6 100644 --- a/src/widgets/util/qflickgesture_p.h +++ b/src/widgets/util/qflickgesture_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/util/qscroller.cpp b/src/widgets/util/qscroller.cpp index 2ab19c40ab..1905cf5701 100644 --- a/src/widgets/util/qscroller.cpp +++ b/src/widgets/util/qscroller.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/util/qscroller.h b/src/widgets/util/qscroller.h index 3484139cbb..01d45a908e 100644 --- a/src/widgets/util/qscroller.h +++ b/src/widgets/util/qscroller.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/util/qscroller_mac.mm b/src/widgets/util/qscroller_mac.mm index 81d18aaf6b..495469a04b 100644 --- a/src/widgets/util/qscroller_mac.mm +++ b/src/widgets/util/qscroller_mac.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/util/qscroller_p.h b/src/widgets/util/qscroller_p.h index b4f4db5e34..3b9fa988fe 100644 --- a/src/widgets/util/qscroller_p.h +++ b/src/widgets/util/qscroller_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/util/qscrollerproperties.cpp b/src/widgets/util/qscrollerproperties.cpp index dda83c2b33..3a41aa7eb9 100644 --- a/src/widgets/util/qscrollerproperties.cpp +++ b/src/widgets/util/qscrollerproperties.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/util/qscrollerproperties.h b/src/widgets/util/qscrollerproperties.h index 73c1125fe0..e7bcdbebe3 100644 --- a/src/widgets/util/qscrollerproperties.h +++ b/src/widgets/util/qscrollerproperties.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/util/qscrollerproperties_p.h b/src/widgets/util/qscrollerproperties_p.h index 2e57a3f7dd..8c51f7aa4b 100644 --- a/src/widgets/util/qscrollerproperties_p.h +++ b/src/widgets/util/qscrollerproperties_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/util/qsystemtrayicon.cpp b/src/widgets/util/qsystemtrayicon.cpp index 3ca5d459a7..5803c2fef4 100644 --- a/src/widgets/util/qsystemtrayicon.cpp +++ b/src/widgets/util/qsystemtrayicon.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/util/qsystemtrayicon.h b/src/widgets/util/qsystemtrayicon.h index 3327ce4223..0f1e7d74ee 100644 --- a/src/widgets/util/qsystemtrayicon.h +++ b/src/widgets/util/qsystemtrayicon.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/util/qsystemtrayicon_mac.mm b/src/widgets/util/qsystemtrayicon_mac.mm index 5553c63723..278fa72a1a 100644 --- a/src/widgets/util/qsystemtrayicon_mac.mm +++ b/src/widgets/util/qsystemtrayicon_mac.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/util/qsystemtrayicon_p.h b/src/widgets/util/qsystemtrayicon_p.h index ce2404ae8b..7b743021e0 100644 --- a/src/widgets/util/qsystemtrayicon_p.h +++ b/src/widgets/util/qsystemtrayicon_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/util/qsystemtrayicon_qpa.cpp b/src/widgets/util/qsystemtrayicon_qpa.cpp index 9a4f12d02d..ce0e067648 100644 --- a/src/widgets/util/qsystemtrayicon_qpa.cpp +++ b/src/widgets/util/qsystemtrayicon_qpa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/util/qsystemtrayicon_win.cpp b/src/widgets/util/qsystemtrayicon_win.cpp index 7a572849b0..6045116da5 100644 --- a/src/widgets/util/qsystemtrayicon_win.cpp +++ b/src/widgets/util/qsystemtrayicon_win.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/util/qsystemtrayicon_wince.cpp b/src/widgets/util/qsystemtrayicon_wince.cpp index 7a403a3ee5..b1dbb8b85e 100644 --- a/src/widgets/util/qsystemtrayicon_wince.cpp +++ b/src/widgets/util/qsystemtrayicon_wince.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/util/qsystemtrayicon_x11.cpp b/src/widgets/util/qsystemtrayicon_x11.cpp index 86c27499b4..3ac3755f84 100644 --- a/src/widgets/util/qsystemtrayicon_x11.cpp +++ b/src/widgets/util/qsystemtrayicon_x11.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/util/qundogroup.cpp b/src/widgets/util/qundogroup.cpp index 44c00afe98..fd063b7e9f 100644 --- a/src/widgets/util/qundogroup.cpp +++ b/src/widgets/util/qundogroup.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/util/qundogroup.h b/src/widgets/util/qundogroup.h index ce2dac2503..fe06a678eb 100644 --- a/src/widgets/util/qundogroup.h +++ b/src/widgets/util/qundogroup.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/util/qundostack.cpp b/src/widgets/util/qundostack.cpp index 9841a09ce6..5f2ba870e0 100644 --- a/src/widgets/util/qundostack.cpp +++ b/src/widgets/util/qundostack.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/util/qundostack.h b/src/widgets/util/qundostack.h index 493d11fdb7..fc2c82ecf4 100644 --- a/src/widgets/util/qundostack.h +++ b/src/widgets/util/qundostack.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/util/qundostack_p.h b/src/widgets/util/qundostack_p.h index 1e5f99bc6c..31dff8452c 100644 --- a/src/widgets/util/qundostack_p.h +++ b/src/widgets/util/qundostack_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/util/qundoview.cpp b/src/widgets/util/qundoview.cpp index c95e89f76e..c498355f1f 100644 --- a/src/widgets/util/qundoview.cpp +++ b/src/widgets/util/qundoview.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/util/qundoview.h b/src/widgets/util/qundoview.h index 9df2995f9d..ee944dd259 100644 --- a/src/widgets/util/qundoview.h +++ b/src/widgets/util/qundoview.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qabstractbutton.cpp b/src/widgets/widgets/qabstractbutton.cpp index ae5b06024a..efe0ff3389 100644 --- a/src/widgets/widgets/qabstractbutton.cpp +++ b/src/widgets/widgets/qabstractbutton.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qabstractbutton.h b/src/widgets/widgets/qabstractbutton.h index 6527c6cd32..9b3aa5642a 100644 --- a/src/widgets/widgets/qabstractbutton.h +++ b/src/widgets/widgets/qabstractbutton.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qabstractbutton_p.h b/src/widgets/widgets/qabstractbutton_p.h index d2d4c06bff..9688d27773 100644 --- a/src/widgets/widgets/qabstractbutton_p.h +++ b/src/widgets/widgets/qabstractbutton_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qabstractscrollarea.cpp b/src/widgets/widgets/qabstractscrollarea.cpp index 901ea99c1b..655ed83069 100644 --- a/src/widgets/widgets/qabstractscrollarea.cpp +++ b/src/widgets/widgets/qabstractscrollarea.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qabstractscrollarea.h b/src/widgets/widgets/qabstractscrollarea.h index 2288888286..fe602468f9 100644 --- a/src/widgets/widgets/qabstractscrollarea.h +++ b/src/widgets/widgets/qabstractscrollarea.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qabstractscrollarea_p.h b/src/widgets/widgets/qabstractscrollarea_p.h index 5511d08f4e..2fe7e4423a 100644 --- a/src/widgets/widgets/qabstractscrollarea_p.h +++ b/src/widgets/widgets/qabstractscrollarea_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qabstractslider.cpp b/src/widgets/widgets/qabstractslider.cpp index 694db0e125..035a5dc34d 100644 --- a/src/widgets/widgets/qabstractslider.cpp +++ b/src/widgets/widgets/qabstractslider.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qabstractslider.h b/src/widgets/widgets/qabstractslider.h index b1f63a2c89..a19fc37451 100644 --- a/src/widgets/widgets/qabstractslider.h +++ b/src/widgets/widgets/qabstractslider.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qabstractslider_p.h b/src/widgets/widgets/qabstractslider_p.h index fdbc0f9534..a4589c5d18 100644 --- a/src/widgets/widgets/qabstractslider_p.h +++ b/src/widgets/widgets/qabstractslider_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qabstractspinbox.cpp b/src/widgets/widgets/qabstractspinbox.cpp index 82340d15ed..105dd3cde8 100644 --- a/src/widgets/widgets/qabstractspinbox.cpp +++ b/src/widgets/widgets/qabstractspinbox.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qabstractspinbox.h b/src/widgets/widgets/qabstractspinbox.h index fb3ae2f5ee..8f963dce0d 100644 --- a/src/widgets/widgets/qabstractspinbox.h +++ b/src/widgets/widgets/qabstractspinbox.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qabstractspinbox_p.h b/src/widgets/widgets/qabstractspinbox_p.h index 33d4e32875..67a09622a2 100644 --- a/src/widgets/widgets/qabstractspinbox_p.h +++ b/src/widgets/widgets/qabstractspinbox_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qbuttongroup.cpp b/src/widgets/widgets/qbuttongroup.cpp index 101488a359..a6323e5cdc 100644 --- a/src/widgets/widgets/qbuttongroup.cpp +++ b/src/widgets/widgets/qbuttongroup.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qbuttongroup.h b/src/widgets/widgets/qbuttongroup.h index 56f93c0332..17c60e9609 100644 --- a/src/widgets/widgets/qbuttongroup.h +++ b/src/widgets/widgets/qbuttongroup.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qcalendartextnavigator_p.h b/src/widgets/widgets/qcalendartextnavigator_p.h index b602c6d51e..2ce5233cec 100644 --- a/src/widgets/widgets/qcalendartextnavigator_p.h +++ b/src/widgets/widgets/qcalendartextnavigator_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qcalendarwidget.cpp b/src/widgets/widgets/qcalendarwidget.cpp index f16a594953..3bd1e3ec4f 100644 --- a/src/widgets/widgets/qcalendarwidget.cpp +++ b/src/widgets/widgets/qcalendarwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qcalendarwidget.h b/src/widgets/widgets/qcalendarwidget.h index e73192c12d..1ab519386e 100644 --- a/src/widgets/widgets/qcalendarwidget.h +++ b/src/widgets/widgets/qcalendarwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qcheckbox.cpp b/src/widgets/widgets/qcheckbox.cpp index cd49747f8c..386bd2b169 100644 --- a/src/widgets/widgets/qcheckbox.cpp +++ b/src/widgets/widgets/qcheckbox.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qcheckbox.h b/src/widgets/widgets/qcheckbox.h index d9a1aaaf3d..37461f1f10 100644 --- a/src/widgets/widgets/qcheckbox.h +++ b/src/widgets/widgets/qcheckbox.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qcocoatoolbardelegate_mac.mm b/src/widgets/widgets/qcocoatoolbardelegate_mac.mm index c6be7f131c..1127d01b19 100644 --- a/src/widgets/widgets/qcocoatoolbardelegate_mac.mm +++ b/src/widgets/widgets/qcocoatoolbardelegate_mac.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qcocoatoolbardelegate_mac_p.h b/src/widgets/widgets/qcocoatoolbardelegate_mac_p.h index 846c6933d8..56a4f4f062 100644 --- a/src/widgets/widgets/qcocoatoolbardelegate_mac_p.h +++ b/src/widgets/widgets/qcocoatoolbardelegate_mac_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qcombobox.cpp b/src/widgets/widgets/qcombobox.cpp index 2764833b48..4cbd7eab7d 100644 --- a/src/widgets/widgets/qcombobox.cpp +++ b/src/widgets/widgets/qcombobox.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qcombobox.h b/src/widgets/widgets/qcombobox.h index e297dae1b5..4a5050b945 100644 --- a/src/widgets/widgets/qcombobox.h +++ b/src/widgets/widgets/qcombobox.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qcombobox_p.h b/src/widgets/widgets/qcombobox_p.h index 2d3f261d6e..a9d792f07d 100644 --- a/src/widgets/widgets/qcombobox_p.h +++ b/src/widgets/widgets/qcombobox_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qcommandlinkbutton.cpp b/src/widgets/widgets/qcommandlinkbutton.cpp index afd14f63c5..d61eeb6131 100644 --- a/src/widgets/widgets/qcommandlinkbutton.cpp +++ b/src/widgets/widgets/qcommandlinkbutton.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qcommandlinkbutton.h b/src/widgets/widgets/qcommandlinkbutton.h index 9d01e37b1b..726e0360d2 100644 --- a/src/widgets/widgets/qcommandlinkbutton.h +++ b/src/widgets/widgets/qcommandlinkbutton.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qdatetimeedit.cpp b/src/widgets/widgets/qdatetimeedit.cpp index f6b52658c7..871a394a80 100644 --- a/src/widgets/widgets/qdatetimeedit.cpp +++ b/src/widgets/widgets/qdatetimeedit.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qdatetimeedit.h b/src/widgets/widgets/qdatetimeedit.h index a57a5f29e9..77c76c483e 100644 --- a/src/widgets/widgets/qdatetimeedit.h +++ b/src/widgets/widgets/qdatetimeedit.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qdatetimeedit_p.h b/src/widgets/widgets/qdatetimeedit_p.h index 57799d5bc0..0669c7c330 100644 --- a/src/widgets/widgets/qdatetimeedit_p.h +++ b/src/widgets/widgets/qdatetimeedit_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qdial.cpp b/src/widgets/widgets/qdial.cpp index bc77faf993..cc5a6a0f49 100644 --- a/src/widgets/widgets/qdial.cpp +++ b/src/widgets/widgets/qdial.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qdial.h b/src/widgets/widgets/qdial.h index 317a50df35..724028d129 100644 --- a/src/widgets/widgets/qdial.h +++ b/src/widgets/widgets/qdial.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qdialogbuttonbox.cpp b/src/widgets/widgets/qdialogbuttonbox.cpp index 8085369a3f..e53bd55129 100644 --- a/src/widgets/widgets/qdialogbuttonbox.cpp +++ b/src/widgets/widgets/qdialogbuttonbox.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qdialogbuttonbox.h b/src/widgets/widgets/qdialogbuttonbox.h index 0a6e231e3f..2fca5a5791 100644 --- a/src/widgets/widgets/qdialogbuttonbox.h +++ b/src/widgets/widgets/qdialogbuttonbox.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qdockarealayout.cpp b/src/widgets/widgets/qdockarealayout.cpp index 1a1f16a493..1acd93ed60 100644 --- a/src/widgets/widgets/qdockarealayout.cpp +++ b/src/widgets/widgets/qdockarealayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qdockarealayout_p.h b/src/widgets/widgets/qdockarealayout_p.h index a341ad487b..46ac966798 100644 --- a/src/widgets/widgets/qdockarealayout_p.h +++ b/src/widgets/widgets/qdockarealayout_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qdockwidget.cpp b/src/widgets/widgets/qdockwidget.cpp index c02c13fe1e..32a73c54ed 100644 --- a/src/widgets/widgets/qdockwidget.cpp +++ b/src/widgets/widgets/qdockwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qdockwidget.h b/src/widgets/widgets/qdockwidget.h index cc81db2fc2..d6270e4a99 100644 --- a/src/widgets/widgets/qdockwidget.h +++ b/src/widgets/widgets/qdockwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qdockwidget_p.h b/src/widgets/widgets/qdockwidget_p.h index 4d3c4f4d70..2bf50d8aa6 100644 --- a/src/widgets/widgets/qdockwidget_p.h +++ b/src/widgets/widgets/qdockwidget_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qeffects.cpp b/src/widgets/widgets/qeffects.cpp index adf1cc1f87..ab04e2314f 100644 --- a/src/widgets/widgets/qeffects.cpp +++ b/src/widgets/widgets/qeffects.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qeffects_p.h b/src/widgets/widgets/qeffects_p.h index bae2bbf54a..e26810835e 100644 --- a/src/widgets/widgets/qeffects_p.h +++ b/src/widgets/widgets/qeffects_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qfocusframe.cpp b/src/widgets/widgets/qfocusframe.cpp index 2dcf973dde..62dc8b64f2 100644 --- a/src/widgets/widgets/qfocusframe.cpp +++ b/src/widgets/widgets/qfocusframe.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qfocusframe.h b/src/widgets/widgets/qfocusframe.h index f4f1d1c854..ed117ddd6c 100644 --- a/src/widgets/widgets/qfocusframe.h +++ b/src/widgets/widgets/qfocusframe.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qfontcombobox.cpp b/src/widgets/widgets/qfontcombobox.cpp index 9090230029..845f37ccf1 100644 --- a/src/widgets/widgets/qfontcombobox.cpp +++ b/src/widgets/widgets/qfontcombobox.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qfontcombobox.h b/src/widgets/widgets/qfontcombobox.h index b0007207da..33eec561af 100644 --- a/src/widgets/widgets/qfontcombobox.h +++ b/src/widgets/widgets/qfontcombobox.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qframe.cpp b/src/widgets/widgets/qframe.cpp index e017513541..d0de825467 100644 --- a/src/widgets/widgets/qframe.cpp +++ b/src/widgets/widgets/qframe.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qframe.h b/src/widgets/widgets/qframe.h index 4e11a6289b..51cd391185 100644 --- a/src/widgets/widgets/qframe.h +++ b/src/widgets/widgets/qframe.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qframe_p.h b/src/widgets/widgets/qframe_p.h index 8825abaf92..a74780fa60 100644 --- a/src/widgets/widgets/qframe_p.h +++ b/src/widgets/widgets/qframe_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qgroupbox.cpp b/src/widgets/widgets/qgroupbox.cpp index c850021bdd..1bad9a5b56 100644 --- a/src/widgets/widgets/qgroupbox.cpp +++ b/src/widgets/widgets/qgroupbox.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qgroupbox.h b/src/widgets/widgets/qgroupbox.h index a4e2327267..70bc4cde38 100644 --- a/src/widgets/widgets/qgroupbox.h +++ b/src/widgets/widgets/qgroupbox.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qlabel.cpp b/src/widgets/widgets/qlabel.cpp index 2f0f43fbf4..1503085661 100644 --- a/src/widgets/widgets/qlabel.cpp +++ b/src/widgets/widgets/qlabel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qlabel.h b/src/widgets/widgets/qlabel.h index e249c2d876..5d61cafab0 100644 --- a/src/widgets/widgets/qlabel.h +++ b/src/widgets/widgets/qlabel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qlabel_p.h b/src/widgets/widgets/qlabel_p.h index b6f2db6a25..8de0e301fd 100644 --- a/src/widgets/widgets/qlabel_p.h +++ b/src/widgets/widgets/qlabel_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qlcdnumber.cpp b/src/widgets/widgets/qlcdnumber.cpp index 1b5fbe3417..48836a52d7 100644 --- a/src/widgets/widgets/qlcdnumber.cpp +++ b/src/widgets/widgets/qlcdnumber.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qlcdnumber.h b/src/widgets/widgets/qlcdnumber.h index 6af2b185ea..fcea53ef28 100644 --- a/src/widgets/widgets/qlcdnumber.h +++ b/src/widgets/widgets/qlcdnumber.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qlineedit.cpp b/src/widgets/widgets/qlineedit.cpp index bd94f07b11..5714052059 100644 --- a/src/widgets/widgets/qlineedit.cpp +++ b/src/widgets/widgets/qlineedit.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qlineedit.h b/src/widgets/widgets/qlineedit.h index 107710eccc..2daa893b3b 100644 --- a/src/widgets/widgets/qlineedit.h +++ b/src/widgets/widgets/qlineedit.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qlineedit_p.cpp b/src/widgets/widgets/qlineedit_p.cpp index f700588fdb..c54f60f62e 100644 --- a/src/widgets/widgets/qlineedit_p.cpp +++ b/src/widgets/widgets/qlineedit_p.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qlineedit_p.h b/src/widgets/widgets/qlineedit_p.h index 076f2fcf11..206e835a74 100644 --- a/src/widgets/widgets/qlineedit_p.h +++ b/src/widgets/widgets/qlineedit_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qmaccocoaviewcontainer_mac.h b/src/widgets/widgets/qmaccocoaviewcontainer_mac.h index 48eac4f490..8824fde912 100644 --- a/src/widgets/widgets/qmaccocoaviewcontainer_mac.h +++ b/src/widgets/widgets/qmaccocoaviewcontainer_mac.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qmaccocoaviewcontainer_mac.mm b/src/widgets/widgets/qmaccocoaviewcontainer_mac.mm index b79ee3d4e0..8facb4db61 100644 --- a/src/widgets/widgets/qmaccocoaviewcontainer_mac.mm +++ b/src/widgets/widgets/qmaccocoaviewcontainer_mac.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qmacnativewidget_mac.h b/src/widgets/widgets/qmacnativewidget_mac.h index 935feac58e..2b4d4fbdae 100644 --- a/src/widgets/widgets/qmacnativewidget_mac.h +++ b/src/widgets/widgets/qmacnativewidget_mac.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qmacnativewidget_mac.mm b/src/widgets/widgets/qmacnativewidget_mac.mm index 08f78158ee..925ef3d8a9 100644 --- a/src/widgets/widgets/qmacnativewidget_mac.mm +++ b/src/widgets/widgets/qmacnativewidget_mac.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qmainwindow.cpp b/src/widgets/widgets/qmainwindow.cpp index 014700f389..ad1890a708 100644 --- a/src/widgets/widgets/qmainwindow.cpp +++ b/src/widgets/widgets/qmainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qmainwindow.h b/src/widgets/widgets/qmainwindow.h index 88cff31841..43d269ef6f 100644 --- a/src/widgets/widgets/qmainwindow.h +++ b/src/widgets/widgets/qmainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qmainwindowlayout.cpp b/src/widgets/widgets/qmainwindowlayout.cpp index ebabf2d93c..32d893630f 100644 --- a/src/widgets/widgets/qmainwindowlayout.cpp +++ b/src/widgets/widgets/qmainwindowlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qmainwindowlayout_mac.mm b/src/widgets/widgets/qmainwindowlayout_mac.mm index ba5d1d5673..b6fcca88fa 100644 --- a/src/widgets/widgets/qmainwindowlayout_mac.mm +++ b/src/widgets/widgets/qmainwindowlayout_mac.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qmainwindowlayout_p.h b/src/widgets/widgets/qmainwindowlayout_p.h index 9d3f127158..34d94119ad 100644 --- a/src/widgets/widgets/qmainwindowlayout_p.h +++ b/src/widgets/widgets/qmainwindowlayout_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qmdiarea.cpp b/src/widgets/widgets/qmdiarea.cpp index f66c71315a..021af9be0b 100644 --- a/src/widgets/widgets/qmdiarea.cpp +++ b/src/widgets/widgets/qmdiarea.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qmdiarea.h b/src/widgets/widgets/qmdiarea.h index f1ffb29e53..fbd07ad249 100644 --- a/src/widgets/widgets/qmdiarea.h +++ b/src/widgets/widgets/qmdiarea.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qmdiarea_p.h b/src/widgets/widgets/qmdiarea_p.h index 18a022d7dd..e80c6b5ecb 100644 --- a/src/widgets/widgets/qmdiarea_p.h +++ b/src/widgets/widgets/qmdiarea_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qmdisubwindow.cpp b/src/widgets/widgets/qmdisubwindow.cpp index 7fd2bd2a58..f2190313e9 100644 --- a/src/widgets/widgets/qmdisubwindow.cpp +++ b/src/widgets/widgets/qmdisubwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qmdisubwindow.h b/src/widgets/widgets/qmdisubwindow.h index 88074c7ca5..332619c3b4 100644 --- a/src/widgets/widgets/qmdisubwindow.h +++ b/src/widgets/widgets/qmdisubwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qmdisubwindow_p.h b/src/widgets/widgets/qmdisubwindow_p.h index d04a7d4b75..83a91fb39b 100644 --- a/src/widgets/widgets/qmdisubwindow_p.h +++ b/src/widgets/widgets/qmdisubwindow_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qmenu.cpp b/src/widgets/widgets/qmenu.cpp index 3bcba686be..a255b840dc 100644 --- a/src/widgets/widgets/qmenu.cpp +++ b/src/widgets/widgets/qmenu.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qmenu.h b/src/widgets/widgets/qmenu.h index 49bf8295ec..645a15bdc8 100644 --- a/src/widgets/widgets/qmenu.h +++ b/src/widgets/widgets/qmenu.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qmenu_p.h b/src/widgets/widgets/qmenu_p.h index df15512b3e..a6e700b528 100644 --- a/src/widgets/widgets/qmenu_p.h +++ b/src/widgets/widgets/qmenu_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qmenu_wince.cpp b/src/widgets/widgets/qmenu_wince.cpp index b0c6c1bd12..26a9302efb 100644 --- a/src/widgets/widgets/qmenu_wince.cpp +++ b/src/widgets/widgets/qmenu_wince.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qmenu_wince_resource_p.h b/src/widgets/widgets/qmenu_wince_resource_p.h index 42de05f319..b40a9526e5 100644 --- a/src/widgets/widgets/qmenu_wince_resource_p.h +++ b/src/widgets/widgets/qmenu_wince_resource_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qmenubar.cpp b/src/widgets/widgets/qmenubar.cpp index 1ceea3e78c..2908d4723e 100644 --- a/src/widgets/widgets/qmenubar.cpp +++ b/src/widgets/widgets/qmenubar.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qmenubar.h b/src/widgets/widgets/qmenubar.h index 0eb668e373..84fb378064 100644 --- a/src/widgets/widgets/qmenubar.h +++ b/src/widgets/widgets/qmenubar.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qmenubar_p.h b/src/widgets/widgets/qmenubar_p.h index e9201fc877..de1ab37a19 100644 --- a/src/widgets/widgets/qmenubar_p.h +++ b/src/widgets/widgets/qmenubar_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qplaintextedit.cpp b/src/widgets/widgets/qplaintextedit.cpp index 98a8999a98..9f92406a04 100644 --- a/src/widgets/widgets/qplaintextedit.cpp +++ b/src/widgets/widgets/qplaintextedit.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qplaintextedit.h b/src/widgets/widgets/qplaintextedit.h index d5fa71bbb7..9860914b98 100644 --- a/src/widgets/widgets/qplaintextedit.h +++ b/src/widgets/widgets/qplaintextedit.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qplaintextedit_p.h b/src/widgets/widgets/qplaintextedit_p.h index 190156a684..8f880d9772 100644 --- a/src/widgets/widgets/qplaintextedit_p.h +++ b/src/widgets/widgets/qplaintextedit_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qprogressbar.cpp b/src/widgets/widgets/qprogressbar.cpp index 3db91a6b6e..01837e1a4c 100644 --- a/src/widgets/widgets/qprogressbar.cpp +++ b/src/widgets/widgets/qprogressbar.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qprogressbar.h b/src/widgets/widgets/qprogressbar.h index ac34f64a2e..cdb6d36dfd 100644 --- a/src/widgets/widgets/qprogressbar.h +++ b/src/widgets/widgets/qprogressbar.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qpushbutton.cpp b/src/widgets/widgets/qpushbutton.cpp index e3993167ef..ff477ec1d7 100644 --- a/src/widgets/widgets/qpushbutton.cpp +++ b/src/widgets/widgets/qpushbutton.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qpushbutton.h b/src/widgets/widgets/qpushbutton.h index fefbd9e81f..1dc0a19542 100644 --- a/src/widgets/widgets/qpushbutton.h +++ b/src/widgets/widgets/qpushbutton.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qpushbutton_p.h b/src/widgets/widgets/qpushbutton_p.h index 0056288a98..d77b69a341 100644 --- a/src/widgets/widgets/qpushbutton_p.h +++ b/src/widgets/widgets/qpushbutton_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qradiobutton.cpp b/src/widgets/widgets/qradiobutton.cpp index b9567a0a11..1cf321bd16 100644 --- a/src/widgets/widgets/qradiobutton.cpp +++ b/src/widgets/widgets/qradiobutton.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qradiobutton.h b/src/widgets/widgets/qradiobutton.h index f1d9f5500a..aa3458bf95 100644 --- a/src/widgets/widgets/qradiobutton.h +++ b/src/widgets/widgets/qradiobutton.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qrubberband.cpp b/src/widgets/widgets/qrubberband.cpp index d0ea05f5cd..bb67b292af 100644 --- a/src/widgets/widgets/qrubberband.cpp +++ b/src/widgets/widgets/qrubberband.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qrubberband.h b/src/widgets/widgets/qrubberband.h index 3d30004770..05b35a772b 100644 --- a/src/widgets/widgets/qrubberband.h +++ b/src/widgets/widgets/qrubberband.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qscrollarea.cpp b/src/widgets/widgets/qscrollarea.cpp index 48c179a9ab..9912b5e211 100644 --- a/src/widgets/widgets/qscrollarea.cpp +++ b/src/widgets/widgets/qscrollarea.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qscrollarea.h b/src/widgets/widgets/qscrollarea.h index 2d62cc1bc4..0dcd280894 100644 --- a/src/widgets/widgets/qscrollarea.h +++ b/src/widgets/widgets/qscrollarea.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qscrollarea_p.h b/src/widgets/widgets/qscrollarea_p.h index 0e5e21b7c0..e36e99add2 100644 --- a/src/widgets/widgets/qscrollarea_p.h +++ b/src/widgets/widgets/qscrollarea_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qscrollbar.cpp b/src/widgets/widgets/qscrollbar.cpp index b8cd81c6a7..47a10de702 100644 --- a/src/widgets/widgets/qscrollbar.cpp +++ b/src/widgets/widgets/qscrollbar.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qscrollbar.h b/src/widgets/widgets/qscrollbar.h index f51a000a12..ac6146cc3f 100644 --- a/src/widgets/widgets/qscrollbar.h +++ b/src/widgets/widgets/qscrollbar.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qsizegrip.cpp b/src/widgets/widgets/qsizegrip.cpp index d4cfce984d..9f02c131ea 100644 --- a/src/widgets/widgets/qsizegrip.cpp +++ b/src/widgets/widgets/qsizegrip.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qsizegrip.h b/src/widgets/widgets/qsizegrip.h index 144eb8e160..acac950b44 100644 --- a/src/widgets/widgets/qsizegrip.h +++ b/src/widgets/widgets/qsizegrip.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qslider.cpp b/src/widgets/widgets/qslider.cpp index 9dd73f8c96..0f646fc19d 100644 --- a/src/widgets/widgets/qslider.cpp +++ b/src/widgets/widgets/qslider.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qslider.h b/src/widgets/widgets/qslider.h index c6620d253b..a050f229fb 100644 --- a/src/widgets/widgets/qslider.h +++ b/src/widgets/widgets/qslider.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qspinbox.cpp b/src/widgets/widgets/qspinbox.cpp index 47cc8bbcf3..08ae305d39 100644 --- a/src/widgets/widgets/qspinbox.cpp +++ b/src/widgets/widgets/qspinbox.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qspinbox.h b/src/widgets/widgets/qspinbox.h index 0846103cca..bfc91b1ecf 100644 --- a/src/widgets/widgets/qspinbox.h +++ b/src/widgets/widgets/qspinbox.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qsplashscreen.cpp b/src/widgets/widgets/qsplashscreen.cpp index 7140487463..4fb0f3fa76 100644 --- a/src/widgets/widgets/qsplashscreen.cpp +++ b/src/widgets/widgets/qsplashscreen.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qsplashscreen.h b/src/widgets/widgets/qsplashscreen.h index 133146943e..f58b78adcb 100644 --- a/src/widgets/widgets/qsplashscreen.h +++ b/src/widgets/widgets/qsplashscreen.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qsplitter.cpp b/src/widgets/widgets/qsplitter.cpp index b725ee039a..415ff6e97f 100644 --- a/src/widgets/widgets/qsplitter.cpp +++ b/src/widgets/widgets/qsplitter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qsplitter.h b/src/widgets/widgets/qsplitter.h index 71252ede24..c93af70401 100644 --- a/src/widgets/widgets/qsplitter.h +++ b/src/widgets/widgets/qsplitter.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qsplitter_p.h b/src/widgets/widgets/qsplitter_p.h index 05e7a35165..a06b65c5d3 100644 --- a/src/widgets/widgets/qsplitter_p.h +++ b/src/widgets/widgets/qsplitter_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qstackedwidget.cpp b/src/widgets/widgets/qstackedwidget.cpp index 4e9349e348..5544f241a9 100644 --- a/src/widgets/widgets/qstackedwidget.cpp +++ b/src/widgets/widgets/qstackedwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qstackedwidget.h b/src/widgets/widgets/qstackedwidget.h index e0275fe27f..8dc24dd56f 100644 --- a/src/widgets/widgets/qstackedwidget.h +++ b/src/widgets/widgets/qstackedwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qstatusbar.cpp b/src/widgets/widgets/qstatusbar.cpp index 295d509444..357c3c72d1 100644 --- a/src/widgets/widgets/qstatusbar.cpp +++ b/src/widgets/widgets/qstatusbar.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qstatusbar.h b/src/widgets/widgets/qstatusbar.h index c983f6d199..e24e9da150 100644 --- a/src/widgets/widgets/qstatusbar.h +++ b/src/widgets/widgets/qstatusbar.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qtabbar.cpp b/src/widgets/widgets/qtabbar.cpp index 4fd7a31c41..c939c4aa7c 100644 --- a/src/widgets/widgets/qtabbar.cpp +++ b/src/widgets/widgets/qtabbar.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qtabbar.h b/src/widgets/widgets/qtabbar.h index d33e6bbb1b..cfe9a90b47 100644 --- a/src/widgets/widgets/qtabbar.h +++ b/src/widgets/widgets/qtabbar.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qtabbar_p.h b/src/widgets/widgets/qtabbar_p.h index 69ca361967..2060e169f2 100644 --- a/src/widgets/widgets/qtabbar_p.h +++ b/src/widgets/widgets/qtabbar_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qtabwidget.cpp b/src/widgets/widgets/qtabwidget.cpp index a01316145e..8acce0fb70 100644 --- a/src/widgets/widgets/qtabwidget.cpp +++ b/src/widgets/widgets/qtabwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qtabwidget.h b/src/widgets/widgets/qtabwidget.h index ff734ed722..432870df25 100644 --- a/src/widgets/widgets/qtabwidget.h +++ b/src/widgets/widgets/qtabwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qtextbrowser.cpp b/src/widgets/widgets/qtextbrowser.cpp index e8fad6cebc..dbda9e3b94 100644 --- a/src/widgets/widgets/qtextbrowser.cpp +++ b/src/widgets/widgets/qtextbrowser.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qtextbrowser.h b/src/widgets/widgets/qtextbrowser.h index b7ec942753..ee977be23b 100644 --- a/src/widgets/widgets/qtextbrowser.h +++ b/src/widgets/widgets/qtextbrowser.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qtextedit.cpp b/src/widgets/widgets/qtextedit.cpp index cd55716daf..c0a91e9bcd 100644 --- a/src/widgets/widgets/qtextedit.cpp +++ b/src/widgets/widgets/qtextedit.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qtextedit.h b/src/widgets/widgets/qtextedit.h index ae9865977f..b86c0e0999 100644 --- a/src/widgets/widgets/qtextedit.h +++ b/src/widgets/widgets/qtextedit.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qtextedit_p.h b/src/widgets/widgets/qtextedit_p.h index 3512c80ac4..e7f172ec0f 100644 --- a/src/widgets/widgets/qtextedit_p.h +++ b/src/widgets/widgets/qtextedit_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qtoolbar.cpp b/src/widgets/widgets/qtoolbar.cpp index 3d3ef4f7b5..773a7c55d9 100644 --- a/src/widgets/widgets/qtoolbar.cpp +++ b/src/widgets/widgets/qtoolbar.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qtoolbar.h b/src/widgets/widgets/qtoolbar.h index 3e85d74e49..4f51cf045d 100644 --- a/src/widgets/widgets/qtoolbar.h +++ b/src/widgets/widgets/qtoolbar.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qtoolbar_p.h b/src/widgets/widgets/qtoolbar_p.h index 70f1b6dca1..14ec575dc5 100644 --- a/src/widgets/widgets/qtoolbar_p.h +++ b/src/widgets/widgets/qtoolbar_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qtoolbararealayout.cpp b/src/widgets/widgets/qtoolbararealayout.cpp index fbd5ef2cd7..2650f7676e 100644 --- a/src/widgets/widgets/qtoolbararealayout.cpp +++ b/src/widgets/widgets/qtoolbararealayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qtoolbararealayout_p.h b/src/widgets/widgets/qtoolbararealayout_p.h index 940901df96..b61b2c76c9 100644 --- a/src/widgets/widgets/qtoolbararealayout_p.h +++ b/src/widgets/widgets/qtoolbararealayout_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qtoolbarextension.cpp b/src/widgets/widgets/qtoolbarextension.cpp index c522b416f2..341bd9cbb3 100644 --- a/src/widgets/widgets/qtoolbarextension.cpp +++ b/src/widgets/widgets/qtoolbarextension.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qtoolbarextension_p.h b/src/widgets/widgets/qtoolbarextension_p.h index d7f28bf0f3..a60584f755 100644 --- a/src/widgets/widgets/qtoolbarextension_p.h +++ b/src/widgets/widgets/qtoolbarextension_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qtoolbarlayout.cpp b/src/widgets/widgets/qtoolbarlayout.cpp index ac9be12ee2..2e5aaa61f2 100644 --- a/src/widgets/widgets/qtoolbarlayout.cpp +++ b/src/widgets/widgets/qtoolbarlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qtoolbarlayout_p.h b/src/widgets/widgets/qtoolbarlayout_p.h index 4e4a8eab84..7c2a60d51a 100644 --- a/src/widgets/widgets/qtoolbarlayout_p.h +++ b/src/widgets/widgets/qtoolbarlayout_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qtoolbarseparator.cpp b/src/widgets/widgets/qtoolbarseparator.cpp index bd0ed9854f..4dd11679fa 100644 --- a/src/widgets/widgets/qtoolbarseparator.cpp +++ b/src/widgets/widgets/qtoolbarseparator.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qtoolbarseparator_p.h b/src/widgets/widgets/qtoolbarseparator_p.h index 0f1eb05abc..5807c9f0b8 100644 --- a/src/widgets/widgets/qtoolbarseparator_p.h +++ b/src/widgets/widgets/qtoolbarseparator_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qtoolbox.cpp b/src/widgets/widgets/qtoolbox.cpp index a0bd1708fe..2bf0dc0d9d 100644 --- a/src/widgets/widgets/qtoolbox.cpp +++ b/src/widgets/widgets/qtoolbox.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qtoolbox.h b/src/widgets/widgets/qtoolbox.h index ac4125229c..8e7ac52646 100644 --- a/src/widgets/widgets/qtoolbox.h +++ b/src/widgets/widgets/qtoolbox.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qtoolbutton.cpp b/src/widgets/widgets/qtoolbutton.cpp index ba0db96272..5b3a328dcc 100644 --- a/src/widgets/widgets/qtoolbutton.cpp +++ b/src/widgets/widgets/qtoolbutton.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qtoolbutton.h b/src/widgets/widgets/qtoolbutton.h index 5ec507904a..c451e2cc13 100644 --- a/src/widgets/widgets/qtoolbutton.h +++ b/src/widgets/widgets/qtoolbutton.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qwidgetanimator.cpp b/src/widgets/widgets/qwidgetanimator.cpp index 9df7dfc0eb..de92a53257 100644 --- a/src/widgets/widgets/qwidgetanimator.cpp +++ b/src/widgets/widgets/qwidgetanimator.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qwidgetanimator_p.h b/src/widgets/widgets/qwidgetanimator_p.h index 40a2f274eb..d6e7a86e7b 100644 --- a/src/widgets/widgets/qwidgetanimator_p.h +++ b/src/widgets/widgets/qwidgetanimator_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qwidgetlinecontrol.cpp b/src/widgets/widgets/qwidgetlinecontrol.cpp index f4a302c3b6..e52193e20c 100644 --- a/src/widgets/widgets/qwidgetlinecontrol.cpp +++ b/src/widgets/widgets/qwidgetlinecontrol.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qwidgetlinecontrol_p.h b/src/widgets/widgets/qwidgetlinecontrol_p.h index 2e5276e586..b39a0b3ba1 100644 --- a/src/widgets/widgets/qwidgetlinecontrol_p.h +++ b/src/widgets/widgets/qwidgetlinecontrol_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qwidgetresizehandler.cpp b/src/widgets/widgets/qwidgetresizehandler.cpp index f43e0f7dfa..5881d2360d 100644 --- a/src/widgets/widgets/qwidgetresizehandler.cpp +++ b/src/widgets/widgets/qwidgetresizehandler.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qwidgetresizehandler_p.h b/src/widgets/widgets/qwidgetresizehandler_p.h index 9d09d63967..5a355611fd 100644 --- a/src/widgets/widgets/qwidgetresizehandler_p.h +++ b/src/widgets/widgets/qwidgetresizehandler_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qwidgettextcontrol.cpp b/src/widgets/widgets/qwidgettextcontrol.cpp index 3aaeae50d2..628848b0d7 100644 --- a/src/widgets/widgets/qwidgettextcontrol.cpp +++ b/src/widgets/widgets/qwidgettextcontrol.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qwidgettextcontrol_p.h b/src/widgets/widgets/qwidgettextcontrol_p.h index 1550959ebe..7425a7d878 100644 --- a/src/widgets/widgets/qwidgettextcontrol_p.h +++ b/src/widgets/widgets/qwidgettextcontrol_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qwidgettextcontrol_p_p.h b/src/widgets/widgets/qwidgettextcontrol_p_p.h index cf493aff71..7e49be7f7b 100644 --- a/src/widgets/widgets/qwidgettextcontrol_p_p.h +++ b/src/widgets/widgets/qwidgettextcontrol_p_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qworkspace.cpp b/src/widgets/widgets/qworkspace.cpp index 0d74635881..7aaeeb7282 100644 --- a/src/widgets/widgets/qworkspace.cpp +++ b/src/widgets/widgets/qworkspace.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/widgets/widgets/qworkspace.h b/src/widgets/widgets/qworkspace.h index 843879a8e7..66fa57f5a4 100644 --- a/src/widgets/widgets/qworkspace.h +++ b/src/widgets/widgets/qworkspace.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/winmain/qtmain_win.cpp b/src/winmain/qtmain_win.cpp index 2c0091bd89..439f5b859f 100644 --- a/src/winmain/qtmain_win.cpp +++ b/src/winmain/qtmain_win.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/xml/dom/qdom.cpp b/src/xml/dom/qdom.cpp index 5aa7311e6c..10f48b1608 100644 --- a/src/xml/dom/qdom.cpp +++ b/src/xml/dom/qdom.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/xml/dom/qdom.h b/src/xml/dom/qdom.h index 87ccee21aa..d2ff10469d 100644 --- a/src/xml/dom/qdom.h +++ b/src/xml/dom/qdom.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/xml/sax/qxml.cpp b/src/xml/sax/qxml.cpp index 067731bb67..bd13cca4ad 100644 --- a/src/xml/sax/qxml.cpp +++ b/src/xml/sax/qxml.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/src/xml/sax/qxml.h b/src/xml/sax/qxml.h index 52eea6ce76..7e0ef10d86 100644 --- a/src/xml/sax/qxml.h +++ b/src/xml/sax/qxml.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/compilerwarnings/data/test_cpp.txt b/tests/auto/compilerwarnings/data/test_cpp.txt index 4c3ab7131c..d51bc30aab 100644 --- a/tests/auto/compilerwarnings/data/test_cpp.txt +++ b/tests/auto/compilerwarnings/data/test_cpp.txt @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/animation/qabstractanimation/tst_qabstractanimation.cpp b/tests/auto/corelib/animation/qabstractanimation/tst_qabstractanimation.cpp index 28118aa203..deea511a5f 100644 --- a/tests/auto/corelib/animation/qabstractanimation/tst_qabstractanimation.cpp +++ b/tests/auto/corelib/animation/qabstractanimation/tst_qabstractanimation.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/animation/qanimationgroup/tst_qanimationgroup.cpp b/tests/auto/corelib/animation/qanimationgroup/tst_qanimationgroup.cpp index 223998b000..1502e5c8d2 100644 --- a/tests/auto/corelib/animation/qanimationgroup/tst_qanimationgroup.cpp +++ b/tests/auto/corelib/animation/qanimationgroup/tst_qanimationgroup.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/animation/qparallelanimationgroup/tst_qparallelanimationgroup.cpp b/tests/auto/corelib/animation/qparallelanimationgroup/tst_qparallelanimationgroup.cpp index 3f65d079ca..755de9d0b8 100644 --- a/tests/auto/corelib/animation/qparallelanimationgroup/tst_qparallelanimationgroup.cpp +++ b/tests/auto/corelib/animation/qparallelanimationgroup/tst_qparallelanimationgroup.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/animation/qpauseanimation/tst_qpauseanimation.cpp b/tests/auto/corelib/animation/qpauseanimation/tst_qpauseanimation.cpp index ffd4ce47e1..68ada06669 100644 --- a/tests/auto/corelib/animation/qpauseanimation/tst_qpauseanimation.cpp +++ b/tests/auto/corelib/animation/qpauseanimation/tst_qpauseanimation.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/animation/qpropertyanimation/tst_qpropertyanimation.cpp b/tests/auto/corelib/animation/qpropertyanimation/tst_qpropertyanimation.cpp index 61fd31ca69..c8688c89f6 100644 --- a/tests/auto/corelib/animation/qpropertyanimation/tst_qpropertyanimation.cpp +++ b/tests/auto/corelib/animation/qpropertyanimation/tst_qpropertyanimation.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/animation/qsequentialanimationgroup/tst_qsequentialanimationgroup.cpp b/tests/auto/corelib/animation/qsequentialanimationgroup/tst_qsequentialanimationgroup.cpp index 6cc406b8a3..3751816dbc 100644 --- a/tests/auto/corelib/animation/qsequentialanimationgroup/tst_qsequentialanimationgroup.cpp +++ b/tests/auto/corelib/animation/qsequentialanimationgroup/tst_qsequentialanimationgroup.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/animation/qvariantanimation/tst_qvariantanimation.cpp b/tests/auto/corelib/animation/qvariantanimation/tst_qvariantanimation.cpp index bb6d32ee41..b7e1015a13 100644 --- a/tests/auto/corelib/animation/qvariantanimation/tst_qvariantanimation.cpp +++ b/tests/auto/corelib/animation/qvariantanimation/tst_qvariantanimation.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/codecs/qtextcodec/echo/main.cpp b/tests/auto/corelib/codecs/qtextcodec/echo/main.cpp index 774cab1a9b..6854827421 100644 --- a/tests/auto/corelib/codecs/qtextcodec/echo/main.cpp +++ b/tests/auto/corelib/codecs/qtextcodec/echo/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/codecs/qtextcodec/tst_qtextcodec.cpp b/tests/auto/corelib/codecs/qtextcodec/tst_qtextcodec.cpp index 9c5a15d92c..b6dcd3ed63 100644 --- a/tests/auto/corelib/codecs/qtextcodec/tst_qtextcodec.cpp +++ b/tests/auto/corelib/codecs/qtextcodec/tst_qtextcodec.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/codecs/utf8/tst_utf8.cpp b/tests/auto/corelib/codecs/utf8/tst_utf8.cpp index f6726c3281..f6ff8b2208 100644 --- a/tests/auto/corelib/codecs/utf8/tst_utf8.cpp +++ b/tests/auto/corelib/codecs/utf8/tst_utf8.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/concurrent/qfuture/tst_qfuture.cpp b/tests/auto/corelib/concurrent/qfuture/tst_qfuture.cpp index 1dc35ceeb1..53694100ba 100644 --- a/tests/auto/corelib/concurrent/qfuture/tst_qfuture.cpp +++ b/tests/auto/corelib/concurrent/qfuture/tst_qfuture.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/concurrent/qfuturesynchronizer/tst_qfuturesynchronizer.cpp b/tests/auto/corelib/concurrent/qfuturesynchronizer/tst_qfuturesynchronizer.cpp index 5aced3f8c1..a2145ca04f 100644 --- a/tests/auto/corelib/concurrent/qfuturesynchronizer/tst_qfuturesynchronizer.cpp +++ b/tests/auto/corelib/concurrent/qfuturesynchronizer/tst_qfuturesynchronizer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/concurrent/qfuturewatcher/tst_qfuturewatcher.cpp b/tests/auto/corelib/concurrent/qfuturewatcher/tst_qfuturewatcher.cpp index 8cd77b88f7..4fad31b5c9 100644 --- a/tests/auto/corelib/concurrent/qfuturewatcher/tst_qfuturewatcher.cpp +++ b/tests/auto/corelib/concurrent/qfuturewatcher/tst_qfuturewatcher.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/concurrent/qtconcurrentfilter/tst_qtconcurrentfilter.cpp b/tests/auto/corelib/concurrent/qtconcurrentfilter/tst_qtconcurrentfilter.cpp index 34e0201ce3..272d8514ef 100644 --- a/tests/auto/corelib/concurrent/qtconcurrentfilter/tst_qtconcurrentfilter.cpp +++ b/tests/auto/corelib/concurrent/qtconcurrentfilter/tst_qtconcurrentfilter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/concurrent/qtconcurrentiteratekernel/tst_qtconcurrentiteratekernel.cpp b/tests/auto/corelib/concurrent/qtconcurrentiteratekernel/tst_qtconcurrentiteratekernel.cpp index 96ba71b156..16f61513eb 100644 --- a/tests/auto/corelib/concurrent/qtconcurrentiteratekernel/tst_qtconcurrentiteratekernel.cpp +++ b/tests/auto/corelib/concurrent/qtconcurrentiteratekernel/tst_qtconcurrentiteratekernel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/concurrent/qtconcurrentmap/functions.h b/tests/auto/corelib/concurrent/qtconcurrentmap/functions.h index a3dcd3c300..ebca462676 100644 --- a/tests/auto/corelib/concurrent/qtconcurrentmap/functions.h +++ b/tests/auto/corelib/concurrent/qtconcurrentmap/functions.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/concurrent/qtconcurrentmap/tst_qtconcurrentmap.cpp b/tests/auto/corelib/concurrent/qtconcurrentmap/tst_qtconcurrentmap.cpp index c55317d171..df74c028d3 100644 --- a/tests/auto/corelib/concurrent/qtconcurrentmap/tst_qtconcurrentmap.cpp +++ b/tests/auto/corelib/concurrent/qtconcurrentmap/tst_qtconcurrentmap.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/concurrent/qtconcurrentresultstore/tst_qtconcurrentresultstore.cpp b/tests/auto/corelib/concurrent/qtconcurrentresultstore/tst_qtconcurrentresultstore.cpp index f5b3f2965e..980fc6c282 100644 --- a/tests/auto/corelib/concurrent/qtconcurrentresultstore/tst_qtconcurrentresultstore.cpp +++ b/tests/auto/corelib/concurrent/qtconcurrentresultstore/tst_qtconcurrentresultstore.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/concurrent/qtconcurrentrun/tst_qtconcurrentrun.cpp b/tests/auto/corelib/concurrent/qtconcurrentrun/tst_qtconcurrentrun.cpp index 23f099bffa..96f705d00b 100644 --- a/tests/auto/corelib/concurrent/qtconcurrentrun/tst_qtconcurrentrun.cpp +++ b/tests/auto/corelib/concurrent/qtconcurrentrun/tst_qtconcurrentrun.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/concurrent/qtconcurrentthreadengine/tst_qtconcurrentthreadengine.cpp b/tests/auto/corelib/concurrent/qtconcurrentthreadengine/tst_qtconcurrentthreadengine.cpp index d5b58c892d..858faa6eab 100644 --- a/tests/auto/corelib/concurrent/qtconcurrentthreadengine/tst_qtconcurrentthreadengine.cpp +++ b/tests/auto/corelib/concurrent/qtconcurrentthreadengine/tst_qtconcurrentthreadengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/concurrent/qthreadpool/tst_qthreadpool.cpp b/tests/auto/corelib/concurrent/qthreadpool/tst_qthreadpool.cpp index ab67160450..e08ed2b3fc 100644 --- a/tests/auto/corelib/concurrent/qthreadpool/tst_qthreadpool.cpp +++ b/tests/auto/corelib/concurrent/qthreadpool/tst_qthreadpool.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/global/q_func_info/tst_q_func_info.cpp b/tests/auto/corelib/global/q_func_info/tst_q_func_info.cpp index e4949348f4..35a74f154d 100644 --- a/tests/auto/corelib/global/q_func_info/tst_q_func_info.cpp +++ b/tests/auto/corelib/global/q_func_info/tst_q_func_info.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/global/qflags/tst_qflags.cpp b/tests/auto/corelib/global/qflags/tst_qflags.cpp index 85e64a6d63..d80f401071 100644 --- a/tests/auto/corelib/global/qflags/tst_qflags.cpp +++ b/tests/auto/corelib/global/qflags/tst_qflags.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/global/qgetputenv/tst_qgetputenv.cpp b/tests/auto/corelib/global/qgetputenv/tst_qgetputenv.cpp index f440e4eaa5..41fb311837 100644 --- a/tests/auto/corelib/global/qgetputenv/tst_qgetputenv.cpp +++ b/tests/auto/corelib/global/qgetputenv/tst_qgetputenv.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/global/qglobal/tst_qglobal.cpp b/tests/auto/corelib/global/qglobal/tst_qglobal.cpp index 3efdbf0433..23b9c6bbab 100644 --- a/tests/auto/corelib/global/qglobal/tst_qglobal.cpp +++ b/tests/auto/corelib/global/qglobal/tst_qglobal.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/global/qnumeric/tst_qnumeric.cpp b/tests/auto/corelib/global/qnumeric/tst_qnumeric.cpp index 697ddfc9d2..f73884fe02 100644 --- a/tests/auto/corelib/global/qnumeric/tst_qnumeric.cpp +++ b/tests/auto/corelib/global/qnumeric/tst_qnumeric.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/global/qrand/tst_qrand.cpp b/tests/auto/corelib/global/qrand/tst_qrand.cpp index 7ac778211c..71f14e28e2 100644 --- a/tests/auto/corelib/global/qrand/tst_qrand.cpp +++ b/tests/auto/corelib/global/qrand/tst_qrand.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qabstractfileengine/tst_qabstractfileengine.cpp b/tests/auto/corelib/io/qabstractfileengine/tst_qabstractfileengine.cpp index 9f8fcda01c..1bffd63d1b 100644 --- a/tests/auto/corelib/io/qabstractfileengine/tst_qabstractfileengine.cpp +++ b/tests/auto/corelib/io/qabstractfileengine/tst_qabstractfileengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qbuffer/tst_qbuffer.cpp b/tests/auto/corelib/io/qbuffer/tst_qbuffer.cpp index e2d422ad54..e2890d7891 100644 --- a/tests/auto/corelib/io/qbuffer/tst_qbuffer.cpp +++ b/tests/auto/corelib/io/qbuffer/tst_qbuffer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qdatastream/tst_qdatastream.cpp b/tests/auto/corelib/io/qdatastream/tst_qdatastream.cpp index 6e91780ecc..3a94269c2b 100644 --- a/tests/auto/corelib/io/qdatastream/tst_qdatastream.cpp +++ b/tests/auto/corelib/io/qdatastream/tst_qdatastream.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qdebug/tst_qdebug.cpp b/tests/auto/corelib/io/qdebug/tst_qdebug.cpp index 86872a4dd1..0736277e97 100644 --- a/tests/auto/corelib/io/qdebug/tst_qdebug.cpp +++ b/tests/auto/corelib/io/qdebug/tst_qdebug.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qdir/testdir/dir/qrc_qdir.cpp b/tests/auto/corelib/io/qdir/testdir/dir/qrc_qdir.cpp index 74114760c9..01cbc13d40 100644 --- a/tests/auto/corelib/io/qdir/testdir/dir/qrc_qdir.cpp +++ b/tests/auto/corelib/io/qdir/testdir/dir/qrc_qdir.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qdir/testdir/dir/tst_qdir.cpp b/tests/auto/corelib/io/qdir/testdir/dir/tst_qdir.cpp index 74114760c9..01cbc13d40 100644 --- a/tests/auto/corelib/io/qdir/testdir/dir/tst_qdir.cpp +++ b/tests/auto/corelib/io/qdir/testdir/dir/tst_qdir.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qdir/tst_qdir.cpp b/tests/auto/corelib/io/qdir/tst_qdir.cpp index 32d74b163b..1f4e05d0cd 100644 --- a/tests/auto/corelib/io/qdir/tst_qdir.cpp +++ b/tests/auto/corelib/io/qdir/tst_qdir.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qdiriterator/tst_qdiriterator.cpp b/tests/auto/corelib/io/qdiriterator/tst_qdiriterator.cpp index 8a7f1747b4..3b3b2b5a04 100644 --- a/tests/auto/corelib/io/qdiriterator/tst_qdiriterator.cpp +++ b/tests/auto/corelib/io/qdiriterator/tst_qdiriterator.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qfile/largefile/tst_largefile.cpp b/tests/auto/corelib/io/qfile/largefile/tst_largefile.cpp index ce7b829738..ba2eced60a 100644 --- a/tests/auto/corelib/io/qfile/largefile/tst_largefile.cpp +++ b/tests/auto/corelib/io/qfile/largefile/tst_largefile.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qfile/stdinprocess/main.cpp b/tests/auto/corelib/io/qfile/stdinprocess/main.cpp index 57a8d904f5..796aa9d3e0 100644 --- a/tests/auto/corelib/io/qfile/stdinprocess/main.cpp +++ b/tests/auto/corelib/io/qfile/stdinprocess/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qfile/tst_qfile.cpp b/tests/auto/corelib/io/qfile/tst_qfile.cpp index ccdbc85293..0549fe32f0 100644 --- a/tests/auto/corelib/io/qfile/tst_qfile.cpp +++ b/tests/auto/corelib/io/qfile/tst_qfile.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qfileinfo/tst_qfileinfo.cpp b/tests/auto/corelib/io/qfileinfo/tst_qfileinfo.cpp index ae371ea9fe..5764cee66d 100644 --- a/tests/auto/corelib/io/qfileinfo/tst_qfileinfo.cpp +++ b/tests/auto/corelib/io/qfileinfo/tst_qfileinfo.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qfilesystementry/tst_qfilesystementry.cpp b/tests/auto/corelib/io/qfilesystementry/tst_qfilesystementry.cpp index e8a7e945c3..cc75801638 100644 --- a/tests/auto/corelib/io/qfilesystementry/tst_qfilesystementry.cpp +++ b/tests/auto/corelib/io/qfilesystementry/tst_qfilesystementry.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qfilesystemwatcher/tst_qfilesystemwatcher.cpp b/tests/auto/corelib/io/qfilesystemwatcher/tst_qfilesystemwatcher.cpp index ad29c5769c..05b2539182 100644 --- a/tests/auto/corelib/io/qfilesystemwatcher/tst_qfilesystemwatcher.cpp +++ b/tests/auto/corelib/io/qfilesystemwatcher/tst_qfilesystemwatcher.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qiodevice/tst_qiodevice.cpp b/tests/auto/corelib/io/qiodevice/tst_qiodevice.cpp index a67289f2a1..34fb0089aa 100644 --- a/tests/auto/corelib/io/qiodevice/tst_qiodevice.cpp +++ b/tests/auto/corelib/io/qiodevice/tst_qiodevice.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qprocess/fileWriterProcess/main.cpp b/tests/auto/corelib/io/qprocess/fileWriterProcess/main.cpp index 40e92c69be..3c7e63fef3 100644 --- a/tests/auto/corelib/io/qprocess/fileWriterProcess/main.cpp +++ b/tests/auto/corelib/io/qprocess/fileWriterProcess/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qprocess/testDetached/main.cpp b/tests/auto/corelib/io/qprocess/testDetached/main.cpp index 5b4ee790b9..bcf237f488 100644 --- a/tests/auto/corelib/io/qprocess/testDetached/main.cpp +++ b/tests/auto/corelib/io/qprocess/testDetached/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qprocess/testExitCodes/main.cpp b/tests/auto/corelib/io/qprocess/testExitCodes/main.cpp index 4d6a49e8f5..1475b3354d 100644 --- a/tests/auto/corelib/io/qprocess/testExitCodes/main.cpp +++ b/tests/auto/corelib/io/qprocess/testExitCodes/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qprocess/testGuiProcess/main.cpp b/tests/auto/corelib/io/qprocess/testGuiProcess/main.cpp index 90d4d4a962..c9e5d2e6a5 100644 --- a/tests/auto/corelib/io/qprocess/testGuiProcess/main.cpp +++ b/tests/auto/corelib/io/qprocess/testGuiProcess/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qprocess/testProcessCrash/main.cpp b/tests/auto/corelib/io/qprocess/testProcessCrash/main.cpp index e2ec87b3aa..b7c0511d77 100644 --- a/tests/auto/corelib/io/qprocess/testProcessCrash/main.cpp +++ b/tests/auto/corelib/io/qprocess/testProcessCrash/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qprocess/testProcessDeadWhileReading/main.cpp b/tests/auto/corelib/io/qprocess/testProcessDeadWhileReading/main.cpp index 9e285b5012..97d9208e19 100644 --- a/tests/auto/corelib/io/qprocess/testProcessDeadWhileReading/main.cpp +++ b/tests/auto/corelib/io/qprocess/testProcessDeadWhileReading/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qprocess/testProcessEOF/main.cpp b/tests/auto/corelib/io/qprocess/testProcessEOF/main.cpp index 28de5c2f3a..bf3d190630 100644 --- a/tests/auto/corelib/io/qprocess/testProcessEOF/main.cpp +++ b/tests/auto/corelib/io/qprocess/testProcessEOF/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qprocess/testProcessEcho/main.cpp b/tests/auto/corelib/io/qprocess/testProcessEcho/main.cpp index a7eedff56d..0c915918e4 100644 --- a/tests/auto/corelib/io/qprocess/testProcessEcho/main.cpp +++ b/tests/auto/corelib/io/qprocess/testProcessEcho/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qprocess/testProcessEcho2/main.cpp b/tests/auto/corelib/io/qprocess/testProcessEcho2/main.cpp index 1c18319bca..8f3bd70a3a 100644 --- a/tests/auto/corelib/io/qprocess/testProcessEcho2/main.cpp +++ b/tests/auto/corelib/io/qprocess/testProcessEcho2/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qprocess/testProcessEcho3/main.cpp b/tests/auto/corelib/io/qprocess/testProcessEcho3/main.cpp index 62901a7789..c5eb4df307 100644 --- a/tests/auto/corelib/io/qprocess/testProcessEcho3/main.cpp +++ b/tests/auto/corelib/io/qprocess/testProcessEcho3/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qprocess/testProcessEchoGui/main_win.cpp b/tests/auto/corelib/io/qprocess/testProcessEchoGui/main_win.cpp index b8c2bd6abd..877b3c6175 100644 --- a/tests/auto/corelib/io/qprocess/testProcessEchoGui/main_win.cpp +++ b/tests/auto/corelib/io/qprocess/testProcessEchoGui/main_win.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qprocess/testProcessEnvironment/main.cpp b/tests/auto/corelib/io/qprocess/testProcessEnvironment/main.cpp index 17ed5c61dc..146b61af0e 100644 --- a/tests/auto/corelib/io/qprocess/testProcessEnvironment/main.cpp +++ b/tests/auto/corelib/io/qprocess/testProcessEnvironment/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qprocess/testProcessLoopback/main.cpp b/tests/auto/corelib/io/qprocess/testProcessLoopback/main.cpp index 6803518400..78973f9f12 100644 --- a/tests/auto/corelib/io/qprocess/testProcessLoopback/main.cpp +++ b/tests/auto/corelib/io/qprocess/testProcessLoopback/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qprocess/testProcessNormal/main.cpp b/tests/auto/corelib/io/qprocess/testProcessNormal/main.cpp index 008a0a2430..4fc8ea197c 100644 --- a/tests/auto/corelib/io/qprocess/testProcessNormal/main.cpp +++ b/tests/auto/corelib/io/qprocess/testProcessNormal/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qprocess/testProcessOutput/main.cpp b/tests/auto/corelib/io/qprocess/testProcessOutput/main.cpp index d01739e3c0..5284607e9f 100644 --- a/tests/auto/corelib/io/qprocess/testProcessOutput/main.cpp +++ b/tests/auto/corelib/io/qprocess/testProcessOutput/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qprocess/testProcessSpacesArgs/main.cpp b/tests/auto/corelib/io/qprocess/testProcessSpacesArgs/main.cpp index 00944ba160..57fb68e841 100644 --- a/tests/auto/corelib/io/qprocess/testProcessSpacesArgs/main.cpp +++ b/tests/auto/corelib/io/qprocess/testProcessSpacesArgs/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qprocess/testSetWorkingDirectory/main.cpp b/tests/auto/corelib/io/qprocess/testSetWorkingDirectory/main.cpp index 0035c6253a..cbe01ea00a 100644 --- a/tests/auto/corelib/io/qprocess/testSetWorkingDirectory/main.cpp +++ b/tests/auto/corelib/io/qprocess/testSetWorkingDirectory/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qprocess/testSoftExit/main_unix.cpp b/tests/auto/corelib/io/qprocess/testSoftExit/main_unix.cpp index b17ab4d9a6..fa368489d6 100644 --- a/tests/auto/corelib/io/qprocess/testSoftExit/main_unix.cpp +++ b/tests/auto/corelib/io/qprocess/testSoftExit/main_unix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qprocess/testSoftExit/main_win.cpp b/tests/auto/corelib/io/qprocess/testSoftExit/main_win.cpp index 7bdf796926..87ba12c008 100644 --- a/tests/auto/corelib/io/qprocess/testSoftExit/main_win.cpp +++ b/tests/auto/corelib/io/qprocess/testSoftExit/main_win.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qprocess/testSpaceInName/main.cpp b/tests/auto/corelib/io/qprocess/testSpaceInName/main.cpp index 3fadc68095..d42b8ed083 100644 --- a/tests/auto/corelib/io/qprocess/testSpaceInName/main.cpp +++ b/tests/auto/corelib/io/qprocess/testSpaceInName/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qprocess/tst_qprocess.cpp b/tests/auto/corelib/io/qprocess/tst_qprocess.cpp index 0482b2d85e..c39e9f07dc 100644 --- a/tests/auto/corelib/io/qprocess/tst_qprocess.cpp +++ b/tests/auto/corelib/io/qprocess/tst_qprocess.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qprocessenvironment/tst_qprocessenvironment.cpp b/tests/auto/corelib/io/qprocessenvironment/tst_qprocessenvironment.cpp index addce54136..50579f0712 100644 --- a/tests/auto/corelib/io/qprocessenvironment/tst_qprocessenvironment.cpp +++ b/tests/auto/corelib/io/qprocessenvironment/tst_qprocessenvironment.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qresourceengine/tst_qresourceengine.cpp b/tests/auto/corelib/io/qresourceengine/tst_qresourceengine.cpp index 2a40a64580..62dbc088a2 100644 --- a/tests/auto/corelib/io/qresourceengine/tst_qresourceengine.cpp +++ b/tests/auto/corelib/io/qresourceengine/tst_qresourceengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qsettings/tst_qsettings.cpp b/tests/auto/corelib/io/qsettings/tst_qsettings.cpp index f16dcd1ccc..87f5b37e14 100644 --- a/tests/auto/corelib/io/qsettings/tst_qsettings.cpp +++ b/tests/auto/corelib/io/qsettings/tst_qsettings.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qstandardpaths/tst_qstandardpaths.cpp b/tests/auto/corelib/io/qstandardpaths/tst_qstandardpaths.cpp index 66fb8bbbf9..1820d66496 100644 --- a/tests/auto/corelib/io/qstandardpaths/tst_qstandardpaths.cpp +++ b/tests/auto/corelib/io/qstandardpaths/tst_qstandardpaths.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qtemporarydir/tst_qtemporarydir.cpp b/tests/auto/corelib/io/qtemporarydir/tst_qtemporarydir.cpp index 60c7174f3a..86aa071410 100644 --- a/tests/auto/corelib/io/qtemporarydir/tst_qtemporarydir.cpp +++ b/tests/auto/corelib/io/qtemporarydir/tst_qtemporarydir.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qtemporaryfile/tst_qtemporaryfile.cpp b/tests/auto/corelib/io/qtemporaryfile/tst_qtemporaryfile.cpp index a1e9d98461..4c2e3f211b 100644 --- a/tests/auto/corelib/io/qtemporaryfile/tst_qtemporaryfile.cpp +++ b/tests/auto/corelib/io/qtemporaryfile/tst_qtemporaryfile.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qtextstream/readAllStdinProcess/main.cpp b/tests/auto/corelib/io/qtextstream/readAllStdinProcess/main.cpp index ca541d053a..1007b6403a 100644 --- a/tests/auto/corelib/io/qtextstream/readAllStdinProcess/main.cpp +++ b/tests/auto/corelib/io/qtextstream/readAllStdinProcess/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qtextstream/readLineStdinProcess/main.cpp b/tests/auto/corelib/io/qtextstream/readLineStdinProcess/main.cpp index d8d2eed000..2216f10b1d 100644 --- a/tests/auto/corelib/io/qtextstream/readLineStdinProcess/main.cpp +++ b/tests/auto/corelib/io/qtextstream/readLineStdinProcess/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qtextstream/stdinProcess/main.cpp b/tests/auto/corelib/io/qtextstream/stdinProcess/main.cpp index 6d51f84fa1..39855308b5 100644 --- a/tests/auto/corelib/io/qtextstream/stdinProcess/main.cpp +++ b/tests/auto/corelib/io/qtextstream/stdinProcess/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qtextstream/tst_qtextstream.cpp b/tests/auto/corelib/io/qtextstream/tst_qtextstream.cpp index a1b3724417..6b6ac013bd 100644 --- a/tests/auto/corelib/io/qtextstream/tst_qtextstream.cpp +++ b/tests/auto/corelib/io/qtextstream/tst_qtextstream.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qurl/idna-test.c b/tests/auto/corelib/io/qurl/idna-test.c index 7effd03168..40538dfb65 100644 --- a/tests/auto/corelib/io/qurl/idna-test.c +++ b/tests/auto/corelib/io/qurl/idna-test.c @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/io/qurl/tst_qurl.cpp b/tests/auto/corelib/io/qurl/tst_qurl.cpp index d86f96fba3..f0b6429089 100644 --- a/tests/auto/corelib/io/qurl/tst_qurl.cpp +++ b/tests/auto/corelib/io/qurl/tst_qurl.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/itemmodels/qabstractitemmodel/tst_qabstractitemmodel.cpp b/tests/auto/corelib/itemmodels/qabstractitemmodel/tst_qabstractitemmodel.cpp index ebf82227a1..1952314ce2 100644 --- a/tests/auto/corelib/itemmodels/qabstractitemmodel/tst_qabstractitemmodel.cpp +++ b/tests/auto/corelib/itemmodels/qabstractitemmodel/tst_qabstractitemmodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/itemmodels/qabstractproxymodel/tst_qabstractproxymodel.cpp b/tests/auto/corelib/itemmodels/qabstractproxymodel/tst_qabstractproxymodel.cpp index d99512e75c..088ad0afdc 100644 --- a/tests/auto/corelib/itemmodels/qabstractproxymodel/tst_qabstractproxymodel.cpp +++ b/tests/auto/corelib/itemmodels/qabstractproxymodel/tst_qabstractproxymodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp b/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp index 1a71f187c3..552b3d6eab 100644 --- a/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp +++ b/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp b/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp index 67b55a92e7..3b4b71cf8b 100644 --- a/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp +++ b/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/itemmodels/qstringlistmodel/qmodellistener.h b/tests/auto/corelib/itemmodels/qstringlistmodel/qmodellistener.h index a95de96008..1de3018228 100644 --- a/tests/auto/corelib/itemmodels/qstringlistmodel/qmodellistener.h +++ b/tests/auto/corelib/itemmodels/qstringlistmodel/qmodellistener.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/itemmodels/qstringlistmodel/tst_qstringlistmodel.cpp b/tests/auto/corelib/itemmodels/qstringlistmodel/tst_qstringlistmodel.cpp index d1078419ca..6c7c87c940 100644 --- a/tests/auto/corelib/itemmodels/qstringlistmodel/tst_qstringlistmodel.cpp +++ b/tests/auto/corelib/itemmodels/qstringlistmodel/tst_qstringlistmodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/kernel/qcoreapplication/tst_qcoreapplication.cpp b/tests/auto/corelib/kernel/qcoreapplication/tst_qcoreapplication.cpp index d166b40c78..5c2ebc8948 100644 --- a/tests/auto/corelib/kernel/qcoreapplication/tst_qcoreapplication.cpp +++ b/tests/auto/corelib/kernel/qcoreapplication/tst_qcoreapplication.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/kernel/qeventloop/tst_qeventloop.cpp b/tests/auto/corelib/kernel/qeventloop/tst_qeventloop.cpp index a2673ab0e3..49e3fec33e 100644 --- a/tests/auto/corelib/kernel/qeventloop/tst_qeventloop.cpp +++ b/tests/auto/corelib/kernel/qeventloop/tst_qeventloop.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/kernel/qitemmodel/modelstotest.cpp b/tests/auto/corelib/kernel/qitemmodel/modelstotest.cpp index 67d5024944..5f96513171 100644 --- a/tests/auto/corelib/kernel/qitemmodel/modelstotest.cpp +++ b/tests/auto/corelib/kernel/qitemmodel/modelstotest.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/kernel/qitemmodel/tst_qitemmodel.cpp b/tests/auto/corelib/kernel/qitemmodel/tst_qitemmodel.cpp index 3f68379542..636635a5b5 100644 --- a/tests/auto/corelib/kernel/qitemmodel/tst_qitemmodel.cpp +++ b/tests/auto/corelib/kernel/qitemmodel/tst_qitemmodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/kernel/qmath/tst_qmath.cpp b/tests/auto/corelib/kernel/qmath/tst_qmath.cpp index f908bd6e3e..fab95564d2 100644 --- a/tests/auto/corelib/kernel/qmath/tst_qmath.cpp +++ b/tests/auto/corelib/kernel/qmath/tst_qmath.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/kernel/qmetaobject/tst_qmetaobject.cpp b/tests/auto/corelib/kernel/qmetaobject/tst_qmetaobject.cpp index f08bdd81a4..0fe82f6277 100644 --- a/tests/auto/corelib/kernel/qmetaobject/tst_qmetaobject.cpp +++ b/tests/auto/corelib/kernel/qmetaobject/tst_qmetaobject.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/kernel/qmetaobjectbuilder/tst_qmetaobjectbuilder.cpp b/tests/auto/corelib/kernel/qmetaobjectbuilder/tst_qmetaobjectbuilder.cpp index 7ad020c356..5e2e67b731 100644 --- a/tests/auto/corelib/kernel/qmetaobjectbuilder/tst_qmetaobjectbuilder.cpp +++ b/tests/auto/corelib/kernel/qmetaobjectbuilder/tst_qmetaobjectbuilder.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/kernel/qmetaproperty/tst_qmetaproperty.cpp b/tests/auto/corelib/kernel/qmetaproperty/tst_qmetaproperty.cpp index 7a457b05fa..e225371a7f 100644 --- a/tests/auto/corelib/kernel/qmetaproperty/tst_qmetaproperty.cpp +++ b/tests/auto/corelib/kernel/qmetaproperty/tst_qmetaproperty.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp b/tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp index 3da48c756e..475f190326 100644 --- a/tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp +++ b/tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/kernel/qmimedata/tst_qmimedata.cpp b/tests/auto/corelib/kernel/qmimedata/tst_qmimedata.cpp index 6e8e9940ab..f55701b3ec 100644 --- a/tests/auto/corelib/kernel/qmimedata/tst_qmimedata.cpp +++ b/tests/auto/corelib/kernel/qmimedata/tst_qmimedata.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/kernel/qobject/moc_oldnormalizeobject.cpp b/tests/auto/corelib/kernel/qobject/moc_oldnormalizeobject.cpp index b275ff30fa..b4069eba6c 100644 --- a/tests/auto/corelib/kernel/qobject/moc_oldnormalizeobject.cpp +++ b/tests/auto/corelib/kernel/qobject/moc_oldnormalizeobject.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/kernel/qobject/oldnormalizeobject.h b/tests/auto/corelib/kernel/qobject/oldnormalizeobject.h index 4dfb7d97d2..efd1df2f5a 100644 --- a/tests/auto/corelib/kernel/qobject/oldnormalizeobject.h +++ b/tests/auto/corelib/kernel/qobject/oldnormalizeobject.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/kernel/qobject/signalbug/signalbug.cpp b/tests/auto/corelib/kernel/qobject/signalbug/signalbug.cpp index 0465373e40..86e8869a33 100644 --- a/tests/auto/corelib/kernel/qobject/signalbug/signalbug.cpp +++ b/tests/auto/corelib/kernel/qobject/signalbug/signalbug.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/kernel/qobject/signalbug/signalbug.h b/tests/auto/corelib/kernel/qobject/signalbug/signalbug.h index 4292d70063..bba612c998 100644 --- a/tests/auto/corelib/kernel/qobject/signalbug/signalbug.h +++ b/tests/auto/corelib/kernel/qobject/signalbug/signalbug.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/kernel/qobject/tst_qobject.cpp b/tests/auto/corelib/kernel/qobject/tst_qobject.cpp index 7d54409c23..f3bba08544 100644 --- a/tests/auto/corelib/kernel/qobject/tst_qobject.cpp +++ b/tests/auto/corelib/kernel/qobject/tst_qobject.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/kernel/qpointer/tst_qpointer.cpp b/tests/auto/corelib/kernel/qpointer/tst_qpointer.cpp index c3888022e6..df4c5f99cb 100644 --- a/tests/auto/corelib/kernel/qpointer/tst_qpointer.cpp +++ b/tests/auto/corelib/kernel/qpointer/tst_qpointer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/kernel/qsignalmapper/tst_qsignalmapper.cpp b/tests/auto/corelib/kernel/qsignalmapper/tst_qsignalmapper.cpp index 58a545ca75..4b9c37a5e0 100644 --- a/tests/auto/corelib/kernel/qsignalmapper/tst_qsignalmapper.cpp +++ b/tests/auto/corelib/kernel/qsignalmapper/tst_qsignalmapper.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/kernel/qsocketnotifier/tst_qsocketnotifier.cpp b/tests/auto/corelib/kernel/qsocketnotifier/tst_qsocketnotifier.cpp index 31b6c2c373..180e7d532b 100644 --- a/tests/auto/corelib/kernel/qsocketnotifier/tst_qsocketnotifier.cpp +++ b/tests/auto/corelib/kernel/qsocketnotifier/tst_qsocketnotifier.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/kernel/qtimer/tst_qtimer.cpp b/tests/auto/corelib/kernel/qtimer/tst_qtimer.cpp index bfaeff7f26..098d8a8825 100644 --- a/tests/auto/corelib/kernel/qtimer/tst_qtimer.cpp +++ b/tests/auto/corelib/kernel/qtimer/tst_qtimer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/kernel/qtranslator/tst_qtranslator.cpp b/tests/auto/corelib/kernel/qtranslator/tst_qtranslator.cpp index 941d3a9be4..a7ccc45642 100644 --- a/tests/auto/corelib/kernel/qtranslator/tst_qtranslator.cpp +++ b/tests/auto/corelib/kernel/qtranslator/tst_qtranslator.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp b/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp index d61536160c..8f75f13958 100644 --- a/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp +++ b/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/kernel/qwineventnotifier/tst_qwineventnotifier.cpp b/tests/auto/corelib/kernel/qwineventnotifier/tst_qwineventnotifier.cpp index 38df9d77c8..cd87bed601 100644 --- a/tests/auto/corelib/kernel/qwineventnotifier/tst_qwineventnotifier.cpp +++ b/tests/auto/corelib/kernel/qwineventnotifier/tst_qwineventnotifier.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/plugin/qlibrary/lib/mylib.c b/tests/auto/corelib/plugin/qlibrary/lib/mylib.c index b9d3c1b219..04a59f210c 100644 --- a/tests/auto/corelib/plugin/qlibrary/lib/mylib.c +++ b/tests/auto/corelib/plugin/qlibrary/lib/mylib.c @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/plugin/qlibrary/lib2/mylib.c b/tests/auto/corelib/plugin/qlibrary/lib2/mylib.c index 950102abcc..525f3e3aab 100644 --- a/tests/auto/corelib/plugin/qlibrary/lib2/mylib.c +++ b/tests/auto/corelib/plugin/qlibrary/lib2/mylib.c @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/plugin/qlibrary/tst_qlibrary.cpp b/tests/auto/corelib/plugin/qlibrary/tst_qlibrary.cpp index 6b786c9def..75f854667e 100644 --- a/tests/auto/corelib/plugin/qlibrary/tst_qlibrary.cpp +++ b/tests/auto/corelib/plugin/qlibrary/tst_qlibrary.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/plugin/qplugin/debugplugin/main.cpp b/tests/auto/corelib/plugin/qplugin/debugplugin/main.cpp index b1538963d8..3dc5ec377c 100644 --- a/tests/auto/corelib/plugin/qplugin/debugplugin/main.cpp +++ b/tests/auto/corelib/plugin/qplugin/debugplugin/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/plugin/qplugin/releaseplugin/main.cpp b/tests/auto/corelib/plugin/qplugin/releaseplugin/main.cpp index 3be9a7415d..99f3c8f452 100644 --- a/tests/auto/corelib/plugin/qplugin/releaseplugin/main.cpp +++ b/tests/auto/corelib/plugin/qplugin/releaseplugin/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/plugin/qplugin/tst_qplugin.cpp b/tests/auto/corelib/plugin/qplugin/tst_qplugin.cpp index c7ea963225..63c1100c5c 100644 --- a/tests/auto/corelib/plugin/qplugin/tst_qplugin.cpp +++ b/tests/auto/corelib/plugin/qplugin/tst_qplugin.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/plugin/qpluginloader/almostplugin/almostplugin.cpp b/tests/auto/corelib/plugin/qpluginloader/almostplugin/almostplugin.cpp index 70596c0113..353b5e0158 100644 --- a/tests/auto/corelib/plugin/qpluginloader/almostplugin/almostplugin.cpp +++ b/tests/auto/corelib/plugin/qpluginloader/almostplugin/almostplugin.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/plugin/qpluginloader/almostplugin/almostplugin.h b/tests/auto/corelib/plugin/qpluginloader/almostplugin/almostplugin.h index 0021180b36..e4a9b376b2 100644 --- a/tests/auto/corelib/plugin/qpluginloader/almostplugin/almostplugin.h +++ b/tests/auto/corelib/plugin/qpluginloader/almostplugin/almostplugin.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/plugin/qpluginloader/lib/mylib.c b/tests/auto/corelib/plugin/qpluginloader/lib/mylib.c index dc43c35815..c87ec5b66d 100644 --- a/tests/auto/corelib/plugin/qpluginloader/lib/mylib.c +++ b/tests/auto/corelib/plugin/qpluginloader/lib/mylib.c @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/plugin/qpluginloader/theplugin/plugininterface.h b/tests/auto/corelib/plugin/qpluginloader/theplugin/plugininterface.h index 48d8443ba1..92b7a1b4dc 100644 --- a/tests/auto/corelib/plugin/qpluginloader/theplugin/plugininterface.h +++ b/tests/auto/corelib/plugin/qpluginloader/theplugin/plugininterface.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/plugin/qpluginloader/theplugin/theplugin.cpp b/tests/auto/corelib/plugin/qpluginloader/theplugin/theplugin.cpp index fdf599c875..660dbd2b90 100644 --- a/tests/auto/corelib/plugin/qpluginloader/theplugin/theplugin.cpp +++ b/tests/auto/corelib/plugin/qpluginloader/theplugin/theplugin.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/plugin/qpluginloader/theplugin/theplugin.h b/tests/auto/corelib/plugin/qpluginloader/theplugin/theplugin.h index 5b738696e0..e1ded8f07b 100644 --- a/tests/auto/corelib/plugin/qpluginloader/theplugin/theplugin.h +++ b/tests/auto/corelib/plugin/qpluginloader/theplugin/theplugin.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/plugin/qpluginloader/tst_qpluginloader.cpp b/tests/auto/corelib/plugin/qpluginloader/tst_qpluginloader.cpp index 2852f9bdce..bf046524d7 100644 --- a/tests/auto/corelib/plugin/qpluginloader/tst_qpluginloader.cpp +++ b/tests/auto/corelib/plugin/qpluginloader/tst_qpluginloader.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/plugin/quuid/testProcessUniqueness/main.cpp b/tests/auto/corelib/plugin/quuid/testProcessUniqueness/main.cpp index 085f56539d..072d722cff 100644 --- a/tests/auto/corelib/plugin/quuid/testProcessUniqueness/main.cpp +++ b/tests/auto/corelib/plugin/quuid/testProcessUniqueness/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/plugin/quuid/tst_quuid.cpp b/tests/auto/corelib/plugin/quuid/tst_quuid.cpp index 8ce7f17416..b7c4130236 100644 --- a/tests/auto/corelib/plugin/quuid/tst_quuid.cpp +++ b/tests/auto/corelib/plugin/quuid/tst_quuid.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/statemachine/qstate/tst_qstate.cpp b/tests/auto/corelib/statemachine/qstate/tst_qstate.cpp index af587632b3..7ca7fc5120 100644 --- a/tests/auto/corelib/statemachine/qstate/tst_qstate.cpp +++ b/tests/auto/corelib/statemachine/qstate/tst_qstate.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/statemachine/qstatemachine/tst_qstatemachine.cpp b/tests/auto/corelib/statemachine/qstatemachine/tst_qstatemachine.cpp index 773b1ff28d..2183016c32 100644 --- a/tests/auto/corelib/statemachine/qstatemachine/tst_qstatemachine.cpp +++ b/tests/auto/corelib/statemachine/qstatemachine/tst_qstatemachine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/thread/qatomicint/tst_qatomicint.cpp b/tests/auto/corelib/thread/qatomicint/tst_qatomicint.cpp index 1d79206b3a..f7969eb55e 100644 --- a/tests/auto/corelib/thread/qatomicint/tst_qatomicint.cpp +++ b/tests/auto/corelib/thread/qatomicint/tst_qatomicint.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/thread/qatomicpointer/tst_qatomicpointer.cpp b/tests/auto/corelib/thread/qatomicpointer/tst_qatomicpointer.cpp index 9c73eb3d61..ac83601414 100644 --- a/tests/auto/corelib/thread/qatomicpointer/tst_qatomicpointer.cpp +++ b/tests/auto/corelib/thread/qatomicpointer/tst_qatomicpointer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/thread/qmutex/tst_qmutex.cpp b/tests/auto/corelib/thread/qmutex/tst_qmutex.cpp index 67d6998bb1..6669a5c4b4 100644 --- a/tests/auto/corelib/thread/qmutex/tst_qmutex.cpp +++ b/tests/auto/corelib/thread/qmutex/tst_qmutex.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/thread/qmutexlocker/tst_qmutexlocker.cpp b/tests/auto/corelib/thread/qmutexlocker/tst_qmutexlocker.cpp index a6646215a0..e92dddca95 100644 --- a/tests/auto/corelib/thread/qmutexlocker/tst_qmutexlocker.cpp +++ b/tests/auto/corelib/thread/qmutexlocker/tst_qmutexlocker.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/thread/qreadlocker/tst_qreadlocker.cpp b/tests/auto/corelib/thread/qreadlocker/tst_qreadlocker.cpp index 7da7282ae4..4ba28f60ef 100644 --- a/tests/auto/corelib/thread/qreadlocker/tst_qreadlocker.cpp +++ b/tests/auto/corelib/thread/qreadlocker/tst_qreadlocker.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/thread/qreadwritelock/tst_qreadwritelock.cpp b/tests/auto/corelib/thread/qreadwritelock/tst_qreadwritelock.cpp index 4acbf411c1..418ae02add 100644 --- a/tests/auto/corelib/thread/qreadwritelock/tst_qreadwritelock.cpp +++ b/tests/auto/corelib/thread/qreadwritelock/tst_qreadwritelock.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/thread/qsemaphore/tst_qsemaphore.cpp b/tests/auto/corelib/thread/qsemaphore/tst_qsemaphore.cpp index d3537a459a..2901e8f6c9 100644 --- a/tests/auto/corelib/thread/qsemaphore/tst_qsemaphore.cpp +++ b/tests/auto/corelib/thread/qsemaphore/tst_qsemaphore.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/thread/qthread/tst_qthread.cpp b/tests/auto/corelib/thread/qthread/tst_qthread.cpp index 1f8a3e03d9..1afd913fe9 100644 --- a/tests/auto/corelib/thread/qthread/tst_qthread.cpp +++ b/tests/auto/corelib/thread/qthread/tst_qthread.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/thread/qthreadonce/qthreadonce.cpp b/tests/auto/corelib/thread/qthreadonce/qthreadonce.cpp index abd3d6bbef..c37823436a 100644 --- a/tests/auto/corelib/thread/qthreadonce/qthreadonce.cpp +++ b/tests/auto/corelib/thread/qthreadonce/qthreadonce.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/thread/qthreadonce/qthreadonce.h b/tests/auto/corelib/thread/qthreadonce/qthreadonce.h index c33625cbde..3c5a42e814 100644 --- a/tests/auto/corelib/thread/qthreadonce/qthreadonce.h +++ b/tests/auto/corelib/thread/qthreadonce/qthreadonce.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/thread/qthreadonce/tst_qthreadonce.cpp b/tests/auto/corelib/thread/qthreadonce/tst_qthreadonce.cpp index 21c716448b..81f57215cc 100644 --- a/tests/auto/corelib/thread/qthreadonce/tst_qthreadonce.cpp +++ b/tests/auto/corelib/thread/qthreadonce/tst_qthreadonce.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/thread/qthreadstorage/crashOnExit.cpp b/tests/auto/corelib/thread/qthreadstorage/crashOnExit.cpp index 92efcf3b3d..32a1fe5381 100644 --- a/tests/auto/corelib/thread/qthreadstorage/crashOnExit.cpp +++ b/tests/auto/corelib/thread/qthreadstorage/crashOnExit.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/thread/qthreadstorage/tst_qthreadstorage.cpp b/tests/auto/corelib/thread/qthreadstorage/tst_qthreadstorage.cpp index f5f92d151c..c74b85154f 100644 --- a/tests/auto/corelib/thread/qthreadstorage/tst_qthreadstorage.cpp +++ b/tests/auto/corelib/thread/qthreadstorage/tst_qthreadstorage.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/thread/qwaitcondition/tst_qwaitcondition.cpp b/tests/auto/corelib/thread/qwaitcondition/tst_qwaitcondition.cpp index 4237b41e57..6bb562e146 100644 --- a/tests/auto/corelib/thread/qwaitcondition/tst_qwaitcondition.cpp +++ b/tests/auto/corelib/thread/qwaitcondition/tst_qwaitcondition.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/thread/qwritelocker/tst_qwritelocker.cpp b/tests/auto/corelib/thread/qwritelocker/tst_qwritelocker.cpp index 6fb34bec86..f975351e32 100644 --- a/tests/auto/corelib/thread/qwritelocker/tst_qwritelocker.cpp +++ b/tests/auto/corelib/thread/qwritelocker/tst_qwritelocker.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qalgorithms/tst_qalgorithms.cpp b/tests/auto/corelib/tools/qalgorithms/tst_qalgorithms.cpp index 4702c6e7de..9fce79eef3 100644 --- a/tests/auto/corelib/tools/qalgorithms/tst_qalgorithms.cpp +++ b/tests/auto/corelib/tools/qalgorithms/tst_qalgorithms.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qbitarray/tst_qbitarray.cpp b/tests/auto/corelib/tools/qbitarray/tst_qbitarray.cpp index 2babc178a5..9ee006827f 100644 --- a/tests/auto/corelib/tools/qbitarray/tst_qbitarray.cpp +++ b/tests/auto/corelib/tools/qbitarray/tst_qbitarray.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qbytearray/tst_qbytearray.cpp b/tests/auto/corelib/tools/qbytearray/tst_qbytearray.cpp index 6d85b5a1f0..8767571f6c 100644 --- a/tests/auto/corelib/tools/qbytearray/tst_qbytearray.cpp +++ b/tests/auto/corelib/tools/qbytearray/tst_qbytearray.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qbytearraymatcher/tst_qbytearraymatcher.cpp b/tests/auto/corelib/tools/qbytearraymatcher/tst_qbytearraymatcher.cpp index cb153b4f8b..8bc827ef7f 100644 --- a/tests/auto/corelib/tools/qbytearraymatcher/tst_qbytearraymatcher.cpp +++ b/tests/auto/corelib/tools/qbytearraymatcher/tst_qbytearraymatcher.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qcache/tst_qcache.cpp b/tests/auto/corelib/tools/qcache/tst_qcache.cpp index dfc59eed9a..88b56612af 100644 --- a/tests/auto/corelib/tools/qcache/tst_qcache.cpp +++ b/tests/auto/corelib/tools/qcache/tst_qcache.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qchar/tst_qchar.cpp b/tests/auto/corelib/tools/qchar/tst_qchar.cpp index b7acbe63c5..c5fdeeb54a 100644 --- a/tests/auto/corelib/tools/qchar/tst_qchar.cpp +++ b/tests/auto/corelib/tools/qchar/tst_qchar.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qcontiguouscache/tst_qcontiguouscache.cpp b/tests/auto/corelib/tools/qcontiguouscache/tst_qcontiguouscache.cpp index c96b26bdfb..ad464dc40a 100644 --- a/tests/auto/corelib/tools/qcontiguouscache/tst_qcontiguouscache.cpp +++ b/tests/auto/corelib/tools/qcontiguouscache/tst_qcontiguouscache.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qcryptographichash/tst_qcryptographichash.cpp b/tests/auto/corelib/tools/qcryptographichash/tst_qcryptographichash.cpp index 8ca13ff244..83efdb1fe7 100644 --- a/tests/auto/corelib/tools/qcryptographichash/tst_qcryptographichash.cpp +++ b/tests/auto/corelib/tools/qcryptographichash/tst_qcryptographichash.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qdate/tst_qdate.cpp b/tests/auto/corelib/tools/qdate/tst_qdate.cpp index 936f82861f..7bb6de8c9f 100644 --- a/tests/auto/corelib/tools/qdate/tst_qdate.cpp +++ b/tests/auto/corelib/tools/qdate/tst_qdate.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qdatetime/tst_qdatetime.cpp b/tests/auto/corelib/tools/qdatetime/tst_qdatetime.cpp index 8e385dfbdb..4ef508e92b 100644 --- a/tests/auto/corelib/tools/qdatetime/tst_qdatetime.cpp +++ b/tests/auto/corelib/tools/qdatetime/tst_qdatetime.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qeasingcurve/tst_qeasingcurve.cpp b/tests/auto/corelib/tools/qeasingcurve/tst_qeasingcurve.cpp index 3044b4180d..a4a96c6df7 100644 --- a/tests/auto/corelib/tools/qeasingcurve/tst_qeasingcurve.cpp +++ b/tests/auto/corelib/tools/qeasingcurve/tst_qeasingcurve.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qelapsedtimer/tst_qelapsedtimer.cpp b/tests/auto/corelib/tools/qelapsedtimer/tst_qelapsedtimer.cpp index 40b2d30c02..0e2f61ab98 100644 --- a/tests/auto/corelib/tools/qelapsedtimer/tst_qelapsedtimer.cpp +++ b/tests/auto/corelib/tools/qelapsedtimer/tst_qelapsedtimer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qexplicitlyshareddatapointer/tst_qexplicitlyshareddatapointer.cpp b/tests/auto/corelib/tools/qexplicitlyshareddatapointer/tst_qexplicitlyshareddatapointer.cpp index a6c2f50e6d..a031bf811d 100644 --- a/tests/auto/corelib/tools/qexplicitlyshareddatapointer/tst_qexplicitlyshareddatapointer.cpp +++ b/tests/auto/corelib/tools/qexplicitlyshareddatapointer/tst_qexplicitlyshareddatapointer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qfreelist/tst_qfreelist.cpp b/tests/auto/corelib/tools/qfreelist/tst_qfreelist.cpp index 0c1bb655b4..a713fd4ca7 100644 --- a/tests/auto/corelib/tools/qfreelist/tst_qfreelist.cpp +++ b/tests/auto/corelib/tools/qfreelist/tst_qfreelist.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qhash/tst_qhash.cpp b/tests/auto/corelib/tools/qhash/tst_qhash.cpp index 6d82831214..6c941179d6 100644 --- a/tests/auto/corelib/tools/qhash/tst_qhash.cpp +++ b/tests/auto/corelib/tools/qhash/tst_qhash.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qline/tst_qline.cpp b/tests/auto/corelib/tools/qline/tst_qline.cpp index 94fd279842..0c4df63884 100644 --- a/tests/auto/corelib/tools/qline/tst_qline.cpp +++ b/tests/auto/corelib/tools/qline/tst_qline.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qlist/tst_qlist.cpp b/tests/auto/corelib/tools/qlist/tst_qlist.cpp index 24fa94ac6f..c1b71de2b7 100644 --- a/tests/auto/corelib/tools/qlist/tst_qlist.cpp +++ b/tests/auto/corelib/tools/qlist/tst_qlist.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qlocale/syslocaleapp/syslocaleapp.cpp b/tests/auto/corelib/tools/qlocale/syslocaleapp/syslocaleapp.cpp index 030fc4a728..2b6280fd2b 100644 --- a/tests/auto/corelib/tools/qlocale/syslocaleapp/syslocaleapp.cpp +++ b/tests/auto/corelib/tools/qlocale/syslocaleapp/syslocaleapp.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qlocale/tst_qlocale.cpp b/tests/auto/corelib/tools/qlocale/tst_qlocale.cpp index 8d4c15b5f9..a670cac03c 100644 --- a/tests/auto/corelib/tools/qlocale/tst_qlocale.cpp +++ b/tests/auto/corelib/tools/qlocale/tst_qlocale.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qmap/tst_qmap.cpp b/tests/auto/corelib/tools/qmap/tst_qmap.cpp index f24311adef..c48bcfb4b3 100644 --- a/tests/auto/corelib/tools/qmap/tst_qmap.cpp +++ b/tests/auto/corelib/tools/qmap/tst_qmap.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qmargins/tst_qmargins.cpp b/tests/auto/corelib/tools/qmargins/tst_qmargins.cpp index e8cb23b9b6..bdaf98cbf2 100644 --- a/tests/auto/corelib/tools/qmargins/tst_qmargins.cpp +++ b/tests/auto/corelib/tools/qmargins/tst_qmargins.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qpoint/tst_qpoint.cpp b/tests/auto/corelib/tools/qpoint/tst_qpoint.cpp index 1e32c3afea..acdfd20488 100644 --- a/tests/auto/corelib/tools/qpoint/tst_qpoint.cpp +++ b/tests/auto/corelib/tools/qpoint/tst_qpoint.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qqueue/tst_qqueue.cpp b/tests/auto/corelib/tools/qqueue/tst_qqueue.cpp index 483cf93918..5282d2964b 100644 --- a/tests/auto/corelib/tools/qqueue/tst_qqueue.cpp +++ b/tests/auto/corelib/tools/qqueue/tst_qqueue.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qrect/tst_qrect.cpp b/tests/auto/corelib/tools/qrect/tst_qrect.cpp index c1375c38f6..c2a9d05af6 100644 --- a/tests/auto/corelib/tools/qrect/tst_qrect.cpp +++ b/tests/auto/corelib/tools/qrect/tst_qrect.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qregexp/tst_qregexp.cpp b/tests/auto/corelib/tools/qregexp/tst_qregexp.cpp index b183f9f2c8..836c02dfca 100644 --- a/tests/auto/corelib/tools/qregexp/tst_qregexp.cpp +++ b/tests/auto/corelib/tools/qregexp/tst_qregexp.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qringbuffer/tst_qringbuffer.cpp b/tests/auto/corelib/tools/qringbuffer/tst_qringbuffer.cpp index ea90b2236d..67de98b867 100644 --- a/tests/auto/corelib/tools/qringbuffer/tst_qringbuffer.cpp +++ b/tests/auto/corelib/tools/qringbuffer/tst_qringbuffer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qscopedpointer/tst_qscopedpointer.cpp b/tests/auto/corelib/tools/qscopedpointer/tst_qscopedpointer.cpp index 186a6c2d5d..22f6cb7d32 100644 --- a/tests/auto/corelib/tools/qscopedpointer/tst_qscopedpointer.cpp +++ b/tests/auto/corelib/tools/qscopedpointer/tst_qscopedpointer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qscopedvaluerollback/tst_qscopedvaluerollback.cpp b/tests/auto/corelib/tools/qscopedvaluerollback/tst_qscopedvaluerollback.cpp index 457733b7a8..c0e036e232 100644 --- a/tests/auto/corelib/tools/qscopedvaluerollback/tst_qscopedvaluerollback.cpp +++ b/tests/auto/corelib/tools/qscopedvaluerollback/tst_qscopedvaluerollback.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qset/tst_qset.cpp b/tests/auto/corelib/tools/qset/tst_qset.cpp index 72350de3bc..4c0ecce5ec 100644 --- a/tests/auto/corelib/tools/qset/tst_qset.cpp +++ b/tests/auto/corelib/tools/qset/tst_qset.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qsharedpointer/externaltests.cpp b/tests/auto/corelib/tools/qsharedpointer/externaltests.cpp index e94b6d3fb9..c7ffe8cb7b 100644 --- a/tests/auto/corelib/tools/qsharedpointer/externaltests.cpp +++ b/tests/auto/corelib/tools/qsharedpointer/externaltests.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qsharedpointer/externaltests.h b/tests/auto/corelib/tools/qsharedpointer/externaltests.h index e07ba31928..6903433b70 100644 --- a/tests/auto/corelib/tools/qsharedpointer/externaltests.h +++ b/tests/auto/corelib/tools/qsharedpointer/externaltests.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qsharedpointer/forwarddeclaration.cpp b/tests/auto/corelib/tools/qsharedpointer/forwarddeclaration.cpp index f6ee9ad02a..b5d59de037 100644 --- a/tests/auto/corelib/tools/qsharedpointer/forwarddeclaration.cpp +++ b/tests/auto/corelib/tools/qsharedpointer/forwarddeclaration.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qsharedpointer/forwarddeclared.cpp b/tests/auto/corelib/tools/qsharedpointer/forwarddeclared.cpp index 5ff8893b81..17812216c0 100644 --- a/tests/auto/corelib/tools/qsharedpointer/forwarddeclared.cpp +++ b/tests/auto/corelib/tools/qsharedpointer/forwarddeclared.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qsharedpointer/forwarddeclared.h b/tests/auto/corelib/tools/qsharedpointer/forwarddeclared.h index 6afc293dde..cebbe94ef1 100644 --- a/tests/auto/corelib/tools/qsharedpointer/forwarddeclared.h +++ b/tests/auto/corelib/tools/qsharedpointer/forwarddeclared.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qsharedpointer/tst_qsharedpointer.cpp b/tests/auto/corelib/tools/qsharedpointer/tst_qsharedpointer.cpp index 649842f946..6e8358c841 100644 --- a/tests/auto/corelib/tools/qsharedpointer/tst_qsharedpointer.cpp +++ b/tests/auto/corelib/tools/qsharedpointer/tst_qsharedpointer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qsharedpointer/wrapper.cpp b/tests/auto/corelib/tools/qsharedpointer/wrapper.cpp index 018fc1c97b..889493ddb4 100644 --- a/tests/auto/corelib/tools/qsharedpointer/wrapper.cpp +++ b/tests/auto/corelib/tools/qsharedpointer/wrapper.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qsharedpointer/wrapper.h b/tests/auto/corelib/tools/qsharedpointer/wrapper.h index b25510f76d..66202a5a31 100644 --- a/tests/auto/corelib/tools/qsharedpointer/wrapper.h +++ b/tests/auto/corelib/tools/qsharedpointer/wrapper.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qsize/tst_qsize.cpp b/tests/auto/corelib/tools/qsize/tst_qsize.cpp index 5b6e4f85b1..bc40e2aa64 100644 --- a/tests/auto/corelib/tools/qsize/tst_qsize.cpp +++ b/tests/auto/corelib/tools/qsize/tst_qsize.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qsizef/tst_qsizef.cpp b/tests/auto/corelib/tools/qsizef/tst_qsizef.cpp index d2879612be..c74f4c3754 100644 --- a/tests/auto/corelib/tools/qsizef/tst_qsizef.cpp +++ b/tests/auto/corelib/tools/qsizef/tst_qsizef.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qstl/tst_qstl.cpp b/tests/auto/corelib/tools/qstl/tst_qstl.cpp index 43c318737f..f9e3549a4d 100644 --- a/tests/auto/corelib/tools/qstl/tst_qstl.cpp +++ b/tests/auto/corelib/tools/qstl/tst_qstl.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qstring/double_data.h b/tests/auto/corelib/tools/qstring/double_data.h index e7e654c442..8ffb981675 100644 --- a/tests/auto/corelib/tools/qstring/double_data.h +++ b/tests/auto/corelib/tools/qstring/double_data.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qstring/tst_qstring.cpp b/tests/auto/corelib/tools/qstring/tst_qstring.cpp index 0c0d756e48..ed525e3429 100644 --- a/tests/auto/corelib/tools/qstring/tst_qstring.cpp +++ b/tests/auto/corelib/tools/qstring/tst_qstring.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qstringbuilder/qstringbuilder1/stringbuilder.cpp b/tests/auto/corelib/tools/qstringbuilder/qstringbuilder1/stringbuilder.cpp index 4d453b0585..283e707c1b 100644 --- a/tests/auto/corelib/tools/qstringbuilder/qstringbuilder1/stringbuilder.cpp +++ b/tests/auto/corelib/tools/qstringbuilder/qstringbuilder1/stringbuilder.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qstringbuilder/qstringbuilder1/tst_qstringbuilder1.cpp b/tests/auto/corelib/tools/qstringbuilder/qstringbuilder1/tst_qstringbuilder1.cpp index 9a71955d62..fd92aafadd 100644 --- a/tests/auto/corelib/tools/qstringbuilder/qstringbuilder1/tst_qstringbuilder1.cpp +++ b/tests/auto/corelib/tools/qstringbuilder/qstringbuilder1/tst_qstringbuilder1.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qstringbuilder/qstringbuilder2/tst_qstringbuilder2.cpp b/tests/auto/corelib/tools/qstringbuilder/qstringbuilder2/tst_qstringbuilder2.cpp index 4979672647..6bdb607431 100644 --- a/tests/auto/corelib/tools/qstringbuilder/qstringbuilder2/tst_qstringbuilder2.cpp +++ b/tests/auto/corelib/tools/qstringbuilder/qstringbuilder2/tst_qstringbuilder2.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qstringbuilder/qstringbuilder3/tst_qstringbuilder3.cpp b/tests/auto/corelib/tools/qstringbuilder/qstringbuilder3/tst_qstringbuilder3.cpp index 2c6466ffe2..915c0d23ad 100644 --- a/tests/auto/corelib/tools/qstringbuilder/qstringbuilder3/tst_qstringbuilder3.cpp +++ b/tests/auto/corelib/tools/qstringbuilder/qstringbuilder3/tst_qstringbuilder3.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qstringbuilder/qstringbuilder4/tst_qstringbuilder4.cpp b/tests/auto/corelib/tools/qstringbuilder/qstringbuilder4/tst_qstringbuilder4.cpp index 7f709d1590..c9837a0489 100644 --- a/tests/auto/corelib/tools/qstringbuilder/qstringbuilder4/tst_qstringbuilder4.cpp +++ b/tests/auto/corelib/tools/qstringbuilder/qstringbuilder4/tst_qstringbuilder4.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qstringlist/tst_qstringlist.cpp b/tests/auto/corelib/tools/qstringlist/tst_qstringlist.cpp index b74e88753e..54ca9dd3a7 100644 --- a/tests/auto/corelib/tools/qstringlist/tst_qstringlist.cpp +++ b/tests/auto/corelib/tools/qstringlist/tst_qstringlist.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qstringmatcher/tst_qstringmatcher.cpp b/tests/auto/corelib/tools/qstringmatcher/tst_qstringmatcher.cpp index e8f36c4840..8b23fa6efd 100644 --- a/tests/auto/corelib/tools/qstringmatcher/tst_qstringmatcher.cpp +++ b/tests/auto/corelib/tools/qstringmatcher/tst_qstringmatcher.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qstringref/tst_qstringref.cpp b/tests/auto/corelib/tools/qstringref/tst_qstringref.cpp index 0b3d1bbea1..c0dc253167 100644 --- a/tests/auto/corelib/tools/qstringref/tst_qstringref.cpp +++ b/tests/auto/corelib/tools/qstringref/tst_qstringref.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qtextboundaryfinder/tst_qtextboundaryfinder.cpp b/tests/auto/corelib/tools/qtextboundaryfinder/tst_qtextboundaryfinder.cpp index a7abf6f589..100ddfcb12 100644 --- a/tests/auto/corelib/tools/qtextboundaryfinder/tst_qtextboundaryfinder.cpp +++ b/tests/auto/corelib/tools/qtextboundaryfinder/tst_qtextboundaryfinder.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qtime/tst_qtime.cpp b/tests/auto/corelib/tools/qtime/tst_qtime.cpp index 33513df9ac..bc03e74b41 100644 --- a/tests/auto/corelib/tools/qtime/tst_qtime.cpp +++ b/tests/auto/corelib/tools/qtime/tst_qtime.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp b/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp index 3f994b5928..db08bc5724 100644 --- a/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp +++ b/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qvarlengtharray/tst_qvarlengtharray.cpp b/tests/auto/corelib/tools/qvarlengtharray/tst_qvarlengtharray.cpp index 105b7f7314..cc2bbe2f1f 100644 --- a/tests/auto/corelib/tools/qvarlengtharray/tst_qvarlengtharray.cpp +++ b/tests/auto/corelib/tools/qvarlengtharray/tst_qvarlengtharray.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/tools/qvector/tst_qvector.cpp b/tests/auto/corelib/tools/qvector/tst_qvector.cpp index acf3756258..3c885f25fc 100644 --- a/tests/auto/corelib/tools/qvector/tst_qvector.cpp +++ b/tests/auto/corelib/tools/qvector/tst_qvector.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/xml/qxmlstream/qc14n.h b/tests/auto/corelib/xml/qxmlstream/qc14n.h index f7c17b5a7a..ed7bd3b323 100644 --- a/tests/auto/corelib/xml/qxmlstream/qc14n.h +++ b/tests/auto/corelib/xml/qxmlstream/qc14n.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/corelib/xml/qxmlstream/setupSuite.sh b/tests/auto/corelib/xml/qxmlstream/setupSuite.sh index 5d4947e5ae..ca85fa2884 100755 --- a/tests/auto/corelib/xml/qxmlstream/setupSuite.sh +++ b/tests/auto/corelib/xml/qxmlstream/setupSuite.sh @@ -1,7 +1,7 @@ #!/bin/sh ############################################################################# ## -## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ## All rights reserved. ## Contact: Nokia Corporation (qt-info@nokia.com) ## diff --git a/tests/auto/corelib/xml/qxmlstream/tst_qxmlstream.cpp b/tests/auto/corelib/xml/qxmlstream/tst_qxmlstream.cpp index 12ebbb72a6..8d3ddfa096 100644 --- a/tests/auto/corelib/xml/qxmlstream/tst_qxmlstream.cpp +++ b/tests/auto/corelib/xml/qxmlstream/tst_qxmlstream.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/dbus/qdbusabstractadaptor/myobject.h b/tests/auto/dbus/qdbusabstractadaptor/myobject.h index 2aaaa7ecc5..a5dc47376d 100644 --- a/tests/auto/dbus/qdbusabstractadaptor/myobject.h +++ b/tests/auto/dbus/qdbusabstractadaptor/myobject.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/dbus/qdbusabstractadaptor/qmyserver/qmyserver.cpp b/tests/auto/dbus/qdbusabstractadaptor/qmyserver/qmyserver.cpp index a06232c4bd..ed027ae70c 100644 --- a/tests/auto/dbus/qdbusabstractadaptor/qmyserver/qmyserver.cpp +++ b/tests/auto/dbus/qdbusabstractadaptor/qmyserver/qmyserver.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/dbus/qdbusabstractadaptor/tst_qdbusabstractadaptor.cpp b/tests/auto/dbus/qdbusabstractadaptor/tst_qdbusabstractadaptor.cpp index ff684ff522..cc55a942c5 100644 --- a/tests/auto/dbus/qdbusabstractadaptor/tst_qdbusabstractadaptor.cpp +++ b/tests/auto/dbus/qdbusabstractadaptor/tst_qdbusabstractadaptor.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/dbus/qdbusabstractinterface/interface.cpp b/tests/auto/dbus/qdbusabstractinterface/interface.cpp index 849db93084..14a9db543c 100644 --- a/tests/auto/dbus/qdbusabstractinterface/interface.cpp +++ b/tests/auto/dbus/qdbusabstractinterface/interface.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/dbus/qdbusabstractinterface/interface.h b/tests/auto/dbus/qdbusabstractinterface/interface.h index 0fb15fe6c5..1c1b1bdcb1 100644 --- a/tests/auto/dbus/qdbusabstractinterface/interface.h +++ b/tests/auto/dbus/qdbusabstractinterface/interface.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/dbus/qdbusabstractinterface/pinger.cpp b/tests/auto/dbus/qdbusabstractinterface/pinger.cpp index 24113fbb1b..1bd767c8fc 100644 --- a/tests/auto/dbus/qdbusabstractinterface/pinger.cpp +++ b/tests/auto/dbus/qdbusabstractinterface/pinger.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** @@ -43,7 +43,7 @@ * This file was generated by qdbusxml2cpp version 0.7 * Command line was: qdbusxml2cpp -i interface.h -p pinger com.trolltech.QtDBus.Pinger.xml * - * qdbusxml2cpp is Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). + * qdbusxml2cpp is Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). * * This is an auto-generated file. * This file may have been hand-edited. Look for HAND-EDIT comments diff --git a/tests/auto/dbus/qdbusabstractinterface/pinger.h b/tests/auto/dbus/qdbusabstractinterface/pinger.h index 739a14229f..e1acd41021 100644 --- a/tests/auto/dbus/qdbusabstractinterface/pinger.h +++ b/tests/auto/dbus/qdbusabstractinterface/pinger.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** @@ -43,7 +43,7 @@ * This file was generated by qdbusxml2cpp version 0.7 * Command line was: qdbusxml2cpp -i interface.h -p pinger com.trolltech.QtDBus.Pinger.xml * - * qdbusxml2cpp is Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). + * qdbusxml2cpp is Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). * * This is an auto-generated file. * Do not edit! All changes made to it will be lost. diff --git a/tests/auto/dbus/qdbusabstractinterface/qpinger/qpinger.cpp b/tests/auto/dbus/qdbusabstractinterface/qpinger/qpinger.cpp index 393d6470c8..489bd4afdb 100644 --- a/tests/auto/dbus/qdbusabstractinterface/qpinger/qpinger.cpp +++ b/tests/auto/dbus/qdbusabstractinterface/qpinger/qpinger.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/dbus/qdbusabstractinterface/tst_qdbusabstractinterface.cpp b/tests/auto/dbus/qdbusabstractinterface/tst_qdbusabstractinterface.cpp index 994df058fa..84d2051f29 100644 --- a/tests/auto/dbus/qdbusabstractinterface/tst_qdbusabstractinterface.cpp +++ b/tests/auto/dbus/qdbusabstractinterface/tst_qdbusabstractinterface.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/dbus/qdbusconnection/tst_qdbusconnection.cpp b/tests/auto/dbus/qdbusconnection/tst_qdbusconnection.cpp index f8f632d667..f6b9edcff1 100644 --- a/tests/auto/dbus/qdbusconnection/tst_qdbusconnection.cpp +++ b/tests/auto/dbus/qdbusconnection/tst_qdbusconnection.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/dbus/qdbusconnection_no_bus/tst_qdbusconnection_no_bus.cpp b/tests/auto/dbus/qdbusconnection_no_bus/tst_qdbusconnection_no_bus.cpp index acd27386f5..a678ddd269 100644 --- a/tests/auto/dbus/qdbusconnection_no_bus/tst_qdbusconnection_no_bus.cpp +++ b/tests/auto/dbus/qdbusconnection_no_bus/tst_qdbusconnection_no_bus.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/dbus/qdbuscontext/tst_qdbuscontext.cpp b/tests/auto/dbus/qdbuscontext/tst_qdbuscontext.cpp index 8041708151..de29f08ef8 100644 --- a/tests/auto/dbus/qdbuscontext/tst_qdbuscontext.cpp +++ b/tests/auto/dbus/qdbuscontext/tst_qdbuscontext.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/dbus/qdbusinterface/myobject.h b/tests/auto/dbus/qdbusinterface/myobject.h index 3959823a77..68f5137a4b 100644 --- a/tests/auto/dbus/qdbusinterface/myobject.h +++ b/tests/auto/dbus/qdbusinterface/myobject.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/dbus/qdbusinterface/qmyserver/qmyserver.cpp b/tests/auto/dbus/qdbusinterface/qmyserver/qmyserver.cpp index dd15012222..cfd183c91e 100644 --- a/tests/auto/dbus/qdbusinterface/qmyserver/qmyserver.cpp +++ b/tests/auto/dbus/qdbusinterface/qmyserver/qmyserver.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/dbus/qdbusinterface/tst_qdbusinterface.cpp b/tests/auto/dbus/qdbusinterface/tst_qdbusinterface.cpp index 9156818158..dc8363db42 100644 --- a/tests/auto/dbus/qdbusinterface/tst_qdbusinterface.cpp +++ b/tests/auto/dbus/qdbusinterface/tst_qdbusinterface.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/dbus/qdbuslocalcalls/tst_qdbuslocalcalls.cpp b/tests/auto/dbus/qdbuslocalcalls/tst_qdbuslocalcalls.cpp index 56431b8716..3d33e92f1f 100644 --- a/tests/auto/dbus/qdbuslocalcalls/tst_qdbuslocalcalls.cpp +++ b/tests/auto/dbus/qdbuslocalcalls/tst_qdbuslocalcalls.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/dbus/qdbusmarshall/common.h b/tests/auto/dbus/qdbusmarshall/common.h index 9a102f0f75..f41cacc953 100644 --- a/tests/auto/dbus/qdbusmarshall/common.h +++ b/tests/auto/dbus/qdbusmarshall/common.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/dbus/qdbusmarshall/qpong/qpong.cpp b/tests/auto/dbus/qdbusmarshall/qpong/qpong.cpp index fce6f59344..1d64e45be5 100644 --- a/tests/auto/dbus/qdbusmarshall/qpong/qpong.cpp +++ b/tests/auto/dbus/qdbusmarshall/qpong/qpong.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/dbus/qdbusmarshall/tst_qdbusmarshall.cpp b/tests/auto/dbus/qdbusmarshall/tst_qdbusmarshall.cpp index 1886c8fe5a..b302be85ad 100644 --- a/tests/auto/dbus/qdbusmarshall/tst_qdbusmarshall.cpp +++ b/tests/auto/dbus/qdbusmarshall/tst_qdbusmarshall.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/dbus/qdbusmetaobject/tst_qdbusmetaobject.cpp b/tests/auto/dbus/qdbusmetaobject/tst_qdbusmetaobject.cpp index 7711e819a0..8de6ad1ce5 100644 --- a/tests/auto/dbus/qdbusmetaobject/tst_qdbusmetaobject.cpp +++ b/tests/auto/dbus/qdbusmetaobject/tst_qdbusmetaobject.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/dbus/qdbusmetatype/tst_qdbusmetatype.cpp b/tests/auto/dbus/qdbusmetatype/tst_qdbusmetatype.cpp index 7e1f651a1b..9055fdeaac 100644 --- a/tests/auto/dbus/qdbusmetatype/tst_qdbusmetatype.cpp +++ b/tests/auto/dbus/qdbusmetatype/tst_qdbusmetatype.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/dbus/qdbuspendingcall/tst_qdbuspendingcall.cpp b/tests/auto/dbus/qdbuspendingcall/tst_qdbuspendingcall.cpp index face4742b1..447532b427 100644 --- a/tests/auto/dbus/qdbuspendingcall/tst_qdbuspendingcall.cpp +++ b/tests/auto/dbus/qdbuspendingcall/tst_qdbuspendingcall.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/dbus/qdbuspendingreply/tst_qdbuspendingreply.cpp b/tests/auto/dbus/qdbuspendingreply/tst_qdbuspendingreply.cpp index 9eb69392c4..347c164eda 100644 --- a/tests/auto/dbus/qdbuspendingreply/tst_qdbuspendingreply.cpp +++ b/tests/auto/dbus/qdbuspendingreply/tst_qdbuspendingreply.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/dbus/qdbusreply/tst_qdbusreply.cpp b/tests/auto/dbus/qdbusreply/tst_qdbusreply.cpp index 8d18657c56..ffa7275c6a 100644 --- a/tests/auto/dbus/qdbusreply/tst_qdbusreply.cpp +++ b/tests/auto/dbus/qdbusreply/tst_qdbusreply.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/dbus/qdbusservicewatcher/tst_qdbusservicewatcher.cpp b/tests/auto/dbus/qdbusservicewatcher/tst_qdbusservicewatcher.cpp index 99aeefa8ee..a07d21c4c6 100644 --- a/tests/auto/dbus/qdbusservicewatcher/tst_qdbusservicewatcher.cpp +++ b/tests/auto/dbus/qdbusservicewatcher/tst_qdbusservicewatcher.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/dbus/qdbusthreading/tst_qdbusthreading.cpp b/tests/auto/dbus/qdbusthreading/tst_qdbusthreading.cpp index 32ede6c97f..4f88f223d3 100644 --- a/tests/auto/dbus/qdbusthreading/tst_qdbusthreading.cpp +++ b/tests/auto/dbus/qdbusthreading/tst_qdbusthreading.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/dbus/qdbustype/tst_qdbustype.cpp b/tests/auto/dbus/qdbustype/tst_qdbustype.cpp index 5c46b4684a..453ff629b8 100644 --- a/tests/auto/dbus/qdbustype/tst_qdbustype.cpp +++ b/tests/auto/dbus/qdbustype/tst_qdbustype.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/dbus/qdbusxmlparser/tst_qdbusxmlparser.cpp b/tests/auto/dbus/qdbusxmlparser/tst_qdbusxmlparser.cpp index e0f03307f3..42a3fd19cc 100644 --- a/tests/auto/dbus/qdbusxmlparser/tst_qdbusxmlparser.cpp +++ b/tests/auto/dbus/qdbusxmlparser/tst_qdbusxmlparser.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/image/qicoimageformat/tst_qicoimageformat.cpp b/tests/auto/gui/image/qicoimageformat/tst_qicoimageformat.cpp index a6fc7a8212..40cd9b848a 100644 --- a/tests/auto/gui/image/qicoimageformat/tst_qicoimageformat.cpp +++ b/tests/auto/gui/image/qicoimageformat/tst_qicoimageformat.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/image/qicon/tst_qicon.cpp b/tests/auto/gui/image/qicon/tst_qicon.cpp index 39a68943df..55b0c81529 100644 --- a/tests/auto/gui/image/qicon/tst_qicon.cpp +++ b/tests/auto/gui/image/qicon/tst_qicon.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/image/qimage/tst_qimage.cpp b/tests/auto/gui/image/qimage/tst_qimage.cpp index be34cf51cf..479acea3fd 100644 --- a/tests/auto/gui/image/qimage/tst_qimage.cpp +++ b/tests/auto/gui/image/qimage/tst_qimage.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/image/qimageiohandler/tst_qimageiohandler.cpp b/tests/auto/gui/image/qimageiohandler/tst_qimageiohandler.cpp index 1b2e4fab0e..acf4e4f4ea 100644 --- a/tests/auto/gui/image/qimageiohandler/tst_qimageiohandler.cpp +++ b/tests/auto/gui/image/qimageiohandler/tst_qimageiohandler.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/image/qimagereader/tst_qimagereader.cpp b/tests/auto/gui/image/qimagereader/tst_qimagereader.cpp index d0be14c65d..7504ab3466 100644 --- a/tests/auto/gui/image/qimagereader/tst_qimagereader.cpp +++ b/tests/auto/gui/image/qimagereader/tst_qimagereader.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/image/qimagewriter/tst_qimagewriter.cpp b/tests/auto/gui/image/qimagewriter/tst_qimagewriter.cpp index 8a1f79e91a..9acf210eeb 100644 --- a/tests/auto/gui/image/qimagewriter/tst_qimagewriter.cpp +++ b/tests/auto/gui/image/qimagewriter/tst_qimagewriter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/image/qmovie/tst_qmovie.cpp b/tests/auto/gui/image/qmovie/tst_qmovie.cpp index a94e39a10c..d0c5e91f57 100644 --- a/tests/auto/gui/image/qmovie/tst_qmovie.cpp +++ b/tests/auto/gui/image/qmovie/tst_qmovie.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/image/qpicture/tst_qpicture.cpp b/tests/auto/gui/image/qpicture/tst_qpicture.cpp index ea7e7c3e49..d4dc254dcb 100644 --- a/tests/auto/gui/image/qpicture/tst_qpicture.cpp +++ b/tests/auto/gui/image/qpicture/tst_qpicture.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/image/qpixmap/tst_qpixmap.cpp b/tests/auto/gui/image/qpixmap/tst_qpixmap.cpp index 8d575c90c0..7ae680dbdb 100644 --- a/tests/auto/gui/image/qpixmap/tst_qpixmap.cpp +++ b/tests/auto/gui/image/qpixmap/tst_qpixmap.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/image/qpixmapcache/tst_qpixmapcache.cpp b/tests/auto/gui/image/qpixmapcache/tst_qpixmapcache.cpp index cd3c357d79..c79e42f908 100644 --- a/tests/auto/gui/image/qpixmapcache/tst_qpixmapcache.cpp +++ b/tests/auto/gui/image/qpixmapcache/tst_qpixmapcache.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/image/qpixmapfilter/tst_qpixmapfilter.cpp b/tests/auto/gui/image/qpixmapfilter/tst_qpixmapfilter.cpp index c89e09ea97..91ba2332d1 100644 --- a/tests/auto/gui/image/qpixmapfilter/tst_qpixmapfilter.cpp +++ b/tests/auto/gui/image/qpixmapfilter/tst_qpixmapfilter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/image/qvolatileimage/tst_qvolatileimage.cpp b/tests/auto/gui/image/qvolatileimage/tst_qvolatileimage.cpp index 053160fc7e..158ccc5770 100644 --- a/tests/auto/gui/image/qvolatileimage/tst_qvolatileimage.cpp +++ b/tests/auto/gui/image/qvolatileimage/tst_qvolatileimage.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/kernel/qclipboard/copier/main.cpp b/tests/auto/gui/kernel/qclipboard/copier/main.cpp index 7cc4ee08d5..7e3efa03ba 100644 --- a/tests/auto/gui/kernel/qclipboard/copier/main.cpp +++ b/tests/auto/gui/kernel/qclipboard/copier/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/kernel/qclipboard/paster/main.cpp b/tests/auto/gui/kernel/qclipboard/paster/main.cpp index e4f7864061..3ca4886f0b 100644 --- a/tests/auto/gui/kernel/qclipboard/paster/main.cpp +++ b/tests/auto/gui/kernel/qclipboard/paster/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/kernel/qclipboard/tst_qclipboard.cpp b/tests/auto/gui/kernel/qclipboard/tst_qclipboard.cpp index e4c415be1c..fcba0958e7 100644 --- a/tests/auto/gui/kernel/qclipboard/tst_qclipboard.cpp +++ b/tests/auto/gui/kernel/qclipboard/tst_qclipboard.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/kernel/qdrag/tst_qdrag.cpp b/tests/auto/gui/kernel/qdrag/tst_qdrag.cpp index 8723c6614b..47ff1b05f1 100644 --- a/tests/auto/gui/kernel/qdrag/tst_qdrag.cpp +++ b/tests/auto/gui/kernel/qdrag/tst_qdrag.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/kernel/qevent/tst_qevent.cpp b/tests/auto/gui/kernel/qevent/tst_qevent.cpp index 7e39c11e2c..f0771330f7 100644 --- a/tests/auto/gui/kernel/qevent/tst_qevent.cpp +++ b/tests/auto/gui/kernel/qevent/tst_qevent.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/kernel/qfileopenevent/qfileopeneventexternal/qfileopeneventexternal.cpp b/tests/auto/gui/kernel/qfileopenevent/qfileopeneventexternal/qfileopeneventexternal.cpp index 5d1a6a390f..0c0bff551b 100644 --- a/tests/auto/gui/kernel/qfileopenevent/qfileopeneventexternal/qfileopeneventexternal.cpp +++ b/tests/auto/gui/kernel/qfileopenevent/qfileopeneventexternal/qfileopeneventexternal.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/kernel/qfileopenevent/test/tst_qfileopenevent.cpp b/tests/auto/gui/kernel/qfileopenevent/test/tst_qfileopenevent.cpp index 00008a80f0..1bc183b506 100644 --- a/tests/auto/gui/kernel/qfileopenevent/test/tst_qfileopenevent.cpp +++ b/tests/auto/gui/kernel/qfileopenevent/test/tst_qfileopenevent.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/kernel/qguimetatype/tst_qguimetatype.cpp b/tests/auto/gui/kernel/qguimetatype/tst_qguimetatype.cpp index 79eebbc828..d0f12ea945 100644 --- a/tests/auto/gui/kernel/qguimetatype/tst_qguimetatype.cpp +++ b/tests/auto/gui/kernel/qguimetatype/tst_qguimetatype.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/kernel/qguivariant/tst_qguivariant.cpp b/tests/auto/gui/kernel/qguivariant/tst_qguivariant.cpp index 988580b874..56a1fb0d8f 100644 --- a/tests/auto/gui/kernel/qguivariant/tst_qguivariant.cpp +++ b/tests/auto/gui/kernel/qguivariant/tst_qguivariant.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/kernel/qinputpanel/tst_qinputpanel.cpp b/tests/auto/gui/kernel/qinputpanel/tst_qinputpanel.cpp index 26bde8aa19..dfce0828da 100644 --- a/tests/auto/gui/kernel/qinputpanel/tst_qinputpanel.cpp +++ b/tests/auto/gui/kernel/qinputpanel/tst_qinputpanel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/kernel/qkeysequence/tst_qkeysequence.cpp b/tests/auto/gui/kernel/qkeysequence/tst_qkeysequence.cpp index f8eae2067e..e5820e12fe 100644 --- a/tests/auto/gui/kernel/qkeysequence/tst_qkeysequence.cpp +++ b/tests/auto/gui/kernel/qkeysequence/tst_qkeysequence.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/kernel/qmouseevent/tst_qmouseevent.cpp b/tests/auto/gui/kernel/qmouseevent/tst_qmouseevent.cpp index bbfaf4c408..aca3ffc9cb 100644 --- a/tests/auto/gui/kernel/qmouseevent/tst_qmouseevent.cpp +++ b/tests/auto/gui/kernel/qmouseevent/tst_qmouseevent.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/kernel/qmouseevent_modal/tst_qmouseevent_modal.cpp b/tests/auto/gui/kernel/qmouseevent_modal/tst_qmouseevent_modal.cpp index 4dc8b58366..ce006eaa99 100644 --- a/tests/auto/gui/kernel/qmouseevent_modal/tst_qmouseevent_modal.cpp +++ b/tests/auto/gui/kernel/qmouseevent_modal/tst_qmouseevent_modal.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/kernel/qpalette/tst_qpalette.cpp b/tests/auto/gui/kernel/qpalette/tst_qpalette.cpp index 053e6d0a7e..5474c4097d 100644 --- a/tests/auto/gui/kernel/qpalette/tst_qpalette.cpp +++ b/tests/auto/gui/kernel/qpalette/tst_qpalette.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/kernel/qscreen/tst_qscreen.cpp b/tests/auto/gui/kernel/qscreen/tst_qscreen.cpp index 1d00032b56..a168203bdd 100644 --- a/tests/auto/gui/kernel/qscreen/tst_qscreen.cpp +++ b/tests/auto/gui/kernel/qscreen/tst_qscreen.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/kernel/qshortcut/tst_qshortcut.cpp b/tests/auto/gui/kernel/qshortcut/tst_qshortcut.cpp index af472c6c8e..c4b9a5df99 100644 --- a/tests/auto/gui/kernel/qshortcut/tst_qshortcut.cpp +++ b/tests/auto/gui/kernel/qshortcut/tst_qshortcut.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/kernel/qtouchevent/tst_qtouchevent.cpp b/tests/auto/gui/kernel/qtouchevent/tst_qtouchevent.cpp index 40e627d3a5..95e644987f 100644 --- a/tests/auto/gui/kernel/qtouchevent/tst_qtouchevent.cpp +++ b/tests/auto/gui/kernel/qtouchevent/tst_qtouchevent.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/kernel/qwindow/tst_qwindow.cpp b/tests/auto/gui/kernel/qwindow/tst_qwindow.cpp index 13b196c039..9244c86ca5 100644 --- a/tests/auto/gui/kernel/qwindow/tst_qwindow.cpp +++ b/tests/auto/gui/kernel/qwindow/tst_qwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/math3d/qmatrixnxn/tst_qmatrixnxn.cpp b/tests/auto/gui/math3d/qmatrixnxn/tst_qmatrixnxn.cpp index 98a559af85..2c006b224e 100644 --- a/tests/auto/gui/math3d/qmatrixnxn/tst_qmatrixnxn.cpp +++ b/tests/auto/gui/math3d/qmatrixnxn/tst_qmatrixnxn.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/math3d/qquaternion/tst_qquaternion.cpp b/tests/auto/gui/math3d/qquaternion/tst_qquaternion.cpp index 7bc50efeeb..77bd22a676 100644 --- a/tests/auto/gui/math3d/qquaternion/tst_qquaternion.cpp +++ b/tests/auto/gui/math3d/qquaternion/tst_qquaternion.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/math3d/qvectornd/tst_qvectornd.cpp b/tests/auto/gui/math3d/qvectornd/tst_qvectornd.cpp index 37c1949dc2..1ebad41466 100644 --- a/tests/auto/gui/math3d/qvectornd/tst_qvectornd.cpp +++ b/tests/auto/gui/math3d/qvectornd/tst_qvectornd.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/painting/qbrush/tst_qbrush.cpp b/tests/auto/gui/painting/qbrush/tst_qbrush.cpp index e559556e58..e84cbb5c19 100644 --- a/tests/auto/gui/painting/qbrush/tst_qbrush.cpp +++ b/tests/auto/gui/painting/qbrush/tst_qbrush.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/painting/qcolor/tst_qcolor.cpp b/tests/auto/gui/painting/qcolor/tst_qcolor.cpp index 49b1bfe661..00a393562a 100644 --- a/tests/auto/gui/painting/qcolor/tst_qcolor.cpp +++ b/tests/auto/gui/painting/qcolor/tst_qcolor.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/painting/qpaintengine/tst_qpaintengine.cpp b/tests/auto/gui/painting/qpaintengine/tst_qpaintengine.cpp index f2e6021818..07ec8458af 100644 --- a/tests/auto/gui/painting/qpaintengine/tst_qpaintengine.cpp +++ b/tests/auto/gui/painting/qpaintengine/tst_qpaintengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/painting/qpainter/tst_qpainter.cpp b/tests/auto/gui/painting/qpainter/tst_qpainter.cpp index 8451ce0696..d6511d4475 100644 --- a/tests/auto/gui/painting/qpainter/tst_qpainter.cpp +++ b/tests/auto/gui/painting/qpainter/tst_qpainter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/painting/qpainter/utils/createImages/main.cpp b/tests/auto/gui/painting/qpainter/utils/createImages/main.cpp index a5a948a8e1..4603d9d613 100644 --- a/tests/auto/gui/painting/qpainter/utils/createImages/main.cpp +++ b/tests/auto/gui/painting/qpainter/utils/createImages/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/painting/qpainterpath/tst_qpainterpath.cpp b/tests/auto/gui/painting/qpainterpath/tst_qpainterpath.cpp index c54ffb358e..5d48113aa8 100644 --- a/tests/auto/gui/painting/qpainterpath/tst_qpainterpath.cpp +++ b/tests/auto/gui/painting/qpainterpath/tst_qpainterpath.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/painting/qpainterpathstroker/tst_qpainterpathstroker.cpp b/tests/auto/gui/painting/qpainterpathstroker/tst_qpainterpathstroker.cpp index b5d6c231bd..371a142cc3 100644 --- a/tests/auto/gui/painting/qpainterpathstroker/tst_qpainterpathstroker.cpp +++ b/tests/auto/gui/painting/qpainterpathstroker/tst_qpainterpathstroker.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/painting/qpathclipper/pathcompare.h b/tests/auto/gui/painting/qpathclipper/pathcompare.h index d80c189665..bb4c00222a 100644 --- a/tests/auto/gui/painting/qpathclipper/pathcompare.h +++ b/tests/auto/gui/painting/qpathclipper/pathcompare.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/painting/qpathclipper/paths.cpp b/tests/auto/gui/painting/qpathclipper/paths.cpp index 950c34614e..f4e63a200f 100644 --- a/tests/auto/gui/painting/qpathclipper/paths.cpp +++ b/tests/auto/gui/painting/qpathclipper/paths.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/painting/qpathclipper/paths.h b/tests/auto/gui/painting/qpathclipper/paths.h index 89ef785857..e270574304 100644 --- a/tests/auto/gui/painting/qpathclipper/paths.h +++ b/tests/auto/gui/painting/qpathclipper/paths.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/painting/qpathclipper/tst_qpathclipper.cpp b/tests/auto/gui/painting/qpathclipper/tst_qpathclipper.cpp index 1fa279dbc7..1e6bb20614 100644 --- a/tests/auto/gui/painting/qpathclipper/tst_qpathclipper.cpp +++ b/tests/auto/gui/painting/qpathclipper/tst_qpathclipper.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/painting/qpen/tst_qpen.cpp b/tests/auto/gui/painting/qpen/tst_qpen.cpp index 832e9c2daa..3da7294e9a 100644 --- a/tests/auto/gui/painting/qpen/tst_qpen.cpp +++ b/tests/auto/gui/painting/qpen/tst_qpen.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/painting/qpolygon/tst_qpolygon.cpp b/tests/auto/gui/painting/qpolygon/tst_qpolygon.cpp index f69e058183..46a8f80f23 100644 --- a/tests/auto/gui/painting/qpolygon/tst_qpolygon.cpp +++ b/tests/auto/gui/painting/qpolygon/tst_qpolygon.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/painting/qprinter/tst_qprinter.cpp b/tests/auto/gui/painting/qprinter/tst_qprinter.cpp index 2bb3cbeeef..dd33030d7e 100644 --- a/tests/auto/gui/painting/qprinter/tst_qprinter.cpp +++ b/tests/auto/gui/painting/qprinter/tst_qprinter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/painting/qprinterinfo/tst_qprinterinfo.cpp b/tests/auto/gui/painting/qprinterinfo/tst_qprinterinfo.cpp index 04d148cdc4..6ffdc63e6c 100644 --- a/tests/auto/gui/painting/qprinterinfo/tst_qprinterinfo.cpp +++ b/tests/auto/gui/painting/qprinterinfo/tst_qprinterinfo.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/painting/qregion/tst_qregion.cpp b/tests/auto/gui/painting/qregion/tst_qregion.cpp index 299710f56a..c9ad8e00ab 100644 --- a/tests/auto/gui/painting/qregion/tst_qregion.cpp +++ b/tests/auto/gui/painting/qregion/tst_qregion.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/painting/qtransform/tst_qtransform.cpp b/tests/auto/gui/painting/qtransform/tst_qtransform.cpp index 6d0b88dcd7..b4e1b8ffb8 100644 --- a/tests/auto/gui/painting/qtransform/tst_qtransform.cpp +++ b/tests/auto/gui/painting/qtransform/tst_qtransform.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/painting/qwmatrix/tst_qwmatrix.cpp b/tests/auto/gui/painting/qwmatrix/tst_qwmatrix.cpp index 7a5c96ab6b..725c374708 100644 --- a/tests/auto/gui/painting/qwmatrix/tst_qwmatrix.cpp +++ b/tests/auto/gui/painting/qwmatrix/tst_qwmatrix.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/qopengl/tst_qopengl.cpp b/tests/auto/gui/qopengl/tst_qopengl.cpp index d6c587b65e..357b7359e4 100644 --- a/tests/auto/gui/qopengl/tst_qopengl.cpp +++ b/tests/auto/gui/qopengl/tst_qopengl.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/text/qabstracttextdocumentlayout/tst_qabstracttextdocumentlayout.cpp b/tests/auto/gui/text/qabstracttextdocumentlayout/tst_qabstracttextdocumentlayout.cpp index b296a56b38..d6fff734c0 100644 --- a/tests/auto/gui/text/qabstracttextdocumentlayout/tst_qabstracttextdocumentlayout.cpp +++ b/tests/auto/gui/text/qabstracttextdocumentlayout/tst_qabstracttextdocumentlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/text/qcssparser/tst_qcssparser.cpp b/tests/auto/gui/text/qcssparser/tst_qcssparser.cpp index 29dcfcd542..4f1deec996 100644 --- a/tests/auto/gui/text/qcssparser/tst_qcssparser.cpp +++ b/tests/auto/gui/text/qcssparser/tst_qcssparser.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/text/qfont/tst_qfont.cpp b/tests/auto/gui/text/qfont/tst_qfont.cpp index 406bdf950e..c3d41a27bf 100644 --- a/tests/auto/gui/text/qfont/tst_qfont.cpp +++ b/tests/auto/gui/text/qfont/tst_qfont.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/text/qfontdatabase/tst_qfontdatabase.cpp b/tests/auto/gui/text/qfontdatabase/tst_qfontdatabase.cpp index bf84b91024..e7bbfbceff 100644 --- a/tests/auto/gui/text/qfontdatabase/tst_qfontdatabase.cpp +++ b/tests/auto/gui/text/qfontdatabase/tst_qfontdatabase.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/text/qfontmetrics/tst_qfontmetrics.cpp b/tests/auto/gui/text/qfontmetrics/tst_qfontmetrics.cpp index a4bc8458b3..bc858bf38a 100644 --- a/tests/auto/gui/text/qfontmetrics/tst_qfontmetrics.cpp +++ b/tests/auto/gui/text/qfontmetrics/tst_qfontmetrics.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/text/qglyphrun/tst_qglyphrun.cpp b/tests/auto/gui/text/qglyphrun/tst_qglyphrun.cpp index 256ea20a1c..a4e5c63e6d 100644 --- a/tests/auto/gui/text/qglyphrun/tst_qglyphrun.cpp +++ b/tests/auto/gui/text/qglyphrun/tst_qglyphrun.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/text/qrawfont/tst_qrawfont.cpp b/tests/auto/gui/text/qrawfont/tst_qrawfont.cpp index f922ba3572..1bb18176f5 100644 --- a/tests/auto/gui/text/qrawfont/tst_qrawfont.cpp +++ b/tests/auto/gui/text/qrawfont/tst_qrawfont.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/text/qstatictext/tst_qstatictext.cpp b/tests/auto/gui/text/qstatictext/tst_qstatictext.cpp index 05854440c6..b0a66eab07 100644 --- a/tests/auto/gui/text/qstatictext/tst_qstatictext.cpp +++ b/tests/auto/gui/text/qstatictext/tst_qstatictext.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/text/qsyntaxhighlighter/tst_qsyntaxhighlighter.cpp b/tests/auto/gui/text/qsyntaxhighlighter/tst_qsyntaxhighlighter.cpp index bbc60df9d4..0358b5d471 100644 --- a/tests/auto/gui/text/qsyntaxhighlighter/tst_qsyntaxhighlighter.cpp +++ b/tests/auto/gui/text/qsyntaxhighlighter/tst_qsyntaxhighlighter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/text/qtextblock/tst_qtextblock.cpp b/tests/auto/gui/text/qtextblock/tst_qtextblock.cpp index 190262f4ef..9489a2e90e 100644 --- a/tests/auto/gui/text/qtextblock/tst_qtextblock.cpp +++ b/tests/auto/gui/text/qtextblock/tst_qtextblock.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/text/qtextcursor/tst_qtextcursor.cpp b/tests/auto/gui/text/qtextcursor/tst_qtextcursor.cpp index 9667df73bb..ca0feec2bf 100644 --- a/tests/auto/gui/text/qtextcursor/tst_qtextcursor.cpp +++ b/tests/auto/gui/text/qtextcursor/tst_qtextcursor.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/text/qtextdocument/common.h b/tests/auto/gui/text/qtextdocument/common.h index 1eaefdbfbe..081c71ea13 100644 --- a/tests/auto/gui/text/qtextdocument/common.h +++ b/tests/auto/gui/text/qtextdocument/common.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/text/qtextdocument/tst_qtextdocument.cpp b/tests/auto/gui/text/qtextdocument/tst_qtextdocument.cpp index a9295ffbdb..a84024ceab 100644 --- a/tests/auto/gui/text/qtextdocument/tst_qtextdocument.cpp +++ b/tests/auto/gui/text/qtextdocument/tst_qtextdocument.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/text/qtextdocumentfragment/tst_qtextdocumentfragment.cpp b/tests/auto/gui/text/qtextdocumentfragment/tst_qtextdocumentfragment.cpp index 7b4c1f9804..63a67a0c10 100644 --- a/tests/auto/gui/text/qtextdocumentfragment/tst_qtextdocumentfragment.cpp +++ b/tests/auto/gui/text/qtextdocumentfragment/tst_qtextdocumentfragment.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/text/qtextdocumentlayout/tst_qtextdocumentlayout.cpp b/tests/auto/gui/text/qtextdocumentlayout/tst_qtextdocumentlayout.cpp index ae31936e63..91da86d3d1 100644 --- a/tests/auto/gui/text/qtextdocumentlayout/tst_qtextdocumentlayout.cpp +++ b/tests/auto/gui/text/qtextdocumentlayout/tst_qtextdocumentlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/text/qtextformat/tst_qtextformat.cpp b/tests/auto/gui/text/qtextformat/tst_qtextformat.cpp index 1d69bc2c1d..096ea2dade 100644 --- a/tests/auto/gui/text/qtextformat/tst_qtextformat.cpp +++ b/tests/auto/gui/text/qtextformat/tst_qtextformat.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/text/qtextlayout/tst_qtextlayout.cpp b/tests/auto/gui/text/qtextlayout/tst_qtextlayout.cpp index 253211bbe9..e816b04153 100644 --- a/tests/auto/gui/text/qtextlayout/tst_qtextlayout.cpp +++ b/tests/auto/gui/text/qtextlayout/tst_qtextlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/text/qtextlist/tst_qtextlist.cpp b/tests/auto/gui/text/qtextlist/tst_qtextlist.cpp index 8b4317f52b..810c416875 100644 --- a/tests/auto/gui/text/qtextlist/tst_qtextlist.cpp +++ b/tests/auto/gui/text/qtextlist/tst_qtextlist.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/text/qtextobject/tst_qtextobject.cpp b/tests/auto/gui/text/qtextobject/tst_qtextobject.cpp index 15e50a5a54..b621763cea 100644 --- a/tests/auto/gui/text/qtextobject/tst_qtextobject.cpp +++ b/tests/auto/gui/text/qtextobject/tst_qtextobject.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/text/qtextodfwriter/tst_qtextodfwriter.cpp b/tests/auto/gui/text/qtextodfwriter/tst_qtextodfwriter.cpp index 01abf636c9..49d86a2c4b 100644 --- a/tests/auto/gui/text/qtextodfwriter/tst_qtextodfwriter.cpp +++ b/tests/auto/gui/text/qtextodfwriter/tst_qtextodfwriter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/text/qtextpiecetable/tst_qtextpiecetable.cpp b/tests/auto/gui/text/qtextpiecetable/tst_qtextpiecetable.cpp index 2f4ca7282a..b74bc3daf8 100644 --- a/tests/auto/gui/text/qtextpiecetable/tst_qtextpiecetable.cpp +++ b/tests/auto/gui/text/qtextpiecetable/tst_qtextpiecetable.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/text/qtextscriptengine/generate/main.cpp b/tests/auto/gui/text/qtextscriptengine/generate/main.cpp index 06caa34b4d..5bb13232ca 100644 --- a/tests/auto/gui/text/qtextscriptengine/generate/main.cpp +++ b/tests/auto/gui/text/qtextscriptengine/generate/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/text/qtextscriptengine/tst_qtextscriptengine.cpp b/tests/auto/gui/text/qtextscriptengine/tst_qtextscriptengine.cpp index 487ef96405..638f13aea2 100644 --- a/tests/auto/gui/text/qtextscriptengine/tst_qtextscriptengine.cpp +++ b/tests/auto/gui/text/qtextscriptengine/tst_qtextscriptengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/text/qtexttable/tst_qtexttable.cpp b/tests/auto/gui/text/qtexttable/tst_qtexttable.cpp index fcafa51c90..b4ecdf1f39 100644 --- a/tests/auto/gui/text/qtexttable/tst_qtexttable.cpp +++ b/tests/auto/gui/text/qtexttable/tst_qtexttable.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/text/qzip/tst_qzip.cpp b/tests/auto/gui/text/qzip/tst_qzip.cpp index 7d7f412648..d68cb2e2dc 100644 --- a/tests/auto/gui/text/qzip/tst_qzip.cpp +++ b/tests/auto/gui/text/qzip/tst_qzip.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/gui/util/qdesktopservices/tst_qdesktopservices.cpp b/tests/auto/gui/util/qdesktopservices/tst_qdesktopservices.cpp index d354e18fe4..cfaafb37f4 100644 --- a/tests/auto/gui/util/qdesktopservices/tst_qdesktopservices.cpp +++ b/tests/auto/gui/util/qdesktopservices/tst_qdesktopservices.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network-settings.h b/tests/auto/network-settings.h index 5cf32d32b1..bd3539c797 100644 --- a/tests/auto/network-settings.h +++ b/tests/auto/network-settings.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/access/qabstractnetworkcache/tst_qabstractnetworkcache.cpp b/tests/auto/network/access/qabstractnetworkcache/tst_qabstractnetworkcache.cpp index 59a9c559c0..b24978d64a 100644 --- a/tests/auto/network/access/qabstractnetworkcache/tst_qabstractnetworkcache.cpp +++ b/tests/auto/network/access/qabstractnetworkcache/tst_qabstractnetworkcache.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/access/qftp/tst_qftp.cpp b/tests/auto/network/access/qftp/tst_qftp.cpp index 904e23a756..49e1f4b230 100644 --- a/tests/auto/network/access/qftp/tst_qftp.cpp +++ b/tests/auto/network/access/qftp/tst_qftp.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/access/qhttp/dummyserver.h b/tests/auto/network/access/qhttp/dummyserver.h index 7c14ae2f14..644ae4a2ba 100644 --- a/tests/auto/network/access/qhttp/dummyserver.h +++ b/tests/auto/network/access/qhttp/dummyserver.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/access/qhttp/tst_qhttp.cpp b/tests/auto/network/access/qhttp/tst_qhttp.cpp index 8adb0ca05d..dd57aba85c 100644 --- a/tests/auto/network/access/qhttp/tst_qhttp.cpp +++ b/tests/auto/network/access/qhttp/tst_qhttp.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/access/qhttpnetworkconnection/tst_qhttpnetworkconnection.cpp b/tests/auto/network/access/qhttpnetworkconnection/tst_qhttpnetworkconnection.cpp index b4c0e2c93a..aa8617740b 100644 --- a/tests/auto/network/access/qhttpnetworkconnection/tst_qhttpnetworkconnection.cpp +++ b/tests/auto/network/access/qhttpnetworkconnection/tst_qhttpnetworkconnection.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/access/qhttpnetworkreply/tst_qhttpnetworkreply.cpp b/tests/auto/network/access/qhttpnetworkreply/tst_qhttpnetworkreply.cpp index 513b20ec82..fa215a5422 100644 --- a/tests/auto/network/access/qhttpnetworkreply/tst_qhttpnetworkreply.cpp +++ b/tests/auto/network/access/qhttpnetworkreply/tst_qhttpnetworkreply.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/access/qnetworkaccessmanager/tst_qnetworkaccessmanager.cpp b/tests/auto/network/access/qnetworkaccessmanager/tst_qnetworkaccessmanager.cpp index 14804b5187..5b10123b56 100644 --- a/tests/auto/network/access/qnetworkaccessmanager/tst_qnetworkaccessmanager.cpp +++ b/tests/auto/network/access/qnetworkaccessmanager/tst_qnetworkaccessmanager.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/access/qnetworkcachemetadata/tst_qnetworkcachemetadata.cpp b/tests/auto/network/access/qnetworkcachemetadata/tst_qnetworkcachemetadata.cpp index a5b63bd7d5..b272c0b282 100644 --- a/tests/auto/network/access/qnetworkcachemetadata/tst_qnetworkcachemetadata.cpp +++ b/tests/auto/network/access/qnetworkcachemetadata/tst_qnetworkcachemetadata.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/access/qnetworkcookie/tst_qnetworkcookie.cpp b/tests/auto/network/access/qnetworkcookie/tst_qnetworkcookie.cpp index a83f6dda91..abf8e726d2 100644 --- a/tests/auto/network/access/qnetworkcookie/tst_qnetworkcookie.cpp +++ b/tests/auto/network/access/qnetworkcookie/tst_qnetworkcookie.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/access/qnetworkcookiejar/tst_qnetworkcookiejar.cpp b/tests/auto/network/access/qnetworkcookiejar/tst_qnetworkcookiejar.cpp index 5051aa5fee..e881e85317 100644 --- a/tests/auto/network/access/qnetworkcookiejar/tst_qnetworkcookiejar.cpp +++ b/tests/auto/network/access/qnetworkcookiejar/tst_qnetworkcookiejar.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/access/qnetworkdiskcache/tst_qnetworkdiskcache.cpp b/tests/auto/network/access/qnetworkdiskcache/tst_qnetworkdiskcache.cpp index 750721beab..dbd5e64627 100644 --- a/tests/auto/network/access/qnetworkdiskcache/tst_qnetworkdiskcache.cpp +++ b/tests/auto/network/access/qnetworkdiskcache/tst_qnetworkdiskcache.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/access/qnetworkreply/echo/main.cpp b/tests/auto/network/access/qnetworkreply/echo/main.cpp index a4ddda171a..5162842081 100644 --- a/tests/auto/network/access/qnetworkreply/echo/main.cpp +++ b/tests/auto/network/access/qnetworkreply/echo/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp b/tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp index 41972b7811..b7ba7f061e 100644 --- a/tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp +++ b/tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/access/qnetworkrequest/tst_qnetworkrequest.cpp b/tests/auto/network/access/qnetworkrequest/tst_qnetworkrequest.cpp index 90527163e2..e106230dc4 100644 --- a/tests/auto/network/access/qnetworkrequest/tst_qnetworkrequest.cpp +++ b/tests/auto/network/access/qnetworkrequest/tst_qnetworkrequest.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/bearer/qbearertestcommon.h b/tests/auto/network/bearer/qbearertestcommon.h index c16c2016e8..7a7a6edf5d 100644 --- a/tests/auto/network/bearer/qbearertestcommon.h +++ b/tests/auto/network/bearer/qbearertestcommon.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/bearer/qnetworkconfiguration/tst_qnetworkconfiguration.cpp b/tests/auto/network/bearer/qnetworkconfiguration/tst_qnetworkconfiguration.cpp index a2c9acea6e..8746211bf5 100644 --- a/tests/auto/network/bearer/qnetworkconfiguration/tst_qnetworkconfiguration.cpp +++ b/tests/auto/network/bearer/qnetworkconfiguration/tst_qnetworkconfiguration.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/bearer/qnetworkconfigurationmanager/tst_qnetworkconfigurationmanager.cpp b/tests/auto/network/bearer/qnetworkconfigurationmanager/tst_qnetworkconfigurationmanager.cpp index 6b299ac459..ff980caae2 100644 --- a/tests/auto/network/bearer/qnetworkconfigurationmanager/tst_qnetworkconfigurationmanager.cpp +++ b/tests/auto/network/bearer/qnetworkconfigurationmanager/tst_qnetworkconfigurationmanager.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/bearer/qnetworksession/lackey/main.cpp b/tests/auto/network/bearer/qnetworksession/lackey/main.cpp index 2b0f50f23e..2631e06f64 100644 --- a/tests/auto/network/bearer/qnetworksession/lackey/main.cpp +++ b/tests/auto/network/bearer/qnetworksession/lackey/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/bearer/qnetworksession/test/tst_qnetworksession.cpp b/tests/auto/network/bearer/qnetworksession/test/tst_qnetworksession.cpp index 685c0ba696..544d3782a2 100644 --- a/tests/auto/network/bearer/qnetworksession/test/tst_qnetworksession.cpp +++ b/tests/auto/network/bearer/qnetworksession/test/tst_qnetworksession.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/kernel/qauthenticator/tst_qauthenticator.cpp b/tests/auto/network/kernel/qauthenticator/tst_qauthenticator.cpp index ae78e10440..38aa684ec9 100644 --- a/tests/auto/network/kernel/qauthenticator/tst_qauthenticator.cpp +++ b/tests/auto/network/kernel/qauthenticator/tst_qauthenticator.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/kernel/qhostaddress/tst_qhostaddress.cpp b/tests/auto/network/kernel/qhostaddress/tst_qhostaddress.cpp index bf7a6a0f64..7869ab76fe 100644 --- a/tests/auto/network/kernel/qhostaddress/tst_qhostaddress.cpp +++ b/tests/auto/network/kernel/qhostaddress/tst_qhostaddress.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/kernel/qhostinfo/tst_qhostinfo.cpp b/tests/auto/network/kernel/qhostinfo/tst_qhostinfo.cpp index 9226b3475a..59f2750deb 100644 --- a/tests/auto/network/kernel/qhostinfo/tst_qhostinfo.cpp +++ b/tests/auto/network/kernel/qhostinfo/tst_qhostinfo.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/kernel/qnetworkaddressentry/tst_qnetworkaddressentry.cpp b/tests/auto/network/kernel/qnetworkaddressentry/tst_qnetworkaddressentry.cpp index d210cdfdfb..cc46427653 100644 --- a/tests/auto/network/kernel/qnetworkaddressentry/tst_qnetworkaddressentry.cpp +++ b/tests/auto/network/kernel/qnetworkaddressentry/tst_qnetworkaddressentry.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/kernel/qnetworkinterface/tst_qnetworkinterface.cpp b/tests/auto/network/kernel/qnetworkinterface/tst_qnetworkinterface.cpp index f8a9def46a..da48b4907a 100644 --- a/tests/auto/network/kernel/qnetworkinterface/tst_qnetworkinterface.cpp +++ b/tests/auto/network/kernel/qnetworkinterface/tst_qnetworkinterface.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/kernel/qnetworkproxy/tst_qnetworkproxy.cpp b/tests/auto/network/kernel/qnetworkproxy/tst_qnetworkproxy.cpp index a96e771c0d..70a6eaa9df 100644 --- a/tests/auto/network/kernel/qnetworkproxy/tst_qnetworkproxy.cpp +++ b/tests/auto/network/kernel/qnetworkproxy/tst_qnetworkproxy.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/kernel/qnetworkproxyfactory/tst_qnetworkproxyfactory.cpp b/tests/auto/network/kernel/qnetworkproxyfactory/tst_qnetworkproxyfactory.cpp index de06a54447..088a5361ab 100644 --- a/tests/auto/network/kernel/qnetworkproxyfactory/tst_qnetworkproxyfactory.cpp +++ b/tests/auto/network/kernel/qnetworkproxyfactory/tst_qnetworkproxyfactory.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/socket/platformsocketengine/tst_platformsocketengine.cpp b/tests/auto/network/socket/platformsocketengine/tst_platformsocketengine.cpp index 5cd57b587e..d315e1e76b 100644 --- a/tests/auto/network/socket/platformsocketengine/tst_platformsocketengine.cpp +++ b/tests/auto/network/socket/platformsocketengine/tst_platformsocketengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/socket/qabstractsocket/tst_qabstractsocket.cpp b/tests/auto/network/socket/qabstractsocket/tst_qabstractsocket.cpp index 5b115f81bc..f39a9c66bf 100644 --- a/tests/auto/network/socket/qabstractsocket/tst_qabstractsocket.cpp +++ b/tests/auto/network/socket/qabstractsocket/tst_qabstractsocket.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/socket/qhttpsocketengine/tst_qhttpsocketengine.cpp b/tests/auto/network/socket/qhttpsocketengine/tst_qhttpsocketengine.cpp index 93344a3bf4..e470f5778a 100644 --- a/tests/auto/network/socket/qhttpsocketengine/tst_qhttpsocketengine.cpp +++ b/tests/auto/network/socket/qhttpsocketengine/tst_qhttpsocketengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/socket/qlocalsocket/example/client/main.cpp b/tests/auto/network/socket/qlocalsocket/example/client/main.cpp index acf5cbc388..86b6b34cf3 100644 --- a/tests/auto/network/socket/qlocalsocket/example/client/main.cpp +++ b/tests/auto/network/socket/qlocalsocket/example/client/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/socket/qlocalsocket/example/server/main.cpp b/tests/auto/network/socket/qlocalsocket/example/server/main.cpp index 0d3de3a2e1..06c8b8501f 100644 --- a/tests/auto/network/socket/qlocalsocket/example/server/main.cpp +++ b/tests/auto/network/socket/qlocalsocket/example/server/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/socket/qlocalsocket/lackey/main.cpp b/tests/auto/network/socket/qlocalsocket/lackey/main.cpp index f7b2ff10b3..014a6eb2f8 100644 --- a/tests/auto/network/socket/qlocalsocket/lackey/main.cpp +++ b/tests/auto/network/socket/qlocalsocket/lackey/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/socket/qlocalsocket/tst_qlocalsocket.cpp b/tests/auto/network/socket/qlocalsocket/tst_qlocalsocket.cpp index 47697b1940..c7dcd1a646 100644 --- a/tests/auto/network/socket/qlocalsocket/tst_qlocalsocket.cpp +++ b/tests/auto/network/socket/qlocalsocket/tst_qlocalsocket.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/socket/qsocks5socketengine/tst_qsocks5socketengine.cpp b/tests/auto/network/socket/qsocks5socketengine/tst_qsocks5socketengine.cpp index 8c600c5400..d83555e61b 100644 --- a/tests/auto/network/socket/qsocks5socketengine/tst_qsocks5socketengine.cpp +++ b/tests/auto/network/socket/qsocks5socketengine/tst_qsocks5socketengine.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/socket/qtcpserver/crashingServer/main.cpp b/tests/auto/network/socket/qtcpserver/crashingServer/main.cpp index e223bff8c5..f2e813497b 100644 --- a/tests/auto/network/socket/qtcpserver/crashingServer/main.cpp +++ b/tests/auto/network/socket/qtcpserver/crashingServer/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/socket/qtcpserver/tst_qtcpserver.cpp b/tests/auto/network/socket/qtcpserver/tst_qtcpserver.cpp index c1897779e1..265b0658f4 100644 --- a/tests/auto/network/socket/qtcpserver/tst_qtcpserver.cpp +++ b/tests/auto/network/socket/qtcpserver/tst_qtcpserver.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/socket/qtcpsocket/stressTest/Test.cpp b/tests/auto/network/socket/qtcpsocket/stressTest/Test.cpp index 995fc0528c..e17a167512 100644 --- a/tests/auto/network/socket/qtcpsocket/stressTest/Test.cpp +++ b/tests/auto/network/socket/qtcpsocket/stressTest/Test.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/socket/qtcpsocket/stressTest/Test.h b/tests/auto/network/socket/qtcpsocket/stressTest/Test.h index 5440e7ffa9..c619454a3a 100644 --- a/tests/auto/network/socket/qtcpsocket/stressTest/Test.h +++ b/tests/auto/network/socket/qtcpsocket/stressTest/Test.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/socket/qtcpsocket/stressTest/main.cpp b/tests/auto/network/socket/qtcpsocket/stressTest/main.cpp index 76ce7bd820..57194a4948 100644 --- a/tests/auto/network/socket/qtcpsocket/stressTest/main.cpp +++ b/tests/auto/network/socket/qtcpsocket/stressTest/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/socket/qtcpsocket/tst_qtcpsocket.cpp b/tests/auto/network/socket/qtcpsocket/tst_qtcpsocket.cpp index 218e372e4d..457fae1a1b 100644 --- a/tests/auto/network/socket/qtcpsocket/tst_qtcpsocket.cpp +++ b/tests/auto/network/socket/qtcpsocket/tst_qtcpsocket.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/socket/qudpsocket/clientserver/main.cpp b/tests/auto/network/socket/qudpsocket/clientserver/main.cpp index 9145a5199f..a88c0f1335 100644 --- a/tests/auto/network/socket/qudpsocket/clientserver/main.cpp +++ b/tests/auto/network/socket/qudpsocket/clientserver/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/socket/qudpsocket/tst_qudpsocket.cpp b/tests/auto/network/socket/qudpsocket/tst_qudpsocket.cpp index a0928b42eb..cbcbe042ff 100644 --- a/tests/auto/network/socket/qudpsocket/tst_qudpsocket.cpp +++ b/tests/auto/network/socket/qudpsocket/tst_qudpsocket.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/socket/qudpsocket/udpServer/main.cpp b/tests/auto/network/socket/qudpsocket/udpServer/main.cpp index ff3ca111d0..90ddcf1748 100644 --- a/tests/auto/network/socket/qudpsocket/udpServer/main.cpp +++ b/tests/auto/network/socket/qudpsocket/udpServer/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/ssl/qsslcertificate/certificates/gencertificates.sh b/tests/auto/network/ssl/qsslcertificate/certificates/gencertificates.sh index 0bac191326..915bf796b1 100755 --- a/tests/auto/network/ssl/qsslcertificate/certificates/gencertificates.sh +++ b/tests/auto/network/ssl/qsslcertificate/certificates/gencertificates.sh @@ -1,7 +1,7 @@ #!/bin/sh ############################################################################# ## -## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ## All rights reserved. ## Contact: Nokia Corporation (qt-info@nokia.com) ## diff --git a/tests/auto/network/ssl/qsslcertificate/tst_qsslcertificate.cpp b/tests/auto/network/ssl/qsslcertificate/tst_qsslcertificate.cpp index a521d0e389..c5c89482e7 100644 --- a/tests/auto/network/ssl/qsslcertificate/tst_qsslcertificate.cpp +++ b/tests/auto/network/ssl/qsslcertificate/tst_qsslcertificate.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/ssl/qsslcipher/tst_qsslcipher.cpp b/tests/auto/network/ssl/qsslcipher/tst_qsslcipher.cpp index 5fe4d03bdd..89b735aed3 100644 --- a/tests/auto/network/ssl/qsslcipher/tst_qsslcipher.cpp +++ b/tests/auto/network/ssl/qsslcipher/tst_qsslcipher.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/ssl/qsslerror/tst_qsslerror.cpp b/tests/auto/network/ssl/qsslerror/tst_qsslerror.cpp index 3fae88ec00..481d73650b 100644 --- a/tests/auto/network/ssl/qsslerror/tst_qsslerror.cpp +++ b/tests/auto/network/ssl/qsslerror/tst_qsslerror.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/ssl/qsslkey/keys/genkeys.sh b/tests/auto/network/ssl/qsslkey/keys/genkeys.sh index 559ef5cf5d..087a3a64b9 100755 --- a/tests/auto/network/ssl/qsslkey/keys/genkeys.sh +++ b/tests/auto/network/ssl/qsslkey/keys/genkeys.sh @@ -1,7 +1,7 @@ #!/bin/sh ############################################################################# ## -## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ## All rights reserved. ## Contact: Nokia Corporation (qt-info@nokia.com) ## diff --git a/tests/auto/network/ssl/qsslkey/tst_qsslkey.cpp b/tests/auto/network/ssl/qsslkey/tst_qsslkey.cpp index fe79c39363..cf1489c76c 100644 --- a/tests/auto/network/ssl/qsslkey/tst_qsslkey.cpp +++ b/tests/auto/network/ssl/qsslkey/tst_qsslkey.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/ssl/qsslsocket/tst_qsslsocket.cpp b/tests/auto/network/ssl/qsslsocket/tst_qsslsocket.cpp index a83611e2b5..f5a4f535d6 100644 --- a/tests/auto/network/ssl/qsslsocket/tst_qsslsocket.cpp +++ b/tests/auto/network/ssl/qsslsocket/tst_qsslsocket.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/ssl/qsslsocket_onDemandCertificates_member/tst_qsslsocket_onDemandCertificates_member.cpp b/tests/auto/network/ssl/qsslsocket_onDemandCertificates_member/tst_qsslsocket_onDemandCertificates_member.cpp index 7e9c427192..d331658fc8 100644 --- a/tests/auto/network/ssl/qsslsocket_onDemandCertificates_member/tst_qsslsocket_onDemandCertificates_member.cpp +++ b/tests/auto/network/ssl/qsslsocket_onDemandCertificates_member/tst_qsslsocket_onDemandCertificates_member.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/network/ssl/qsslsocket_onDemandCertificates_static/tst_qsslsocket_onDemandCertificates_static.cpp b/tests/auto/network/ssl/qsslsocket_onDemandCertificates_static/tst_qsslsocket_onDemandCertificates_static.cpp index 59894244a4..4c76a44ac1 100644 --- a/tests/auto/network/ssl/qsslsocket_onDemandCertificates_static/tst_qsslsocket_onDemandCertificates_static.cpp +++ b/tests/auto/network/ssl/qsslsocket_onDemandCertificates_static/tst_qsslsocket_onDemandCertificates_static.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/opengl/qgl/tst_qgl.cpp b/tests/auto/opengl/qgl/tst_qgl.cpp index 492c250b6b..0b8952f9ab 100644 --- a/tests/auto/opengl/qgl/tst_qgl.cpp +++ b/tests/auto/opengl/qgl/tst_qgl.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/opengl/qglbuffer/tst_qglbuffer.cpp b/tests/auto/opengl/qglbuffer/tst_qglbuffer.cpp index 399d624027..865a31bfce 100644 --- a/tests/auto/opengl/qglbuffer/tst_qglbuffer.cpp +++ b/tests/auto/opengl/qglbuffer/tst_qglbuffer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/opengl/qglfunctions/tst_qglfunctions.cpp b/tests/auto/opengl/qglfunctions/tst_qglfunctions.cpp index 7755d89c0b..3ad39f754a 100644 --- a/tests/auto/opengl/qglfunctions/tst_qglfunctions.cpp +++ b/tests/auto/opengl/qglfunctions/tst_qglfunctions.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/opengl/qglthreads/tst_qglthreads.cpp b/tests/auto/opengl/qglthreads/tst_qglthreads.cpp index 940220217d..97718d136a 100644 --- a/tests/auto/opengl/qglthreads/tst_qglthreads.cpp +++ b/tests/auto/opengl/qglthreads/tst_qglthreads.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/opengl/qglthreads/tst_qglthreads.h b/tests/auto/opengl/qglthreads/tst_qglthreads.h index 7972638085..54ada3bcce 100644 --- a/tests/auto/opengl/qglthreads/tst_qglthreads.h +++ b/tests/auto/opengl/qglthreads/tst_qglthreads.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/atwrapper/atWrapper.cpp b/tests/auto/other/atwrapper/atWrapper.cpp index 121f742201..5dc0cd599b 100644 --- a/tests/auto/other/atwrapper/atWrapper.cpp +++ b/tests/auto/other/atwrapper/atWrapper.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/atwrapper/atWrapper.h b/tests/auto/other/atwrapper/atWrapper.h index e325c087d8..48fe202267 100644 --- a/tests/auto/other/atwrapper/atWrapper.h +++ b/tests/auto/other/atwrapper/atWrapper.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/atwrapper/atWrapperAutotest.cpp b/tests/auto/other/atwrapper/atWrapperAutotest.cpp index 0c24286d6b..2ff3327349 100644 --- a/tests/auto/other/atwrapper/atWrapperAutotest.cpp +++ b/tests/auto/other/atwrapper/atWrapperAutotest.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/baselineexample/tst_baselineexample.cpp b/tests/auto/other/baselineexample/tst_baselineexample.cpp index 73657bdf6d..7253082974 100644 --- a/tests/auto/other/baselineexample/tst_baselineexample.cpp +++ b/tests/auto/other/baselineexample/tst_baselineexample.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/collections/tst_collections.cpp b/tests/auto/other/collections/tst_collections.cpp index 3f96aa94d5..3c55897b46 100644 --- a/tests/auto/other/collections/tst_collections.cpp +++ b/tests/auto/other/collections/tst_collections.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/compiler/baseclass.cpp b/tests/auto/other/compiler/baseclass.cpp index 22ccba8f78..5eea58d1dc 100644 --- a/tests/auto/other/compiler/baseclass.cpp +++ b/tests/auto/other/compiler/baseclass.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/compiler/baseclass.h b/tests/auto/other/compiler/baseclass.h index e510112f2f..1cfa1079a4 100644 --- a/tests/auto/other/compiler/baseclass.h +++ b/tests/auto/other/compiler/baseclass.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/compiler/derivedclass.cpp b/tests/auto/other/compiler/derivedclass.cpp index 45ef6df3ee..e43e2f9b5b 100644 --- a/tests/auto/other/compiler/derivedclass.cpp +++ b/tests/auto/other/compiler/derivedclass.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/compiler/derivedclass.h b/tests/auto/other/compiler/derivedclass.h index c5fb61f46e..47227a95b5 100644 --- a/tests/auto/other/compiler/derivedclass.h +++ b/tests/auto/other/compiler/derivedclass.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/compiler/tst_compiler.cpp b/tests/auto/other/compiler/tst_compiler.cpp index b6fb391fb1..db57af63bb 100644 --- a/tests/auto/other/compiler/tst_compiler.cpp +++ b/tests/auto/other/compiler/tst_compiler.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/exceptionsafety/tst_exceptionsafety.cpp b/tests/auto/other/exceptionsafety/tst_exceptionsafety.cpp index ba384e0290..309f6b7d78 100644 --- a/tests/auto/other/exceptionsafety/tst_exceptionsafety.cpp +++ b/tests/auto/other/exceptionsafety/tst_exceptionsafety.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/exceptionsafety_objects/oomsimulator.h b/tests/auto/other/exceptionsafety_objects/oomsimulator.h index 15b13a48a7..0727723d47 100644 --- a/tests/auto/other/exceptionsafety_objects/oomsimulator.h +++ b/tests/auto/other/exceptionsafety_objects/oomsimulator.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/exceptionsafety_objects/tst_exceptionsafety_objects.cpp b/tests/auto/other/exceptionsafety_objects/tst_exceptionsafety_objects.cpp index 304f834cac..7e569fe7f7 100644 --- a/tests/auto/other/exceptionsafety_objects/tst_exceptionsafety_objects.cpp +++ b/tests/auto/other/exceptionsafety_objects/tst_exceptionsafety_objects.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/gestures/tst_gestures.cpp b/tests/auto/other/gestures/tst_gestures.cpp index 1a71f9170a..daa1893807 100644 --- a/tests/auto/other/gestures/tst_gestures.cpp +++ b/tests/auto/other/gestures/tst_gestures.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/headersclean/tst_headersclean.cpp b/tests/auto/other/headersclean/tst_headersclean.cpp index 4cc11caf71..807f97af69 100644 --- a/tests/auto/other/headersclean/tst_headersclean.cpp +++ b/tests/auto/other/headersclean/tst_headersclean.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/lancelot/paintcommands.cpp b/tests/auto/other/lancelot/paintcommands.cpp index dc23575fc5..08c6918eb6 100644 --- a/tests/auto/other/lancelot/paintcommands.cpp +++ b/tests/auto/other/lancelot/paintcommands.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/lancelot/paintcommands.h b/tests/auto/other/lancelot/paintcommands.h index 925a867f2f..b22ab58b32 100644 --- a/tests/auto/other/lancelot/paintcommands.h +++ b/tests/auto/other/lancelot/paintcommands.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/lancelot/tst_lancelot.cpp b/tests/auto/other/lancelot/tst_lancelot.cpp index e024b75400..50688ffa17 100644 --- a/tests/auto/other/lancelot/tst_lancelot.cpp +++ b/tests/auto/other/lancelot/tst_lancelot.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/languagechange/tst_languagechange.cpp b/tests/auto/other/languagechange/tst_languagechange.cpp index 3b77b13275..f6a0341ac5 100644 --- a/tests/auto/other/languagechange/tst_languagechange.cpp +++ b/tests/auto/other/languagechange/tst_languagechange.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/macgui/guitest.cpp b/tests/auto/other/macgui/guitest.cpp index e5245528cb..6ab5a64a97 100644 --- a/tests/auto/other/macgui/guitest.cpp +++ b/tests/auto/other/macgui/guitest.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/macgui/guitest.h b/tests/auto/other/macgui/guitest.h index 170fc5c19c..39a63b0443 100644 --- a/tests/auto/other/macgui/guitest.h +++ b/tests/auto/other/macgui/guitest.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/macgui/tst_macgui.cpp b/tests/auto/other/macgui/tst_macgui.cpp index 9ff2897aa8..8f66d54a2c 100644 --- a/tests/auto/other/macgui/tst_macgui.cpp +++ b/tests/auto/other/macgui/tst_macgui.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/macnativeevents/expectedeventlist.cpp b/tests/auto/other/macnativeevents/expectedeventlist.cpp index d603f82f27..9067a38ec6 100644 --- a/tests/auto/other/macnativeevents/expectedeventlist.cpp +++ b/tests/auto/other/macnativeevents/expectedeventlist.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/macnativeevents/expectedeventlist.h b/tests/auto/other/macnativeevents/expectedeventlist.h index e3fef2d56d..fb4c18d493 100644 --- a/tests/auto/other/macnativeevents/expectedeventlist.h +++ b/tests/auto/other/macnativeevents/expectedeventlist.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/macnativeevents/nativeeventlist.cpp b/tests/auto/other/macnativeevents/nativeeventlist.cpp index 8c7f609d9f..781c3f5374 100644 --- a/tests/auto/other/macnativeevents/nativeeventlist.cpp +++ b/tests/auto/other/macnativeevents/nativeeventlist.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/macnativeevents/nativeeventlist.h b/tests/auto/other/macnativeevents/nativeeventlist.h index 6bebca1613..f6493e56da 100644 --- a/tests/auto/other/macnativeevents/nativeeventlist.h +++ b/tests/auto/other/macnativeevents/nativeeventlist.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/macnativeevents/qnativeevents.cpp b/tests/auto/other/macnativeevents/qnativeevents.cpp index b530d7bbe3..79667adcd0 100644 --- a/tests/auto/other/macnativeevents/qnativeevents.cpp +++ b/tests/auto/other/macnativeevents/qnativeevents.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/macnativeevents/qnativeevents.h b/tests/auto/other/macnativeevents/qnativeevents.h index d303a55397..3a3e4f1590 100644 --- a/tests/auto/other/macnativeevents/qnativeevents.h +++ b/tests/auto/other/macnativeevents/qnativeevents.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/macnativeevents/qnativeevents_mac.cpp b/tests/auto/other/macnativeevents/qnativeevents_mac.cpp index 8987a8d502..35028f9cf7 100644 --- a/tests/auto/other/macnativeevents/qnativeevents_mac.cpp +++ b/tests/auto/other/macnativeevents/qnativeevents_mac.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/macnativeevents/tst_macnativeevents.cpp b/tests/auto/other/macnativeevents/tst_macnativeevents.cpp index ea30b0b5c2..c5131e19fc 100644 --- a/tests/auto/other/macnativeevents/tst_macnativeevents.cpp +++ b/tests/auto/other/macnativeevents/tst_macnativeevents.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/macplist/app/main.cpp b/tests/auto/other/macplist/app/main.cpp index 90bf60ae38..c28c372f08 100644 --- a/tests/auto/other/macplist/app/main.cpp +++ b/tests/auto/other/macplist/app/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/macplist/tst_macplist.cpp b/tests/auto/other/macplist/tst_macplist.cpp index 5b48c586b5..f2b47c1d99 100644 --- a/tests/auto/other/macplist/tst_macplist.cpp +++ b/tests/auto/other/macplist/tst_macplist.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/modeltest/modeltest.cpp b/tests/auto/other/modeltest/modeltest.cpp index 76803dfbe5..118b4a8e1f 100644 --- a/tests/auto/other/modeltest/modeltest.cpp +++ b/tests/auto/other/modeltest/modeltest.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/modeltest/modeltest.h b/tests/auto/other/modeltest/modeltest.h index e4ef478c5e..f70aebabde 100644 --- a/tests/auto/other/modeltest/modeltest.h +++ b/tests/auto/other/modeltest/modeltest.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/modeltest/tst_modeltest.cpp b/tests/auto/other/modeltest/tst_modeltest.cpp index e5c227d167..fa9b98acb6 100644 --- a/tests/auto/other/modeltest/tst_modeltest.cpp +++ b/tests/auto/other/modeltest/tst_modeltest.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/networkselftest/tst_networkselftest.cpp b/tests/auto/other/networkselftest/tst_networkselftest.cpp index c768a29bf8..3129fd965d 100644 --- a/tests/auto/other/networkselftest/tst_networkselftest.cpp +++ b/tests/auto/other/networkselftest/tst_networkselftest.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/qaccessibility/tst_qaccessibility.cpp b/tests/auto/other/qaccessibility/tst_qaccessibility.cpp index 3640c65155..858d4397b4 100644 --- a/tests/auto/other/qaccessibility/tst_qaccessibility.cpp +++ b/tests/auto/other/qaccessibility/tst_qaccessibility.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/qcomplextext/bidireorderstring.h b/tests/auto/other/qcomplextext/bidireorderstring.h index e0bbf6e80b..32f0c81e69 100644 --- a/tests/auto/other/qcomplextext/bidireorderstring.h +++ b/tests/auto/other/qcomplextext/bidireorderstring.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/qcomplextext/tst_qcomplextext.cpp b/tests/auto/other/qcomplextext/tst_qcomplextext.cpp index ce45500e74..c741a76a7e 100644 --- a/tests/auto/other/qcomplextext/tst_qcomplextext.cpp +++ b/tests/auto/other/qcomplextext/tst_qcomplextext.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/qdirectpainter/runDirectPainter/main.cpp b/tests/auto/other/qdirectpainter/runDirectPainter/main.cpp index af3dd90beb..475cb9c035 100644 --- a/tests/auto/other/qdirectpainter/runDirectPainter/main.cpp +++ b/tests/auto/other/qdirectpainter/runDirectPainter/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/qdirectpainter/tst_qdirectpainter.cpp b/tests/auto/other/qdirectpainter/tst_qdirectpainter.cpp index f60f011a20..352dd96dd9 100644 --- a/tests/auto/other/qdirectpainter/tst_qdirectpainter.cpp +++ b/tests/auto/other/qdirectpainter/tst_qdirectpainter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/qfocusevent/tst_qfocusevent.cpp b/tests/auto/other/qfocusevent/tst_qfocusevent.cpp index cf7aada811..9f82a72f65 100644 --- a/tests/auto/other/qfocusevent/tst_qfocusevent.cpp +++ b/tests/auto/other/qfocusevent/tst_qfocusevent.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/qmultiscreen/tst_qmultiscreen.cpp b/tests/auto/other/qmultiscreen/tst_qmultiscreen.cpp index 9f7411f3ab..e6f2432e64 100644 --- a/tests/auto/other/qmultiscreen/tst_qmultiscreen.cpp +++ b/tests/auto/other/qmultiscreen/tst_qmultiscreen.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/qnetworkaccessmanager_and_qprogressdialog/tst_qnetworkaccessmanager_and_qprogressdialog.cpp b/tests/auto/other/qnetworkaccessmanager_and_qprogressdialog/tst_qnetworkaccessmanager_and_qprogressdialog.cpp index 63506fed1d..6cf4147091 100644 --- a/tests/auto/other/qnetworkaccessmanager_and_qprogressdialog/tst_qnetworkaccessmanager_and_qprogressdialog.cpp +++ b/tests/auto/other/qnetworkaccessmanager_and_qprogressdialog/tst_qnetworkaccessmanager_and_qprogressdialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/qobjectperformance/tst_qobjectperformance.cpp b/tests/auto/other/qobjectperformance/tst_qobjectperformance.cpp index 4403a3f57b..2533cfb55b 100644 --- a/tests/auto/other/qobjectperformance/tst_qobjectperformance.cpp +++ b/tests/auto/other/qobjectperformance/tst_qobjectperformance.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/qobjectrace/tst_qobjectrace.cpp b/tests/auto/other/qobjectrace/tst_qobjectrace.cpp index 8cb7845e78..41e3001415 100644 --- a/tests/auto/other/qobjectrace/tst_qobjectrace.cpp +++ b/tests/auto/other/qobjectrace/tst_qobjectrace.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/qsharedpointer_and_qwidget/tst_qsharedpointer_and_qwidget.cpp b/tests/auto/other/qsharedpointer_and_qwidget/tst_qsharedpointer_and_qwidget.cpp index 90b71c517c..3ead01146d 100644 --- a/tests/auto/other/qsharedpointer_and_qwidget/tst_qsharedpointer_and_qwidget.cpp +++ b/tests/auto/other/qsharedpointer_and_qwidget/tst_qsharedpointer_and_qwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/qtokenautomaton/generateTokenizers.sh b/tests/auto/other/qtokenautomaton/generateTokenizers.sh index 0fb602aae4..0a67a1dca0 100755 --- a/tests/auto/other/qtokenautomaton/generateTokenizers.sh +++ b/tests/auto/other/qtokenautomaton/generateTokenizers.sh @@ -1,7 +1,7 @@ #!/bin/bash ############################################################################# ## -## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ## All rights reserved. ## Contact: Nokia Corporation (qt-info@nokia.com) ## diff --git a/tests/auto/other/qtokenautomaton/tokenizers/basic/basic.cpp b/tests/auto/other/qtokenautomaton/tokenizers/basic/basic.cpp index 7f96e41894..89e22719d1 100644 --- a/tests/auto/other/qtokenautomaton/tokenizers/basic/basic.cpp +++ b/tests/auto/other/qtokenautomaton/tokenizers/basic/basic.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/qtokenautomaton/tokenizers/basic/basic.h b/tests/auto/other/qtokenautomaton/tokenizers/basic/basic.h index 2f0efa1ffc..8ff67a5b23 100644 --- a/tests/auto/other/qtokenautomaton/tokenizers/basic/basic.h +++ b/tests/auto/other/qtokenautomaton/tokenizers/basic/basic.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/qtokenautomaton/tokenizers/basicNamespace/basicNamespace.cpp b/tests/auto/other/qtokenautomaton/tokenizers/basicNamespace/basicNamespace.cpp index 3874777d74..5eab3d972a 100644 --- a/tests/auto/other/qtokenautomaton/tokenizers/basicNamespace/basicNamespace.cpp +++ b/tests/auto/other/qtokenautomaton/tokenizers/basicNamespace/basicNamespace.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/qtokenautomaton/tokenizers/basicNamespace/basicNamespace.h b/tests/auto/other/qtokenautomaton/tokenizers/basicNamespace/basicNamespace.h index 074bb304ba..147619604c 100644 --- a/tests/auto/other/qtokenautomaton/tokenizers/basicNamespace/basicNamespace.h +++ b/tests/auto/other/qtokenautomaton/tokenizers/basicNamespace/basicNamespace.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/qtokenautomaton/tokenizers/boilerplate/boilerplate.cpp b/tests/auto/other/qtokenautomaton/tokenizers/boilerplate/boilerplate.cpp index 5f374030bb..ba7cdfac91 100644 --- a/tests/auto/other/qtokenautomaton/tokenizers/boilerplate/boilerplate.cpp +++ b/tests/auto/other/qtokenautomaton/tokenizers/boilerplate/boilerplate.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/qtokenautomaton/tokenizers/boilerplate/boilerplate.h b/tests/auto/other/qtokenautomaton/tokenizers/boilerplate/boilerplate.h index 735ca68e18..ec3631e272 100644 --- a/tests/auto/other/qtokenautomaton/tokenizers/boilerplate/boilerplate.h +++ b/tests/auto/other/qtokenautomaton/tokenizers/boilerplate/boilerplate.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/qtokenautomaton/tokenizers/boilerplate/boilerplate.xml b/tests/auto/other/qtokenautomaton/tokenizers/boilerplate/boilerplate.xml index 604c147c43..c6f37a218b 100644 --- a/tests/auto/other/qtokenautomaton/tokenizers/boilerplate/boilerplate.xml +++ b/tests/auto/other/qtokenautomaton/tokenizers/boilerplate/boilerplate.xml @@ -23,7 +23,7 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/qtokenautomaton/tokenizers/noNamespace/noNamespace.cpp b/tests/auto/other/qtokenautomaton/tokenizers/noNamespace/noNamespace.cpp index 2d349ad637..38f7ca90a3 100644 --- a/tests/auto/other/qtokenautomaton/tokenizers/noNamespace/noNamespace.cpp +++ b/tests/auto/other/qtokenautomaton/tokenizers/noNamespace/noNamespace.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/qtokenautomaton/tokenizers/noNamespace/noNamespace.h b/tests/auto/other/qtokenautomaton/tokenizers/noNamespace/noNamespace.h index f922dfcb50..086a9a0ce4 100644 --- a/tests/auto/other/qtokenautomaton/tokenizers/noNamespace/noNamespace.h +++ b/tests/auto/other/qtokenautomaton/tokenizers/noNamespace/noNamespace.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/qtokenautomaton/tokenizers/noToString/noToString.cpp b/tests/auto/other/qtokenautomaton/tokenizers/noToString/noToString.cpp index d45c7302cd..a62eab1da7 100644 --- a/tests/auto/other/qtokenautomaton/tokenizers/noToString/noToString.cpp +++ b/tests/auto/other/qtokenautomaton/tokenizers/noToString/noToString.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/qtokenautomaton/tokenizers/noToString/noToString.h b/tests/auto/other/qtokenautomaton/tokenizers/noToString/noToString.h index 12142bc4f0..f551b46f47 100644 --- a/tests/auto/other/qtokenautomaton/tokenizers/noToString/noToString.h +++ b/tests/auto/other/qtokenautomaton/tokenizers/noToString/noToString.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/qtokenautomaton/tokenizers/withNamespace/withNamespace.cpp b/tests/auto/other/qtokenautomaton/tokenizers/withNamespace/withNamespace.cpp index 235bd60501..fdff637450 100644 --- a/tests/auto/other/qtokenautomaton/tokenizers/withNamespace/withNamespace.cpp +++ b/tests/auto/other/qtokenautomaton/tokenizers/withNamespace/withNamespace.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/qtokenautomaton/tokenizers/withNamespace/withNamespace.h b/tests/auto/other/qtokenautomaton/tokenizers/withNamespace/withNamespace.h index 678b3a7903..627da4b93a 100644 --- a/tests/auto/other/qtokenautomaton/tokenizers/withNamespace/withNamespace.h +++ b/tests/auto/other/qtokenautomaton/tokenizers/withNamespace/withNamespace.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/qtokenautomaton/tst_qtokenautomaton.cpp b/tests/auto/other/qtokenautomaton/tst_qtokenautomaton.cpp index cbbf5a2a0d..789d2f6491 100644 --- a/tests/auto/other/qtokenautomaton/tst_qtokenautomaton.cpp +++ b/tests/auto/other/qtokenautomaton/tst_qtokenautomaton.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/windowsmobile/test/ddhelper.cpp b/tests/auto/other/windowsmobile/test/ddhelper.cpp index 55469f5901..7a8c9ea94e 100644 --- a/tests/auto/other/windowsmobile/test/ddhelper.cpp +++ b/tests/auto/other/windowsmobile/test/ddhelper.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/windowsmobile/test/ddhelper.h b/tests/auto/other/windowsmobile/test/ddhelper.h index 3d2f06aa36..de3f79afca 100644 --- a/tests/auto/other/windowsmobile/test/ddhelper.h +++ b/tests/auto/other/windowsmobile/test/ddhelper.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/windowsmobile/test/tst_windowsmobile.cpp b/tests/auto/other/windowsmobile/test/tst_windowsmobile.cpp index 4318de7991..b211f3e6e2 100644 --- a/tests/auto/other/windowsmobile/test/tst_windowsmobile.cpp +++ b/tests/auto/other/windowsmobile/test/tst_windowsmobile.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/other/windowsmobile/testQMenuBar/main.cpp b/tests/auto/other/windowsmobile/testQMenuBar/main.cpp index c2099a648b..2c39605f54 100644 --- a/tests/auto/other/windowsmobile/testQMenuBar/main.cpp +++ b/tests/auto/other/windowsmobile/testQMenuBar/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/platformquirks.h b/tests/auto/platformquirks.h index b9c9885bc4..35ef232aa3 100644 --- a/tests/auto/platformquirks.h +++ b/tests/auto/platformquirks.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/sql/kernel/qsql/tst_qsql.cpp b/tests/auto/sql/kernel/qsql/tst_qsql.cpp index e663289f6c..21459a0080 100644 --- a/tests/auto/sql/kernel/qsql/tst_qsql.cpp +++ b/tests/auto/sql/kernel/qsql/tst_qsql.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/sql/kernel/qsqldatabase/tst_databases.h b/tests/auto/sql/kernel/qsqldatabase/tst_databases.h index 466dd59663..767744a8a9 100644 --- a/tests/auto/sql/kernel/qsqldatabase/tst_databases.h +++ b/tests/auto/sql/kernel/qsqldatabase/tst_databases.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/sql/kernel/qsqldatabase/tst_qsqldatabase.cpp b/tests/auto/sql/kernel/qsqldatabase/tst_qsqldatabase.cpp index a124e6c5f5..b018c7428b 100644 --- a/tests/auto/sql/kernel/qsqldatabase/tst_qsqldatabase.cpp +++ b/tests/auto/sql/kernel/qsqldatabase/tst_qsqldatabase.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/sql/kernel/qsqldriver/tst_qsqldriver.cpp b/tests/auto/sql/kernel/qsqldriver/tst_qsqldriver.cpp index 11622e4b2a..410389e53a 100644 --- a/tests/auto/sql/kernel/qsqldriver/tst_qsqldriver.cpp +++ b/tests/auto/sql/kernel/qsqldriver/tst_qsqldriver.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/sql/kernel/qsqlerror/tst_qsqlerror.cpp b/tests/auto/sql/kernel/qsqlerror/tst_qsqlerror.cpp index 8eb6ae77b7..5a2b4b3f57 100644 --- a/tests/auto/sql/kernel/qsqlerror/tst_qsqlerror.cpp +++ b/tests/auto/sql/kernel/qsqlerror/tst_qsqlerror.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/sql/kernel/qsqlfield/tst_qsqlfield.cpp b/tests/auto/sql/kernel/qsqlfield/tst_qsqlfield.cpp index c121dfa3a9..75fb6e19ce 100644 --- a/tests/auto/sql/kernel/qsqlfield/tst_qsqlfield.cpp +++ b/tests/auto/sql/kernel/qsqlfield/tst_qsqlfield.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/sql/kernel/qsqlquery/tst_qsqlquery.cpp b/tests/auto/sql/kernel/qsqlquery/tst_qsqlquery.cpp index 2d96dbae76..76090fd947 100644 --- a/tests/auto/sql/kernel/qsqlquery/tst_qsqlquery.cpp +++ b/tests/auto/sql/kernel/qsqlquery/tst_qsqlquery.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/sql/kernel/qsqlrecord/tst_qsqlrecord.cpp b/tests/auto/sql/kernel/qsqlrecord/tst_qsqlrecord.cpp index 60b3069e1f..8dd130a543 100644 --- a/tests/auto/sql/kernel/qsqlrecord/tst_qsqlrecord.cpp +++ b/tests/auto/sql/kernel/qsqlrecord/tst_qsqlrecord.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/sql/kernel/qsqlthread/tst_qsqlthread.cpp b/tests/auto/sql/kernel/qsqlthread/tst_qsqlthread.cpp index f14b3d4e93..db92696084 100644 --- a/tests/auto/sql/kernel/qsqlthread/tst_qsqlthread.cpp +++ b/tests/auto/sql/kernel/qsqlthread/tst_qsqlthread.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/sql/models/qsqlquerymodel/tst_qsqlquerymodel.cpp b/tests/auto/sql/models/qsqlquerymodel/tst_qsqlquerymodel.cpp index 71cb59f971..333b599c08 100644 --- a/tests/auto/sql/models/qsqlquerymodel/tst_qsqlquerymodel.cpp +++ b/tests/auto/sql/models/qsqlquerymodel/tst_qsqlquerymodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/sql/models/qsqlrelationaltablemodel/tst_qsqlrelationaltablemodel.cpp b/tests/auto/sql/models/qsqlrelationaltablemodel/tst_qsqlrelationaltablemodel.cpp index c18de4acce..0414ee235f 100644 --- a/tests/auto/sql/models/qsqlrelationaltablemodel/tst_qsqlrelationaltablemodel.cpp +++ b/tests/auto/sql/models/qsqlrelationaltablemodel/tst_qsqlrelationaltablemodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/sql/models/qsqltablemodel/tst_qsqltablemodel.cpp b/tests/auto/sql/models/qsqltablemodel/tst_qsqltablemodel.cpp index 13f6f67a0f..067dd0f7b8 100644 --- a/tests/auto/sql/models/qsqltablemodel/tst_qsqltablemodel.cpp +++ b/tests/auto/sql/models/qsqltablemodel/tst_qsqltablemodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/test.pl b/tests/auto/test.pl index 4c7a6954d0..8a9c54c7a2 100755 --- a/tests/auto/test.pl +++ b/tests/auto/test.pl @@ -1,7 +1,7 @@ #!/usr/bin/env perl ############################################################################# ## -## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ## All rights reserved. ## Contact: Nokia Corporation (qt-info@nokia.com) ## diff --git a/tests/auto/testlib/qsignalspy/tst_qsignalspy.cpp b/tests/auto/testlib/qsignalspy/tst_qsignalspy.cpp index f8e8553e7c..0499c2e38b 100644 --- a/tests/auto/testlib/qsignalspy/tst_qsignalspy.cpp +++ b/tests/auto/testlib/qsignalspy/tst_qsignalspy.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/alive/qtestalive.cpp b/tests/auto/testlib/selftests/alive/qtestalive.cpp index dd3d411ce5..5220142456 100644 --- a/tests/auto/testlib/selftests/alive/qtestalive.cpp +++ b/tests/auto/testlib/selftests/alive/qtestalive.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/alive/tst_alive.cpp b/tests/auto/testlib/selftests/alive/tst_alive.cpp index 93cea82c20..112ef493b7 100644 --- a/tests/auto/testlib/selftests/alive/tst_alive.cpp +++ b/tests/auto/testlib/selftests/alive/tst_alive.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/assert/tst_assert.cpp b/tests/auto/testlib/selftests/assert/tst_assert.cpp index bd44162971..fd6b84c722 100644 --- a/tests/auto/testlib/selftests/assert/tst_assert.cpp +++ b/tests/auto/testlib/selftests/assert/tst_assert.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/badxml/tst_badxml.cpp b/tests/auto/testlib/selftests/badxml/tst_badxml.cpp index 2d0b007df9..37d7ecf17d 100644 --- a/tests/auto/testlib/selftests/badxml/tst_badxml.cpp +++ b/tests/auto/testlib/selftests/badxml/tst_badxml.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/benchlibcallgrind/tst_benchlibcallgrind.cpp b/tests/auto/testlib/selftests/benchlibcallgrind/tst_benchlibcallgrind.cpp index 1199462c99..4cbadefc2d 100644 --- a/tests/auto/testlib/selftests/benchlibcallgrind/tst_benchlibcallgrind.cpp +++ b/tests/auto/testlib/selftests/benchlibcallgrind/tst_benchlibcallgrind.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/benchlibeventcounter/tst_benchlibeventcounter.cpp b/tests/auto/testlib/selftests/benchlibeventcounter/tst_benchlibeventcounter.cpp index df7a6908f8..a7db86fbfa 100644 --- a/tests/auto/testlib/selftests/benchlibeventcounter/tst_benchlibeventcounter.cpp +++ b/tests/auto/testlib/selftests/benchlibeventcounter/tst_benchlibeventcounter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/benchliboptions/tst_benchliboptions.cpp b/tests/auto/testlib/selftests/benchliboptions/tst_benchliboptions.cpp index bfb431e705..c39b6acc2e 100644 --- a/tests/auto/testlib/selftests/benchliboptions/tst_benchliboptions.cpp +++ b/tests/auto/testlib/selftests/benchliboptions/tst_benchliboptions.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/benchlibtickcounter/tst_benchlibtickcounter.cpp b/tests/auto/testlib/selftests/benchlibtickcounter/tst_benchlibtickcounter.cpp index 9e274edea5..4cd093e101 100644 --- a/tests/auto/testlib/selftests/benchlibtickcounter/tst_benchlibtickcounter.cpp +++ b/tests/auto/testlib/selftests/benchlibtickcounter/tst_benchlibtickcounter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/benchlibwalltime/tst_benchlibwalltime.cpp b/tests/auto/testlib/selftests/benchlibwalltime/tst_benchlibwalltime.cpp index 9042c27936..a4537c3322 100644 --- a/tests/auto/testlib/selftests/benchlibwalltime/tst_benchlibwalltime.cpp +++ b/tests/auto/testlib/selftests/benchlibwalltime/tst_benchlibwalltime.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp b/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp index f6773cc4c5..767806e960 100644 --- a/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp +++ b/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/commandlinedata/tst_commandlinedata.cpp b/tests/auto/testlib/selftests/commandlinedata/tst_commandlinedata.cpp index 5f2dd3fffc..bca51846b9 100644 --- a/tests/auto/testlib/selftests/commandlinedata/tst_commandlinedata.cpp +++ b/tests/auto/testlib/selftests/commandlinedata/tst_commandlinedata.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/crashes/tst_crashes.cpp b/tests/auto/testlib/selftests/crashes/tst_crashes.cpp index d707414f5b..87cb19cec6 100644 --- a/tests/auto/testlib/selftests/crashes/tst_crashes.cpp +++ b/tests/auto/testlib/selftests/crashes/tst_crashes.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/datatable/tst_datatable.cpp b/tests/auto/testlib/selftests/datatable/tst_datatable.cpp index a55e9cbae2..1b94a46894 100644 --- a/tests/auto/testlib/selftests/datatable/tst_datatable.cpp +++ b/tests/auto/testlib/selftests/datatable/tst_datatable.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/datetime/tst_datetime.cpp b/tests/auto/testlib/selftests/datetime/tst_datetime.cpp index 64126644db..dec4193484 100644 --- a/tests/auto/testlib/selftests/datetime/tst_datetime.cpp +++ b/tests/auto/testlib/selftests/datetime/tst_datetime.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/differentexec/tst_differentexec.cpp b/tests/auto/testlib/selftests/differentexec/tst_differentexec.cpp index 5061369776..3a9e0eddf4 100644 --- a/tests/auto/testlib/selftests/differentexec/tst_differentexec.cpp +++ b/tests/auto/testlib/selftests/differentexec/tst_differentexec.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/exceptionthrow/tst_exceptionthrow.cpp b/tests/auto/testlib/selftests/exceptionthrow/tst_exceptionthrow.cpp index 23cc89ca61..34dae53d0f 100644 --- a/tests/auto/testlib/selftests/exceptionthrow/tst_exceptionthrow.cpp +++ b/tests/auto/testlib/selftests/exceptionthrow/tst_exceptionthrow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/expectfail/tst_expectfail.cpp b/tests/auto/testlib/selftests/expectfail/tst_expectfail.cpp index 04aef02cc7..568dffec29 100644 --- a/tests/auto/testlib/selftests/expectfail/tst_expectfail.cpp +++ b/tests/auto/testlib/selftests/expectfail/tst_expectfail.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/failinit/tst_failinit.cpp b/tests/auto/testlib/selftests/failinit/tst_failinit.cpp index 0bf448f428..8f217f1d0a 100644 --- a/tests/auto/testlib/selftests/failinit/tst_failinit.cpp +++ b/tests/auto/testlib/selftests/failinit/tst_failinit.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/failinitdata/tst_failinitdata.cpp b/tests/auto/testlib/selftests/failinitdata/tst_failinitdata.cpp index 00e4d12256..b14242f129 100644 --- a/tests/auto/testlib/selftests/failinitdata/tst_failinitdata.cpp +++ b/tests/auto/testlib/selftests/failinitdata/tst_failinitdata.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/fetchbogus/tst_fetchbogus.cpp b/tests/auto/testlib/selftests/fetchbogus/tst_fetchbogus.cpp index 65d10c180c..94e448ceeb 100644 --- a/tests/auto/testlib/selftests/fetchbogus/tst_fetchbogus.cpp +++ b/tests/auto/testlib/selftests/fetchbogus/tst_fetchbogus.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/findtestdata/findtestdata.cpp b/tests/auto/testlib/selftests/findtestdata/findtestdata.cpp index 473ba19798..de45a84edd 100644 --- a/tests/auto/testlib/selftests/findtestdata/findtestdata.cpp +++ b/tests/auto/testlib/selftests/findtestdata/findtestdata.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/float/tst_float.cpp b/tests/auto/testlib/selftests/float/tst_float.cpp index 65bd3188cb..233306ce45 100644 --- a/tests/auto/testlib/selftests/float/tst_float.cpp +++ b/tests/auto/testlib/selftests/float/tst_float.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/globaldata/tst_globaldata.cpp b/tests/auto/testlib/selftests/globaldata/tst_globaldata.cpp index 898cccf435..cedfac7e89 100644 --- a/tests/auto/testlib/selftests/globaldata/tst_globaldata.cpp +++ b/tests/auto/testlib/selftests/globaldata/tst_globaldata.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/longstring/tst_longstring.cpp b/tests/auto/testlib/selftests/longstring/tst_longstring.cpp index 99dac95ba1..e8b6d9129c 100644 --- a/tests/auto/testlib/selftests/longstring/tst_longstring.cpp +++ b/tests/auto/testlib/selftests/longstring/tst_longstring.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/maxwarnings/maxwarnings.cpp b/tests/auto/testlib/selftests/maxwarnings/maxwarnings.cpp index 398d0d8e4a..a00d6879c3 100644 --- a/tests/auto/testlib/selftests/maxwarnings/maxwarnings.cpp +++ b/tests/auto/testlib/selftests/maxwarnings/maxwarnings.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/multiexec/tst_multiexec.cpp b/tests/auto/testlib/selftests/multiexec/tst_multiexec.cpp index 0480714c77..d6a5e32f05 100644 --- a/tests/auto/testlib/selftests/multiexec/tst_multiexec.cpp +++ b/tests/auto/testlib/selftests/multiexec/tst_multiexec.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/printdatatags/tst_printdatatags.cpp b/tests/auto/testlib/selftests/printdatatags/tst_printdatatags.cpp index f0882316b8..4fdd33268a 100644 --- a/tests/auto/testlib/selftests/printdatatags/tst_printdatatags.cpp +++ b/tests/auto/testlib/selftests/printdatatags/tst_printdatatags.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/printdatatagswithglobaltags/tst_printdatatagswithglobaltags.cpp b/tests/auto/testlib/selftests/printdatatagswithglobaltags/tst_printdatatagswithglobaltags.cpp index 53454fc1ac..23dbfa1ee4 100644 --- a/tests/auto/testlib/selftests/printdatatagswithglobaltags/tst_printdatatagswithglobaltags.cpp +++ b/tests/auto/testlib/selftests/printdatatagswithglobaltags/tst_printdatatagswithglobaltags.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/qexecstringlist/tst_qexecstringlist.cpp b/tests/auto/testlib/selftests/qexecstringlist/tst_qexecstringlist.cpp index aacfab76f1..419165592d 100644 --- a/tests/auto/testlib/selftests/qexecstringlist/tst_qexecstringlist.cpp +++ b/tests/auto/testlib/selftests/qexecstringlist/tst_qexecstringlist.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/singleskip/tst_singleskip.cpp b/tests/auto/testlib/selftests/singleskip/tst_singleskip.cpp index 7701eb81a0..04c451da9d 100644 --- a/tests/auto/testlib/selftests/singleskip/tst_singleskip.cpp +++ b/tests/auto/testlib/selftests/singleskip/tst_singleskip.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/skip/tst_skip.cpp b/tests/auto/testlib/selftests/skip/tst_skip.cpp index 905fe2dde4..75e79532f6 100644 --- a/tests/auto/testlib/selftests/skip/tst_skip.cpp +++ b/tests/auto/testlib/selftests/skip/tst_skip.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/skipinit/tst_skipinit.cpp b/tests/auto/testlib/selftests/skipinit/tst_skipinit.cpp index 1a9fc1eeec..052dabb343 100644 --- a/tests/auto/testlib/selftests/skipinit/tst_skipinit.cpp +++ b/tests/auto/testlib/selftests/skipinit/tst_skipinit.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/skipinitdata/tst_skipinitdata.cpp b/tests/auto/testlib/selftests/skipinitdata/tst_skipinitdata.cpp index b09e99b32f..96c9eb6aff 100644 --- a/tests/auto/testlib/selftests/skipinitdata/tst_skipinitdata.cpp +++ b/tests/auto/testlib/selftests/skipinitdata/tst_skipinitdata.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/sleep/tst_sleep.cpp b/tests/auto/testlib/selftests/sleep/tst_sleep.cpp index e509954b5d..8787638bed 100644 --- a/tests/auto/testlib/selftests/sleep/tst_sleep.cpp +++ b/tests/auto/testlib/selftests/sleep/tst_sleep.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/strcmp/tst_strcmp.cpp b/tests/auto/testlib/selftests/strcmp/tst_strcmp.cpp index 89689bb3bc..40cdef0953 100644 --- a/tests/auto/testlib/selftests/strcmp/tst_strcmp.cpp +++ b/tests/auto/testlib/selftests/strcmp/tst_strcmp.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/subtest/tst_subtest.cpp b/tests/auto/testlib/selftests/subtest/tst_subtest.cpp index 7ccfc507d7..cf0b499e96 100644 --- a/tests/auto/testlib/selftests/subtest/tst_subtest.cpp +++ b/tests/auto/testlib/selftests/subtest/tst_subtest.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/tst_selftests.cpp b/tests/auto/testlib/selftests/tst_selftests.cpp index e8c4806794..cc79652a3f 100644 --- a/tests/auto/testlib/selftests/tst_selftests.cpp +++ b/tests/auto/testlib/selftests/tst_selftests.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/testlib/selftests/warnings/tst_warnings.cpp b/tests/auto/testlib/selftests/warnings/tst_warnings.cpp index e14f9c3d98..fd4738740a 100644 --- a/tests/auto/testlib/selftests/warnings/tst_warnings.cpp +++ b/tests/auto/testlib/selftests/warnings/tst_warnings.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/Test.framework/Headers/testinterface.h b/tests/auto/tools/moc/Test.framework/Headers/testinterface.h index 9662a02bc3..d9f9a2b0f5 100644 --- a/tests/auto/tools/moc/Test.framework/Headers/testinterface.h +++ b/tests/auto/tools/moc/Test.framework/Headers/testinterface.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/assign-namespace.h b/tests/auto/tools/moc/assign-namespace.h index fc6631c18b..c73724918c 100644 --- a/tests/auto/tools/moc/assign-namespace.h +++ b/tests/auto/tools/moc/assign-namespace.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/backslash-newlines.h b/tests/auto/tools/moc/backslash-newlines.h index d65c15c6d5..e7edf4664b 100644 --- a/tests/auto/tools/moc/backslash-newlines.h +++ b/tests/auto/tools/moc/backslash-newlines.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/c-comments.h b/tests/auto/tools/moc/c-comments.h index 8c0709338d..fc58191e86 100644 --- a/tests/auto/tools/moc/c-comments.h +++ b/tests/auto/tools/moc/c-comments.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/cstyle-enums.h b/tests/auto/tools/moc/cstyle-enums.h index 59076a535f..21a883eb58 100644 --- a/tests/auto/tools/moc/cstyle-enums.h +++ b/tests/auto/tools/moc/cstyle-enums.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/dir-in-include-path.h b/tests/auto/tools/moc/dir-in-include-path.h index b69514ec74..cb530e20d9 100644 --- a/tests/auto/tools/moc/dir-in-include-path.h +++ b/tests/auto/tools/moc/dir-in-include-path.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/error-on-wrong-notify.h b/tests/auto/tools/moc/error-on-wrong-notify.h index 381932a265..2f8de785a0 100644 --- a/tests/auto/tools/moc/error-on-wrong-notify.h +++ b/tests/auto/tools/moc/error-on-wrong-notify.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/escapes-in-string-literals.h b/tests/auto/tools/moc/escapes-in-string-literals.h index 437ceae82b..71e9759f36 100644 --- a/tests/auto/tools/moc/escapes-in-string-literals.h +++ b/tests/auto/tools/moc/escapes-in-string-literals.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/extraqualification.h b/tests/auto/tools/moc/extraqualification.h index b2b028eb03..a54ed1770e 100644 --- a/tests/auto/tools/moc/extraqualification.h +++ b/tests/auto/tools/moc/extraqualification.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/forgotten-qinterface.h b/tests/auto/tools/moc/forgotten-qinterface.h index e52a63e4df..3be4422bdc 100644 --- a/tests/auto/tools/moc/forgotten-qinterface.h +++ b/tests/auto/tools/moc/forgotten-qinterface.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/gadgetwithnoenums.h b/tests/auto/tools/moc/gadgetwithnoenums.h index c5ec939b3a..1ef0eeece9 100644 --- a/tests/auto/tools/moc/gadgetwithnoenums.h +++ b/tests/auto/tools/moc/gadgetwithnoenums.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/interface-from-framework.h b/tests/auto/tools/moc/interface-from-framework.h index 242d9f2286..e78b6ec51a 100644 --- a/tests/auto/tools/moc/interface-from-framework.h +++ b/tests/auto/tools/moc/interface-from-framework.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/macro-on-cmdline.h b/tests/auto/tools/moc/macro-on-cmdline.h index a1c162d10b..78ca4778cc 100644 --- a/tests/auto/tools/moc/macro-on-cmdline.h +++ b/tests/auto/tools/moc/macro-on-cmdline.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/namespaced-flags.h b/tests/auto/tools/moc/namespaced-flags.h index b1c10792c1..86b9891028 100644 --- a/tests/auto/tools/moc/namespaced-flags.h +++ b/tests/auto/tools/moc/namespaced-flags.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/no-keywords.h b/tests/auto/tools/moc/no-keywords.h index 2da7100aeb..4f15aa2ad0 100644 --- a/tests/auto/tools/moc/no-keywords.h +++ b/tests/auto/tools/moc/no-keywords.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/oldstyle-casts.h b/tests/auto/tools/moc/oldstyle-casts.h index 2754bb4e18..f26aeb5629 100644 --- a/tests/auto/tools/moc/oldstyle-casts.h +++ b/tests/auto/tools/moc/oldstyle-casts.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/os9-newlines.h b/tests/auto/tools/moc/os9-newlines.h index 66bc51653e..a2bf57fbb4 100644 --- a/tests/auto/tools/moc/os9-newlines.h +++ b/tests/auto/tools/moc/os9-newlines.h @@ -1 +1 @@ -/**************************************************************************** ** ** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** ** This file is part of the test suite of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** GNU Lesser General Public License Usage ** This file may be used under the terms of the GNU Lesser General Public ** License version 2.1 as published by the Free Software Foundation and ** appearing in the file LICENSE.LGPL included in the packaging of this ** file. Please review the following information to ensure the GNU Lesser ** General Public License version 2.1 requirements will be met: ** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Nokia gives you certain additional ** rights. These rights are described in the Nokia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU General ** Public License version 3.0 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 3.0 requirements will be met: ** http://www.gnu.org/copyleft/gpl.html. ** ** Other Usage ** Alternatively, this file may be used in accordance with the terms and ** conditions contained in a signed written agreement between you and Nokia. ** ** ** ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include class Os9Newlines : public QObject { Q_OBJECT public Q_SLOTS: inline void testSlot() {} }; \ No newline at end of file +/**************************************************************************** ** ** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** ** This file is part of the test suite of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** GNU Lesser General Public License Usage ** This file may be used under the terms of the GNU Lesser General Public ** License version 2.1 as published by the Free Software Foundation and ** appearing in the file LICENSE.LGPL included in the packaging of this ** file. Please review the following information to ensure the GNU Lesser ** General Public License version 2.1 requirements will be met: ** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Nokia gives you certain additional ** rights. These rights are described in the Nokia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU General ** Public License version 3.0 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 3.0 requirements will be met: ** http://www.gnu.org/copyleft/gpl.html. ** ** Other Usage ** Alternatively, this file may be used in accordance with the terms and ** conditions contained in a signed written agreement between you and Nokia. ** ** ** ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include class Os9Newlines : public QObject { Q_OBJECT public Q_SLOTS: inline void testSlot() {} }; \ No newline at end of file diff --git a/tests/auto/tools/moc/parse-boost.h b/tests/auto/tools/moc/parse-boost.h index 9453f7f2bf..f475cb8778 100644 --- a/tests/auto/tools/moc/parse-boost.h +++ b/tests/auto/tools/moc/parse-boost.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/pure-virtual-signals.h b/tests/auto/tools/moc/pure-virtual-signals.h index a70370c5bc..4009de1e86 100644 --- a/tests/auto/tools/moc/pure-virtual-signals.h +++ b/tests/auto/tools/moc/pure-virtual-signals.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/qinvokable.h b/tests/auto/tools/moc/qinvokable.h index 313a49d7a8..17f1610ebe 100644 --- a/tests/auto/tools/moc/qinvokable.h +++ b/tests/auto/tools/moc/qinvokable.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/qprivateslots.h b/tests/auto/tools/moc/qprivateslots.h index 4713b41522..25c2ce2ba6 100644 --- a/tests/auto/tools/moc/qprivateslots.h +++ b/tests/auto/tools/moc/qprivateslots.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/single_function_keyword.h b/tests/auto/tools/moc/single_function_keyword.h index 1ce2517e4c..62b91e2b38 100644 --- a/tests/auto/tools/moc/single_function_keyword.h +++ b/tests/auto/tools/moc/single_function_keyword.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/slots-with-void-template.h b/tests/auto/tools/moc/slots-with-void-template.h index 62eb42e13d..d182e752d9 100644 --- a/tests/auto/tools/moc/slots-with-void-template.h +++ b/tests/auto/tools/moc/slots-with-void-template.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/task189996.h b/tests/auto/tools/moc/task189996.h index 6f8701f008..1f07266d18 100644 --- a/tests/auto/tools/moc/task189996.h +++ b/tests/auto/tools/moc/task189996.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/task192552.h b/tests/auto/tools/moc/task192552.h index 016d12a12a..843c19f11d 100644 --- a/tests/auto/tools/moc/task192552.h +++ b/tests/auto/tools/moc/task192552.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/task234909.h b/tests/auto/tools/moc/task234909.h index a24e0b301a..ead7ce7791 100644 --- a/tests/auto/tools/moc/task234909.h +++ b/tests/auto/tools/moc/task234909.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/task240368.h b/tests/auto/tools/moc/task240368.h index 320cad3ff8..c019a5457d 100644 --- a/tests/auto/tools/moc/task240368.h +++ b/tests/auto/tools/moc/task240368.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/task87883.h b/tests/auto/tools/moc/task87883.h index aedbd386c9..3079809020 100644 --- a/tests/auto/tools/moc/task87883.h +++ b/tests/auto/tools/moc/task87883.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/template-gtgt.h b/tests/auto/tools/moc/template-gtgt.h index 42aae6e633..601c706c14 100644 --- a/tests/auto/tools/moc/template-gtgt.h +++ b/tests/auto/tools/moc/template-gtgt.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/testproject/Plugin/Plugin.h b/tests/auto/tools/moc/testproject/Plugin/Plugin.h index 6c8cffe7d9..90ed8e9be1 100644 --- a/tests/auto/tools/moc/testproject/Plugin/Plugin.h +++ b/tests/auto/tools/moc/testproject/Plugin/Plugin.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/trigraphs.h b/tests/auto/tools/moc/trigraphs.h index cb074e7dcd..9a76c933b1 100644 --- a/tests/auto/tools/moc/trigraphs.h +++ b/tests/auto/tools/moc/trigraphs.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/tst_moc.cpp b/tests/auto/tools/moc/tst_moc.cpp index 95d7d2ce00..bce1ad8d00 100644 --- a/tests/auto/tools/moc/tst_moc.cpp +++ b/tests/auto/tools/moc/tst_moc.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/using-namespaces.h b/tests/auto/tools/moc/using-namespaces.h index 6be9c283a3..52d15e7541 100644 --- a/tests/auto/tools/moc/using-namespaces.h +++ b/tests/auto/tools/moc/using-namespaces.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/warn-on-multiple-qobject-subclasses.h b/tests/auto/tools/moc/warn-on-multiple-qobject-subclasses.h index f6863bdde6..ae4ca10960 100644 --- a/tests/auto/tools/moc/warn-on-multiple-qobject-subclasses.h +++ b/tests/auto/tools/moc/warn-on-multiple-qobject-subclasses.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/warn-on-property-without-read.h b/tests/auto/tools/moc/warn-on-property-without-read.h index 77fbedab14..c631b9da52 100644 --- a/tests/auto/tools/moc/warn-on-property-without-read.h +++ b/tests/auto/tools/moc/warn-on-property-without-read.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/moc/win-newlines.h b/tests/auto/tools/moc/win-newlines.h index 568cd300f7..0dd7366bbc 100644 --- a/tests/auto/tools/moc/win-newlines.h +++ b/tests/auto/tools/moc/win-newlines.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testcompiler.cpp b/tests/auto/tools/qmake/testcompiler.cpp index 1f21713b99..098c8c6d7c 100644 --- a/tests/auto/tools/qmake/testcompiler.cpp +++ b/tests/auto/tools/qmake/testcompiler.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testcompiler.h b/tests/auto/tools/qmake/testcompiler.h index fa827685f7..7e8d7ecbe6 100644 --- a/tests/auto/tools/qmake/testcompiler.h +++ b/tests/auto/tools/qmake/testcompiler.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/findDeps/main.cpp b/tests/auto/tools/qmake/testdata/findDeps/main.cpp index f203909aa4..ab39567517 100644 --- a/tests/auto/tools/qmake/testdata/findDeps/main.cpp +++ b/tests/auto/tools/qmake/testdata/findDeps/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/findDeps/object1.h b/tests/auto/tools/qmake/testdata/findDeps/object1.h index fe29c9d5d8..a2a9bc3978 100644 --- a/tests/auto/tools/qmake/testdata/findDeps/object1.h +++ b/tests/auto/tools/qmake/testdata/findDeps/object1.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/findDeps/object2.h b/tests/auto/tools/qmake/testdata/findDeps/object2.h index c03434a7a7..d055694a48 100644 --- a/tests/auto/tools/qmake/testdata/findDeps/object2.h +++ b/tests/auto/tools/qmake/testdata/findDeps/object2.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/findDeps/object3.h b/tests/auto/tools/qmake/testdata/findDeps/object3.h index 63fd98248a..d3e6ae685e 100644 --- a/tests/auto/tools/qmake/testdata/findDeps/object3.h +++ b/tests/auto/tools/qmake/testdata/findDeps/object3.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/findDeps/object4.h b/tests/auto/tools/qmake/testdata/findDeps/object4.h index d1191b72cb..8ef8458b50 100644 --- a/tests/auto/tools/qmake/testdata/findDeps/object4.h +++ b/tests/auto/tools/qmake/testdata/findDeps/object4.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/findDeps/object5.h b/tests/auto/tools/qmake/testdata/findDeps/object5.h index 3bce90fa0b..508ac33832 100644 --- a/tests/auto/tools/qmake/testdata/findDeps/object5.h +++ b/tests/auto/tools/qmake/testdata/findDeps/object5.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/findDeps/object6.h b/tests/auto/tools/qmake/testdata/findDeps/object6.h index 1c4bbd22b5..460f2ba6cd 100644 --- a/tests/auto/tools/qmake/testdata/findDeps/object6.h +++ b/tests/auto/tools/qmake/testdata/findDeps/object6.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/findDeps/object7.h b/tests/auto/tools/qmake/testdata/findDeps/object7.h index 8b0f328a30..19837add87 100644 --- a/tests/auto/tools/qmake/testdata/findDeps/object7.h +++ b/tests/auto/tools/qmake/testdata/findDeps/object7.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/findDeps/object8.h b/tests/auto/tools/qmake/testdata/findDeps/object8.h index d768e1d9b5..025e656a39 100644 --- a/tests/auto/tools/qmake/testdata/findDeps/object8.h +++ b/tests/auto/tools/qmake/testdata/findDeps/object8.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/findDeps/object9.h b/tests/auto/tools/qmake/testdata/findDeps/object9.h index 734437ad6f..8b8c84478b 100644 --- a/tests/auto/tools/qmake/testdata/findDeps/object9.h +++ b/tests/auto/tools/qmake/testdata/findDeps/object9.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/findMocs/main.cpp b/tests/auto/tools/qmake/testdata/findMocs/main.cpp index 2413dcc2a1..ed2faacfba 100644 --- a/tests/auto/tools/qmake/testdata/findMocs/main.cpp +++ b/tests/auto/tools/qmake/testdata/findMocs/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/findMocs/object1.h b/tests/auto/tools/qmake/testdata/findMocs/object1.h index c62b314e14..1b3f3b6cba 100644 --- a/tests/auto/tools/qmake/testdata/findMocs/object1.h +++ b/tests/auto/tools/qmake/testdata/findMocs/object1.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/findMocs/object2.h b/tests/auto/tools/qmake/testdata/findMocs/object2.h index 8a873c3875..a95a971d98 100644 --- a/tests/auto/tools/qmake/testdata/findMocs/object2.h +++ b/tests/auto/tools/qmake/testdata/findMocs/object2.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/findMocs/object3.h b/tests/auto/tools/qmake/testdata/findMocs/object3.h index 6e61f1cb5f..c347385688 100644 --- a/tests/auto/tools/qmake/testdata/findMocs/object3.h +++ b/tests/auto/tools/qmake/testdata/findMocs/object3.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/findMocs/object4.h b/tests/auto/tools/qmake/testdata/findMocs/object4.h index 2e51228476..67814ee6eb 100644 --- a/tests/auto/tools/qmake/testdata/findMocs/object4.h +++ b/tests/auto/tools/qmake/testdata/findMocs/object4.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/findMocs/object5.h b/tests/auto/tools/qmake/testdata/findMocs/object5.h index d3addb2ddf..a17eaab6f4 100644 --- a/tests/auto/tools/qmake/testdata/findMocs/object5.h +++ b/tests/auto/tools/qmake/testdata/findMocs/object5.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/findMocs/object6.h b/tests/auto/tools/qmake/testdata/findMocs/object6.h index 17b56ac2ed..41b1d9635f 100644 --- a/tests/auto/tools/qmake/testdata/findMocs/object6.h +++ b/tests/auto/tools/qmake/testdata/findMocs/object6.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/findMocs/object7.h b/tests/auto/tools/qmake/testdata/findMocs/object7.h index 981a3d5689..a09faed78a 100644 --- a/tests/auto/tools/qmake/testdata/findMocs/object7.h +++ b/tests/auto/tools/qmake/testdata/findMocs/object7.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/functions/1.cpp b/tests/auto/tools/qmake/testdata/functions/1.cpp index df92035b61..b7ac2c493e 100644 --- a/tests/auto/tools/qmake/testdata/functions/1.cpp +++ b/tests/auto/tools/qmake/testdata/functions/1.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/functions/2.cpp b/tests/auto/tools/qmake/testdata/functions/2.cpp index df92035b61..b7ac2c493e 100644 --- a/tests/auto/tools/qmake/testdata/functions/2.cpp +++ b/tests/auto/tools/qmake/testdata/functions/2.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/functions/one/1.cpp b/tests/auto/tools/qmake/testdata/functions/one/1.cpp index df92035b61..b7ac2c493e 100644 --- a/tests/auto/tools/qmake/testdata/functions/one/1.cpp +++ b/tests/auto/tools/qmake/testdata/functions/one/1.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/functions/one/2.cpp b/tests/auto/tools/qmake/testdata/functions/one/2.cpp index df92035b61..b7ac2c493e 100644 --- a/tests/auto/tools/qmake/testdata/functions/one/2.cpp +++ b/tests/auto/tools/qmake/testdata/functions/one/2.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/functions/three/wildcard21.cpp b/tests/auto/tools/qmake/testdata/functions/three/wildcard21.cpp index df92035b61..b7ac2c493e 100644 --- a/tests/auto/tools/qmake/testdata/functions/three/wildcard21.cpp +++ b/tests/auto/tools/qmake/testdata/functions/three/wildcard21.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/functions/three/wildcard22.cpp b/tests/auto/tools/qmake/testdata/functions/three/wildcard22.cpp index df92035b61..b7ac2c493e 100644 --- a/tests/auto/tools/qmake/testdata/functions/three/wildcard22.cpp +++ b/tests/auto/tools/qmake/testdata/functions/three/wildcard22.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/functions/two/1.cpp b/tests/auto/tools/qmake/testdata/functions/two/1.cpp index df92035b61..b7ac2c493e 100644 --- a/tests/auto/tools/qmake/testdata/functions/two/1.cpp +++ b/tests/auto/tools/qmake/testdata/functions/two/1.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/functions/two/2.cpp b/tests/auto/tools/qmake/testdata/functions/two/2.cpp index df92035b61..b7ac2c493e 100644 --- a/tests/auto/tools/qmake/testdata/functions/two/2.cpp +++ b/tests/auto/tools/qmake/testdata/functions/two/2.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/functions/wildcard21.cpp b/tests/auto/tools/qmake/testdata/functions/wildcard21.cpp index df92035b61..b7ac2c493e 100644 --- a/tests/auto/tools/qmake/testdata/functions/wildcard21.cpp +++ b/tests/auto/tools/qmake/testdata/functions/wildcard21.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/functions/wildcard22.cpp b/tests/auto/tools/qmake/testdata/functions/wildcard22.cpp index df92035b61..b7ac2c493e 100644 --- a/tests/auto/tools/qmake/testdata/functions/wildcard22.cpp +++ b/tests/auto/tools/qmake/testdata/functions/wildcard22.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/include_dir/main.cpp b/tests/auto/tools/qmake/testdata/include_dir/main.cpp index 8471e367e9..f88dbac4fc 100644 --- a/tests/auto/tools/qmake/testdata/include_dir/main.cpp +++ b/tests/auto/tools/qmake/testdata/include_dir/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/include_dir/test_file.cpp b/tests/auto/tools/qmake/testdata/include_dir/test_file.cpp index 43807d0867..5c7dcc4825 100644 --- a/tests/auto/tools/qmake/testdata/include_dir/test_file.cpp +++ b/tests/auto/tools/qmake/testdata/include_dir/test_file.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/include_dir/test_file.h b/tests/auto/tools/qmake/testdata/include_dir/test_file.h index 994874284e..cf8236084d 100644 --- a/tests/auto/tools/qmake/testdata/include_dir/test_file.h +++ b/tests/auto/tools/qmake/testdata/include_dir/test_file.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/include_function/main.cpp b/tests/auto/tools/qmake/testdata/include_function/main.cpp index 67224bf860..980b3b2eef 100644 --- a/tests/auto/tools/qmake/testdata/include_function/main.cpp +++ b/tests/auto/tools/qmake/testdata/include_function/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/install_depends/main.cpp b/tests/auto/tools/qmake/testdata/install_depends/main.cpp index 05d257f8b6..253be88814 100644 --- a/tests/auto/tools/qmake/testdata/install_depends/main.cpp +++ b/tests/auto/tools/qmake/testdata/install_depends/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/install_depends/test_file.cpp b/tests/auto/tools/qmake/testdata/install_depends/test_file.cpp index 0dc2d5b263..14b431f00d 100644 --- a/tests/auto/tools/qmake/testdata/install_depends/test_file.cpp +++ b/tests/auto/tools/qmake/testdata/install_depends/test_file.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/install_depends/test_file.h b/tests/auto/tools/qmake/testdata/install_depends/test_file.h index d7f12ddbad..a00d395580 100644 --- a/tests/auto/tools/qmake/testdata/install_depends/test_file.h +++ b/tests/auto/tools/qmake/testdata/install_depends/test_file.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/one_space/main.cpp b/tests/auto/tools/qmake/testdata/one_space/main.cpp index a47ff9b99d..d75a55df27 100644 --- a/tests/auto/tools/qmake/testdata/one_space/main.cpp +++ b/tests/auto/tools/qmake/testdata/one_space/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/quotedfilenames/main.cpp b/tests/auto/tools/qmake/testdata/quotedfilenames/main.cpp index 91dfc156b9..5a64aad773 100644 --- a/tests/auto/tools/qmake/testdata/quotedfilenames/main.cpp +++ b/tests/auto/tools/qmake/testdata/quotedfilenames/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/shadow_files/main.cpp b/tests/auto/tools/qmake/testdata/shadow_files/main.cpp index 05d257f8b6..253be88814 100644 --- a/tests/auto/tools/qmake/testdata/shadow_files/main.cpp +++ b/tests/auto/tools/qmake/testdata/shadow_files/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/shadow_files/test_file.cpp b/tests/auto/tools/qmake/testdata/shadow_files/test_file.cpp index 0dc2d5b263..14b431f00d 100644 --- a/tests/auto/tools/qmake/testdata/shadow_files/test_file.cpp +++ b/tests/auto/tools/qmake/testdata/shadow_files/test_file.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/shadow_files/test_file.h b/tests/auto/tools/qmake/testdata/shadow_files/test_file.h index d7f12ddbad..a00d395580 100644 --- a/tests/auto/tools/qmake/testdata/shadow_files/test_file.h +++ b/tests/auto/tools/qmake/testdata/shadow_files/test_file.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/simple_app/main.cpp b/tests/auto/tools/qmake/testdata/simple_app/main.cpp index 697c7c050a..ef011a10b0 100644 --- a/tests/auto/tools/qmake/testdata/simple_app/main.cpp +++ b/tests/auto/tools/qmake/testdata/simple_app/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/simple_app/test_file.cpp b/tests/auto/tools/qmake/testdata/simple_app/test_file.cpp index 0dc2d5b263..14b431f00d 100644 --- a/tests/auto/tools/qmake/testdata/simple_app/test_file.cpp +++ b/tests/auto/tools/qmake/testdata/simple_app/test_file.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/simple_app/test_file.h b/tests/auto/tools/qmake/testdata/simple_app/test_file.h index d7f12ddbad..a00d395580 100644 --- a/tests/auto/tools/qmake/testdata/simple_app/test_file.h +++ b/tests/auto/tools/qmake/testdata/simple_app/test_file.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/simple_dll/simple.cpp b/tests/auto/tools/qmake/testdata/simple_dll/simple.cpp index 539725eb0b..a0a8911644 100644 --- a/tests/auto/tools/qmake/testdata/simple_dll/simple.cpp +++ b/tests/auto/tools/qmake/testdata/simple_dll/simple.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/simple_dll/simple.h b/tests/auto/tools/qmake/testdata/simple_dll/simple.h index 1a76482985..351b568923 100644 --- a/tests/auto/tools/qmake/testdata/simple_dll/simple.h +++ b/tests/auto/tools/qmake/testdata/simple_dll/simple.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/simple_lib/simple.cpp b/tests/auto/tools/qmake/testdata/simple_lib/simple.cpp index 539725eb0b..a0a8911644 100644 --- a/tests/auto/tools/qmake/testdata/simple_lib/simple.cpp +++ b/tests/auto/tools/qmake/testdata/simple_lib/simple.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/simple_lib/simple.h b/tests/auto/tools/qmake/testdata/simple_lib/simple.h index 912f028ced..ce9311e0a1 100644 --- a/tests/auto/tools/qmake/testdata/simple_lib/simple.h +++ b/tests/auto/tools/qmake/testdata/simple_lib/simple.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/subdir_via_pro_file_extra_target/simple/main.cpp b/tests/auto/tools/qmake/testdata/subdir_via_pro_file_extra_target/simple/main.cpp index 5597ef22cc..76e559325e 100644 --- a/tests/auto/tools/qmake/testdata/subdir_via_pro_file_extra_target/simple/main.cpp +++ b/tests/auto/tools/qmake/testdata/subdir_via_pro_file_extra_target/simple/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/subdirs/simple_app/main.cpp b/tests/auto/tools/qmake/testdata/subdirs/simple_app/main.cpp index 697c7c050a..ef011a10b0 100644 --- a/tests/auto/tools/qmake/testdata/subdirs/simple_app/main.cpp +++ b/tests/auto/tools/qmake/testdata/subdirs/simple_app/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/subdirs/simple_app/test_file.cpp b/tests/auto/tools/qmake/testdata/subdirs/simple_app/test_file.cpp index 0dc2d5b263..14b431f00d 100644 --- a/tests/auto/tools/qmake/testdata/subdirs/simple_app/test_file.cpp +++ b/tests/auto/tools/qmake/testdata/subdirs/simple_app/test_file.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/subdirs/simple_app/test_file.h b/tests/auto/tools/qmake/testdata/subdirs/simple_app/test_file.h index d7f12ddbad..a00d395580 100644 --- a/tests/auto/tools/qmake/testdata/subdirs/simple_app/test_file.h +++ b/tests/auto/tools/qmake/testdata/subdirs/simple_app/test_file.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/subdirs/simple_dll/simple.cpp b/tests/auto/tools/qmake/testdata/subdirs/simple_dll/simple.cpp index 539725eb0b..a0a8911644 100644 --- a/tests/auto/tools/qmake/testdata/subdirs/simple_dll/simple.cpp +++ b/tests/auto/tools/qmake/testdata/subdirs/simple_dll/simple.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/testdata/subdirs/simple_dll/simple.h b/tests/auto/tools/qmake/testdata/subdirs/simple_dll/simple.h index 1a76482985..351b568923 100644 --- a/tests/auto/tools/qmake/testdata/subdirs/simple_dll/simple.h +++ b/tests/auto/tools/qmake/testdata/subdirs/simple_dll/simple.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/qmake/tst_qmake.cpp b/tests/auto/tools/qmake/tst_qmake.cpp index 6e1562e2ca..03f7720c22 100644 --- a/tests/auto/tools/qmake/tst_qmake.cpp +++ b/tests/auto/tools/qmake/tst_qmake.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/rcc/tst_rcc.cpp b/tests/auto/tools/rcc/tst_rcc.cpp index 90baf36b35..963ec75d75 100644 --- a/tests/auto/tools/rcc/tst_rcc.cpp +++ b/tests/auto/tools/rcc/tst_rcc.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/batchtranslation.ui b/tests/auto/tools/uic/baseline/batchtranslation.ui index 6cb2943606..e3103cb358 100644 --- a/tests/auto/tools/uic/baseline/batchtranslation.ui +++ b/tests/auto/tools/uic/baseline/batchtranslation.ui @@ -2,7 +2,7 @@ ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/batchtranslation.ui.h b/tests/auto/tools/uic/baseline/batchtranslation.ui.h index 29cefd5720..a2f65b58a9 100644 --- a/tests/auto/tools/uic/baseline/batchtranslation.ui.h +++ b/tests/auto/tools/uic/baseline/batchtranslation.ui.h @@ -1,7 +1,7 @@ /* ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/config.ui b/tests/auto/tools/uic/baseline/config.ui index bebe17b41f..e509a5dcc9 100644 --- a/tests/auto/tools/uic/baseline/config.ui +++ b/tests/auto/tools/uic/baseline/config.ui @@ -1,7 +1,7 @@ ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/config.ui.h b/tests/auto/tools/uic/baseline/config.ui.h index 1b32b61796..cfaf7b7846 100644 --- a/tests/auto/tools/uic/baseline/config.ui.h +++ b/tests/auto/tools/uic/baseline/config.ui.h @@ -1,7 +1,7 @@ /* ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/finddialog.ui b/tests/auto/tools/uic/baseline/finddialog.ui index 913a868ad1..b2d3c4097d 100644 --- a/tests/auto/tools/uic/baseline/finddialog.ui +++ b/tests/auto/tools/uic/baseline/finddialog.ui @@ -1,7 +1,7 @@ ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/finddialog.ui.h b/tests/auto/tools/uic/baseline/finddialog.ui.h index 919eea42de..3f544c999d 100644 --- a/tests/auto/tools/uic/baseline/finddialog.ui.h +++ b/tests/auto/tools/uic/baseline/finddialog.ui.h @@ -1,7 +1,7 @@ /* ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/formwindowsettings.ui b/tests/auto/tools/uic/baseline/formwindowsettings.ui index fea18fe873..bca70a7fe1 100644 --- a/tests/auto/tools/uic/baseline/formwindowsettings.ui +++ b/tests/auto/tools/uic/baseline/formwindowsettings.ui @@ -1,7 +1,7 @@ ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/formwindowsettings.ui.h b/tests/auto/tools/uic/baseline/formwindowsettings.ui.h index d84186bdbe..9e9edc08a6 100644 --- a/tests/auto/tools/uic/baseline/formwindowsettings.ui.h +++ b/tests/auto/tools/uic/baseline/formwindowsettings.ui.h @@ -1,7 +1,7 @@ /* ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/helpdialog.ui b/tests/auto/tools/uic/baseline/helpdialog.ui index 133f3d2af4..7da10cd4f7 100644 --- a/tests/auto/tools/uic/baseline/helpdialog.ui +++ b/tests/auto/tools/uic/baseline/helpdialog.ui @@ -2,7 +2,7 @@ ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/helpdialog.ui.h b/tests/auto/tools/uic/baseline/helpdialog.ui.h index a1f10c221e..fa7bbe3810 100644 --- a/tests/auto/tools/uic/baseline/helpdialog.ui.h +++ b/tests/auto/tools/uic/baseline/helpdialog.ui.h @@ -1,7 +1,7 @@ /* ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/listwidgeteditor.ui b/tests/auto/tools/uic/baseline/listwidgeteditor.ui index fa7d962bdb..0a38d8f65f 100644 --- a/tests/auto/tools/uic/baseline/listwidgeteditor.ui +++ b/tests/auto/tools/uic/baseline/listwidgeteditor.ui @@ -1,7 +1,7 @@ ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/listwidgeteditor.ui.h b/tests/auto/tools/uic/baseline/listwidgeteditor.ui.h index 5da2aadbaa..a95f2cb860 100644 --- a/tests/auto/tools/uic/baseline/listwidgeteditor.ui.h +++ b/tests/auto/tools/uic/baseline/listwidgeteditor.ui.h @@ -1,7 +1,7 @@ /* ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/newactiondialog.ui b/tests/auto/tools/uic/baseline/newactiondialog.ui index ae6212f868..ef326fe63e 100644 --- a/tests/auto/tools/uic/baseline/newactiondialog.ui +++ b/tests/auto/tools/uic/baseline/newactiondialog.ui @@ -1,7 +1,7 @@ ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/newactiondialog.ui.h b/tests/auto/tools/uic/baseline/newactiondialog.ui.h index 05cd8b8279..d409ccb786 100644 --- a/tests/auto/tools/uic/baseline/newactiondialog.ui.h +++ b/tests/auto/tools/uic/baseline/newactiondialog.ui.h @@ -1,7 +1,7 @@ /* ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/newform.ui b/tests/auto/tools/uic/baseline/newform.ui index 3f0a92dfb1..d83aef26a2 100644 --- a/tests/auto/tools/uic/baseline/newform.ui +++ b/tests/auto/tools/uic/baseline/newform.ui @@ -2,7 +2,7 @@ ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/newform.ui.h b/tests/auto/tools/uic/baseline/newform.ui.h index 3771bfac47..b744dd6869 100644 --- a/tests/auto/tools/uic/baseline/newform.ui.h +++ b/tests/auto/tools/uic/baseline/newform.ui.h @@ -1,7 +1,7 @@ /* ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/orderdialog.ui b/tests/auto/tools/uic/baseline/orderdialog.ui index b44824778f..e95ac2906f 100644 --- a/tests/auto/tools/uic/baseline/orderdialog.ui +++ b/tests/auto/tools/uic/baseline/orderdialog.ui @@ -1,7 +1,7 @@ ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/orderdialog.ui.h b/tests/auto/tools/uic/baseline/orderdialog.ui.h index 6745813f76..16fa98b6de 100644 --- a/tests/auto/tools/uic/baseline/orderdialog.ui.h +++ b/tests/auto/tools/uic/baseline/orderdialog.ui.h @@ -1,7 +1,7 @@ /* ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/paletteeditor.ui b/tests/auto/tools/uic/baseline/paletteeditor.ui index 1cc6a18583..62b728267b 100644 --- a/tests/auto/tools/uic/baseline/paletteeditor.ui +++ b/tests/auto/tools/uic/baseline/paletteeditor.ui @@ -1,7 +1,7 @@ ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/paletteeditor.ui.h b/tests/auto/tools/uic/baseline/paletteeditor.ui.h index 681d6705b3..808295ddf6 100644 --- a/tests/auto/tools/uic/baseline/paletteeditor.ui.h +++ b/tests/auto/tools/uic/baseline/paletteeditor.ui.h @@ -1,7 +1,7 @@ /* ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/phrasebookbox.ui b/tests/auto/tools/uic/baseline/phrasebookbox.ui index 66558ea28a..95e92e4311 100644 --- a/tests/auto/tools/uic/baseline/phrasebookbox.ui +++ b/tests/auto/tools/uic/baseline/phrasebookbox.ui @@ -1,7 +1,7 @@ ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/phrasebookbox.ui.h b/tests/auto/tools/uic/baseline/phrasebookbox.ui.h index dc3e4e1038..2b1c6222c1 100644 --- a/tests/auto/tools/uic/baseline/phrasebookbox.ui.h +++ b/tests/auto/tools/uic/baseline/phrasebookbox.ui.h @@ -1,7 +1,7 @@ /* ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/plugindialog.ui b/tests/auto/tools/uic/baseline/plugindialog.ui index d4bec98834..924d506c2d 100644 --- a/tests/auto/tools/uic/baseline/plugindialog.ui +++ b/tests/auto/tools/uic/baseline/plugindialog.ui @@ -1,7 +1,7 @@ ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/plugindialog.ui.h b/tests/auto/tools/uic/baseline/plugindialog.ui.h index 353470c484..bbde5ab416 100644 --- a/tests/auto/tools/uic/baseline/plugindialog.ui.h +++ b/tests/auto/tools/uic/baseline/plugindialog.ui.h @@ -1,7 +1,7 @@ /* ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/previewwidget.ui b/tests/auto/tools/uic/baseline/previewwidget.ui index d38ab7cf30..00bcfbe66c 100644 --- a/tests/auto/tools/uic/baseline/previewwidget.ui +++ b/tests/auto/tools/uic/baseline/previewwidget.ui @@ -1,7 +1,7 @@ ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/previewwidget.ui.h b/tests/auto/tools/uic/baseline/previewwidget.ui.h index a3e4e4d0e5..84eba31b17 100644 --- a/tests/auto/tools/uic/baseline/previewwidget.ui.h +++ b/tests/auto/tools/uic/baseline/previewwidget.ui.h @@ -1,7 +1,7 @@ /* ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/qfiledialog.ui b/tests/auto/tools/uic/baseline/qfiledialog.ui index 85f5991722..7994f104ac 100644 --- a/tests/auto/tools/uic/baseline/qfiledialog.ui +++ b/tests/auto/tools/uic/baseline/qfiledialog.ui @@ -1,7 +1,7 @@ ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/qfiledialog.ui.h b/tests/auto/tools/uic/baseline/qfiledialog.ui.h index 50a9de3cf6..75b03ed518 100644 --- a/tests/auto/tools/uic/baseline/qfiledialog.ui.h +++ b/tests/auto/tools/uic/baseline/qfiledialog.ui.h @@ -1,7 +1,7 @@ /* ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/qtgradientdialog.ui b/tests/auto/tools/uic/baseline/qtgradientdialog.ui index 0c5578fd0b..045806eb31 100644 --- a/tests/auto/tools/uic/baseline/qtgradientdialog.ui +++ b/tests/auto/tools/uic/baseline/qtgradientdialog.ui @@ -1,7 +1,7 @@ ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/qtgradientdialog.ui.h b/tests/auto/tools/uic/baseline/qtgradientdialog.ui.h index 30af7cebc4..f9721bad0a 100644 --- a/tests/auto/tools/uic/baseline/qtgradientdialog.ui.h +++ b/tests/auto/tools/uic/baseline/qtgradientdialog.ui.h @@ -1,7 +1,7 @@ /* ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/qtgradienteditor.ui b/tests/auto/tools/uic/baseline/qtgradienteditor.ui index 472066b7fa..4754bc5899 100644 --- a/tests/auto/tools/uic/baseline/qtgradienteditor.ui +++ b/tests/auto/tools/uic/baseline/qtgradienteditor.ui @@ -1,7 +1,7 @@ ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/qtgradienteditor.ui.h b/tests/auto/tools/uic/baseline/qtgradienteditor.ui.h index d53d4f9cc1..ca9de7f2a8 100644 --- a/tests/auto/tools/uic/baseline/qtgradienteditor.ui.h +++ b/tests/auto/tools/uic/baseline/qtgradienteditor.ui.h @@ -1,7 +1,7 @@ /* ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/qtgradientviewdialog.ui b/tests/auto/tools/uic/baseline/qtgradientviewdialog.ui index c84907289b..4b02db52de 100644 --- a/tests/auto/tools/uic/baseline/qtgradientviewdialog.ui +++ b/tests/auto/tools/uic/baseline/qtgradientviewdialog.ui @@ -1,7 +1,7 @@ ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/qtgradientviewdialog.ui.h b/tests/auto/tools/uic/baseline/qtgradientviewdialog.ui.h index e5491cbaf6..61c814964a 100644 --- a/tests/auto/tools/uic/baseline/qtgradientviewdialog.ui.h +++ b/tests/auto/tools/uic/baseline/qtgradientviewdialog.ui.h @@ -1,7 +1,7 @@ /* ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/saveformastemplate.ui b/tests/auto/tools/uic/baseline/saveformastemplate.ui index 81d55d3b63..40ee76fbba 100644 --- a/tests/auto/tools/uic/baseline/saveformastemplate.ui +++ b/tests/auto/tools/uic/baseline/saveformastemplate.ui @@ -1,7 +1,7 @@ ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/saveformastemplate.ui.h b/tests/auto/tools/uic/baseline/saveformastemplate.ui.h index 8c83f0f2e6..bf04e7b22c 100644 --- a/tests/auto/tools/uic/baseline/saveformastemplate.ui.h +++ b/tests/auto/tools/uic/baseline/saveformastemplate.ui.h @@ -1,7 +1,7 @@ /* ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/statistics.ui b/tests/auto/tools/uic/baseline/statistics.ui index ba752e386a..359c6f7612 100644 --- a/tests/auto/tools/uic/baseline/statistics.ui +++ b/tests/auto/tools/uic/baseline/statistics.ui @@ -2,7 +2,7 @@ Statistics ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/statistics.ui.h b/tests/auto/tools/uic/baseline/statistics.ui.h index a73ab6d3b3..76aadcce6d 100644 --- a/tests/auto/tools/uic/baseline/statistics.ui.h +++ b/tests/auto/tools/uic/baseline/statistics.ui.h @@ -1,7 +1,7 @@ /* ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/stringlisteditor.ui b/tests/auto/tools/uic/baseline/stringlisteditor.ui index 96fff1c3ea..c6223a5f83 100644 --- a/tests/auto/tools/uic/baseline/stringlisteditor.ui +++ b/tests/auto/tools/uic/baseline/stringlisteditor.ui @@ -1,7 +1,7 @@ ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/stringlisteditor.ui.h b/tests/auto/tools/uic/baseline/stringlisteditor.ui.h index 0278966d55..163e9a8613 100644 --- a/tests/auto/tools/uic/baseline/stringlisteditor.ui.h +++ b/tests/auto/tools/uic/baseline/stringlisteditor.ui.h @@ -1,7 +1,7 @@ /* ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/tabbedbrowser.ui b/tests/auto/tools/uic/baseline/tabbedbrowser.ui index 6bb608f79f..5b28dd85a4 100644 --- a/tests/auto/tools/uic/baseline/tabbedbrowser.ui +++ b/tests/auto/tools/uic/baseline/tabbedbrowser.ui @@ -2,7 +2,7 @@ ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/tabbedbrowser.ui.h b/tests/auto/tools/uic/baseline/tabbedbrowser.ui.h index a4e28c8d22..00b6c9cdd6 100644 --- a/tests/auto/tools/uic/baseline/tabbedbrowser.ui.h +++ b/tests/auto/tools/uic/baseline/tabbedbrowser.ui.h @@ -1,7 +1,7 @@ /* ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/tablewidgeteditor.ui b/tests/auto/tools/uic/baseline/tablewidgeteditor.ui index ebd15a2f80..558e7e89ee 100644 --- a/tests/auto/tools/uic/baseline/tablewidgeteditor.ui +++ b/tests/auto/tools/uic/baseline/tablewidgeteditor.ui @@ -1,7 +1,7 @@ ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/tablewidgeteditor.ui.h b/tests/auto/tools/uic/baseline/tablewidgeteditor.ui.h index 136c70ebc4..3d69f59938 100644 --- a/tests/auto/tools/uic/baseline/tablewidgeteditor.ui.h +++ b/tests/auto/tools/uic/baseline/tablewidgeteditor.ui.h @@ -1,7 +1,7 @@ /* ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/translatedialog.ui b/tests/auto/tools/uic/baseline/translatedialog.ui index b1cd99cbe7..57a0a7a039 100644 --- a/tests/auto/tools/uic/baseline/translatedialog.ui +++ b/tests/auto/tools/uic/baseline/translatedialog.ui @@ -1,7 +1,7 @@ ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/translatedialog.ui.h b/tests/auto/tools/uic/baseline/translatedialog.ui.h index 099bd7e8c8..3f66587f65 100644 --- a/tests/auto/tools/uic/baseline/translatedialog.ui.h +++ b/tests/auto/tools/uic/baseline/translatedialog.ui.h @@ -1,7 +1,7 @@ /* ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/treewidgeteditor.ui b/tests/auto/tools/uic/baseline/treewidgeteditor.ui index 1256a0a2fa..6fdcc54625 100644 --- a/tests/auto/tools/uic/baseline/treewidgeteditor.ui +++ b/tests/auto/tools/uic/baseline/treewidgeteditor.ui @@ -1,7 +1,7 @@ ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/treewidgeteditor.ui.h b/tests/auto/tools/uic/baseline/treewidgeteditor.ui.h index e8883ee67d..2aa95b8f0a 100644 --- a/tests/auto/tools/uic/baseline/treewidgeteditor.ui.h +++ b/tests/auto/tools/uic/baseline/treewidgeteditor.ui.h @@ -1,7 +1,7 @@ /* ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/trpreviewtool.ui b/tests/auto/tools/uic/baseline/trpreviewtool.ui index 03441139ed..520442b348 100644 --- a/tests/auto/tools/uic/baseline/trpreviewtool.ui +++ b/tests/auto/tools/uic/baseline/trpreviewtool.ui @@ -2,7 +2,7 @@ ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/baseline/trpreviewtool.ui.h b/tests/auto/tools/uic/baseline/trpreviewtool.ui.h index c984bcc2c7..196a820c55 100644 --- a/tests/auto/tools/uic/baseline/trpreviewtool.ui.h +++ b/tests/auto/tools/uic/baseline/trpreviewtool.ui.h @@ -1,7 +1,7 @@ /* ********************************************************************* ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/tools/uic/tst_uic.cpp b/tests/auto/tools/uic/tst_uic.cpp index 3244e584f5..d298078487 100644 --- a/tests/auto/tools/uic/tst_uic.cpp +++ b/tests/auto/tools/uic/tst_uic.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/v8/tst_v8.cpp b/tests/auto/v8/tst_v8.cpp index 77a3413718..bb3184ca44 100644 --- a/tests/auto/v8/tst_v8.cpp +++ b/tests/auto/v8/tst_v8.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/v8/v8main.cpp b/tests/auto/v8/v8main.cpp index 091d2cae28..f8ffea0403 100644 --- a/tests/auto/v8/v8main.cpp +++ b/tests/auto/v8/v8main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/v8/v8test.cpp b/tests/auto/v8/v8test.cpp index 3792679272..5576f47971 100644 --- a/tests/auto/v8/v8test.cpp +++ b/tests/auto/v8/v8test.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/v8/v8test.h b/tests/auto/v8/v8test.h index 7d389f85a8..8aa358caff 100644 --- a/tests/auto/v8/v8test.h +++ b/tests/auto/v8/v8test.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/dialogs/qabstractprintdialog/tst_qabstractprintdialog.cpp b/tests/auto/widgets/dialogs/qabstractprintdialog/tst_qabstractprintdialog.cpp index 5e60b6a888..c3ede37e7f 100644 --- a/tests/auto/widgets/dialogs/qabstractprintdialog/tst_qabstractprintdialog.cpp +++ b/tests/auto/widgets/dialogs/qabstractprintdialog/tst_qabstractprintdialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/dialogs/qcolordialog/tst_qcolordialog.cpp b/tests/auto/widgets/dialogs/qcolordialog/tst_qcolordialog.cpp index 1b1b7137eb..f972bb3054 100644 --- a/tests/auto/widgets/dialogs/qcolordialog/tst_qcolordialog.cpp +++ b/tests/auto/widgets/dialogs/qcolordialog/tst_qcolordialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/dialogs/qdialog/tst_qdialog.cpp b/tests/auto/widgets/dialogs/qdialog/tst_qdialog.cpp index ea28234e0c..2a17cb4efc 100644 --- a/tests/auto/widgets/dialogs/qdialog/tst_qdialog.cpp +++ b/tests/auto/widgets/dialogs/qdialog/tst_qdialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/dialogs/qerrormessage/tst_qerrormessage.cpp b/tests/auto/widgets/dialogs/qerrormessage/tst_qerrormessage.cpp index d3ee640b1a..cdf53c361e 100644 --- a/tests/auto/widgets/dialogs/qerrormessage/tst_qerrormessage.cpp +++ b/tests/auto/widgets/dialogs/qerrormessage/tst_qerrormessage.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/dialogs/qfiledialog/tst_qfiledialog.cpp b/tests/auto/widgets/dialogs/qfiledialog/tst_qfiledialog.cpp index 41f4798709..c2d21c2cf1 100644 --- a/tests/auto/widgets/dialogs/qfiledialog/tst_qfiledialog.cpp +++ b/tests/auto/widgets/dialogs/qfiledialog/tst_qfiledialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/dialogs/qfiledialog2/tst_qfiledialog2.cpp b/tests/auto/widgets/dialogs/qfiledialog2/tst_qfiledialog2.cpp index 9ed91af26e..3ea66c5729 100644 --- a/tests/auto/widgets/dialogs/qfiledialog2/tst_qfiledialog2.cpp +++ b/tests/auto/widgets/dialogs/qfiledialog2/tst_qfiledialog2.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/dialogs/qfilesystemmodel/tst_qfilesystemmodel.cpp b/tests/auto/widgets/dialogs/qfilesystemmodel/tst_qfilesystemmodel.cpp index 5e02dec28b..dbd1cfa016 100644 --- a/tests/auto/widgets/dialogs/qfilesystemmodel/tst_qfilesystemmodel.cpp +++ b/tests/auto/widgets/dialogs/qfilesystemmodel/tst_qfilesystemmodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/dialogs/qfontdialog/tst_qfontdialog.cpp b/tests/auto/widgets/dialogs/qfontdialog/tst_qfontdialog.cpp index f3efbc181f..d97d32698c 100644 --- a/tests/auto/widgets/dialogs/qfontdialog/tst_qfontdialog.cpp +++ b/tests/auto/widgets/dialogs/qfontdialog/tst_qfontdialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/dialogs/qfontdialog/tst_qfontdialog_mac_helpers.mm b/tests/auto/widgets/dialogs/qfontdialog/tst_qfontdialog_mac_helpers.mm index d12f696f7e..d10c789aec 100644 --- a/tests/auto/widgets/dialogs/qfontdialog/tst_qfontdialog_mac_helpers.mm +++ b/tests/auto/widgets/dialogs/qfontdialog/tst_qfontdialog_mac_helpers.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/dialogs/qinputdialog/tst_qinputdialog.cpp b/tests/auto/widgets/dialogs/qinputdialog/tst_qinputdialog.cpp index 91b55cdc20..0a62ac3099 100644 --- a/tests/auto/widgets/dialogs/qinputdialog/tst_qinputdialog.cpp +++ b/tests/auto/widgets/dialogs/qinputdialog/tst_qinputdialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/dialogs/qmessagebox/tst_qmessagebox.cpp b/tests/auto/widgets/dialogs/qmessagebox/tst_qmessagebox.cpp index 20cbdfbed4..b41a41124b 100644 --- a/tests/auto/widgets/dialogs/qmessagebox/tst_qmessagebox.cpp +++ b/tests/auto/widgets/dialogs/qmessagebox/tst_qmessagebox.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/dialogs/qprogressdialog/tst_qprogressdialog.cpp b/tests/auto/widgets/dialogs/qprogressdialog/tst_qprogressdialog.cpp index bccf9ac153..281a028835 100644 --- a/tests/auto/widgets/dialogs/qprogressdialog/tst_qprogressdialog.cpp +++ b/tests/auto/widgets/dialogs/qprogressdialog/tst_qprogressdialog.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/dialogs/qsidebar/tst_qsidebar.cpp b/tests/auto/widgets/dialogs/qsidebar/tst_qsidebar.cpp index 842f0e6022..77a7baaf94 100644 --- a/tests/auto/widgets/dialogs/qsidebar/tst_qsidebar.cpp +++ b/tests/auto/widgets/dialogs/qsidebar/tst_qsidebar.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/dialogs/qwizard/tst_qwizard.cpp b/tests/auto/widgets/dialogs/qwizard/tst_qwizard.cpp index 1b109223b6..2ac739e399 100644 --- a/tests/auto/widgets/dialogs/qwizard/tst_qwizard.cpp +++ b/tests/auto/widgets/dialogs/qwizard/tst_qwizard.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/effects/qgraphicseffect/tst_qgraphicseffect.cpp b/tests/auto/widgets/effects/qgraphicseffect/tst_qgraphicseffect.cpp index a5214832c9..3ebc4dc5cb 100644 --- a/tests/auto/widgets/effects/qgraphicseffect/tst_qgraphicseffect.cpp +++ b/tests/auto/widgets/effects/qgraphicseffect/tst_qgraphicseffect.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/graphicsview/qgraphicsanchorlayout/tst_qgraphicsanchorlayout.cpp b/tests/auto/widgets/graphicsview/qgraphicsanchorlayout/tst_qgraphicsanchorlayout.cpp index 6bf2f0b733..3e39d46e4c 100644 --- a/tests/auto/widgets/graphicsview/qgraphicsanchorlayout/tst_qgraphicsanchorlayout.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicsanchorlayout/tst_qgraphicsanchorlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/graphicsview/qgraphicsanchorlayout1/tst_qgraphicsanchorlayout1.cpp b/tests/auto/widgets/graphicsview/qgraphicsanchorlayout1/tst_qgraphicsanchorlayout1.cpp index 05f08e8719..0fd19c417f 100644 --- a/tests/auto/widgets/graphicsview/qgraphicsanchorlayout1/tst_qgraphicsanchorlayout1.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicsanchorlayout1/tst_qgraphicsanchorlayout1.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/graphicsview/qgraphicseffectsource/tst_qgraphicseffectsource.cpp b/tests/auto/widgets/graphicsview/qgraphicseffectsource/tst_qgraphicseffectsource.cpp index 3db4f94d2b..6b90404255 100644 --- a/tests/auto/widgets/graphicsview/qgraphicseffectsource/tst_qgraphicseffectsource.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicseffectsource/tst_qgraphicseffectsource.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/graphicsview/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp b/tests/auto/widgets/graphicsview/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp index 2247173c7f..42e0caa6a6 100644 --- a/tests/auto/widgets/graphicsview/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/graphicsview/qgraphicsitem/tst_qgraphicsitem.cpp b/tests/auto/widgets/graphicsview/qgraphicsitem/tst_qgraphicsitem.cpp index f5a09b89a0..28ee69a36c 100644 --- a/tests/auto/widgets/graphicsview/qgraphicsitem/tst_qgraphicsitem.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicsitem/tst_qgraphicsitem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/graphicsview/qgraphicsitemanimation/tst_qgraphicsitemanimation.cpp b/tests/auto/widgets/graphicsview/qgraphicsitemanimation/tst_qgraphicsitemanimation.cpp index 6785ca5620..0344755480 100644 --- a/tests/auto/widgets/graphicsview/qgraphicsitemanimation/tst_qgraphicsitemanimation.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicsitemanimation/tst_qgraphicsitemanimation.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/graphicsview/qgraphicslayout/tst_qgraphicslayout.cpp b/tests/auto/widgets/graphicsview/qgraphicslayout/tst_qgraphicslayout.cpp index a4f375ec25..d640ce7bea 100644 --- a/tests/auto/widgets/graphicsview/qgraphicslayout/tst_qgraphicslayout.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicslayout/tst_qgraphicslayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/graphicsview/qgraphicslayoutitem/tst_qgraphicslayoutitem.cpp b/tests/auto/widgets/graphicsview/qgraphicslayoutitem/tst_qgraphicslayoutitem.cpp index a8b6c0854e..bdcb3c8ad9 100644 --- a/tests/auto/widgets/graphicsview/qgraphicslayoutitem/tst_qgraphicslayoutitem.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicslayoutitem/tst_qgraphicslayoutitem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/graphicsview/qgraphicslinearlayout/tst_qgraphicslinearlayout.cpp b/tests/auto/widgets/graphicsview/qgraphicslinearlayout/tst_qgraphicslinearlayout.cpp index 3c458b0ead..c708ae7e27 100644 --- a/tests/auto/widgets/graphicsview/qgraphicslinearlayout/tst_qgraphicslinearlayout.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicslinearlayout/tst_qgraphicslinearlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/graphicsview/qgraphicsobject/tst_qgraphicsobject.cpp b/tests/auto/widgets/graphicsview/qgraphicsobject/tst_qgraphicsobject.cpp index 85e36b74b2..40581f28e9 100644 --- a/tests/auto/widgets/graphicsview/qgraphicsobject/tst_qgraphicsobject.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicsobject/tst_qgraphicsobject.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/graphicsview/qgraphicspixmapitem/tst_qgraphicspixmapitem.cpp b/tests/auto/widgets/graphicsview/qgraphicspixmapitem/tst_qgraphicspixmapitem.cpp index b2dccb0b09..a76b5dfd56 100644 --- a/tests/auto/widgets/graphicsview/qgraphicspixmapitem/tst_qgraphicspixmapitem.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicspixmapitem/tst_qgraphicspixmapitem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/graphicsview/qgraphicspolygonitem/tst_qgraphicspolygonitem.cpp b/tests/auto/widgets/graphicsview/qgraphicspolygonitem/tst_qgraphicspolygonitem.cpp index 061b3eda81..36e45fcddd 100644 --- a/tests/auto/widgets/graphicsview/qgraphicspolygonitem/tst_qgraphicspolygonitem.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicspolygonitem/tst_qgraphicspolygonitem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/graphicsview/qgraphicsproxywidget/tst_qgraphicsproxywidget.cpp b/tests/auto/widgets/graphicsview/qgraphicsproxywidget/tst_qgraphicsproxywidget.cpp index 3f782d0808..4cd32a9186 100644 --- a/tests/auto/widgets/graphicsview/qgraphicsproxywidget/tst_qgraphicsproxywidget.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicsproxywidget/tst_qgraphicsproxywidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/graphicsview/qgraphicsscene/tst_qgraphicsscene.cpp b/tests/auto/widgets/graphicsview/qgraphicsscene/tst_qgraphicsscene.cpp index d359581f1a..f1afb9ff69 100644 --- a/tests/auto/widgets/graphicsview/qgraphicsscene/tst_qgraphicsscene.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicsscene/tst_qgraphicsscene.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/graphicsview/qgraphicssceneindex/tst_qgraphicssceneindex.cpp b/tests/auto/widgets/graphicsview/qgraphicssceneindex/tst_qgraphicssceneindex.cpp index 56d2508840..a318141d07 100644 --- a/tests/auto/widgets/graphicsview/qgraphicssceneindex/tst_qgraphicssceneindex.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicssceneindex/tst_qgraphicssceneindex.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/graphicsview/qgraphicstransform/tst_qgraphicstransform.cpp b/tests/auto/widgets/graphicsview/qgraphicstransform/tst_qgraphicstransform.cpp index 7d5a9578ad..156adec6a7 100644 --- a/tests/auto/widgets/graphicsview/qgraphicstransform/tst_qgraphicstransform.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicstransform/tst_qgraphicstransform.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/graphicsview/qgraphicsview/tst_qgraphicsview.cpp b/tests/auto/widgets/graphicsview/qgraphicsview/tst_qgraphicsview.cpp index 8f2f8930c6..9066ded329 100644 --- a/tests/auto/widgets/graphicsview/qgraphicsview/tst_qgraphicsview.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicsview/tst_qgraphicsview.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/graphicsview/qgraphicsview/tst_qgraphicsview_2.cpp b/tests/auto/widgets/graphicsview/qgraphicsview/tst_qgraphicsview_2.cpp index 122ffbc875..5304103776 100644 --- a/tests/auto/widgets/graphicsview/qgraphicsview/tst_qgraphicsview_2.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicsview/tst_qgraphicsview_2.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/graphicsview/qgraphicswidget/tst_qgraphicswidget.cpp b/tests/auto/widgets/graphicsview/qgraphicswidget/tst_qgraphicswidget.cpp index 164d5564e3..89cd63f482 100644 --- a/tests/auto/widgets/graphicsview/qgraphicswidget/tst_qgraphicswidget.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicswidget/tst_qgraphicswidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/itemviews/qabstractitemview/tst_qabstractitemview.cpp b/tests/auto/widgets/itemviews/qabstractitemview/tst_qabstractitemview.cpp index 4e1b61e32d..764838fc96 100644 --- a/tests/auto/widgets/itemviews/qabstractitemview/tst_qabstractitemview.cpp +++ b/tests/auto/widgets/itemviews/qabstractitemview/tst_qabstractitemview.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/itemviews/qcolumnview/tst_qcolumnview.cpp b/tests/auto/widgets/itemviews/qcolumnview/tst_qcolumnview.cpp index 4b1a5a1a21..abf7929a94 100644 --- a/tests/auto/widgets/itemviews/qcolumnview/tst_qcolumnview.cpp +++ b/tests/auto/widgets/itemviews/qcolumnview/tst_qcolumnview.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/itemviews/qdatawidgetmapper/tst_qdatawidgetmapper.cpp b/tests/auto/widgets/itemviews/qdatawidgetmapper/tst_qdatawidgetmapper.cpp index 7488195497..4ad8de1d3d 100644 --- a/tests/auto/widgets/itemviews/qdatawidgetmapper/tst_qdatawidgetmapper.cpp +++ b/tests/auto/widgets/itemviews/qdatawidgetmapper/tst_qdatawidgetmapper.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/itemviews/qdirmodel/tst_qdirmodel.cpp b/tests/auto/widgets/itemviews/qdirmodel/tst_qdirmodel.cpp index acbe652c89..ef183ed91c 100644 --- a/tests/auto/widgets/itemviews/qdirmodel/tst_qdirmodel.cpp +++ b/tests/auto/widgets/itemviews/qdirmodel/tst_qdirmodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/itemviews/qfileiconprovider/tst_qfileiconprovider.cpp b/tests/auto/widgets/itemviews/qfileiconprovider/tst_qfileiconprovider.cpp index cf53019ff1..286a352304 100644 --- a/tests/auto/widgets/itemviews/qfileiconprovider/tst_qfileiconprovider.cpp +++ b/tests/auto/widgets/itemviews/qfileiconprovider/tst_qfileiconprovider.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/itemviews/qheaderview/tst_qheaderview.cpp b/tests/auto/widgets/itemviews/qheaderview/tst_qheaderview.cpp index bf547cc7d9..f1a7b4588e 100644 --- a/tests/auto/widgets/itemviews/qheaderview/tst_qheaderview.cpp +++ b/tests/auto/widgets/itemviews/qheaderview/tst_qheaderview.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/itemviews/qitemdelegate/tst_qitemdelegate.cpp b/tests/auto/widgets/itemviews/qitemdelegate/tst_qitemdelegate.cpp index a2c85c2f48..30bf867249 100644 --- a/tests/auto/widgets/itemviews/qitemdelegate/tst_qitemdelegate.cpp +++ b/tests/auto/widgets/itemviews/qitemdelegate/tst_qitemdelegate.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/itemviews/qitemeditorfactory/tst_qitemeditorfactory.cpp b/tests/auto/widgets/itemviews/qitemeditorfactory/tst_qitemeditorfactory.cpp index 53c00dab0e..3945e65f80 100644 --- a/tests/auto/widgets/itemviews/qitemeditorfactory/tst_qitemeditorfactory.cpp +++ b/tests/auto/widgets/itemviews/qitemeditorfactory/tst_qitemeditorfactory.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/itemviews/qitemview/tst_qitemview.cpp b/tests/auto/widgets/itemviews/qitemview/tst_qitemview.cpp index 55a406cc74..7f8337a5d8 100644 --- a/tests/auto/widgets/itemviews/qitemview/tst_qitemview.cpp +++ b/tests/auto/widgets/itemviews/qitemview/tst_qitemview.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/itemviews/qitemview/viewstotest.cpp b/tests/auto/widgets/itemviews/qitemview/viewstotest.cpp index b61ecd5c2a..15f1a4d02f 100644 --- a/tests/auto/widgets/itemviews/qitemview/viewstotest.cpp +++ b/tests/auto/widgets/itemviews/qitemview/viewstotest.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/itemviews/qlistview/tst_qlistview.cpp b/tests/auto/widgets/itemviews/qlistview/tst_qlistview.cpp index 86ec6c1a09..e56a8e1008 100644 --- a/tests/auto/widgets/itemviews/qlistview/tst_qlistview.cpp +++ b/tests/auto/widgets/itemviews/qlistview/tst_qlistview.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/itemviews/qlistwidget/tst_qlistwidget.cpp b/tests/auto/widgets/itemviews/qlistwidget/tst_qlistwidget.cpp index ea3f6ae143..8849b3ae6d 100644 --- a/tests/auto/widgets/itemviews/qlistwidget/tst_qlistwidget.cpp +++ b/tests/auto/widgets/itemviews/qlistwidget/tst_qlistwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/itemviews/qstandarditem/tst_qstandarditem.cpp b/tests/auto/widgets/itemviews/qstandarditem/tst_qstandarditem.cpp index 00c8a868d9..a0e485a8c3 100644 --- a/tests/auto/widgets/itemviews/qstandarditem/tst_qstandarditem.cpp +++ b/tests/auto/widgets/itemviews/qstandarditem/tst_qstandarditem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/itemviews/qstandarditemmodel/tst_qstandarditemmodel.cpp b/tests/auto/widgets/itemviews/qstandarditemmodel/tst_qstandarditemmodel.cpp index 6b0636ce77..78ac43f79a 100644 --- a/tests/auto/widgets/itemviews/qstandarditemmodel/tst_qstandarditemmodel.cpp +++ b/tests/auto/widgets/itemviews/qstandarditemmodel/tst_qstandarditemmodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/itemviews/qtableview/tst_qtableview.cpp b/tests/auto/widgets/itemviews/qtableview/tst_qtableview.cpp index 383fcf8b3f..74917fbf9a 100644 --- a/tests/auto/widgets/itemviews/qtableview/tst_qtableview.cpp +++ b/tests/auto/widgets/itemviews/qtableview/tst_qtableview.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/itemviews/qtablewidget/tst_qtablewidget.cpp b/tests/auto/widgets/itemviews/qtablewidget/tst_qtablewidget.cpp index 1e5d63c261..5e2658a47f 100644 --- a/tests/auto/widgets/itemviews/qtablewidget/tst_qtablewidget.cpp +++ b/tests/auto/widgets/itemviews/qtablewidget/tst_qtablewidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/itemviews/qtreeview/tst_qtreeview.cpp b/tests/auto/widgets/itemviews/qtreeview/tst_qtreeview.cpp index fad4d3deea..d2463bfad1 100644 --- a/tests/auto/widgets/itemviews/qtreeview/tst_qtreeview.cpp +++ b/tests/auto/widgets/itemviews/qtreeview/tst_qtreeview.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/itemviews/qtreewidget/tst_qtreewidget.cpp b/tests/auto/widgets/itemviews/qtreewidget/tst_qtreewidget.cpp index 03619f0c97..14f1f8736d 100644 --- a/tests/auto/widgets/itemviews/qtreewidget/tst_qtreewidget.cpp +++ b/tests/auto/widgets/itemviews/qtreewidget/tst_qtreewidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/itemviews/qtreewidgetitemiterator/tst_qtreewidgetitemiterator.cpp b/tests/auto/widgets/itemviews/qtreewidgetitemiterator/tst_qtreewidgetitemiterator.cpp index 94f4446b5b..b747586548 100644 --- a/tests/auto/widgets/itemviews/qtreewidgetitemiterator/tst_qtreewidgetitemiterator.cpp +++ b/tests/auto/widgets/itemviews/qtreewidgetitemiterator/tst_qtreewidgetitemiterator.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/kernel/qaction/tst_qaction.cpp b/tests/auto/widgets/kernel/qaction/tst_qaction.cpp index 846cba7ad6..d00828e8b0 100644 --- a/tests/auto/widgets/kernel/qaction/tst_qaction.cpp +++ b/tests/auto/widgets/kernel/qaction/tst_qaction.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/kernel/qactiongroup/tst_qactiongroup.cpp b/tests/auto/widgets/kernel/qactiongroup/tst_qactiongroup.cpp index 406298807a..3946423dec 100644 --- a/tests/auto/widgets/kernel/qactiongroup/tst_qactiongroup.cpp +++ b/tests/auto/widgets/kernel/qactiongroup/tst_qactiongroup.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/kernel/qapplication/desktopsettingsaware/main.cpp b/tests/auto/widgets/kernel/qapplication/desktopsettingsaware/main.cpp index 9e2172829a..154e9262a3 100644 --- a/tests/auto/widgets/kernel/qapplication/desktopsettingsaware/main.cpp +++ b/tests/auto/widgets/kernel/qapplication/desktopsettingsaware/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/kernel/qapplication/modal/base.cpp b/tests/auto/widgets/kernel/qapplication/modal/base.cpp index 2f7b4ad529..c8e6c63c99 100644 --- a/tests/auto/widgets/kernel/qapplication/modal/base.cpp +++ b/tests/auto/widgets/kernel/qapplication/modal/base.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/kernel/qapplication/modal/base.h b/tests/auto/widgets/kernel/qapplication/modal/base.h index e1f36e11bd..af520b916f 100644 --- a/tests/auto/widgets/kernel/qapplication/modal/base.h +++ b/tests/auto/widgets/kernel/qapplication/modal/base.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/kernel/qapplication/modal/main.cpp b/tests/auto/widgets/kernel/qapplication/modal/main.cpp index 53c6008eb5..70cc8545d2 100644 --- a/tests/auto/widgets/kernel/qapplication/modal/main.cpp +++ b/tests/auto/widgets/kernel/qapplication/modal/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/kernel/qapplication/tst_qapplication.cpp b/tests/auto/widgets/kernel/qapplication/tst_qapplication.cpp index 23536ec6db..10f91895a7 100644 --- a/tests/auto/widgets/kernel/qapplication/tst_qapplication.cpp +++ b/tests/auto/widgets/kernel/qapplication/tst_qapplication.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/kernel/qapplication/wincmdline/main.cpp b/tests/auto/widgets/kernel/qapplication/wincmdline/main.cpp index d0f802231a..fc1f37047e 100644 --- a/tests/auto/widgets/kernel/qapplication/wincmdline/main.cpp +++ b/tests/auto/widgets/kernel/qapplication/wincmdline/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/kernel/qboxlayout/tst_qboxlayout.cpp b/tests/auto/widgets/kernel/qboxlayout/tst_qboxlayout.cpp index 088469d770..9da67183bc 100644 --- a/tests/auto/widgets/kernel/qboxlayout/tst_qboxlayout.cpp +++ b/tests/auto/widgets/kernel/qboxlayout/tst_qboxlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/kernel/qdesktopwidget/tst_qdesktopwidget.cpp b/tests/auto/widgets/kernel/qdesktopwidget/tst_qdesktopwidget.cpp index c66e0c1c61..5595e03252 100644 --- a/tests/auto/widgets/kernel/qdesktopwidget/tst_qdesktopwidget.cpp +++ b/tests/auto/widgets/kernel/qdesktopwidget/tst_qdesktopwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/kernel/qformlayout/tst_qformlayout.cpp b/tests/auto/widgets/kernel/qformlayout/tst_qformlayout.cpp index a4d2cccc8e..4b4c843115 100644 --- a/tests/auto/widgets/kernel/qformlayout/tst_qformlayout.cpp +++ b/tests/auto/widgets/kernel/qformlayout/tst_qformlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/kernel/qgridlayout/tst_qgridlayout.cpp b/tests/auto/widgets/kernel/qgridlayout/tst_qgridlayout.cpp index c7411af716..9df387b18b 100644 --- a/tests/auto/widgets/kernel/qgridlayout/tst_qgridlayout.cpp +++ b/tests/auto/widgets/kernel/qgridlayout/tst_qgridlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/kernel/qlayout/tst_qlayout.cpp b/tests/auto/widgets/kernel/qlayout/tst_qlayout.cpp index 6cfb2f2f2a..c0a8d9680b 100644 --- a/tests/auto/widgets/kernel/qlayout/tst_qlayout.cpp +++ b/tests/auto/widgets/kernel/qlayout/tst_qlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/kernel/qstackedlayout/tst_qstackedlayout.cpp b/tests/auto/widgets/kernel/qstackedlayout/tst_qstackedlayout.cpp index 2529ccf426..7939f12c0d 100644 --- a/tests/auto/widgets/kernel/qstackedlayout/tst_qstackedlayout.cpp +++ b/tests/auto/widgets/kernel/qstackedlayout/tst_qstackedlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/kernel/qtooltip/tst_qtooltip.cpp b/tests/auto/widgets/kernel/qtooltip/tst_qtooltip.cpp index d2126d4043..d8b0666880 100644 --- a/tests/auto/widgets/kernel/qtooltip/tst_qtooltip.cpp +++ b/tests/auto/widgets/kernel/qtooltip/tst_qtooltip.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/kernel/qwidget/tst_qwidget.cpp b/tests/auto/widgets/kernel/qwidget/tst_qwidget.cpp index a3e48fe53a..d8d9589691 100644 --- a/tests/auto/widgets/kernel/qwidget/tst_qwidget.cpp +++ b/tests/auto/widgets/kernel/qwidget/tst_qwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/kernel/qwidget/tst_qwidget_mac_helpers.h b/tests/auto/widgets/kernel/qwidget/tst_qwidget_mac_helpers.h index d7bc3f33c7..5d07ebd381 100644 --- a/tests/auto/widgets/kernel/qwidget/tst_qwidget_mac_helpers.h +++ b/tests/auto/widgets/kernel/qwidget/tst_qwidget_mac_helpers.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/kernel/qwidget/tst_qwidget_mac_helpers.mm b/tests/auto/widgets/kernel/qwidget/tst_qwidget_mac_helpers.mm index 10e137c06c..404a3e989f 100644 --- a/tests/auto/widgets/kernel/qwidget/tst_qwidget_mac_helpers.mm +++ b/tests/auto/widgets/kernel/qwidget/tst_qwidget_mac_helpers.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/kernel/qwidget_window/tst_qwidget_window.cpp b/tests/auto/widgets/kernel/qwidget_window/tst_qwidget_window.cpp index f25a383177..b6f62379a6 100644 --- a/tests/auto/widgets/kernel/qwidget_window/tst_qwidget_window.cpp +++ b/tests/auto/widgets/kernel/qwidget_window/tst_qwidget_window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/kernel/qwidgetaction/tst_qwidgetaction.cpp b/tests/auto/widgets/kernel/qwidgetaction/tst_qwidgetaction.cpp index 9b161ec5b8..7e2d3e3b9a 100644 --- a/tests/auto/widgets/kernel/qwidgetaction/tst_qwidgetaction.cpp +++ b/tests/auto/widgets/kernel/qwidgetaction/tst_qwidgetaction.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/shared/platforminputcontext.h b/tests/auto/widgets/shared/platforminputcontext.h index 63a47f013f..a8b9a8c547 100644 --- a/tests/auto/widgets/shared/platforminputcontext.h +++ b/tests/auto/widgets/shared/platforminputcontext.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/styles/qmacstyle/tst_qmacstyle.cpp b/tests/auto/widgets/styles/qmacstyle/tst_qmacstyle.cpp index 30e380ea1c..551fc6612a 100644 --- a/tests/auto/widgets/styles/qmacstyle/tst_qmacstyle.cpp +++ b/tests/auto/widgets/styles/qmacstyle/tst_qmacstyle.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/styles/qstyle/tst_qstyle.cpp b/tests/auto/widgets/styles/qstyle/tst_qstyle.cpp index d5849f1c2c..1483189cd0 100644 --- a/tests/auto/widgets/styles/qstyle/tst_qstyle.cpp +++ b/tests/auto/widgets/styles/qstyle/tst_qstyle.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/styles/qstyleoption/tst_qstyleoption.cpp b/tests/auto/widgets/styles/qstyleoption/tst_qstyleoption.cpp index c1d4bd8166..f1fac918bb 100644 --- a/tests/auto/widgets/styles/qstyleoption/tst_qstyleoption.cpp +++ b/tests/auto/widgets/styles/qstyleoption/tst_qstyleoption.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/styles/qstylesheetstyle/tst_qstylesheetstyle.cpp b/tests/auto/widgets/styles/qstylesheetstyle/tst_qstylesheetstyle.cpp index a1a27f538a..cf0e773905 100644 --- a/tests/auto/widgets/styles/qstylesheetstyle/tst_qstylesheetstyle.cpp +++ b/tests/auto/widgets/styles/qstylesheetstyle/tst_qstylesheetstyle.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/util/qcompleter/tst_qcompleter.cpp b/tests/auto/widgets/util/qcompleter/tst_qcompleter.cpp index 9d75131149..024e4ffa14 100644 --- a/tests/auto/widgets/util/qcompleter/tst_qcompleter.cpp +++ b/tests/auto/widgets/util/qcompleter/tst_qcompleter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/util/qscroller/tst_qscroller.cpp b/tests/auto/widgets/util/qscroller/tst_qscroller.cpp index a7912aedc1..8bf82e588e 100644 --- a/tests/auto/widgets/util/qscroller/tst_qscroller.cpp +++ b/tests/auto/widgets/util/qscroller/tst_qscroller.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/util/qsystemtrayicon/tst_qsystemtrayicon.cpp b/tests/auto/widgets/util/qsystemtrayicon/tst_qsystemtrayicon.cpp index 2d1cace929..846f282528 100644 --- a/tests/auto/widgets/util/qsystemtrayicon/tst_qsystemtrayicon.cpp +++ b/tests/auto/widgets/util/qsystemtrayicon/tst_qsystemtrayicon.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/util/qundogroup/tst_qundogroup.cpp b/tests/auto/widgets/util/qundogroup/tst_qundogroup.cpp index 4d37daf681..a88b0168f2 100644 --- a/tests/auto/widgets/util/qundogroup/tst_qundogroup.cpp +++ b/tests/auto/widgets/util/qundogroup/tst_qundogroup.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/util/qundostack/tst_qundostack.cpp b/tests/auto/widgets/util/qundostack/tst_qundostack.cpp index 0d65c12326..eb8ebfe21a 100644 --- a/tests/auto/widgets/util/qundostack/tst_qundostack.cpp +++ b/tests/auto/widgets/util/qundostack/tst_qundostack.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qabstractbutton/tst_qabstractbutton.cpp b/tests/auto/widgets/widgets/qabstractbutton/tst_qabstractbutton.cpp index 4d689bbed0..1eb1a5abd3 100644 --- a/tests/auto/widgets/widgets/qabstractbutton/tst_qabstractbutton.cpp +++ b/tests/auto/widgets/widgets/qabstractbutton/tst_qabstractbutton.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qabstractscrollarea/tst_qabstractscrollarea.cpp b/tests/auto/widgets/widgets/qabstractscrollarea/tst_qabstractscrollarea.cpp index 542c3f58b3..c64c16bf85 100644 --- a/tests/auto/widgets/widgets/qabstractscrollarea/tst_qabstractscrollarea.cpp +++ b/tests/auto/widgets/widgets/qabstractscrollarea/tst_qabstractscrollarea.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qabstractslider/tst_qabstractslider.cpp b/tests/auto/widgets/widgets/qabstractslider/tst_qabstractslider.cpp index e78844524e..32e0fbfc5e 100644 --- a/tests/auto/widgets/widgets/qabstractslider/tst_qabstractslider.cpp +++ b/tests/auto/widgets/widgets/qabstractslider/tst_qabstractslider.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qabstractspinbox/tst_qabstractspinbox.cpp b/tests/auto/widgets/widgets/qabstractspinbox/tst_qabstractspinbox.cpp index 93415b35cd..964fd27320 100644 --- a/tests/auto/widgets/widgets/qabstractspinbox/tst_qabstractspinbox.cpp +++ b/tests/auto/widgets/widgets/qabstractspinbox/tst_qabstractspinbox.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qbuttongroup/tst_qbuttongroup.cpp b/tests/auto/widgets/widgets/qbuttongroup/tst_qbuttongroup.cpp index 87163305b9..a554216300 100644 --- a/tests/auto/widgets/widgets/qbuttongroup/tst_qbuttongroup.cpp +++ b/tests/auto/widgets/widgets/qbuttongroup/tst_qbuttongroup.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qcalendarwidget/tst_qcalendarwidget.cpp b/tests/auto/widgets/widgets/qcalendarwidget/tst_qcalendarwidget.cpp index 2098c95907..468497f7ae 100644 --- a/tests/auto/widgets/widgets/qcalendarwidget/tst_qcalendarwidget.cpp +++ b/tests/auto/widgets/widgets/qcalendarwidget/tst_qcalendarwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qcheckbox/tst_qcheckbox.cpp b/tests/auto/widgets/widgets/qcheckbox/tst_qcheckbox.cpp index ec52abed57..858586a20a 100644 --- a/tests/auto/widgets/widgets/qcheckbox/tst_qcheckbox.cpp +++ b/tests/auto/widgets/widgets/qcheckbox/tst_qcheckbox.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qcombobox/tst_qcombobox.cpp b/tests/auto/widgets/widgets/qcombobox/tst_qcombobox.cpp index 807c99ff4e..95fee1f6c8 100644 --- a/tests/auto/widgets/widgets/qcombobox/tst_qcombobox.cpp +++ b/tests/auto/widgets/widgets/qcombobox/tst_qcombobox.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qcommandlinkbutton/tst_qcommandlinkbutton.cpp b/tests/auto/widgets/widgets/qcommandlinkbutton/tst_qcommandlinkbutton.cpp index 2c583cf6d8..1a594138df 100644 --- a/tests/auto/widgets/widgets/qcommandlinkbutton/tst_qcommandlinkbutton.cpp +++ b/tests/auto/widgets/widgets/qcommandlinkbutton/tst_qcommandlinkbutton.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qdatetimeedit/tst_qdatetimeedit.cpp b/tests/auto/widgets/widgets/qdatetimeedit/tst_qdatetimeedit.cpp index eb561b1dff..4ce77ddee9 100644 --- a/tests/auto/widgets/widgets/qdatetimeedit/tst_qdatetimeedit.cpp +++ b/tests/auto/widgets/widgets/qdatetimeedit/tst_qdatetimeedit.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qdial/tst_qdial.cpp b/tests/auto/widgets/widgets/qdial/tst_qdial.cpp index 568b82d28b..1479ee768d 100644 --- a/tests/auto/widgets/widgets/qdial/tst_qdial.cpp +++ b/tests/auto/widgets/widgets/qdial/tst_qdial.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qdialogbuttonbox/tst_qdialogbuttonbox.cpp b/tests/auto/widgets/widgets/qdialogbuttonbox/tst_qdialogbuttonbox.cpp index b470edc38a..6a2517e0bb 100644 --- a/tests/auto/widgets/widgets/qdialogbuttonbox/tst_qdialogbuttonbox.cpp +++ b/tests/auto/widgets/widgets/qdialogbuttonbox/tst_qdialogbuttonbox.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qdockwidget/tst_qdockwidget.cpp b/tests/auto/widgets/widgets/qdockwidget/tst_qdockwidget.cpp index 41616dcfc1..ce86ea3dfc 100644 --- a/tests/auto/widgets/widgets/qdockwidget/tst_qdockwidget.cpp +++ b/tests/auto/widgets/widgets/qdockwidget/tst_qdockwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qdoublespinbox/tst_qdoublespinbox.cpp b/tests/auto/widgets/widgets/qdoublespinbox/tst_qdoublespinbox.cpp index 8e3a9db824..51e91b40bd 100644 --- a/tests/auto/widgets/widgets/qdoublespinbox/tst_qdoublespinbox.cpp +++ b/tests/auto/widgets/widgets/qdoublespinbox/tst_qdoublespinbox.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qdoublevalidator/tst_qdoublevalidator.cpp b/tests/auto/widgets/widgets/qdoublevalidator/tst_qdoublevalidator.cpp index 6014ce5165..77f3b15184 100644 --- a/tests/auto/widgets/widgets/qdoublevalidator/tst_qdoublevalidator.cpp +++ b/tests/auto/widgets/widgets/qdoublevalidator/tst_qdoublevalidator.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qfocusframe/tst_qfocusframe.cpp b/tests/auto/widgets/widgets/qfocusframe/tst_qfocusframe.cpp index b17529845a..920e5401c4 100644 --- a/tests/auto/widgets/widgets/qfocusframe/tst_qfocusframe.cpp +++ b/tests/auto/widgets/widgets/qfocusframe/tst_qfocusframe.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qfontcombobox/tst_qfontcombobox.cpp b/tests/auto/widgets/widgets/qfontcombobox/tst_qfontcombobox.cpp index 72b3dfe8ca..b80f50bc67 100644 --- a/tests/auto/widgets/widgets/qfontcombobox/tst_qfontcombobox.cpp +++ b/tests/auto/widgets/widgets/qfontcombobox/tst_qfontcombobox.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qgroupbox/tst_qgroupbox.cpp b/tests/auto/widgets/widgets/qgroupbox/tst_qgroupbox.cpp index a8dadf77e0..bd919d2c4a 100644 --- a/tests/auto/widgets/widgets/qgroupbox/tst_qgroupbox.cpp +++ b/tests/auto/widgets/widgets/qgroupbox/tst_qgroupbox.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qintvalidator/tst_qintvalidator.cpp b/tests/auto/widgets/widgets/qintvalidator/tst_qintvalidator.cpp index b7f4bd0061..bff3f59c50 100644 --- a/tests/auto/widgets/widgets/qintvalidator/tst_qintvalidator.cpp +++ b/tests/auto/widgets/widgets/qintvalidator/tst_qintvalidator.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qlabel/tst_qlabel.cpp b/tests/auto/widgets/widgets/qlabel/tst_qlabel.cpp index b70a8a67e1..f4775cae30 100644 --- a/tests/auto/widgets/widgets/qlabel/tst_qlabel.cpp +++ b/tests/auto/widgets/widgets/qlabel/tst_qlabel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qlcdnumber/tst_qlcdnumber.cpp b/tests/auto/widgets/widgets/qlcdnumber/tst_qlcdnumber.cpp index 1341ab3d22..5ce4ac3dba 100644 --- a/tests/auto/widgets/widgets/qlcdnumber/tst_qlcdnumber.cpp +++ b/tests/auto/widgets/widgets/qlcdnumber/tst_qlcdnumber.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qlineedit/tst_qlineedit.cpp b/tests/auto/widgets/widgets/qlineedit/tst_qlineedit.cpp index 1e39e03e80..1fabc45cac 100644 --- a/tests/auto/widgets/widgets/qlineedit/tst_qlineedit.cpp +++ b/tests/auto/widgets/widgets/qlineedit/tst_qlineedit.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qmainwindow/tst_qmainwindow.cpp b/tests/auto/widgets/widgets/qmainwindow/tst_qmainwindow.cpp index 1ff21e923a..c9c627dffa 100644 --- a/tests/auto/widgets/widgets/qmainwindow/tst_qmainwindow.cpp +++ b/tests/auto/widgets/widgets/qmainwindow/tst_qmainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qmdiarea/tst_qmdiarea.cpp b/tests/auto/widgets/widgets/qmdiarea/tst_qmdiarea.cpp index da587c0393..6a6d29cb9a 100644 --- a/tests/auto/widgets/widgets/qmdiarea/tst_qmdiarea.cpp +++ b/tests/auto/widgets/widgets/qmdiarea/tst_qmdiarea.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qmdisubwindow/tst_qmdisubwindow.cpp b/tests/auto/widgets/widgets/qmdisubwindow/tst_qmdisubwindow.cpp index 9cc764b716..b66ffabfcd 100644 --- a/tests/auto/widgets/widgets/qmdisubwindow/tst_qmdisubwindow.cpp +++ b/tests/auto/widgets/widgets/qmdisubwindow/tst_qmdisubwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp b/tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp index 0714910faf..924c134736 100644 --- a/tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp +++ b/tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qmenubar/tst_qmenubar.cpp b/tests/auto/widgets/widgets/qmenubar/tst_qmenubar.cpp index 5dd783537a..05ab9d014a 100644 --- a/tests/auto/widgets/widgets/qmenubar/tst_qmenubar.cpp +++ b/tests/auto/widgets/widgets/qmenubar/tst_qmenubar.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qplaintextedit/tst_qplaintextedit.cpp b/tests/auto/widgets/widgets/qplaintextedit/tst_qplaintextedit.cpp index 96364446be..bfd7050df1 100644 --- a/tests/auto/widgets/widgets/qplaintextedit/tst_qplaintextedit.cpp +++ b/tests/auto/widgets/widgets/qplaintextedit/tst_qplaintextedit.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qprogressbar/tst_qprogressbar.cpp b/tests/auto/widgets/widgets/qprogressbar/tst_qprogressbar.cpp index 0844c2f5e2..97ccf60d27 100644 --- a/tests/auto/widgets/widgets/qprogressbar/tst_qprogressbar.cpp +++ b/tests/auto/widgets/widgets/qprogressbar/tst_qprogressbar.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qpushbutton/tst_qpushbutton.cpp b/tests/auto/widgets/widgets/qpushbutton/tst_qpushbutton.cpp index 496b3774a1..2f290cb4f1 100644 --- a/tests/auto/widgets/widgets/qpushbutton/tst_qpushbutton.cpp +++ b/tests/auto/widgets/widgets/qpushbutton/tst_qpushbutton.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qradiobutton/tst_qradiobutton.cpp b/tests/auto/widgets/widgets/qradiobutton/tst_qradiobutton.cpp index 79d3c8ef9a..19a5b62277 100644 --- a/tests/auto/widgets/widgets/qradiobutton/tst_qradiobutton.cpp +++ b/tests/auto/widgets/widgets/qradiobutton/tst_qradiobutton.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qregexpvalidator/tst_qregexpvalidator.cpp b/tests/auto/widgets/widgets/qregexpvalidator/tst_qregexpvalidator.cpp index 2e245ab0c7..2bc04d74c0 100644 --- a/tests/auto/widgets/widgets/qregexpvalidator/tst_qregexpvalidator.cpp +++ b/tests/auto/widgets/widgets/qregexpvalidator/tst_qregexpvalidator.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qscrollarea/tst_qscrollarea.cpp b/tests/auto/widgets/widgets/qscrollarea/tst_qscrollarea.cpp index ba4dc855ce..dbf8c9052e 100644 --- a/tests/auto/widgets/widgets/qscrollarea/tst_qscrollarea.cpp +++ b/tests/auto/widgets/widgets/qscrollarea/tst_qscrollarea.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qscrollbar/tst_qscrollbar.cpp b/tests/auto/widgets/widgets/qscrollbar/tst_qscrollbar.cpp index 3bd5da4649..65b46c1c0c 100644 --- a/tests/auto/widgets/widgets/qscrollbar/tst_qscrollbar.cpp +++ b/tests/auto/widgets/widgets/qscrollbar/tst_qscrollbar.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qsizegrip/tst_qsizegrip.cpp b/tests/auto/widgets/widgets/qsizegrip/tst_qsizegrip.cpp index 9b7d0a7f0b..5e37e21949 100644 --- a/tests/auto/widgets/widgets/qsizegrip/tst_qsizegrip.cpp +++ b/tests/auto/widgets/widgets/qsizegrip/tst_qsizegrip.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qslider/tst_qslider.cpp b/tests/auto/widgets/widgets/qslider/tst_qslider.cpp index 43942e96d8..09cc51c113 100644 --- a/tests/auto/widgets/widgets/qslider/tst_qslider.cpp +++ b/tests/auto/widgets/widgets/qslider/tst_qslider.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qspinbox/tst_qspinbox.cpp b/tests/auto/widgets/widgets/qspinbox/tst_qspinbox.cpp index 620263bcb6..cc01642fc1 100644 --- a/tests/auto/widgets/widgets/qspinbox/tst_qspinbox.cpp +++ b/tests/auto/widgets/widgets/qspinbox/tst_qspinbox.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qsplitter/tst_qsplitter.cpp b/tests/auto/widgets/widgets/qsplitter/tst_qsplitter.cpp index 7aa760bc22..2af62ceea0 100644 --- a/tests/auto/widgets/widgets/qsplitter/tst_qsplitter.cpp +++ b/tests/auto/widgets/widgets/qsplitter/tst_qsplitter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qstackedwidget/tst_qstackedwidget.cpp b/tests/auto/widgets/widgets/qstackedwidget/tst_qstackedwidget.cpp index e5651ceebf..94ac78e038 100644 --- a/tests/auto/widgets/widgets/qstackedwidget/tst_qstackedwidget.cpp +++ b/tests/auto/widgets/widgets/qstackedwidget/tst_qstackedwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qstatusbar/tst_qstatusbar.cpp b/tests/auto/widgets/widgets/qstatusbar/tst_qstatusbar.cpp index 56d7e7bedf..86f97d18d3 100644 --- a/tests/auto/widgets/widgets/qstatusbar/tst_qstatusbar.cpp +++ b/tests/auto/widgets/widgets/qstatusbar/tst_qstatusbar.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qtabbar/tst_qtabbar.cpp b/tests/auto/widgets/widgets/qtabbar/tst_qtabbar.cpp index d43e17135a..2bea17f56f 100644 --- a/tests/auto/widgets/widgets/qtabbar/tst_qtabbar.cpp +++ b/tests/auto/widgets/widgets/qtabbar/tst_qtabbar.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qtabwidget/tst_qtabwidget.cpp b/tests/auto/widgets/widgets/qtabwidget/tst_qtabwidget.cpp index de5080cdc2..a4d2739186 100644 --- a/tests/auto/widgets/widgets/qtabwidget/tst_qtabwidget.cpp +++ b/tests/auto/widgets/widgets/qtabwidget/tst_qtabwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qtextbrowser/tst_qtextbrowser.cpp b/tests/auto/widgets/widgets/qtextbrowser/tst_qtextbrowser.cpp index ff3faeb1d3..6370c1ce51 100644 --- a/tests/auto/widgets/widgets/qtextbrowser/tst_qtextbrowser.cpp +++ b/tests/auto/widgets/widgets/qtextbrowser/tst_qtextbrowser.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qtextedit/tst_qtextedit.cpp b/tests/auto/widgets/widgets/qtextedit/tst_qtextedit.cpp index 9c90255da1..a350f4d862 100644 --- a/tests/auto/widgets/widgets/qtextedit/tst_qtextedit.cpp +++ b/tests/auto/widgets/widgets/qtextedit/tst_qtextedit.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qtoolbar/tst_qtoolbar.cpp b/tests/auto/widgets/widgets/qtoolbar/tst_qtoolbar.cpp index a796554d6b..e029f66cf2 100644 --- a/tests/auto/widgets/widgets/qtoolbar/tst_qtoolbar.cpp +++ b/tests/auto/widgets/widgets/qtoolbar/tst_qtoolbar.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qtoolbox/tst_qtoolbox.cpp b/tests/auto/widgets/widgets/qtoolbox/tst_qtoolbox.cpp index 6d0af0779d..10d476f662 100644 --- a/tests/auto/widgets/widgets/qtoolbox/tst_qtoolbox.cpp +++ b/tests/auto/widgets/widgets/qtoolbox/tst_qtoolbox.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qtoolbutton/tst_qtoolbutton.cpp b/tests/auto/widgets/widgets/qtoolbutton/tst_qtoolbutton.cpp index 333b98b3be..8eef254837 100644 --- a/tests/auto/widgets/widgets/qtoolbutton/tst_qtoolbutton.cpp +++ b/tests/auto/widgets/widgets/qtoolbutton/tst_qtoolbutton.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/widgets/widgets/qworkspace/tst_qworkspace.cpp b/tests/auto/widgets/widgets/qworkspace/tst_qworkspace.cpp index 133f3cef79..8410a183cb 100644 --- a/tests/auto/widgets/widgets/qworkspace/tst_qworkspace.cpp +++ b/tests/auto/widgets/widgets/qworkspace/tst_qworkspace.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/xml/dom/qdom/tst_qdom.cpp b/tests/auto/xml/dom/qdom/tst_qdom.cpp index a206271a13..44af4a03d8 100644 --- a/tests/auto/xml/dom/qdom/tst_qdom.cpp +++ b/tests/auto/xml/dom/qdom/tst_qdom.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/xml/sax/qxml/tst_qxml.cpp b/tests/auto/xml/sax/qxml/tst_qxml.cpp index 8a5e750563..afe219c635 100644 --- a/tests/auto/xml/sax/qxml/tst_qxml.cpp +++ b/tests/auto/xml/sax/qxml/tst_qxml.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/xml/sax/qxmlinputsource/tst_qxmlinputsource.cpp b/tests/auto/xml/sax/qxmlinputsource/tst_qxmlinputsource.cpp index ba6d2922f3..865e6c4d9f 100644 --- a/tests/auto/xml/sax/qxmlinputsource/tst_qxmlinputsource.cpp +++ b/tests/auto/xml/sax/qxmlinputsource/tst_qxmlinputsource.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/xml/sax/qxmlsimplereader/generate_ref_files.sh b/tests/auto/xml/sax/qxmlsimplereader/generate_ref_files.sh index ae2a5ffb5c..b9895f8598 100755 --- a/tests/auto/xml/sax/qxmlsimplereader/generate_ref_files.sh +++ b/tests/auto/xml/sax/qxmlsimplereader/generate_ref_files.sh @@ -1,7 +1,7 @@ #!/bin/bash ############################################################################# ## -## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ## All rights reserved. ## Contact: Nokia Corporation (qt-info@nokia.com) ## diff --git a/tests/auto/xml/sax/qxmlsimplereader/parser/main.cpp b/tests/auto/xml/sax/qxmlsimplereader/parser/main.cpp index 05d9ce6754..840f237875 100644 --- a/tests/auto/xml/sax/qxmlsimplereader/parser/main.cpp +++ b/tests/auto/xml/sax/qxmlsimplereader/parser/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/xml/sax/qxmlsimplereader/parser/parser.cpp b/tests/auto/xml/sax/qxmlsimplereader/parser/parser.cpp index 99a833231e..0089951d30 100644 --- a/tests/auto/xml/sax/qxmlsimplereader/parser/parser.cpp +++ b/tests/auto/xml/sax/qxmlsimplereader/parser/parser.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/xml/sax/qxmlsimplereader/parser/parser.h b/tests/auto/xml/sax/qxmlsimplereader/parser/parser.h index e3d95ce811..e91ec53d5a 100644 --- a/tests/auto/xml/sax/qxmlsimplereader/parser/parser.h +++ b/tests/auto/xml/sax/qxmlsimplereader/parser/parser.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/auto/xml/sax/qxmlsimplereader/tst_qxmlsimplereader.cpp b/tests/auto/xml/sax/qxmlsimplereader/tst_qxmlsimplereader.cpp index 5447e6f0eb..1478ae7e23 100644 --- a/tests/auto/xml/sax/qxmlsimplereader/tst_qxmlsimplereader.cpp +++ b/tests/auto/xml/sax/qxmlsimplereader/tst_qxmlsimplereader.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/baselineserver/shared/baselineprotocol.cpp b/tests/baselineserver/shared/baselineprotocol.cpp index e1ac2bddbd..e9adfae691 100644 --- a/tests/baselineserver/shared/baselineprotocol.cpp +++ b/tests/baselineserver/shared/baselineprotocol.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/baselineserver/shared/baselineprotocol.h b/tests/baselineserver/shared/baselineprotocol.h index ffdbb39d67..cd40a1241b 100644 --- a/tests/baselineserver/shared/baselineprotocol.h +++ b/tests/baselineserver/shared/baselineprotocol.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/baselineserver/shared/lookup3.cpp b/tests/baselineserver/shared/lookup3.cpp index 1ad2d371c4..4db5b3c622 100644 --- a/tests/baselineserver/shared/lookup3.cpp +++ b/tests/baselineserver/shared/lookup3.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/baselineserver/shared/qbaselinetest.cpp b/tests/baselineserver/shared/qbaselinetest.cpp index de3150e080..6e2491054c 100644 --- a/tests/baselineserver/shared/qbaselinetest.cpp +++ b/tests/baselineserver/shared/qbaselinetest.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/baselineserver/shared/qbaselinetest.h b/tests/baselineserver/shared/qbaselinetest.h index 8594799447..84d40477b1 100644 --- a/tests/baselineserver/shared/qbaselinetest.h +++ b/tests/baselineserver/shared/qbaselinetest.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/baselineserver/src/baselineserver.cpp b/tests/baselineserver/src/baselineserver.cpp index 5ac78d4b32..533ed5d9d9 100644 --- a/tests/baselineserver/src/baselineserver.cpp +++ b/tests/baselineserver/src/baselineserver.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/baselineserver/src/baselineserver.h b/tests/baselineserver/src/baselineserver.h index 333d9ed30b..b9b08b29b4 100644 --- a/tests/baselineserver/src/baselineserver.h +++ b/tests/baselineserver/src/baselineserver.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/baselineserver/src/main.cpp b/tests/baselineserver/src/main.cpp index 8e5fa4e669..685e853575 100644 --- a/tests/baselineserver/src/main.cpp +++ b/tests/baselineserver/src/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/baselineserver/src/report.cpp b/tests/baselineserver/src/report.cpp index 16f061c7e7..a726149d6a 100644 --- a/tests/baselineserver/src/report.cpp +++ b/tests/baselineserver/src/report.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/baselineserver/src/report.h b/tests/baselineserver/src/report.h index 610497c84b..b4488f1489 100644 --- a/tests/baselineserver/src/report.h +++ b/tests/baselineserver/src/report.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/codecs/qtextcodec/main.cpp b/tests/benchmarks/corelib/codecs/qtextcodec/main.cpp index 995b606892..1499eccd50 100644 --- a/tests/benchmarks/corelib/codecs/qtextcodec/main.cpp +++ b/tests/benchmarks/corelib/codecs/qtextcodec/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/io/qdir/10000/bench_qdir_10000.cpp b/tests/benchmarks/corelib/io/qdir/10000/bench_qdir_10000.cpp index 8f07587371..8f11dc792e 100644 --- a/tests/benchmarks/corelib/io/qdir/10000/bench_qdir_10000.cpp +++ b/tests/benchmarks/corelib/io/qdir/10000/bench_qdir_10000.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/io/qdir/tree/bench_qdir_tree.cpp b/tests/benchmarks/corelib/io/qdir/tree/bench_qdir_tree.cpp index 40a5d75f3f..9d7d60ebe0 100644 --- a/tests/benchmarks/corelib/io/qdir/tree/bench_qdir_tree.cpp +++ b/tests/benchmarks/corelib/io/qdir/tree/bench_qdir_tree.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/io/qdiriterator/main.cpp b/tests/benchmarks/corelib/io/qdiriterator/main.cpp index cecd0de1da..4e4b9cbf0b 100644 --- a/tests/benchmarks/corelib/io/qdiriterator/main.cpp +++ b/tests/benchmarks/corelib/io/qdiriterator/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/io/qdiriterator/qfilesystemiterator.cpp b/tests/benchmarks/corelib/io/qdiriterator/qfilesystemiterator.cpp index 8c9f1cc423..584eb32021 100644 --- a/tests/benchmarks/corelib/io/qdiriterator/qfilesystemiterator.cpp +++ b/tests/benchmarks/corelib/io/qdiriterator/qfilesystemiterator.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/io/qdiriterator/qfilesystemiterator.h b/tests/benchmarks/corelib/io/qdiriterator/qfilesystemiterator.h index 7e674e38e2..bef8115287 100644 --- a/tests/benchmarks/corelib/io/qdiriterator/qfilesystemiterator.h +++ b/tests/benchmarks/corelib/io/qdiriterator/qfilesystemiterator.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/io/qfile/main.cpp b/tests/benchmarks/corelib/io/qfile/main.cpp index 11cd5c76b2..d291e3f412 100644 --- a/tests/benchmarks/corelib/io/qfile/main.cpp +++ b/tests/benchmarks/corelib/io/qfile/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/io/qfileinfo/main.cpp b/tests/benchmarks/corelib/io/qfileinfo/main.cpp index 42220bf09a..479737a353 100644 --- a/tests/benchmarks/corelib/io/qfileinfo/main.cpp +++ b/tests/benchmarks/corelib/io/qfileinfo/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/io/qiodevice/main.cpp b/tests/benchmarks/corelib/io/qiodevice/main.cpp index f9e04a2204..e4244a71ef 100644 --- a/tests/benchmarks/corelib/io/qiodevice/main.cpp +++ b/tests/benchmarks/corelib/io/qiodevice/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/io/qtemporaryfile/main.cpp b/tests/benchmarks/corelib/io/qtemporaryfile/main.cpp index c9f3a84365..c0f16068d7 100644 --- a/tests/benchmarks/corelib/io/qtemporaryfile/main.cpp +++ b/tests/benchmarks/corelib/io/qtemporaryfile/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/io/qurl/main.cpp b/tests/benchmarks/corelib/io/qurl/main.cpp index 7e5035f250..c92c841cc8 100644 --- a/tests/benchmarks/corelib/io/qurl/main.cpp +++ b/tests/benchmarks/corelib/io/qurl/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/kernel/events/main.cpp b/tests/benchmarks/corelib/kernel/events/main.cpp index 1b51b087b3..09f37616be 100644 --- a/tests/benchmarks/corelib/kernel/events/main.cpp +++ b/tests/benchmarks/corelib/kernel/events/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/kernel/qmetaobject/main.cpp b/tests/benchmarks/corelib/kernel/qmetaobject/main.cpp index 4214a41f5c..8b68f032ea 100644 --- a/tests/benchmarks/corelib/kernel/qmetaobject/main.cpp +++ b/tests/benchmarks/corelib/kernel/qmetaobject/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/kernel/qmetatype/tst_qmetatype.cpp b/tests/benchmarks/corelib/kernel/qmetatype/tst_qmetatype.cpp index 36c88ea251..cee747316f 100644 --- a/tests/benchmarks/corelib/kernel/qmetatype/tst_qmetatype.cpp +++ b/tests/benchmarks/corelib/kernel/qmetatype/tst_qmetatype.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/kernel/qobject/main.cpp b/tests/benchmarks/corelib/kernel/qobject/main.cpp index 13ba073eb4..905b21fca0 100644 --- a/tests/benchmarks/corelib/kernel/qobject/main.cpp +++ b/tests/benchmarks/corelib/kernel/qobject/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/kernel/qobject/object.cpp b/tests/benchmarks/corelib/kernel/qobject/object.cpp index 1c4a558b29..0b036d0139 100644 --- a/tests/benchmarks/corelib/kernel/qobject/object.cpp +++ b/tests/benchmarks/corelib/kernel/qobject/object.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/kernel/qobject/object.h b/tests/benchmarks/corelib/kernel/qobject/object.h index 707455e67c..c3cd23d6be 100644 --- a/tests/benchmarks/corelib/kernel/qobject/object.h +++ b/tests/benchmarks/corelib/kernel/qobject/object.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/kernel/qtimer_vs_qmetaobject/tst_qtimer_vs_qmetaobject.cpp b/tests/benchmarks/corelib/kernel/qtimer_vs_qmetaobject/tst_qtimer_vs_qmetaobject.cpp index 7dec7a8e74..151e78e5ce 100644 --- a/tests/benchmarks/corelib/kernel/qtimer_vs_qmetaobject/tst_qtimer_vs_qmetaobject.cpp +++ b/tests/benchmarks/corelib/kernel/qtimer_vs_qmetaobject/tst_qtimer_vs_qmetaobject.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/kernel/qvariant/tst_qvariant.cpp b/tests/benchmarks/corelib/kernel/qvariant/tst_qvariant.cpp index 85d14b99b6..00e2684066 100644 --- a/tests/benchmarks/corelib/kernel/qvariant/tst_qvariant.cpp +++ b/tests/benchmarks/corelib/kernel/qvariant/tst_qvariant.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/plugin/quuid/tst_quuid.cpp b/tests/benchmarks/corelib/plugin/quuid/tst_quuid.cpp index a035cf3627..981acae99d 100644 --- a/tests/benchmarks/corelib/plugin/quuid/tst_quuid.cpp +++ b/tests/benchmarks/corelib/plugin/quuid/tst_quuid.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/thread/qmutex/tst_qmutex.cpp b/tests/benchmarks/corelib/thread/qmutex/tst_qmutex.cpp index 6f6085b7c7..9310a3dec8 100644 --- a/tests/benchmarks/corelib/thread/qmutex/tst_qmutex.cpp +++ b/tests/benchmarks/corelib/thread/qmutex/tst_qmutex.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/thread/qthreadstorage/tst_qthreadstorage.cpp b/tests/benchmarks/corelib/thread/qthreadstorage/tst_qthreadstorage.cpp index 7ded3a350d..6372b7a830 100644 --- a/tests/benchmarks/corelib/thread/qthreadstorage/tst_qthreadstorage.cpp +++ b/tests/benchmarks/corelib/thread/qthreadstorage/tst_qthreadstorage.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/thread/qwaitcondition/tst_qwaitcondition.cpp b/tests/benchmarks/corelib/thread/qwaitcondition/tst_qwaitcondition.cpp index 6f77831acd..729b14067e 100644 --- a/tests/benchmarks/corelib/thread/qwaitcondition/tst_qwaitcondition.cpp +++ b/tests/benchmarks/corelib/thread/qwaitcondition/tst_qwaitcondition.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/tools/containers-associative/main.cpp b/tests/benchmarks/corelib/tools/containers-associative/main.cpp index 1b5536f0e5..3e9dfe3568 100644 --- a/tests/benchmarks/corelib/tools/containers-associative/main.cpp +++ b/tests/benchmarks/corelib/tools/containers-associative/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/tools/containers-sequential/main.cpp b/tests/benchmarks/corelib/tools/containers-sequential/main.cpp index ebcc0202ff..ae05a164a2 100644 --- a/tests/benchmarks/corelib/tools/containers-sequential/main.cpp +++ b/tests/benchmarks/corelib/tools/containers-sequential/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/tools/qbytearray/main.cpp b/tests/benchmarks/corelib/tools/qbytearray/main.cpp index 2c9b9d0638..61a7855884 100644 --- a/tests/benchmarks/corelib/tools/qbytearray/main.cpp +++ b/tests/benchmarks/corelib/tools/qbytearray/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/tools/qchar/main.cpp b/tests/benchmarks/corelib/tools/qchar/main.cpp index 5dcea7e03f..3abf7584bb 100644 --- a/tests/benchmarks/corelib/tools/qchar/main.cpp +++ b/tests/benchmarks/corelib/tools/qchar/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/tools/qcontiguouscache/main.cpp b/tests/benchmarks/corelib/tools/qcontiguouscache/main.cpp index 85b9e1d9aa..b6b064e012 100644 --- a/tests/benchmarks/corelib/tools/qcontiguouscache/main.cpp +++ b/tests/benchmarks/corelib/tools/qcontiguouscache/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/tools/qhash/outofline.cpp b/tests/benchmarks/corelib/tools/qhash/outofline.cpp index df7ff26dea..11a5f9e733 100644 --- a/tests/benchmarks/corelib/tools/qhash/outofline.cpp +++ b/tests/benchmarks/corelib/tools/qhash/outofline.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/tools/qhash/qhash_string.cpp b/tests/benchmarks/corelib/tools/qhash/qhash_string.cpp index c107633451..874a0c543a 100644 --- a/tests/benchmarks/corelib/tools/qhash/qhash_string.cpp +++ b/tests/benchmarks/corelib/tools/qhash/qhash_string.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/tools/qhash/qhash_string.h b/tests/benchmarks/corelib/tools/qhash/qhash_string.h index cde42ae32d..94f142914b 100644 --- a/tests/benchmarks/corelib/tools/qhash/qhash_string.h +++ b/tests/benchmarks/corelib/tools/qhash/qhash_string.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/tools/qlist/main.cpp b/tests/benchmarks/corelib/tools/qlist/main.cpp index 22aaf49861..d3380b188c 100644 --- a/tests/benchmarks/corelib/tools/qlist/main.cpp +++ b/tests/benchmarks/corelib/tools/qlist/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/tools/qrect/main.cpp b/tests/benchmarks/corelib/tools/qrect/main.cpp index 8f015ab353..59174e4f08 100644 --- a/tests/benchmarks/corelib/tools/qrect/main.cpp +++ b/tests/benchmarks/corelib/tools/qrect/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/tools/qregexp/main.cpp b/tests/benchmarks/corelib/tools/qregexp/main.cpp index c6cfb1cc1b..32e8e72577 100644 --- a/tests/benchmarks/corelib/tools/qregexp/main.cpp +++ b/tests/benchmarks/corelib/tools/qregexp/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/tools/qstring/data.h b/tests/benchmarks/corelib/tools/qstring/data.h index 3f3fcd8321..925ce3663a 100644 --- a/tests/benchmarks/corelib/tools/qstring/data.h +++ b/tests/benchmarks/corelib/tools/qstring/data.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/tools/qstring/generatelist.pl b/tests/benchmarks/corelib/tools/qstring/generatelist.pl index 1a29db4b47..1f10b638b2 100644 --- a/tests/benchmarks/corelib/tools/qstring/generatelist.pl +++ b/tests/benchmarks/corelib/tools/qstring/generatelist.pl @@ -1,5 +1,5 @@ #!/usr/bin/perl -## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ## All rights reserved. ## Contact: Nokia Corporation (qt-info@nokia.com) ## diff --git a/tests/benchmarks/corelib/tools/qstring/generatelist_char.pl b/tests/benchmarks/corelib/tools/qstring/generatelist_char.pl index 13b49314c3..ad6595ab5c 100644 --- a/tests/benchmarks/corelib/tools/qstring/generatelist_char.pl +++ b/tests/benchmarks/corelib/tools/qstring/generatelist_char.pl @@ -1,6 +1,6 @@ #!/usr/bin/perl # -*- mode: utf-8; tabs: nil -*- -## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ## All rights reserved. ## Contact: Nokia Corporation (qt-info@nokia.com) ## diff --git a/tests/benchmarks/corelib/tools/qstring/main.cpp b/tests/benchmarks/corelib/tools/qstring/main.cpp index 1b9d366ef3..ab23fa5f9b 100644 --- a/tests/benchmarks/corelib/tools/qstring/main.cpp +++ b/tests/benchmarks/corelib/tools/qstring/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/tools/qstringbuilder/main.cpp b/tests/benchmarks/corelib/tools/qstringbuilder/main.cpp index 7f936181a2..b1ec5dace8 100644 --- a/tests/benchmarks/corelib/tools/qstringbuilder/main.cpp +++ b/tests/benchmarks/corelib/tools/qstringbuilder/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/tools/qstringlist/main.cpp b/tests/benchmarks/corelib/tools/qstringlist/main.cpp index a77cf87f73..696f0fc6da 100644 --- a/tests/benchmarks/corelib/tools/qstringlist/main.cpp +++ b/tests/benchmarks/corelib/tools/qstringlist/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/tools/qvector/main.cpp b/tests/benchmarks/corelib/tools/qvector/main.cpp index 416155d52b..38c1f4ac46 100644 --- a/tests/benchmarks/corelib/tools/qvector/main.cpp +++ b/tests/benchmarks/corelib/tools/qvector/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/tools/qvector/outofline.cpp b/tests/benchmarks/corelib/tools/qvector/outofline.cpp index 544d738bdf..a30a7e786a 100644 --- a/tests/benchmarks/corelib/tools/qvector/outofline.cpp +++ b/tests/benchmarks/corelib/tools/qvector/outofline.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/corelib/tools/qvector/qrawvector.h b/tests/benchmarks/corelib/tools/qvector/qrawvector.h index eb12a25403..05375f9845 100644 --- a/tests/benchmarks/corelib/tools/qvector/qrawvector.h +++ b/tests/benchmarks/corelib/tools/qvector/qrawvector.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/dbus/qdbusperformance/server/server.cpp b/tests/benchmarks/dbus/qdbusperformance/server/server.cpp index 3731be5fc4..d3c6f1f5ac 100644 --- a/tests/benchmarks/dbus/qdbusperformance/server/server.cpp +++ b/tests/benchmarks/dbus/qdbusperformance/server/server.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/dbus/qdbusperformance/serverobject.h b/tests/benchmarks/dbus/qdbusperformance/serverobject.h index 4e554e0fbf..dd4d9f4735 100644 --- a/tests/benchmarks/dbus/qdbusperformance/serverobject.h +++ b/tests/benchmarks/dbus/qdbusperformance/serverobject.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/dbus/qdbusperformance/tst_qdbusperformance.cpp b/tests/benchmarks/dbus/qdbusperformance/tst_qdbusperformance.cpp index 216d1819f7..116268835a 100644 --- a/tests/benchmarks/dbus/qdbusperformance/tst_qdbusperformance.cpp +++ b/tests/benchmarks/dbus/qdbusperformance/tst_qdbusperformance.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/dbus/qdbustype/main.cpp b/tests/benchmarks/dbus/qdbustype/main.cpp index 7c38fe594c..476bdc81c7 100644 --- a/tests/benchmarks/dbus/qdbustype/main.cpp +++ b/tests/benchmarks/dbus/qdbustype/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/animation/qanimation/dummyanimation.cpp b/tests/benchmarks/gui/animation/qanimation/dummyanimation.cpp index fa0c8d16ce..f7d085f759 100644 --- a/tests/benchmarks/gui/animation/qanimation/dummyanimation.cpp +++ b/tests/benchmarks/gui/animation/qanimation/dummyanimation.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/animation/qanimation/dummyanimation.h b/tests/benchmarks/gui/animation/qanimation/dummyanimation.h index 87fe6d2537..caccebffc2 100644 --- a/tests/benchmarks/gui/animation/qanimation/dummyanimation.h +++ b/tests/benchmarks/gui/animation/qanimation/dummyanimation.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/animation/qanimation/dummyobject.cpp b/tests/benchmarks/gui/animation/qanimation/dummyobject.cpp index 305cf58df0..c0c163214b 100644 --- a/tests/benchmarks/gui/animation/qanimation/dummyobject.cpp +++ b/tests/benchmarks/gui/animation/qanimation/dummyobject.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/animation/qanimation/dummyobject.h b/tests/benchmarks/gui/animation/qanimation/dummyobject.h index 39c8769468..0da4aa60e1 100644 --- a/tests/benchmarks/gui/animation/qanimation/dummyobject.h +++ b/tests/benchmarks/gui/animation/qanimation/dummyobject.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/animation/qanimation/main.cpp b/tests/benchmarks/gui/animation/qanimation/main.cpp index 9c016ba765..2ca58bd66b 100644 --- a/tests/benchmarks/gui/animation/qanimation/main.cpp +++ b/tests/benchmarks/gui/animation/qanimation/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/animation/qanimation/rectanimation.cpp b/tests/benchmarks/gui/animation/qanimation/rectanimation.cpp index 3443850bea..aa64b19ca0 100644 --- a/tests/benchmarks/gui/animation/qanimation/rectanimation.cpp +++ b/tests/benchmarks/gui/animation/qanimation/rectanimation.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/animation/qanimation/rectanimation.h b/tests/benchmarks/gui/animation/qanimation/rectanimation.h index e0bb07f063..d8b20d5e6e 100644 --- a/tests/benchmarks/gui/animation/qanimation/rectanimation.h +++ b/tests/benchmarks/gui/animation/qanimation/rectanimation.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/main.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/main.cpp index e8019a946a..8565e1bff1 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/main.cpp +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractitemcontainer.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractitemcontainer.cpp index bc6fa32050..864d2889c2 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractitemcontainer.cpp +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractitemcontainer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractitemcontainer.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractitemcontainer.h index 956c442fb4..f12bf84cbc 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractitemcontainer.h +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractitemcontainer.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractitemview.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractitemview.cpp index 71b9bf1f77..82e7954145 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractitemview.cpp +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractitemview.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractitemview.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractitemview.h index 815f9c5098..97c2bd88e4 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractitemview.h +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractitemview.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractscrollarea.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractscrollarea.cpp index a0dde8a299..b88ccb53f7 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractscrollarea.cpp +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractscrollarea.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractscrollarea.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractscrollarea.h index 8aaeebc0f5..97269badf1 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractscrollarea.h +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractscrollarea.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractviewitem.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractviewitem.cpp index b4bb4b3bb7..993a533b38 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractviewitem.cpp +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractviewitem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractviewitem.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractviewitem.h index ad17f65cee..c1628845f5 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractviewitem.h +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractviewitem.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/backgrounditem.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/backgrounditem.cpp index 1d18942b01..ec3f4c0093 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/backgrounditem.cpp +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/backgrounditem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/backgrounditem.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/backgrounditem.h index e638034132..c9b154313a 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/backgrounditem.h +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/backgrounditem.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/button.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/button.cpp index 97b39fdb34..34737266b3 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/button.cpp +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/button.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/button.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/button.h index 88dc33c956..cb4b1853c1 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/button.h +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/button.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/commandline.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/commandline.cpp index b6592742bf..622cb22d5a 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/commandline.cpp +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/commandline.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/commandline.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/commandline.h index efad458d20..cbfc63937b 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/commandline.h +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/commandline.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/dummydatagen.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/dummydatagen.cpp index d6528f5e47..60bebefcf2 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/dummydatagen.cpp +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/dummydatagen.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/dummydatagen.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/dummydatagen.h index 4e8ae93fe1..75e75235bc 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/dummydatagen.h +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/dummydatagen.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/gvbwidget.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/gvbwidget.cpp index 7731c3f446..cfa8ff63a8 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/gvbwidget.cpp +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/gvbwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/gvbwidget.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/gvbwidget.h index 5682db021f..d26641a4c3 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/gvbwidget.h +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/gvbwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/iconitem.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/iconitem.cpp index 37198a3a91..53a745ba6a 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/iconitem.cpp +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/iconitem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/iconitem.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/iconitem.h index 7bb6034249..818b480849 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/iconitem.h +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/iconitem.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglist.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglist.cpp index 4ccdc4fa9d..6f3417e7c8 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglist.cpp +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglist.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglist.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglist.h index e9c73e7875..87ce134267 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglist.h +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglist.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglistview.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglistview.cpp index 628202be0c..96c1e8cb47 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglistview.cpp +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglistview.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglistview.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglistview.h index cb3f936f8f..119633b557 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglistview.h +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglistview.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/label.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/label.cpp index c0cd5018db..8f6a42dbca 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/label.cpp +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/label.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/label.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/label.h index 8b71f27107..d203085cf7 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/label.h +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/label.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitem.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitem.cpp index b68b347640..baeafaf6f3 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitem.cpp +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitem.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitem.h index 6676cc992e..9bd6157710 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitem.h +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitem.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitemcache.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitemcache.cpp index 3af5685916..b94097b21c 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitemcache.cpp +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitemcache.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitemcache.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitemcache.h index f646f03922..cee8f67870 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitemcache.h +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitemcache.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitemcontainer.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitemcontainer.cpp index e35f931c0a..c7a088a730 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitemcontainer.cpp +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitemcontainer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitemcontainer.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitemcontainer.h index afd7c256b3..6e9aab4417 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitemcontainer.h +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitemcontainer.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listmodel.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listmodel.cpp index 7ff6c11eb9..aead236e84 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listmodel.cpp +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listmodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listmodel.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listmodel.h index dc6b3a6fbe..cd0a7a5228 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listmodel.h +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listmodel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listwidget.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listwidget.cpp index 2371750efa..9d6bcc98d1 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listwidget.cpp +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listwidget.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listwidget.h index 70708751ff..0e6593d6f3 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listwidget.h +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/mainview.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/mainview.cpp index 2520d0ddc3..d8f3445d36 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/mainview.cpp +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/mainview.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/mainview.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/mainview.h index 71c565e16f..17a3505b8e 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/mainview.h +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/mainview.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/menu.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/menu.cpp index 90b2ceabad..7757bcc616 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/menu.cpp +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/menu.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/menu.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/menu.h index ea9eb7d736..ea95a079cd 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/menu.h +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/menu.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/recycledlistitem.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/recycledlistitem.cpp index ac01927442..9ee649438f 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/recycledlistitem.cpp +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/recycledlistitem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/recycledlistitem.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/recycledlistitem.h index 78d95198d2..a70eb19303 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/recycledlistitem.h +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/recycledlistitem.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/resourcemoninterface.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/resourcemoninterface.h index 42b36f1595..04ab2fe229 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/resourcemoninterface.h +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/resourcemoninterface.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scrollbar.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scrollbar.cpp index b74f0d8210..54236325d1 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scrollbar.cpp +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scrollbar.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scrollbar.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scrollbar.h index 66aa4703fd..7d05f858f3 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scrollbar.h +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scrollbar.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scroller.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scroller.cpp index 9b70cab5c9..c45a880a8e 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scroller.cpp +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scroller.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scroller.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scroller.h index 73dbb2c9fe..fb7162265d 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scroller.h +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scroller.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scroller_p.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scroller_p.h index f7e807e374..bfb83757b0 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scroller_p.h +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scroller_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/settings.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/settings.cpp index 8cd1df1abb..ba153180e6 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/settings.cpp +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/settings.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/settings.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/settings.h index b6184f26dc..0635231cb5 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/settings.h +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/settings.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/simplelist.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/simplelist.cpp index 818822de27..be8c9d22ea 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/simplelist.cpp +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/simplelist.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/simplelist.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/simplelist.h index e93d3ad5af..9a84407aed 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/simplelist.h +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/simplelist.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/simplelistview.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/simplelistview.cpp index 0fd1eded63..1dba139fd2 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/simplelistview.cpp +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/simplelistview.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/simplelistview.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/simplelistview.h index df0de040b2..5c7367991a 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/simplelistview.h +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/simplelistview.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/theme.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/theme.cpp index ca96816573..76fd265986 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/theme.cpp +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/theme.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/theme.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/theme.h index f5373e0748..1b9e6e047c 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/theme.h +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/theme.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/themeevent.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/themeevent.cpp index f8c945c091..4cdd7f0123 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/themeevent.cpp +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/themeevent.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/themeevent.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/themeevent.h index 8ee86121e6..86e2f1b0e8 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/themeevent.h +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/themeevent.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/topbar.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/topbar.cpp index ff75adb7cc..09ff5d1394 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/topbar.cpp +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/topbar.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/topbar.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/topbar.h index 8c85fa108e..c9ab96fbe8 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/topbar.h +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/topbar.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/webview.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/webview.cpp index 1413585e15..cfff4903fd 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/webview.cpp +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/webview.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/webview.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/webview.h index 48f0104b91..9fad826363 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/webview.h +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/webview.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/webview_p.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/webview_p.h index ae22835545..1a3a1613c1 100644 --- a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/webview_p.h +++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/webview_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsanchorlayout/tst_qgraphicsanchorlayout.cpp b/tests/benchmarks/gui/graphicsview/qgraphicsanchorlayout/tst_qgraphicsanchorlayout.cpp index 7475de1f0c..5f826a0141 100644 --- a/tests/benchmarks/gui/graphicsview/qgraphicsanchorlayout/tst_qgraphicsanchorlayout.cpp +++ b/tests/benchmarks/gui/graphicsview/qgraphicsanchorlayout/tst_qgraphicsanchorlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsitem/tst_qgraphicsitem.cpp b/tests/benchmarks/gui/graphicsview/qgraphicsitem/tst_qgraphicsitem.cpp index df2d39288f..f0cdbe29c5 100644 --- a/tests/benchmarks/gui/graphicsview/qgraphicsitem/tst_qgraphicsitem.cpp +++ b/tests/benchmarks/gui/graphicsview/qgraphicsitem/tst_qgraphicsitem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/qgraphicslayout/tst_qgraphicslayout.cpp b/tests/benchmarks/gui/graphicsview/qgraphicslayout/tst_qgraphicslayout.cpp index 055e4e395b..83ab96e5c3 100644 --- a/tests/benchmarks/gui/graphicsview/qgraphicslayout/tst_qgraphicslayout.cpp +++ b/tests/benchmarks/gui/graphicsview/qgraphicslayout/tst_qgraphicslayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/qgraphicslinearlayout/tst_qgraphicslinearlayout.cpp b/tests/benchmarks/gui/graphicsview/qgraphicslinearlayout/tst_qgraphicslinearlayout.cpp index 629cd10c61..b52336dcd6 100644 --- a/tests/benchmarks/gui/graphicsview/qgraphicslinearlayout/tst_qgraphicslinearlayout.cpp +++ b/tests/benchmarks/gui/graphicsview/qgraphicslinearlayout/tst_qgraphicslinearlayout.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsscene/tst_qgraphicsscene.cpp b/tests/benchmarks/gui/graphicsview/qgraphicsscene/tst_qgraphicsscene.cpp index fd0e89e17f..e713ecf03f 100644 --- a/tests/benchmarks/gui/graphicsview/qgraphicsscene/tst_qgraphicsscene.cpp +++ b/tests/benchmarks/gui/graphicsview/qgraphicsscene/tst_qgraphicsscene.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/chip.cpp b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/chip.cpp index de41358aae..f82b66f4fa 100644 --- a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/chip.cpp +++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/chip.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/chip.h b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/chip.h index b6338d9916..49fccb42e5 100644 --- a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/chip.h +++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/chip.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/main.cpp b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/main.cpp index 2cb7990741..04aaa8b54b 100644 --- a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/main.cpp +++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/mainwindow.cpp b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/mainwindow.cpp index 4c6289ea95..f755976d55 100644 --- a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/mainwindow.cpp +++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/mainwindow.h b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/mainwindow.h index 56edfcd066..7042cb5bb3 100644 --- a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/mainwindow.h +++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/view.cpp b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/view.cpp index 90a8a25ebe..7ea4ffbe00 100644 --- a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/view.cpp +++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/view.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/view.h b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/view.h index 206d9fbf0f..9e22a98c32 100644 --- a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/view.h +++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/view.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/moveItems/main.cpp b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/moveItems/main.cpp index fd5317bea6..d02b034834 100644 --- a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/moveItems/main.cpp +++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/moveItems/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/scrolltest/main.cpp b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/scrolltest/main.cpp index 4aec0baed5..0b2e87fcaf 100644 --- a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/scrolltest/main.cpp +++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/scrolltest/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chip.cpp b/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chip.cpp index 62ddcfc5ef..71e69fed9f 100644 --- a/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chip.cpp +++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chip.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chip.h b/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chip.h index 3e4ef6fe24..3ef2ef546f 100644 --- a/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chip.h +++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chip.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chiptester.cpp b/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chiptester.cpp index c6167e50cb..f106cbe4e3 100644 --- a/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chiptester.cpp +++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chiptester.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chiptester.h b/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chiptester.h index bcab432092..debb78ffbf 100644 --- a/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chiptester.h +++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chiptester.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/tst_qgraphicsview.cpp b/tests/benchmarks/gui/graphicsview/qgraphicsview/tst_qgraphicsview.cpp index 04d48f19e0..dd1d7a3934 100644 --- a/tests/benchmarks/gui/graphicsview/qgraphicsview/tst_qgraphicsview.cpp +++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/tst_qgraphicsview.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/graphicsview/qgraphicswidget/tst_qgraphicswidget.cpp b/tests/benchmarks/gui/graphicsview/qgraphicswidget/tst_qgraphicswidget.cpp index 756ded7d75..08e7c88a76 100644 --- a/tests/benchmarks/gui/graphicsview/qgraphicswidget/tst_qgraphicswidget.cpp +++ b/tests/benchmarks/gui/graphicsview/qgraphicswidget/tst_qgraphicswidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/image/blendbench/main.cpp b/tests/benchmarks/gui/image/blendbench/main.cpp index 062b91ef20..24cfba9012 100644 --- a/tests/benchmarks/gui/image/blendbench/main.cpp +++ b/tests/benchmarks/gui/image/blendbench/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/image/qimageconversion/tst_qimageconversion.cpp b/tests/benchmarks/gui/image/qimageconversion/tst_qimageconversion.cpp index 73272d279f..7be221a5ec 100644 --- a/tests/benchmarks/gui/image/qimageconversion/tst_qimageconversion.cpp +++ b/tests/benchmarks/gui/image/qimageconversion/tst_qimageconversion.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/image/qimagereader/tst_qimagereader.cpp b/tests/benchmarks/gui/image/qimagereader/tst_qimagereader.cpp index 1f904a355f..363e7df5ac 100644 --- a/tests/benchmarks/gui/image/qimagereader/tst_qimagereader.cpp +++ b/tests/benchmarks/gui/image/qimagereader/tst_qimagereader.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/image/qpixmap/tst_qpixmap.cpp b/tests/benchmarks/gui/image/qpixmap/tst_qpixmap.cpp index 904177bff7..110bcbbca4 100644 --- a/tests/benchmarks/gui/image/qpixmap/tst_qpixmap.cpp +++ b/tests/benchmarks/gui/image/qpixmap/tst_qpixmap.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/image/qpixmapcache/tst_qpixmapcache.cpp b/tests/benchmarks/gui/image/qpixmapcache/tst_qpixmapcache.cpp index f2189b1cbd..fa169cb0b1 100644 --- a/tests/benchmarks/gui/image/qpixmapcache/tst_qpixmapcache.cpp +++ b/tests/benchmarks/gui/image/qpixmapcache/tst_qpixmapcache.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/itemviews/qtableview/tst_qtableview.cpp b/tests/benchmarks/gui/itemviews/qtableview/tst_qtableview.cpp index 8bd09e6040..1b8d1f2327 100644 --- a/tests/benchmarks/gui/itemviews/qtableview/tst_qtableview.cpp +++ b/tests/benchmarks/gui/itemviews/qtableview/tst_qtableview.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/kernel/qapplication/main.cpp b/tests/benchmarks/gui/kernel/qapplication/main.cpp index 63991683c4..6df3c5ac23 100644 --- a/tests/benchmarks/gui/kernel/qapplication/main.cpp +++ b/tests/benchmarks/gui/kernel/qapplication/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/kernel/qguimetatype/tst_qguimetatype.cpp b/tests/benchmarks/gui/kernel/qguimetatype/tst_qguimetatype.cpp index 1d0a2d9330..2d5164eda9 100644 --- a/tests/benchmarks/gui/kernel/qguimetatype/tst_qguimetatype.cpp +++ b/tests/benchmarks/gui/kernel/qguimetatype/tst_qguimetatype.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/kernel/qguivariant/tst_qguivariant.cpp b/tests/benchmarks/gui/kernel/qguivariant/tst_qguivariant.cpp index 30da54847a..64e481ab7d 100644 --- a/tests/benchmarks/gui/kernel/qguivariant/tst_qguivariant.cpp +++ b/tests/benchmarks/gui/kernel/qguivariant/tst_qguivariant.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/kernel/qwidget/tst_qwidget.cpp b/tests/benchmarks/gui/kernel/qwidget/tst_qwidget.cpp index f145304c14..8bd0cb8a03 100644 --- a/tests/benchmarks/gui/kernel/qwidget/tst_qwidget.cpp +++ b/tests/benchmarks/gui/kernel/qwidget/tst_qwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/math3d/qmatrix4x4/tst_qmatrix4x4.cpp b/tests/benchmarks/gui/math3d/qmatrix4x4/tst_qmatrix4x4.cpp index de35c1d94b..6173870c10 100644 --- a/tests/benchmarks/gui/math3d/qmatrix4x4/tst_qmatrix4x4.cpp +++ b/tests/benchmarks/gui/math3d/qmatrix4x4/tst_qmatrix4x4.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/math3d/qquaternion/tst_qquaternion.cpp b/tests/benchmarks/gui/math3d/qquaternion/tst_qquaternion.cpp index 7bce2a1776..b691b99455 100644 --- a/tests/benchmarks/gui/math3d/qquaternion/tst_qquaternion.cpp +++ b/tests/benchmarks/gui/math3d/qquaternion/tst_qquaternion.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/painting/qpainter/tst_qpainter.cpp b/tests/benchmarks/gui/painting/qpainter/tst_qpainter.cpp index 37a8329151..c659fa5af1 100644 --- a/tests/benchmarks/gui/painting/qpainter/tst_qpainter.cpp +++ b/tests/benchmarks/gui/painting/qpainter/tst_qpainter.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/painting/qregion/main.cpp b/tests/benchmarks/gui/painting/qregion/main.cpp index 92749da108..2a92387aa9 100644 --- a/tests/benchmarks/gui/painting/qregion/main.cpp +++ b/tests/benchmarks/gui/painting/qregion/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/painting/qtbench/benchmarktests.h b/tests/benchmarks/gui/painting/qtbench/benchmarktests.h index 0f4ea7c023..53cac3d7b6 100644 --- a/tests/benchmarks/gui/painting/qtbench/benchmarktests.h +++ b/tests/benchmarks/gui/painting/qtbench/benchmarktests.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/painting/qtbench/tst_qtbench.cpp b/tests/benchmarks/gui/painting/qtbench/tst_qtbench.cpp index dc3f1f900e..c58e53f267 100644 --- a/tests/benchmarks/gui/painting/qtbench/tst_qtbench.cpp +++ b/tests/benchmarks/gui/painting/qtbench/tst_qtbench.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/painting/qtracebench/tst_qtracebench.cpp b/tests/benchmarks/gui/painting/qtracebench/tst_qtracebench.cpp index 0bb586d85d..3d29482970 100644 --- a/tests/benchmarks/gui/painting/qtracebench/tst_qtracebench.cpp +++ b/tests/benchmarks/gui/painting/qtracebench/tst_qtracebench.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/painting/qtransform/tst_qtransform.cpp b/tests/benchmarks/gui/painting/qtransform/tst_qtransform.cpp index a11af5a3dd..1ad44cca7a 100644 --- a/tests/benchmarks/gui/painting/qtransform/tst_qtransform.cpp +++ b/tests/benchmarks/gui/painting/qtransform/tst_qtransform.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/styles/qstylesheetstyle/main.cpp b/tests/benchmarks/gui/styles/qstylesheetstyle/main.cpp index f44a29d16d..3f10459615 100644 --- a/tests/benchmarks/gui/styles/qstylesheetstyle/main.cpp +++ b/tests/benchmarks/gui/styles/qstylesheetstyle/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/text/qfontmetrics/main.cpp b/tests/benchmarks/gui/text/qfontmetrics/main.cpp index 2bb32d737f..ab1d2944a0 100644 --- a/tests/benchmarks/gui/text/qfontmetrics/main.cpp +++ b/tests/benchmarks/gui/text/qfontmetrics/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/gui/text/qtext/main.cpp b/tests/benchmarks/gui/text/qtext/main.cpp index a7da42e347..753021419d 100644 --- a/tests/benchmarks/gui/text/qtext/main.cpp +++ b/tests/benchmarks/gui/text/qtext/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/network/access/qfile_vs_qnetworkaccessmanager/main.cpp b/tests/benchmarks/network/access/qfile_vs_qnetworkaccessmanager/main.cpp index 54f0c71c1e..96b959ed70 100644 --- a/tests/benchmarks/network/access/qfile_vs_qnetworkaccessmanager/main.cpp +++ b/tests/benchmarks/network/access/qfile_vs_qnetworkaccessmanager/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/network/access/qnetworkreply/tst_qnetworkreply.cpp b/tests/benchmarks/network/access/qnetworkreply/tst_qnetworkreply.cpp index 7d1dac1990..d30dafbe4a 100644 --- a/tests/benchmarks/network/access/qnetworkreply/tst_qnetworkreply.cpp +++ b/tests/benchmarks/network/access/qnetworkreply/tst_qnetworkreply.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/network/kernel/qhostinfo/main.cpp b/tests/benchmarks/network/kernel/qhostinfo/main.cpp index 634e237d5d..bcab4e3894 100644 --- a/tests/benchmarks/network/kernel/qhostinfo/main.cpp +++ b/tests/benchmarks/network/kernel/qhostinfo/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/network/socket/qtcpserver/tst_qtcpserver.cpp b/tests/benchmarks/network/socket/qtcpserver/tst_qtcpserver.cpp index c5d47f1a56..7157a6c690 100644 --- a/tests/benchmarks/network/socket/qtcpserver/tst_qtcpserver.cpp +++ b/tests/benchmarks/network/socket/qtcpserver/tst_qtcpserver.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/network/ssl/qsslsocket/tst_qsslsocket.cpp b/tests/benchmarks/network/ssl/qsslsocket/tst_qsslsocket.cpp index d3684837b7..3210a109c4 100644 --- a/tests/benchmarks/network/ssl/qsslsocket/tst_qsslsocket.cpp +++ b/tests/benchmarks/network/ssl/qsslsocket/tst_qsslsocket.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/opengl/main.cpp b/tests/benchmarks/opengl/main.cpp index 37d15f86ac..9be7f17146 100644 --- a/tests/benchmarks/opengl/main.cpp +++ b/tests/benchmarks/opengl/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/plugins/imageformats/jpeg/jpeg.cpp b/tests/benchmarks/plugins/imageformats/jpeg/jpeg.cpp index d65ca18e7e..d8b8fbc865 100644 --- a/tests/benchmarks/plugins/imageformats/jpeg/jpeg.cpp +++ b/tests/benchmarks/plugins/imageformats/jpeg/jpeg.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/benchmarks/sql/kernel/qsqlquery/main.cpp b/tests/benchmarks/sql/kernel/qsqlquery/main.cpp index 87d4ebe3b8..b3ed0fa058 100644 --- a/tests/benchmarks/sql/kernel/qsqlquery/main.cpp +++ b/tests/benchmarks/sql/kernel/qsqlquery/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/bearerex/bearerex.cpp b/tests/manual/bearerex/bearerex.cpp index c044476a8c..fd75c30438 100644 --- a/tests/manual/bearerex/bearerex.cpp +++ b/tests/manual/bearerex/bearerex.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/bearerex/bearerex.h b/tests/manual/bearerex/bearerex.h index 22c24cb42c..045d310f4a 100644 --- a/tests/manual/bearerex/bearerex.h +++ b/tests/manual/bearerex/bearerex.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/bearerex/datatransferer.cpp b/tests/manual/bearerex/datatransferer.cpp index b170daf489..5184bccde9 100644 --- a/tests/manual/bearerex/datatransferer.cpp +++ b/tests/manual/bearerex/datatransferer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/bearerex/datatransferer.h b/tests/manual/bearerex/datatransferer.h index 50fc416b19..ddbd89be2a 100644 --- a/tests/manual/bearerex/datatransferer.h +++ b/tests/manual/bearerex/datatransferer.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/bearerex/main.cpp b/tests/manual/bearerex/main.cpp index 9f3e9c68f4..e9bf03395f 100644 --- a/tests/manual/bearerex/main.cpp +++ b/tests/manual/bearerex/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/bearerex/xqlistwidget.cpp b/tests/manual/bearerex/xqlistwidget.cpp index 162545c4e9..b236c41bc6 100644 --- a/tests/manual/bearerex/xqlistwidget.cpp +++ b/tests/manual/bearerex/xqlistwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/bearerex/xqlistwidget.h b/tests/manual/bearerex/xqlistwidget.h index 0d6d59b877..1715bec3ec 100644 --- a/tests/manual/bearerex/xqlistwidget.h +++ b/tests/manual/bearerex/xqlistwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/cocoa/qt_on_cocoa/main.mm b/tests/manual/cocoa/qt_on_cocoa/main.mm index 0f3d6800b3..18b5c78993 100644 --- a/tests/manual/cocoa/qt_on_cocoa/main.mm +++ b/tests/manual/cocoa/qt_on_cocoa/main.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/cocoa/qt_on_cocoa/window.cpp b/tests/manual/cocoa/qt_on_cocoa/window.cpp index b7b263333b..5d24ceb51f 100644 --- a/tests/manual/cocoa/qt_on_cocoa/window.cpp +++ b/tests/manual/cocoa/qt_on_cocoa/window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/cocoa/qt_on_cocoa/window.h b/tests/manual/cocoa/qt_on_cocoa/window.h index 462451c429..2fa2784427 100644 --- a/tests/manual/cocoa/qt_on_cocoa/window.h +++ b/tests/manual/cocoa/qt_on_cocoa/window.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/gestures/graphicsview/gestures.cpp b/tests/manual/gestures/graphicsview/gestures.cpp index e576f14871..4dde0f5cb7 100644 --- a/tests/manual/gestures/graphicsview/gestures.cpp +++ b/tests/manual/gestures/graphicsview/gestures.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/gestures/graphicsview/gestures.h b/tests/manual/gestures/graphicsview/gestures.h index 8f96eccf99..8104da640d 100644 --- a/tests/manual/gestures/graphicsview/gestures.h +++ b/tests/manual/gestures/graphicsview/gestures.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/gestures/graphicsview/imageitem.cpp b/tests/manual/gestures/graphicsview/imageitem.cpp index 73d56129d0..03e9946cf4 100644 --- a/tests/manual/gestures/graphicsview/imageitem.cpp +++ b/tests/manual/gestures/graphicsview/imageitem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/gestures/graphicsview/imageitem.h b/tests/manual/gestures/graphicsview/imageitem.h index cdc1d8823e..d789a3e914 100644 --- a/tests/manual/gestures/graphicsview/imageitem.h +++ b/tests/manual/gestures/graphicsview/imageitem.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/gestures/graphicsview/main.cpp b/tests/manual/gestures/graphicsview/main.cpp index 952b495b76..f46d7139d8 100644 --- a/tests/manual/gestures/graphicsview/main.cpp +++ b/tests/manual/gestures/graphicsview/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/gestures/graphicsview/mousepangesturerecognizer.cpp b/tests/manual/gestures/graphicsview/mousepangesturerecognizer.cpp index 44b6794d87..778ba78a10 100644 --- a/tests/manual/gestures/graphicsview/mousepangesturerecognizer.cpp +++ b/tests/manual/gestures/graphicsview/mousepangesturerecognizer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/gestures/graphicsview/mousepangesturerecognizer.h b/tests/manual/gestures/graphicsview/mousepangesturerecognizer.h index e815a2d6a8..0e2684a285 100644 --- a/tests/manual/gestures/graphicsview/mousepangesturerecognizer.h +++ b/tests/manual/gestures/graphicsview/mousepangesturerecognizer.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/gestures/scrollarea/main.cpp b/tests/manual/gestures/scrollarea/main.cpp index 7b2924c079..ec5176600e 100644 --- a/tests/manual/gestures/scrollarea/main.cpp +++ b/tests/manual/gestures/scrollarea/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/gestures/scrollarea/mousepangesturerecognizer.cpp b/tests/manual/gestures/scrollarea/mousepangesturerecognizer.cpp index c9c5d41c08..8231fe0e74 100644 --- a/tests/manual/gestures/scrollarea/mousepangesturerecognizer.cpp +++ b/tests/manual/gestures/scrollarea/mousepangesturerecognizer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/gestures/scrollarea/mousepangesturerecognizer.h b/tests/manual/gestures/scrollarea/mousepangesturerecognizer.h index e815a2d6a8..0e2684a285 100644 --- a/tests/manual/gestures/scrollarea/mousepangesturerecognizer.h +++ b/tests/manual/gestures/scrollarea/mousepangesturerecognizer.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/inputmethodhints/inputmethodhints.cpp b/tests/manual/inputmethodhints/inputmethodhints.cpp index f302c36c43..1754a3cd26 100644 --- a/tests/manual/inputmethodhints/inputmethodhints.cpp +++ b/tests/manual/inputmethodhints/inputmethodhints.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/inputmethodhints/inputmethodhints.h b/tests/manual/inputmethodhints/inputmethodhints.h index 839d5386af..6e2d934204 100644 --- a/tests/manual/inputmethodhints/inputmethodhints.h +++ b/tests/manual/inputmethodhints/inputmethodhints.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/inputmethodhints/main.cpp b/tests/manual/inputmethodhints/main.cpp index f0807dec6f..a276cde1f2 100644 --- a/tests/manual/inputmethodhints/main.cpp +++ b/tests/manual/inputmethodhints/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/keypadnavigation/main.cpp b/tests/manual/keypadnavigation/main.cpp index f8debafe56..2edc67a426 100644 --- a/tests/manual/keypadnavigation/main.cpp +++ b/tests/manual/keypadnavigation/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/lance/interactivewidget.cpp b/tests/manual/lance/interactivewidget.cpp index f7bc67ea0b..fb480b1d0b 100644 --- a/tests/manual/lance/interactivewidget.cpp +++ b/tests/manual/lance/interactivewidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/lance/interactivewidget.h b/tests/manual/lance/interactivewidget.h index f5e91c87dc..ac46a0ec36 100644 --- a/tests/manual/lance/interactivewidget.h +++ b/tests/manual/lance/interactivewidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/lance/main.cpp b/tests/manual/lance/main.cpp index f63ac7a367..7ff8b1cf36 100644 --- a/tests/manual/lance/main.cpp +++ b/tests/manual/lance/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/lance/widgets.h b/tests/manual/lance/widgets.h index 033067d846..28ed34f653 100644 --- a/tests/manual/lance/widgets.h +++ b/tests/manual/lance/widgets.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/mkspecs/test.sh b/tests/manual/mkspecs/test.sh index 84f5b93852..d384df2098 100755 --- a/tests/manual/mkspecs/test.sh +++ b/tests/manual/mkspecs/test.sh @@ -1,7 +1,7 @@ #!/bin/bash ############################################################################# ## -## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ## All rights reserved. ## Contact: Nokia Corporation (qt-info@nokia.com) ## diff --git a/tests/manual/network_remote_stresstest/tst_network_remote_stresstest.cpp b/tests/manual/network_remote_stresstest/tst_network_remote_stresstest.cpp index 77589d350e..06e211738e 100644 --- a/tests/manual/network_remote_stresstest/tst_network_remote_stresstest.cpp +++ b/tests/manual/network_remote_stresstest/tst_network_remote_stresstest.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/network_stresstest/minihttpserver.cpp b/tests/manual/network_stresstest/minihttpserver.cpp index 8318f93b5b..d024fe0f06 100644 --- a/tests/manual/network_stresstest/minihttpserver.cpp +++ b/tests/manual/network_stresstest/minihttpserver.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/network_stresstest/minihttpserver.h b/tests/manual/network_stresstest/minihttpserver.h index 0499c3b404..a622159ce6 100644 --- a/tests/manual/network_stresstest/minihttpserver.h +++ b/tests/manual/network_stresstest/minihttpserver.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/network_stresstest/tst_network_stresstest.cpp b/tests/manual/network_stresstest/tst_network_stresstest.cpp index 8337118bbf..debae981ab 100644 --- a/tests/manual/network_stresstest/tst_network_stresstest.cpp +++ b/tests/manual/network_stresstest/tst_network_stresstest.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qcursor/allcursors/main.cpp b/tests/manual/qcursor/allcursors/main.cpp index c074f4c141..1b0d9a55bd 100644 --- a/tests/manual/qcursor/allcursors/main.cpp +++ b/tests/manual/qcursor/allcursors/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qcursor/allcursors/mainwindow.cpp b/tests/manual/qcursor/allcursors/mainwindow.cpp index 855229f3dc..8807f6f1d0 100644 --- a/tests/manual/qcursor/allcursors/mainwindow.cpp +++ b/tests/manual/qcursor/allcursors/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qcursor/allcursors/mainwindow.h b/tests/manual/qcursor/allcursors/mainwindow.h index df314ef3e6..d9dc3bcb78 100644 --- a/tests/manual/qcursor/allcursors/mainwindow.h +++ b/tests/manual/qcursor/allcursors/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qcursor/grab_override/main.cpp b/tests/manual/qcursor/grab_override/main.cpp index c074f4c141..1b0d9a55bd 100644 --- a/tests/manual/qcursor/grab_override/main.cpp +++ b/tests/manual/qcursor/grab_override/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qcursor/grab_override/mainwindow.cpp b/tests/manual/qcursor/grab_override/mainwindow.cpp index f1082d4d03..d6c671a642 100644 --- a/tests/manual/qcursor/grab_override/mainwindow.cpp +++ b/tests/manual/qcursor/grab_override/mainwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qcursor/grab_override/mainwindow.h b/tests/manual/qcursor/grab_override/mainwindow.h index 5c565a3cc6..e5a2042bb0 100644 --- a/tests/manual/qcursor/grab_override/mainwindow.h +++ b/tests/manual/qcursor/grab_override/mainwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qdesktopwidget/main.cpp b/tests/manual/qdesktopwidget/main.cpp index f42098f344..4982bd8321 100644 --- a/tests/manual/qdesktopwidget/main.cpp +++ b/tests/manual/qdesktopwidget/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qgraphicsitemgroup/customitem.cpp b/tests/manual/qgraphicsitemgroup/customitem.cpp index 25b99b3d1c..2fb14d638a 100644 --- a/tests/manual/qgraphicsitemgroup/customitem.cpp +++ b/tests/manual/qgraphicsitemgroup/customitem.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qgraphicsitemgroup/customitem.h b/tests/manual/qgraphicsitemgroup/customitem.h index e7ac8c2b45..c8416cf952 100644 --- a/tests/manual/qgraphicsitemgroup/customitem.h +++ b/tests/manual/qgraphicsitemgroup/customitem.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qgraphicsitemgroup/main.cpp b/tests/manual/qgraphicsitemgroup/main.cpp index 5c12a0cc51..c3310637b9 100644 --- a/tests/manual/qgraphicsitemgroup/main.cpp +++ b/tests/manual/qgraphicsitemgroup/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qgraphicsitemgroup/widget.cpp b/tests/manual/qgraphicsitemgroup/widget.cpp index 2788369517..1ff9e41c6a 100644 --- a/tests/manual/qgraphicsitemgroup/widget.cpp +++ b/tests/manual/qgraphicsitemgroup/widget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qgraphicsitemgroup/widget.h b/tests/manual/qgraphicsitemgroup/widget.h index 78468afa50..4e0489722f 100644 --- a/tests/manual/qgraphicsitemgroup/widget.h +++ b/tests/manual/qgraphicsitemgroup/widget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qgraphicslayout/flicker/main.cpp b/tests/manual/qgraphicslayout/flicker/main.cpp index c0fac45142..db9e53e302 100644 --- a/tests/manual/qgraphicslayout/flicker/main.cpp +++ b/tests/manual/qgraphicslayout/flicker/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qgraphicslayout/flicker/window.cpp b/tests/manual/qgraphicslayout/flicker/window.cpp index 63dfa380d7..01a1182013 100644 --- a/tests/manual/qgraphicslayout/flicker/window.cpp +++ b/tests/manual/qgraphicslayout/flicker/window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qgraphicslayout/flicker/window.h b/tests/manual/qgraphicslayout/flicker/window.h index 26a8f2ab5e..872a7469d8 100644 --- a/tests/manual/qgraphicslayout/flicker/window.h +++ b/tests/manual/qgraphicslayout/flicker/window.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qhttpnetworkconnection/main.cpp b/tests/manual/qhttpnetworkconnection/main.cpp index 502efcab9a..9998577997 100644 --- a/tests/manual/qhttpnetworkconnection/main.cpp +++ b/tests/manual/qhttpnetworkconnection/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qimagereader/main.cpp b/tests/manual/qimagereader/main.cpp index 90f3a3ec51..bc1772bbcc 100644 --- a/tests/manual/qimagereader/main.cpp +++ b/tests/manual/qimagereader/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qlocale/calendar.cpp b/tests/manual/qlocale/calendar.cpp index bd4756e998..8fadf68ea7 100644 --- a/tests/manual/qlocale/calendar.cpp +++ b/tests/manual/qlocale/calendar.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qlocale/calendar.h b/tests/manual/qlocale/calendar.h index b5bb3c9268..b03102f68d 100644 --- a/tests/manual/qlocale/calendar.h +++ b/tests/manual/qlocale/calendar.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qlocale/currency.cpp b/tests/manual/qlocale/currency.cpp index 4ef157cba8..f5d69de6c2 100644 --- a/tests/manual/qlocale/currency.cpp +++ b/tests/manual/qlocale/currency.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qlocale/currency.h b/tests/manual/qlocale/currency.h index 3a1255343c..fbee336da1 100644 --- a/tests/manual/qlocale/currency.h +++ b/tests/manual/qlocale/currency.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qlocale/dateformats.cpp b/tests/manual/qlocale/dateformats.cpp index 25b3e7a954..e23a2b8e52 100644 --- a/tests/manual/qlocale/dateformats.cpp +++ b/tests/manual/qlocale/dateformats.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qlocale/dateformats.h b/tests/manual/qlocale/dateformats.h index f05ad2a27f..67b2ed4a02 100644 --- a/tests/manual/qlocale/dateformats.h +++ b/tests/manual/qlocale/dateformats.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qlocale/info.cpp b/tests/manual/qlocale/info.cpp index a4f6adfce0..2df46a22e3 100644 --- a/tests/manual/qlocale/info.cpp +++ b/tests/manual/qlocale/info.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qlocale/info.h b/tests/manual/qlocale/info.h index b23ecf5a47..1fd2b753df 100644 --- a/tests/manual/qlocale/info.h +++ b/tests/manual/qlocale/info.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qlocale/languages.cpp b/tests/manual/qlocale/languages.cpp index 18d72d7dd9..189e6976b1 100644 --- a/tests/manual/qlocale/languages.cpp +++ b/tests/manual/qlocale/languages.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qlocale/languages.h b/tests/manual/qlocale/languages.h index 18e503f648..b365b7e4e3 100644 --- a/tests/manual/qlocale/languages.h +++ b/tests/manual/qlocale/languages.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qlocale/main.cpp b/tests/manual/qlocale/main.cpp index b14a44f7c6..e37113fdc2 100644 --- a/tests/manual/qlocale/main.cpp +++ b/tests/manual/qlocale/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qlocale/miscellaneous.cpp b/tests/manual/qlocale/miscellaneous.cpp index 89c80dc65a..fdf4d27f8e 100644 --- a/tests/manual/qlocale/miscellaneous.cpp +++ b/tests/manual/qlocale/miscellaneous.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qlocale/miscellaneous.h b/tests/manual/qlocale/miscellaneous.h index 3b635b802f..42e4e4f982 100644 --- a/tests/manual/qlocale/miscellaneous.h +++ b/tests/manual/qlocale/miscellaneous.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qlocale/numberformats.cpp b/tests/manual/qlocale/numberformats.cpp index 7b5fce4082..99664f7e73 100644 --- a/tests/manual/qlocale/numberformats.cpp +++ b/tests/manual/qlocale/numberformats.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qlocale/numberformats.h b/tests/manual/qlocale/numberformats.h index 4a3ab36506..79dcac0dc9 100644 --- a/tests/manual/qlocale/numberformats.h +++ b/tests/manual/qlocale/numberformats.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qlocale/window.cpp b/tests/manual/qlocale/window.cpp index 775023e5df..bb6aea3114 100644 --- a/tests/manual/qlocale/window.cpp +++ b/tests/manual/qlocale/window.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qlocale/window.h b/tests/manual/qlocale/window.h index aee728fd9c..402cdd6259 100644 --- a/tests/manual/qlocale/window.h +++ b/tests/manual/qlocale/window.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qnetworkreply/main.cpp b/tests/manual/qnetworkreply/main.cpp index 8033251d06..bade33712e 100644 --- a/tests/manual/qnetworkreply/main.cpp +++ b/tests/manual/qnetworkreply/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qssloptions/main.cpp b/tests/manual/qssloptions/main.cpp index 21b5dab1d4..0b7b6b57bc 100644 --- a/tests/manual/qssloptions/main.cpp +++ b/tests/manual/qssloptions/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qtabletevent/device_information/main.cpp b/tests/manual/qtabletevent/device_information/main.cpp index 92e7ea4cd8..a8f42ab0a7 100644 --- a/tests/manual/qtabletevent/device_information/main.cpp +++ b/tests/manual/qtabletevent/device_information/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qtabletevent/device_information/tabletwidget.cpp b/tests/manual/qtabletevent/device_information/tabletwidget.cpp index 8b1eaab8e3..33b9fb9b0a 100644 --- a/tests/manual/qtabletevent/device_information/tabletwidget.cpp +++ b/tests/manual/qtabletevent/device_information/tabletwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qtabletevent/device_information/tabletwidget.h b/tests/manual/qtabletevent/device_information/tabletwidget.h index 0e93c41752..e1a9860f28 100644 --- a/tests/manual/qtabletevent/device_information/tabletwidget.h +++ b/tests/manual/qtabletevent/device_information/tabletwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qtabletevent/event_compression/main.cpp b/tests/manual/qtabletevent/event_compression/main.cpp index 324dc17b52..d05f5cc55e 100644 --- a/tests/manual/qtabletevent/event_compression/main.cpp +++ b/tests/manual/qtabletevent/event_compression/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qtabletevent/event_compression/mousestatwidget.cpp b/tests/manual/qtabletevent/event_compression/mousestatwidget.cpp index d04563fac4..d43bc50820 100644 --- a/tests/manual/qtabletevent/event_compression/mousestatwidget.cpp +++ b/tests/manual/qtabletevent/event_compression/mousestatwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qtabletevent/event_compression/mousestatwidget.h b/tests/manual/qtabletevent/event_compression/mousestatwidget.h index 623f39f814..1a71ca44a4 100644 --- a/tests/manual/qtabletevent/event_compression/mousestatwidget.h +++ b/tests/manual/qtabletevent/event_compression/mousestatwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qtabletevent/regular_widgets/main.cpp b/tests/manual/qtabletevent/regular_widgets/main.cpp index 5d589c2cd9..1ecef826ee 100644 --- a/tests/manual/qtabletevent/regular_widgets/main.cpp +++ b/tests/manual/qtabletevent/regular_widgets/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qtbug-8933/main.cpp b/tests/manual/qtbug-8933/main.cpp index 5c12a0cc51..c3310637b9 100644 --- a/tests/manual/qtbug-8933/main.cpp +++ b/tests/manual/qtbug-8933/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qtbug-8933/widget.cpp b/tests/manual/qtbug-8933/widget.cpp index be0a02d05a..6a87857f91 100644 --- a/tests/manual/qtbug-8933/widget.cpp +++ b/tests/manual/qtbug-8933/widget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qtbug-8933/widget.h b/tests/manual/qtbug-8933/widget.h index 5cee97e834..949cd2d11b 100644 --- a/tests/manual/qtbug-8933/widget.h +++ b/tests/manual/qtbug-8933/widget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qtouchevent/main.cpp b/tests/manual/qtouchevent/main.cpp index 105f4a0302..6d5fbca6a6 100644 --- a/tests/manual/qtouchevent/main.cpp +++ b/tests/manual/qtouchevent/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qtouchevent/touchwidget.cpp b/tests/manual/qtouchevent/touchwidget.cpp index 2dedc8bfac..c26ab50f14 100644 --- a/tests/manual/qtouchevent/touchwidget.cpp +++ b/tests/manual/qtouchevent/touchwidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qtouchevent/touchwidget.h b/tests/manual/qtouchevent/touchwidget.h index e3005eccba..61ad0f9a68 100644 --- a/tests/manual/qtouchevent/touchwidget.h +++ b/tests/manual/qtouchevent/touchwidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/qwidget_zorder/main.cpp b/tests/manual/qwidget_zorder/main.cpp index 5bbe3793a1..11e94bada3 100644 --- a/tests/manual/qwidget_zorder/main.cpp +++ b/tests/manual/qwidget_zorder/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/repaint/mainwindow/main.cpp b/tests/manual/repaint/mainwindow/main.cpp index 2cebecca45..5f1020aec6 100644 --- a/tests/manual/repaint/mainwindow/main.cpp +++ b/tests/manual/repaint/mainwindow/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/repaint/scrollarea/main.cpp b/tests/manual/repaint/scrollarea/main.cpp index e64304d2c0..e16866c4d6 100644 --- a/tests/manual/repaint/scrollarea/main.cpp +++ b/tests/manual/repaint/scrollarea/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/repaint/shared/shared.h b/tests/manual/repaint/shared/shared.h index f6a658688a..6cac04ee39 100644 --- a/tests/manual/repaint/shared/shared.h +++ b/tests/manual/repaint/shared/shared.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/repaint/splitter/main.cpp b/tests/manual/repaint/splitter/main.cpp index 8fe1cd2569..a5c329ed82 100644 --- a/tests/manual/repaint/splitter/main.cpp +++ b/tests/manual/repaint/splitter/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/repaint/tableview/main.cpp b/tests/manual/repaint/tableview/main.cpp index 6b88e4c9e4..25ccf5364e 100644 --- a/tests/manual/repaint/tableview/main.cpp +++ b/tests/manual/repaint/tableview/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/repaint/task141091/main.cpp b/tests/manual/repaint/task141091/main.cpp index 5f753f1af1..ac30142ef4 100644 --- a/tests/manual/repaint/task141091/main.cpp +++ b/tests/manual/repaint/task141091/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/repaint/toplevel/main.cpp b/tests/manual/repaint/toplevel/main.cpp index 3a5e813fe8..b5409a2fec 100644 --- a/tests/manual/repaint/toplevel/main.cpp +++ b/tests/manual/repaint/toplevel/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/repaint/widget/main.cpp b/tests/manual/repaint/widget/main.cpp index 300f0df1a4..1564bd2909 100644 --- a/tests/manual/repaint/widget/main.cpp +++ b/tests/manual/repaint/widget/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/textrendering/glyphshaping/main.cpp b/tests/manual/textrendering/glyphshaping/main.cpp index a02373f1c8..e3d061dd85 100644 --- a/tests/manual/textrendering/glyphshaping/main.cpp +++ b/tests/manual/textrendering/glyphshaping/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/textrendering/textperformance/main.cpp b/tests/manual/textrendering/textperformance/main.cpp index 654aecde4a..e4907e5ee1 100644 --- a/tests/manual/textrendering/textperformance/main.cpp +++ b/tests/manual/textrendering/textperformance/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/windowflags/controllerwindow.cpp b/tests/manual/windowflags/controllerwindow.cpp index 2694bb861d..f22ec5ec87 100644 --- a/tests/manual/windowflags/controllerwindow.cpp +++ b/tests/manual/windowflags/controllerwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/windowflags/controllerwindow.h b/tests/manual/windowflags/controllerwindow.h index 2ec91168ee..84c39c9d2b 100644 --- a/tests/manual/windowflags/controllerwindow.h +++ b/tests/manual/windowflags/controllerwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/windowflags/main.cpp b/tests/manual/windowflags/main.cpp index 6bd72b99f6..18d212b88c 100644 --- a/tests/manual/windowflags/main.cpp +++ b/tests/manual/windowflags/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/windowflags/previewwindow.cpp b/tests/manual/windowflags/previewwindow.cpp index 24583220b8..a3e6b49546 100644 --- a/tests/manual/windowflags/previewwindow.cpp +++ b/tests/manual/windowflags/previewwindow.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/manual/windowflags/previewwindow.h b/tests/manual/windowflags/previewwindow.h index b58f589fc7..91e68ea6b5 100644 --- a/tests/manual/windowflags/previewwindow.h +++ b/tests/manual/windowflags/previewwindow.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tests/shared/filesystem.h b/tests/shared/filesystem.h index 14cd3a790b..8832574b54 100644 --- a/tests/shared/filesystem.h +++ b/tests/shared/filesystem.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tools/configure/configure_pch.h b/tools/configure/configure_pch.h index edf7c04dff..8badb40de6 100644 --- a/tools/configure/configure_pch.h +++ b/tools/configure/configure_pch.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp index 92cc2af843..c3ea048a18 100644 --- a/tools/configure/configureapp.cpp +++ b/tools/configure/configureapp.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tools/configure/configureapp.h b/tools/configure/configureapp.h index bae9056d9e..b489bd9daf 100644 --- a/tools/configure/configureapp.h +++ b/tools/configure/configureapp.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tools/configure/environment.cpp b/tools/configure/environment.cpp index 643e90425d..faf1dd3b2d 100644 --- a/tools/configure/environment.cpp +++ b/tools/configure/environment.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tools/configure/environment.h b/tools/configure/environment.h index 9819e19889..4284678f32 100644 --- a/tools/configure/environment.h +++ b/tools/configure/environment.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tools/configure/main.cpp b/tools/configure/main.cpp index bf68ad6b64..a53a676782 100644 --- a/tools/configure/main.cpp +++ b/tools/configure/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tools/configure/tools.cpp b/tools/configure/tools.cpp index e1102d461c..8533eb40ee 100644 --- a/tools/configure/tools.cpp +++ b/tools/configure/tools.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tools/configure/tools.h b/tools/configure/tools.h index 6ab0880217..c4debdc6ef 100644 --- a/tools/configure/tools.h +++ b/tools/configure/tools.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tools/shared/windows/registry.cpp b/tools/shared/windows/registry.cpp index 15622ee815..6398999a7f 100644 --- a/tools/shared/windows/registry.cpp +++ b/tools/shared/windows/registry.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/tools/shared/windows/registry_p.h b/tools/shared/windows/registry_p.h index b19c0cdc46..1104b1cc78 100644 --- a/tools/shared/windows/registry_p.h +++ b/tools/shared/windows/registry_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/accessibilityinspector/accessibilityinspector.cpp b/util/accessibilityinspector/accessibilityinspector.cpp index 88008cd35b..4f157bbdb1 100644 --- a/util/accessibilityinspector/accessibilityinspector.cpp +++ b/util/accessibilityinspector/accessibilityinspector.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** - ** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). + ** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/accessibilityinspector/accessibilityinspector.h b/util/accessibilityinspector/accessibilityinspector.h index 0ec25c94e0..4174ace278 100644 --- a/util/accessibilityinspector/accessibilityinspector.h +++ b/util/accessibilityinspector/accessibilityinspector.h @@ -1,6 +1,6 @@ /**************************************************************************** ** - ** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). + ** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/accessibilityinspector/accessibilityscenemanager.cpp b/util/accessibilityinspector/accessibilityscenemanager.cpp index 9387aa625d..0772468bfc 100644 --- a/util/accessibilityinspector/accessibilityscenemanager.cpp +++ b/util/accessibilityinspector/accessibilityscenemanager.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** - ** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). + ** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/accessibilityinspector/accessibilityscenemanager.h b/util/accessibilityinspector/accessibilityscenemanager.h index 6f52049d48..e3e37f2f76 100644 --- a/util/accessibilityinspector/accessibilityscenemanager.h +++ b/util/accessibilityinspector/accessibilityscenemanager.h @@ -1,6 +1,6 @@ /**************************************************************************** ** - ** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). + ** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/accessibilityinspector/main.cpp b/util/accessibilityinspector/main.cpp index 215c0a9335..e95aa37ba7 100644 --- a/util/accessibilityinspector/main.cpp +++ b/util/accessibilityinspector/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** - ** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). + ** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/accessibilityinspector/optionswidget.cpp b/util/accessibilityinspector/optionswidget.cpp index 165d89151a..2c6dd6635a 100644 --- a/util/accessibilityinspector/optionswidget.cpp +++ b/util/accessibilityinspector/optionswidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** - ** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). + ** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/accessibilityinspector/optionswidget.h b/util/accessibilityinspector/optionswidget.h index 2cf8c6b84d..efbe949414 100644 --- a/util/accessibilityinspector/optionswidget.h +++ b/util/accessibilityinspector/optionswidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** - ** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). + ** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/accessibilityinspector/screenreader.cpp b/util/accessibilityinspector/screenreader.cpp index 5560743bc6..7593948b63 100644 --- a/util/accessibilityinspector/screenreader.cpp +++ b/util/accessibilityinspector/screenreader.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** - ** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). + ** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/accessibilityinspector/screenreader.h b/util/accessibilityinspector/screenreader.h index b3ba91d284..6b2f354239 100644 --- a/util/accessibilityinspector/screenreader.h +++ b/util/accessibilityinspector/screenreader.h @@ -1,6 +1,6 @@ /**************************************************************************** ** - ** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). + ** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/accessibilityinspector/screenreader_mac.mm b/util/accessibilityinspector/screenreader_mac.mm index 063cecd83b..59fc868420 100644 --- a/util/accessibilityinspector/screenreader_mac.mm +++ b/util/accessibilityinspector/screenreader_mac.mm @@ -1,6 +1,6 @@ /**************************************************************************** ** - ** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). + ** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/corelib/qurl-generateTLDs/main.cpp b/util/corelib/qurl-generateTLDs/main.cpp index 861546ce9e..01f0d700f2 100644 --- a/util/corelib/qurl-generateTLDs/main.cpp +++ b/util/corelib/qurl-generateTLDs/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/lexgen/configfile.cpp b/util/lexgen/configfile.cpp index f64a9987c1..623b5f73d9 100644 --- a/util/lexgen/configfile.cpp +++ b/util/lexgen/configfile.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/lexgen/configfile.h b/util/lexgen/configfile.h index b1ee7aa060..ca614c2eef 100644 --- a/util/lexgen/configfile.h +++ b/util/lexgen/configfile.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/lexgen/generator.cpp b/util/lexgen/generator.cpp index 429266dfbd..36e9febd82 100644 --- a/util/lexgen/generator.cpp +++ b/util/lexgen/generator.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/lexgen/generator.h b/util/lexgen/generator.h index b5b8c72ec8..a41a0f080c 100644 --- a/util/lexgen/generator.h +++ b/util/lexgen/generator.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/lexgen/global.h b/util/lexgen/global.h index e342565a20..a853538692 100644 --- a/util/lexgen/global.h +++ b/util/lexgen/global.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/lexgen/main.cpp b/util/lexgen/main.cpp index bc4d61e611..eb2920241b 100644 --- a/util/lexgen/main.cpp +++ b/util/lexgen/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/lexgen/nfa.cpp b/util/lexgen/nfa.cpp index 34d9ecb943..d64a540abc 100644 --- a/util/lexgen/nfa.cpp +++ b/util/lexgen/nfa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/lexgen/nfa.h b/util/lexgen/nfa.h index 7a2e1ac995..43ec5d1061 100644 --- a/util/lexgen/nfa.h +++ b/util/lexgen/nfa.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/lexgen/re2nfa.cpp b/util/lexgen/re2nfa.cpp index 596476f121..c09e4de030 100644 --- a/util/lexgen/re2nfa.cpp +++ b/util/lexgen/re2nfa.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/lexgen/re2nfa.h b/util/lexgen/re2nfa.h index a10ce3d525..5af6e0751a 100644 --- a/util/lexgen/re2nfa.h +++ b/util/lexgen/re2nfa.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/lexgen/tests/tst_lexgen.cpp b/util/lexgen/tests/tst_lexgen.cpp index 70f5ab546d..1f50fd1f08 100644 --- a/util/lexgen/tests/tst_lexgen.cpp +++ b/util/lexgen/tests/tst_lexgen.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/lexgen/tokenizer.cpp b/util/lexgen/tokenizer.cpp index 11e112f982..2848a7de8d 100644 --- a/util/lexgen/tokenizer.cpp +++ b/util/lexgen/tokenizer.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/local_database/cldr2qlocalexml.py b/util/local_database/cldr2qlocalexml.py index 41418e0e95..d046fb5dfa 100755 --- a/util/local_database/cldr2qlocalexml.py +++ b/util/local_database/cldr2qlocalexml.py @@ -1,7 +1,7 @@ #!/usr/bin/env python ############################################################################# ## -## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ## All rights reserved. ## Contact: Nokia Corporation (qt-info@nokia.com) ## diff --git a/util/local_database/dateconverter.py b/util/local_database/dateconverter.py index 9955032f8d..9ca0b3deee 100755 --- a/util/local_database/dateconverter.py +++ b/util/local_database/dateconverter.py @@ -1,7 +1,7 @@ #!/usr/bin/env python ############################################################################# ## -## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ## All rights reserved. ## Contact: Nokia Corporation (qt-info@nokia.com) ## diff --git a/util/local_database/enumdata.py b/util/local_database/enumdata.py index 7171d31100..b6027ac996 100644 --- a/util/local_database/enumdata.py +++ b/util/local_database/enumdata.py @@ -1,7 +1,7 @@ #!/usr/bin/env python ############################################################################# ## -## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ## All rights reserved. ## Contact: Nokia Corporation (qt-info@nokia.com) ## diff --git a/util/local_database/qlocalexml2cpp.py b/util/local_database/qlocalexml2cpp.py index ced5fcc783..38cdc7663e 100755 --- a/util/local_database/qlocalexml2cpp.py +++ b/util/local_database/qlocalexml2cpp.py @@ -1,7 +1,7 @@ #!/usr/bin/env python ############################################################################# ## -## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ## All rights reserved. ## Contact: Nokia Corporation (qt-info@nokia.com) ## diff --git a/util/local_database/testlocales/localemodel.cpp b/util/local_database/testlocales/localemodel.cpp index 0a1953bbd0..902729b794 100644 --- a/util/local_database/testlocales/localemodel.cpp +++ b/util/local_database/testlocales/localemodel.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/local_database/testlocales/localemodel.h b/util/local_database/testlocales/localemodel.h index 941d0f85d3..fafea8164f 100644 --- a/util/local_database/testlocales/localemodel.h +++ b/util/local_database/testlocales/localemodel.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/local_database/testlocales/localewidget.cpp b/util/local_database/testlocales/localewidget.cpp index 7145f53562..43b0c22f8d 100644 --- a/util/local_database/testlocales/localewidget.cpp +++ b/util/local_database/testlocales/localewidget.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/local_database/testlocales/localewidget.h b/util/local_database/testlocales/localewidget.h index 78e8caee12..5c31f49e1d 100644 --- a/util/local_database/testlocales/localewidget.h +++ b/util/local_database/testlocales/localewidget.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/local_database/testlocales/main.cpp b/util/local_database/testlocales/main.cpp index 8f749bd9af..f5ba360256 100644 --- a/util/local_database/testlocales/main.cpp +++ b/util/local_database/testlocales/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/local_database/xpathlite.py b/util/local_database/xpathlite.py index 73243850e9..68acf83d28 100644 --- a/util/local_database/xpathlite.py +++ b/util/local_database/xpathlite.py @@ -1,7 +1,7 @@ #!/usr/bin/env python ############################################################################# ## -## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ## All rights reserved. ## Contact: Nokia Corporation (qt-info@nokia.com) ## diff --git a/util/plugintest/main.cpp b/util/plugintest/main.cpp index 445131e210..9f440694e6 100644 --- a/util/plugintest/main.cpp +++ b/util/plugintest/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/s60pixelmetrics/bld.inf b/util/s60pixelmetrics/bld.inf index 6b9f063ad1..0bccc8aa2d 100644 --- a/util/s60pixelmetrics/bld.inf +++ b/util/s60pixelmetrics/bld.inf @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/s60pixelmetrics/pixel_metrics.cpp b/util/s60pixelmetrics/pixel_metrics.cpp index 67e532e2f6..22c04d1ed9 100644 --- a/util/s60pixelmetrics/pixel_metrics.cpp +++ b/util/s60pixelmetrics/pixel_metrics.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/s60pixelmetrics/pixel_metrics.h b/util/s60pixelmetrics/pixel_metrics.h index 663d740101..0137e4f403 100644 --- a/util/s60pixelmetrics/pixel_metrics.h +++ b/util/s60pixelmetrics/pixel_metrics.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/s60pixelmetrics/pm_mapper.hrh b/util/s60pixelmetrics/pm_mapper.hrh index aa7ac8466b..eebc245b08 100644 --- a/util/s60pixelmetrics/pm_mapper.hrh +++ b/util/s60pixelmetrics/pm_mapper.hrh @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/s60pixelmetrics/pm_mapper.mmp b/util/s60pixelmetrics/pm_mapper.mmp index 79b7af66eb..1ef31cdaf2 100644 --- a/util/s60pixelmetrics/pm_mapper.mmp +++ b/util/s60pixelmetrics/pm_mapper.mmp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/s60pixelmetrics/pm_mapper.pkg b/util/s60pixelmetrics/pm_mapper.pkg index f5a2a9ba74..97a689ed70 100644 --- a/util/s60pixelmetrics/pm_mapper.pkg +++ b/util/s60pixelmetrics/pm_mapper.pkg @@ -5,7 +5,7 @@ ; SIS creation. ; Version : ; -; Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +; Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ; This material, including documentation and any related ; computer programs, is protected by copyright controlled by ; Nokia Corporation. All rights are reserved. Copying, diff --git a/util/s60pixelmetrics/pm_mapper.rss b/util/s60pixelmetrics/pm_mapper.rss index fb679d0ab4..4ee8935933 100644 --- a/util/s60pixelmetrics/pm_mapper.rss +++ b/util/s60pixelmetrics/pm_mapper.rss @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/s60pixelmetrics/pm_mapper_reg.rss b/util/s60pixelmetrics/pm_mapper_reg.rss index 615dcfce43..7e9784cbf9 100644 --- a/util/s60pixelmetrics/pm_mapper_reg.rss +++ b/util/s60pixelmetrics/pm_mapper_reg.rss @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/s60pixelmetrics/pm_mapperapp.cpp b/util/s60pixelmetrics/pm_mapperapp.cpp index 51210a4b09..7b8a4bd0b6 100644 --- a/util/s60pixelmetrics/pm_mapperapp.cpp +++ b/util/s60pixelmetrics/pm_mapperapp.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/s60pixelmetrics/pm_mapperapp.h b/util/s60pixelmetrics/pm_mapperapp.h index b55db77f4e..0f17d67d38 100644 --- a/util/s60pixelmetrics/pm_mapperapp.h +++ b/util/s60pixelmetrics/pm_mapperapp.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/s60pixelmetrics/pm_mapperview.cpp b/util/s60pixelmetrics/pm_mapperview.cpp index 0f9cebd702..5d805fb5bc 100644 --- a/util/s60pixelmetrics/pm_mapperview.cpp +++ b/util/s60pixelmetrics/pm_mapperview.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/s60pixelmetrics/pm_mapperview.h b/util/s60pixelmetrics/pm_mapperview.h index 88ca04816d..b0ebb2bd15 100644 --- a/util/s60pixelmetrics/pm_mapperview.h +++ b/util/s60pixelmetrics/pm_mapperview.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/s60theme/main.cpp b/util/s60theme/main.cpp index d39d0b1769..702b36731b 100644 --- a/util/s60theme/main.cpp +++ b/util/s60theme/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/s60theme/s60themeconvert.cpp b/util/s60theme/s60themeconvert.cpp index 99f41c2a7b..b7c103696f 100644 --- a/util/s60theme/s60themeconvert.cpp +++ b/util/s60theme/s60themeconvert.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/s60theme/s60themeconvert.h b/util/s60theme/s60themeconvert.h index 40d9c44064..8f855c1efd 100644 --- a/util/s60theme/s60themeconvert.h +++ b/util/s60theme/s60themeconvert.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/scripts/make_qfeatures_dot_h b/util/scripts/make_qfeatures_dot_h index 63cfc5348f..e15590b76a 100755 --- a/util/scripts/make_qfeatures_dot_h +++ b/util/scripts/make_qfeatures_dot_h @@ -1,7 +1,7 @@ #!/usr/bin/perl ############################################################################# ## -## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ## All rights reserved. ## Contact: Nokia Corporation (qt-info@nokia.com) ## @@ -132,7 +132,7 @@ open OUT, ">$qtbase/src/corelib/global/qfeatures.h" print OUT '/**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/unicode/codecs/big5/main.cpp b/util/unicode/codecs/big5/main.cpp index f056f00c6a..49b7ffb275 100644 --- a/util/unicode/codecs/big5/main.cpp +++ b/util/unicode/codecs/big5/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** diff --git a/util/unicode/main.cpp b/util/unicode/main.cpp index e3727a0629..58a65aa53a 100644 --- a/util/unicode/main.cpp +++ b/util/unicode/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** @@ -2643,7 +2643,7 @@ int main(int, char **) QByteArray header = "/****************************************************************************\n" "**\n" - "** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).\n" + "** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies).\n" "** All rights reserved.\n" "** Contact: Nokia Corporation (qt-info@nokia.com)\n" "**\n" diff --git a/util/unicode/writingSystems.sh b/util/unicode/writingSystems.sh index 45dd914f0e..c4af431bb3 100755 --- a/util/unicode/writingSystems.sh +++ b/util/unicode/writingSystems.sh @@ -1,7 +1,7 @@ #!/bin/sh ############################################################################# ## -## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ## All rights reserved. ## Contact: Nokia Corporation (qt-info@nokia.com) ## diff --git a/util/xkbdatagen/main.cpp b/util/xkbdatagen/main.cpp index 9833546d92..1371378534 100644 --- a/util/xkbdatagen/main.cpp +++ b/util/xkbdatagen/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** @@ -416,7 +416,7 @@ int main(int argc, char **argv) // copyright and stuff printf("/****************************************************************************\n" "**\n" - "** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).\n" + "** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies).\n" "** All rights reserved.\n" "** Contact: Nokia Corporation (qt-info@nokia.com)\n" "**\n" -- cgit v1.2.3 From d8d4cc39629fbd498981f5b78a8412f1cbba2372 Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Wed, 4 Jan 2012 12:22:33 +0100 Subject: Warn when using QBasicTimer::start() incorrectly Previously, QObject::startTimer() would warn when called from QBasicTimer::start() if there was no event dispatcher for the object's thread. QBasicTimer::start() should output a similar warning when there is no event dispatcher for the current thread. Change-Id: I1152f73216c3551c252a7a6995defebc9e1506c8 Reviewed-by: Thiago Macieira Reviewed-by: Robin Burchell --- src/corelib/kernel/qbasictimer.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/corelib/kernel/qbasictimer.cpp b/src/corelib/kernel/qbasictimer.cpp index 5890df392f..617e5e560f 100644 --- a/src/corelib/kernel/qbasictimer.cpp +++ b/src/corelib/kernel/qbasictimer.cpp @@ -116,8 +116,10 @@ QT_BEGIN_NAMESPACE void QBasicTimer::start(int msec, QObject *obj) { QAbstractEventDispatcher *eventDispatcher = QAbstractEventDispatcher::instance(); - if (!eventDispatcher) + if (!eventDispatcher) { + qWarning("QBasicTimer::start: QBasicTimer can only be used with threads started with QThread"); return; + } if (id) { eventDispatcher->unregisterTimer(id); QAbstractEventDispatcherPrivate::releaseTimerId(id); @@ -141,8 +143,10 @@ void QBasicTimer::start(int msec, QObject *obj) void QBasicTimer::start(int msec, Qt::TimerType timerType, QObject *obj) { QAbstractEventDispatcher *eventDispatcher = QAbstractEventDispatcher::instance(); - if (!eventDispatcher) + if (!eventDispatcher) { + qWarning("QBasicTimer::start: QBasicTimer can only be used with threads started with QThread"); return; + } if (id) { eventDispatcher->unregisterTimer(id); QAbstractEventDispatcherPrivate::releaseTimerId(id); -- cgit v1.2.3 From 1d63b9beb976093e728c7fb174923fc60b82d7df Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Wed, 4 Jan 2012 12:25:36 +0100 Subject: Document that QBasicTimer::start(int, QObject*) uses Qt::CoarseTimer Change-Id: I553b33ac7adffb0a4fcdfc14d6e34b4e7a494c4d Reviewed-by: David Faure Reviewed-by: Thiago Macieira Reviewed-by: Robin Burchell --- src/corelib/kernel/qbasictimer.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/corelib/kernel/qbasictimer.cpp b/src/corelib/kernel/qbasictimer.cpp index 617e5e560f..a52152875f 100644 --- a/src/corelib/kernel/qbasictimer.cpp +++ b/src/corelib/kernel/qbasictimer.cpp @@ -106,12 +106,13 @@ QT_BEGIN_NAMESPACE /*! \fn void QBasicTimer::start(int msec, QObject *object) - Starts (or restarts) the timer with a \a msec milliseconds - timeout. + Starts (or restarts) the timer with a \a msec milliseconds timeout. The + timer will be a Qt::CoarseTimer. See Qt::TimerType for information on the + different timer types. The given \a object will receive timer events. - \sa stop() isActive() QObject::timerEvent() + \sa stop() isActive() QObject::timerEvent() Qt::CoarseTimer */ void QBasicTimer::start(int msec, QObject *obj) { -- cgit v1.2.3 From a8495549d05aa6588a333eb2bc79d5cc0eb48376 Mon Sep 17 00:00:00 2001 From: Caroline Chao Date: Tue, 3 Jan 2012 10:26:32 +0100 Subject: CodeCoverage: Remove releaseCoverageTool() function. QLibraryPrivate::release() can be called multiple times and it is not appropriate to unregister and save the executed data for a library there. The library may still be used when it is released and it seems safer to save its data only once and probably when the application ends. Not calling __coveragescanner_unregister_library does not affect the coverage data. Calling __coveragescanner_register_library at load time without calling __coveragescanner_unregister_library means the plugin will stay loaded until the application ends. Removing the call to releaseCoverageTool() is so acceptable since the data will be saved when the application exits. Task-number: QTQAINFRA-416. Change-Id: I3135d2e203ecacfeff4a5b8ffdcd4d62fbc1db33 Reviewed-by: Rohan McGovern --- src/corelib/plugin/qlibrary.cpp | 21 --------------------- 1 file changed, 21 deletions(-) diff --git a/src/corelib/plugin/qlibrary.cpp b/src/corelib/plugin/qlibrary.cpp index eeec831d4a..f20abb660d 100644 --- a/src/corelib/plugin/qlibrary.cpp +++ b/src/corelib/plugin/qlibrary.cpp @@ -430,25 +430,6 @@ static void installCoverageTool(QLibraryPrivate *libPrivate) #endif } -static void releaseCoverageTool(QLibraryPrivate *libPrivate) -{ -#ifdef __COVERAGESCANNER__ - /* - __COVERAGESCANNER__ is defined when Qt has been instrumented for code - coverage by TestCocoon. - Here is the code to save the execution data. - See comments about initialization in QLibraryPrivate::load(). - */ - if (libPrivate->pHnd) { - __coveragescanner_save(); - __coveragescanner_clear(); - __coveragescanner_unregister_library(libPrivate->fileName.toLocal8Bit()); - } -#else - Q_UNUSED(libPrivate); -#endif -} - typedef QMap LibraryMap; struct LibraryData { @@ -545,8 +526,6 @@ bool QLibraryPrivate::unload() void QLibraryPrivate::release() { - releaseCoverageTool(this); - QMutexLocker locker(qt_library_mutex()); if (!libraryRefCount.deref()) delete this; -- cgit v1.2.3 From da47d70c32562458db629c73cd02325f190210f4 Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Wed, 4 Jan 2012 11:34:02 +0100 Subject: QCocoaEventDispatcherPrivate members should not be static Keep the Cocoa event dispatcher's private data as normal members of QCocoaEventDispatcherPrivate. This removes the global initializers for the macTimerHash and cocoaModalSessionStask as well. To keep timers working, we pass a pointer to the timer's MacTimerInfo struct to the callback, instead of just the timer id. The MacTimerInfo needs to keep a pointer back to the QCocoaEventDispatcherPrivate to get access to the private's members. Change-Id: Ic3a61e5e1d1d82030735de73cf0b0c70a13c21a4 Reviewed-by: Robin Burchell Reviewed-by: Richard Moe Gustavsen --- .../platforms/cocoa/qcocoaeventdispatcher.h | 42 +++++------ .../platforms/cocoa/qcocoaeventdispatcher.mm | 88 ++++++++++------------ 2 files changed, 60 insertions(+), 70 deletions(-) diff --git a/src/plugins/platforms/cocoa/qcocoaeventdispatcher.h b/src/plugins/platforms/cocoa/qcocoaeventdispatcher.h index c66b4b77f8..e6e8180085 100644 --- a/src/plugins/platforms/cocoa/qcocoaeventdispatcher.h +++ b/src/plugins/platforms/cocoa/qcocoaeventdispatcher.h @@ -130,13 +130,10 @@ public: void wakeUp(); void interrupt(); void flush(); - -private: - //friend void qt_mac_select_timer_callbk(__EventLoopTimer*, void*); - friend class QApplicationPrivate; }; struct MacTimerInfo { + QCocoaEventDispatcherPrivate *d_ptr; int id; int interval; Qt::TimerType timerType; @@ -166,26 +163,27 @@ class QCocoaEventDispatcherPrivate : public QAbstractEventDispatcherPrivate public: QCocoaEventDispatcherPrivate(); - static MacTimerHash macTimerHash; + MacTimerHash macTimerHash; + // Set 'blockSendPostedEvents' to true if you _really_ need // to make sure that qt events are not posted while calling // low-level cocoa functions (like beginModalForWindow). And // use a QBoolBlocker to be safe: - static bool blockSendPostedEvents; + bool blockSendPostedEvents; // The following variables help organizing modal sessions: - static QStack cocoaModalSessionStack; - static bool currentExecIsNSAppRun; - static bool nsAppRunCalledByQt; - static bool cleanupModalSessionsNeeded; - static NSModalSession currentModalSessionCached; - static NSModalSession currentModalSession(); - static void updateChildrenWorksWhenModal(); - static void temporarilyStopAllModalSessions(); - static void beginModalSession(QWindow *widget); - static void endModalSession(QWindow *widget); - static void cancelWaitForMoreEvents(); - static void cleanupModalSessions(); - static void ensureNSAppInitialized(); + QStack cocoaModalSessionStack; + bool currentExecIsNSAppRun; + bool nsAppRunCalledByQt; + bool cleanupModalSessionsNeeded; + NSModalSession currentModalSessionCached; + NSModalSession currentModalSession(); + void updateChildrenWorksWhenModal(); + void temporarilyStopAllModalSessions(); + void beginModalSession(QWindow *widget); + void endModalSession(QWindow *widget); + void cancelWaitForMoreEvents(); + void cleanupModalSessions(); + void ensureNSAppInitialized(); MacSocketHash macSockets; QList queuedUserInputEvents; // NSEvent * @@ -194,15 +192,15 @@ public: CFRunLoopObserverRef firstTimeObserver; QAtomicInt serialNumber; int lastSerial; - static bool interrupt; -private: + bool interrupt; + static Boolean postedEventSourceEqualCallback(const void *info1, const void *info2); static void postedEventsSourcePerformCallback(void *info); static void activateTimer(CFRunLoopTimerRef, void *info); static void waitingObserverCallback(CFRunLoopObserverRef observer, CFRunLoopActivity activity, void *info); static void firstLoopEntry(CFRunLoopObserverRef ref, CFRunLoopActivity activity, void *info); - friend void processPostedEvents(QCocoaEventDispatcherPrivate *const d, const bool blockSendPostedEvents); + void processPostedEvents(); }; class QtCocoaInterruptDispatcher : public QObject diff --git a/src/plugins/platforms/cocoa/qcocoaeventdispatcher.mm b/src/plugins/platforms/cocoa/qcocoaeventdispatcher.mm index 18f0ee1c5e..d46e25499c 100644 --- a/src/plugins/platforms/cocoa/qcocoaeventdispatcher.mm +++ b/src/plugins/platforms/cocoa/qcocoaeventdispatcher.mm @@ -111,20 +111,13 @@ static inline CFRunLoopRef mainRunLoop() /* timer call back */ void QCocoaEventDispatcherPrivate::activateTimer(CFRunLoopTimerRef, void *info) { - int timerID = -#ifdef Q_OS_MAC64 - qint64(info); -#else - int(info); -#endif - - MacTimerInfo *tmr; - tmr = macTimerHash.value(timerID); + MacTimerInfo *tmr = static_cast(info); + QCocoaEventDispatcherPrivate *d = tmr->d_ptr; + int timerID = tmr->id; if (tmr == 0 || tmr->pending == true) return; // Can't send another timer event if it's pending. - - if (blockSendPostedEvents) { + if (d->blockSendPostedEvents) { QCoreApplication::postEvent(tmr->obj, new QTimerEvent(tmr->id)); } else { tmr->pending = true; @@ -132,7 +125,7 @@ void QCocoaEventDispatcherPrivate::activateTimer(CFRunLoopTimerRef, void *info) QCoreApplication::sendSpontaneousEvent(tmr->obj, &e); // Get the value again in case the timer gets unregistered during the sendEvent. - tmr = macTimerHash.value(timerID); + tmr = d->macTimerHash.value(timerID); if (tmr != 0) tmr->pending = false; } @@ -152,6 +145,7 @@ void QCocoaEventDispatcher::registerTimer(int timerId, int interval, Qt::TimerTy #endif MacTimerInfo *t = new MacTimerInfo(); + t->d_ptr = d_func(); t->id = timerId; t->interval = interval; t->timerType = timerType; @@ -162,8 +156,8 @@ void QCocoaEventDispatcher::registerTimer(int timerId, int interval, Qt::TimerTy CFAbsoluteTime fireDate = CFAbsoluteTimeGetCurrent(); CFTimeInterval cfinterval = qMax(CFTimeInterval(interval) / 1000, 0.0000001); fireDate += cfinterval; - QCocoaEventDispatcherPrivate::macTimerHash.insert(timerId, t); - CFRunLoopTimerContext info = { 0, (void *)timerId, 0, 0, 0 }; + t->d_ptr->macTimerHash.insert(timerId, t); + CFRunLoopTimerContext info = { 0, (void *)t, 0, 0, 0 }; t->runLoopTimer = CFRunLoopTimerCreate(0, fireDate, cfinterval, 0, 0, QCocoaEventDispatcherPrivate::activateTimer, &info); if (t->runLoopTimer == 0) { @@ -186,7 +180,7 @@ bool QCocoaEventDispatcher::unregisterTimer(int identifier) if (identifier <= 0) return false; // not init'd or invalid timer - MacTimerInfo *timerInfo = QCocoaEventDispatcherPrivate::macTimerHash.take(identifier); + MacTimerInfo *timerInfo = d_func()->macTimerHash.take(identifier); if (timerInfo == 0) return false; @@ -209,8 +203,9 @@ bool QCocoaEventDispatcher::unregisterTimers(QObject *obj) } #endif - MacTimerHash::iterator it = QCocoaEventDispatcherPrivate::macTimerHash.begin(); - while (it != QCocoaEventDispatcherPrivate::macTimerHash.end()) { + Q_D(QCocoaEventDispatcher); + MacTimerHash::iterator it = d->macTimerHash.begin(); + while (it != d->macTimerHash.end()) { MacTimerInfo *timerInfo = it.value(); if (timerInfo->obj != obj) { ++it; @@ -218,7 +213,7 @@ bool QCocoaEventDispatcher::unregisterTimers(QObject *obj) CFRunLoopTimerInvalidate(timerInfo->runLoopTimer); CFRelease(timerInfo->runLoopTimer); delete timerInfo; - it = QCocoaEventDispatcherPrivate::macTimerHash.erase(it); + it = d->macTimerHash.erase(it); } } return true; @@ -234,8 +229,9 @@ QCocoaEventDispatcher::registeredTimers(QObject *object) const QList list; - MacTimerHash::const_iterator it = QCocoaEventDispatcherPrivate::macTimerHash.constBegin(); - while (it != QCocoaEventDispatcherPrivate::macTimerHash.constEnd()) { + Q_D(const QCocoaEventDispatcher); + MacTimerHash::const_iterator it = d->macTimerHash.constBegin(); + while (it != d->macTimerHash.constEnd()) { MacTimerInfo *t = it.value(); if (t->obj == object) list << TimerInfo(t->id, t->interval, t->timerType); @@ -689,16 +685,6 @@ void QCocoaEventDispatcher::wakeUp() /***************************************************************************** QEventDispatcherMac Implementation *****************************************************************************/ -MacTimerHash QCocoaEventDispatcherPrivate::macTimerHash; -bool QCocoaEventDispatcherPrivate::blockSendPostedEvents = false; -bool QCocoaEventDispatcherPrivate::interrupt = false; - - -QStack QCocoaEventDispatcherPrivate::cocoaModalSessionStack; -bool QCocoaEventDispatcherPrivate::currentExecIsNSAppRun = false; -bool QCocoaEventDispatcherPrivate::nsAppRunCalledByQt = false; -bool QCocoaEventDispatcherPrivate::cleanupModalSessionsNeeded = false; -NSModalSession QCocoaEventDispatcherPrivate::currentModalSessionCached = 0; void QCocoaEventDispatcherPrivate::ensureNSAppInitialized() { @@ -896,6 +882,12 @@ void QCocoaEventDispatcherPrivate::endModalSession(QWindow *window) } QCocoaEventDispatcherPrivate::QCocoaEventDispatcherPrivate() + : blockSendPostedEvents(false), + currentExecIsNSAppRun(false), + nsAppRunCalledByQt(false), + cleanupModalSessionsNeeded(false), + currentModalSessionCached(0), + interrupt(false) { } @@ -952,38 +944,38 @@ Boolean QCocoaEventDispatcherPrivate::postedEventSourceEqualCallback(const void return info1 == info2; } -void processPostedEvents(QCocoaEventDispatcherPrivate *const d, const bool blockSendPostedEvents) +void QCocoaEventDispatcherPrivate::processPostedEvents() { if (blockSendPostedEvents) { // We're told to not send posted events (because the event dispatcher // is currently working on setting up the correct session to run). But // we still need to make sure that we don't fall asleep until pending events // are sendt, so we just signal this need, and return: - CFRunLoopSourceSignal(d->postedEventsSource); + CFRunLoopSourceSignal(postedEventsSource); return; } - if (d->cleanupModalSessionsNeeded) - d->cleanupModalSessions(); + if (cleanupModalSessionsNeeded) + cleanupModalSessions(); - if (d->interrupt) { - if (d->currentExecIsNSAppRun) { + if (interrupt) { + if (currentExecIsNSAppRun) { // The event dispatcher has been interrupted. But since // [NSApplication run] is running the event loop, we // delayed stopping it until now (to let cocoa process // pending cocoa events first). - if (d->currentModalSessionCached) - d->temporarilyStopAllModalSessions(); + if (currentModalSessionCached) + temporarilyStopAllModalSessions(); [NSApp stop:NSApp]; - d->cancelWaitForMoreEvents(); + cancelWaitForMoreEvents(); } return; } - int serial = d->serialNumber.load(); - if (!d->threadData->canWait || (serial != d->lastSerial)) { - d->lastSerial = serial; - QWindowSystemInterface::sendWindowSystemEvents(d->q_func(), QEventLoop::AllEvents); + int serial = serialNumber.load(); + if (!threadData->canWait || (serial != lastSerial)) { + lastSerial = serial; + QWindowSystemInterface::sendWindowSystemEvents(q_func(), QEventLoop::AllEvents); } } @@ -1013,12 +1005,12 @@ void QCocoaEventDispatcherPrivate::firstLoopEntry(CFRunLoopObserverRef ref, forEventClass:kInternetEventClass andEventID:kAEGetURL]; */ - processPostedEvents(static_cast(info), blockSendPostedEvents); + static_cast(info)->processPostedEvents(); } void QCocoaEventDispatcherPrivate::postedEventsSourcePerformCallback(void *info) { - processPostedEvents(static_cast(info), blockSendPostedEvents); + static_cast(info)->processPostedEvents(); } void QCocoaEventDispatcherPrivate::cancelWaitForMoreEvents() @@ -1054,8 +1046,8 @@ QCocoaEventDispatcher::~QCocoaEventDispatcher() { Q_D(QCocoaEventDispatcher); //timer cleanup - MacTimerHash::iterator it = QCocoaEventDispatcherPrivate::macTimerHash.begin(); - while (it != QCocoaEventDispatcherPrivate::macTimerHash.end()) { + MacTimerHash::iterator it = d->macTimerHash.begin(); + while (it != d->macTimerHash.end()) { MacTimerInfo *t = it.value(); if (t->runLoopTimer) { CFRunLoopTimerInvalidate(t->runLoopTimer); @@ -1064,7 +1056,7 @@ QCocoaEventDispatcher::~QCocoaEventDispatcher() delete t; ++it; } - QCocoaEventDispatcherPrivate::macTimerHash.clear(); + d->macTimerHash.clear(); // Remove CFSockets from the runloop. for (MacSocketHash::ConstIterator it = d->macSockets.constBegin(); it != d->macSockets.constEnd(); ++it) { -- cgit v1.2.3 From 55a0b33994ff7b292055065065a5cc2fd13b3a55 Mon Sep 17 00:00:00 2001 From: Robin Burchell Date: Thu, 5 Jan 2012 07:34:55 +0100 Subject: Avoid redefining the lastWindowClosed() signal. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This prevents things like the following (from qmlviewer): QMetaObject::indexOfSignal: signal lastWindowClosed() from QGuiApplication redefined in QApplication Change-Id: I4b30235e379aedaa913ea30f05daac7079f285e9 Reviewed-by: Samuel Rødal --- src/widgets/kernel/qapplication.h | 1 - 1 file changed, 1 deletion(-) diff --git a/src/widgets/kernel/qapplication.h b/src/widgets/kernel/qapplication.h index 32706f8b06..ee55f7c33f 100644 --- a/src/widgets/kernel/qapplication.h +++ b/src/widgets/kernel/qapplication.h @@ -242,7 +242,6 @@ public: #endif Q_SIGNALS: - void lastWindowClosed(); void focusChanged(QWidget *old, QWidget *now); #ifndef QT_NO_SESSIONMANAGER void commitDataRequest(QSessionManager &sessionManager); -- cgit v1.2.3 From ad22c0c7cff332a77ea527c21e39490c8917b68e Mon Sep 17 00:00:00 2001 From: Pekka Vuorela Date: Mon, 2 Jan 2012 16:21:48 +0200 Subject: Removed Qt::ImhMultiLine Multi line information does not really work that well as input method hint. Application developer is the one setting value for the hint, and thus would be responsible for always having right value for multi line. Change-Id: I6102be95549f6f6d4da40845f52d5c873cd46a47 Reviewed-by: Joona Petrell Reviewed-by: Lars Knoll --- src/corelib/global/qnamespace.h | 1 - src/corelib/global/qnamespace.qdoc | 1 - src/widgets/widgets/qtextedit.cpp | 1 - 3 files changed, 3 deletions(-) diff --git a/src/corelib/global/qnamespace.h b/src/corelib/global/qnamespace.h index 0aa3f3c632..64c4541798 100644 --- a/src/corelib/global/qnamespace.h +++ b/src/corelib/global/qnamespace.h @@ -1297,7 +1297,6 @@ public: ImhDate = 0x80, ImhTime = 0x100, - ImhMultiLine = 0x200, ImhDigitsOnly = 0x10000, ImhFormattedNumbersOnly = 0x20000, diff --git a/src/corelib/global/qnamespace.qdoc b/src/corelib/global/qnamespace.qdoc index 267c25deb3..a7332417ae 100644 --- a/src/corelib/global/qnamespace.qdoc +++ b/src/corelib/global/qnamespace.qdoc @@ -2429,7 +2429,6 @@ \value ImhDate The text editor functions as a date field. \value ImhTime The text editor functions as a time field. - \value ImhMultiLine The text editor accepts multi-line content. Flags that restrict input (exclusive flags): diff --git a/src/widgets/widgets/qtextedit.cpp b/src/widgets/widgets/qtextedit.cpp index c0a91e9bcd..acd663eb8c 100644 --- a/src/widgets/widgets/qtextedit.cpp +++ b/src/widgets/widgets/qtextedit.cpp @@ -179,7 +179,6 @@ void QTextEditPrivate::init(const QString &html) q->setFocusPolicy(Qt::WheelFocus); q->setAttribute(Qt::WA_KeyCompression); q->setAttribute(Qt::WA_InputMethodEnabled); - q->setInputMethodHints(Qt::ImhMultiLine); #ifndef QT_NO_CURSOR viewport->setCursor(Qt::IBeamCursor); -- cgit v1.2.3 From 8ad583b7f9cd4ab450e636bc2c0626975397aa86 Mon Sep 17 00:00:00 2001 From: Pekka Vuorela Date: Mon, 2 Jan 2012 17:42:00 +0200 Subject: Removed QApplication::setInputContext() Obsoleted by platform input context. Setting a custom QInputContext wouldn't work properly anymore. Change-Id: I966573a82fdd7530544878513a655eae7b3ad67b Reviewed-by: Joona Petrell --- dist/changes-5.0.0 | 4 +- examples/tools/inputpanel/inputpanel.desktop | 11 - examples/tools/inputpanel/inputpanel.pro | 19 - examples/tools/inputpanel/main.cpp | 61 ---- examples/tools/inputpanel/mainform.ui | 76 ---- examples/tools/inputpanel/myinputpanel.cpp | 133 ------- examples/tools/inputpanel/myinputpanel.h | 76 ---- examples/tools/inputpanel/myinputpanelcontext.cpp | 131 ------- examples/tools/inputpanel/myinputpanelcontext.h | 81 ----- examples/tools/inputpanel/myinputpanelform.ui | 398 --------------------- examples/tools/tools.pro | 1 - src/widgets/kernel/qapplication.cpp | 22 +- src/widgets/kernel/qapplication.h | 1 - src/widgets/kernel/qapplication_p.h | 4 + src/widgets/kernel/qapplication_qpa.cpp | 4 +- .../kernel/qapplication/tst_qapplication.cpp | 33 -- tests/auto/widgets/kernel/qwidget/tst_qwidget.cpp | 54 +-- 17 files changed, 32 insertions(+), 1077 deletions(-) delete mode 100644 examples/tools/inputpanel/inputpanel.desktop delete mode 100644 examples/tools/inputpanel/inputpanel.pro delete mode 100644 examples/tools/inputpanel/main.cpp delete mode 100644 examples/tools/inputpanel/mainform.ui delete mode 100644 examples/tools/inputpanel/myinputpanel.cpp delete mode 100644 examples/tools/inputpanel/myinputpanel.h delete mode 100644 examples/tools/inputpanel/myinputpanelcontext.cpp delete mode 100644 examples/tools/inputpanel/myinputpanelcontext.h delete mode 100644 examples/tools/inputpanel/myinputpanelform.ui diff --git a/dist/changes-5.0.0 b/dist/changes-5.0.0 index 71aa52c79f..436b99f612 100644 --- a/dist/changes-5.0.0 +++ b/dist/changes-5.0.0 @@ -191,8 +191,8 @@ QtGui QtWidgets --------- -* QWidget::setInputContext() is removed. Input contexts are now platform - specific. +* QWidget::setInputContext() and QApplication::setInputContext() are removed. + Input contexts are now platform specific. QtNetwork --------- diff --git a/examples/tools/inputpanel/inputpanel.desktop b/examples/tools/inputpanel/inputpanel.desktop deleted file mode 100644 index 3cc9bd078a..0000000000 --- a/examples/tools/inputpanel/inputpanel.desktop +++ /dev/null @@ -1,11 +0,0 @@ -[Desktop Entry] -Encoding=UTF-8 -Version=1.0 -Type=Application -Terminal=false -Name=Input Panel -Exec=/opt/usr/bin/inputpanel -Icon=inputpanel -X-Window-Icon= -X-HildonDesk-ShowInToolbar=true -X-Osso-Type=application/x-executable diff --git a/examples/tools/inputpanel/inputpanel.pro b/examples/tools/inputpanel/inputpanel.pro deleted file mode 100644 index 62e35e9c23..0000000000 --- a/examples/tools/inputpanel/inputpanel.pro +++ /dev/null @@ -1,19 +0,0 @@ -SOURCES += main.cpp \ - myinputpanel.cpp \ - myinputpanelcontext.cpp - -HEADERS += myinputpanel.h \ - myinputpanelcontext.h - -FORMS += mainform.ui \ - myinputpanelform.ui - -# install -target.path = $$[QT_INSTALL_EXAMPLES]/qtbase/tools/inputpanel -sources.files = $$SOURCES $$HEADERS $$RESOURCES $$FORMS inputpanel.pro -sources.path = $$[QT_INSTALL_EXAMPLES]/qtbase/tools/inputpanel -INSTALLS += target sources - -QT += widgets - -simulator: warning(This example might not fully work on Simulator platform) diff --git a/examples/tools/inputpanel/main.cpp b/examples/tools/inputpanel/main.cpp deleted file mode 100644 index 649d87cb15..0000000000 --- a/examples/tools/inputpanel/main.cpp +++ /dev/null @@ -1,61 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include -#include - -//! [main] -#include "myinputpanelcontext.h" -#include "ui_mainform.h" - -int main(int argc, char **argv) -{ - QApplication app(argc, argv); - - MyInputPanelContext *ic = new MyInputPanelContext; - app.setInputContext(ic); - - QWidget widget; - Ui::MainForm form; - form.setupUi(&widget); - widget.show(); - return app.exec(); -} -//! [main] diff --git a/examples/tools/inputpanel/mainform.ui b/examples/tools/inputpanel/mainform.ui deleted file mode 100644 index c16ae31510..0000000000 --- a/examples/tools/inputpanel/mainform.ui +++ /dev/null @@ -1,76 +0,0 @@ - - - MainForm - - - - 0 - 0 - 140 - 200 - - - - Input Panel Example - - - - - - My age: - - - Qt::AlignBottom|Qt::AlignLeading|Qt::AlignLeft - - - lineEdit - - - - - - - - - - My phone number: - - - Qt::AlignBottom|Qt::AlignLeading|Qt::AlignLeft - - - lineEdit_2 - - - - - - - - - - My gender: - - - - - - Male - - - - - - - Female - - - - - - - - - - - diff --git a/examples/tools/inputpanel/myinputpanel.cpp b/examples/tools/inputpanel/myinputpanel.cpp deleted file mode 100644 index f806c97720..0000000000 --- a/examples/tools/inputpanel/myinputpanel.cpp +++ /dev/null @@ -1,133 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "myinputpanel.h" - -//! [0] - -MyInputPanel::MyInputPanel() - : QWidget(0, Qt::Tool | Qt::WindowStaysOnTopHint), - lastFocusedWidget(0) -{ - form.setupUi(this); - - connect(qApp, SIGNAL(focusChanged(QWidget*,QWidget*)), - this, SLOT(saveFocusWidget(QWidget*,QWidget*))); - - signalMapper.setMapping(form.panelButton_1, form.panelButton_1); - signalMapper.setMapping(form.panelButton_2, form.panelButton_2); - signalMapper.setMapping(form.panelButton_3, form.panelButton_3); - signalMapper.setMapping(form.panelButton_4, form.panelButton_4); - signalMapper.setMapping(form.panelButton_5, form.panelButton_5); - signalMapper.setMapping(form.panelButton_6, form.panelButton_6); - signalMapper.setMapping(form.panelButton_7, form.panelButton_7); - signalMapper.setMapping(form.panelButton_8, form.panelButton_8); - signalMapper.setMapping(form.panelButton_9, form.panelButton_9); - signalMapper.setMapping(form.panelButton_star, form.panelButton_star); - signalMapper.setMapping(form.panelButton_0, form.panelButton_0); - signalMapper.setMapping(form.panelButton_hash, form.panelButton_hash); - - connect(form.panelButton_1, SIGNAL(clicked()), - &signalMapper, SLOT(map())); - connect(form.panelButton_2, SIGNAL(clicked()), - &signalMapper, SLOT(map())); - connect(form.panelButton_3, SIGNAL(clicked()), - &signalMapper, SLOT(map())); - connect(form.panelButton_4, SIGNAL(clicked()), - &signalMapper, SLOT(map())); - connect(form.panelButton_5, SIGNAL(clicked()), - &signalMapper, SLOT(map())); - connect(form.panelButton_6, SIGNAL(clicked()), - &signalMapper, SLOT(map())); - connect(form.panelButton_7, SIGNAL(clicked()), - &signalMapper, SLOT(map())); - connect(form.panelButton_8, SIGNAL(clicked()), - &signalMapper, SLOT(map())); - connect(form.panelButton_9, SIGNAL(clicked()), - &signalMapper, SLOT(map())); - connect(form.panelButton_star, SIGNAL(clicked()), - &signalMapper, SLOT(map())); - connect(form.panelButton_0, SIGNAL(clicked()), - &signalMapper, SLOT(map())); - connect(form.panelButton_hash, SIGNAL(clicked()), - &signalMapper, SLOT(map())); - - connect(&signalMapper, SIGNAL(mapped(QWidget*)), - this, SLOT(buttonClicked(QWidget*))); -} - -//! [0] - -bool MyInputPanel::event(QEvent *e) -{ - switch (e->type()) { -//! [1] - case QEvent::WindowActivate: - if (lastFocusedWidget) - lastFocusedWidget->activateWindow(); - break; -//! [1] - default: - break; - } - - return QWidget::event(e); -} - -//! [2] - -void MyInputPanel::saveFocusWidget(QWidget * /*oldFocus*/, QWidget *newFocus) -{ - if (newFocus != 0 && !this->isAncestorOf(newFocus)) { - lastFocusedWidget = newFocus; - } -} - -//! [2] - -//! [3] - -void MyInputPanel::buttonClicked(QWidget *w) -{ - QChar chr = qvariant_cast(w->property("buttonValue")); - emit characterGenerated(chr); -} - -//! [3] diff --git a/examples/tools/inputpanel/myinputpanel.h b/examples/tools/inputpanel/myinputpanel.h deleted file mode 100644 index 30d0ae6ab7..0000000000 --- a/examples/tools/inputpanel/myinputpanel.h +++ /dev/null @@ -1,76 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef MYINPUTPANEL_H -#define MYINPUTPANEL_H - -#include -#include - -#include "ui_myinputpanelform.h" - -//! [0] - -class MyInputPanel : public QWidget -{ - Q_OBJECT - -public: - MyInputPanel(); - -signals: - void characterGenerated(QChar character); - -protected: - bool event(QEvent *e); - -private slots: - void saveFocusWidget(QWidget *oldFocus, QWidget *newFocus); - void buttonClicked(QWidget *w); - -private: - Ui::MyInputPanelForm form; - QWidget *lastFocusedWidget; - QSignalMapper signalMapper; -}; - -//! [0] - -#endif // MYINPUTPANEL_H diff --git a/examples/tools/inputpanel/myinputpanelcontext.cpp b/examples/tools/inputpanel/myinputpanelcontext.cpp deleted file mode 100644 index 79e8cc5b3b..0000000000 --- a/examples/tools/inputpanel/myinputpanelcontext.cpp +++ /dev/null @@ -1,131 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include - -#include "myinputpanelcontext.h" - -//! [0] - -MyInputPanelContext::MyInputPanelContext() -{ - inputPanel = new MyInputPanel; - connect(inputPanel, SIGNAL(characterGenerated(QChar)), SLOT(sendCharacter(QChar))); -} - -//! [0] - -MyInputPanelContext::~MyInputPanelContext() -{ - delete inputPanel; -} - -//! [1] - -bool MyInputPanelContext::filterEvent(const QEvent* event) -{ - if (event->type() == QEvent::RequestSoftwareInputPanel) { - updatePosition(); - inputPanel->show(); - return true; - } else if (event->type() == QEvent::CloseSoftwareInputPanel) { - inputPanel->hide(); - return true; - } - return false; -} - -//! [1] - -QString MyInputPanelContext::identifierName() -{ - return "MyInputPanelContext"; -} - -void MyInputPanelContext::reset() -{ -} - -bool MyInputPanelContext::isComposing() const -{ - return false; -} - -QString MyInputPanelContext::language() -{ - return "en_US"; -} - -//! [2] - -void MyInputPanelContext::sendCharacter(QChar character) -{ - QPointer w = focusWidget(); - - if (!w) - return; - - QKeyEvent keyPress(QEvent::KeyPress, character.unicode(), Qt::NoModifier, QString(character)); - QApplication::sendEvent(w, &keyPress); - - if (!w) - return; - - QKeyEvent keyRelease(QEvent::KeyPress, character.unicode(), Qt::NoModifier, QString()); - QApplication::sendEvent(w, &keyRelease); -} - -//! [2] - -//! [3] - -void MyInputPanelContext::updatePosition() -{ - QWidget *widget = focusWidget(); - if (!widget) - return; - - QRect widgetRect = widget->rect(); - QPoint panelPos = QPoint(widgetRect.left(), widgetRect.bottom() + 2); - panelPos = widget->mapToGlobal(panelPos); - inputPanel->move(panelPos); -} - -//! [3] diff --git a/examples/tools/inputpanel/myinputpanelcontext.h b/examples/tools/inputpanel/myinputpanelcontext.h deleted file mode 100644 index c672e10aab..0000000000 --- a/examples/tools/inputpanel/myinputpanelcontext.h +++ /dev/null @@ -1,81 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef MYINPUTPANELCONTEXT_H -#define MYINPUTPANELCONTEXT_H - -#include - -#include "myinputpanel.h" - -class MyInputPanel; - -//! [0] - -class MyInputPanelContext : public QInputContext -{ - Q_OBJECT - -public: - MyInputPanelContext(); - ~MyInputPanelContext(); - - bool filterEvent(const QEvent* event); - - QString identifierName(); - QString language(); - - bool isComposing() const; - - void reset(); - -private slots: - void sendCharacter(QChar character); - -private: - void updatePosition(); - -private: - MyInputPanel *inputPanel; -}; - -//! [0] - -#endif // MYINPUTPANELCONTEXT_H diff --git a/examples/tools/inputpanel/myinputpanelform.ui b/examples/tools/inputpanel/myinputpanelform.ui deleted file mode 100644 index fe78442aff..0000000000 --- a/examples/tools/inputpanel/myinputpanelform.ui +++ /dev/null @@ -1,398 +0,0 @@ - - - MyInputPanelForm - - - - 0 - 0 - 167 - 233 - - - - Input Panel - - - - - - - - - 0 - 0 - - - - - 45 - 40 - - - - Qt::NoFocus - - - 1 - - - - 49 - - - - - - - - - 0 - 0 - - - - - 45 - 40 - - - - Qt::NoFocus - - - 2 - - - - 50 - - - - - - - - - 0 - 0 - - - - - 45 - 40 - - - - Qt::NoFocus - - - 3 - - - - 51 - - - - - - - - - 0 - 0 - - - - - 45 - 40 - - - - Qt::NoFocus - - - 4 - - - - 52 - - - - - - - - - 0 - 0 - - - - - 45 - 40 - - - - Qt::NoFocus - - - 5 - - - - 53 - - - - - - - - - 0 - 0 - - - - - 45 - 40 - - - - Qt::NoFocus - - - 6 - - - - 54 - - - - - - - - - 0 - 0 - - - - - 45 - 40 - - - - Qt::NoFocus - - - 7 - - - - 55 - - - - - - - - - 0 - 0 - - - - - 45 - 40 - - - - Qt::NoFocus - - - 8 - - - - 56 - - - - - - - - - 0 - 0 - - - - - 45 - 40 - - - - Qt::NoFocus - - - 9 - - - - 57 - - - - - - - - - 0 - 0 - - - - - 45 - 40 - - - - Qt::NoFocus - - - * - - - - 42 - - - - - - - - - 0 - 0 - - - - - 45 - 40 - - - - Qt::NoFocus - - - 0 - - - - 48 - - - - - - - - - 0 - 0 - - - - - 45 - 40 - - - - Qt::NoFocus - - - # - - - - 35 - - - - - - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - 8 - - - - Qt::NoFocus - - - Close - - - - - - - - - - - closeButton - clicked() - MyInputPanelForm - hide() - - - 114 - 209 - - - 83 - 116 - - - - - diff --git a/examples/tools/tools.pro b/examples/tools/tools.pro index da86fb5286..d18670f7c9 100644 --- a/examples/tools/tools.pro +++ b/examples/tools/tools.pro @@ -5,7 +5,6 @@ SUBDIRS = codecs \ customcompleter \ echoplugin \ i18n \ - inputpanel \ contiguouscache \ plugandpaintplugins \ plugandpaint \ diff --git a/src/widgets/kernel/qapplication.cpp b/src/widgets/kernel/qapplication.cpp index b9a02fa09c..107319cb4f 100644 --- a/src/widgets/kernel/qapplication.cpp +++ b/src/widgets/kernel/qapplication.cpp @@ -4939,31 +4939,29 @@ int QApplication::keyboardInputInterval() // Input Method support // ************************************************************************ -/*! +/* This function replaces the QInputContext instance used by the application with \a inputContext. Qt takes ownership of the given \a inputContext. - - \sa inputContext() */ -void QApplication::setInputContext(QInputContext *inputContext) +void QApplicationPrivate::setInputContext(QInputContext *newInputContext) { - if (inputContext == QApplicationPrivate::inputContext) + Q_Q(QApplication); + + if (newInputContext == inputContext) return; - if (!inputContext) { - qWarning("QApplication::setInputContext: called with 0 input context"); + if (!newInputContext) { + qWarning("QApplicationPrivate::setInputContext: called with 0 input context"); return; } - delete QApplicationPrivate::inputContext; - QApplicationPrivate::inputContext = inputContext; - QApplicationPrivate::inputContext->setParent(this); + delete inputContext; + inputContext = newInputContext; + inputContext->setParent(q); } /*! Returns the QInputContext instance used by the application. - - \sa setInputContext() */ QInputContext *QApplication::inputContext() const { diff --git a/src/widgets/kernel/qapplication.h b/src/widgets/kernel/qapplication.h index ee55f7c33f..4347aa3521 100644 --- a/src/widgets/kernel/qapplication.h +++ b/src/widgets/kernel/qapplication.h @@ -223,7 +223,6 @@ public: #endif #ifndef QT_NO_IM - void setInputContext(QInputContext *); QInputContext *inputContext() const; #endif diff --git a/src/widgets/kernel/qapplication_p.h b/src/widgets/kernel/qapplication_p.h index aacdf32862..574feba001 100644 --- a/src/widgets/kernel/qapplication_p.h +++ b/src/widgets/kernel/qapplication_p.h @@ -356,6 +356,10 @@ public: QPoint toolTipPos, toolTipGlobalPos, hoverGlobalPos; QPointer toolTipWidget; +#ifndef QT_NO_IM + void setInputContext(QInputContext *); +#endif + static QInputContext *inputContext; static Qt::MouseButtons mouse_buttons; diff --git a/src/widgets/kernel/qapplication_qpa.cpp b/src/widgets/kernel/qapplication_qpa.cpp index 8732a194e8..0bf5e67895 100644 --- a/src/widgets/kernel/qapplication_qpa.cpp +++ b/src/widgets/kernel/qapplication_qpa.cpp @@ -383,7 +383,7 @@ QPlatformNativeInterface *QApplication::platformNativeInterface() return pi->nativeInterface(); } -void qt_init(QApplicationPrivate *, int type) +void qt_init(QApplicationPrivate *priv, int type) { Q_UNUSED(type); @@ -393,7 +393,7 @@ void qt_init(QApplicationPrivate *, int type) qApp->setObjectName(appName); #ifndef QT_NO_QWS_INPUTMETHODS - qApp->setInputContext(new QInputContext(qApp)); + priv->setInputContext(new QInputContext(qApp)); #endif } diff --git a/tests/auto/widgets/kernel/qapplication/tst_qapplication.cpp b/tests/auto/widgets/kernel/qapplication/tst_qapplication.cpp index 10f91895a7..4cf15879cc 100644 --- a/tests/auto/widgets/kernel/qapplication/tst_qapplication.cpp +++ b/tests/auto/widgets/kernel/qapplication/tst_qapplication.cpp @@ -83,7 +83,6 @@ public slots: void cleanup(); private slots: void sendEventsOnProcessEvents(); // this must be the first test - void getSetCheck(); void staticSetup(); void alert(); @@ -175,38 +174,6 @@ void tst_QApplication::sendEventsOnProcessEvents() QVERIFY(spy.recordedEvents.contains(QEvent::User + 1)); } -class MyInputContext : public QInputContext -{ -public: - MyInputContext() : QInputContext() {} - QString identifierName() { return QString("NoName"); } - QString language() { return QString("NoLanguage"); } - void reset() {} - bool isComposing() const { return false; } -}; - -// Testing get/set functions -void tst_QApplication::getSetCheck() -{ - int argc = 0; - QApplication obj1(argc, 0, QApplication::GuiServer); - MyInputContext *var1 = new MyInputContext; - - // QApplication takes ownership, so check for reparenting: - obj1.setInputContext(var1); - QCOMPARE(var1->parent(), static_cast(&obj1)); - - // Test for self-assignment: - obj1.setInputContext(obj1.inputContext()); - QVERIFY(obj1.inputContext()); - QCOMPARE(static_cast(var1), obj1.inputContext()); - - // Resetting the input context to 0 is not allowed: - QTest::ignoreMessage(QtWarningMsg, "QApplication::setInputContext: called with 0 input context"); - obj1.setInputContext(0); - - QCOMPARE(static_cast(var1), obj1.inputContext()); -} class CloseEventTestWindow : public QWidget { diff --git a/tests/auto/widgets/kernel/qwidget/tst_qwidget.cpp b/tests/auto/widgets/kernel/qwidget/tst_qwidget.cpp index d8d9589691..16bb5d345b 100644 --- a/tests/auto/widgets/kernel/qwidget/tst_qwidget.cpp +++ b/tests/auto/widgets/kernel/qwidget/tst_qwidget.cpp @@ -442,16 +442,6 @@ bool tst_QWidget::ensureScreenSize(int width, int height) return (available.width() >= width && available.height() >= height); } -class MyInputContext : public QInputContext -{ -public: - MyInputContext() : QInputContext() {} - QString identifierName() { return QString("NoName"); } - QString language() { return QString("NoLanguage"); } - void reset() {} - bool isComposing() const { return false; } -}; - // Testing get/set functions void tst_QWidget::getSetCheck() { @@ -587,13 +577,6 @@ void tst_QWidget::getSetCheck() obj1.setAcceptDrops(true); QCOMPARE(true, obj1.acceptDrops()); - // QInputContext * QWidget::inputContext() - MyInputContext *var13 = new MyInputContext; - qApp->setInputContext(var13); - QCOMPARE((QInputContext *)0, obj1.inputContext()); // The widget by default doesn't have the WA_InputMethodEnabled attribute - obj1.setAttribute(Qt::WA_InputMethodEnabled); - QCOMPARE(static_cast(var13), obj1.inputContext()); - // bool QWidget::autoFillBackground() // void QWidget::setAutoFillBackground(bool) obj1.setAutoFillBackground(false); @@ -9128,23 +9111,10 @@ void tst_QWidget::openModal_taskQTBUG_5804() delete win; } -class InputContextTester : public QInputContext -{ - Q_OBJECT -public: - QString identifierName() { return QString(); } - bool isComposing() const { return false; } - QString language() { return QString(); } - void reset() { ++resets; } - int resets; -}; - void tst_QWidget::focusProxyAndInputMethods() { - InputContextTester *inputContext = new InputContextTester; QWidget *toplevel = new QWidget(0, Qt::X11BypassWindowManagerHint); toplevel->setAttribute(Qt::WA_InputMethodEnabled, true); - qApp->setInputContext(inputContext); // ownership is transferred QWidget *child = new QWidget(toplevel); child->setFocusProxy(toplevel); @@ -9167,20 +9137,24 @@ void tst_QWidget::focusProxyAndInputMethods() // and that the input method gets the focus proxy passed // as the focus widget instead of the child widget. // otherwise input method queries go to the wrong widget + QInputContext *inputContext = qApp->inputContext(); + if (inputContext) { + QCOMPARE(inputContext->focusWidget(), toplevel); - QCOMPARE(inputContext->focusWidget(), toplevel); + child->setAttribute(Qt::WA_InputMethodEnabled, false); + QVERIFY(!inputContext->focusWidget()); - child->setAttribute(Qt::WA_InputMethodEnabled, false); - QVERIFY(!inputContext->focusWidget()); - - child->setAttribute(Qt::WA_InputMethodEnabled, true); - QCOMPARE(inputContext->focusWidget(), toplevel); + child->setAttribute(Qt::WA_InputMethodEnabled, true); + QCOMPARE(inputContext->focusWidget(), toplevel); - child->setEnabled(false); - QVERIFY(!inputContext->focusWidget()); + child->setEnabled(false); + QVERIFY(!inputContext->focusWidget()); - child->setEnabled(true); - QCOMPARE(inputContext->focusWidget(), toplevel); + child->setEnabled(true); + QCOMPARE(inputContext->focusWidget(), toplevel); + } else { + qDebug() << "No input context set, skipping QInputContext::focusWidget() test"; + } delete toplevel; } -- cgit v1.2.3 From 848f53a268449e6c581737fe2930bc75967e97ce Mon Sep 17 00:00:00 2001 From: Robin Burchell Date: Tue, 3 Jan 2012 21:31:08 +0100 Subject: Remove OS X FSEvents watcher. Per QTBUG-9249, this backend is buggy, and not recommended for use by Apple. Change-Id: I72ce88006a4badbbfdd825717020078778d16a36 Reviewed-by: Sergio Ahumada --- src/corelib/io/io.pri | 3 +- src/corelib/io/qfilesystemwatcher.cpp | 10 +- src/corelib/io/qfilesystemwatcher_fsevents.cpp | 492 ------------------------- src/corelib/io/qfilesystemwatcher_fsevents_p.h | 132 ------- 4 files changed, 2 insertions(+), 635 deletions(-) delete mode 100644 src/corelib/io/qfilesystemwatcher_fsevents.cpp delete mode 100644 src/corelib/io/qfilesystemwatcher_fsevents_p.h diff --git a/src/corelib/io/io.pri b/src/corelib/io/io.pri index 380714ea54..d7eb7109a1 100644 --- a/src/corelib/io/io.pri +++ b/src/corelib/io/io.pri @@ -92,9 +92,8 @@ win32 { io/qfilesystemiterator_unix.cpp \ !nacl:macx-*: { - HEADERS += io/qfilesystemwatcher_fsevents_p.h SOURCES += io/qfilesystemengine_mac.cpp - SOURCES += io/qsettings_mac.cpp io/qfilesystemwatcher_fsevents.cpp + SOURCES += io/qsettings_mac.cpp } macx-*: { SOURCES += io/qstandardpaths_mac.cpp diff --git a/src/corelib/io/qfilesystemwatcher.cpp b/src/corelib/io/qfilesystemwatcher.cpp index 4e9ac9b689..580239d209 100644 --- a/src/corelib/io/qfilesystemwatcher.cpp +++ b/src/corelib/io/qfilesystemwatcher.cpp @@ -59,9 +59,6 @@ #elif defined(Q_OS_LINUX) # include "qfilesystemwatcher_inotify_p.h" #elif defined(Q_OS_FREEBSD) || defined(Q_OS_MAC) -# if (defined Q_OS_MAC) && (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5) -# include "qfilesystemwatcher_fsevents_p.h" -# endif //MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5) # include "qfilesystemwatcher_kqueue_p.h" #endif @@ -76,12 +73,7 @@ QFileSystemWatcherEngine *QFileSystemWatcherPrivate::createNativeEngine() // 2005), so we can't just new inotify directly. return QInotifyFileSystemWatcherEngine::create(); #elif defined(Q_OS_FREEBSD) || defined(Q_OS_MAC) -# if 0 && defined(Q_OS_MAC) && (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5) - if (QSysInfo::MacintoshVersion >= QSysInfo::MV_10_5) - return QFSEventsFileSystemWatcherEngine::create(); - else -# endif - return QKqueueFileSystemWatcherEngine::create(); + return QKqueueFileSystemWatcherEngine::create(); #else return 0; #endif diff --git a/src/corelib/io/qfilesystemwatcher_fsevents.cpp b/src/corelib/io/qfilesystemwatcher_fsevents.cpp deleted file mode 100644 index 8f7094f9e7..0000000000 --- a/src/corelib/io/qfilesystemwatcher_fsevents.cpp +++ /dev/null @@ -1,492 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtCore module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#define _DARWIN_USE_64_BIT_INODE -#include - -#include "qfilesystemwatcher.h" -#include "qfilesystemwatcher_fsevents_p.h" - -#ifndef QT_NO_FILESYSTEMWATCHER - -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include - -QT_BEGIN_NAMESPACE - -#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5 -// Static operator overloading so for the sake of some convieniece. -// They only live in this compilation unit to avoid polluting Qt in general. -static bool operator==(const struct ::timespec &left, const struct ::timespec &right) -{ - return left.tv_sec == right.tv_sec - && left.tv_nsec == right.tv_nsec; -} - -static bool operator==(const struct ::stat &left, const struct ::stat &right) -{ - return left.st_dev == right.st_dev - && left.st_mode == right.st_mode - && left.st_size == right.st_size - && left.st_ino == right.st_ino - && left.st_uid == right.st_uid - && left.st_gid == right.st_gid - && left.st_mtimespec == right.st_mtimespec - && left.st_ctimespec == right.st_ctimespec - && left.st_flags == right.st_flags; -} - -static bool operator!=(const struct ::stat &left, const struct ::stat &right) -{ - return !(operator==(left, right)); -} - - -static void addPathToHash(PathHash &pathHash, const QString &key, const QFileInfo &fileInfo, - const QString &path) -{ - PathInfoList &list = pathHash[key]; - list.push_back(PathInfo(path, - fileInfo.canonicalFilePath().normalized(QString::NormalizationForm_D).toUtf8())); - pathHash.insert(key, list); -} - -static void removePathFromHash(PathHash &pathHash, const QString &key, const QString &path) -{ - PathInfoList &list = pathHash[key]; - // We make the assumption that the list contains unique paths - PathInfoList::iterator End = list.end(); - PathInfoList::iterator it = list.begin(); - while (it != End) { - if (it->originalPath == path) { - list.erase(it); - break; - } - ++it; - } - if (list.isEmpty()) - pathHash.remove(key); -} - -static void stopFSStream(FSEventStreamRef stream) -{ - if (stream) { - FSEventStreamStop(stream); - FSEventStreamInvalidate(stream); - } -} - -static QString createFSStreamPath(const QString &absolutePath) -{ - // The path returned has a trailing slash, so ensure that here. - QString string = absolutePath; - string.reserve(string.size() + 1); - string.append(QLatin1Char('/')); - return string; -} - -static void cleanupFSStream(FSEventStreamRef stream) -{ - if (stream) - FSEventStreamRelease(stream); -} - -const FSEventStreamCreateFlags QtFSEventFlags = (kFSEventStreamCreateFlagUseCFTypes | kFSEventStreamCreateFlagNoDefer /* | kFSEventStreamCreateFlagWatchRoot*/); - -const CFTimeInterval Latency = 0.033; // This will do updates 30 times a second which is probably more than you need. -#endif - -QFSEventsFileSystemWatcherEngine::QFSEventsFileSystemWatcherEngine() - : fsStream(0), pathsToWatch(0), threadsRunLoop(0) -{ -} - -QFSEventsFileSystemWatcherEngine::~QFSEventsFileSystemWatcherEngine() -{ -#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5 - // I assume that at this point, QFileSystemWatcher has already called stop - // on me, so I don't need to invalidate or stop my stream, simply - // release it. - cleanupFSStream(fsStream); - if (pathsToWatch) - CFRelease(pathsToWatch); -#endif -} - -QFSEventsFileSystemWatcherEngine *QFSEventsFileSystemWatcherEngine::create() -{ - return new QFSEventsFileSystemWatcherEngine(); -} - -QStringList QFSEventsFileSystemWatcherEngine::addPaths(const QStringList &paths, - QStringList *files, - QStringList *directories) -{ -#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5 - stop(); - wait(); - QMutexLocker locker(&mutex); - QStringList failedToAdd; - // if we have a running FSStreamEvent, we have to kill it, we'll re-add the stream soon. - FSEventStreamEventId idToCheck; - if (fsStream) { - idToCheck = FSEventStreamGetLatestEventId(fsStream); - cleanupFSStream(fsStream); - } else { - idToCheck = kFSEventStreamEventIdSinceNow; - } - - // Brain-dead approach, but works. FSEvents actually can already read sub-trees, but since it's - // work to figure out if we are doing a double register, we just register it twice as FSEvents - // seems smart enough to only deliver one event. We also duplicate directory entries in here - // (e.g., if you watch five files in the same directory, you get that directory included in the - // array 5 times). This stupidity also makes remove work correctly though. I'll freely admit - // that we could make this a bit smarter. If you do, check the auto-tests, they should catch at - // least a couple of the issues. - QCFType tmpArray = CFArrayCreateMutable(kCFAllocatorDefault, 0, &kCFTypeArrayCallBacks); - for (int i = 0; i < paths.size(); ++i) { - const QString &path = paths.at(i); - - QFileInfo fileInfo(path); - if (!fileInfo.exists()) { - failedToAdd.append(path); - continue; - } - - if (fileInfo.isDir()) { - if (directories->contains(path)) { - failedToAdd.append(path); - continue; - } else { - directories->append(path); - // Full file path for dirs. - QCFString cfpath(createFSStreamPath(fileInfo.canonicalFilePath())); - addPathToHash(dirPathInfoHash, cfpath, fileInfo, path); - CFArrayAppendValue(tmpArray, cfpath); - } - } else { - if (files->contains(path)) { - failedToAdd.append(path); - continue; - } else { - // Just the absolute path (minus it's filename) for files. - QCFString cfpath(createFSStreamPath(fileInfo.canonicalPath())); - files->append(path); - addPathToHash(filePathInfoHash, cfpath, fileInfo, path); - CFArrayAppendValue(tmpArray, cfpath); - } - } - } - - if (!pathsToWatch && failedToAdd.size() == paths.size()) { - return failedToAdd; - } - - if (CFArrayGetCount(tmpArray) > 0) { - if (pathsToWatch) { - CFArrayAppendArray(tmpArray, pathsToWatch, CFRangeMake(0, CFArrayGetCount(pathsToWatch))); - CFRelease(pathsToWatch); - } - pathsToWatch = CFArrayCreateCopy(kCFAllocatorDefault, tmpArray); - } - - FSEventStreamContext context = { 0, this, 0, 0, 0 }; - fsStream = FSEventStreamCreate(kCFAllocatorDefault, - QFSEventsFileSystemWatcherEngine::fseventsCallback, - &context, pathsToWatch, - idToCheck, Latency, QtFSEventFlags); - warmUpFSEvents(); - - return failedToAdd; -#else - Q_UNUSED(paths); - Q_UNUSED(files); - Q_UNUSED(directories); - return QStringList(); -#endif -} - -void QFSEventsFileSystemWatcherEngine::warmUpFSEvents() -{ -#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5 - // This function assumes that the mutex has already been grabbed before calling it. - // It exits with the mutex still locked (Q_ASSERT(mutex.isLocked()) ;-). - start(); - waitCondition.wait(&mutex); -#endif -} - -QStringList QFSEventsFileSystemWatcherEngine::removePaths(const QStringList &paths, - QStringList *files, - QStringList *directories) -{ -#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5 - stop(); - wait(); - QMutexLocker locker(&mutex); - // short circuit for smarties that call remove before add and we have nothing. - if (pathsToWatch == 0) - return paths; - QStringList failedToRemove; - // if we have a running FSStreamEvent, we have to stop it, we'll re-add the stream soon. - FSEventStreamEventId idToCheck; - if (fsStream) { - idToCheck = FSEventStreamGetLatestEventId(fsStream); - cleanupFSStream(fsStream); - fsStream = 0; - } else { - idToCheck = kFSEventStreamEventIdSinceNow; - } - - CFIndex itemCount = CFArrayGetCount(pathsToWatch); - QCFType tmpArray = CFArrayCreateMutableCopy(kCFAllocatorDefault, itemCount, - pathsToWatch); - CFRelease(pathsToWatch); - pathsToWatch = 0; - for (int i = 0; i < paths.size(); ++i) { - // Get the itemCount at the beginning to avoid any overruns during the iteration. - itemCount = CFArrayGetCount(tmpArray); - const QString &path = paths.at(i); - QFileInfo fi(path); - QCFString cfpath(createFSStreamPath(fi.canonicalPath())); - - CFIndex index = CFArrayGetFirstIndexOfValue(tmpArray, CFRangeMake(0, itemCount), cfpath); - if (index != -1) { - CFArrayRemoveValueAtIndex(tmpArray, index); - files->removeAll(path); - removePathFromHash(filePathInfoHash, cfpath, path); - } else { - // Could be a directory we are watching instead. - QCFString cfdirpath(createFSStreamPath(fi.canonicalFilePath())); - index = CFArrayGetFirstIndexOfValue(tmpArray, CFRangeMake(0, itemCount), cfdirpath); - if (index != -1) { - CFArrayRemoveValueAtIndex(tmpArray, index); - directories->removeAll(path); - removePathFromHash(dirPathInfoHash, cfpath, path); - } else { - failedToRemove.append(path); - } - } - } - itemCount = CFArrayGetCount(tmpArray); - if (itemCount != 0) { - pathsToWatch = CFArrayCreateCopy(kCFAllocatorDefault, tmpArray); - - FSEventStreamContext context = { 0, this, 0, 0, 0 }; - fsStream = FSEventStreamCreate(kCFAllocatorDefault, - QFSEventsFileSystemWatcherEngine::fseventsCallback, - &context, pathsToWatch, idToCheck, Latency, QtFSEventFlags); - warmUpFSEvents(); - } - return failedToRemove; -#else - Q_UNUSED(paths); - Q_UNUSED(files); - Q_UNUSED(directories); - return QStringList(); -#endif -} - -#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5 -void QFSEventsFileSystemWatcherEngine::updateList(PathInfoList &list, bool directory, bool emitSignals) -{ - PathInfoList::iterator End = list.end(); - PathInfoList::iterator it = list.begin(); - while (it != End) { - struct ::stat newInfo; - if (::stat(it->absolutePath, &newInfo) == 0) { - if (emitSignals) { - if (newInfo != it->savedInfo) { - it->savedInfo = newInfo; - if (directory) - emit directoryChanged(it->originalPath, false); - else - emit fileChanged(it->originalPath, false); - } - } else { - it->savedInfo = newInfo; - } - } else { - if (errno == ENOENT) { - if (emitSignals) { - if (directory) - emit directoryChanged(it->originalPath, true); - else - emit fileChanged(it->originalPath, true); - } - it = list.erase(it); - continue; - } else { - qWarning("%s:%d:QFSEventsFileSystemWatcherEngine: stat error on %s:%s", - __FILE__, __LINE__, qPrintable(it->originalPath), strerror(errno)); - - } - } - ++it; - } -} - -void QFSEventsFileSystemWatcherEngine::updateHash(PathHash &pathHash) -{ - PathHash::iterator HashEnd = pathHash.end(); - PathHash::iterator it = pathHash.begin(); - const bool IsDirectory = (&pathHash == &dirPathInfoHash); - while (it != HashEnd) { - updateList(it.value(), IsDirectory, false); - if (it.value().isEmpty()) - it = pathHash.erase(it); - else - ++it; - } -} -#endif - -void QFSEventsFileSystemWatcherEngine::fseventsCallback(ConstFSEventStreamRef , - void *clientCallBackInfo, size_t numEvents, - void *eventPaths, - const FSEventStreamEventFlags eventFlags[], - const FSEventStreamEventId []) -{ -#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5 - QFSEventsFileSystemWatcherEngine *watcher = static_cast(clientCallBackInfo); - QMutexLocker locker(&watcher->mutex); - CFArrayRef paths = static_cast(eventPaths); - for (size_t i = 0; i < numEvents; ++i) { - const QString path = QCFString::toQString( - static_cast(CFArrayGetValueAtIndex(paths, i))); - const FSEventStreamEventFlags pathFlags = eventFlags[i]; - // There are several flags that may be passed, but we really don't care about them ATM. - // Here they are and why we don't care. - // kFSEventStreamEventFlagHistoryDone--(very unlikely to be gotten, but even then, not much changes). - // kFSEventStreamEventFlagMustScanSubDirs--Likely means the data is very much out of date, we - // aren't coalescing our directories, so again not so much of an issue - // kFSEventStreamEventFlagRootChanged | kFSEventStreamEventFlagMount | kFSEventStreamEventFlagUnmount-- - // These three flags indicate something has changed, but the stat will likely show this, so - // there's not really much to worry about. - // (btw, FSEvents is not the correct way of checking for mounts/unmounts, - // there are real CarbonCore events for that.) - Q_UNUSED(pathFlags); - if (watcher->filePathInfoHash.contains(path)) - watcher->updateList(watcher->filePathInfoHash[path], false, true); - - if (watcher->dirPathInfoHash.contains(path)) - watcher->updateList(watcher->dirPathInfoHash[path], true, true); - } -#else - Q_UNUSED(clientCallBackInfo); - Q_UNUSED(numEvents); - Q_UNUSED(eventPaths); - Q_UNUSED(eventFlags); -#endif -} - -void QFSEventsFileSystemWatcherEngine::stop() -{ -#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5 - QMutexLocker locker(&mutex); - stopFSStream(fsStream); - if (threadsRunLoop) { - CFRunLoopStop(threadsRunLoop); - waitForStop.wait(&mutex); - } -#endif -} - -void QFSEventsFileSystemWatcherEngine::updateFiles() -{ -#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5 - QMutexLocker locker(&mutex); - updateHash(filePathInfoHash); - updateHash(dirPathInfoHash); - if (filePathInfoHash.isEmpty() && dirPathInfoHash.isEmpty()) { - // Everything disappeared before we got to start, don't bother. -#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5 - // Code duplicated from stop(), with the exception that we - // don't wait on waitForStop here. Doing this will lead to - // a deadlock since this function is called from the worker - // thread. (waitForStop.wakeAll() is only called from the - // end of run()). - stopFSStream(fsStream); - if (threadsRunLoop) - CFRunLoopStop(threadsRunLoop); -#endif - cleanupFSStream(fsStream); - } - waitCondition.wakeAll(); -#endif -} - -void QFSEventsFileSystemWatcherEngine::run() -{ -#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5 - threadsRunLoop = CFRunLoopGetCurrent(); - FSEventStreamScheduleWithRunLoop(fsStream, threadsRunLoop, kCFRunLoopDefaultMode); - bool startedOK = FSEventStreamStart(fsStream); - // It's recommended by Apple that you only update the files after you've started - // the stream, because otherwise you might miss an update in between starting it. - updateFiles(); -#ifdef QT_NO_DEBUG - Q_UNUSED(startedOK); -#else - Q_ASSERT(startedOK); -#endif - // If for some reason we called stop up above (and invalidated our stream), this call will return - // immediately. - CFRunLoopRun(); - threadsRunLoop = 0; - QMutexLocker locker(&mutex); - waitForStop.wakeAll(); -#endif -} - -QT_END_NAMESPACE -#endif //QT_NO_FILESYSTEMWATCHER diff --git a/src/corelib/io/qfilesystemwatcher_fsevents_p.h b/src/corelib/io/qfilesystemwatcher_fsevents_p.h deleted file mode 100644 index 311a5b55e3..0000000000 --- a/src/corelib/io/qfilesystemwatcher_fsevents_p.h +++ /dev/null @@ -1,132 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtCore module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - - -#ifndef FILEWATCHER_FSEVENTS_P_H -#define FILEWATCHER_FSEVENTS_P_H - -// -// W A R N I N G -// ------------- -// -// This file is not part of the Qt API. It exists for the convenience -// of the QLibrary class. This header file may change from -// version to version without notice, or even be removed. -// -// We mean it. -// - -#include "qfilesystemwatcher_p.h" - -#ifndef QT_NO_FILESYSTEMWATCHER - -#include -#include -#include -#include -#include -#include -#include - -typedef struct __FSEventStream *FSEventStreamRef; -typedef const struct __FSEventStream *ConstFSEventStreamRef; -typedef const struct __CFArray *CFArrayRef; -typedef UInt32 FSEventStreamEventFlags; -typedef uint64_t FSEventStreamEventId; - -QT_BEGIN_NAMESPACE - -#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5 -// Yes, I use a stat element here. QFileInfo requires too much knowledge about implementation -// details to be used as a long-standing record. Since I'm going to have to store this information, I can -// do the stat myself too. -struct PathInfo { - PathInfo(const QString &path, const QByteArray &absPath) - : originalPath(path), absolutePath(absPath) {} - QString originalPath; // The path we need to emit - QByteArray absolutePath; // The path we need to stat. - struct ::stat savedInfo; // All the info for the path so we can compare it. -}; -typedef QLinkedList PathInfoList; -typedef QHash PathHash; -#endif - -class QFSEventsFileSystemWatcherEngine : public QFileSystemWatcherEngine -{ - Q_OBJECT -public: - ~QFSEventsFileSystemWatcherEngine(); - - static QFSEventsFileSystemWatcherEngine *create(); - - QStringList addPaths(const QStringList &paths, QStringList *files, QStringList *directories); - QStringList removePaths(const QStringList &paths, QStringList *files, QStringList *directories); - - void stop(); - -private: - QFSEventsFileSystemWatcherEngine(); - void warmUpFSEvents(); - void updateFiles(); - - static void fseventsCallback(ConstFSEventStreamRef streamRef, void *clientCallBackInfo, size_t numEvents, - void *eventPaths, const FSEventStreamEventFlags eventFlags[], - const FSEventStreamEventId eventIds[]); - void run(); - FSEventStreamRef fsStream; - CFArrayRef pathsToWatch; - CFRunLoopRef threadsRunLoop; - QMutex mutex; - QWaitCondition waitCondition; - QWaitCondition waitForStop; -#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5 - PathHash filePathInfoHash; - PathHash dirPathInfoHash; - void updateHash(PathHash &pathHash); - void updateList(PathInfoList &list, bool directory, bool emitSignals); -#endif -}; - -#endif //QT_NO_FILESYSTEMWATCHER - -#endif - -QT_END_NAMESPACE -- cgit v1.2.3 From 689c4009fb9be348f9137a9092b068e056a3d8b3 Mon Sep 17 00:00:00 2001 From: Albert Astals Cid Date: Thu, 5 Jan 2012 11:11:27 +0100 Subject: Check for the clipboard manager when looping due to app quiting One can be extremely unlucky and on session logout get this: * All apps are going down * A Qt app checks if the clipboard manager is there to yield its clipboard contents * The clipboard manager is still there * Then just after that check, the clipboard manager finishes because of the session end * This means the Qt app will loop for 5 seconds trying to yield its clipboard contents to a clipboard manager that is not there anymore Change-Id: Ia89670d4deb72f12e660a0d7aa5b2d212955d6fe Reviewed-by: Lars Knoll --- src/plugins/platforms/xcb/qxcbclipboard.cpp | 14 ++++++++++++-- src/plugins/platforms/xcb/qxcbclipboard.h | 2 +- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/src/plugins/platforms/xcb/qxcbclipboard.cpp b/src/plugins/platforms/xcb/qxcbclipboard.cpp index 3c3469a73b..24de78861f 100644 --- a/src/plugins/platforms/xcb/qxcbclipboard.cpp +++ b/src/plugins/platforms/xcb/qxcbclipboard.cpp @@ -208,7 +208,7 @@ QXcbClipboard::~QXcbClipboard() connection()->sync(); // waiting until the clipboard manager fetches the content. - if (!waitForClipboardEvent(m_owner, XCB_SELECTION_NOTIFY, 5000)) { + if (!waitForClipboardEvent(m_owner, XCB_SELECTION_NOTIFY, 5000, true)) { qWarning("QClipboard: Unable to receive an event from the " "clipboard manager in a reasonable time"); } @@ -726,7 +726,7 @@ namespace }; } -xcb_generic_event_t *QXcbClipboard::waitForClipboardEvent(xcb_window_t win, int type, int timeout) +xcb_generic_event_t *QXcbClipboard::waitForClipboardEvent(xcb_window_t win, int type, int timeout, bool checkManager) { QElapsedTimer timer; timer.start(); @@ -736,6 +736,16 @@ xcb_generic_event_t *QXcbClipboard::waitForClipboardEvent(xcb_window_t win, int if (e) return e; + if (checkManager) { + xcb_get_selection_owner_cookie_t cookie = xcb_get_selection_owner(xcb_connection(), atom(QXcbAtom::CLIPBOARD_MANAGER)); + xcb_get_selection_owner_reply_t *reply = xcb_get_selection_owner_reply(xcb_connection(), cookie, 0); + if (!reply || reply->owner == XCB_NONE) { + free(reply); + return 0; + } + free(reply); + } + // process other clipboard events, since someone is probably requesting data from us ClipboardEvent clipboard(connection()); e = connection()->checkEvent(clipboard); diff --git a/src/plugins/platforms/xcb/qxcbclipboard.h b/src/plugins/platforms/xcb/qxcbclipboard.h index 9debdcefbb..e9ddb70f8f 100644 --- a/src/plugins/platforms/xcb/qxcbclipboard.h +++ b/src/plugins/platforms/xcb/qxcbclipboard.h @@ -85,7 +85,7 @@ public: QByteArray getSelection(xcb_atom_t selection, xcb_atom_t target, xcb_atom_t property); private: - xcb_generic_event_t *waitForClipboardEvent(xcb_window_t win, int type, int timeout); + xcb_generic_event_t *waitForClipboardEvent(xcb_window_t win, int type, int timeout, bool needsManager = false); xcb_atom_t sendTargetsSelection(QMimeData *d, xcb_window_t window, xcb_atom_t property); xcb_atom_t sendSelection(QMimeData *d, xcb_atom_t target, xcb_window_t window, xcb_atom_t property); -- cgit v1.2.3 From ec104d7a5480b334cbbdc41d1536670585da6bba Mon Sep 17 00:00:00 2001 From: Albert Astals Cid Date: Thu, 5 Jan 2012 13:15:47 +0100 Subject: Free the replies Change-Id: I719bd95d94f3bfd41eeb09a49ac3e2701a516619 Reviewed-by: Lars Knoll --- src/plugins/platforms/xcb/qxcbclipboard.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/plugins/platforms/xcb/qxcbclipboard.cpp b/src/plugins/platforms/xcb/qxcbclipboard.cpp index 24de78861f..0c6e52508b 100644 --- a/src/plugins/platforms/xcb/qxcbclipboard.cpp +++ b/src/plugins/platforms/xcb/qxcbclipboard.cpp @@ -213,6 +213,7 @@ QXcbClipboard::~QXcbClipboard() "clipboard manager in a reasonable time"); } } + free(reply); } } @@ -595,6 +596,7 @@ bool QXcbClipboard::clipboardReadProperty(xcb_window_t win, xcb_atom_t property, xcb_get_property_cookie_t cookie = Q_XCB_CALL(xcb_get_property(xcb_connection(), false, win, property, XCB_GET_PROPERTY_TYPE_ANY, 0, 0)); xcb_get_property_reply_t *reply = xcb_get_property_reply(xcb_connection(), cookie, 0); if (!reply || reply->type == XCB_NONE) { + free(reply); buffer->resize(0); return false; } -- cgit v1.2.3 From 9498f1aa54fefb3d1c78f5e38880607147512567 Mon Sep 17 00:00:00 2001 From: David Faure Date: Thu, 22 Dec 2011 13:46:15 +0100 Subject: Fix compile error with qWarning() << myDateTime and QT_NO_DEBUG_OUTPUT All QDebug operator << in custom classes were disabled by QT_NO_DEBUG_STREAM, which was set by QT_NO_DEBUG_OUTPUT. Now QT_NO_DEBUG_STREAM is never set automatically, but remains available for reducing the feature set altogether (qconfig.h). Remove check on QT_NO_TEXTSTREAM: this define is meaningless, it doesn't even undefine QTextStream, and this is unrelated to QDebug streaming anyway. Change-Id: I5eeed0144fa684d0e790e9dfd9a4aeb956218c39 Reviewed-by: Bradley T. Hughes Reviewed-by: Thiago Macieira --- src/corelib/global/qglobal.h | 16 ++--- src/corelib/io/qdebug.h | 15 ++--- tests/auto/corelib/io/io.pro | 1 + tests/auto/corelib/io/qnodebug/qnodebug.pro | 4 ++ tests/auto/corelib/io/qnodebug/tst_qnodebug.cpp | 80 +++++++++++++++++++++++++ 5 files changed, 102 insertions(+), 14 deletions(-) create mode 100644 tests/auto/corelib/io/qnodebug/qnodebug.pro create mode 100644 tests/auto/corelib/io/qnodebug/tst_qnodebug.cpp diff --git a/src/corelib/global/qglobal.h b/src/corelib/global/qglobal.h index f1ce80e1ea..bb6fa61941 100644 --- a/src/corelib/global/qglobal.h +++ b/src/corelib/global/qglobal.h @@ -1683,10 +1683,6 @@ Q_CORE_EXPORT void qFatal(const char *, ...) /* print fatal message and exit */ Q_CORE_EXPORT void qErrnoWarning(int code, const char *msg, ...); Q_CORE_EXPORT void qErrnoWarning(const char *msg, ...); -#if (defined(QT_NO_DEBUG_OUTPUT) || defined(QT_NO_TEXTSTREAM)) && !defined(QT_NO_DEBUG_STREAM) -#define QT_NO_DEBUG_STREAM -#endif - /* Forward declarations only. @@ -1694,13 +1690,19 @@ Q_CORE_EXPORT void qErrnoWarning(const char *msg, ...); */ class QDebug; class QNoDebug; -#ifndef QT_NO_DEBUG_STREAM +#if !defined(QT_NO_DEBUG_OUTPUT) && !defined(QT_NO_DEBUG_STREAM) Q_CORE_EXPORT_INLINE QDebug qDebug(); -Q_CORE_EXPORT_INLINE QDebug qWarning(); -Q_CORE_EXPORT_INLINE QDebug qCritical(); #else inline QNoDebug qDebug(); #endif +#if !defined(QT_NO_WARNING_OUTPUT) && !defined(QT_NO_DEBUG_STREAM) +Q_CORE_EXPORT_INLINE QDebug qWarning(); +#else +inline QNoDebug qWarning(); +#endif +#if !defined(QT_NO_DEBUG_STREAM) +Q_CORE_EXPORT_INLINE QDebug qCritical(); +#endif #define QT_NO_QDEBUG_MACRO while (false) qDebug #ifdef QT_NO_DEBUG_OUTPUT diff --git a/src/corelib/io/qdebug.h b/src/corelib/io/qdebug.h index d5fe36e0c8..ecef792e70 100644 --- a/src/corelib/io/qdebug.h +++ b/src/corelib/io/qdebug.h @@ -141,8 +141,6 @@ public: inline QNoDebug &operator<<(const T &) { return *this; } }; -Q_CORE_EXPORT_INLINE QDebug qCritical() { return QDebug(QtCriticalMsg); } - inline QDebug &QDebug::operator=(const QDebug &other) { if (this != &other) { @@ -275,17 +273,15 @@ inline QDebug operator<<(QDebug debug, const QFlags &flags) return debug.space(); } -#if !defined(QT_NO_DEBUG_STREAM) +#if !defined(QT_NO_DEBUG_OUTPUT) && !defined(QT_NO_DEBUG_STREAM) Q_CORE_EXPORT_INLINE QDebug qDebug() { return QDebug(QtDebugMsg); } - -#else // QT_NO_DEBUG_STREAM +#else #undef qDebug inline QNoDebug qDebug() { return QNoDebug(); } #define qDebug QT_NO_QDEBUG_MACRO - #endif -#if !defined(QT_NO_WARNING_OUTPUT) +#if !defined(QT_NO_WARNING_OUTPUT) && !defined(QT_NO_DEBUG_STREAM) Q_CORE_EXPORT_INLINE QDebug qWarning() { return QDebug(QtWarningMsg); } #else #undef qWarning @@ -293,6 +289,11 @@ inline QNoDebug qWarning() { return QNoDebug(); } #define qWarning QT_NO_QWARNING_MACRO #endif +#if !defined(QT_NO_DEBUG_STREAM) +Q_CORE_EXPORT_INLINE QDebug qCritical() { return QDebug(QtCriticalMsg); } +#endif + + QT_END_NAMESPACE QT_END_HEADER diff --git a/tests/auto/corelib/io/io.pro b/tests/auto/corelib/io/io.pro index e044eda1ca..13993717ac 100644 --- a/tests/auto/corelib/io/io.pro +++ b/tests/auto/corelib/io/io.pro @@ -11,6 +11,7 @@ SUBDIRS=\ qfilesystementry \ qfilesystemwatcher \ qiodevice \ + qnodebug \ qprocess \ qprocessenvironment \ qresourceengine \ diff --git a/tests/auto/corelib/io/qnodebug/qnodebug.pro b/tests/auto/corelib/io/qnodebug/qnodebug.pro new file mode 100644 index 0000000000..2f951ab892 --- /dev/null +++ b/tests/auto/corelib/io/qnodebug/qnodebug.pro @@ -0,0 +1,4 @@ +CONFIG += testcase parallel_test +TARGET = tst_qnodebug +QT = core testlib +SOURCES = tst_qnodebug.cpp diff --git a/tests/auto/corelib/io/qnodebug/tst_qnodebug.cpp b/tests/auto/corelib/io/qnodebug/tst_qnodebug.cpp new file mode 100644 index 0000000000..eb1ead898e --- /dev/null +++ b/tests/auto/corelib/io/qnodebug/tst_qnodebug.cpp @@ -0,0 +1,80 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// This test is for "release" mode, with -DQT_NO_DEBUG -DQT_NO_DEBUG_OUTPUT +#ifndef QT_NO_DEBUG +#define QT_NO_DEBUG +#endif +#ifndef QT_NO_DEBUG_OUTPUT +#define QT_NO_DEBUG_OUTPUT +#endif + +#include +#include +#include + +class tst_QNoDebug: public QObject +{ + Q_OBJECT +private slots: + void noDebugOutput() const; + void streaming() const; +}; + +void tst_QNoDebug::noDebugOutput() const +{ + // should do nothing + qDebug() << "foo"; + + // qWarning still works, though + QTest::ignoreMessage(QtWarningMsg, "bar "); + qWarning() << "bar"; +} + +void tst_QNoDebug::streaming() const +{ + QDateTime dt(QDate(1,2,3),QTime(4,5,6)); + QTest::ignoreMessage(QtWarningMsg, qPrintable(QString::fromLatin1("QDateTime(\"%1\") ").arg(dt.toString()))); + qWarning() << dt; +} + +QTEST_MAIN(tst_QNoDebug); +#include "tst_qnodebug.moc" -- cgit v1.2.3 From eb0ce0d5c123c010c978c96683cfd6b651540b07 Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Mon, 2 Jan 2012 12:47:15 +0100 Subject: Use explicit Qt::TimerTypes when starting animation timers. Similar to commit 4e1ad49998cf782ccc88e7e80fbd05c722658a16, we know that CoarseTimers are worst in their first firing, so we prefer a PreciseTimer for short pause animations to avoid inaccuracies. If the timeout is too big, we use a CoarseTimer anyway (current threshold is 2000ms). The timer that drives the QDefaultAnimationDriver is always a PreciseTimer. Change-Id: I0939357d768b804f9f9bab3adf5ed1d0f7e012e7 Reviewed-by: Thiago Macieira Reviewed-by: Gunnar Sletta --- src/corelib/animation/qabstractanimation.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/corelib/animation/qabstractanimation.cpp b/src/corelib/animation/qabstractanimation.cpp index 9e4b361883..19a9384132 100644 --- a/src/corelib/animation/qabstractanimation.cpp +++ b/src/corelib/animation/qabstractanimation.cpp @@ -158,6 +158,7 @@ #define DEFAULT_TIMER_INTERVAL 16 #define STARTSTOP_TIMER_DELAY 0 +#define PAUSE_TIMER_COARSE_THRESHOLD 2000 QT_BEGIN_NAMESPACE @@ -264,7 +265,9 @@ void QUnifiedTimer::restartAnimationTimer() qDebug() << closestPauseAnimationTimeToFinish(); } driver->stop(); - pauseTimer.start(closestTimeToFinish, this); + // use a precise timer if the pause will be short + Qt::TimerType timerType = closestTimeToFinish < PAUSE_TIMER_COARSE_THRESHOLD ? Qt::PreciseTimer : Qt::CoarseTimer; + pauseTimer.start(closestTimeToFinish, timerType, this); } else if (!driver->isRunning()) { if (pauseTimer.isActive()) pauseTimer.stop(); @@ -619,7 +622,8 @@ void QDefaultAnimationDriver::timerEvent(QTimerEvent *e) void QDefaultAnimationDriver::startTimer() { - m_timer.start(m_unified_timer->timingInterval, this); + // always use a precise timer to drive animations + m_timer.start(m_unified_timer->timingInterval, Qt::PreciseTimer, this); } void QDefaultAnimationDriver::stopTimer() -- cgit v1.2.3 From bf7f17060773803f332e8c729a70f47b94243890 Mon Sep 17 00:00:00 2001 From: "Jonas M. Gastal" Date: Thu, 5 Jan 2012 10:38:39 -0200 Subject: Make socket descriptors qintptr. Windows x64 uses 64 bits integer for sockets, to ensure compatibility we should use ptr sized integers for our socket descriptors. Task-number: QTBUG-19004 Change-Id: I4b56023874a4f1bad107c66c054fecfedde33d88 Reviewed-by: Thiago Macieira Reviewed-by: Oswald Buddenhagen --- src/corelib/global/qglobal.h | 1 + src/corelib/kernel/qsocketnotifier.cpp | 2 +- src/corelib/kernel/qsocketnotifier.h | 4 ++-- src/network/socket/qabstractsocket.cpp | 4 ++-- src/network/socket/qabstractsocket.h | 4 ++-- src/network/socket/qabstractsocket_p.h | 2 +- src/network/socket/qabstractsocketengine.cpp | 2 +- src/network/socket/qabstractsocketengine_p.h | 8 ++++---- src/network/socket/qhttpsocketengine.cpp | 6 +++--- src/network/socket/qhttpsocketengine_p.h | 6 +++--- src/network/socket/qnativesocketengine.cpp | 6 +++--- src/network/socket/qnativesocketengine_p.h | 6 +++--- src/network/socket/qnativesocketengine_win.cpp | 4 ++-- src/network/socket/qsocks5socketengine.cpp | 20 ++++++++++---------- src/network/socket/qsocks5socketengine_p.h | 8 ++++---- src/network/socket/qtcpserver.cpp | 6 +++--- src/network/socket/qtcpserver.h | 6 +++--- src/network/ssl/qsslsocket.cpp | 2 +- src/network/ssl/qsslsocket.h | 2 +- .../network/socket/qlocalsocket/tst_qlocalsocket.cpp | 4 ++-- .../network/socket/qtcpserver/tst_qtcpserver.cpp | 4 ++-- .../network/socket/qtcpsocket/tst_qtcpsocket.cpp | 16 ++++++++-------- .../network/socket/qudpsocket/tst_qudpsocket.cpp | 2 +- tests/auto/network/ssl/qsslsocket/tst_qsslsocket.cpp | 2 +- 24 files changed, 64 insertions(+), 63 deletions(-) diff --git a/src/corelib/global/qglobal.h b/src/corelib/global/qglobal.h index bb6fa61941..f07a48eca4 100644 --- a/src/corelib/global/qglobal.h +++ b/src/corelib/global/qglobal.h @@ -900,6 +900,7 @@ template <> struct QIntegerForSize<8> { typedef quint64 Unsigned; typedef qin template struct QIntegerForSizeof: QIntegerForSize { }; typedef QIntegerForSizeof::Unsigned quintptr; typedef QIntegerForSizeof::Signed qptrdiff; +typedef qptrdiff qintptr; /* Useful type definitions for Qt diff --git a/src/corelib/kernel/qsocketnotifier.cpp b/src/corelib/kernel/qsocketnotifier.cpp index d76e905ee3..60970f1cd2 100644 --- a/src/corelib/kernel/qsocketnotifier.cpp +++ b/src/corelib/kernel/qsocketnotifier.cpp @@ -168,7 +168,7 @@ QT_BEGIN_NAMESPACE \sa setEnabled(), isEnabled() */ -QSocketNotifier::QSocketNotifier(int socket, Type type, QObject *parent) +QSocketNotifier::QSocketNotifier(qintptr socket, Type type, QObject *parent) : QObject(parent) { if (socket < 0) diff --git a/src/corelib/kernel/qsocketnotifier.h b/src/corelib/kernel/qsocketnotifier.h index 336bac6996..186979db4c 100644 --- a/src/corelib/kernel/qsocketnotifier.h +++ b/src/corelib/kernel/qsocketnotifier.h @@ -58,7 +58,7 @@ class Q_CORE_EXPORT QSocketNotifier : public QObject public: enum Type { Read, Write, Exception }; - QSocketNotifier(int socket, Type, QObject *parent = 0); + QSocketNotifier(qintptr socket, Type, QObject *parent = 0); ~QSocketNotifier(); inline int socket() const { return sockfd; } @@ -78,7 +78,7 @@ protected: private: Q_DISABLE_COPY(QSocketNotifier) - int sockfd; + qintptr sockfd; Type sntype; bool snenabled; }; diff --git a/src/network/socket/qabstractsocket.cpp b/src/network/socket/qabstractsocket.cpp index 9437bbaa8c..099c01ef71 100644 --- a/src/network/socket/qabstractsocket.cpp +++ b/src/network/socket/qabstractsocket.cpp @@ -1723,7 +1723,7 @@ bool QAbstractSocket::canReadLine() const \sa setSocketDescriptor() */ -int QAbstractSocket::socketDescriptor() const +qintptr QAbstractSocket::socketDescriptor() const { Q_D(const QAbstractSocket); return d->cachedSocketDescriptor; @@ -1741,7 +1741,7 @@ int QAbstractSocket::socketDescriptor() const \sa socketDescriptor() */ -bool QAbstractSocket::setSocketDescriptor(int socketDescriptor, SocketState socketState, +bool QAbstractSocket::setSocketDescriptor(qintptr socketDescriptor, SocketState socketState, OpenMode openMode) { Q_D(QAbstractSocket); diff --git a/src/network/socket/qabstractsocket.h b/src/network/socket/qabstractsocket.h index 3b98a32e10..44c758aa77 100644 --- a/src/network/socket/qabstractsocket.h +++ b/src/network/socket/qabstractsocket.h @@ -156,8 +156,8 @@ public: void abort(); // ### Qt 5: Make socketDescriptor() and setSocketDescriptor() virtual. - int socketDescriptor() const; - bool setSocketDescriptor(int socketDescriptor, SocketState state = ConnectedState, + qintptr socketDescriptor() const; + bool setSocketDescriptor(qintptr socketDescriptor, SocketState state = ConnectedState, OpenMode openMode = ReadWrite); // ### Qt 5: Make virtual? diff --git a/src/network/socket/qabstractsocket_p.h b/src/network/socket/qabstractsocket_p.h index 937ea53e37..49e7c82e21 100644 --- a/src/network/socket/qabstractsocket_p.h +++ b/src/network/socket/qabstractsocket_p.h @@ -118,7 +118,7 @@ public: QString peerName; QAbstractSocketEngine *socketEngine; - int cachedSocketDescriptor; + qintptr cachedSocketDescriptor; #ifndef QT_NO_NETWORKPROXY QNetworkProxy proxy; diff --git a/src/network/socket/qabstractsocketengine.cpp b/src/network/socket/qabstractsocketengine.cpp index 70b1748fcd..8c1ee88ce1 100644 --- a/src/network/socket/qabstractsocketengine.cpp +++ b/src/network/socket/qabstractsocketengine.cpp @@ -118,7 +118,7 @@ QAbstractSocketEngine *QAbstractSocketEngine::createSocketEngine(QAbstractSocket return new QNativeSocketEngine(parent); } -QAbstractSocketEngine *QAbstractSocketEngine::createSocketEngine(int socketDescripter, QObject *parent) +QAbstractSocketEngine *QAbstractSocketEngine::createSocketEngine(qintptr socketDescripter, QObject *parent) { QMutexLocker locker(&socketHandlers()->mutex); for (int i = 0; i < socketHandlers()->size(); i++) { diff --git a/src/network/socket/qabstractsocketengine_p.h b/src/network/socket/qabstractsocketengine_p.h index ae7119962b..e365eb8b5e 100644 --- a/src/network/socket/qabstractsocketengine_p.h +++ b/src/network/socket/qabstractsocketengine_p.h @@ -84,7 +84,7 @@ class Q_AUTOTEST_EXPORT QAbstractSocketEngine : public QObject public: static QAbstractSocketEngine *createSocketEngine(QAbstractSocket::SocketType socketType, const QNetworkProxy &, QObject *parent); - static QAbstractSocketEngine *createSocketEngine(int socketDescripter, QObject *parent); + static QAbstractSocketEngine *createSocketEngine(qintptr socketDescriptor, QObject *parent); QAbstractSocketEngine(QObject *parent = 0); @@ -105,9 +105,9 @@ public: virtual bool initialize(QAbstractSocket::SocketType type, QAbstractSocket::NetworkLayerProtocol protocol = QAbstractSocket::IPv4Protocol) = 0; - virtual bool initialize(int socketDescriptor, QAbstractSocket::SocketState socketState = QAbstractSocket::ConnectedState) = 0; + virtual bool initialize(qintptr socketDescriptor, QAbstractSocket::SocketState socketState = QAbstractSocket::ConnectedState) = 0; - virtual int socketDescriptor() const = 0; + virtual qintptr socketDescriptor() const = 0; virtual bool isValid() const = 0; @@ -225,7 +225,7 @@ protected: virtual ~QSocketEngineHandler(); virtual QAbstractSocketEngine *createSocketEngine(QAbstractSocket::SocketType socketType, const QNetworkProxy &, QObject *parent) = 0; - virtual QAbstractSocketEngine *createSocketEngine(int socketDescripter, QObject *parent) = 0; + virtual QAbstractSocketEngine *createSocketEngine(qintptr socketDescriptor, QObject *parent) = 0; private: friend class QAbstractSocketEngine; diff --git a/src/network/socket/qhttpsocketengine.cpp b/src/network/socket/qhttpsocketengine.cpp index 95e46019b0..70ae40307e 100644 --- a/src/network/socket/qhttpsocketengine.cpp +++ b/src/network/socket/qhttpsocketengine.cpp @@ -103,7 +103,7 @@ bool QHttpSocketEngine::initialize(QAbstractSocket::SocketType type, QAbstractSo return true; } -bool QHttpSocketEngine::initialize(int, QAbstractSocket::SocketState) +bool QHttpSocketEngine::initialize(qintptr, QAbstractSocket::SocketState) { return false; } @@ -120,7 +120,7 @@ void QHttpSocketEngine::setProxy(const QNetworkProxy &proxy) d->authenticator.setPassword(password); } -int QHttpSocketEngine::socketDescriptor() const +qintptr QHttpSocketEngine::socketDescriptor() const { Q_D(const QHttpSocketEngine); return d->socket ? d->socket->socketDescriptor() : 0; @@ -838,7 +838,7 @@ QAbstractSocketEngine *QHttpSocketEngineHandler::createSocketEngine(QAbstractSoc return engine; } -QAbstractSocketEngine *QHttpSocketEngineHandler::createSocketEngine(int, QObject *) +QAbstractSocketEngine *QHttpSocketEngineHandler::createSocketEngine(qintptr, QObject *) { return 0; } diff --git a/src/network/socket/qhttpsocketengine_p.h b/src/network/socket/qhttpsocketengine_p.h index a8484b8920..1a93956bd2 100644 --- a/src/network/socket/qhttpsocketengine_p.h +++ b/src/network/socket/qhttpsocketengine_p.h @@ -80,11 +80,11 @@ public: ~QHttpSocketEngine(); bool initialize(QAbstractSocket::SocketType type, QAbstractSocket::NetworkLayerProtocol protocol = QAbstractSocket::IPv4Protocol); - bool initialize(int socketDescriptor, QAbstractSocket::SocketState socketState = QAbstractSocket::ConnectedState); + bool initialize(qintptr socketDescriptor, QAbstractSocket::SocketState socketState = QAbstractSocket::ConnectedState); void setProxy(const QNetworkProxy &networkProxy); - int socketDescriptor() const; + qintptr socketDescriptor() const; bool isValid() const; @@ -191,7 +191,7 @@ class Q_AUTOTEST_EXPORT QHttpSocketEngineHandler : public QSocketEngineHandler public: virtual QAbstractSocketEngine *createSocketEngine(QAbstractSocket::SocketType socketType, const QNetworkProxy &, QObject *parent); - virtual QAbstractSocketEngine *createSocketEngine(int socketDescripter, QObject *parent); + virtual QAbstractSocketEngine *createSocketEngine(qintptr socketDescripter, QObject *parent); }; #endif diff --git a/src/network/socket/qnativesocketengine.cpp b/src/network/socket/qnativesocketengine.cpp index a63101dd23..cae2469328 100644 --- a/src/network/socket/qnativesocketengine.cpp +++ b/src/network/socket/qnativesocketengine.cpp @@ -414,7 +414,7 @@ bool QNativeSocketEngine::initialize(QAbstractSocket::SocketType socketType, QAb If the socket type is either TCP or UDP, it is made non-blocking. UDP sockets are also broadcast enabled. */ -bool QNativeSocketEngine::initialize(int socketDescriptor, QAbstractSocket::SocketState socketState) +bool QNativeSocketEngine::initialize(qintptr socketDescriptor, QAbstractSocket::SocketState socketState) { Q_D(QNativeSocketEngine); @@ -471,7 +471,7 @@ bool QNativeSocketEngine::isValid() const Returns the native socket descriptor. Any use of this descriptor stands the risk of being non-portable. */ -int QNativeSocketEngine::socketDescriptor() const +qintptr QNativeSocketEngine::socketDescriptor() const { Q_D(const QNativeSocketEngine); return d->socketDescriptor; @@ -1114,7 +1114,7 @@ bool QNativeSocketEngine::isReadNotificationEnabled() const class QReadNotifier : public QSocketNotifier { public: - QReadNotifier(int fd, QNativeSocketEngine *parent) + QReadNotifier(qintptr fd, QNativeSocketEngine *parent) : QSocketNotifier(fd, QSocketNotifier::Read, parent) { engine = parent; } diff --git a/src/network/socket/qnativesocketengine_p.h b/src/network/socket/qnativesocketengine_p.h index 68aa2e6e40..60c13c1258 100644 --- a/src/network/socket/qnativesocketengine_p.h +++ b/src/network/socket/qnativesocketengine_p.h @@ -113,9 +113,9 @@ public: ~QNativeSocketEngine(); bool initialize(QAbstractSocket::SocketType type, QAbstractSocket::NetworkLayerProtocol protocol = QAbstractSocket::IPv4Protocol); - bool initialize(int socketDescriptor, QAbstractSocket::SocketState socketState = QAbstractSocket::ConnectedState); + bool initialize(qintptr socketDescriptor, QAbstractSocket::SocketState socketState = QAbstractSocket::ConnectedState); - int socketDescriptor() const; + qintptr socketDescriptor() const; bool isValid() const; @@ -199,7 +199,7 @@ public: QNativeSocketEnginePrivate(); ~QNativeSocketEnginePrivate(); - int socketDescriptor; + qintptr socketDescriptor; QSocketNotifier *readNotifier, *writeNotifier, *exceptNotifier; diff --git a/src/network/socket/qnativesocketengine_win.cpp b/src/network/socket/qnativesocketengine_win.cpp index 5643314f17..ee15702b76 100644 --- a/src/network/socket/qnativesocketengine_win.cpp +++ b/src/network/socket/qnativesocketengine_win.cpp @@ -229,7 +229,7 @@ void QNativeSocketEnginePrivate::setPortAndAddress(sockaddr_in * sockAddrIPv4, q /*! \internal */ -static inline QAbstractSocket::SocketType qt_socket_getType(int socketDescriptor) +static inline QAbstractSocket::SocketType qt_socket_getType(qintptr socketDescriptor) { int value = 0; QT_SOCKLEN_T valueSize = sizeof(value); @@ -247,7 +247,7 @@ static inline QAbstractSocket::SocketType qt_socket_getType(int socketDescriptor /*! \internal */ -static inline int qt_socket_getMaxMsgSize(int socketDescriptor) +static inline int qt_socket_getMaxMsgSize(qintptr socketDescriptor) { int value = 0; QT_SOCKLEN_T valueSize = sizeof(value); diff --git a/src/network/socket/qsocks5socketengine.cpp b/src/network/socket/qsocks5socketengine.cpp index aafbdcb8bc..919bdea2e0 100644 --- a/src/network/socket/qsocks5socketengine.cpp +++ b/src/network/socket/qsocks5socketengine.cpp @@ -332,9 +332,9 @@ public: QSocks5BindStore(); ~QSocks5BindStore(); - void add(int socketDescriptor, QSocks5BindData *bindData); - bool contains(int socketDescriptor); - QSocks5BindData *retrieve(int socketDescriptor); + void add(qintptr socketDescriptor, QSocks5BindData *bindData); + bool contains(qintptr socketDescriptor); + QSocks5BindData *retrieve(qintptr socketDescriptor); protected: void timerEvent(QTimerEvent * event); @@ -360,7 +360,7 @@ QSocks5BindStore::~QSocks5BindStore() { } -void QSocks5BindStore::add(int socketDescriptor, QSocks5BindData *bindData) +void QSocks5BindStore::add(qintptr socketDescriptor, QSocks5BindData *bindData) { QMutexLocker lock(&mutex); if (store.contains(socketDescriptor)) { @@ -373,13 +373,13 @@ void QSocks5BindStore::add(int socketDescriptor, QSocks5BindData *bindData) sweepTimerId = startTimer(60000); } -bool QSocks5BindStore::contains(int socketDescriptor) +bool QSocks5BindStore::contains(qintptr socketDescriptor) { QMutexLocker lock(&mutex); return store.contains(socketDescriptor); } -QSocks5BindData *QSocks5BindStore::retrieve(int socketDescriptor) +QSocks5BindData *QSocks5BindStore::retrieve(qintptr socketDescriptor) { QMutexLocker lock(&mutex); if (!store.contains(socketDescriptor)) @@ -1018,7 +1018,7 @@ bool QSocks5SocketEngine::initialize(QAbstractSocket::SocketType type, QAbstract return true; } -bool QSocks5SocketEngine::initialize(int socketDescriptor, QAbstractSocket::SocketState socketState) +bool QSocks5SocketEngine::initialize(qintptr socketDescriptor, QAbstractSocket::SocketState socketState) { Q_D(QSocks5SocketEngine); @@ -1080,7 +1080,7 @@ void QSocks5SocketEngine::setProxy(const QNetworkProxy &networkProxy) d->proxyInfo = networkProxy; } -int QSocks5SocketEngine::socketDescriptor() const +qintptr QSocks5SocketEngine::socketDescriptor() const { Q_D(const QSocks5SocketEngine); return d->socketDescriptor; @@ -1448,7 +1448,7 @@ int QSocks5SocketEngine::accept() d->data->controlSocket->setParent(0); d->bindData->localAddress = d->localAddress; d->bindData->localPort = d->localPort; - int sd = d->socketDescriptor; + qintptr sd = d->socketDescriptor; socks5BindStore()->add(sd, d->bindData); d->data = 0; d->bindData = 0; @@ -1917,7 +1917,7 @@ QSocks5SocketEngineHandler::createSocketEngine(QAbstractSocket::SocketType socke return engine.take(); } -QAbstractSocketEngine *QSocks5SocketEngineHandler::createSocketEngine(int socketDescriptor, QObject *parent) +QAbstractSocketEngine *QSocks5SocketEngineHandler::createSocketEngine(qintptr socketDescriptor, QObject *parent) { QSOCKS5_DEBUG << "createSocketEngine" << socketDescriptor; if (socks5BindStore()->contains(socketDescriptor)) { diff --git a/src/network/socket/qsocks5socketengine_p.h b/src/network/socket/qsocks5socketengine_p.h index bc30afbb21..386e4856a1 100644 --- a/src/network/socket/qsocks5socketengine_p.h +++ b/src/network/socket/qsocks5socketengine_p.h @@ -70,11 +70,11 @@ public: ~QSocks5SocketEngine(); bool initialize(QAbstractSocket::SocketType type, QAbstractSocket::NetworkLayerProtocol protocol = QAbstractSocket::IPv4Protocol); - bool initialize(int socketDescriptor, QAbstractSocket::SocketState socketState = QAbstractSocket::ConnectedState); + bool initialize(qintptr socketDescriptor, QAbstractSocket::SocketState socketState = QAbstractSocket::ConnectedState); void setProxy(const QNetworkProxy &networkProxy); - int socketDescriptor() const; + qintptr socketDescriptor() const; bool isValid() const; @@ -261,7 +261,7 @@ public: bool readNotificationEnabled, writeNotificationEnabled, exceptNotificationEnabled; - int socketDescriptor; + qintptr socketDescriptor; QSocks5Data *data; QSocks5ConnectData *connectData; @@ -290,7 +290,7 @@ class Q_AUTOTEST_EXPORT QSocks5SocketEngineHandler : public QSocketEngineHandler public: virtual QAbstractSocketEngine *createSocketEngine(QAbstractSocket::SocketType socketType, const QNetworkProxy &, QObject *parent); - virtual QAbstractSocketEngine *createSocketEngine(int socketDescripter, QObject *parent); + virtual QAbstractSocketEngine *createSocketEngine(qintptr socketDescriptor, QObject *parent); }; diff --git a/src/network/socket/qtcpserver.cpp b/src/network/socket/qtcpserver.cpp index 7d278a8d15..857827facc 100644 --- a/src/network/socket/qtcpserver.cpp +++ b/src/network/socket/qtcpserver.cpp @@ -378,7 +378,7 @@ void QTcpServer::close() \sa setSocketDescriptor(), isListening() */ -int QTcpServer::socketDescriptor() const +qintptr QTcpServer::socketDescriptor() const { Q_D(const QTcpServer); Q_CHECK_SOCKETENGINE(-1); @@ -394,7 +394,7 @@ int QTcpServer::socketDescriptor() const \sa socketDescriptor(), isListening() */ -bool QTcpServer::setSocketDescriptor(int socketDescriptor) +bool QTcpServer::setSocketDescriptor(qintptr socketDescriptor) { Q_D(QTcpServer); if (isListening()) { @@ -566,7 +566,7 @@ QTcpSocket *QTcpServer::nextPendingConnection() \sa newConnection(), nextPendingConnection(), addPendingConnection() */ -void QTcpServer::incomingConnection(int socketDescriptor) +void QTcpServer::incomingConnection(qintptr socketDescriptor) { #if defined (QTCPSERVER_DEBUG) qDebug("QTcpServer::incomingConnection(%i)", socketDescriptor); diff --git a/src/network/socket/qtcpserver.h b/src/network/socket/qtcpserver.h index 4900ba89fe..a322294f58 100644 --- a/src/network/socket/qtcpserver.h +++ b/src/network/socket/qtcpserver.h @@ -76,8 +76,8 @@ public: quint16 serverPort() const; QHostAddress serverAddress() const; - int socketDescriptor() const; - bool setSocketDescriptor(int socketDescriptor); + qintptr socketDescriptor() const; + bool setSocketDescriptor(qintptr socketDescriptor); bool waitForNewConnection(int msec = 0, bool *timedOut = 0); virtual bool hasPendingConnections() const; @@ -92,7 +92,7 @@ public: #endif protected: - virtual void incomingConnection(int handle); + virtual void incomingConnection(qintptr handle); void addPendingConnection(QTcpSocket* socket); Q_SIGNALS: diff --git a/src/network/ssl/qsslsocket.cpp b/src/network/ssl/qsslsocket.cpp index e9ed484e3d..ef80dbdc54 100644 --- a/src/network/ssl/qsslsocket.cpp +++ b/src/network/ssl/qsslsocket.cpp @@ -455,7 +455,7 @@ void QSslSocket::connectToHostEncrypted(const QString &hostName, quint16 port, \sa socketDescriptor() */ -bool QSslSocket::setSocketDescriptor(int socketDescriptor, SocketState state, OpenMode openMode) +bool QSslSocket::setSocketDescriptor(qintptr socketDescriptor, SocketState state, OpenMode openMode) { Q_D(QSslSocket); #ifdef QSSLSOCKET_DEBUG diff --git a/src/network/ssl/qsslsocket.h b/src/network/ssl/qsslsocket.h index 0450bd3d09..9a0500cae4 100644 --- a/src/network/ssl/qsslsocket.h +++ b/src/network/ssl/qsslsocket.h @@ -87,7 +87,7 @@ public: // Autostarting the SSL client handshake. void connectToHostEncrypted(const QString &hostName, quint16 port, OpenMode mode = ReadWrite, NetworkLayerProtocol protocol = AnyIPProtocol); void connectToHostEncrypted(const QString &hostName, quint16 port, const QString &sslPeerName, OpenMode mode = ReadWrite, NetworkLayerProtocol protocol = AnyIPProtocol); - bool setSocketDescriptor(int socketDescriptor, SocketState state = ConnectedState, + bool setSocketDescriptor(qintptr socketDescriptor, SocketState state = ConnectedState, OpenMode openMode = ReadWrite); // ### Qt 5: Make virtual diff --git a/tests/auto/network/socket/qlocalsocket/tst_qlocalsocket.cpp b/tests/auto/network/socket/qlocalsocket/tst_qlocalsocket.cpp index c7dcd1a646..87cfaeed6c 100644 --- a/tests/auto/network/socket/qlocalsocket/tst_qlocalsocket.cpp +++ b/tests/auto/network/socket/qlocalsocket/tst_qlocalsocket.cpp @@ -264,7 +264,7 @@ void tst_QLocalSocket::socket_basic() QCOMPARE(socket.isValid(), false); QVERIFY(socket.readBufferSize() == 0); socket.setReadBufferSize(0); - //QCOMPARE(socket.socketDescriptor(), -1); + //QCOMPARE(socket.socketDescriptor(), (qintptr)-1); QCOMPARE(socket.state(), QLocalSocket::UnconnectedState); QCOMPARE(socket.waitForConnected(0), false); QCOMPARE(socket.waitForDisconnected(0), false); @@ -632,7 +632,7 @@ void tst_QLocalSocket::hitMaximumConnections() void tst_QLocalSocket::setSocketDescriptor() { LocalSocket socket; - quintptr minusOne = -1; + qintptr minusOne = -1; socket.setSocketDescriptor(minusOne, QLocalSocket::ConnectingState, QIODevice::Append); QCOMPARE(socket.socketDescriptor(), minusOne); QCOMPARE(socket.state(), QLocalSocket::ConnectingState); diff --git a/tests/auto/network/socket/qtcpserver/tst_qtcpserver.cpp b/tests/auto/network/socket/qtcpserver/tst_qtcpserver.cpp index 265b0658f4..0f4e60e258 100644 --- a/tests/auto/network/socket/qtcpserver/tst_qtcpserver.cpp +++ b/tests/auto/network/socket/qtcpserver/tst_qtcpserver.cpp @@ -191,7 +191,7 @@ void tst_QTcpServer::constructing() QCOMPARE(socket.serverAddress(), QHostAddress()); QCOMPARE(socket.maxPendingConnections(), 30); QCOMPARE(socket.hasPendingConnections(), false); - QCOMPARE(socket.socketDescriptor(), -1); + QCOMPARE(socket.socketDescriptor(), (qintptr)-1); QCOMPARE(socket.serverError(), QAbstractSocket::UnknownSocketError); // Check the state of the socket layer? @@ -510,7 +510,7 @@ public: bool ok; protected: - void incomingConnection(int socketDescriptor) + void incomingConnection(qintptr socketDescriptor) { // how a user woulddo it (qabstractsocketengine is not public) unsigned long arg = 0; diff --git a/tests/auto/network/socket/qtcpsocket/tst_qtcpsocket.cpp b/tests/auto/network/socket/qtcpsocket/tst_qtcpsocket.cpp index 457fae1a1b..9fbc99eec0 100644 --- a/tests/auto/network/socket/qtcpsocket/tst_qtcpsocket.cpp +++ b/tests/auto/network/socket/qtcpsocket/tst_qtcpsocket.cpp @@ -458,7 +458,7 @@ void tst_QTcpSocket::constructing() QCOMPARE((int) socket->bytesAvailable(), 0); QCOMPARE(socket->canReadLine(), false); QCOMPARE(socket->readLine(), QByteArray()); - QCOMPARE(socket->socketDescriptor(), -1); + QCOMPARE(socket->socketDescriptor(), (qintptr)-1); QCOMPARE((int) socket->localPort(), 0); QVERIFY(socket->localAddress() == QHostAddress()); QCOMPARE((int) socket->peerPort(), 0); @@ -538,9 +538,9 @@ void tst_QTcpSocket::bind() void tst_QTcpSocket::setInvalidSocketDescriptor() { QTcpSocket *socket = newSocket(); - QCOMPARE(socket->socketDescriptor(), -1); + QCOMPARE(socket->socketDescriptor(), (qintptr)-1); QVERIFY(!socket->setSocketDescriptor(-5, QTcpSocket::UnconnectedState)); - QCOMPARE(socket->socketDescriptor(), -1); + QCOMPARE(socket->socketDescriptor(), (qintptr)-1); QCOMPARE(socket->error(), QTcpSocket::UnsupportedSocketOperationError); @@ -577,17 +577,17 @@ void tst_QTcpSocket::setSocketDescriptor() QVERIFY(sock != INVALID_SOCKET); QTcpSocket *socket = newSocket(); QVERIFY(socket->setSocketDescriptor(sock, QTcpSocket::UnconnectedState)); - QCOMPARE(socket->socketDescriptor(), (int)sock); + QCOMPARE(socket->socketDescriptor(), (qintptr)sock); qt_qhostinfo_clear_cache(); //avoid the HostLookupState being skipped due to address being in cache from previous test. socket->connectToHost(QtNetworkSettings::serverName(), 143); QCOMPARE(socket->state(), QTcpSocket::HostLookupState); - QCOMPARE(socket->socketDescriptor(), (int)sock); + QCOMPARE(socket->socketDescriptor(), (qintptr)sock); QVERIFY(socket->waitForConnected(10000)); // skip this, it has been broken for years, see task 260735 // if somebody complains, consider fixing it, but it might break existing applications. QEXPECT_FAIL("", "bug has been around for years, will not fix without need", Continue); - QCOMPARE(socket->socketDescriptor(), (int)sock); + QCOMPARE(socket->socketDescriptor(), (qintptr)sock); delete socket; #ifdef Q_OS_WIN delete dummy; @@ -600,7 +600,7 @@ void tst_QTcpSocket::socketDescriptor() { QTcpSocket *socket = newSocket(); - QCOMPARE(socket->socketDescriptor(), -1); + QCOMPARE(socket->socketDescriptor(), (qintptr)-1); socket->connectToHost(QtNetworkSettings::serverName(), 143); QVERIFY((socket->state() == QAbstractSocket::HostLookupState && socket->socketDescriptor() == -1) || (socket->state() == QAbstractSocket::ConnectingState && socket->socketDescriptor() != -1)); @@ -1025,7 +1025,7 @@ void tst_QTcpSocket::openCloseOpenClose() QCOMPARE((int) socket->bytesAvailable(), 0); QCOMPARE(socket->canReadLine(), false); QCOMPARE(socket->readLine(), QByteArray()); - QCOMPARE(socket->socketDescriptor(), -1); + QCOMPARE(socket->socketDescriptor(), (qintptr)-1); QCOMPARE((int) socket->localPort(), 0); QVERIFY(socket->localAddress() == QHostAddress()); QCOMPARE((int) socket->peerPort(), 0); diff --git a/tests/auto/network/socket/qudpsocket/tst_qudpsocket.cpp b/tests/auto/network/socket/qudpsocket/tst_qudpsocket.cpp index cbcbe042ff..b51e24b9a5 100644 --- a/tests/auto/network/socket/qudpsocket/tst_qudpsocket.cpp +++ b/tests/auto/network/socket/qudpsocket/tst_qudpsocket.cpp @@ -195,7 +195,7 @@ void tst_QUdpSocket::constructing() QCOMPARE((int) socket.bytesAvailable(), 0); QCOMPARE(socket.canReadLine(), false); QCOMPARE(socket.readLine(), QByteArray()); - QCOMPARE(socket.socketDescriptor(), -1); + QCOMPARE(socket.socketDescriptor(), (qintptr)-1); QCOMPARE(socket.error(), QUdpSocket::UnknownSocketError); QCOMPARE(socket.errorString(), QString("Unknown error")); diff --git a/tests/auto/network/ssl/qsslsocket/tst_qsslsocket.cpp b/tests/auto/network/ssl/qsslsocket/tst_qsslsocket.cpp index f5a4f535d6..b6ec5d2610 100644 --- a/tests/auto/network/ssl/qsslsocket/tst_qsslsocket.cpp +++ b/tests/auto/network/ssl/qsslsocket/tst_qsslsocket.cpp @@ -396,7 +396,7 @@ void tst_QSslSocket::constructing() QCOMPARE(socket.peerPort(), quint16(0)); QCOMPARE(socket.proxy().type(), QNetworkProxy::DefaultProxy); QCOMPARE(socket.readBufferSize(), qint64(0)); - QCOMPARE(socket.socketDescriptor(), -1); + QCOMPARE(socket.socketDescriptor(), (qintptr)-1); QCOMPARE(socket.socketType(), QAbstractSocket::TcpSocket); QVERIFY(!socket.waitForConnected(10)); QTest::ignoreMessage(QtWarningMsg, "QSslSocket::waitForDisconnected() is not allowed in UnconnectedState"); -- cgit v1.2.3 From c355c300d92666c82c2f66c493329c783b8b9811 Mon Sep 17 00:00:00 2001 From: Albert Astals Cid Date: Thu, 5 Jan 2012 17:09:57 +0100 Subject: Use clipboard_timeout instead of hardcoded 5000 (since its the same value) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: Ia0edf04e36c8d30394a2bc9a691ab9aa78831f78 Reviewed-by: João Abecasis --- src/plugins/platforms/xcb/qxcbclipboard.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/plugins/platforms/xcb/qxcbclipboard.cpp b/src/plugins/platforms/xcb/qxcbclipboard.cpp index 0c6e52508b..7a69d20eec 100644 --- a/src/plugins/platforms/xcb/qxcbclipboard.cpp +++ b/src/plugins/platforms/xcb/qxcbclipboard.cpp @@ -208,7 +208,7 @@ QXcbClipboard::~QXcbClipboard() connection()->sync(); // waiting until the clipboard manager fetches the content. - if (!waitForClipboardEvent(m_owner, XCB_SELECTION_NOTIFY, 5000, true)) { + if (!waitForClipboardEvent(m_owner, XCB_SELECTION_NOTIFY, clipboard_timeout, true)) { qWarning("QClipboard: Unable to receive an event from the " "clipboard manager in a reasonable time"); } -- cgit v1.2.3 From c46654b3a5deb92f5ac2ce41be9d7a302dd04db5 Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Wed, 21 Dec 2011 11:34:07 +0100 Subject: Use Qt::TimerType on UNIX when scheduling timers As stated in the documentation for Qt::TimerType, we allow for up to 5% error for CoarseTimers (the default timer type). PreciseTimers are not adjusted at all, and VeryCoarseTimers fire with one-second accuracy. The objective is to make most timers wake up at the same time, thereby reducing CPU wakeups. Note that this changes makes it possible for timers to fire early, which may be unexpected for some applications. Such applications should use PreciseTimers explicitly. Author: Thiago Macieira Change-Id: Iaa70314c39a446adbc6dbb6fdfa7bafcd98a7283 Reviewed-by: Thiago Macieira --- src/corelib/kernel/qtimerinfo_unix.cpp | 251 ++++++++++++++++++++++++++++++++- src/corelib/kernel/qtimerinfo_unix_p.h | 10 +- 2 files changed, 254 insertions(+), 7 deletions(-) diff --git a/src/corelib/kernel/qtimerinfo_unix.cpp b/src/corelib/kernel/qtimerinfo_unix.cpp index 12cddde42b..1ffe12c656 100644 --- a/src/corelib/kernel/qtimerinfo_unix.cpp +++ b/src/corelib/kernel/qtimerinfo_unix.cpp @@ -47,6 +47,11 @@ #include "private/qobject_p.h" #include "private/qabstracteventdispatcher_p.h" +#ifdef QTIMERINFO_DEBUG +# include +# include +#endif + #include QT_BEGIN_NAMESPACE @@ -208,6 +213,167 @@ static timeval roundToMillisecond(timeval val) return normalizedTimeval(val); } +#ifdef QTIMERINFO_DEBUG +QDebug operator<<(QDebug s, timeval tv) +{ + s.nospace() << tv.tv_sec << "." << qSetFieldWidth(6) << qSetPadChar(QChar(48)) << tv.tv_usec << reset; + return s.space(); +} +QDebug operator<<(QDebug s, Qt::TimerType t) +{ + s << (t == Qt::PreciseTimer ? "P" : + t == Qt::CoarseTimer ? "C" : "VC"); + return s; +} +#endif + +static void calculateCoarseTimerTimeout(QTimerInfo *t, timeval currentTime) +{ + // The coarse timer works like this: + // - interval under 40 ms: round to even + // - between 40 and 99 ms: round to multiple of 4 + // - otherwise: try to wake up at a multiple of 25 ms, with a maximum error of 5% + // + // We try to wake up at the following second-fraction, in order of preference: + // 0 ms + // 500 ms + // 250 ms or 750 ms + // 200, 400, 600, 800 ms + // other multiples of 100 + // other multiples of 50 + // other multiples of 25 + // + // The objective is to make most timers wake up at the same time, thereby reducing CPU wakeups. + + register uint interval = uint(t->interval); + register uint msec = uint(t->timeout.tv_usec) / 1000; + Q_ASSERT(interval >= 20); + + // Calculate how much we can round and still keep within 5% error + uint absMaxRounding = interval / 20; + + if (interval < 100 && interval != 25 && interval != 50 && interval != 75) { + // special mode for timers of less than 100 ms + if (interval < 50) { + // round to even + // round towards multiples of 50 ms + register bool roundUp = (msec % 50) >= 25; + msec >>= 1; + msec |= uint(roundUp); + msec <<= 1; + } else { + // round to multiple of 4 + // round towards multiples of 100 ms + register bool roundUp = (msec % 100) >= 50; + msec >>= 2; + msec |= uint(roundUp); + msec <<= 2; + } + } else { + uint min = qMax(0, msec - absMaxRounding); + uint max = qMin(1000u, msec + absMaxRounding); + + // find the boundary that we want, according to the rules above + // extra rules: + // 1) whatever the interval, we'll take any round-to-the-second timeout + if (min == 0) { + msec = 0; + goto recalculate; + } else if (max == 1000) { + msec = 1000; + goto recalculate; + } + + uint wantedBoundaryMultiple; + + // 2) if the interval is a multiple of 500 ms and > 5000 ms, we'll always round + // towards a round-to-the-second + // 3) if the interval is a multiple of 500 ms, we'll round towards the nearest + // multiple of 500 ms + if ((interval % 500) == 0) { + if (interval >= 5000) { + msec = msec >= 500 ? max : min; + goto recalculate; + } else { + wantedBoundaryMultiple = 500; + } + } else if ((interval % 50) == 0) { + // 4) same for multiples of 250, 200, 100, 50 + uint mult50 = interval / 50; + if ((mult50 % 4) == 0) { + // multiple of 200 + wantedBoundaryMultiple = 200; + } else if ((mult50 % 2) == 0) { + // multiple of 100 + wantedBoundaryMultiple = 100; + } else if ((mult50 % 5) == 0) { + // multiple of 250 + wantedBoundaryMultiple = 250; + } else { + // multiple of 50 + wantedBoundaryMultiple = 50; + } + } else { + wantedBoundaryMultiple = 25; + } + + uint base = msec / wantedBoundaryMultiple * wantedBoundaryMultiple; + uint middlepoint = base + wantedBoundaryMultiple / 2; + if (msec < middlepoint) + msec = qMax(base, min); + else + msec = qMin(base + wantedBoundaryMultiple, max); + } + +recalculate: + if (msec == 1000u) { + ++t->timeout.tv_sec; + t->timeout.tv_usec = 0; + } else { + t->timeout.tv_usec = msec * 1000; + } + + if (t->timeout < currentTime) + t->timeout += interval; +} + +static void calculateNextTimeout(QTimerInfo *t, timeval currentTime) +{ + switch (t->timerType) { + case Qt::PreciseTimer: + case Qt::CoarseTimer: + t->expected += t->interval; + if (t->expected < currentTime) { + t->expected = currentTime; + t->expected += t->interval; + } + + t->timeout += t->interval; + if (t->timeout < currentTime) { + t->timeout = currentTime; + t->timeout += t->interval; + } + if (t->timerType == Qt::CoarseTimer) + calculateCoarseTimerTimeout(t, currentTime); + return; + + case Qt::VeryCoarseTimer: + // we don't need to take care of the microsecond component of t->interval + t->timeout.tv_sec += t->interval; + if (t->timeout.tv_sec <= currentTime.tv_sec) + t->timeout.tv_sec = currentTime.tv_sec + t->interval; + t->expected.tv_sec += t->interval; + return; + } + +#ifdef QTIMERINFO_DEBUG + if (t->timerType != Qt::PreciseTimer) + qDebug() << "timer" << t->timerType << hex << t->id << dec << "interval" << t->interval + << "originally expected at" << t->expected << "will fire at" << t->timeout + << "or" << (t->timeout - t->expected) << "s late"; +#endif +} + /* Returns the time to wait for the next timer, or null if no timers are waiting. @@ -247,11 +413,59 @@ void QTimerInfoList::registerTimer(int timerId, int interval, Qt::TimerType time t->id = timerId; t->interval = interval; t->timerType = timerType; - t->timeout = updateCurrentTime() + t->interval; + t->expected = updateCurrentTime() + interval; t->obj = object; t->activateRef = 0; + switch (timerType) { + case Qt::PreciseTimer: + // high precision timer is based on millisecond precision + // so no adjustment is necessary + t->timeout = t->expected; + break; + + case Qt::CoarseTimer: + // this timer has up to 5% coarseness + // so our boundaries are 20 ms and 20 s + // below 20 ms, 5% inaccuracy is below 1 ms, so we convert to high precision + // above 20 s, 5% inaccuracy is above 1 s, so we convert to VeryCoarseTimer + if (interval >= 20000) { + t->timerType = Qt::VeryCoarseTimer; + // fall through + } else { + t->timeout = t->expected; + if (interval <= 20) { + t->timerType = Qt::PreciseTimer; + // no adjustment is necessary + } else if (interval <= 20000) { + calculateCoarseTimerTimeout(t, currentTime); + } + break; + } + // fall through + case Qt::VeryCoarseTimer: + // the very coarse timer is based on full second precision, + // so we keep the interval in seconds (round to closest second) + t->interval /= 500; + t->interval += 1; + t->interval >>= 1; + t->timeout.tv_sec = currentTime.tv_sec + t->interval; + t->timeout.tv_usec = 0; + + // if we're past the half-second mark, increase the timeout again + if (currentTime.tv_usec > 500*1000) + ++t->timeout.tv_sec; + } + timerInsert(t); + +#ifdef QTIMERINFO_DEBUG + t->cumulativeError = 0; + t->count = 0; + if (t->timerType != Qt::PreciseTimer) + qDebug() << "timer" << t->timerType << hex <id << dec << "interval" << t->interval << "expected at" + << t->expected << "will fire first at" << t->timeout; +#endif } bool QTimerInfoList::unregisterTimer(int timerId) @@ -300,8 +514,13 @@ QList QTimerInfoList::registeredTimers(QObj QList list; for (int i = 0; i < count(); ++i) { register const QTimerInfo * const t = at(i); - if (t->obj == object) - list << QAbstractEventDispatcher::TimerInfo(t->id, t->interval, t->timerType); + if (t->obj == object) { + list << QAbstractEventDispatcher::TimerInfo(t->id, + (t->timerType == Qt::VeryCoarseTimer + ? t->interval * 1000 + : t->interval), + t->timerType); + } } return list; } @@ -318,6 +537,7 @@ int QTimerInfoList::activateTimers() firstTimerInfo = 0; timeval currentTime = updateCurrentTime(); + // qDebug() << "Thread" << QThread::currentThreadId() << "woken up at" << currentTime; repairTimersIfNeeded(); @@ -350,10 +570,28 @@ int QTimerInfoList::activateTimers() // remove from list removeFirst(); +#ifdef QTIMERINFO_DEBUG + float diff; + if (currentTime < currentTimerInfo->expected) { + // early + timeval early = currentTimerInfo->expected - currentTime; + diff = -(early.tv_sec + early.tv_usec / 1000000.0); + } else { + timeval late = currentTime - currentTimerInfo->expected; + diff = late.tv_sec + late.tv_usec / 1000000.0; + } + currentTimerInfo->cumulativeError += diff; + ++currentTimerInfo->count; + if (currentTimerInfo->timerType != Qt::PreciseTimer) + qDebug() << "timer" << currentTimerInfo->timerType << hex << currentTimerInfo->id << dec << "interval" + << currentTimerInfo->interval << "firing at" << currentTime + << "(orig" << currentTimerInfo->expected << "scheduled at" << currentTimerInfo->timeout + << ") off by" << diff << "activation" << currentTimerInfo->count + << "avg error" << (currentTimerInfo->cumulativeError / currentTimerInfo->count); +#endif + // determine next timeout time - currentTimerInfo->timeout += currentTimerInfo->interval; - if (currentTimerInfo->timeout < currentTime) - currentTimerInfo->timeout = currentTime + currentTimerInfo->interval; + calculateNextTimeout(currentTimerInfo, currentTime); // reinsert timer timerInsert(currentTimerInfo); @@ -373,6 +611,7 @@ int QTimerInfoList::activateTimers() } firstTimerInfo = 0; + // qDebug() << "Thread" << QThread::currentThreadId() << "activated" << n_act << "timers"; return n_act; } diff --git a/src/corelib/kernel/qtimerinfo_unix_p.h b/src/corelib/kernel/qtimerinfo_unix_p.h index cff02b6da8..c397703f58 100644 --- a/src/corelib/kernel/qtimerinfo_unix_p.h +++ b/src/corelib/kernel/qtimerinfo_unix_p.h @@ -53,6 +53,8 @@ // We mean it. // +// #define QTIMERINFO_DEBUG + #include "qabstracteventdispatcher.h" #include // struct timeval @@ -64,9 +66,15 @@ struct QTimerInfo { int id; // - timer identifier int interval; // - timer interval in milliseconds Qt::TimerType timerType; // - timer type - timeval timeout; // - when to sent event + timeval expected; // when timer is expected to fire + timeval timeout; // - when to actually fire QObject *obj; // - object to receive event QTimerInfo **activateRef; // - ref from activateTimers + +#ifdef QTIMERINFO_DEBUG + float cumulativeError; + uint count; +#endif }; class QTimerInfoList : public QList -- cgit v1.2.3 From 7023bb1d35a0c8f0a618f47065762f46465fc2df Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Thu, 5 Jan 2012 13:45:36 +0100 Subject: Do not always compile in QTimerInfoList::repairTimers() MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This function is never called on systems that are guaranteed to have a monotonic click (like Mac OS X). Remove the dead code from the library. Change-Id: I95852c8dffaa3a9747367f0abe4a4c62e4f86421 Reviewed-by: Thiago Macieira Reviewed-by: João Abecasis Reviewed-by: Robin Burchell Reviewed-by: Lars Knoll --- src/corelib/kernel/qtimerinfo_unix.cpp | 24 ++++++++++++------------ src/corelib/kernel/qtimerinfo_unix_p.h | 2 +- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/src/corelib/kernel/qtimerinfo_unix.cpp b/src/corelib/kernel/qtimerinfo_unix.cpp index 1ffe12c656..c9ffee50bf 100644 --- a/src/corelib/kernel/qtimerinfo_unix.cpp +++ b/src/corelib/kernel/qtimerinfo_unix.cpp @@ -147,6 +147,18 @@ bool QTimerInfoList::timeChanged(timeval *delta) return elapsedTimeTicks < ((qAbs(*delta) - tickGranularity) * 10); } +/* + repair broken timer +*/ +void QTimerInfoList::timerRepair(const timeval &diff) +{ + // repair all timers + for (int i = 0; i < size(); ++i) { + register QTimerInfo *t = at(i); + t->timeout = t->timeout + diff; + } +} + void QTimerInfoList::repairTimersIfNeeded() { if (QElapsedTimer::isMonotonic()) @@ -178,18 +190,6 @@ void QTimerInfoList::timerInsert(QTimerInfo *ti) insert(index+1, ti); } -/* - repair broken timer -*/ -void QTimerInfoList::timerRepair(const timeval &diff) -{ - // repair all timers - for (int i = 0; i < size(); ++i) { - register QTimerInfo *t = at(i); - t->timeout = t->timeout + diff; - } -} - inline timeval &operator+=(timeval &t1, int ms) { t1.tv_sec += ms / 1000; diff --git a/src/corelib/kernel/qtimerinfo_unix_p.h b/src/corelib/kernel/qtimerinfo_unix_p.h index c397703f58..89d4d457b0 100644 --- a/src/corelib/kernel/qtimerinfo_unix_p.h +++ b/src/corelib/kernel/qtimerinfo_unix_p.h @@ -86,6 +86,7 @@ class QTimerInfoList : public QList int msPerTick; bool timeChanged(timeval *delta); + void timerRepair(const timeval &); #endif // state variables used by activateTimers() @@ -102,7 +103,6 @@ public: bool timerWait(timeval &); void timerInsert(QTimerInfo *); - void timerRepair(const timeval &); void registerTimer(int timerId, int interval, Qt::TimerType timerType, QObject *object); bool unregisterTimer(int timerId); -- cgit v1.2.3 From 17cc46a9a73a419619f2c13f26ef228325aa4a85 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Mon, 2 Jan 2012 17:26:31 +0100 Subject: Add the roles to the dataChanged slot. This will allow the possibility of ignoring dataChange signals for roles which are not interesting to particular widgets. Change-Id: Ia7dcebd875f7b9fa90aa5e9bff7ef5ca9f381d55 Reviewed-by: David Faure --- src/widgets/itemviews/qdatawidgetmapper.cpp | 12 ++++++------ src/widgets/itemviews/qdatawidgetmapper.h | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/widgets/itemviews/qdatawidgetmapper.cpp b/src/widgets/itemviews/qdatawidgetmapper.cpp index 3574d63d1c..34699039c4 100644 --- a/src/widgets/itemviews/qdatawidgetmapper.cpp +++ b/src/widgets/itemviews/qdatawidgetmapper.cpp @@ -104,7 +104,7 @@ public: void populate(); // private slots - void _q_dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight); + void _q_dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QSet &); void _q_commitData(QWidget *); void _q_closeEditor(QWidget *, QAbstractItemDelegate::EndEditHint); void _q_modelDestroyed(); @@ -182,7 +182,7 @@ static bool qContainsIndex(const QModelIndex &idx, const QModelIndex &topLeft, && idx.column() >= topLeft.column() && idx.column() <= bottomRight.column(); } -void QDataWidgetMapperPrivate::_q_dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight) +void QDataWidgetMapperPrivate::_q_dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QSet &) { if (topLeft.parent() != rootIndex) return; // not in our hierarchy @@ -369,8 +369,8 @@ void QDataWidgetMapper::setModel(QAbstractItemModel *model) return; if (d->model) { - disconnect(d->model, SIGNAL(dataChanged(QModelIndex,QModelIndex)), this, - SLOT(_q_dataChanged(QModelIndex,QModelIndex))); + disconnect(d->model, SIGNAL(dataChanged(QModelIndex,QModelIndex,QSet)), this, + SLOT(_q_dataChanged(QModelIndex,QModelIndex,QSet))); disconnect(d->model, SIGNAL(destroyed()), this, SLOT(_q_modelDestroyed())); } @@ -380,8 +380,8 @@ void QDataWidgetMapper::setModel(QAbstractItemModel *model) d->model = model; - connect(model, SIGNAL(dataChanged(QModelIndex,QModelIndex)), - SLOT(_q_dataChanged(QModelIndex,QModelIndex))); + connect(model, SIGNAL(dataChanged(QModelIndex,QModelIndex,QSet)), + SLOT(_q_dataChanged(QModelIndex,QModelIndex,QSet))); connect(model, SIGNAL(destroyed()), SLOT(_q_modelDestroyed())); } diff --git a/src/widgets/itemviews/qdatawidgetmapper.h b/src/widgets/itemviews/qdatawidgetmapper.h index 36b208529c..5ffb666fbd 100644 --- a/src/widgets/itemviews/qdatawidgetmapper.h +++ b/src/widgets/itemviews/qdatawidgetmapper.h @@ -113,7 +113,7 @@ Q_SIGNALS: private: Q_DECLARE_PRIVATE(QDataWidgetMapper) Q_DISABLE_COPY(QDataWidgetMapper) - Q_PRIVATE_SLOT(d_func(), void _q_dataChanged(const QModelIndex &, const QModelIndex &)) + Q_PRIVATE_SLOT(d_func(), void _q_dataChanged(const QModelIndex &, const QModelIndex &, const QSet &)) Q_PRIVATE_SLOT(d_func(), void _q_commitData(QWidget *)) Q_PRIVATE_SLOT(d_func(), void _q_closeEditor(QWidget *, QAbstractItemDelegate::EndEditHint)) Q_PRIVATE_SLOT(d_func(), void _q_modelDestroyed()) -- cgit v1.2.3 From 1bc31fa43ddefe468c9f079156bfad0371e2a61b Mon Sep 17 00:00:00 2001 From: Sami Rosendahl Date: Thu, 5 Jan 2012 13:52:39 +0200 Subject: Fix memory leak in QDomDocument DTD notation declaration handler The created notation node's reference count needs to be decremented to 0 before it is added as a child, because appendChild will increment the reference count to correct value of 1. Also added autotest DTDNotationDecl to tst_qdom to expose the leak when executed under valgrind memcheck. There was no previous test coverage for the notation declarations in DTD. Task-number: QTBUG-22588 Change-Id: I876186d1277ceb4414f803b58b62f51cc1474367 Reviewed-by: Olivier Goffart --- src/xml/dom/qdom.cpp | 2 ++ tests/auto/xml/dom/qdom/tst_qdom.cpp | 24 ++++++++++++++++++++++++ 2 files changed, 26 insertions(+) diff --git a/src/xml/dom/qdom.cpp b/src/xml/dom/qdom.cpp index 10f48b1608..d8a7bc5b5a 100644 --- a/src/xml/dom/qdom.cpp +++ b/src/xml/dom/qdom.cpp @@ -7553,6 +7553,8 @@ bool QDomHandler::externalEntityDecl(const QString &name, const QString &publicI bool QDomHandler::notationDecl(const QString & name, const QString & publicId, const QString & systemId) { QDomNotationPrivate* n = new QDomNotationPrivate(doc, 0, name, publicId, systemId); + // keep the refcount balanced: appendChild() does a ref anyway. + n->ref.deref(); doc->doctype()->appendChild(n); return true; } diff --git a/tests/auto/xml/dom/qdom/tst_qdom.cpp b/tests/auto/xml/dom/qdom/tst_qdom.cpp index 44af4a03d8..38d2d76272 100644 --- a/tests/auto/xml/dom/qdom/tst_qdom.cpp +++ b/tests/auto/xml/dom/qdom/tst_qdom.cpp @@ -125,6 +125,7 @@ private slots: void taskQTBUG4595_dontAssertWhenDocumentSpecifiesUnknownEncoding() const; void cloneDTD_QTBUG8398() const; + void DTDNotationDecl(); void cleanupTestCase() const; @@ -1923,5 +1924,28 @@ void tst_QDom::cloneDTD_QTBUG8398() const domDocument2.save(stream, 0); QCOMPARE(output, expected); } + +void tst_QDom::DTDNotationDecl() +{ + QString dtd("\n" + "\n" + "\n" + "]>\n" + "\n"); + + QDomDocument domDocument; + QVERIFY(domDocument.setContent(dtd)); + + const QDomDocumentType doctype = domDocument.doctype(); + QCOMPARE(doctype.notations().size(), 2); + + QVERIFY(doctype.namedItem(QString("gif")).isNotation()); + QCOMPARE(doctype.namedItem(QString("gif")).toNotation().systemId(), QString("image/gif")); + + QVERIFY(doctype.namedItem(QString("jpeg")).isNotation()); + QCOMPARE(doctype.namedItem(QString("jpeg")).toNotation().systemId(), QString("image/jpeg")); +} + QTEST_MAIN(tst_QDom) #include "tst_qdom.moc" -- cgit v1.2.3 From d55cdcd59fdddd660193ddff40fbd52bef57c0c9 Mon Sep 17 00:00:00 2001 From: Sami Rosendahl Date: Thu, 5 Jan 2012 13:56:53 +0200 Subject: Fix memory leak in QDomDocument DTD entity declaration handler The created entity node's reference count needs to be decremented to 0 before it is added as a child, because appendChild will increment the reference count to correct value of 1. Also added autotest DTDEntityDecl to tst_qdom to expose the leak when executed under valgrind memcheck. There was no previous direct test case for unparsed entity declarations in DTD, only indirect coverage via regression test cloneDTD_QTBUG8398. Task-number: QTBUG-22587 Change-Id: I394ae9fc32d5b84e4ca287c5db4dd7effde6128b Reviewed-by: Olivier Goffart --- src/xml/dom/qdom.cpp | 2 ++ tests/auto/xml/dom/qdom/tst_qdom.cpp | 25 +++++++++++++++++++++++++ 2 files changed, 27 insertions(+) diff --git a/src/xml/dom/qdom.cpp b/src/xml/dom/qdom.cpp index d8a7bc5b5a..25638717a0 100644 --- a/src/xml/dom/qdom.cpp +++ b/src/xml/dom/qdom.cpp @@ -7541,6 +7541,8 @@ bool QDomHandler::unparsedEntityDecl(const QString &name, const QString &publicI { QDomEntityPrivate* e = new QDomEntityPrivate(doc, 0, name, publicId, systemId, notationName); + // keep the refcount balanced: appendChild() does a ref anyway. + e->ref.deref(); doc->doctype()->appendChild(e); return true; } diff --git a/tests/auto/xml/dom/qdom/tst_qdom.cpp b/tests/auto/xml/dom/qdom/tst_qdom.cpp index 38d2d76272..aa9e92b0a9 100644 --- a/tests/auto/xml/dom/qdom/tst_qdom.cpp +++ b/tests/auto/xml/dom/qdom/tst_qdom.cpp @@ -126,6 +126,7 @@ private slots: void taskQTBUG4595_dontAssertWhenDocumentSpecifiesUnknownEncoding() const; void cloneDTD_QTBUG8398() const; void DTDNotationDecl(); + void DTDEntityDecl(); void cleanupTestCase() const; @@ -1947,5 +1948,29 @@ void tst_QDom::DTDNotationDecl() QCOMPARE(doctype.namedItem(QString("jpeg")).toNotation().systemId(), QString("image/jpeg")); } +void tst_QDom::DTDEntityDecl() +{ + QString dtd("\n" + "\n" + "" + "]>\n" + "\n"); + + QDomDocument domDocument; + QVERIFY(domDocument.setContent(dtd)); + + const QDomDocumentType doctype = domDocument.doctype(); + QCOMPARE(doctype.entities().count(), 2); + + QVERIFY(doctype.namedItem(QString("secondFile")).isEntity()); + QCOMPARE(doctype.namedItem(QString("secondFile")).toEntity().systemId(), QString("second.xml")); + QCOMPARE(doctype.namedItem(QString("secondFile")).toEntity().notationName(), QString()); + + QVERIFY(doctype.namedItem(QString("logo")).isEntity()); + QCOMPARE(doctype.namedItem(QString("logo")).toEntity().systemId(), QString("http://www.w3c.org/logo.gif")); + QCOMPARE(doctype.namedItem(QString("logo")).toEntity().notationName(), QString("gif")); +} + QTEST_MAIN(tst_QDom) #include "tst_qdom.moc" -- cgit v1.2.3 From e6b9382ae2f6c8a6f83fa724168af467eed073cf Mon Sep 17 00:00:00 2001 From: Sami Rosendahl Date: Thu, 5 Jan 2012 15:48:12 +0200 Subject: Add regression test for QTBUG-22660 QHttpNetworkReply crashed in Qt4.7 and 4.8 if a HTTP server responded with gzip-encoded empty content without defining Content-Length in the response header. This commit adds the test for the problem as a regression test to Qt5. Change-Id: Iddfb970a31d92a66fd1dd524811cf54bb06e5157 Reviewed-by: Peter Hartmann --- .../access/qnetworkreply/tst_qnetworkreply.cpp | 23 ++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp b/tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp index b7ba7f061e..6ed241175d 100644 --- a/tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp +++ b/tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp @@ -369,6 +369,7 @@ private Q_SLOTS: void qtbug15311doubleContentLength(); void qtbug18232gzipContentLengthZero(); + void qtbug22660gzipNoContentLengthEmptyContent(); void synchronousRequest_data(); void synchronousRequest(); @@ -6363,6 +6364,28 @@ void tst_QNetworkReply::qtbug18232gzipContentLengthZero() QCOMPARE(reply->readAll(), QByteArray()); } +// Reproduced a crash in QHttpNetworkReplyPrivate::gunzipBodyPartiallyEnd +// where zlib inflateEnd was called for uninitialized zlib stream +void tst_QNetworkReply::qtbug22660gzipNoContentLengthEmptyContent() +{ + // Response with no Content-Length in header and empty content + QByteArray response("HTTP/1.0 200 OK\r\nContent-Encoding: gzip\r\n\r\n"); + MiniHttpServer server(response); + server.doClose = true; + + QNetworkRequest request(QUrl("http://localhost:" + QString::number(server.serverPort()))); + QNetworkReplyPtr reply = manager.get(request); + + connect(reply, SIGNAL(finished()), &QTestEventLoop::instance(), SLOT(exitLoop())); + QTestEventLoop::instance().enterLoop(10); + QVERIFY(!QTestEventLoop::instance().timeout()); + QVERIFY(reply->isFinished()); + QCOMPARE(reply->error(), QNetworkReply::NoError); + QCOMPARE(reply->size(), qint64(0)); + QVERIFY(!reply->header(QNetworkRequest::ContentLengthHeader).isValid()); + QCOMPARE(reply->readAll(), QByteArray()); +} + void tst_QNetworkReply::synchronousRequest_data() { QTest::addColumn("url"); -- cgit v1.2.3 From db0361e9b1d6e9dc83e3b47842508ab45e32245d Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Fri, 6 Jan 2012 15:44:02 +1000 Subject: Remove redundant class from QStringMatcher test. The removed class was evidently attempting to promote protected members of its base class to public, but the way this was done doesn't work and doing so wasn't actually necessary for the test. Change-Id: I15e0c31891da08cacee1054e15596a79a058b466 Reviewed-by: Rohan McGovern --- .../corelib/tools/qstringmatcher/tst_qstringmatcher.cpp | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/tests/auto/corelib/tools/qstringmatcher/tst_qstringmatcher.cpp b/tests/auto/corelib/tools/qstringmatcher/tst_qstringmatcher.cpp index 8b23fa6efd..10906902ff 100644 --- a/tests/auto/corelib/tools/qstringmatcher/tst_qstringmatcher.cpp +++ b/tests/auto/corelib/tools/qstringmatcher/tst_qstringmatcher.cpp @@ -56,15 +56,9 @@ private slots: void assignOperator(); }; -// Subclass that exposes the protected functions. -class SubQStringMatcher : public QStringMatcher -{ -public: -}; - void tst_QStringMatcher::qstringmatcher() { - SubQStringMatcher matcher; + QStringMatcher matcher; QCOMPARE(matcher.caseSensitivity(), Qt::CaseSensitive); QCOMPARE(matcher.indexIn("foo", 1), 1); QCOMPARE(matcher.pattern(), QString()); @@ -73,7 +67,7 @@ void tst_QStringMatcher::qstringmatcher() // public Qt::CaseSensitivity caseSensitivity() const void tst_QStringMatcher::caseSensitivity() { - SubQStringMatcher matcher; + QStringMatcher matcher; matcher.setCaseSensitivity(Qt::CaseSensitive); QCOMPARE(matcher.caseSensitivity(), Qt::CaseSensitive); @@ -106,7 +100,7 @@ void tst_QStringMatcher::indexIn() QFETCH(int, from); QFETCH(int, indexIn); - SubQStringMatcher matcher; + QStringMatcher matcher; matcher.setPattern(needle); QCOMPARE(matcher.indexIn(haystack, from), indexIn); @@ -133,7 +127,7 @@ void tst_QStringMatcher::setCaseSensitivity() QFETCH(int, indexIn); QFETCH(int, cs); - SubQStringMatcher matcher; + QStringMatcher matcher; matcher.setPattern(needle); matcher.setCaseSensitivity(static_cast (cs)); -- cgit v1.2.3 From d0f74e5dd9a5e8caf4d86108e266a30e334d213a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20R=C3=B8dal?= Date: Wed, 4 Jan 2012 14:57:38 +0100 Subject: Added xrender as a dependency to build glxconvenience. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Prevents build errors when xrender is not present. Change-Id: Ib80d52109dd0bcd63ba865c5f6e143961f3c20e6 Reviewed-by: Jørgen Lind --- configure | 20 +++++++++++++++++++- .../glxconvenience/glxconvenience.pri | 2 +- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/configure b/configure index e47fcedb4f..9288de5d93 100755 --- a/configure +++ b/configure @@ -6081,6 +6081,24 @@ if [ "$PLATFORM_QPA" = "yes" ]; then QT_CONFIG="$QT_CONFIG xlib" fi + # auto-detect Xrender support + if [ "$CFG_XRENDER" != "no" ]; then + if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/x11/xrender "Xrender" $L_FLAGS $I_FLAGS $l_FLAGS $X11TESTS_FLAGS; then + CFG_XRENDER=yes + QT_CONFIG="$QT_CONFIG xrender" + else + if [ "$CFG_XRENDER" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then + echo "Xrender support cannot be enabled due to functionality tests!" + echo " Turn on verbose messaging (-v) to $0 to see the final report." + echo " If you believe this message is in error you may use the continue" + echo " switch (-continue) to $0 to continue." + exit 101 + else + CFG_XRENDER=no + fi + fi + fi + if [ "$CFG_XCB" != "no" ]; then if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/qpa/xcb "xcb" $L_FLAGS $I_FLAGS $l_FLAGS; then CFG_XCB=yes @@ -8323,7 +8341,6 @@ if [ "$PLATFORM_X11" = "yes" ]; then echo "Xcursor support ........ $CFG_XCURSOR" echo "Xfixes support ......... $CFG_XFIXES" echo "Xrandr support ......... $CFG_XRANDR" - echo "Xrender support ........ $CFG_XRENDER" echo "Xi support ............. $CFG_XINPUT" echo "MIT-SHM support ........ $CFG_MITSHM" echo "FontConfig support ..... $CFG_FONTCONFIG" @@ -8359,6 +8376,7 @@ if [ "$CFG_XCB_LIMITED" = "yes" ] && [ "$CFG_XCB" = "yes" ]; then else echo "Xcb support ............ $CFG_XCB" fi +echo "Xrender support ........ $CFG_XRENDER" if [ "$XPLATFORM_MAEMO" = "yes" ] && [ "$CFG_XCB" = "yes" ]; then echo "XInput2 support ........ $CFG_XINPUT2" fi diff --git a/src/platformsupport/glxconvenience/glxconvenience.pri b/src/platformsupport/glxconvenience/glxconvenience.pri index bbca6b2460..3632f45b54 100644 --- a/src/platformsupport/glxconvenience/glxconvenience.pri +++ b/src/platformsupport/glxconvenience/glxconvenience.pri @@ -1,4 +1,4 @@ -contains(QT_CONFIG,xlib) { +contains(QT_CONFIG,xlib):contains(QT_CONFIG,xrender) { contains(QT_CONFIG,opengl):!contains(QT_CONFIG,opengles2) { LIBS += $$QMAKE_LIBS_X11 -lXrender HEADERS += $$PWD/qglxconvenience_p.h -- cgit v1.2.3 From dfa6ac160f3bbb53cd62c4b49684e5a2ee4b4cbd Mon Sep 17 00:00:00 2001 From: Frederik Gladhorn Date: Thu, 5 Jan 2012 22:01:38 +0100 Subject: Update docs. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: Icd8cbcde6893cc0ee5e7df18b219513cdbc0b2da Reviewed-by: Jan-Arve Sæther --- src/gui/accessible/qaccessible.cpp | 69 ++++++++++---------------------------- 1 file changed, 18 insertions(+), 51 deletions(-) diff --git a/src/gui/accessible/qaccessible.cpp b/src/gui/accessible/qaccessible.cpp index 8556126de0..ad88904ef7 100644 --- a/src/gui/accessible/qaccessible.cpp +++ b/src/gui/accessible/qaccessible.cpp @@ -118,28 +118,6 @@ QT_BEGIN_NAMESPACE \sa QAccessibleInterface */ -/*! - \enum QAccessible::Action - - This enum describes the possible types of action that can occur. - - \value DefaultAction - \value Press - \value SetFocus - \value Increase - \value Decrease - \value Accept - \value Cancel - \value Select - \value ClearSelection - \value RemoveSelection - \value ExtendSelection - \value AddToSelection - - \value FirstStandardAction - \value LastStandardAction -*/ - /*! \enum QAccessible::Method @@ -838,12 +816,10 @@ void QAccessible::updateAccessibility(QObject *o, int who, Event reason) */ /*! - \fn QAccessible::Relation QAccessibleInterface::relationTo(int child, -const QAccessibleInterface *other, int otherChild) const + \fn QAccessible::Relation QAccessibleInterface::relationTo(const QAccessibleInterface *other) const - Returns the relationship between this object's \a child and the \a - other object's \a otherChild. If \a child is 0 the object's own relation - is returned. + Returns the relationship between this object and the \a + other object. The returned value indicates the relation of the called object to the \a other object, e.g. if this object is a label for \a other @@ -916,8 +892,7 @@ QVector > QAccessibleInterfa */ /*! - \fn int QAccessibleInterface::navigate(RelationFlag relation, int entry, QAccessibleInterface -**target) const + \fn int QAccessibleInterface::navigate(RelationFlag relation, int entry, QAccessibleInterface **target) const Navigates from this object to an object that has a relationship \a relation to this object, and returns the respective object in @@ -960,10 +935,9 @@ QVector > QAccessibleInterfa */ /*! - \fn QString QAccessibleInterface::text(Text t, int child) const + \fn QString QAccessibleInterface::text(Text t) const - Returns the value of the text property \a t of the object, or of - the object's child if \a child is not 0. + Returns the value of the text property \a t of the object. The \l Name is a string used by clients to identify, find, or announce an accessible object for the user. All objects must have @@ -1003,10 +977,9 @@ QVector > QAccessibleInterfa */ /*! - \fn void QAccessibleInterface::setText(Text t, int child, const QString &text) + \fn void QAccessibleInterface::setText(Text t, const QString &text) - Sets the text property \a t of the object, or of the object's - child if \a child is not 0, to \a text. + Sets the text property \a t of the object. Note that the text properties of most objects are read-only. @@ -1014,10 +987,9 @@ QVector > QAccessibleInterfa */ /*! - \fn QRect QAccessibleInterface::rect(int child) const + \fn QRect QAccessibleInterface::rect() const - Returns the geometry of the object, or of the object's child if \a child - is not 0. The geometry is in screen coordinates. + Returns the geometry of the object. The geometry is in screen coordinates. This function is only reliable for visible objects (invisible objects might not be laid out correctly). @@ -1028,10 +1000,10 @@ QVector > QAccessibleInterfa */ /*! - \fn QAccessible::Role QAccessibleInterface::role(int child) const + \fn QAccessible::Role QAccessibleInterface::role() const - Returns the role of the object, or of the object's child if \a child - is not 0. The role of an object is usually static. + Returns the role of the object. + The role of an object is usually static. All accessible objects have a role. @@ -1039,10 +1011,10 @@ QVector > QAccessibleInterfa */ /*! - \fn QAccessible::State QAccessibleInterface::state(int child) const + \fn QAccessible::State QAccessibleInterface::state() const - Returns the current state of the object, or of the object's child if - \a child is not 0. The returned value is a combination of the flags in + Returns the current state of the object. + The returned value is a combination of the flags in the QAccessible::StateFlag enumeration. All accessible objects have a state. @@ -1092,7 +1064,7 @@ QColor QAccessibleInterface::backgroundColor() const */ /*! - \fn QAccessibleTable2Interface *QAccessibleInterface::table2Interface() + \fn QAccessibleTableInterface *QAccessibleInterface::tableInterface() \internal */ @@ -1131,16 +1103,11 @@ QColor QAccessibleInterface::backgroundColor() const */ /*! - \fn QAccessibleEvent::QAccessibleEvent(Type type, int child) + \fn QAccessibleEvent::QAccessibleEvent(Type type) Constructs an accessibility event of the given \a type, which must be QEvent::AccessibilityDescription or QEvent::AccessibilityHelp. - - \a child is the (1-based) index of the child to which the request - applies. If \a child is 0, the request is for the widget itself. - - \sa child() */ /*! -- cgit v1.2.3 From 41af951eef5f596992fff62a4c29f8facb0c2de2 Mon Sep 17 00:00:00 2001 From: Frederik Gladhorn Date: Thu, 1 Dec 2011 20:14:48 +0100 Subject: Remove Cursor functions from invokeMethod. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cursor position is handled by the text interface. This was a binary compatibility hack in Qt 4. Change-Id: I45520e6942a490834f6e9346a4c173300a9bf7a9 Reviewed-by: Jan-Arve Sæther --- src/gui/accessible/qaccessible.h | 4 +--- .../accessible/widgets/qaccessiblewidgets.cpp | 20 -------------------- src/plugins/accessible/widgets/qaccessiblewidgets.h | 1 - src/plugins/accessible/widgets/simplewidgets.cpp | 20 -------------------- src/plugins/accessible/widgets/simplewidgets.h | 1 - 5 files changed, 1 insertion(+), 45 deletions(-) diff --git a/src/gui/accessible/qaccessible.h b/src/gui/accessible/qaccessible.h index 7ccd379138..37071bcdaf 100644 --- a/src/gui/accessible/qaccessible.h +++ b/src/gui/accessible/qaccessible.h @@ -298,9 +298,7 @@ public: Q_DECLARE_FLAGS(Relation, RelationFlag) enum Method { - ListSupportedMethods = 0, - SetCursorPosition = 1, - GetCursorPosition = 2 + ListSupportedMethods = 0 }; enum InterfaceType diff --git a/src/plugins/accessible/widgets/qaccessiblewidgets.cpp b/src/plugins/accessible/widgets/qaccessiblewidgets.cpp index 98b88b5917..f1c8540806 100644 --- a/src/plugins/accessible/widgets/qaccessiblewidgets.cpp +++ b/src/plugins/accessible/widgets/qaccessiblewidgets.cpp @@ -282,26 +282,6 @@ void QAccessibleTextEdit::setText(QAccessible::Text t, const QString &text) textEdit()->setText(text); } -QVariant QAccessibleTextEdit::invokeMethod(QAccessible::Method method, - const QVariantList ¶ms) -{ - switch (method) { - case QAccessible::ListSupportedMethods: { - QSet set; - set << QAccessible::ListSupportedMethods << QAccessible::SetCursorPosition << QAccessible::GetCursorPosition; - return QVariant::fromValue(set | qvariant_cast >( - QAccessibleWidget::invokeMethod(method, params))); - } - case QAccessible::SetCursorPosition: - setCursorPosition(params.value(0).toInt()); - return true; - case QAccessible::GetCursorPosition: - return textEdit()->textCursor().position(); - default: - return QAccessibleWidget::invokeMethod(method, params); - } -} - void *QAccessibleTextEdit::interface_cast(QAccessible::InterfaceType t) { if (t == QAccessible::TextInterface) diff --git a/src/plugins/accessible/widgets/qaccessiblewidgets.h b/src/plugins/accessible/widgets/qaccessiblewidgets.h index 1beeae849b..5fce7464ff 100644 --- a/src/plugins/accessible/widgets/qaccessiblewidgets.h +++ b/src/plugins/accessible/widgets/qaccessiblewidgets.h @@ -75,7 +75,6 @@ public: QString text(QAccessible::Text t) const; void setText(QAccessible::Text t, const QString &text); - QVariant invokeMethod(QAccessible::Method method, const QVariantList ¶ms); void *interface_cast(QAccessible::InterfaceType t); // QAccessibleTextInterface diff --git a/src/plugins/accessible/widgets/simplewidgets.cpp b/src/plugins/accessible/widgets/simplewidgets.cpp index a9145254bd..86257f7a26 100644 --- a/src/plugins/accessible/widgets/simplewidgets.cpp +++ b/src/plugins/accessible/widgets/simplewidgets.cpp @@ -601,26 +601,6 @@ QAccessible::State QAccessibleLineEdit::state() const return state; } -QVariant QAccessibleLineEdit::invokeMethod(QAccessible::Method method, - const QVariantList ¶ms) -{ - switch (method) { - case QAccessible::ListSupportedMethods: { - QSet set; - set << QAccessible::ListSupportedMethods << QAccessible::SetCursorPosition << QAccessible::GetCursorPosition; - return QVariant::fromValue(set | qvariant_cast >( - QAccessibleWidget::invokeMethod(method, params))); - } - case QAccessible::SetCursorPosition: - setCursorPosition(params.value(0).toInt()); - return true; - case QAccessible::GetCursorPosition: - return cursorPosition(); - default: - return QAccessibleWidget::invokeMethod(method, params); - } -} - void *QAccessibleLineEdit::interface_cast(QAccessible::InterfaceType t) { if (t == QAccessible::TextInterface) diff --git a/src/plugins/accessible/widgets/simplewidgets.h b/src/plugins/accessible/widgets/simplewidgets.h index 05feca2877..2ab18909e8 100644 --- a/src/plugins/accessible/widgets/simplewidgets.h +++ b/src/plugins/accessible/widgets/simplewidgets.h @@ -124,7 +124,6 @@ public: QString text(QAccessible::Text t) const; void setText(QAccessible::Text t, const QString &text); QAccessible::State state() const; - QVariant invokeMethod(QAccessible::Method method, const QVariantList ¶ms); void *interface_cast(QAccessible::InterfaceType t); // QAccessibleTextInterface -- cgit v1.2.3 From c9ee64d8b7756679c4f8d3a8739ccb379e215e9a Mon Sep 17 00:00:00 2001 From: Sergio Ahumada Date: Wed, 4 Jan 2012 22:21:48 +0100 Subject: Remove qttest_p4.prf file qttest_p4.prf was added as a convenience for Qt's own autotests in Qt4. It enables various crufty undocumented magic, of dubious value. Stop using it, and explicitly enable the things from it which we want. Most autotest .pro files should look like this: CONFIG += testcase TARGET = tst_something QT = core testlib SOURCES = tst_something.cpp Change-Id: I051b230c5c4fd56dc6eae2b9b7bdff6c033248fd Reviewed-by: Rohan McGovern Reviewed-by: Bradley T. Hughes --- dist/changes-5.0.0 | 4 ++++ mkspecs/features/qttest_p4.prf | 13 ------------- 2 files changed, 4 insertions(+), 13 deletions(-) delete mode 100644 mkspecs/features/qttest_p4.prf diff --git a/dist/changes-5.0.0 b/dist/changes-5.0.0 index 436b99f612..46f4478dbb 100644 --- a/dist/changes-5.0.0 +++ b/dist/changes-5.0.0 @@ -260,6 +260,10 @@ Qt for Windows CE - Build System + * Remove qttest_p4.prf file. From now on we should explicitly enable the + things from it which we want. Autotest .pro files should stop using + 'load(qttest_p4)' and start using 'CONFIG+=testcase' instead. + - Assistant - Designer diff --git a/mkspecs/features/qttest_p4.prf b/mkspecs/features/qttest_p4.prf deleted file mode 100644 index 1712e94660..0000000000 --- a/mkspecs/features/qttest_p4.prf +++ /dev/null @@ -1,13 +0,0 @@ -isEmpty(TEMPLATE):TEMPLATE=app -CONFIG += qt warn_on console depend_includepath testcase - -qtAddLibrary(QtTest) - -# prefix test binary with tst_ -!contains(TARGET, ^tst_.*):TARGET = $$join(TARGET,,"tst_") - -isEmpty(target.path) { - target.path += $$[QT_INSTALL_PREFIX]/tests/qt4/$${TARGET} -} - -INSTALLS += target -- cgit v1.2.3 From c25d147c4304ef85653f628259b2fa4846e1c29f Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Fri, 6 Jan 2012 10:02:46 +0100 Subject: Windows: Fix compiler warnings in accessibility. Change-Id: Id9ffe1069116f25b89df85337a75dae54b5beec5 Reviewed-by: Friedemann Kleint Reviewed-by: Andriy Golovnya --- src/plugins/platforms/windows/qwindowsaccessibility.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/plugins/platforms/windows/qwindowsaccessibility.cpp b/src/plugins/platforms/windows/qwindowsaccessibility.cpp index 1455d7af86..73006a5ff9 100644 --- a/src/plugins/platforms/windows/qwindowsaccessibility.cpp +++ b/src/plugins/platforms/windows/qwindowsaccessibility.cpp @@ -1126,6 +1126,8 @@ HRESULT STDMETHODCALLTYPE QWindowsAccessible::put_accValue(VARIANT, BSTR) // moz: [important] HRESULT STDMETHODCALLTYPE QWindowsAccessible::accSelect(long flagsSelect, VARIANT varID) { + Q_UNUSED(flagsSelect); + Q_UNUSED(varID); showDebug(__FUNCTION__, accessible); if (!accessible->isValid()) return E_FAIL; -- cgit v1.2.3 From b328e36e41dc0c529c897fe845c53be1d39424be Mon Sep 17 00:00:00 2001 From: Richard Moore Date: Tue, 3 Jan 2012 14:08:03 +0000 Subject: Add a new QT_NO_SSL feature macro. At the moment users of Qt must detect if it was compiled with SSL support by testing for QT_NO_OPENSSL. This means that any code that is conditionally compiled this way is tied to the presence of the openssl backend. This commit makes it possible to implement new SSL backends during the Qt5 lifetime without breaking this code. People can still test for QT_NO_OPENSSL if they really need openssl, but if they simply want to know if there's SSL support at all they should use this define instead. In addition, this commit changes the public API headers to use the new define. Change-Id: Ib57a71aa65836ac9351f120a487bfeb8009d9515 Reviewed-by: Peter Hartmann --- configure | 2 +- configure.exe | Bin 1150464 -> 1115648 bytes src/network/ssl/qsslcertificate.h | 4 ++-- src/network/ssl/qsslcertificateextension.h | 4 ++-- src/network/ssl/qsslcipher.h | 4 ++-- src/network/ssl/qsslconfiguration.h | 4 ++-- src/network/ssl/qsslerror.h | 4 ++-- src/network/ssl/qsslkey.h | 4 ++-- src/network/ssl/qsslsocket.h | 6 +++--- tools/configure/configureapp.cpp | 5 ++++- 10 files changed, 20 insertions(+), 17 deletions(-) diff --git a/configure b/configure index 9288de5d93..ce8f99c056 100755 --- a/configure +++ b/configure @@ -7790,7 +7790,7 @@ QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_STYLE_S60" [ "$CFG_INOTIFY" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_INOTIFY" [ "$CFG_NAS" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_NAS" [ "$CFG_NIS" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_NIS" -[ "$CFG_OPENSSL" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_OPENSSL" +[ "$CFG_OPENSSL" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_OPENSSL QT_NO_SSL" [ "$CFG_OPENSSL" = "linked" ]&& QCONFIG_FLAGS="$QCONFIG_FLAGS QT_LINKED_OPENSSL" [ "$CFG_SM" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_SESSIONMANAGER" diff --git a/configure.exe b/configure.exe index 6048dc5708..e27966e3cd 100644 Binary files a/configure.exe and b/configure.exe differ diff --git a/src/network/ssl/qsslcertificate.h b/src/network/ssl/qsslcertificate.h index 22721ad6b9..3aa7075eb3 100644 --- a/src/network/ssl/qsslcertificate.h +++ b/src/network/ssl/qsslcertificate.h @@ -58,7 +58,7 @@ QT_BEGIN_NAMESPACE QT_MODULE(Network) -#ifndef QT_NO_OPENSSL +#ifndef QT_NO_SSL class QDateTime; class QIODevice; @@ -152,7 +152,7 @@ Q_NETWORK_EXPORT QDebug operator<<(QDebug debug, const QSslCertificate &certific Q_NETWORK_EXPORT QDebug operator<<(QDebug debug, QSslCertificate::SubjectInfo info); #endif -#endif // QT_NO_OPENSSL +#endif // QT_NO_SSL QT_END_NAMESPACE diff --git a/src/network/ssl/qsslcertificateextension.h b/src/network/ssl/qsslcertificateextension.h index 200ae3e091..6c1d219a3b 100644 --- a/src/network/ssl/qsslcertificateextension.h +++ b/src/network/ssl/qsslcertificateextension.h @@ -53,7 +53,7 @@ QT_BEGIN_NAMESPACE QT_MODULE(Network) -#ifndef QT_NO_OPENSSL +#ifndef QT_NO_SSL class QSslCertificateExtensionPrivate; @@ -78,7 +78,7 @@ private: QSharedDataPointer d; }; -#endif // QT_NO_OPENSSL +#endif // QT_NO_SSL QT_END_NAMESPACE diff --git a/src/network/ssl/qsslcipher.h b/src/network/ssl/qsslcipher.h index 112b7753a7..8d58fa50ba 100644 --- a/src/network/ssl/qsslcipher.h +++ b/src/network/ssl/qsslcipher.h @@ -53,7 +53,7 @@ QT_BEGIN_NAMESPACE QT_MODULE(Network) -#ifndef QT_NO_OPENSSL +#ifndef QT_NO_SSL class QSslCipherPrivate; class Q_NETWORK_EXPORT QSslCipher @@ -88,7 +88,7 @@ class QDebug; Q_NETWORK_EXPORT QDebug operator<<(QDebug debug, const QSslCipher &cipher); #endif -#endif // QT_NO_OPENSSL +#endif // QT_NO_SSL QT_END_NAMESPACE diff --git a/src/network/ssl/qsslconfiguration.h b/src/network/ssl/qsslconfiguration.h index 961c821ffc..37df073ae9 100644 --- a/src/network/ssl/qsslconfiguration.h +++ b/src/network/ssl/qsslconfiguration.h @@ -67,7 +67,7 @@ QT_BEGIN_NAMESPACE QT_MODULE(Network) -#ifndef QT_NO_OPENSSL +#ifndef QT_NO_SSL template class QList; class QSslCertificate; @@ -132,7 +132,7 @@ private: QSharedDataPointer d; }; -#endif // QT_NO_OPENSSL +#endif // QT_NO_SSL QT_END_NAMESPACE diff --git a/src/network/ssl/qsslerror.h b/src/network/ssl/qsslerror.h index 552d91da48..0bdc230b2e 100644 --- a/src/network/ssl/qsslerror.h +++ b/src/network/ssl/qsslerror.h @@ -52,7 +52,7 @@ QT_BEGIN_NAMESPACE QT_MODULE(Network) -#ifndef QT_NO_OPENSSL +#ifndef QT_NO_SSL class QSslErrorPrivate; class Q_NETWORK_EXPORT QSslError @@ -115,7 +115,7 @@ Q_NETWORK_EXPORT QDebug operator<<(QDebug debug, const QSslError &error); Q_NETWORK_EXPORT QDebug operator<<(QDebug debug, const QSslError::SslError &error); #endif -#endif // QT_NO_OPENSSL +#endif // QT_NO_SSL QT_END_NAMESPACE diff --git a/src/network/ssl/qsslkey.h b/src/network/ssl/qsslkey.h index eadb79dabe..d7d52fa992 100644 --- a/src/network/ssl/qsslkey.h +++ b/src/network/ssl/qsslkey.h @@ -54,7 +54,7 @@ QT_BEGIN_NAMESPACE QT_MODULE(Network) -#ifndef QT_NO_OPENSSL +#ifndef QT_NO_SSL template struct QPair; @@ -103,7 +103,7 @@ class QDebug; Q_NETWORK_EXPORT QDebug operator<<(QDebug debug, const QSslKey &key); #endif -#endif // QT_NO_OPENSSL +#endif // QT_NO_SSL QT_END_NAMESPACE diff --git a/src/network/ssl/qsslsocket.h b/src/network/ssl/qsslsocket.h index 9a0500cae4..7dc888b155 100644 --- a/src/network/ssl/qsslsocket.h +++ b/src/network/ssl/qsslsocket.h @@ -45,7 +45,7 @@ #include #include -#ifndef QT_NO_OPENSSL +#ifndef QT_NO_SSL # include # include #endif @@ -56,7 +56,7 @@ QT_BEGIN_NAMESPACE QT_MODULE(Network) -#ifndef QT_NO_OPENSSL +#ifndef QT_NO_SSL class QDir; class QSslCipher; @@ -217,7 +217,7 @@ private: friend class QSslSocketBackendPrivate; }; -#endif // QT_NO_OPENSSL +#endif // QT_NO_SSL QT_END_NAMESPACE diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp index c3ea048a18..bcc86cb697 100644 --- a/tools/configure/configureapp.cpp +++ b/tools/configure/configureapp.cpp @@ -2915,7 +2915,10 @@ void Configure::generateConfigfiles() if (dictionary["EXCEPTIONS"] == "no") qconfigList += "QT_NO_EXCEPTIONS"; if (dictionary["OPENGL"] == "no") qconfigList += "QT_NO_OPENGL"; if (dictionary["OPENVG"] == "no") qconfigList += "QT_NO_OPENVG"; - if (dictionary["OPENSSL"] == "no") qconfigList += "QT_NO_OPENSSL"; + if (dictionary["OPENSSL"] == "no") { + qconfigList += "QT_NO_OPENSSL"; + qconfigList += "QT_NO_SSL"; + } if (dictionary["OPENSSL"] == "linked") qconfigList += "QT_LINKED_OPENSSL"; if (dictionary["DBUS"] == "no") qconfigList += "QT_NO_DBUS"; if (dictionary["WEBKIT"] == "no") qconfigList += "QT_NO_WEBKIT"; -- cgit v1.2.3 From 5bdd20a085f286d23ef07d0c48c4aa3bc83d57b7 Mon Sep 17 00:00:00 2001 From: Martin Petersson Date: Fri, 6 Jan 2012 09:51:53 +0100 Subject: QNetworkAccessManager: check if networksession is set Need to check that the networkSession has been set so we don't crash when bearermanagement is enabled. Task-number: QTBUG-23484 Change-Id: Ifdb71350ba5b4ddbdbd17a8d87189c78c524783e Reviewed-by: Aaron Kennedy Reviewed-by: Peter Hartmann --- src/network/access/qhttpnetworkconnection.cpp | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/src/network/access/qhttpnetworkconnection.cpp b/src/network/access/qhttpnetworkconnection.cpp index 4bbfa4740b..c9a41176d6 100644 --- a/src/network/access/qhttpnetworkconnection.cpp +++ b/src/network/access/qhttpnetworkconnection.cpp @@ -1050,14 +1050,16 @@ void QHttpNetworkConnectionPrivate::startNetworkLayerStateLookup() int timeout = 300; #ifndef QT_NO_BEARERMANAGEMENT - if (networkSession->configuration().bearerType() == QNetworkConfiguration::Bearer2G) - timeout = 800; - else if (networkSession->configuration().bearerType() == QNetworkConfiguration::BearerCDMA2000) - timeout = 500; - else if (networkSession->configuration().bearerType() == QNetworkConfiguration::BearerWCDMA) - timeout = 500; - else if (networkSession->configuration().bearerType() == QNetworkConfiguration::BearerHSPA) - timeout = 400; + if (networkSession) { + if (networkSession->configuration().bearerType() == QNetworkConfiguration::Bearer2G) + timeout = 800; + else if (networkSession->configuration().bearerType() == QNetworkConfiguration::BearerCDMA2000) + timeout = 500; + else if (networkSession->configuration().bearerType() == QNetworkConfiguration::BearerWCDMA) + timeout = 500; + else if (networkSession->configuration().bearerType() == QNetworkConfiguration::BearerHSPA) + timeout = 400; + } #endif delayedConnectionTimer.start(timeout); if (delayIpv4) -- cgit v1.2.3 From b44c6bef5041359ac2387379c80f55549d562d8c Mon Sep 17 00:00:00 2001 From: Robin Burchell Date: Thu, 5 Jan 2012 18:49:12 +0100 Subject: Remove duplicate fnctl() call. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit QInotifyFileSystemWatcherEngine's constructor calls this, there's no need to do it twice. Change-Id: Ic19e758a3f87f2e3a885e5b834f59a5a0fe13f4b Reviewed-by: João Abecasis --- src/corelib/io/qfilesystemwatcher_inotify.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/src/corelib/io/qfilesystemwatcher_inotify.cpp b/src/corelib/io/qfilesystemwatcher_inotify.cpp index ffe3a2e067..79d7d7cae0 100644 --- a/src/corelib/io/qfilesystemwatcher_inotify.cpp +++ b/src/corelib/io/qfilesystemwatcher_inotify.cpp @@ -220,7 +220,6 @@ QInotifyFileSystemWatcherEngine *QInotifyFileSystemWatcherEngine::create() fd = inotify_init(); if (fd == -1) return 0; - ::fcntl(fd, F_SETFD, FD_CLOEXEC); } return new QInotifyFileSystemWatcherEngine(fd); } -- cgit v1.2.3 From 09ab5e60d1d688cc8dc6df8e9a16c5010dd69f7e Mon Sep 17 00:00:00 2001 From: Simon Hausmann Date: Fri, 6 Jan 2012 13:22:13 +0100 Subject: Fix crashing data urls Commit 231369eb043e9c5221da1a4f2a724643a3f380f3 introduced the use of QBuffer::setBuffer with a QByteArray that is allocated on the stack, causing plenty of memory corruption. This patch replaces the use of setBuffer with setData, which correctly assigns the QBuffer's buffer instead of just relying on the pointer passed to setBuffer. Spotted by Rohan in http://codereview.qt-project.org/#change,11859 Change-Id: I7cdf43d438a2a7864de7c35841b42421c1c60e68 Reviewed-by: Thiago Macieira Reviewed-by: Robin Burchell --- src/network/access/qnetworkreplydataimpl.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/network/access/qnetworkreplydataimpl.cpp b/src/network/access/qnetworkreplydataimpl.cpp index 1c12eadd6c..22f40b2420 100644 --- a/src/network/access/qnetworkreplydataimpl.cpp +++ b/src/network/access/qnetworkreplydataimpl.cpp @@ -78,7 +78,7 @@ QNetworkReplyDataImpl::QNetworkReplyDataImpl(QObject *parent, const QNetworkRequ setHeader(QNetworkRequest::ContentLengthHeader, size); QMetaObject::invokeMethod(this, "metaDataChanged", Qt::QueuedConnection); - d->decodedData.setBuffer(&payload); + d->decodedData.setData(payload); d->decodedData.open(QIODevice::ReadOnly); QMetaObject::invokeMethod(this, "downloadProgress", Qt::QueuedConnection, -- cgit v1.2.3 From 05efb2e1c879e9e110f2e2e283c58e012474b0fd Mon Sep 17 00:00:00 2001 From: Frederik Gladhorn Date: Thu, 5 Jan 2012 18:29:34 +0100 Subject: Fix documentation: missing const Change-Id: Ie90afada6ffe3198314481dd6fc68bce67605efd Reviewed-by: Casper van Donderen --- src/gui/accessible/qaccessible2.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gui/accessible/qaccessible2.cpp b/src/gui/accessible/qaccessible2.cpp index 23eec62cd6..71d00d38ac 100644 --- a/src/gui/accessible/qaccessible2.cpp +++ b/src/gui/accessible/qaccessible2.cpp @@ -183,7 +183,7 @@ QT_BEGIN_NAMESPACE */ /*! - \fn void QAccessibleActionInterface::doAction(const QString &actionName) const + \fn void QAccessibleActionInterface::doAction(const QString &actionName) Invokes the action specified by \a actionName -- cgit v1.2.3 From f03099cee37ba955e2eda6ae2056a8f8f1109e5c Mon Sep 17 00:00:00 2001 From: Frederik Gladhorn Date: Thu, 5 Jan 2012 18:51:52 +0100 Subject: Remove docs for functions that no longer exist. Change-Id: Id79d3eeab85b156348054c727ea1897ac3e5842b Reviewed-by: Casper van Donderen --- src/widgets/kernel/qwidget.cpp | 382 ----------------------------------------- 1 file changed, 382 deletions(-) diff --git a/src/widgets/kernel/qwidget.cpp b/src/widgets/kernel/qwidget.cpp index d7a7efda6d..a682a24f4c 100644 --- a/src/widgets/kernel/qwidget.cpp +++ b/src/widgets/kernel/qwidget.cpp @@ -10803,274 +10803,6 @@ void QWidget::stackUnder(QWidget* w) */ -/*! - \fn bool QWidget::isVisibleToTLW() const - - Use isVisible() instead. -*/ - -/*! - \fn void QWidget::iconify() - - Use showMinimized() instead. -*/ - -/*! - \fn void QWidget::constPolish() const - - Use ensurePolished() instead. -*/ - -/*! - \fn void QWidget::reparent(QWidget *parent, Qt::WindowFlags f, const QPoint &p, bool showIt) - - Use setParent() to change the parent or the widget's widget flags; - use move() to move the widget, and use show() to show the widget. -*/ - -/*! - \fn void QWidget::reparent(QWidget *parent, const QPoint &p, bool showIt) - - Use setParent() to change the parent; use move() to move the - widget, and use show() to show the widget. -*/ - -/*! - \fn void QWidget::recreate(QWidget *parent, Qt::WindowFlags f, const QPoint & p, bool showIt) - - Use setParent() to change the parent or the widget's widget flags; - use move() to move the widget, and use show() to show the widget. -*/ - -/*! - \fn bool QWidget::hasMouse() const - - Use testAttribute(Qt::WA_UnderMouse) instead. -*/ - -/*! - \fn bool QWidget::ownCursor() const - - Use testAttribute(Qt::WA_SetCursor) instead. -*/ - -/*! - \fn bool QWidget::ownFont() const - - Use testAttribute(Qt::WA_SetFont) instead. -*/ - -/*! - \fn void QWidget::unsetFont() - - Use setFont(QFont()) instead. -*/ - -/*! - \fn bool QWidget::ownPalette() const - - Use testAttribute(Qt::WA_SetPalette) instead. -*/ - -/*! - \fn void QWidget::unsetPalette() - - Use setPalette(QPalette()) instead. -*/ - -/*! - \fn void QWidget::setEraseColor(const QColor &color) - - Use the palette instead. - - \oldcode - widget->setEraseColor(color); - \newcode - QPalette palette; - palette.setColor(widget->backgroundRole(), color); - widget->setPalette(palette); - \endcode -*/ - -/*! - \fn void QWidget::setErasePixmap(const QPixmap &pixmap) - - Use the palette instead. - - \oldcode - widget->setErasePixmap(pixmap); - \newcode - QPalette palette; - palette.setBrush(widget->backgroundRole(), QBrush(pixmap)); - widget->setPalette(palette); - \endcode -*/ - -/*! - \fn void QWidget::setPaletteForegroundColor(const QColor &color) - - Use the palette directly. - - \oldcode - widget->setPaletteForegroundColor(color); - \newcode - QPalette palette; - palette.setColor(widget->foregroundRole(), color); - widget->setPalette(palette); - \endcode -*/ - -/*! - \fn void QWidget::setPaletteBackgroundColor(const QColor &color) - - Use the palette directly. - - \oldcode - widget->setPaletteBackgroundColor(color); - \newcode - QPalette palette; - palette.setColor(widget->backgroundRole(), color); - widget->setPalette(palette); - \endcode -*/ - -/*! - \fn void QWidget::setPaletteBackgroundPixmap(const QPixmap &pixmap) - - Use the palette directly. - - \oldcode - widget->setPaletteBackgroundPixmap(pixmap); - \newcode - QPalette palette; - palette.setBrush(widget->backgroundRole(), QBrush(pixmap)); - widget->setPalette(palette); - \endcode -*/ - -/*! - \fn void QWidget::setBackgroundPixmap(const QPixmap &pixmap) - - Use the palette instead. - - \oldcode - widget->setBackgroundPixmap(pixmap); - \newcode - QPalette palette; - palette.setBrush(widget->backgroundRole(), QBrush(pixmap)); - widget->setPalette(palette); - \endcode -*/ - -/*! - \fn void QWidget::setBackgroundColor(const QColor &color) - - Use the palette instead. - - \oldcode - widget->setBackgroundColor(color); - \newcode - QPalette palette; - palette.setColor(widget->backgroundRole(), color); - widget->setPalette(palette); - \endcode -*/ - - -/*! - \fn QWidget *QWidget::parentWidget(bool sameWindow) const - - Use the no-argument overload instead. -*/ - -/*! - \fn void QWidget::setKeyCompression(bool b) - - Use setAttribute(Qt::WA_KeyCompression, b) instead. -*/ - -/*! - \fn void QWidget::setFont(const QFont &f, bool b) - - Use the single-argument overload instead. -*/ - -/*! - \fn void QWidget::setPalette(const QPalette &p, bool b) - - Use the single-argument overload instead. -*/ - -/*! - \fn void QWidget::setBackgroundOrigin(BackgroundOrigin background) - - \obsolete -*/ - -/*! - \fn BackgroundOrigin QWidget::backgroundOrigin() const - - \obsolete - - Always returns \c WindowOrigin. -*/ - -/*! - \fn QPoint QWidget::backgroundOffset() const - - \obsolete - - Always returns QPoint(). -*/ - -/*! - \fn void QWidget::repaint(bool b) - - The boolean parameter \a b is ignored. Use the no-argument overload instead. -*/ - -/*! - \fn void QWidget::repaint(int x, int y, int w, int h, bool b) - - The boolean parameter \a b is ignored. Use the four-argument overload instead. -*/ - -/*! - \fn void QWidget::repaint(const QRect &r, bool b) - - The boolean parameter \a b is ignored. Use the single rect-argument overload instead. -*/ - -/*! - \fn void QWidget::repaint(const QRegion &rgn, bool b) - - The boolean parameter \a b is ignored. Use the single region-argument overload instead. -*/ - -/*! - \fn void QWidget::erase() - - Drawing may only take place in a QPaintEvent. Overload - paintEvent() to do your erasing and call update() to schedule a - replaint whenever necessary. See also QPainter. -*/ - -/*! - \fn void QWidget::erase(int x, int y, int w, int h) - - Drawing may only take place in a QPaintEvent. Overload - paintEvent() to do your erasing and call update() to schedule a - replaint whenever necessary. See also QPainter. -*/ - -/*! - \fn void QWidget::erase(const QRect &rect) - - Drawing may only take place in a QPaintEvent. Overload - paintEvent() to do your erasing and call update() to schedule a - replaint whenever necessary. See also QPainter. -*/ - /*! \fn void QWidget::drawText(const QPoint &p, const QString &s) @@ -11087,42 +10819,6 @@ void QWidget::stackUnder(QWidget* w) replaint whenever necessary. See also QPainter. */ -/*! - \fn QWidget *QWidget::childAt(const QPoint &p, bool includeThis) const - - Use the single point argument overload instead. -*/ - -/*! - \fn void QWidget::setCaption(const QString &c) - - Use setWindowTitle() instead. -*/ - -/*! - \fn void QWidget::setIcon(const QPixmap &i) - - Use setWindowIcon() instead. -*/ - -/*! - \fn void QWidget::setIconText(const QString &it) - - Use setWindowIconText() instead. -*/ - -/*! - \fn QString QWidget::caption() const - - Use windowTitle() instead. -*/ - -/*! - \fn QString QWidget::iconText() const - - Use windowIconText() instead. -*/ - /*! \fn bool QWidget::isTopLevel() const \obsolete @@ -11140,84 +10836,6 @@ void QWidget::stackUnder(QWidget* w) \internal */ -/*! - \fn void QWidget::setInputMethodEnabled(bool enabled) - - Use setAttribute(Qt::WA_InputMethodEnabled, \a enabled) instead. -*/ - -/*! - \fn bool QWidget::isInputMethodEnabled() const - - Use testAttribute(Qt::WA_InputMethodEnabled) instead. -*/ - -/*! - \fn void QWidget::setActiveWindow() - - Use activateWindow() instead. -*/ - -/*! - \fn bool QWidget::isShown() const - - Use !isHidden() instead (notice the exclamation mark), or use isVisible() to check whether the widget is visible. -*/ - -/*! - \fn bool QWidget::isDialog() const - - Use windowType() == Qt::Dialog instead. -*/ - -/*! - \fn bool QWidget::isPopup() const - - Use windowType() == Qt::Popup instead. -*/ - -/*! - \fn bool QWidget::isDesktop() const - - Use windowType() == Qt::Desktop instead. -*/ - -/*! - \fn void QWidget::polish() - - Use ensurePolished() instead. -*/ - -/*! - \fn QWidget *QWidget::childAt(int x, int y, bool includeThis) const - - Use the childAt() overload that doesn't have an \a includeThis parameter. - - \oldcode - return widget->childAt(x, y, true); - \newcode - QWidget *child = widget->childAt(x, y, true); - if (child) - return child; - if (widget->rect().contains(x, y)) - return widget; - \endcode -*/ - -/*! - \fn void QWidget::setSizePolicy(QSizePolicy::Policy hor, QSizePolicy::Policy ver, bool hfw) - \compat - - Use the \l sizePolicy property and heightForWidth() function instead. -*/ - -/*! - \fn bool QWidget::isUpdatesEnabled() const - \compat - - Use the \l updatesEnabled property instead. -*/ - /*! \macro QWIDGETSIZE_MAX \relates QWidget -- cgit v1.2.3 From 7e46af4a41eaf0188921da504438c3515b062bdd Mon Sep 17 00:00:00 2001 From: Frederik Gladhorn Date: Thu, 5 Jan 2012 21:59:04 +0100 Subject: Remove qdoc for code that no longer exists. Change-Id: I82d4ba930335a03181aa20c9e4cb060ca8b35b9a Reviewed-by: Casper van Donderen --- src/widgets/kernel/qwidget.cpp | 27 ------- src/widgets/widgets/qdial.cpp | 18 ----- src/widgets/widgets/qtabwidget.cpp | 156 ------------------------------------- 3 files changed, 201 deletions(-) diff --git a/src/widgets/kernel/qwidget.cpp b/src/widgets/kernel/qwidget.cpp index a682a24f4c..ae0cbe42dc 100644 --- a/src/widgets/kernel/qwidget.cpp +++ b/src/widgets/kernel/qwidget.cpp @@ -10791,33 +10791,6 @@ void QWidget::stackUnder(QWidget* w) QApplication::sendEvent(this, &e); } -/*! - \enum QWidget::BackgroundOrigin - - \compat - - \value WidgetOrigin - \value ParentOrigin - \value WindowOrigin - \value AncestorOrigin - -*/ - -/*! - \fn void QWidget::drawText(const QPoint &p, const QString &s) - - Drawing may only take place in a QPaintEvent. Overload - paintEvent() to do your drawing and call update() to schedule a - replaint whenever necessary. See also QPainter. -*/ - -/*! - \fn void QWidget::drawText(int x, int y, const QString &s) - - Drawing may only take place in a QPaintEvent. Overload - paintEvent() to do your drawing and call update() to schedule a - replaint whenever necessary. See also QPainter. -*/ /*! \fn bool QWidget::isTopLevel() const diff --git a/src/widgets/widgets/qdial.cpp b/src/widgets/widgets/qdial.cpp index cc5a6a0f49..26cea362c2 100644 --- a/src/widgets/widgets/qdial.cpp +++ b/src/widgets/widgets/qdial.cpp @@ -488,24 +488,6 @@ bool QDial::event(QEvent *e) return QAbstractSlider::event(e); } -/*! - \fn void QDial::dialPressed(); - - Use QAbstractSlider::sliderPressed() instead. -*/ - -/*! - \fn void QDial::dialMoved(int value); - - Use QAbstractSlider::sliderMoved() instead. -*/ - -/*! - \fn void QDial::dialReleased(); - - Use QAbstractSlider::sliderReleased() instead. -*/ - QT_END_NAMESPACE #endif // QT_NO_DIAL diff --git a/src/widgets/widgets/qtabwidget.cpp b/src/widgets/widgets/qtabwidget.cpp index 8acce0fb70..636a68994a 100644 --- a/src/widgets/widgets/qtabwidget.cpp +++ b/src/widgets/widgets/qtabwidget.cpp @@ -153,15 +153,6 @@ QT_BEGIN_NAMESPACE \value Triangular The tabs are drawn with a triangular look. */ -/*! - \fn void QTabWidget::selected(const QString &tabLabel) - - This signal is emitted whenever a tab is selected (raised), - including during the first show(). - - You can normally use currentChanged() instead. -*/ - /*! \fn void QTabWidget::currentChanged(int index) @@ -1345,153 +1336,6 @@ void QTabWidget::clear() removeTab(0); } -/*! - \fn void QTabWidget::insertTab(QWidget *widget, const QString &label, int index) - - Use insertTab(index, widget, label) instead. -*/ - -/*! - \fn void QTabWidget::insertTab(QWidget *widget, const QIcon& icon, const QString &label, int index) - - Use insertTab(index, widget, icon, label) instead. -*/ - -/*! - \fn void QTabWidget::changeTab(QWidget *widget, const QString - &label) - - Use setTabText() instead. - -*/ - -/*! - \fn void QTabWidget::changeTab(QWidget *widget, const QIcon& icon, const QString &label) - - Use setTabText() and setTabIcon() instead. -*/ - -/*! - \fn bool QTabWidget::isTabEnabled( QWidget *widget) const - - Use isTabEnabled(tabWidget->indexOf(widget)) instead. -*/ - -/*! - \fn void QTabWidget::setTabEnabled(QWidget *widget, bool b) - - Use setTabEnabled(tabWidget->indexOf(widget), b) instead. -*/ - -/*! - \fn QString QTabWidget::tabLabel(QWidget *widget) const - - Use tabText(tabWidget->indexOf(widget)) instead. -*/ - -/*! - \fn void QTabWidget::setTabLabel(QWidget *widget, const QString - &label) - - Use setTabText(tabWidget->indexOf(widget), label) instead. -*/ - -/*! - \fn QIcon QTabWidget::tabIconSet(QWidget * widget) const - - Use tabIcon(tabWidget->indexOf(widget)) instead. -*/ - -/*! - \fn void QTabWidget::setTabIconSet(QWidget * widget, const QIcon & icon) - - Use setTabIcon(tabWidget->indexOf(widget), icon) instead. -*/ - -/*! - \fn void QTabWidget::removeTabToolTip(QWidget * widget) - - Use setTabToolTip(tabWidget->indexOf(widget), QString()) instead. -*/ - -/*! - \fn void QTabWidget::setTabToolTip(QWidget * widget, const QString & tip) - - Use setTabToolTip(tabWidget->indexOf(widget), tip) instead. -*/ - -/*! - \fn QString QTabWidget::tabToolTip(QWidget * widget) const - - Use tabToolTip(tabWidget->indexOf(widget)) instead. -*/ - -/*! - \fn QWidget * QTabWidget::currentPage() const - - Use currentWidget() instead. -*/ - -/*! - \fn QWidget *QTabWidget::page(int index) const - - Use widget() instead. -*/ - -/*! - \fn QString QTabWidget::label(int index) const - - Use tabText() instead. -*/ - -/*! - \fn int QTabWidget::currentPageIndex() const - - Use currentIndex() instead. -*/ - -/*! - \fn int QTabWidget::margin() const - - This function is kept only to make old code compile. - This functionality is no longer supported by QTabWidget. - - \sa contentsRect(), setContentsMargins() -*/ - -/*! - \fn void QTabWidget::setMargin(int margin) - - This function is kept only to make old code compile. - This functionality is no longer supported by QTabWidget. - - \sa contentsRect(), setContentsMargins() -*/ - -/*! - \fn void QTabWidget::setCurrentPage(int index) - - Use setCurrentIndex() instead. -*/ - -/*! - \fn void QTabWidget::showPage(QWidget *widget) - - Use setCurrentIndex(indexOf(widget)) instead. -*/ - -/*! - \fn void QTabWidget::removePage(QWidget *widget) - - Use removeTab(indexOf(widget)) instead. -*/ - -/*! - \fn void QTabWidget::currentChanged(QWidget *widget) - - Use currentChanged(int) instead. -*/ - QT_END_NAMESPACE #include "moc_qtabwidget.cpp" -- cgit v1.2.3 From 514ef34d1f838be119961003c0411a88352ba535 Mon Sep 17 00:00:00 2001 From: Frederik Gladhorn Date: Thu, 5 Jan 2012 22:25:29 +0100 Subject: Fix documentation. Change-Id: Id54263f408e29ed3b9d06712e39759485a42b869 Reviewed-by: Casper van Donderen --- src/sql/models/qsqlrelationaltablemodel.cpp | 4 ++-- src/widgets/widgets/qbuttongroup.cpp | 10 ---------- src/widgets/widgets/qspinbox.cpp | 30 ----------------------------- 3 files changed, 2 insertions(+), 42 deletions(-) diff --git a/src/sql/models/qsqlrelationaltablemodel.cpp b/src/sql/models/qsqlrelationaltablemodel.cpp index ce0786bd70..6b0ed06ac4 100644 --- a/src/sql/models/qsqlrelationaltablemodel.cpp +++ b/src/sql/models/qsqlrelationaltablemodel.cpp @@ -715,7 +715,7 @@ void QSqlRelationalTableModel::clear() \value InnerJoin - Inner join mode, return rows when there is at least one match in both tables. \value LeftJoin - Left join mode, returns all rows from the left table (table_name1), even if there are no matches in the right table (table_name2). - \see QSqlRelationalTableModel::setJoinMode + \sa QSqlRelationalTableModel::setJoinMode \since 4.8 */ @@ -724,7 +724,7 @@ void QSqlRelationalTableModel::clear() In InnerJoin mode (the default) these rows will not be showed: use the LeftJoin mode if you want to show them. - \see QSqlRelationalTableModel::JoinMode + \sa QSqlRelationalTableModel::JoinMode \since 4.8 */ void QSqlRelationalTableModel::setJoinMode( QSqlRelationalTableModel::JoinMode joinMode ) diff --git a/src/widgets/widgets/qbuttongroup.cpp b/src/widgets/widgets/qbuttongroup.cpp index a6323e5cdc..992c542674 100644 --- a/src/widgets/widgets/qbuttongroup.cpp +++ b/src/widgets/widgets/qbuttongroup.cpp @@ -258,13 +258,3 @@ \sa setId() */ - -/*! \fn void QButtonGroup::insert(QAbstractButton *b) - - Use addButton() instead. -*/ - -/*! \fn void QButtonGroup::remove(QAbstractButton *b) - - Use removeButton() instead. -*/ diff --git a/src/widgets/widgets/qspinbox.cpp b/src/widgets/widgets/qspinbox.cpp index 08ae305d39..89743740de 100644 --- a/src/widgets/widgets/qspinbox.cpp +++ b/src/widgets/widgets/qspinbox.cpp @@ -1250,36 +1250,6 @@ QString QDoubleSpinBoxPrivate::textFromValue(const QVariant &f) const return q->textFromValue(f.toDouble()); } -/*! - \fn void QSpinBox::setLineStep(int step) - - Use setSingleStep() instead. -*/ - -/*! - \fn void QSpinBox::setMaxValue(int value) - - Use setMaximum() instead. -*/ - -/*! - \fn void QSpinBox::setMinValue(int value) - - Use setMinimum() instead. -*/ - -/*! - \fn int QSpinBox::maxValue() const - - Use maximum() instead. -*/ - -/*! - \fn int QSpinBox::minValue() const - - Use minimum() instead. -*/ - /*! \reimp */ bool QSpinBox::event(QEvent *event) { -- cgit v1.2.3 From b08daaedd45457b775cb90d2c2650510daff1c8d Mon Sep 17 00:00:00 2001 From: Robin Burchell Date: Tue, 20 Dec 2011 21:39:12 +0100 Subject: Remove all non-inline of qMalloc/qFree/qRealloc. We're trying to deprecate these, so don't use them anymore. The inline uses of these have been left intact, for the moment. Inline code will need to create their own non-inline allocation methods (for future-proofing to allow alterations in how e.g. individual containers allocate) Change-Id: I1071a487c25e95b7bb81a3327b20c5481fb5ed22 Reviewed-by: Thiago Macieira Reviewed-by: Bradley T. Hughes --- src/corelib/codecs/qtextcodec.cpp | 2 +- src/corelib/codecs/qtextcodec_symbian.cpp | 4 +-- src/corelib/global/qmalloc.cpp | 6 ++--- src/corelib/io/qfilesystemengine_win.cpp | 4 +-- src/corelib/kernel/qcoreapplication.cpp | 2 +- src/corelib/kernel/qmetaobject.cpp | 12 ++++----- src/corelib/kernel/qmetaobjectbuilder.cpp | 4 +-- src/corelib/kernel/qobject.cpp | 8 +++--- src/corelib/tools/qbytearray.cpp | 30 +++++++++++----------- src/corelib/tools/qhash.cpp | 4 +-- src/corelib/tools/qlist.cpp | 8 +++--- src/corelib/tools/qmap.cpp | 6 ++--- src/corelib/tools/qstring.cpp | 30 +++++++++++----------- src/corelib/tools/qvector.cpp | 10 +++++--- src/corelib/xml/qxmlstream.cpp | 8 +++--- src/gui/image/qtiffhandler.cpp | 18 ++++++------- src/gui/opengl/qopenglpaintengine.cpp | 18 ++++++------- src/network/kernel/qhostinfo_unix.cpp | 4 +-- src/network/kernel/qnetworkinterface_win.cpp | 24 ++++++++--------- .../gl2paintengineex/qpaintengineex_opengl2.cpp | 18 ++++++------- src/plugins/platforms/xcb/qxcbbackingstore.cpp | 4 +-- .../qmetaobjectbuilder/tst_qmetaobjectbuilder.cpp | 10 ++++---- .../tst_qgraphicsanchorlayout.cpp | 4 +-- .../access/qnetworkreply/tst_qnetworkreply.cpp | 8 +++--- 24 files changed, 125 insertions(+), 121 deletions(-) diff --git a/src/corelib/codecs/qtextcodec.cpp b/src/corelib/codecs/qtextcodec.cpp index ff1db7c67e..071bd1e319 100644 --- a/src/corelib/codecs/qtextcodec.cpp +++ b/src/corelib/codecs/qtextcodec.cpp @@ -842,7 +842,7 @@ QTextCodec::ConverterState::~ConverterState() if (flags & FreeFunction) (QTextCodecUnalignedPointer::decode(state_data))(this); else if (d) - qFree(d); + free(d); } /*! diff --git a/src/corelib/codecs/qtextcodec_symbian.cpp b/src/corelib/codecs/qtextcodec_symbian.cpp index 2b1c98f91d..a4628ccf06 100644 --- a/src/corelib/codecs/qtextcodec_symbian.cpp +++ b/src/corelib/codecs/qtextcodec_symbian.cpp @@ -239,7 +239,7 @@ QString QSymbianTextCodec::convertToUnicode(const char *str, int len, ConverterS str2 = helperBA.data(); if (state->remainingChars > 3) { // doesn't happen usually memcpy(str2, state->d, state->remainingChars); - qFree(state->d); + free(state->d); state->d = 0; } else { char charTbl[3]; @@ -326,7 +326,7 @@ QString QSymbianTextCodec::convertToUnicode(const char *str, int len, ConverterS } const unsigned char *charPtr = remainderOfForeignText.Right(remainingChars).Ptr(); if (remainingChars > 3) { // doesn't happen usually - state->d = (void*)qMalloc(remainingChars); + state->d = (void*)malloc(remainingChars); if (!state->d) return QString(); // copy characters there diff --git a/src/corelib/global/qmalloc.cpp b/src/corelib/global/qmalloc.cpp index 2da9e34b1e..2ec6938f98 100644 --- a/src/corelib/global/qmalloc.cpp +++ b/src/corelib/global/qmalloc.cpp @@ -78,7 +78,7 @@ void *qReallocAligned(void *oldptr, size_t newsize, size_t oldsize, size_t align void *actualptr = oldptr ? static_cast(oldptr)[-1] : 0; if (alignment <= sizeof(void*)) { // special, fast case - void **newptr = static_cast(qRealloc(actualptr, newsize + sizeof(void*))); + void **newptr = static_cast(realloc(actualptr, newsize + sizeof(void*))); if (!newptr) return 0; if (newptr == actualptr) { @@ -90,7 +90,7 @@ void *qReallocAligned(void *oldptr, size_t newsize, size_t oldsize, size_t align return newptr + 1; } - // qMalloc returns pointers aligned at least at sizeof(size_t) boundaries + // malloc returns pointers aligned at least at sizeof(size_t) boundaries // but usually more (8- or 16-byte boundaries). // So we overallocate by alignment-sizeof(size_t) bytes, so we're guaranteed to find a // somewhere within the first alignment-sizeof(size_t) that is properly aligned. @@ -98,7 +98,7 @@ void *qReallocAligned(void *oldptr, size_t newsize, size_t oldsize, size_t align // However, we need to store the actual pointer, so we need to allocate actually size + // alignment anyway. - void *real = qRealloc(actualptr, newsize + alignment); + void *real = realloc(actualptr, newsize + alignment); if (!real) return 0; diff --git a/src/corelib/io/qfilesystemengine_win.cpp b/src/corelib/io/qfilesystemengine_win.cpp index 5d4f4c379e..80f5448d40 100644 --- a/src/corelib/io/qfilesystemengine_win.cpp +++ b/src/corelib/io/qfilesystemengine_win.cpp @@ -278,7 +278,7 @@ static QString readSymLink(const QFileSystemEntry &link) 0); if (handle != INVALID_HANDLE_VALUE) { DWORD bufsize = MAXIMUM_REPARSE_DATA_BUFFER_SIZE; - REPARSE_DATA_BUFFER *rdb = (REPARSE_DATA_BUFFER*)qMalloc(bufsize); + REPARSE_DATA_BUFFER *rdb = (REPARSE_DATA_BUFFER*)malloc(bufsize); DWORD retsize = 0; if (::DeviceIoControl(handle, FSCTL_GET_REPARSE_POINT, 0, 0, rdb, bufsize, &retsize, 0)) { if (rdb->ReparseTag == IO_REPARSE_TAG_MOUNT_POINT) { @@ -296,7 +296,7 @@ static QString readSymLink(const QFileSystemEntry &link) if (result.size() > 4 && result.at(0) == QLatin1Char('\\') && result.at(2) == QLatin1Char('?') && result.at(3) == QLatin1Char('\\')) result = result.mid(4); } - qFree(rdb); + free(rdb); CloseHandle(handle); #if !defined(QT_NO_LIBRARY) diff --git a/src/corelib/kernel/qcoreapplication.cpp b/src/corelib/kernel/qcoreapplication.cpp index 2c462cb42f..7a4618be34 100644 --- a/src/corelib/kernel/qcoreapplication.cpp +++ b/src/corelib/kernel/qcoreapplication.cpp @@ -143,7 +143,7 @@ static inline void qt_init_symbian_apa_arguments(int &argc, char **&argv) TPtrC8 apaCmdLine = commandLine->TailEnd(); int tailLen = apaCmdLine.Length(); if (tailLen) { - apaTail = reinterpret_cast(qMalloc(tailLen + 1)); + apaTail = reinterpret_cast(malloc(tailLen + 1)); qMemCopy(apaTail, reinterpret_cast(apaCmdLine.Ptr()), tailLen); apaTail[tailLen] = '\0'; apaArgv = new QVector(8); diff --git a/src/corelib/kernel/qmetaobject.cpp b/src/corelib/kernel/qmetaobject.cpp index 04770b7a91..4e71d7ae82 100644 --- a/src/corelib/kernel/qmetaobject.cpp +++ b/src/corelib/kernel/qmetaobject.cpp @@ -855,7 +855,7 @@ QMetaProperty QMetaObject::property(int index) const Q_ASSERT(colon <= enum_name || *(colon-1) == ':'); if (colon > enum_name) { int len = colon-enum_name-1; - scope_buffer = (char *)qMalloc(len+1); + scope_buffer = (char *)malloc(len+1); qMemCopy(scope_buffer, enum_name, len); scope_buffer[len] = '\0'; scope_name = scope_buffer; @@ -870,7 +870,7 @@ QMetaProperty QMetaObject::property(int index) const if (scope) result.menum = scope->enumerator(scope->indexOfEnumerator(enum_name)); if (scope_buffer) - qFree(scope_buffer); + free(scope_buffer); } } } @@ -1644,9 +1644,9 @@ bool QMetaMethod::invoke(QObject *object, } int nargs = 1; // include return type - void **args = (void **) qMalloc(paramCount * sizeof(void *)); + void **args = (void **) malloc(paramCount * sizeof(void *)); Q_CHECK_PTR(args); - int *types = (int *) qMalloc(paramCount * sizeof(int)); + int *types = (int *) malloc(paramCount * sizeof(int)); Q_CHECK_PTR(types); types[0] = 0; // return type args[0] = 0; @@ -1663,8 +1663,8 @@ bool QMetaMethod::invoke(QObject *object, if (types[x] && args[x]) QMetaType::destroy(types[x], args[x]); } - qFree(types); - qFree(args); + free(types); + free(args); return false; } } diff --git a/src/corelib/kernel/qmetaobjectbuilder.cpp b/src/corelib/kernel/qmetaobjectbuilder.cpp index 0b4ff89a14..69cb25a6c5 100644 --- a/src/corelib/kernel/qmetaobjectbuilder.cpp +++ b/src/corelib/kernel/qmetaobjectbuilder.cpp @@ -1444,7 +1444,7 @@ static int buildMetaObject(QMetaObjectBuilderPrivate *d, char *buf, /*! Converts this meta object builder into a concrete QMetaObject. - The return value should be deallocated using qFree() once it + The return value should be deallocated using free() once it is no longer needed. The returned meta object is a snapshot of the state of the @@ -1455,7 +1455,7 @@ static int buildMetaObject(QMetaObjectBuilderPrivate *d, char *buf, QMetaObject *QMetaObjectBuilder::toMetaObject() const { int size = buildMetaObject(d, 0, false); - char *buf = reinterpret_cast(qMalloc(size)); + char *buf = reinterpret_cast(malloc(size)); memset(buf, 0, size); buildMetaObject(d, buf, false); return reinterpret_cast(buf); diff --git a/src/corelib/kernel/qobject.cpp b/src/corelib/kernel/qobject.cpp index ebb0a3a5c7..bebdcac662 100644 --- a/src/corelib/kernel/qobject.cpp +++ b/src/corelib/kernel/qobject.cpp @@ -415,8 +415,8 @@ QMetaCallEvent::~QMetaCallEvent() if (types_[i] && args_[i]) QMetaType::destroy(types_[i], args_[i]); } - qFree(types_); - qFree(args_); + free(types_); + free(args_); } #ifndef QT_NO_THREAD if (semaphore_) @@ -3104,9 +3104,9 @@ static void queued_activate(QObject *sender, int signal, QObjectPrivate::Connect int nargs = 1; // include return type while (argumentTypes[nargs-1]) ++nargs; - int *types = (int *) qMalloc(nargs*sizeof(int)); + int *types = (int *) malloc(nargs*sizeof(int)); Q_CHECK_PTR(types); - void **args = (void **) qMalloc(nargs*sizeof(void *)); + void **args = (void **) malloc(nargs*sizeof(void *)); Q_CHECK_PTR(args); types[0] = 0; // return type args[0] = 0; // return value diff --git a/src/corelib/tools/qbytearray.cpp b/src/corelib/tools/qbytearray.cpp index d8c0668a39..8c625c2868 100644 --- a/src/corelib/tools/qbytearray.cpp +++ b/src/corelib/tools/qbytearray.cpp @@ -546,7 +546,7 @@ QByteArray qUncompress(const uchar* data, int nbytes) qWarning("qUncompress: Input data is corrupted"); return QByteArray(); } - QByteArray::Data *p = static_cast(qRealloc(d.data(), sizeof(QByteArray::Data) + alloc + 1)); + QByteArray::Data *p = static_cast(::realloc(d.data(), sizeof(QByteArray::Data) + alloc + 1)); if (!p) { // we are not allowed to crash here when compiling with QT_NO_EXCEPTIONS qWarning("qUncompress: could not allocate enough memory to uncompress data"); @@ -567,7 +567,7 @@ QByteArray qUncompress(const uchar* data, int nbytes) qWarning("qUncompress: Input data is corrupted"); return QByteArray(); } - QByteArray::Data *p = static_cast(qRealloc(d.data(), sizeof(QByteArray::Data) + len + 1)); + QByteArray::Data *p = static_cast(::realloc(d.data(), sizeof(QByteArray::Data) + len + 1)); if (!p) { // we are not allowed to crash here when compiling with QT_NO_EXCEPTIONS qWarning("qUncompress: could not allocate enough memory to uncompress data"); @@ -883,7 +883,7 @@ QByteArray &QByteArray::operator=(const QByteArray & other) { other.d->ref.ref(); if (!d->ref.deref()) - qFree(d); + free(d); d = other.d; return *this; } @@ -912,7 +912,7 @@ QByteArray &QByteArray::operator=(const char *str) } x->ref.ref(); if (!d->ref.deref()) - qFree(d); + free(d); d = x; return *this; } @@ -1302,7 +1302,7 @@ QByteArray::QByteArray(const char *str) d = const_cast(&shared_empty.ba); } else { int len = qstrlen(str); - d = static_cast(qMalloc(sizeof(Data) + len + 1)); + d = static_cast(malloc(sizeof(Data) + len + 1)); Q_CHECK_PTR(d); d->ref = 1; d->size = len; @@ -1331,7 +1331,7 @@ QByteArray::QByteArray(const char *data, int size) } else if (size <= 0) { d = const_cast(&shared_empty.ba); } else { - d = static_cast(qMalloc(sizeof(Data) + size + 1)); + d = static_cast(malloc(sizeof(Data) + size + 1)); Q_CHECK_PTR(d); d->ref = 1; d->size = size; @@ -1355,7 +1355,7 @@ QByteArray::QByteArray(int size, char ch) if (size <= 0) { d = const_cast(&shared_null.ba); } else { - d = static_cast(qMalloc(sizeof(Data) + size + 1)); + d = static_cast(malloc(sizeof(Data) + size + 1)); Q_CHECK_PTR(d); d->ref = 1; d->size = size; @@ -1375,7 +1375,7 @@ QByteArray::QByteArray(int size, char ch) QByteArray::QByteArray(int size, Qt::Initialization) { - d = static_cast(qMalloc(sizeof(Data) + size + 1)); + d = static_cast(malloc(sizeof(Data) + size + 1)); Q_CHECK_PTR(d); d->ref = 1; d->size = size; @@ -1411,7 +1411,7 @@ void QByteArray::resize(int size) if (size == 0 && !d->capacityReserved) { Data *x = const_cast(&shared_empty.ba); if (!d->ref.deref()) - qFree(d); + free(d); d = x; } else if (d == &shared_null.ba || d == &shared_empty.ba) { // @@ -1422,7 +1422,7 @@ void QByteArray::resize(int size) // which is used in place of the Qt 3 idiom: // QByteArray a(sz); // - Data *x = static_cast(qMalloc(sizeof(Data) + size + 1)); + Data *x = static_cast(malloc(sizeof(Data) + size + 1)); Q_CHECK_PTR(x); x->ref = 1; x->size = size; @@ -1464,7 +1464,7 @@ QByteArray &QByteArray::fill(char ch, int size) void QByteArray::realloc(int alloc) { if (d->ref != 1 || d->offset) { - Data *x = static_cast(qMalloc(sizeof(Data) + alloc + 1)); + Data *x = static_cast(malloc(sizeof(Data) + alloc + 1)); Q_CHECK_PTR(x); x->ref = 1; x->size = qMin(alloc, d->size); @@ -1474,10 +1474,10 @@ void QByteArray::realloc(int alloc) ::memcpy(x->data(), d->data(), x->size); x->data()[x->size] = '\0'; if (!d->ref.deref()) - qFree(d); + free(d); d = x; } else { - Data *x = static_cast(qRealloc(d, sizeof(Data) + alloc + 1)); + Data *x = static_cast(::realloc(d, sizeof(Data) + alloc + 1)); Q_CHECK_PTR(x); x->alloc = alloc; x->offset = 0; @@ -2730,7 +2730,7 @@ QByteArray QByteArray::toUpper() const void QByteArray::clear() { if (!d->ref.deref()) - qFree(d); + free(d); d = const_cast(&shared_null.ba); d->ref.ref(); } @@ -3885,7 +3885,7 @@ QByteArray QByteArray::fromRawData(const char *data, int size) } else if (!size) { x = const_cast(&shared_empty.ba); } else { - x = static_cast(qMalloc(sizeof(Data) + 1)); + x = static_cast(malloc(sizeof(Data) + 1)); Q_CHECK_PTR(x); x->ref = 1; x->size = size; diff --git a/src/corelib/tools/qhash.cpp b/src/corelib/tools/qhash.cpp index f4ec4ebd56..fac8c2f8ac 100644 --- a/src/corelib/tools/qhash.cpp +++ b/src/corelib/tools/qhash.cpp @@ -171,7 +171,7 @@ const QHashData QHashData::shared_null = { void *QHashData::allocateNode(int nodeAlign) { - void *ptr = strictAlignment ? qMallocAligned(nodeSize, nodeAlign) : qMalloc(nodeSize); + void *ptr = strictAlignment ? qMallocAligned(nodeSize, nodeAlign) : malloc(nodeSize); Q_CHECK_PTR(ptr); return ptr; } @@ -181,7 +181,7 @@ void QHashData::freeNode(void *node) if (strictAlignment) qFreeAligned(node); else - qFree(node); + free(node); } QHashData *QHashData::detach_helper(void (*node_duplicate)(Node *, void *), diff --git a/src/corelib/tools/qlist.cpp b/src/corelib/tools/qlist.cpp index 9ac46365a2..adc6ee7a4b 100644 --- a/src/corelib/tools/qlist.cpp +++ b/src/corelib/tools/qlist.cpp @@ -42,7 +42,9 @@ #include #include "qlist.h" #include "qtools_p.h" + #include +#include QT_BEGIN_NAMESPACE @@ -82,7 +84,7 @@ QListData::Data *QListData::detach_grow(int *idx, int num) int l = x->end - x->begin; int nl = l + num; int alloc = grow(nl); - Data* t = static_cast(qMalloc(DataHeaderSize + alloc * sizeof(void *))); + Data* t = static_cast(::malloc(DataHeaderSize + alloc * sizeof(void *))); Q_CHECK_PTR(t); t->ref = 1; @@ -124,7 +126,7 @@ QListData::Data *QListData::detach_grow(int *idx, int num) QListData::Data *QListData::detach(int alloc) { Data *x = d; - Data* t = static_cast(qMalloc(DataHeaderSize + alloc * sizeof(void *))); + Data* t = static_cast(::malloc(DataHeaderSize + alloc * sizeof(void *))); Q_CHECK_PTR(t); t->ref = 1; @@ -145,7 +147,7 @@ QListData::Data *QListData::detach(int alloc) void QListData::realloc(int alloc) { Q_ASSERT(d->ref == 1); - Data *x = static_cast(qRealloc(d, DataHeaderSize + alloc * sizeof(void *))); + Data *x = static_cast(::realloc(d, DataHeaderSize + alloc * sizeof(void *))); Q_CHECK_PTR(x); d = x; diff --git a/src/corelib/tools/qmap.cpp b/src/corelib/tools/qmap.cpp index 280409fde8..a688ae1c1a 100644 --- a/src/corelib/tools/qmap.cpp +++ b/src/corelib/tools/qmap.cpp @@ -85,7 +85,7 @@ void QMapData::continueFreeData(int offset) if (strictAlignment) qFreeAligned(reinterpret_cast(prev) - offset); else - qFree(reinterpret_cast(prev) - offset); + free(reinterpret_cast(prev) - offset); } delete this; } @@ -127,7 +127,7 @@ QMapData::Node *QMapData::node_create(Node *update[], int offset, int alignment) void *concreteNode = strictAlignment ? qMallocAligned(offset + sizeof(Node) + level * sizeof(Node *), alignment) : - qMalloc(offset + sizeof(Node) + level * sizeof(Node *)); + malloc(offset + sizeof(Node) + level * sizeof(Node *)); Q_CHECK_PTR(concreteNode); Node *abstractNode = reinterpret_cast(reinterpret_cast(concreteNode) + offset); @@ -157,7 +157,7 @@ void QMapData::node_delete(Node *update[], int offset, Node *node) if (strictAlignment) qFreeAligned(reinterpret_cast(node) - offset); else - qFree(reinterpret_cast(node) - offset); + free(reinterpret_cast(node) - offset); } #ifdef QT_QMAP_DEBUG diff --git a/src/corelib/tools/qstring.cpp b/src/corelib/tools/qstring.cpp index 38e19d1c98..eea41ea3d7 100644 --- a/src/corelib/tools/qstring.cpp +++ b/src/corelib/tools/qstring.cpp @@ -1030,7 +1030,7 @@ QString::QString(const QChar *unicode, int size) } else if (size <= 0) { d = const_cast(&shared_empty.str); } else { - d = (Data*) qMalloc(sizeof(Data)+(size+1)*sizeof(QChar)); + d = (Data*) ::malloc(sizeof(Data)+(size+1)*sizeof(QChar)); Q_CHECK_PTR(d); d->ref = 1; d->size = size; @@ -1062,7 +1062,7 @@ QString::QString(const QChar *unicode) if (!size) { d = const_cast(&shared_empty.str); } else { - d = (Data*) qMalloc(sizeof(Data)+(size+1)*sizeof(QChar)); + d = (Data*) ::malloc(sizeof(Data)+(size+1)*sizeof(QChar)); Q_CHECK_PTR(d); d->ref = 1; d->size = size; @@ -1087,7 +1087,7 @@ QString::QString(int size, QChar ch) if (size <= 0) { d = const_cast(&shared_empty.str); } else { - d = (Data*) qMalloc(sizeof(Data)+(size+1)*sizeof(QChar)); + d = (Data*) ::malloc(sizeof(Data)+(size+1)*sizeof(QChar)); Q_CHECK_PTR(d); d->ref = 1; d->size = size; @@ -1111,7 +1111,7 @@ QString::QString(int size, QChar ch) */ QString::QString(int size, Qt::Initialization) { - d = (Data*) qMalloc(sizeof(Data)+(size+1)*sizeof(QChar)); + d = (Data*) ::malloc(sizeof(Data)+(size+1)*sizeof(QChar)); Q_CHECK_PTR(d); d->ref = 1; d->size = size; @@ -1133,7 +1133,7 @@ QString::QString(int size, Qt::Initialization) */ QString::QString(QChar ch) { - d = (Data *) qMalloc(sizeof(Data) + 2*sizeof(QChar)); + d = (Data *) ::malloc(sizeof(Data) + 2*sizeof(QChar)); Q_CHECK_PTR(d); d->ref = 1; d->size = 1; @@ -1199,7 +1199,7 @@ QString::QString(QChar ch) // ### Qt 5: rename freeData() to avoid confusion. See task 197625. void QString::free(Data *d) { - qFree(d); + ::free(d); } /*! @@ -1312,7 +1312,7 @@ void QString::resize(int size) void QString::realloc(int alloc) { if (d->ref != 1 || d->offset) { - Data *x = static_cast(qMalloc(sizeof(Data) + (alloc+1) * sizeof(QChar))); + Data *x = static_cast(::malloc(sizeof(Data) + (alloc+1) * sizeof(QChar))); Q_CHECK_PTR(x); x->ref = 1; x->size = qMin(alloc, d->size); @@ -1325,7 +1325,7 @@ void QString::realloc(int alloc) QString::free(d); d = x; } else { - Data *p = static_cast(qRealloc(d, sizeof(Data) + (alloc+1) * sizeof(QChar))); + Data *p = static_cast(::realloc(d, sizeof(Data) + (alloc+1) * sizeof(QChar))); Q_CHECK_PTR(p); d = p; d->alloc = alloc; @@ -1483,11 +1483,11 @@ QString& QString::insert(int i, const QChar *unicode, int size) const ushort *s = (const ushort *)unicode; if (s >= d->data() && s < d->data() + d->alloc) { // Part of me - take a copy - ushort *tmp = static_cast(qMalloc(size * sizeof(QChar))); + ushort *tmp = static_cast(::malloc(size * sizeof(QChar))); Q_CHECK_PTR(tmp); memcpy(tmp, s, size * sizeof(QChar)); insert(i, reinterpret_cast(tmp), size); - qFree(tmp); + ::free(tmp); return *this; } @@ -1843,7 +1843,7 @@ void QString::replace_helper(uint *indices, int nIndices, int blen, const QChar // (which we could possibly invalidate via a realloc or corrupt via memcpy operations.) QChar *afterBuffer = const_cast(after); if (after >= reinterpret_cast(d->data()) && after < reinterpret_cast(d->data()) + d->size) { - afterBuffer = static_cast(qMalloc(alen*sizeof(QChar))); + afterBuffer = static_cast(::malloc(alen*sizeof(QChar))); Q_CHECK_PTR(afterBuffer); ::memcpy(afterBuffer, after, alen*sizeof(QChar)); } @@ -1898,11 +1898,11 @@ void QString::replace_helper(uint *indices, int nIndices, int blen, const QChar } } QT_CATCH(const std::bad_alloc &) { if (afterBuffer != after) - qFree(afterBuffer); + ::free(afterBuffer); QT_RETHROW; } if (afterBuffer != after) - qFree(afterBuffer); + ::free(afterBuffer); } /*! @@ -3756,7 +3756,7 @@ QString::Data *QString::fromLatin1_helper(const char *str, int size) } else { if (size < 0) size = qstrlen(str); - d = static_cast(qMalloc(sizeof(Data) + (size+1) * sizeof(QChar))); + d = static_cast(::malloc(sizeof(Data) + (size+1) * sizeof(QChar))); Q_CHECK_PTR(d); d->ref = 1; d->size = size; @@ -7063,7 +7063,7 @@ QString QString::fromRawData(const QChar *unicode, int size) } else if (!size) { x = const_cast(&shared_empty.str); } else { - x = static_cast(qMalloc(sizeof(Data) + sizeof(ushort))); + x = static_cast(::malloc(sizeof(Data) + sizeof(ushort))); Q_CHECK_PTR(x); x->ref = 1; x->size = size; diff --git a/src/corelib/tools/qvector.cpp b/src/corelib/tools/qvector.cpp index c58c846aa8..95775d4bd8 100644 --- a/src/corelib/tools/qvector.cpp +++ b/src/corelib/tools/qvector.cpp @@ -41,7 +41,9 @@ #include "qvector.h" #include "qtools_p.h" + #include +#include QT_BEGIN_NAMESPACE @@ -56,7 +58,7 @@ const QVectorData QVectorData::shared_null = { Q_REFCOUNT_INITIALIZER(-1), 0, 0, QVectorData *QVectorData::malloc(int sizeofTypedData, int size, int sizeofT, QVectorData *init) { - QVectorData* p = (QVectorData *)qMalloc(sizeofTypedData + (size - 1) * sizeofT); + QVectorData* p = (QVectorData *)::malloc(sizeofTypedData + (size - 1) * sizeofT); Q_CHECK_PTR(p); ::memcpy(p, init, sizeofTypedData + (qMin(size, init->alloc) - 1) * sizeofT); return p; @@ -64,14 +66,14 @@ QVectorData *QVectorData::malloc(int sizeofTypedData, int size, int sizeofT, QVe QVectorData *QVectorData::allocate(int size, int alignment) { - return static_cast(alignment > alignmentThreshold() ? qMallocAligned(size, alignment) : qMalloc(size)); + return static_cast(alignment > alignmentThreshold() ? qMallocAligned(size, alignment) : ::malloc(size)); } QVectorData *QVectorData::reallocate(QVectorData *x, int newsize, int oldsize, int alignment) { if (alignment > alignmentThreshold()) return static_cast(qReallocAligned(x, newsize, oldsize, alignment)); - return static_cast(qRealloc(x, newsize)); + return static_cast(realloc(x, newsize)); } void QVectorData::free(QVectorData *x, int alignment) @@ -79,7 +81,7 @@ void QVectorData::free(QVectorData *x, int alignment) if (alignment > alignmentThreshold()) qFreeAligned(x); else - qFree(x); + ::free(x); } int QVectorData::grow(int sizeofTypedData, int size, int sizeofT, bool excessive) diff --git a/src/corelib/xml/qxmlstream.cpp b/src/corelib/xml/qxmlstream.cpp index 787bbee409..04336c3a31 100644 --- a/src/corelib/xml/qxmlstream.cpp +++ b/src/corelib/xml/qxmlstream.cpp @@ -885,9 +885,9 @@ void QXmlStreamReaderPrivate::parseEntity(const QString &value) inline void QXmlStreamReaderPrivate::reallocateStack() { stack_size <<= 1; - sym_stack = reinterpret_cast (qRealloc(sym_stack, stack_size * sizeof(Value))); + sym_stack = reinterpret_cast (realloc(sym_stack, stack_size * sizeof(Value))); Q_CHECK_PTR(sym_stack); - state_stack = reinterpret_cast (qRealloc(state_stack, stack_size * sizeof(int))); + state_stack = reinterpret_cast (realloc(state_stack, stack_size * sizeof(int))); Q_CHECK_PTR(sym_stack); } @@ -897,8 +897,8 @@ QXmlStreamReaderPrivate::~QXmlStreamReaderPrivate() #ifndef QT_NO_TEXTCODEC delete decoder; #endif - qFree(sym_stack); - qFree(state_stack); + free(sym_stack); + free(state_stack); delete entityParser; } diff --git a/src/gui/image/qtiffhandler.cpp b/src/gui/image/qtiffhandler.cpp index 587e1e1867..475622021b 100644 --- a/src/gui/image/qtiffhandler.cpp +++ b/src/gui/image/qtiffhandler.cpp @@ -496,13 +496,13 @@ bool QTiffHandler::write(const QImage &image) } //// write the color table // allocate the color tables - uint16 *redTable = static_cast(qMalloc(256 * sizeof(uint16))); - uint16 *greenTable = static_cast(qMalloc(256 * sizeof(uint16))); - uint16 *blueTable = static_cast(qMalloc(256 * sizeof(uint16))); + uint16 *redTable = static_cast(malloc(256 * sizeof(uint16))); + uint16 *greenTable = static_cast(malloc(256 * sizeof(uint16))); + uint16 *blueTable = static_cast(malloc(256 * sizeof(uint16))); if (!redTable || !greenTable || !blueTable) { - qFree(redTable); - qFree(greenTable); - qFree(blueTable); + free(redTable); + free(greenTable); + free(blueTable); TIFFClose(tiff); return false; } @@ -519,9 +519,9 @@ bool QTiffHandler::write(const QImage &image) const bool setColorTableSuccess = TIFFSetField(tiff, TIFFTAG_COLORMAP, redTable, greenTable, blueTable); - qFree(redTable); - qFree(greenTable); - qFree(blueTable); + free(redTable); + free(greenTable); + free(blueTable); if (!setColorTableSuccess) { TIFFClose(tiff); diff --git a/src/gui/opengl/qopenglpaintengine.cpp b/src/gui/opengl/qopenglpaintengine.cpp index 441b3fa5be..834beda977 100644 --- a/src/gui/opengl/qopenglpaintengine.cpp +++ b/src/gui/opengl/qopenglpaintengine.cpp @@ -673,8 +673,8 @@ void QOpenGL2PaintEngineExPrivate::cleanupVectorPath(QPaintEngineEx *engine, voi d->unusedIBOSToClean << c->ibo; #else Q_UNUSED(engine); - qFree(c->vertices); - qFree(c->indices); + free(c->vertices); + free(c->indices); #endif delete c; } @@ -719,7 +719,7 @@ void QOpenGL2PaintEngineExPrivate::fill(const QVectorPath& path) cache->vbo = 0; Q_ASSERT(cache->ibo == 0); #else - qFree(cache->vertices); + free(cache->vertices); Q_ASSERT(cache->indices == 0); #endif updateCache = true; @@ -747,7 +747,7 @@ void QOpenGL2PaintEngineExPrivate::fill(const QVectorPath& path) glBufferData(GL_ARRAY_BUFFER, floatSizeInBytes, vertexCoordinateArray.data(), GL_STATIC_DRAW); cache->ibo = 0; #else - cache->vertices = (float *) qMalloc(floatSizeInBytes); + cache->vertices = (float *) malloc(floatSizeInBytes); memcpy(cache->vertices, vertexCoordinateArray.data(), floatSizeInBytes); cache->indices = 0; #endif @@ -799,8 +799,8 @@ void QOpenGL2PaintEngineExPrivate::fill(const QVectorPath& path) glDeleteBuffers(1, &cache->vbo); glDeleteBuffers(1, &cache->ibo); #else - qFree(cache->vertices); - qFree(cache->indices); + free(cache->vertices); + free(cache->indices); #endif updateCache = true; } @@ -835,12 +835,12 @@ void QOpenGL2PaintEngineExPrivate::fill(const QVectorPath& path) vertices[i] = float(inverseScale * polys.vertices.at(i)); funcs.glBufferData(GL_ARRAY_BUFFER, sizeof(float) * vertices.size(), vertices.data(), GL_STATIC_DRAW); #else - cache->vertices = (float *) qMalloc(sizeof(float) * polys.vertices.size()); + cache->vertices = (float *) malloc(sizeof(float) * polys.vertices.size()); if (polys.indices.type() == QVertexIndexVector::UnsignedInt) { - cache->indices = (quint32 *) qMalloc(sizeof(quint32) * polys.indices.size()); + cache->indices = (quint32 *) malloc(sizeof(quint32) * polys.indices.size()); memcpy(cache->indices, polys.indices.data(), sizeof(quint32) * polys.indices.size()); } else { - cache->indices = (quint16 *) qMalloc(sizeof(quint16) * polys.indices.size()); + cache->indices = (quint16 *) malloc(sizeof(quint16) * polys.indices.size()); memcpy(cache->indices, polys.indices.data(), sizeof(quint16) * polys.indices.size()); } for (int i = 0; i < polys.vertices.size(); ++i) diff --git a/src/network/kernel/qhostinfo_unix.cpp b/src/network/kernel/qhostinfo_unix.cpp index 85df770654..73882dd54f 100644 --- a/src/network/kernel/qhostinfo_unix.cpp +++ b/src/network/kernel/qhostinfo_unix.cpp @@ -329,7 +329,7 @@ QString QHostInfo::localDomainName() resolveLibrary(); if (local_res_ninit) { // using thread-safe version - res_state_ptr state = res_state_ptr(qMalloc(sizeof(*state))); + res_state_ptr state = res_state_ptr(malloc(sizeof(*state))); Q_CHECK_PTR(state); memset(state, 0, sizeof(*state)); local_res_ninit(state); @@ -337,7 +337,7 @@ QString QHostInfo::localDomainName() if (domainName.isEmpty()) domainName = QUrl::fromAce(state->dnsrch[0]); local_res_nclose(state); - qFree(state); + free(state); return domainName; } diff --git a/src/network/kernel/qnetworkinterface_win.cpp b/src/network/kernel/qnetworkinterface_win.cpp index 741e8e73ae..da9fa80efc 100644 --- a/src/network/kernel/qnetworkinterface_win.cpp +++ b/src/network/kernel/qnetworkinterface_win.cpp @@ -110,12 +110,12 @@ static QHash ipv4Netmasks() DWORD retval = ptrGetAdaptersInfo(pAdapter, &bufSize); if (retval == ERROR_BUFFER_OVERFLOW) { // need more memory - pAdapter = (IP_ADAPTER_INFO *)qMalloc(bufSize); + pAdapter = (IP_ADAPTER_INFO *)malloc(bufSize); if (!pAdapter) return ipv4netmasks; // try again if (ptrGetAdaptersInfo(pAdapter, &bufSize) != ERROR_SUCCESS) { - qFree(pAdapter); + free(pAdapter); return ipv4netmasks; } } else if (retval != ERROR_SUCCESS) { @@ -132,7 +132,7 @@ static QHash ipv4Netmasks() } } if (pAdapter != staticBuf) - qFree(pAdapter); + free(pAdapter); return ipv4netmasks; @@ -153,12 +153,12 @@ static QList interfaceListingWinXP() ULONG retval = ptrGetAdaptersAddresses(AF_UNSPEC, flags, NULL, pAdapter, &bufSize); if (retval == ERROR_BUFFER_OVERFLOW) { // need more memory - pAdapter = (IP_ADAPTER_ADDRESSES *)qMalloc(bufSize); + pAdapter = (IP_ADAPTER_ADDRESSES *)malloc(bufSize); if (!pAdapter) return interfaces; // try again if (ptrGetAdaptersAddresses(AF_UNSPEC, flags, NULL, pAdapter, &bufSize) != ERROR_SUCCESS) { - qFree(pAdapter); + free(pAdapter); return interfaces; } } else if (retval != ERROR_SUCCESS) { @@ -219,7 +219,7 @@ static QList interfaceListingWinXP() } if (pAdapter != staticBuf) - qFree(pAdapter); + free(pAdapter); return interfaces; } @@ -234,12 +234,12 @@ static QList interfaceListingWin2k() DWORD retval = ptrGetAdaptersInfo(pAdapter, &bufSize); if (retval == ERROR_BUFFER_OVERFLOW) { // need more memory - pAdapter = (IP_ADAPTER_INFO *)qMalloc(bufSize); + pAdapter = (IP_ADAPTER_INFO *)malloc(bufSize); if (!pAdapter) return interfaces; // try again if (ptrGetAdaptersInfo(pAdapter, &bufSize) != ERROR_SUCCESS) { - qFree(pAdapter); + free(pAdapter); return interfaces; } } else if (retval != ERROR_SUCCESS) { @@ -273,7 +273,7 @@ static QList interfaceListingWin2k() } if (pAdapter != staticBuf) - qFree(pAdapter); + free(pAdapter); return interfaces; } @@ -305,12 +305,12 @@ QString QHostInfo::localDomainName() ULONG bufSize = sizeof info; pinfo = &info; if (ptrGetNetworkParams(pinfo, &bufSize) == ERROR_BUFFER_OVERFLOW) { - pinfo = (FIXED_INFO *)qMalloc(bufSize); + pinfo = (FIXED_INFO *)malloc(bufSize); if (!pinfo) return QString(); // try again if (ptrGetNetworkParams(pinfo, &bufSize) != ERROR_SUCCESS) { - qFree(pinfo); + free(pinfo); return QString(); // error } } @@ -318,7 +318,7 @@ QString QHostInfo::localDomainName() QString domainName = QUrl::fromAce(pinfo->DomainName); if (pinfo != &info) - qFree(pinfo); + free(pinfo); return domainName; } diff --git a/src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp b/src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp index 388c3a36f9..85773fa3cc 100644 --- a/src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp +++ b/src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp @@ -674,8 +674,8 @@ void QGL2PaintEngineExPrivate::cleanupVectorPath(QPaintEngineEx *engine, void *d d->unusedIBOSToClean << c->ibo; #else Q_UNUSED(engine); - qFree(c->vertices); - qFree(c->indices); + free(c->vertices); + free(c->indices); #endif delete c; } @@ -720,7 +720,7 @@ void QGL2PaintEngineExPrivate::fill(const QVectorPath& path) cache->vbo = 0; Q_ASSERT(cache->ibo == 0); #else - qFree(cache->vertices); + free(cache->vertices); Q_ASSERT(cache->indices == 0); #endif updateCache = true; @@ -748,7 +748,7 @@ void QGL2PaintEngineExPrivate::fill(const QVectorPath& path) glBufferData(GL_ARRAY_BUFFER, floatSizeInBytes, vertexCoordinateArray.data(), GL_STATIC_DRAW); cache->ibo = 0; #else - cache->vertices = (float *) qMalloc(floatSizeInBytes); + cache->vertices = (float *) malloc(floatSizeInBytes); memcpy(cache->vertices, vertexCoordinateArray.data(), floatSizeInBytes); cache->indices = 0; #endif @@ -800,8 +800,8 @@ void QGL2PaintEngineExPrivate::fill(const QVectorPath& path) glDeleteBuffers(1, &cache->vbo); glDeleteBuffers(1, &cache->ibo); #else - qFree(cache->vertices); - qFree(cache->indices); + free(cache->vertices); + free(cache->indices); #endif updateCache = true; } @@ -836,12 +836,12 @@ void QGL2PaintEngineExPrivate::fill(const QVectorPath& path) vertices[i] = float(inverseScale * polys.vertices.at(i)); glBufferData(GL_ARRAY_BUFFER, sizeof(float) * vertices.size(), vertices.data(), GL_STATIC_DRAW); #else - cache->vertices = (float *) qMalloc(sizeof(float) * polys.vertices.size()); + cache->vertices = (float *) malloc(sizeof(float) * polys.vertices.size()); if (polys.indices.type() == QVertexIndexVector::UnsignedInt) { - cache->indices = (quint32 *) qMalloc(sizeof(quint32) * polys.indices.size()); + cache->indices = (quint32 *) malloc(sizeof(quint32) * polys.indices.size()); memcpy(cache->indices, polys.indices.data(), sizeof(quint32) * polys.indices.size()); } else { - cache->indices = (quint16 *) qMalloc(sizeof(quint16) * polys.indices.size()); + cache->indices = (quint16 *) malloc(sizeof(quint16) * polys.indices.size()); memcpy(cache->indices, polys.indices.data(), sizeof(quint16) * polys.indices.size()); } for (int i = 0; i < polys.vertices.size(); ++i) diff --git a/src/plugins/platforms/xcb/qxcbbackingstore.cpp b/src/plugins/platforms/xcb/qxcbbackingstore.cpp index 8f833def66..4348ddbae9 100644 --- a/src/plugins/platforms/xcb/qxcbbackingstore.cpp +++ b/src/plugins/platforms/xcb/qxcbbackingstore.cpp @@ -124,7 +124,7 @@ QXcbShmImage::QXcbShmImage(QXcbScreen *screen, const QSize &size, uint depth, QI m_shm_info.shmaddr = 0; - m_xcb_image->data = (uint8_t *)qMalloc(segmentSize); + m_xcb_image->data = (uint8_t *)malloc(segmentSize); } else { if (shmctl(m_shm_info.shmid, IPC_RMID, 0) == -1) qWarning() << "QXcbBackingStore: Error while marking the shared memory segment to be destroyed"; @@ -146,7 +146,7 @@ void QXcbShmImage::destroy() shmdt(m_shm_info.shmaddr); shmctl(m_shm_info.shmid, IPC_RMID, 0); } else { - qFree(m_xcb_image->data); + free(m_xcb_image->data); } } diff --git a/tests/auto/corelib/kernel/qmetaobjectbuilder/tst_qmetaobjectbuilder.cpp b/tests/auto/corelib/kernel/qmetaobjectbuilder/tst_qmetaobjectbuilder.cpp index 5e2e67b731..fb7122aec4 100644 --- a/tests/auto/corelib/kernel/qmetaobjectbuilder/tst_qmetaobjectbuilder.cpp +++ b/tests/auto/corelib/kernel/qmetaobjectbuilder/tst_qmetaobjectbuilder.cpp @@ -957,17 +957,17 @@ void tst_QMetaObjectBuilder::copyMetaObject() QMetaObjectBuilder builder(&QObject::staticMetaObject); QMetaObject *meta = builder.toMetaObject(); QVERIFY(sameMetaObject(meta, &QObject::staticMetaObject)); - qFree(meta); + free(meta); QMetaObjectBuilder builder2(&staticMetaObject); meta = builder2.toMetaObject(); QVERIFY(sameMetaObject(meta, &staticMetaObject)); - qFree(meta); + free(meta); QMetaObjectBuilder builder3(&SomethingOfEverything::staticMetaObject); meta = builder3.toMetaObject(); QVERIFY(sameMetaObject(meta, &SomethingOfEverything::staticMetaObject)); - qFree(meta); + free(meta); } // Serialize and deserialize a meta object and check that @@ -992,8 +992,8 @@ void tst_QMetaObjectBuilder::serialize() QMetaObject *meta2 = builder2.toMetaObject(); QVERIFY(sameMetaObject(meta, meta2)); - qFree(meta); - qFree(meta2); + free(meta); + free(meta2); } // Partial QMetaObjectBuilder diff --git a/tests/auto/widgets/graphicsview/qgraphicsanchorlayout/tst_qgraphicsanchorlayout.cpp b/tests/auto/widgets/graphicsview/qgraphicsanchorlayout/tst_qgraphicsanchorlayout.cpp index 3e39d46e4c..54b9355777 100644 --- a/tests/auto/widgets/graphicsview/qgraphicsanchorlayout/tst_qgraphicsanchorlayout.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicsanchorlayout/tst_qgraphicsanchorlayout.cpp @@ -1377,8 +1377,8 @@ void tst_QGraphicsAnchorLayout::stability() //static const int primes[] = {2, 3, 5, 13, 89, 233, 1597, 28657, 514229}; // fibo primes //const int primeCount = sizeof(primes)/sizeof(int); //int alloc = primes[pass % primeCount] + pass; - //void *mem = qMalloc(alloc); - //qFree(mem); + //void *mem = malloc(alloc); + //free(mem); QGraphicsAnchorLayout *l = createAmbiguousS60Layout(); p->setLayout(l); QSizeF layoutMinimumSize = l->effectiveSizeHint(Qt::MinimumSize); diff --git a/tests/benchmarks/network/access/qnetworkreply/tst_qnetworkreply.cpp b/tests/benchmarks/network/access/qnetworkreply/tst_qnetworkreply.cpp index d30dafbe4a..81f9c1a3e8 100644 --- a/tests/benchmarks/network/access/qnetworkreply/tst_qnetworkreply.cpp +++ b/tests/benchmarks/network/access/qnetworkreply/tst_qnetworkreply.cpp @@ -690,15 +690,15 @@ public: QSharedPointer data = downloadBufferAttribute.value >(); } else if (testType == DownloadBufferButUseRead) { // We had a download buffer but we benchmark here the "legacy" read() way to access it - char* replyData = (char*) qMalloc(uploadSize); + char* replyData = (char*) malloc(uploadSize); QVERIFY(reply->read(replyData, uploadSize) == uploadSize); - qFree(replyData); + free(replyData); } else if (testType == NoDownloadBuffer) { // We did not have a download buffer but we still need to benchmark having the data, e.g. reading it all. // This should be the slowest benchmark result. - char* replyData = (char*) qMalloc(uploadSize); + char* replyData = (char*) malloc(uploadSize); QVERIFY(reply->read(replyData, uploadSize) == uploadSize); - qFree(replyData); + free(replyData); } QMetaObject::invokeMethod(&QTestEventLoop::instance(), "exitLoop", Qt::QueuedConnection); -- cgit v1.2.3 From 4f94c73d6bfa0ed8e7fc098835f4ff25186b8934 Mon Sep 17 00:00:00 2001 From: Frederik Gladhorn Date: Thu, 5 Jan 2012 22:10:20 +0100 Subject: Image interface functions should be const. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I9c6ecd140abc4f4d5c28ad2228e1241d3891b5ad Reviewed-by: Jan-Arve Sæther --- src/gui/accessible/qaccessible2.h | 6 +++--- src/plugins/accessible/widgets/simplewidgets.cpp | 6 +++--- src/plugins/accessible/widgets/simplewidgets.h | 6 +++--- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/gui/accessible/qaccessible2.h b/src/gui/accessible/qaccessible2.h index 8de52978f1..0ec2cc48d1 100644 --- a/src/gui/accessible/qaccessible2.h +++ b/src/gui/accessible/qaccessible2.h @@ -274,9 +274,9 @@ class Q_GUI_EXPORT QAccessibleImageInterface public: virtual ~QAccessibleImageInterface() {} - virtual QString imageDescription() = 0; - virtual QSize imageSize() = 0; - virtual QRect imagePosition(QAccessible2::CoordinateType coordType) = 0; + virtual QString imageDescription() const = 0; + virtual QSize imageSize() const = 0; + virtual QRect imagePosition(QAccessible2::CoordinateType coordType) const = 0; }; #endif // QT_NO_ACCESSIBILITY diff --git a/src/plugins/accessible/widgets/simplewidgets.cpp b/src/plugins/accessible/widgets/simplewidgets.cpp index 86257f7a26..a24411626c 100644 --- a/src/plugins/accessible/widgets/simplewidgets.cpp +++ b/src/plugins/accessible/widgets/simplewidgets.cpp @@ -482,7 +482,7 @@ void *QAccessibleDisplay::interface_cast(QAccessible::InterfaceType t) } /*! \internal */ -QString QAccessibleDisplay::imageDescription() +QString QAccessibleDisplay::imageDescription() const { #ifndef QT_NO_TOOLTIP return widget()->toolTip(); @@ -492,7 +492,7 @@ QString QAccessibleDisplay::imageDescription() } /*! \internal */ -QSize QAccessibleDisplay::imageSize() +QSize QAccessibleDisplay::imageSize() const { QLabel *label = qobject_cast(widget()); if (!label) @@ -504,7 +504,7 @@ QSize QAccessibleDisplay::imageSize() } /*! \internal */ -QRect QAccessibleDisplay::imagePosition(QAccessible2::CoordinateType coordType) +QRect QAccessibleDisplay::imagePosition(QAccessible2::CoordinateType coordType) const { QLabel *label = qobject_cast(widget()); if (!label) diff --git a/src/plugins/accessible/widgets/simplewidgets.h b/src/plugins/accessible/widgets/simplewidgets.h index 2ab18909e8..838797218d 100644 --- a/src/plugins/accessible/widgets/simplewidgets.h +++ b/src/plugins/accessible/widgets/simplewidgets.h @@ -109,9 +109,9 @@ public: void *interface_cast(QAccessible::InterfaceType t); // QAccessibleImageInterface - QString imageDescription(); - QSize imageSize(); - QRect imagePosition(QAccessible2::CoordinateType coordType); + QString imageDescription() const; + QSize imageSize() const; + QRect imagePosition(QAccessible2::CoordinateType coordType) const; }; #ifndef QT_NO_LINEEDIT -- cgit v1.2.3 From ce5c8743e94b2ec6fc767e73ca3ec68b07b181b3 Mon Sep 17 00:00:00 2001 From: Frederik Gladhorn Date: Thu, 5 Jan 2012 22:42:23 +0100 Subject: Constify more accessibility interface functions. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: Iff8da09eef5288de92ccea753a8a5fda03e214b0 Reviewed-by: Jan-Arve Sæther --- src/gui/accessible/qaccessible2.cpp | 2 +- src/gui/accessible/qaccessible2.h | 32 +++++++++++----------- .../accessible/widgets/qaccessiblewidgets.cpp | 24 ++++++++-------- .../accessible/widgets/qaccessiblewidgets.h | 24 ++++++++-------- src/plugins/accessible/widgets/rangecontrols.cpp | 12 ++++---- src/plugins/accessible/widgets/rangecontrols.h | 12 ++++---- src/plugins/accessible/widgets/simplewidgets.cpp | 28 +++++++++---------- src/plugins/accessible/widgets/simplewidgets.h | 28 +++++++++---------- 8 files changed, 81 insertions(+), 81 deletions(-) diff --git a/src/gui/accessible/qaccessible2.cpp b/src/gui/accessible/qaccessible2.cpp index 71d00d38ac..d4c55c6d17 100644 --- a/src/gui/accessible/qaccessible2.cpp +++ b/src/gui/accessible/qaccessible2.cpp @@ -405,7 +405,7 @@ static QString textForRange(QAccessibleInterface *iface, int startOffset, int en } #endif -void QAccessibleSimpleEditableTextInterface::copyText(int startOffset, int endOffset) +void QAccessibleSimpleEditableTextInterface::copyText(int startOffset, int endOffset) const { #ifdef QT_NO_CLIPBOARD Q_UNUSED(startOffset); diff --git a/src/gui/accessible/qaccessible2.h b/src/gui/accessible/qaccessible2.h index 0ec2cc48d1..0b1ddc99b1 100644 --- a/src/gui/accessible/qaccessible2.h +++ b/src/gui/accessible/qaccessible2.h @@ -97,23 +97,23 @@ public: virtual ~QAccessibleTextInterface() {} virtual void addSelection(int startOffset, int endOffset) = 0; - virtual QString attributes(int offset, int *startOffset, int *endOffset) = 0; - virtual int cursorPosition() = 0; - virtual QRect characterRect(int offset, QAccessible2::CoordinateType coordType) = 0; - virtual int selectionCount() = 0; - virtual int offsetAtPoint(const QPoint &point, QAccessible2::CoordinateType coordType) = 0; - virtual void selection(int selectionIndex, int *startOffset, int *endOffset) = 0; - virtual QString text(int startOffset, int endOffset) = 0; + virtual QString attributes(int offset, int *startOffset, int *endOffset) const = 0; + virtual int cursorPosition() const = 0; + virtual QRect characterRect(int offset, QAccessible2::CoordinateType coordType) const = 0; + virtual int selectionCount() const = 0; + virtual int offsetAtPoint(const QPoint &point, QAccessible2::CoordinateType coordType) const = 0; + virtual void selection(int selectionIndex, int *startOffset, int *endOffset) const = 0; + virtual QString text(int startOffset, int endOffset) const = 0; virtual QString textBeforeOffset (int offset, QAccessible2::BoundaryType boundaryType, - int *startOffset, int *endOffset) = 0; + int *startOffset, int *endOffset) const = 0; virtual QString textAfterOffset(int offset, QAccessible2::BoundaryType boundaryType, - int *startOffset, int *endOffset) = 0; + int *startOffset, int *endOffset) const = 0; virtual QString textAtOffset(int offset, QAccessible2::BoundaryType boundaryType, - int *startOffset, int *endOffset) = 0; + int *startOffset, int *endOffset) const = 0; virtual void removeSelection(int selectionIndex) = 0; virtual void setCursorPosition(int position) = 0; virtual void setSelection(int selectionIndex, int startOffset, int endOffset) = 0; - virtual int characterCount() = 0; + virtual int characterCount() const = 0; virtual void scrollToSubstring(int startIndex, int endIndex) = 0; }; @@ -122,7 +122,7 @@ class Q_GUI_EXPORT QAccessibleEditableTextInterface public: virtual ~QAccessibleEditableTextInterface() {} - virtual void copyText(int startOffset, int endOffset) = 0; + virtual void copyText(int startOffset, int endOffset) const = 0; virtual void deleteText(int startOffset, int endOffset) = 0; virtual void insertText(int offset, const QString &text) = 0; virtual void cutText(int startOffset, int endOffset) = 0; @@ -136,7 +136,7 @@ class Q_GUI_EXPORT QAccessibleSimpleEditableTextInterface: public QAccessibleEdi public: QAccessibleSimpleEditableTextInterface(QAccessibleInterface *accessibleInterface); //### - void copyText(int startOffset, int endOffset); + void copyText(int startOffset, int endOffset) const; void deleteText(int startOffset, int endOffset); void insertText(int offset, const QString &text); void cutText(int startOffset, int endOffset); @@ -154,10 +154,10 @@ public: virtual ~QAccessibleValueInterface() {} - virtual QVariant currentValue() = 0; + virtual QVariant currentValue() const = 0; virtual void setCurrentValue(const QVariant &value) = 0; - virtual QVariant maximumValue() = 0; - virtual QVariant minimumValue() = 0; + virtual QVariant maximumValue() const = 0; + virtual QVariant minimumValue() const = 0; }; class Q_GUI_EXPORT QAccessibleTableCellInterface diff --git a/src/plugins/accessible/widgets/qaccessiblewidgets.cpp b/src/plugins/accessible/widgets/qaccessiblewidgets.cpp index f1c8540806..17031fe272 100644 --- a/src/plugins/accessible/widgets/qaccessiblewidgets.cpp +++ b/src/plugins/accessible/widgets/qaccessiblewidgets.cpp @@ -296,7 +296,7 @@ void QAccessibleTextEdit::addSelection(int startOffset, int endOffset) setSelection(0, startOffset, endOffset); } -QString QAccessibleTextEdit::attributes(int offset, int *startOffset, int *endOffset) +QString QAccessibleTextEdit::attributes(int offset, int *startOffset, int *endOffset) const { /* The list of attributes can be found at: http://linuxfoundation.org/collaborate/workgroups/accessibility/iaccessible2/textattributes @@ -406,12 +406,12 @@ QString QAccessibleTextEdit::attributes(int offset, int *startOffset, int *endOf return result; } -int QAccessibleTextEdit::cursorPosition() +int QAccessibleTextEdit::cursorPosition() const { return textEdit()->textCursor().position(); } -QRect QAccessibleTextEdit::characterRect(int offset, CoordinateType coordType) +QRect QAccessibleTextEdit::characterRect(int offset, CoordinateType coordType) const { QTextEdit *edit = textEdit(); QTextCursor cursor(edit->document()); @@ -443,12 +443,12 @@ QRect QAccessibleTextEdit::characterRect(int offset, CoordinateType coordType) return r; } -int QAccessibleTextEdit::selectionCount() +int QAccessibleTextEdit::selectionCount() const { return textEdit()->textCursor().hasSelection() ? 1 : 0; } -int QAccessibleTextEdit::offsetAtPoint(const QPoint &point, CoordinateType coordType) +int QAccessibleTextEdit::offsetAtPoint(const QPoint &point, CoordinateType coordType) const { QTextEdit *edit = textEdit(); @@ -461,7 +461,7 @@ int QAccessibleTextEdit::offsetAtPoint(const QPoint &point, CoordinateType coord return edit->document()->documentLayout()->hitTest(p, Qt::ExactHit); } -void QAccessibleTextEdit::selection(int selectionIndex, int *startOffset, int *endOffset) +void QAccessibleTextEdit::selection(int selectionIndex, int *startOffset, int *endOffset) const { *startOffset = *endOffset = 0; QTextCursor cursor = textEdit()->textCursor(); @@ -473,7 +473,7 @@ void QAccessibleTextEdit::selection(int selectionIndex, int *startOffset, int *e *endOffset = cursor.selectionEnd(); } -QString QAccessibleTextEdit::text(int startOffset, int endOffset) +QString QAccessibleTextEdit::text(int startOffset, int endOffset) const { QTextCursor cursor(textEdit()->document()); @@ -484,7 +484,7 @@ QString QAccessibleTextEdit::text(int startOffset, int endOffset) } QString QAccessibleTextEdit::textBeforeOffset (int offset, BoundaryType boundaryType, - int *startOffset, int *endOffset) + int *startOffset, int *endOffset) const { // TODO - what exactly is before? Q_UNUSED(offset); @@ -495,7 +495,7 @@ QString QAccessibleTextEdit::textBeforeOffset (int offset, BoundaryType boundary } QString QAccessibleTextEdit::textAfterOffset(int offset, BoundaryType boundaryType, - int *startOffset, int *endOffset) + int *startOffset, int *endOffset) const { // TODO - what exactly is after? Q_UNUSED(offset); @@ -506,7 +506,7 @@ QString QAccessibleTextEdit::textAfterOffset(int offset, BoundaryType boundaryTy } QString QAccessibleTextEdit::textAtOffset(int offset, BoundaryType boundaryType, - int *startOffset, int *endOffset) + int *startOffset, int *endOffset) const { Q_ASSERT(startOffset); Q_ASSERT(endOffset); @@ -587,7 +587,7 @@ void QAccessibleTextEdit::setSelection(int selectionIndex, int startOffset, int textEdit()->setTextCursor(cursor); } -int QAccessibleTextEdit::characterCount() +int QAccessibleTextEdit::characterCount() const { return textEdit()->toPlainText().count(); } @@ -620,7 +620,7 @@ static QTextCursor cursorForRange(QTextEdit *textEdit, int startOffset, int endO return cursor; } -void QAccessibleTextEdit::copyText(int startOffset, int endOffset) +void QAccessibleTextEdit::copyText(int startOffset, int endOffset) const { QTextCursor cursor = cursorForRange(textEdit(), startOffset, endOffset); diff --git a/src/plugins/accessible/widgets/qaccessiblewidgets.h b/src/plugins/accessible/widgets/qaccessiblewidgets.h index 5fce7464ff..44fdcc7a19 100644 --- a/src/plugins/accessible/widgets/qaccessiblewidgets.h +++ b/src/plugins/accessible/widgets/qaccessiblewidgets.h @@ -79,27 +79,27 @@ public: // QAccessibleTextInterface void addSelection(int startOffset, int endOffset); - QString attributes(int offset, int *startOffset, int *endOffset); - int cursorPosition(); - QRect characterRect(int offset, QAccessible2::CoordinateType coordType); - int selectionCount(); - int offsetAtPoint(const QPoint &point, QAccessible2::CoordinateType coordType); - void selection(int selectionIndex, int *startOffset, int *endOffset); - QString text(int startOffset, int endOffset); + QString attributes(int offset, int *startOffset, int *endOffset) const; + int cursorPosition() const; + QRect characterRect(int offset, QAccessible2::CoordinateType coordType) const; + int selectionCount() const; + int offsetAtPoint(const QPoint &point, QAccessible2::CoordinateType coordType) const; + void selection(int selectionIndex, int *startOffset, int *endOffset) const; + QString text(int startOffset, int endOffset) const; QString textBeforeOffset (int offset, QAccessible2::BoundaryType boundaryType, - int *startOffset, int *endOffset); + int *startOffset, int *endOffset) const; QString textAfterOffset(int offset, QAccessible2::BoundaryType boundaryType, - int *startOffset, int *endOffset); + int *startOffset, int *endOffset) const; QString textAtOffset(int offset, QAccessible2::BoundaryType boundaryType, - int *startOffset, int *endOffset); + int *startOffset, int *endOffset) const; void removeSelection(int selectionIndex); void setCursorPosition(int position); void setSelection(int selectionIndex, int startOffset, int endOffset); - int characterCount(); + int characterCount() const; void scrollToSubstring(int startIndex, int endIndex); // QAccessibleEditableTextInterface - void copyText(int startOffset, int endOffset); + void copyText(int startOffset, int endOffset) const; void deleteText(int startOffset, int endOffset); void insertText(int offset, const QString &text); void cutText(int startOffset, int endOffset); diff --git a/src/plugins/accessible/widgets/rangecontrols.cpp b/src/plugins/accessible/widgets/rangecontrols.cpp index 799260cc8c..6c439a71f0 100644 --- a/src/plugins/accessible/widgets/rangecontrols.cpp +++ b/src/plugins/accessible/widgets/rangecontrols.cpp @@ -94,7 +94,7 @@ void *QAccessibleAbstractSpinBox::interface_cast(QAccessible::InterfaceType t) return QAccessibleWidget::interface_cast(t); } -QVariant QAccessibleAbstractSpinBox::currentValue() +QVariant QAccessibleAbstractSpinBox::currentValue() const { QVariant result = abstractSpinBox()->property("value"); QVariant::Type type = result.type(); @@ -112,12 +112,12 @@ void QAccessibleAbstractSpinBox::setCurrentValue(const QVariant &value) abstractSpinBox()->setProperty("value", value); } -QVariant QAccessibleAbstractSpinBox::maximumValue() +QVariant QAccessibleAbstractSpinBox::maximumValue() const { return abstractSpinBox()->property("maximum"); } -QVariant QAccessibleAbstractSpinBox::minimumValue() +QVariant QAccessibleAbstractSpinBox::minimumValue() const { return abstractSpinBox()->property("minimum"); } @@ -258,7 +258,7 @@ void *QAccessibleAbstractSlider::interface_cast(QAccessible::InterfaceType t) return QAccessibleWidget::interface_cast(t); } -QVariant QAccessibleAbstractSlider::currentValue() +QVariant QAccessibleAbstractSlider::currentValue() const { return abstractSlider()->value(); } @@ -268,12 +268,12 @@ void QAccessibleAbstractSlider::setCurrentValue(const QVariant &value) abstractSlider()->setValue(value.toInt()); } -QVariant QAccessibleAbstractSlider::maximumValue() +QVariant QAccessibleAbstractSlider::maximumValue() const { return abstractSlider()->maximum(); } -QVariant QAccessibleAbstractSlider::minimumValue() +QVariant QAccessibleAbstractSlider::minimumValue() const { return abstractSlider()->minimum(); } diff --git a/src/plugins/accessible/widgets/rangecontrols.h b/src/plugins/accessible/widgets/rangecontrols.h index ea1f644650..218c48184c 100644 --- a/src/plugins/accessible/widgets/rangecontrols.h +++ b/src/plugins/accessible/widgets/rangecontrols.h @@ -67,10 +67,10 @@ public: void *interface_cast(QAccessible::InterfaceType t); // QAccessibleValueInterface - QVariant currentValue(); + QVariant currentValue() const; void setCurrentValue(const QVariant &value); - QVariant maximumValue(); - QVariant minimumValue(); + QVariant maximumValue() const; + QVariant minimumValue() const; // FIXME Action interface @@ -106,10 +106,10 @@ public: void *interface_cast(QAccessible::InterfaceType t); // QAccessibleValueInterface - QVariant currentValue(); + QVariant currentValue() const; void setCurrentValue(const QVariant &value); - QVariant maximumValue(); - QVariant minimumValue(); + QVariant maximumValue() const; + QVariant minimumValue() const; protected: QAbstractSlider *abstractSlider() const; diff --git a/src/plugins/accessible/widgets/simplewidgets.cpp b/src/plugins/accessible/widgets/simplewidgets.cpp index a24411626c..385ca09e08 100644 --- a/src/plugins/accessible/widgets/simplewidgets.cpp +++ b/src/plugins/accessible/widgets/simplewidgets.cpp @@ -615,30 +615,30 @@ void QAccessibleLineEdit::addSelection(int startOffset, int endOffset) setSelection(0, startOffset, endOffset); } -QString QAccessibleLineEdit::attributes(int offset, int *startOffset, int *endOffset) +QString QAccessibleLineEdit::attributes(int offset, int *startOffset, int *endOffset) const { // QLineEdit doesn't have text attributes *startOffset = *endOffset = offset; return QString(); } -int QAccessibleLineEdit::cursorPosition() +int QAccessibleLineEdit::cursorPosition() const { return lineEdit()->cursorPosition(); } -QRect QAccessibleLineEdit::characterRect(int /*offset*/, CoordinateType /*coordType*/) +QRect QAccessibleLineEdit::characterRect(int /*offset*/, CoordinateType /*coordType*/) const { // QLineEdit doesn't hand out character rects return QRect(); } -int QAccessibleLineEdit::selectionCount() +int QAccessibleLineEdit::selectionCount() const { return lineEdit()->hasSelectedText() ? 1 : 0; } -int QAccessibleLineEdit::offsetAtPoint(const QPoint &point, CoordinateType coordType) +int QAccessibleLineEdit::offsetAtPoint(const QPoint &point, CoordinateType coordType) const { QPoint p = point; if (coordType == RelativeToScreen) @@ -647,7 +647,7 @@ int QAccessibleLineEdit::offsetAtPoint(const QPoint &point, CoordinateType coord return lineEdit()->cursorPositionAt(p); } -void QAccessibleLineEdit::selection(int selectionIndex, int *startOffset, int *endOffset) +void QAccessibleLineEdit::selection(int selectionIndex, int *startOffset, int *endOffset) const { *startOffset = *endOffset = 0; if (selectionIndex != 0) @@ -657,7 +657,7 @@ void QAccessibleLineEdit::selection(int selectionIndex, int *startOffset, int *e *endOffset = *startOffset + lineEdit()->selectedText().count(); } -QString QAccessibleLineEdit::text(int startOffset, int endOffset) +QString QAccessibleLineEdit::text(int startOffset, int endOffset) const { if (startOffset > endOffset) return QString(); @@ -669,7 +669,7 @@ QString QAccessibleLineEdit::text(int startOffset, int endOffset) } QString QAccessibleLineEdit::textBeforeOffset(int offset, BoundaryType boundaryType, - int *startOffset, int *endOffset) + int *startOffset, int *endOffset) const { if (lineEdit()->echoMode() != QLineEdit::Normal) { *startOffset = *endOffset = -1; @@ -679,7 +679,7 @@ QString QAccessibleLineEdit::textBeforeOffset(int offset, BoundaryType boundaryT } QString QAccessibleLineEdit::textAfterOffset(int offset, BoundaryType boundaryType, - int *startOffset, int *endOffset) + int *startOffset, int *endOffset) const { if (lineEdit()->echoMode() != QLineEdit::Normal) { *startOffset = *endOffset = -1; @@ -689,7 +689,7 @@ QString QAccessibleLineEdit::textAfterOffset(int offset, BoundaryType boundaryTy } QString QAccessibleLineEdit::textAtOffset(int offset, BoundaryType boundaryType, - int *startOffset, int *endOffset) + int *startOffset, int *endOffset) const { if (lineEdit()->echoMode() != QLineEdit::Normal) { *startOffset = *endOffset = -1; @@ -719,7 +719,7 @@ void QAccessibleLineEdit::setSelection(int selectionIndex, int startOffset, int lineEdit()->setSelection(startOffset, endOffset - startOffset); } -int QAccessibleLineEdit::characterCount() +int QAccessibleLineEdit::characterCount() const { return lineEdit()->text().count(); } @@ -746,17 +746,17 @@ void *QAccessibleProgressBar::interface_cast(QAccessible::InterfaceType t) return QAccessibleDisplay::interface_cast(t); } -QVariant QAccessibleProgressBar::currentValue() +QVariant QAccessibleProgressBar::currentValue() const { return progressBar()->value(); } -QVariant QAccessibleProgressBar::maximumValue() +QVariant QAccessibleProgressBar::maximumValue() const { return progressBar()->maximum(); } -QVariant QAccessibleProgressBar::minimumValue() +QVariant QAccessibleProgressBar::minimumValue() const { return progressBar()->minimum(); } diff --git a/src/plugins/accessible/widgets/simplewidgets.h b/src/plugins/accessible/widgets/simplewidgets.h index 838797218d..88bc931336 100644 --- a/src/plugins/accessible/widgets/simplewidgets.h +++ b/src/plugins/accessible/widgets/simplewidgets.h @@ -128,23 +128,23 @@ public: // QAccessibleTextInterface void addSelection(int startOffset, int endOffset); - QString attributes(int offset, int *startOffset, int *endOffset); - int cursorPosition(); - QRect characterRect(int offset, QAccessible2::CoordinateType coordType); - int selectionCount(); - int offsetAtPoint(const QPoint &point, QAccessible2::CoordinateType coordType); - void selection(int selectionIndex, int *startOffset, int *endOffset); - QString text(int startOffset, int endOffset); + QString attributes(int offset, int *startOffset, int *endOffset) const; + int cursorPosition() const; + QRect characterRect(int offset, QAccessible2::CoordinateType coordType) const; + int selectionCount() const; + int offsetAtPoint(const QPoint &point, QAccessible2::CoordinateType coordType) const; + void selection(int selectionIndex, int *startOffset, int *endOffset) const; + QString text(int startOffset, int endOffset) const; QString textBeforeOffset (int offset, QAccessible2::BoundaryType boundaryType, - int *startOffset, int *endOffset); + int *startOffset, int *endOffset) const; QString textAfterOffset(int offset, QAccessible2::BoundaryType boundaryType, - int *startOffset, int *endOffset); + int *startOffset, int *endOffset) const; QString textAtOffset(int offset, QAccessible2::BoundaryType boundaryType, - int *startOffset, int *endOffset); + int *startOffset, int *endOffset) const; void removeSelection(int selectionIndex); void setCursorPosition(int position); void setSelection(int selectionIndex, int startOffset, int endOffset); - int characterCount(); + int characterCount() const; void scrollToSubstring(int startIndex, int endIndex); protected: @@ -160,9 +160,9 @@ public: void *interface_cast(QAccessible::InterfaceType t); // QAccessibleValueInterface - QVariant currentValue(); - QVariant maximumValue(); - QVariant minimumValue(); + QVariant currentValue() const; + QVariant maximumValue() const; + QVariant minimumValue() const; inline void setCurrentValue(const QVariant &) {} protected: -- cgit v1.2.3 From fc6c050b409ec4697a58e8f4fc028a6a4b3d46f7 Mon Sep 17 00:00:00 2001 From: Kim Motoyoshi Kalland Date: Fri, 6 Jan 2012 14:11:55 +0100 Subject: Limit Bezier curve subdivision to maximum 512 line segments. Avoid running out of time and memory for extreme cases. Task-number: QTBUG-23443 Change-Id: Iac7799097d61295bb7395a2efe48b3e7d9257919 Reviewed-by: Gunnar Sletta --- src/gui/painting/qbezier.cpp | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/src/gui/painting/qbezier.cpp b/src/gui/painting/qbezier.cpp index 4305ea8cbc..75a75ead7d 100644 --- a/src/gui/painting/qbezier.cpp +++ b/src/gui/painting/qbezier.cpp @@ -190,9 +190,12 @@ static inline bool findInflections(qreal a, qreal b, qreal c, void QBezier::addToPolygon(QPolygonF *polygon, qreal bezier_flattening_threshold) const { - QBezier beziers[32]; + QBezier beziers[10]; + int levels[10]; beziers[0] = *this; + levels[0] = 9; QBezier *b = beziers; + int *lvl = levels; while (b >= beziers) { // check if we can pop the top bezier curve from the stack @@ -208,23 +211,29 @@ void QBezier::addToPolygon(QPolygonF *polygon, qreal bezier_flattening_threshold qAbs(b->x1 - b->x3) + qAbs(b->y1 - b->y3); l = 1.; } - if (d < bezier_flattening_threshold*l || b == beziers + 31) { + if (d < bezier_flattening_threshold*l || *lvl == 0) { // good enough, we pop it off and add the endpoint polygon->append(QPointF(b->x4, b->y4)); --b; + --lvl; } else { // split, second half of the polygon goes lower into the stack b->split(b+1, b); + lvl[1] = --lvl[0]; ++b; + ++lvl; } } } void QBezier::addToPolygon(QDataBuffer &polygon, qreal bezier_flattening_threshold) const { - QBezier beziers[32]; + QBezier beziers[10]; + int levels[10]; beziers[0] = *this; + levels[0] = 9; QBezier *b = beziers; + int *lvl = levels; while (b >= beziers) { // check if we can pop the top bezier curve from the stack @@ -240,14 +249,17 @@ void QBezier::addToPolygon(QDataBuffer &polygon, qreal bezier_flattenin qAbs(b->x1 - b->x3) + qAbs(b->y1 - b->y3); l = 1.; } - if (d < bezier_flattening_threshold*l || b == beziers + 31) { + if (d < bezier_flattening_threshold*l || *lvl == 0) { // good enough, we pop it off and add the endpoint polygon.add(QPointF(b->x4, b->y4)); --b; + --lvl; } else { // split, second half of the polygon goes lower into the stack b->split(b+1, b); + lvl[1] = --lvl[0]; ++b; + ++lvl; } } } -- cgit v1.2.3 From 156d160c56a802c8b477a1a975853eda2f8eff61 Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Thu, 5 Jan 2012 13:56:01 +0100 Subject: QTimerInfo::expected is only needed for debugging The code for calculating the expected time is only useful for debugging purposes. Don't compile this into the library unless QTIMERINFO_DEBUG is defined. Change-Id: I6530e6a70410a12544410ef286225df98ceddcee Reviewed-by: Thiago Macieira --- src/corelib/kernel/qtimerinfo_unix.cpp | 25 ++++++++++++++++--------- src/corelib/kernel/qtimerinfo_unix_p.h | 2 +- 2 files changed, 17 insertions(+), 10 deletions(-) diff --git a/src/corelib/kernel/qtimerinfo_unix.cpp b/src/corelib/kernel/qtimerinfo_unix.cpp index c9ffee50bf..b89d4ccb30 100644 --- a/src/corelib/kernel/qtimerinfo_unix.cpp +++ b/src/corelib/kernel/qtimerinfo_unix.cpp @@ -342,17 +342,18 @@ static void calculateNextTimeout(QTimerInfo *t, timeval currentTime) switch (t->timerType) { case Qt::PreciseTimer: case Qt::CoarseTimer: - t->expected += t->interval; - if (t->expected < currentTime) { - t->expected = currentTime; - t->expected += t->interval; - } - t->timeout += t->interval; if (t->timeout < currentTime) { t->timeout = currentTime; t->timeout += t->interval; } +#ifdef QTIMERINFO_DEBUG + t->expected += t->interval; + if (t->expected < currentTime) { + t->expected = currentTime; + t->expected += t->interval; + } +#endif if (t->timerType == Qt::CoarseTimer) calculateCoarseTimerTimeout(t, currentTime); return; @@ -362,7 +363,11 @@ static void calculateNextTimeout(QTimerInfo *t, timeval currentTime) t->timeout.tv_sec += t->interval; if (t->timeout.tv_sec <= currentTime.tv_sec) t->timeout.tv_sec = currentTime.tv_sec + t->interval; +#ifdef QTIMERINFO_DEBUG t->expected.tv_sec += t->interval; + if (t->expected.tv_sec <= currentTime.tv_sec) + t->expected.tv_sec = currentTime.tv_sec + t->interval; +#endif return; } @@ -413,15 +418,16 @@ void QTimerInfoList::registerTimer(int timerId, int interval, Qt::TimerType time t->id = timerId; t->interval = interval; t->timerType = timerType; - t->expected = updateCurrentTime() + interval; t->obj = object; t->activateRef = 0; + timeval expected = updateCurrentTime() + interval; + switch (timerType) { case Qt::PreciseTimer: // high precision timer is based on millisecond precision // so no adjustment is necessary - t->timeout = t->expected; + t->timeout = expected; break; case Qt::CoarseTimer: @@ -433,7 +439,7 @@ void QTimerInfoList::registerTimer(int timerId, int interval, Qt::TimerType time t->timerType = Qt::VeryCoarseTimer; // fall through } else { - t->timeout = t->expected; + t->timeout = expected; if (interval <= 20) { t->timerType = Qt::PreciseTimer; // no adjustment is necessary @@ -460,6 +466,7 @@ void QTimerInfoList::registerTimer(int timerId, int interval, Qt::TimerType time timerInsert(t); #ifdef QTIMERINFO_DEBUG + t->expected = expected; t->cumulativeError = 0; t->count = 0; if (t->timerType != Qt::PreciseTimer) diff --git a/src/corelib/kernel/qtimerinfo_unix_p.h b/src/corelib/kernel/qtimerinfo_unix_p.h index 89d4d457b0..7f651381ab 100644 --- a/src/corelib/kernel/qtimerinfo_unix_p.h +++ b/src/corelib/kernel/qtimerinfo_unix_p.h @@ -66,12 +66,12 @@ struct QTimerInfo { int id; // - timer identifier int interval; // - timer interval in milliseconds Qt::TimerType timerType; // - timer type - timeval expected; // when timer is expected to fire timeval timeout; // - when to actually fire QObject *obj; // - object to receive event QTimerInfo **activateRef; // - ref from activateTimers #ifdef QTIMERINFO_DEBUG + timeval expected; // when timer is expected to fire float cumulativeError; uint count; #endif -- cgit v1.2.3 From d0bb97c327612eea76ba61070c5d93d0fb06360b Mon Sep 17 00:00:00 2001 From: Joerg Bornemann Date: Thu, 8 Dec 2011 11:04:24 +0100 Subject: split qprocess_win.cpp into Windows and WinCE parts Change-Id: I7f2cf2c42dd24ca162238e6dc6408ac39dfcd790 Reviewed-by: Oswald Buddenhagen --- src/corelib/io/io.pri | 7 +- src/corelib/io/qprocess_win.cpp | 83 ++-------- src/corelib/io/qprocess_wince.cpp | 330 ++++++++++++++++++++++++++++++++++++++ 3 files changed, 345 insertions(+), 75 deletions(-) create mode 100644 src/corelib/io/qprocess_wince.cpp diff --git a/src/corelib/io/io.pri b/src/corelib/io/io.pri index d7eb7109a1..1d31e5d794 100644 --- a/src/corelib/io/io.pri +++ b/src/corelib/io/io.pri @@ -72,7 +72,6 @@ SOURCES += \ win32 { SOURCES += io/qsettings_win.cpp - SOURCES += io/qprocess_win.cpp SOURCES += io/qfsfileengine_win.cpp SOURCES += io/qfilesystemwatcher_win.cpp @@ -84,6 +83,12 @@ win32 { SOURCES += io/qfilesystemengine_win.cpp SOURCES += io/qfilesystemiterator_win.cpp SOURCES += io/qstandardpaths_win.cpp + + wince* { + SOURCES += io/qprocess_wince.cpp + } else { + SOURCES += io/qprocess_win.cpp + } } else:unix|integrity { SOURCES += \ io/qfsfileengine_unix.cpp \ diff --git a/src/corelib/io/qprocess_win.cpp b/src/corelib/io/qprocess_win.cpp index 410f153447..fd5f078ff0 100644 --- a/src/corelib/io/qprocess_win.cpp +++ b/src/corelib/io/qprocess_win.cpp @@ -72,7 +72,6 @@ static void qt_create_pipe(Q_PIPE *pipe, bool in) // read handles to avoid non-closable handles (this is done by the // DuplicateHandle() call). -#if !defined(Q_OS_WINCE) SECURITY_ATTRIBUTES secAtt = { sizeof( SECURITY_ATTRIBUTES ), NULL, TRUE }; HANDLE tmpHandle; @@ -91,10 +90,6 @@ static void qt_create_pipe(Q_PIPE *pipe, bool in) } CloseHandle(tmpHandle); -#else - Q_UNUSED(pipe); - Q_UNUSED(in); -#endif } /* @@ -277,7 +272,6 @@ static QString qt_create_commandline(const QString &program, const QStringList & QProcessEnvironment QProcessEnvironment::systemEnvironment() { QProcessEnvironment env; -#if !defined(Q_OS_WINCE) // Calls to setenv() affect the low-level environment as well. // This is not the case the other way round. if (wchar_t *envStrings = GetEnvironmentStringsW()) { @@ -293,11 +287,9 @@ QProcessEnvironment QProcessEnvironment::systemEnvironment() } FreeEnvironmentStringsW(envStrings); } -#endif return env; } -#if !defined(Q_OS_WINCE) static QByteArray qt_create_environment(const QProcessEnvironmentPrivate::Hash &environment) { QByteArray envlist; @@ -357,7 +349,6 @@ static QByteArray qt_create_environment(const QProcessEnvironmentPrivate::Hash & } return envlist; } -#endif void QProcessPrivate::startProcess() { @@ -381,14 +372,10 @@ void QProcessPrivate::startProcess() !createChannel(stderrChannel)) return; -#if defined(Q_OS_WINCE) - QString args = qt_create_commandline(QString(), arguments); -#else QString args = qt_create_commandline(program, arguments); QByteArray envlist; if (environment.d.constData()) envlist = qt_create_environment(environment.d.constData()->hash); -#endif if (!nativeArguments.isEmpty()) { if (!args.isEmpty()) args += QLatin1Char(' '); @@ -402,15 +389,6 @@ void QProcessPrivate::startProcess() qDebug(" pass environment : %s", environment.isEmpty() ? "no" : "yes"); #endif -#if defined(Q_OS_WINCE) - QString fullPathProgram = program; - if (!QDir::isAbsolutePath(fullPathProgram)) - fullPathProgram = QFileInfo(fullPathProgram).absoluteFilePath(); - fullPathProgram.replace(QLatin1Char('/'), QLatin1Char('\\')); - success = CreateProcess((wchar_t*)fullPathProgram.utf16(), - (wchar_t*)args.utf16(), - 0, 0, false, 0, 0, 0, 0, pid); -#else DWORD dwCreationFlags = CREATE_NO_WINDOW; dwCreationFlags |= CREATE_UNICODE_ENVIRONMENT; STARTUPINFOW startupInfo = { sizeof( STARTUPINFO ), 0, 0, 0, @@ -443,7 +421,6 @@ void QProcessPrivate::startProcess() CloseHandle(stderrChannel.pipe[1]); stderrChannel.pipe[1] = INVALID_Q_PIPE; } -#endif // Q_OS_WINCE if (!success) { cleanup(); @@ -484,7 +461,6 @@ qint64 QProcessPrivate::bytesAvailableFromStdout() const return 0; DWORD bytesAvail = 0; -#if !defined(Q_OS_WINCE) PeekNamedPipe(stdoutChannel.pipe[0], 0, 0, 0, &bytesAvail, 0); #if defined QPROCESS_DEBUG qDebug("QProcessPrivate::bytesAvailableFromStdout() == %d", bytesAvail); @@ -501,7 +477,6 @@ qint64 QProcessPrivate::bytesAvailableFromStdout() const } bytesAvail = 0; } -#endif return bytesAvail; } @@ -511,7 +486,6 @@ qint64 QProcessPrivate::bytesAvailableFromStderr() const return 0; DWORD bytesAvail = 0; -#if !defined(Q_OS_WINCE) PeekNamedPipe(stderrChannel.pipe[0], 0, 0, 0, &bytesAvail, 0); #if defined QPROCESS_DEBUG qDebug("QProcessPrivate::bytesAvailableFromStderr() == %d", bytesAvail); @@ -528,7 +502,6 @@ qint64 QProcessPrivate::bytesAvailableFromStderr() const } bytesAvail = 0; } -#endif return bytesAvail; } @@ -596,13 +569,6 @@ bool QProcessPrivate::waitForReadyRead(int msecs) { Q_Q(QProcess); -#if defined(Q_OS_WINCE) - processError = QProcess::ReadError; - q->setErrorString(QProcess::tr("Error reading from process")); - emit q->error(processError); - return false; -#endif - QIncrementalSleepTimer timer(msecs); forever { @@ -646,13 +612,6 @@ bool QProcessPrivate::waitForBytesWritten(int msecs) { Q_Q(QProcess); -#if defined(Q_OS_WINCE) - processError = QProcess::ReadError; - q->setErrorString(QProcess::tr("Error reading from process")); - emit q->error(processError); - return false; -#endif - QIncrementalSleepTimer timer(msecs); forever { @@ -786,13 +745,6 @@ qint64 QProcessPrivate::writeToStdin(const char *data, qint64 maxlen) { Q_Q(QProcess); -#if defined(Q_OS_WINCE) - processError = QProcess::WriteError; - q->setErrorString(QProcess::tr("Error writing to process")); - emit q->error(processError); - return -1; -#endif - if (!pipeWriter) { pipeWriter = new QWindowsPipeWriter(stdinChannel.pipe[1], q); pipeWriter->start(); @@ -832,36 +784,19 @@ void QProcessPrivate::_q_notified() bool QProcessPrivate::startDetached(const QString &program, const QStringList &arguments, const QString &workingDir, qint64 *pid) { -#if defined(Q_OS_WINCE) - Q_UNUSED(workingDir); - QString args = qt_create_commandline(QString(), arguments); -#else QString args = qt_create_commandline(program, arguments); -#endif - bool success = false; - PROCESS_INFORMATION pinfo; -#if defined(Q_OS_WINCE) - QString fullPathProgram = program; - if (!QDir::isAbsolutePath(fullPathProgram)) - fullPathProgram.prepend(QDir::currentPath().append(QLatin1Char('/'))); - fullPathProgram.replace(QLatin1Char('/'), QLatin1Char('\\')); - success = CreateProcess((wchar_t*)fullPathProgram.utf16(), - (wchar_t*)args.utf16(), - 0, 0, false, CREATE_NEW_CONSOLE, 0, 0, 0, &pinfo); -#else - STARTUPINFOW startupInfo = { sizeof( STARTUPINFO ), 0, 0, 0, - (ulong)CW_USEDEFAULT, (ulong)CW_USEDEFAULT, - (ulong)CW_USEDEFAULT, (ulong)CW_USEDEFAULT, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }; - success = CreateProcess(0, (wchar_t*)args.utf16(), - 0, 0, FALSE, CREATE_UNICODE_ENVIRONMENT | CREATE_NEW_CONSOLE, 0, - workingDir.isEmpty() ? 0 : (wchar_t*)workingDir.utf16(), - &startupInfo, &pinfo); -#endif // Q_OS_WINCE + STARTUPINFOW startupInfo = { sizeof( STARTUPINFO ), 0, 0, 0, + (ulong)CW_USEDEFAULT, (ulong)CW_USEDEFAULT, + (ulong)CW_USEDEFAULT, (ulong)CW_USEDEFAULT, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 + }; + success = CreateProcess(0, (wchar_t*)args.utf16(), + 0, 0, FALSE, CREATE_UNICODE_ENVIRONMENT | CREATE_NEW_CONSOLE, 0, + workingDir.isEmpty() ? 0 : (wchar_t*)workingDir.utf16(), + &startupInfo, &pinfo); if (success) { CloseHandle(pinfo.hThread); diff --git a/src/corelib/io/qprocess_wince.cpp b/src/corelib/io/qprocess_wince.cpp new file mode 100644 index 0000000000..16a34469e7 --- /dev/null +++ b/src/corelib/io/qprocess_wince.cpp @@ -0,0 +1,330 @@ +/**************************************************************************** +** +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtCore module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include "qprocess.h" +#include "qprocess_p.h" + +#include +#include +#include +#include +#include +#include + +#ifndef QT_NO_PROCESS + +QT_BEGIN_NAMESPACE + +//#define QPROCESS_DEBUG + +void QProcessPrivate::destroyPipe(Q_PIPE pipe[2]) +{ + Q_UNUSED(pipe); +} + +static QString qt_create_commandline(const QString &program, const QStringList &arguments) +{ + QString args; + if (!program.isEmpty()) { + QString programName = program; + if (!programName.startsWith(QLatin1Char('\"')) && !programName.endsWith(QLatin1Char('\"')) && programName.contains(QLatin1Char(' '))) + programName = QLatin1Char('\"') + programName + QLatin1Char('\"'); + programName.replace(QLatin1Char('/'), QLatin1Char('\\')); + + // add the prgram as the first arg ... it works better + args = programName + QLatin1Char(' '); + } + + for (int i=0; i 0 && tmp.at(i - 1) == QLatin1Char('\\')) + --i; + tmp.insert(i, QLatin1Char('"')); + tmp.prepend(QLatin1Char('"')); + } + args += QLatin1Char(' ') + tmp; + } + return args; +} + +QProcessEnvironment QProcessEnvironment::systemEnvironment() +{ + QProcessEnvironment env; + return env; +} + +void QProcessPrivate::startProcess() +{ + Q_Q(QProcess); + + bool success = false; + + if (pid) { + CloseHandle(pid->hThread); + CloseHandle(pid->hProcess); + delete pid; + pid = 0; + } + pid = new PROCESS_INFORMATION; + memset(pid, 0, sizeof(PROCESS_INFORMATION)); + + q->setProcessState(QProcess::Starting); + + QString args = qt_create_commandline(QString(), arguments); + if (!nativeArguments.isEmpty()) { + if (!args.isEmpty()) + args += QLatin1Char(' '); + args += nativeArguments; + } + +#if defined QPROCESS_DEBUG + qDebug("Creating process"); + qDebug(" program : [%s]", program.toLatin1().constData()); + qDebug(" args : %s", args.toLatin1().constData()); + qDebug(" pass environment : %s", environment.isEmpty() ? "no" : "yes"); +#endif + + QString fullPathProgram = program; + if (!QDir::isAbsolutePath(fullPathProgram)) + fullPathProgram = QFileInfo(fullPathProgram).absoluteFilePath(); + fullPathProgram.replace(QLatin1Char('/'), QLatin1Char('\\')); + success = CreateProcess((wchar_t*)fullPathProgram.utf16(), + (wchar_t*)args.utf16(), + 0, 0, false, 0, 0, 0, 0, pid); + + if (!success) { + cleanup(); + processError = QProcess::FailedToStart; + emit q->error(processError); + q->setProcessState(QProcess::NotRunning); + return; + } + + q->setProcessState(QProcess::Running); + // User can call kill()/terminate() from the stateChanged() slot + // so check before proceeding + if (!pid) + return; + + if (threadData->eventDispatcher) { + processFinishedNotifier = new QWinEventNotifier(pid->hProcess, q); + QObject::connect(processFinishedNotifier, SIGNAL(activated(HANDLE)), q, SLOT(_q_processDied())); + processFinishedNotifier->setEnabled(true); + } + + // give the process a chance to start ... + Sleep(SLEEPMIN * 2); + _q_startupNotification(); +} + +bool QProcessPrivate::processStarted() +{ + return processState == QProcess::Running; +} + +qint64 QProcessPrivate::bytesAvailableFromStdout() const +{ + return 0; +} + +qint64 QProcessPrivate::bytesAvailableFromStderr() const +{ + return 0; +} + +qint64 QProcessPrivate::readFromStdout(char *data, qint64 maxlen) +{ + return -1; +} + +qint64 QProcessPrivate::readFromStderr(char *data, qint64 maxlen) +{ + return -1; +} + +static BOOL QT_WIN_CALLBACK qt_terminateApp(HWND hwnd, LPARAM procId) +{ + DWORD currentProcId = 0; + GetWindowThreadProcessId(hwnd, ¤tProcId); + if (currentProcId == (DWORD)procId) + PostMessage(hwnd, WM_CLOSE, 0, 0); + + return TRUE; +} + +void QProcessPrivate::terminateProcess() +{ + if (pid) { + EnumWindows(qt_terminateApp, (LPARAM)pid->dwProcessId); + PostThreadMessage(pid->dwThreadId, WM_CLOSE, 0, 0); + } +} + +void QProcessPrivate::killProcess() +{ + if (pid) + TerminateProcess(pid->hProcess, 0xf291); +} + +bool QProcessPrivate::waitForStarted(int) +{ + Q_Q(QProcess); + + if (processStarted()) + return true; + + if (processError == QProcess::FailedToStart) + return false; + + processError = QProcess::Timedout; + q->setErrorString(QProcess::tr("Process operation timed out")); + return false; +} + +bool QProcessPrivate::waitForReadyRead(int msecs) +{ + return false; +} + +bool QProcessPrivate::waitForBytesWritten(int msecs) +{ + return false; +} + +bool QProcessPrivate::waitForFinished(int msecs) +{ + Q_Q(QProcess); +#if defined QPROCESS_DEBUG + qDebug("QProcessPrivate::waitForFinished(%d)", msecs); +#endif + + QIncrementalSleepTimer timer(msecs); + + forever { + if (!pid) + return true; + + if (WaitForSingleObject(pid->hProcess, timer.nextSleepTime()) == WAIT_OBJECT_0) { + _q_processDied(); + return true; + } + + if (timer.hasTimedOut()) + break; + } + processError = QProcess::Timedout; + q->setErrorString(QProcess::tr("Process operation timed out")); + return false; +} + +void QProcessPrivate::findExitCode() +{ + DWORD theExitCode; + if (GetExitCodeProcess(pid->hProcess, &theExitCode)) { + exitCode = theExitCode; + //### for now we assume a crash if exit code is less than -1 or the magic number + crashed = (exitCode == 0xf291 || (int)exitCode < 0); + } +} + +void QProcessPrivate::flushPipeWriter() +{ +} + +qint64 QProcessPrivate::pipeWriterBytesToWrite() const +{ + return 0; +} + +qint64 QProcessPrivate::writeToStdin(const char *data, qint64 maxlen) +{ + Q_UNUSED(data); + Q_UNUSED(maxlen); + return -1; +} + +bool QProcessPrivate::waitForWrite(int msecs) +{ + Q_UNUSED(msecs); + return false; +} + +void QProcessPrivate::_q_notified() +{ +} + +bool QProcessPrivate::startDetached(const QString &program, const QStringList &arguments, const QString &workingDir, qint64 *pid) +{ + Q_UNUSED(workingDir); + QString args = qt_create_commandline(QString(), arguments); + + bool success = false; + + PROCESS_INFORMATION pinfo; + + QString fullPathProgram = program; + if (!QDir::isAbsolutePath(fullPathProgram)) + fullPathProgram.prepend(QDir::currentPath().append(QLatin1Char('/'))); + fullPathProgram.replace(QLatin1Char('/'), QLatin1Char('\\')); + success = CreateProcess((wchar_t*)fullPathProgram.utf16(), + (wchar_t*)args.utf16(), + 0, 0, false, CREATE_NEW_CONSOLE, 0, 0, 0, &pinfo); + + if (success) { + CloseHandle(pinfo.hThread); + CloseHandle(pinfo.hProcess); + if (pid) + *pid = pinfo.dwProcessId; + } + + return success; +} + +QT_END_NAMESPACE + +#endif // QT_NO_PROCESS -- cgit v1.2.3 From 9ddd2c0f35ab93ae1142028569695f1ce58f74a6 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Fri, 6 Jan 2012 07:42:36 +0100 Subject: Remove documentation reference to non-existant class. Change-Id: Idaaf16a9482edaa43e5b2389adc82cad701b1407 Reviewed-by: Thiago Macieira --- src/dbus/qdbusmessage.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/dbus/qdbusmessage.cpp b/src/dbus/qdbusmessage.cpp index 779ab81008..8cd2cc5d67 100644 --- a/src/dbus/qdbusmessage.cpp +++ b/src/dbus/qdbusmessage.cpp @@ -389,7 +389,7 @@ QDBusMessage QDBusMessage::createSignal(const QString &path, const QString &inte When using DBus in a peer-to-peer context (i.e., not on a bus), the \a service parameter is optional. - The QDBusObject and QDBusInterface classes provide a simpler abstraction to synchronous + The QDBusInterface class provides a simpler abstraction to synchronous method calling. This function returns a QDBusMessage object that can be sent with -- cgit v1.2.3 From 9eacf32de9c61417887e1550915c310c3187ac10 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Tue, 3 Jan 2012 21:38:41 +0100 Subject: Move the qitemmodel test to the itemmodels directory. Change-Id: I67e1008bea0d94ffbc52aad453a29645261e109e Reviewed-by: Lars Knoll --- tests/auto/corelib/itemmodels/itemmodels.pro | 1 + .../auto/corelib/itemmodels/qitemmodel/.gitignore | 1 + tests/auto/corelib/itemmodels/qitemmodel/README | 3 + .../corelib/itemmodels/qitemmodel/modelstotest.cpp | 425 ++++++ .../corelib/itemmodels/qitemmodel/qitemmodel.pro | 4 + .../itemmodels/qitemmodel/tst_qitemmodel.cpp | 1389 ++++++++++++++++++++ tests/auto/corelib/kernel/kernel.pro | 1 - tests/auto/corelib/kernel/qitemmodel/.gitignore | 1 - tests/auto/corelib/kernel/qitemmodel/README | 3 - .../corelib/kernel/qitemmodel/modelstotest.cpp | 425 ------ .../auto/corelib/kernel/qitemmodel/qitemmodel.pro | 4 - .../corelib/kernel/qitemmodel/tst_qitemmodel.cpp | 1389 -------------------- 12 files changed, 1823 insertions(+), 1823 deletions(-) create mode 100644 tests/auto/corelib/itemmodels/qitemmodel/.gitignore create mode 100644 tests/auto/corelib/itemmodels/qitemmodel/README create mode 100644 tests/auto/corelib/itemmodels/qitemmodel/modelstotest.cpp create mode 100644 tests/auto/corelib/itemmodels/qitemmodel/qitemmodel.pro create mode 100644 tests/auto/corelib/itemmodels/qitemmodel/tst_qitemmodel.cpp delete mode 100644 tests/auto/corelib/kernel/qitemmodel/.gitignore delete mode 100644 tests/auto/corelib/kernel/qitemmodel/README delete mode 100644 tests/auto/corelib/kernel/qitemmodel/modelstotest.cpp delete mode 100644 tests/auto/corelib/kernel/qitemmodel/qitemmodel.pro delete mode 100644 tests/auto/corelib/kernel/qitemmodel/tst_qitemmodel.cpp diff --git a/tests/auto/corelib/itemmodels/itemmodels.pro b/tests/auto/corelib/itemmodels/itemmodels.pro index c5124c3241..851035e949 100644 --- a/tests/auto/corelib/itemmodels/itemmodels.pro +++ b/tests/auto/corelib/itemmodels/itemmodels.pro @@ -3,6 +3,7 @@ TEMPLATE=subdirs SUBDIRS = qabstractitemmodel \ qabstractproxymodel \ qidentityproxymodel \ + qitemmodel \ qitemselectionmodel \ qsortfilterproxymodel \ qstringlistmodel diff --git a/tests/auto/corelib/itemmodels/qitemmodel/.gitignore b/tests/auto/corelib/itemmodels/qitemmodel/.gitignore new file mode 100644 index 0000000000..017be17fa8 --- /dev/null +++ b/tests/auto/corelib/itemmodels/qitemmodel/.gitignore @@ -0,0 +1 @@ +tst_qitemmodel diff --git a/tests/auto/corelib/itemmodels/qitemmodel/README b/tests/auto/corelib/itemmodels/qitemmodel/README new file mode 100644 index 0000000000..bddec0cef2 --- /dev/null +++ b/tests/auto/corelib/itemmodels/qitemmodel/README @@ -0,0 +1,3 @@ +This is a QStandardItemModel test. It will help catch a lot of simple problems. You should still create your own test for custom functionality and functions that your model has. + +Add your model to the modelstotest.cpp file (qt model's are included as examples) and modify the pro file accordingly. Fix the errors in order of failure as later tests assume the ones before them have passed. diff --git a/tests/auto/corelib/itemmodels/qitemmodel/modelstotest.cpp b/tests/auto/corelib/itemmodels/qitemmodel/modelstotest.cpp new file mode 100644 index 0000000000..5f96513171 --- /dev/null +++ b/tests/auto/corelib/itemmodels/qitemmodel/modelstotest.cpp @@ -0,0 +1,425 @@ +/**************************************************************************** +** +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + + +#include +#include +#include +#include +#include + +/* + To add a model to be tested add the header file to the includes + and impliment what is needed in the four functions below. + + You can add more then one model, several Qt models and included as examples. + + In tst_qitemmodel.cpp a new ModelsToTest object is created for each test. + + When you have errors fix the first ones first. Later tests depend upon them working +*/ + +class ModelsToTest { + +public: + ModelsToTest(); + + QAbstractItemModel *createModel(const QString &modelType); + QModelIndex populateTestArea(QAbstractItemModel *model); + void cleanupTestArea(QAbstractItemModel *model); + + enum Read { + ReadOnly, // wont perform remove(), insert(), and setData() + ReadWrite + }; + enum Contains { + Empty, // Confirm that rowCount() == 0 etc throughout the test + HasData // Confirm that rowCount() != 0 etc throughout the test + }; + + struct test { + test(QString m, Read r, Contains c) : modelType(m), read(r), contains(c){}; + + QString modelType; + Read read; + Contains contains; + }; + + QList tests; + + static void setupDatabase(); +}; + + +/*! + Add new tests, they can be the same model, but in a different state. + + The name of the model is passed to createModel + If readOnly is true the remove tests will be skipped. Example: QDirModel is disabled. + If createModel returns an empty model. Example: QDirModel does not + */ +ModelsToTest::ModelsToTest() +{ + setupDatabase(); + + tests.append(test("QDirModel", ReadOnly, HasData)); + tests.append(test("QStringListModel", ReadWrite, HasData)); + tests.append(test("QStringListModelEmpty", ReadWrite, Empty)); + + tests.append(test("QStandardItemModel", ReadWrite, HasData)); + tests.append(test("QStandardItemModelEmpty", ReadWrite, Empty)); + + // QSortFilterProxyModel test uses QStandardItemModel so test it first + tests.append(test("QSortFilterProxyModel", ReadWrite, HasData)); + tests.append(test("QSortFilterProxyModelEmpty", ReadWrite, Empty)); + tests.append(test("QSortFilterProxyModelRegExp", ReadWrite, HasData)); + + tests.append(test("QListModel", ReadWrite, HasData)); + tests.append(test("QListModelEmpty", ReadWrite, Empty)); + tests.append(test("QTableModel", ReadWrite, HasData)); + tests.append(test("QTableModelEmpty", ReadWrite, Empty)); + + tests.append(test("QTreeModel", ReadWrite, HasData)); + tests.append(test("QTreeModelEmpty", ReadWrite, Empty)); + + tests.append(test("QSqlQueryModel", ReadOnly, HasData)); + tests.append(test("QSqlQueryModelEmpty", ReadOnly, Empty)); + + // Fails on remove + tests.append(test("QSqlTableModel", ReadOnly, HasData)); +} + +/*! + Return a new modelType. + */ +QAbstractItemModel *ModelsToTest::createModel(const QString &modelType) +{ + if (modelType == "QStringListModelEmpty") + return new QStringListModel(); + + if (modelType == "QStringListModel") { + QStringListModel *model = new QStringListModel(); + populateTestArea(model); + return model; + } + + if (modelType == "QStandardItemModelEmpty") { + return new QStandardItemModel(); + } + + if (modelType == "QStandardItemModel") { + QStandardItemModel *model = new QStandardItemModel(); + populateTestArea(model); + return model; + } + + if (modelType == "QSortFilterProxyModelEmpty") { + QSortFilterProxyModel *model = new QSortFilterProxyModel; + QStandardItemModel *standardItemModel = new QStandardItemModel; + model->setSourceModel(standardItemModel); + return model; + } + + if (modelType == "QSortFilterProxyModelRegExp") { + QSortFilterProxyModel *model = new QSortFilterProxyModel; + QStandardItemModel *standardItemModel = new QStandardItemModel; + model->setSourceModel(standardItemModel); + populateTestArea(model); + model->setFilterRegExp(QRegExp("(^$|I.*)")); + return model; + } + + if (modelType == "QSortFilterProxyModel") { + QSortFilterProxyModel *model = new QSortFilterProxyModel; + QStandardItemModel *standardItemModel = new QStandardItemModel; + model->setSourceModel(standardItemModel); + populateTestArea(model); + return model; + } + + if (modelType == "QDirModel") { + QDirModel *model = new QDirModel(); + model->setReadOnly(false); + return model; + } + + if (modelType == "QSqlQueryModel") { + QSqlQueryModel *model = new QSqlQueryModel(); + populateTestArea(model); + return model; + } + + if (modelType == "QSqlQueryModelEmpty") { + QSqlQueryModel *model = new QSqlQueryModel(); + return model; + } + + if (modelType == "QSqlTableModel") { + QSqlTableModel *model = new QSqlTableModel(); + populateTestArea(model); + return model; + } + + if (modelType == "QListModelEmpty") + return (new QListWidget)->model(); + + if (modelType == "QListModel") { + QListWidget *widget = new QListWidget; + populateTestArea(widget->model()); + return widget->model(); + } + + if (modelType == "QTableModelEmpty") + return (new QTableWidget)->model(); + + if (modelType == "QTableModel") { + QTableWidget *widget = new QTableWidget; + populateTestArea(widget->model()); + return widget->model(); + } + + if (modelType == "QTreeModelEmpty") { + QTreeWidget *widget = new QTreeWidget; + return widget->model(); + } + + if (modelType == "QTreeModel") { + QTreeWidget *widget = new QTreeWidget; + populateTestArea(widget->model()); + return widget->model(); + } + + return 0; +} + +/*! + Fills model with some test data at least twenty rows and if possible twenty or more columns. + Return the parent of a row/column that can be tested. + + NOTE: If readOnly is true tests will try to remove and add rows and columns. + If you have a tree model returning not the root index will help catch more errors. + */ +QModelIndex ModelsToTest::populateTestArea(QAbstractItemModel *model) +{ + if (QStringListModel *stringListModel = qobject_cast(model)) { + QString alphabet = "a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z"; + stringListModel->setStringList( alphabet.split(",") ); + return QModelIndex(); + } + + if (qobject_cast(model)) { + // Basic tree StandardItemModel + QModelIndex parent; + QVariant blue = QVariant(QColor(Qt::blue)); +#ifndef Q_OS_WINCE + for (int i = 0; i < 4; ++i) { +#else + for (int i = 0; i < 2; ++i) { +#endif + parent = model->index(0, 0, parent); + model->insertRows(0, 26 + i, parent); +#ifndef Q_OS_WINCE + model->insertColumns(0, 26 + i, parent); +#else + model->insertColumns(0, 4 + i, parent); +#endif + // Fill in some values to make it easier to debug + /* + for (int x = 0; x < 26 + i; ++x) { + QString xval = QString::number(x); + for (int y = 0; y < 26 + i; ++y) { + QString val = xval + QString::number(y) + QString::number(i); + QModelIndex index = model->index(x, y, parent); + model->setData(index, val); + model->setData(index, blue, Qt::TextColorRole); + } + } + */ + } + return model->index(0,0); + } + + if (qobject_cast(model)) { + QAbstractItemModel *realModel = (qobject_cast(model))->sourceModel(); + // Basic tree StandardItemModel + QModelIndex parent; + QVariant blue = QVariant(QColor(Qt::blue)); +#ifndef Q_OS_WINCE + for (int i = 0; i < 4; ++i) { +#else + for (int i = 0; i < 2; ++i) { +#endif + parent = realModel->index(0, 0, parent); + realModel->insertRows(0, 26+i, parent); +#ifndef Q_OS_WINCE + realModel->insertColumns(0, 26+i, parent); +#else + realModel->insertColumns(0, 4, parent); +#endif + // Fill in some values to make it easier to debug + /* + for (int x = 0; x < 26+i; ++x) { + QString xval = QString::number(x); + for (int y = 0; y < 26 + i; ++y) { + QString val = xval + QString::number(y) + QString::number(i); + QModelIndex index = realModel->index(x, y, parent); + realModel->setData(index, val); + realModel->setData(index, blue, Qt::TextColorRole); + } + } + */ + } + QModelIndex returnIndex = model->index(0,0); + if (!returnIndex.isValid()) + qFatal("%s: model index to be returned is invalid", Q_FUNC_INFO); + return returnIndex; + } + + if (QDirModel *dirModel = qobject_cast(model)) { + if (!QDir::current().mkdir("test")) + qFatal("%s: cannot create directory %s", + Q_FUNC_INFO, + qPrintable(QDir::toNativeSeparators(QDir::currentPath()+"/test"))); + for (int i = 0; i < 26; ++i) { + QString subdir = QString("test/foo_%1").arg(i); + if (!QDir::current().mkdir(subdir)) + qFatal("%s: cannot create directory %s", + Q_FUNC_INFO, + qPrintable(QDir::toNativeSeparators(QDir::currentPath()+"/"+subdir))); + } + return dirModel->index(QDir::currentPath()+"/test"); + } + + if (QSqlQueryModel *queryModel = qobject_cast(model)) { + QSqlQuery q; + q.exec("CREATE TABLE test(id int primary key, name varchar(30))"); + q.prepare("INSERT INTO test(id, name) values (?, ?)"); +#ifndef Q_OS_WINCE + for (int i = 0; i < 1024; ++i) { +#else + for (int i = 0; i < 512; ++i) { +#endif + q.addBindValue(i); + q.addBindValue("Mr. Smith" + QString::number(i)); + q.exec(); + } + if (QSqlTableModel *tableModel = qobject_cast(model)) { + tableModel->setTable("test"); + tableModel->setEditStrategy(QSqlTableModel::OnManualSubmit); + tableModel->select(); + } else { + queryModel->setQuery("select * from test"); + } + return QModelIndex(); + } + + if (QListWidget *listWidget = qobject_cast(model->parent())) { +#ifndef Q_OS_WINCE + int items = 100; +#else + int items = 50; +#endif + while (items--) + listWidget->addItem(QString("item %1").arg(items)); + return QModelIndex(); + } + + if (QTableWidget *tableWidget = qobject_cast(model->parent())) { + tableWidget->setColumnCount(20); + tableWidget->setRowCount(20); + return QModelIndex(); + } + + if (QTreeWidget *treeWidget = qobject_cast(model->parent())) { + int topItems = 20; + treeWidget->setColumnCount(1); + QTreeWidgetItem *parent; + while (topItems--){ + parent = new QTreeWidgetItem(treeWidget, QStringList(QString("top %1").arg(topItems))); + for (int i = 0; i < 20; ++i) + new QTreeWidgetItem(parent, QStringList(QString("child %1").arg(topItems))); + } + return QModelIndex(); + } + + qFatal("%s: unknown type of model", Q_FUNC_INFO); + return QModelIndex(); +} + +/*! + If you need to cleanup from populateTest() do it here. + Note that this is called after every test even if populateTestArea isn't called. + */ +void ModelsToTest::cleanupTestArea(QAbstractItemModel *model) +{ + if (qobject_cast(model)) + { + if (QDir(QDir::currentPath()+"/test").exists()) + { + for (int i = 0; i < 26; ++i) { + QString subdir(QString("test/foo_%1").arg(i)); + if (!QDir::current().rmdir(subdir)) + qFatal("%s: cannot remove directory %s", + Q_FUNC_INFO, + qPrintable(QDir::toNativeSeparators(QDir::currentPath()+"/"+subdir))); + } + if (!QDir::current().rmdir("test")) + qFatal("%s: cannot remove directory %s", + Q_FUNC_INFO, + qPrintable(QDir::toNativeSeparators(QDir::currentPath()+"/test"))); + } + } else if (qobject_cast(model)) { + QSqlQuery q("DROP TABLE test"); + } +} + +void ModelsToTest::setupDatabase() +{ + if (!QSqlDatabase::database().isValid()) { + QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE"); + db.setDatabaseName(":memory:"); + if (!db.open()) { + qWarning() << "Unable to open database" << db.lastError(); + return; + } + } +} + diff --git a/tests/auto/corelib/itemmodels/qitemmodel/qitemmodel.pro b/tests/auto/corelib/itemmodels/qitemmodel/qitemmodel.pro new file mode 100644 index 0000000000..ff21d6afa5 --- /dev/null +++ b/tests/auto/corelib/itemmodels/qitemmodel/qitemmodel.pro @@ -0,0 +1,4 @@ +CONFIG += testcase +TARGET = tst_qitemmodel +QT += widgets sql testlib +SOURCES = tst_qitemmodel.cpp diff --git a/tests/auto/corelib/itemmodels/qitemmodel/tst_qitemmodel.cpp b/tests/auto/corelib/itemmodels/qitemmodel/tst_qitemmodel.cpp new file mode 100644 index 0000000000..636635a5b5 --- /dev/null +++ b/tests/auto/corelib/itemmodels/qitemmodel/tst_qitemmodel.cpp @@ -0,0 +1,1389 @@ +/**************************************************************************** +** +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include +#include +#include +#include "modelstotest.cpp" +#include + +Q_DECLARE_METATYPE(QModelIndex) + +/*! + See modelstotest.cpp for instructions on how to have your model tested with these tests. + + Each test such as rowCount have a _data() function which populate the QTest data with + the tests specified by modelstotest.cpp and any extra data needed for that particular test. + + setupWithNoTestData() fills the QTest data with just the tests and is used by most tests. + */ +class tst_QItemModel : public QObject +{ + Q_OBJECT + +public slots: + void init(); + void cleanup(); + +private slots: + void nonDestructiveBasicTest_data(); + void nonDestructiveBasicTest(); + + void rowCount_data(); + void rowCount(); + void columnCount_data(); + void columnCount(); + + void hasIndex_data(); + void hasIndex(); + void index_data(); + void index(); + + void parent_data(); + void parent(); + + void data_data(); + void data(); + + void setData_data(); + void setData(); + + void setHeaderData_data(); + void setHeaderData(); + + void remove_data(); + void remove(); + + void insert_data(); + void insert(); + + void sort_data(); + void sort(); + +protected slots: + void slot_rowsAboutToRemove(const QModelIndex &parent); + void slot_rowsRemoved(const QModelIndex &parent); + void slot_columnsAboutToRemove(const QModelIndex &parent); + void slot_columnsRemoved(const QModelIndex &parent); + + void slot_rowsAboutToInserted(const QModelIndex &parent); + void slot_rowsInserted(const QModelIndex &parent); + void slot_columnsAboutToInserted(const QModelIndex &parent); + void slot_columnsInserted(const QModelIndex &parent); +private: + void setupWithNoTestData(); + QAbstractItemModel *currentModel; + ModelsToTest *testModels; + + // used by remove() + QPersistentModelIndex parentOfRemoved; + int afterAboutToRemoveRowCount; + int afterRemoveRowCount; + int afterAboutToRemoveColumnCount; + int afterRemoveColumnCount; + + // remove() recursive + bool removeRecursively; + + // used by insert() + QPersistentModelIndex parentOfInserted; + int afterAboutToInsertRowCount; + int afterInsertRowCount; + int afterAboutToInsertColumnCount; + int afterInsertColumnCount; + + // insert() recursive + bool insertRecursively; +}; + +void tst_QItemModel::init() +{ + testModels = new ModelsToTest(); + removeRecursively = false; + insertRecursively = false; +} + +void tst_QItemModel::cleanup() +{ + testModels->cleanupTestArea(currentModel); + delete testModels; + delete currentModel; + currentModel = 0; +} + +void tst_QItemModel::setupWithNoTestData() +{ + ModelsToTest modelsToTest; + QTest::addColumn("modelType"); + QTest::addColumn("readOnly"); + QTest::addColumn("isEmpty"); + for (int i = 0; i < modelsToTest.tests.size(); ++i) { + ModelsToTest::test t = modelsToTest.tests.at(i); + bool readOnly = (t.read == ModelsToTest::ReadOnly); + bool isEmpty = (t.contains == ModelsToTest::Empty); + QTest::newRow(t.modelType.toLatin1().data()) << t.modelType << readOnly << isEmpty; + } +} + +void tst_QItemModel::nonDestructiveBasicTest_data() +{ + setupWithNoTestData(); +} + +/*! + nonDestructiveBasicTest tries to call a number of the basic functions (not all) + to make sure the model doesn't segfault, testing the functions that makes sense. + */ +void tst_QItemModel::nonDestructiveBasicTest() +{ + QFETCH(QString, modelType); + currentModel = testModels->createModel(modelType); + QVERIFY(currentModel); + + QCOMPARE(currentModel->buddy(QModelIndex()), QModelIndex()); + currentModel->canFetchMore(QModelIndex()); + QVERIFY(currentModel->columnCount(QModelIndex()) >= 0); + QCOMPARE(currentModel->data(QModelIndex()), QVariant()); + currentModel->fetchMore(QModelIndex()); + Qt::ItemFlags flags = currentModel->flags(QModelIndex()); + QVERIFY(flags == Qt::ItemIsDropEnabled || flags == 0); + currentModel->hasChildren(QModelIndex()); + currentModel->hasIndex(0, 0); + currentModel->headerData(0, Qt::Horizontal); + currentModel->index(0,0), QModelIndex(); + currentModel->itemData(QModelIndex()); + QVariant cache; + currentModel->match(QModelIndex(), -1, cache); + currentModel->mimeTypes(); + QCOMPARE(currentModel->parent(QModelIndex()), QModelIndex()); + QVERIFY(currentModel->rowCount() >= 0); + QVariant variant; + currentModel->setData(QModelIndex(), variant, -1); + currentModel->setHeaderData(-1, Qt::Horizontal, QVariant()); + currentModel->setHeaderData(0, Qt::Horizontal, QVariant()); + currentModel->setHeaderData(currentModel->columnCount() + 100, Qt::Horizontal, QVariant()); + QMap roles; + currentModel->setItemData(QModelIndex(), roles); + currentModel->sibling(0,0,QModelIndex()); + currentModel->span(QModelIndex()); + currentModel->supportedDropActions(); + currentModel->revert(); + currentModel->submit(); +} + + +void tst_QItemModel::rowCount_data() +{ + setupWithNoTestData(); +} + +/*! + Tests model's implimentation of QAbstractItemModel::rowCount() and hasChildren() + */ +void tst_QItemModel::rowCount() +{ + QFETCH(QString, modelType); + currentModel = testModels->createModel(modelType); + QVERIFY(currentModel); + + QFETCH(bool, isEmpty); + if (isEmpty) { + QCOMPARE(currentModel->rowCount(), 0); + QCOMPARE(currentModel->hasChildren(), false); + } + else { + QVERIFY(currentModel->rowCount() > 0); + QCOMPARE(currentModel->hasChildren(), true); + } + + // check top row + QModelIndex topIndex = currentModel->index(0, 0, QModelIndex()); + int rows = currentModel->rowCount(topIndex); + QVERIFY(rows >= 0); + if (rows > 0) + QCOMPARE(currentModel->hasChildren(topIndex), true); + else + QCOMPARE(currentModel->hasChildren(topIndex), false); + + QModelIndex secondLevelIndex = currentModel->index(0, 0, topIndex); + if (secondLevelIndex.isValid()) { // not the top level + // check a row count where parent is valid + rows = currentModel->rowCount(secondLevelIndex); + QVERIFY(rows >= 0); + if (rows > 0) + QCOMPARE(currentModel->hasChildren(secondLevelIndex), true); + else + QCOMPARE(currentModel->hasChildren(secondLevelIndex), false); + } + + // rowCount is tested more extensivly more later in checkChildren(), + // but this catches the big mistakes +} + +void tst_QItemModel::columnCount_data() +{ + setupWithNoTestData(); +} + +/*! + Tests model's implimentation of QAbstractItemModel::columnCount() and hasChildren() + */ +void tst_QItemModel::columnCount() +{ + QFETCH(QString, modelType); + currentModel = testModels->createModel(modelType); + QVERIFY(currentModel); + + QFETCH(bool, isEmpty); + if (isEmpty) { + QCOMPARE(currentModel->hasChildren(), false); + } + else { + QVERIFY(currentModel->columnCount() > 0); + QCOMPARE(currentModel->hasChildren(), true); + } + + // check top row + QModelIndex topIndex = currentModel->index(0, 0, QModelIndex()); + int columns = currentModel->columnCount(topIndex); + + // check a row count where parent is valid + columns = currentModel->columnCount(currentModel->index(0, 0, topIndex)); + QVERIFY(columns >= 0); + + // columnCount is tested more extensivly more later in checkChildren(), + // but this catches the big mistakes +} + +void tst_QItemModel::hasIndex_data() +{ + setupWithNoTestData(); +} + +/*! + Tests model's implimentation of QAbstractItemModel::hasIndex() + */ +void tst_QItemModel::hasIndex() +{ + QFETCH(QString, modelType); + currentModel = testModels->createModel(modelType); + QVERIFY(currentModel); + + // Make sure that invalid values returns an invalid index + QCOMPARE(currentModel->hasIndex(-2, -2), false); + QCOMPARE(currentModel->hasIndex(-2, 0), false); + QCOMPARE(currentModel->hasIndex(0, -2), false); + + int rows = currentModel->rowCount(); + int columns = currentModel->columnCount(); + + QCOMPARE(currentModel->hasIndex(rows, columns), false); + QCOMPARE(currentModel->hasIndex(rows+1, columns+1), false); + + QFETCH(bool, isEmpty); + if (isEmpty) + return; + + QCOMPARE(currentModel->hasIndex(0,0), true); + + // hasIndex is tested more extensivly more later in checkChildren(), + // but this catches the big mistakes +} + +void tst_QItemModel::index_data() +{ + setupWithNoTestData(); +} + +/*! + Tests model's implimentation of QAbstractItemModel::index() + */ +void tst_QItemModel::index() +{ + QFETCH(QString, modelType); + currentModel = testModels->createModel(modelType); + QVERIFY(currentModel); + + // Make sure that invalid values returns an invalid index + QCOMPARE(currentModel->index(-2, -2), QModelIndex()); + QCOMPARE(currentModel->index(-2, 0), QModelIndex()); + QCOMPARE(currentModel->index(0, -2), QModelIndex()); + + QFETCH(bool, isEmpty); + if (isEmpty) + return; + + int rows = currentModel->rowCount(); + int columns = currentModel->columnCount(); + + // Catch off by one errors + QCOMPARE(currentModel->index(rows,columns), QModelIndex()); + QCOMPARE(currentModel->index(0,0).isValid(), true); + + // Make sure that the same index is always returned + QModelIndex a = currentModel->index(0,0); + QModelIndex b = currentModel->index(0,0); + QVERIFY(a == b); + + // index is tested more extensivly more later in checkChildren(), + // but this catches the big mistakes +} + + +void tst_QItemModel::parent_data() +{ + setupWithNoTestData(); +} + +/*! + A model that returns an index of parent X should also return X when asking + for the parent of the index. + + This recursive function does pretty extensive testing on the whole model in an + effort to catch edge cases. + + This function assumes that rowCount(), columnCount() and index() work. If they have + a bug it will point it out, but the above tests should have already found the basic bugs + because it is easier to figure out the problem in those tests then this one. + */ +void checkChildren(QAbstractItemModel *currentModel, const QModelIndex &parent, int currentDepth=0) +{ + QFETCH(bool, readOnly); + + if (currentModel->canFetchMore(parent)) + currentModel->fetchMore(parent); + + int rows = currentModel->rowCount(parent); + int columns = currentModel->columnCount(parent); + + QCOMPARE(rows > 0, (currentModel->hasChildren(parent))); + + // Some reasuring testing against rows(),columns(), and hasChildren() + QVERIFY(rows >= 0); + QVERIFY(columns >= 0); + if (rows > 0 || columns > 0) + QCOMPARE(currentModel->hasChildren(parent), true); + else + QCOMPARE(currentModel->hasChildren(parent), false); + + QCOMPARE(currentModel->hasIndex(rows+1, 0, parent), false); + for (int r = 0; r < rows; ++r) { + if (currentModel->canFetchMore(parent)) + currentModel->fetchMore(parent); + + QCOMPARE(currentModel->hasIndex(r, columns+1, parent), false); + for (int c = 0; c < columns; ++c) { + QCOMPARE(currentModel->hasIndex(r, c, parent), true); + QModelIndex index = currentModel->index(r, c, parent); + QCOMPARE(index.isValid(), true); + + if (!readOnly) + currentModel->setData(index, "I'm a little tea pot short and stout"); + QModelIndex modifiedIndex = currentModel->index(r, c, parent); + QCOMPARE(index, modifiedIndex); + + // Make sure we get the same index if we request it twice in a row + QModelIndex a = currentModel->index(r, c, parent); + QModelIndex b = currentModel->index(r, c, parent); + QVERIFY(a == b); + + // Some basic checking on the index that is returned + QVERIFY(index.model() == currentModel); + QCOMPARE(index.row(), r); + QCOMPARE(index.column(), c); + QCOMPARE(currentModel->data(index, Qt::DisplayRole).isValid(), true); + + // If the next test fails here is some somewhat useful debug you play with. + /* + if (currentModel->parent(index) != parent) { + qDebug() << r << c << currentDepth << currentModel->data(index).toString() + << currentModel->data(parent).toString(); + qDebug() << index << parent << currentModel->parent(index); + QTreeView view; + view.setModel(currentModel); + view.show(); + QTest::qWait(9000); + }*/ + QCOMPARE(currentModel->parent(index), parent); + + // recursivly go down + if (currentModel->hasChildren(index) && currentDepth < 5) { + checkChildren(currentModel, index, ++currentDepth); + // Because this is recursive we will return at the first failure rather then + // reporting it over and over + if (QTest::currentTestFailed()) + return; + } + + // make sure that after testing the children that the index pointer doesn't change. + QModelIndex newerIndex = currentModel->index(r, c, parent); + QCOMPARE(index, newerIndex); + } + } +} + +/*! + Tests model's implimentation of QAbstractItemModel::parent() + */ +void tst_QItemModel::parent() +{ + QFETCH(QString, modelType); + currentModel = testModels->createModel(modelType); + QVERIFY(currentModel); + + // Make sure the model wont crash and will return an invalid QModelIndex + // when asked for the parent of an invalid index. + QCOMPARE(currentModel->parent(QModelIndex()), QModelIndex()); + + QFETCH(bool, isEmpty); + if (isEmpty) + return; + + // Common error test #1, make sure that a top level index has a parent + // that is a invalid QModelIndex. You model + QModelIndex topIndex = currentModel->index(0, 0, QModelIndex()); + QCOMPARE(currentModel->parent(topIndex), QModelIndex()); + + // Common error test #2, make sure that a second level index has a parent + // that is the top level index. + if (currentModel->rowCount(topIndex) > 0) { + QModelIndex childIndex = currentModel->index(0, 0, topIndex); + QCOMPARE(currentModel->parent(childIndex), topIndex); + } + + // Common error test #3, the second column has the same children + // as the first column in a row. + QModelIndex topIndex1 = currentModel->index(0, 1, QModelIndex()); + if (currentModel->rowCount(topIndex1) > 0) { + QModelIndex childIndex = currentModel->index(0, 0, topIndex); + QModelIndex childIndex1 = currentModel->index(0, 0, topIndex1); + QVERIFY(childIndex != childIndex1); + } + + // Full test, walk 10 levels deap through the model making sure that all + // parents's children correctly specify their parent + QModelIndex top = QModelIndex(); + checkChildren(currentModel, top); +} + + +void tst_QItemModel::data_data() +{ + setupWithNoTestData(); +} + +/*! + Tests model's implimentation of QAbstractItemModel::data() + */ +void tst_QItemModel::data() +{ + QFETCH(QString, modelType); + currentModel = testModels->createModel(modelType); + QVERIFY(currentModel); + + // Invalid index should return an invalid qvariant + QVERIFY(!currentModel->data(QModelIndex()).isValid()); + + QFETCH(bool, isEmpty); + if (isEmpty) + return; + + // A valid index should have a valid qvariant data + QVERIFY(currentModel->index(0,0).isValid()); + + // shouldn't be able to set data on an invalid index + QCOMPARE(currentModel->setData(QModelIndex(), "foo", Qt::DisplayRole), false); + + // General Purpose roles + QVariant variant = currentModel->data(currentModel->index(0,0), Qt::ToolTipRole); + if (variant.isValid()) { + QVERIFY(qVariantCanConvert(variant)); + } + variant = currentModel->data(currentModel->index(0,0), Qt::StatusTipRole); + if (variant.isValid()) { + QVERIFY(qVariantCanConvert(variant)); + } + variant = currentModel->data(currentModel->index(0,0), Qt::WhatsThisRole); + if (variant.isValid()) { + QVERIFY(qVariantCanConvert(variant)); + } + + variant = currentModel->data(currentModel->index(0,0), Qt::SizeHintRole); + if (variant.isValid()) { + QVERIFY(qVariantCanConvert(variant)); + } + + + // Appearance roles + QVariant fontVariant = currentModel->data(currentModel->index(0,0), Qt::FontRole); + if (fontVariant.isValid()) { + QVERIFY(qVariantCanConvert(fontVariant)); + } + + QVariant textAlignmentVariant = currentModel->data(currentModel->index(0,0), Qt::TextAlignmentRole); + if (textAlignmentVariant.isValid()) { + int alignment = textAlignmentVariant.toInt(); + QVERIFY(alignment == Qt::AlignLeft || + alignment == Qt::AlignRight || + alignment == Qt::AlignHCenter || + alignment == Qt::AlignJustify); + } + + QVariant colorVariant = currentModel->data(currentModel->index(0,0), Qt::BackgroundColorRole); + if (colorVariant.isValid()) { + QVERIFY(qVariantCanConvert(colorVariant)); + } + + colorVariant = currentModel->data(currentModel->index(0,0), Qt::TextColorRole); + if (colorVariant.isValid()) { + QVERIFY(qVariantCanConvert(colorVariant)); + } + + QVariant checkStateVariant = currentModel->data(currentModel->index(0,0), Qt::CheckStateRole); + if (checkStateVariant.isValid()) { + int state = checkStateVariant.toInt(); + QVERIFY(state == Qt::Unchecked || + state == Qt::PartiallyChecked || + state == Qt::Checked); + } +} + +void tst_QItemModel::setData_data() +{ + setupWithNoTestData(); +} + +/*! + Tests model's implimentation of QAbstractItemModel::setData() + */ +void tst_QItemModel::setData() +{ + QFETCH(QString, modelType); + currentModel = testModels->createModel(modelType); + QVERIFY(currentModel); + qRegisterMetaType("QModelIndex"); + QSignalSpy spy(currentModel, SIGNAL(dataChanged(const QModelIndex &, const QModelIndex &))); + QVERIFY(spy.isValid()); + QCOMPARE(currentModel->setData(QModelIndex(), QVariant()), false); + QCOMPARE(spy.count(), 0); + + QFETCH(bool, isEmpty); + if (isEmpty) + return; + + QFETCH(bool, readOnly); + if (readOnly) + return; + + // Populate the test area so we can chage stuff. See: cleanup() + QModelIndex topIndex = testModels->populateTestArea(currentModel); + QVERIFY(currentModel->hasChildren(topIndex)); + QModelIndex index = currentModel->index(0, 0, topIndex); + QVERIFY(index.isValid()); + + spy.clear(); + QString text = "Index private pointers should always be the same"; + QCOMPARE(currentModel->setData(index, text, Qt::EditRole), true); + QCOMPARE(index.data(Qt::EditRole).toString(), text); + + // Changing the text shouldn't change the layout, parent, pointer etc. + QModelIndex changedIndex = currentModel->index(0, 0, topIndex); + QCOMPARE(changedIndex, index); + QCOMPARE(spy.count(), 1); +} + +void tst_QItemModel::setHeaderData_data() +{ + setupWithNoTestData(); +} + +/*! + Tests model's implimentation of QAbstractItemModel::setHeaderData() + */ +void tst_QItemModel::setHeaderData() +{ + QFETCH(QString, modelType); + currentModel = testModels->createModel(modelType); + QVERIFY(currentModel); + + QCOMPARE(currentModel->setHeaderData(-1, Qt::Horizontal, QVariant()), false); + QCOMPARE(currentModel->setHeaderData(-1, Qt::Vertical, QVariant()), false); + + QFETCH(bool, isEmpty); + if (isEmpty) + return; + + QFETCH(bool, readOnly); + if (readOnly) + return; + + // Populate the test area so we can change stuff. See: cleanup() + QModelIndex topIndex = testModels->populateTestArea(currentModel); + QVERIFY(currentModel->hasChildren(topIndex)); + QModelIndex index = currentModel->index(0, 0, topIndex); + QVERIFY(index.isValid()); + + qRegisterMetaType("Qt::Orientation"); + QSignalSpy spy(currentModel, SIGNAL(headerDataChanged( Qt::Orientation, int , int ))); + QVERIFY(spy.isValid()); + + QString text = "Index private pointers should always be the same"; + int signalCount = 0; + for (int i = 0; i < 4; ++i){ + if(currentModel->setHeaderData(i, Qt::Horizontal, text)) { + QCOMPARE(currentModel->headerData(i, Qt::Horizontal).toString(), text); + ++signalCount; + } + if(currentModel->setHeaderData(i, Qt::Vertical, text)) { + QCOMPARE(currentModel->headerData(i, Qt::Vertical).toString(), text); + ++signalCount; + } + } + QCOMPARE(spy.count(), signalCount); +} + +void tst_QItemModel::sort_data() +{ + setupWithNoTestData(); +} + +/*! + Tests model's implimentation of QAbstractItemModel::sort() + */ +void tst_QItemModel::sort() +{ + QFETCH(QString, modelType); + currentModel = testModels->createModel(modelType); + QVERIFY(currentModel); + + QFETCH(bool, isEmpty); + if (isEmpty) + return; + + // Populate the test area so we can chage stuff. See: cleanup() + QPersistentModelIndex topIndex = testModels->populateTestArea(currentModel); + QVERIFY(currentModel->hasChildren(topIndex)); + QModelIndex index = currentModel->index(0, 0, topIndex); + QVERIFY(index.isValid()); + QSignalSpy spy(currentModel, SIGNAL(layoutChanged())); + QVERIFY(spy.isValid()); + for (int i=-1; i < 10; ++i){ + currentModel->sort(i); + if (index != currentModel->index(0, 0, topIndex)){ + QVERIFY(spy.count() > 0); + index = currentModel->index(0, 0, topIndex); + spy.clear(); + } + } + currentModel->sort(99999); +} + +/*! + Tests model's implimentation of QAbstractItemModel::removeRow() and QAbstractItemModel::removeColumn() + */ +#define START 0 +#define MIDDLE 6 +#define END -1 +#define MANY 9 +#define ALL -1 +#define NOSIGNALS 0 +#define DEFAULTCOUNT 1 +#define DNS 1 // DefaultNumberOfSignals +#define RECURSIVE true +#define SUCCESS true +#define FAIL false +void tst_QItemModel::remove_data() +{ + ModelsToTest modelsToTest; + QTest::addColumn("modelType"); + QTest::addColumn("readOnly"); + QTest::addColumn("isEmpty"); + + QTest::addColumn("start"); + QTest::addColumn("count"); + + QTest::addColumn("numberOfRowsAboutToBeRemovedSignals"); + QTest::addColumn("numberOfColumnsAboutToBeRemovedSignals"); + QTest::addColumn("numberOfRowsRemovedSignals"); + QTest::addColumn("numberOfColumnsRemovedSignals"); + + QTest::addColumn("recursive"); + QTest::addColumn("recursiveRow"); + QTest::addColumn("recursiveCount"); + + QTest::addColumn("shouldSucceed"); + +#define makeTestRow(testName, start, count, sar, srr, sac, src, r, rr, rc, s) \ + QTest::newRow((t.modelType + testName).toLatin1().data()) << t.modelType << readOnly << isEmpty << \ + start << count << \ + sar << srr << sac << src << \ + r << rr << rc << \ + s; + + for (int i = 0; i < modelsToTest.tests.size(); ++i) { + ModelsToTest::test t = modelsToTest.tests.at(i); + QString name = t.modelType; + bool readOnly = (t.read == ModelsToTest::ReadOnly); + bool isEmpty = (t.contains == ModelsToTest::Empty); + + // half these + makeTestRow(":one at the start", START, DEFAULTCOUNT, DNS, DNS, DNS, DNS, !RECURSIVE, 0, 0, SUCCESS); + makeTestRow(":one at the middle", MIDDLE, DEFAULTCOUNT, DNS, DNS, DNS, DNS, !RECURSIVE, 0, 0, SUCCESS); + makeTestRow(":one at the end", END, DEFAULTCOUNT, DNS, DNS, DNS, DNS, !RECURSIVE, 0, 0, SUCCESS); + + makeTestRow(":many at the start", START, MANY, DNS, DNS, DNS, DNS, !RECURSIVE, 0, 0, SUCCESS); + makeTestRow(":many at the middle", MIDDLE, MANY, DNS, DNS, DNS, DNS, !RECURSIVE, 0, 0, SUCCESS); + makeTestRow(":many at the end", END, MANY, DNS, DNS, DNS, DNS, !RECURSIVE, 0, 0, SUCCESS); + + makeTestRow(":remove all", START, ALL, DNS, DNS, DNS, DNS, !RECURSIVE, 0, 0, SUCCESS); + + makeTestRow(":none at the start", START, 0, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); + makeTestRow(":none at the middle", MIDDLE, 0, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); + makeTestRow(":none at the end", END, 0, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); + + makeTestRow(":invalid start, valid count", -99, 0, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); + makeTestRow(":invalid start, valid count", 9999, 0, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); + makeTestRow(":invalid start, valid count", -99, 1, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); + makeTestRow(":invalid start, valid count", 9999, 1, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); + makeTestRow(":invalid start, valid count", -99, MANY, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); + makeTestRow(":invalid start, valid count", 9999, MANY, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); + + makeTestRow(":valid start, invalid count", START, -2, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); + makeTestRow(":valid start, invalid count", MIDDLE, -2, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); + makeTestRow(":valid start, invalid count", END, -2, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); + makeTestRow(":valid start, invalid count", START, 9999, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); + makeTestRow(":valid start, invalid count", MIDDLE, 9999, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); + makeTestRow(":valid start, invalid count", END, 9999, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); + + // Recursive remove's might assert, haven't decided yet... + //makeTestRow(":one at the start recursivly", START, DEFAULTCOUNT, 2, DNS, 2, DNS, RECURSIVE, START, DEFAULTCOUNT, FAIL); + //makeTestRow(":one at the middle recursivly", MIDDLE, DEFAULTCOUNT, 2, DNS, 2, DNS, RECURSIVE, START, DEFAULTCOUNT, SUCCESS); + //makeTestRow(":one at the end recursivly", END, DEFAULTCOUNT, 2, DNS, 2, DNS, RECURSIVE, START, DEFAULTCOUNT, SUCCESS); + } +} + +void tst_QItemModel::remove() +{ + QFETCH(QString, modelType); + + currentModel = testModels->createModel(modelType); + QVERIFY(currentModel); + + QFETCH(bool, readOnly); + if (readOnly) + return; + + QFETCH(int, start); + QFETCH(int, count); + + QFETCH(bool, recursive); + removeRecursively = recursive; + +/*! + Removes count number of rows starting at start + if count is -1 it removes all rows + if start is -1 then it starts at the last row - count + */ + QFETCH(bool, shouldSucceed); + + // Populate the test area so we can remove something. See: cleanup() + // parentOfRemoved is stored so that the slots can make sure parentOfRemoved is the index that is emitted. + parentOfRemoved = testModels->populateTestArea(currentModel); + + if (count == -1) + count = currentModel->rowCount(parentOfRemoved); + if (start == -1) + start = currentModel->rowCount(parentOfRemoved)-count; + + if (currentModel->rowCount(parentOfRemoved) == 0 || + currentModel->columnCount(parentOfRemoved) == 0) { + qWarning() << "model test area doesn't have any rows or columns, can't fully test remove(). Skipping"; + return; + } + + // When a row or column is removed there should be two signals. + // Watch to make sure they are emitted and get the row/column count when they do get emitted by connecting them to a slot + qRegisterMetaType("QModelIndex"); + QSignalSpy columnsAboutToBeRemovedSpy(currentModel, SIGNAL(columnsAboutToBeRemoved( const QModelIndex &, int , int ))); + QSignalSpy rowsAboutToBeRemovedSpy(currentModel, SIGNAL(rowsAboutToBeRemoved( const QModelIndex &, int , int ))); + QSignalSpy columnsRemovedSpy(currentModel, SIGNAL(columnsRemoved( const QModelIndex &, int, int ))); + QSignalSpy rowsRemovedSpy(currentModel, SIGNAL(rowsRemoved( const QModelIndex &, int, int ))); + QSignalSpy modelResetSpy(currentModel, SIGNAL(modelReset())); + QSignalSpy modelLayoutChangedSpy(currentModel, SIGNAL(layoutChanged())); + + QVERIFY(columnsAboutToBeRemovedSpy.isValid()); + QVERIFY(rowsAboutToBeRemovedSpy.isValid()); + QVERIFY(columnsRemovedSpy.isValid()); + QVERIFY(rowsRemovedSpy.isValid()); + QVERIFY(modelResetSpy.isValid()); + QVERIFY(modelLayoutChangedSpy.isValid()); + + QFETCH(int, numberOfRowsAboutToBeRemovedSignals); + QFETCH(int, numberOfColumnsAboutToBeRemovedSignals); + QFETCH(int, numberOfRowsRemovedSignals); + QFETCH(int, numberOfColumnsRemovedSignals); + + // + // test removeRow() + // + connect(currentModel, SIGNAL(rowsAboutToBeRemoved( const QModelIndex &, int , int )), + this, SLOT(slot_rowsAboutToRemove(const QModelIndex &))); + connect(currentModel, SIGNAL(rowsRemoved( const QModelIndex &, int , int )), + this, SLOT(slot_rowsRemoved(const QModelIndex &))); + int beforeRemoveRowCount = currentModel->rowCount(parentOfRemoved); + QPersistentModelIndex dyingIndex = currentModel->index(start + count + 1, 0, parentOfRemoved); + QCOMPARE(currentModel->removeRows(start, count, parentOfRemoved), shouldSucceed); + currentModel->submit(); + if (shouldSucceed && dyingIndex.isValid()) + QCOMPARE(dyingIndex.row(), start + 1); + + if (rowsAboutToBeRemovedSpy.count() > 0){ + QList arguments = rowsAboutToBeRemovedSpy.at(0); + QModelIndex parent = (qvariant_cast(arguments.at(0))); + int first = arguments.at(1).toInt(); + int last = arguments.at(2).toInt(); + QCOMPARE(first, start); + QCOMPARE(last, start + count - 1); + QVERIFY(parentOfRemoved == parent); + } + + if (rowsRemovedSpy.count() > 0){ + QList arguments = rowsRemovedSpy.at(0); + QModelIndex parent = (qvariant_cast(arguments.at(0))); + int first = arguments.at(1).toInt(); + int last = arguments.at(2).toInt(); + QCOMPARE(first, start); + QCOMPARE(last, start + count - 1); + QVERIFY(parentOfRemoved == parent); + } + + // Only the row signals should have been emitted + if (modelResetSpy.count() >= 1 || modelLayoutChangedSpy.count() >=1 ){ + QCOMPARE(columnsAboutToBeRemovedSpy.count(), 0); + QCOMPARE(rowsAboutToBeRemovedSpy.count(), 0); + QCOMPARE(columnsRemovedSpy.count(), 0); + QCOMPARE(rowsRemovedSpy.count(), 0); + } + else { + QCOMPARE(columnsAboutToBeRemovedSpy.count(), 0); + QCOMPARE(rowsAboutToBeRemovedSpy.count(), numberOfRowsAboutToBeRemovedSignals); + QCOMPARE(columnsRemovedSpy.count(), 0); + QCOMPARE(rowsRemovedSpy.count(), numberOfRowsRemovedSignals); + } + + // The row count should only change *after* rowsAboutToBeRemoved has been emitted + if (shouldSucceed) { + if (modelResetSpy.count() == 0 && modelLayoutChangedSpy.count() == 0){ + QCOMPARE(afterAboutToRemoveRowCount, beforeRemoveRowCount); + QCOMPARE(afterRemoveRowCount, beforeRemoveRowCount-count-(numberOfRowsRemovedSignals-1)); + } + if (modelResetSpy.count() == 0 ) + QCOMPARE(currentModel->rowCount(parentOfRemoved), beforeRemoveRowCount-count-(numberOfRowsRemovedSignals-1)); + } + else { + if (recursive) + QCOMPARE(currentModel->rowCount(parentOfRemoved), beforeRemoveRowCount-1); + else + QCOMPARE(currentModel->rowCount(parentOfRemoved), beforeRemoveRowCount); + + } + disconnect(currentModel, SIGNAL(rowsAboutToBeRemoved( const QModelIndex &, int , int )), + this, SLOT(slot_rowsAboutToRemove(const QModelIndex &))); + disconnect(currentModel, SIGNAL(rowsRemoved( const QModelIndex &, int , int )), + this, SLOT(slot_rowsRemoved(const QModelIndex &))); + modelResetSpy.clear(); + QCOMPARE(modelResetSpy.count(), 0); + + // + // Test remove column + // + connect(currentModel, SIGNAL(columnsAboutToBeRemoved( const QModelIndex &, int , int )), + this, SLOT(slot_columnsAboutToRemove(const QModelIndex &))); + connect(currentModel, SIGNAL(columnsRemoved( const QModelIndex &, int , int )), + this, SLOT(slot_columnsRemoved(const QModelIndex &))); + int beforeRemoveColumnCount = currentModel->columnCount(parentOfRemoved); + + // Some models don't let you remove the column, only row + if (currentModel->removeColumns(start, count, parentOfRemoved)) { + currentModel->submit(); + // Didn't reset the rows, so they should still be at the same value + if (modelResetSpy.count() >= 1 || modelLayoutChangedSpy.count() >= 1){ + QCOMPARE(columnsAboutToBeRemovedSpy.count(), 0); + //QCOMPARE(rowsAboutToBeRemovedSpy.count(), numberOfRowsAboutToBeRemovedSignals); + QCOMPARE(columnsRemovedSpy.count(), 0); + //QCOMPARE(rowsRemovedSpy.count(), numberOfRowsRemovedSignals); + } + else { + QCOMPARE(columnsAboutToBeRemovedSpy.count(), numberOfColumnsAboutToBeRemovedSignals); + QCOMPARE(rowsAboutToBeRemovedSpy.count(), numberOfRowsAboutToBeRemovedSignals); + QCOMPARE(columnsRemovedSpy.count(), numberOfColumnsRemovedSignals); + QCOMPARE(rowsRemovedSpy.count(), numberOfRowsRemovedSignals); + } + + // The column count should only change *after* rowsAboutToBeRemoved has been emitted + if (shouldSucceed) { + if (modelResetSpy.count() == 0 && modelLayoutChangedSpy.count() == 0){ + QCOMPARE(afterAboutToRemoveColumnCount, beforeRemoveColumnCount); + QCOMPARE(afterRemoveColumnCount, beforeRemoveColumnCount-count-(numberOfColumnsRemovedSignals-1)); + } + if (modelResetSpy.count() == 0) + QCOMPARE(currentModel->columnCount(parentOfRemoved), beforeRemoveColumnCount-count-(numberOfColumnsRemovedSignals-1)); + } + else + QCOMPARE(currentModel->rowCount(parentOfRemoved), beforeRemoveRowCount); + } + disconnect(currentModel, SIGNAL(columnsAboutToBeRemoved( const QModelIndex &, int , int )), + this, SLOT(slot_columnsAboutToRemove(const QModelIndex &))); + disconnect(currentModel, SIGNAL(columnsRemoved( const QModelIndex &, int , int )), + this, SLOT(slot_columnsRemoved(const QModelIndex &))); + + if (columnsAboutToBeRemovedSpy.count() > 0){ + QList arguments = columnsAboutToBeRemovedSpy.at(0); + QModelIndex parent = (qvariant_cast(arguments.at(0))); + int first = arguments.at(1).toInt(); + int last = arguments.at(2).toInt(); + QCOMPARE(first, start); + QCOMPARE(last, start + count - 1); + QVERIFY(parentOfRemoved == parent); + } + + if (columnsRemovedSpy.count() > 0){ + QList arguments = columnsRemovedSpy.at(0); + QModelIndex parent = (qvariant_cast(arguments.at(0))); + int first = arguments.at(1).toInt(); + int last = arguments.at(2).toInt(); + QCOMPARE(first, start); + QCOMPARE(last, start + count - 1); + QVERIFY(parentOfRemoved == parent); + } + + // Cleanup the test area because remove::() is called multiple times in a test + testModels->cleanupTestArea(currentModel); +} + +/*! + Developers like to use the slots to then *do* something on the model so it needs to be + in a working state. + */ +void verifyState(QAbstractItemModel *currentModel) { + // Make sure the model isn't confused right now and still knows what is root + if (currentModel->hasChildren()) { + QCOMPARE(currentModel->hasIndex(0, 0), true); + QModelIndex index = currentModel->index(0,0); + QCOMPARE(index.isValid(), true); + QCOMPARE(currentModel->parent(index).isValid(), false); + } else { + QModelIndex index = currentModel->index(0,0); + QCOMPARE(index.isValid(), false); + } +} + +void tst_QItemModel::slot_rowsAboutToRemove(const QModelIndex &parent) +{ + QVERIFY(parentOfRemoved == parent); + afterAboutToRemoveRowCount = currentModel->rowCount(parent); + // hasChildren() should still work + if (afterAboutToRemoveRowCount > 0) + QCOMPARE(currentModel->hasChildren(parent), true); + else + QCOMPARE(currentModel->hasChildren(parent), false); + + verifyState(currentModel); + + // This does happen + if (removeRecursively) { + QFETCH(int, recursiveRow); + QFETCH(int, recursiveCount); + removeRecursively = false; + QCOMPARE(currentModel->removeRows(recursiveRow, recursiveCount, parent), true); + } +} + +void tst_QItemModel::slot_rowsRemoved(const QModelIndex &parent) +{ + QVERIFY(parentOfRemoved == parent); + afterRemoveRowCount = currentModel->rowCount(parent); + if (afterRemoveRowCount > 0) + QCOMPARE(currentModel->hasChildren(parent), true); + else + QCOMPARE(currentModel->hasChildren(parent), false); + + verifyState(currentModel); +} + +void tst_QItemModel::slot_columnsAboutToRemove(const QModelIndex &parent) +{ + QVERIFY(parentOfRemoved == parent); + afterAboutToRemoveColumnCount = currentModel->columnCount(parent); + // hasChildren() should still work + if (afterAboutToRemoveColumnCount > 0 && currentModel->rowCount(parent) > 0) + QCOMPARE(currentModel->hasChildren(parent), true); + else + QCOMPARE(currentModel->hasChildren(parent), false); + + verifyState(currentModel); +} + +void tst_QItemModel::slot_columnsRemoved(const QModelIndex &parent) +{ + QVERIFY(parentOfRemoved == parent); + afterRemoveColumnCount = currentModel->columnCount(parent); + if (afterRemoveColumnCount > 0) + QCOMPARE(currentModel->hasChildren(parent), true); + else + QCOMPARE(currentModel->hasChildren(parent), false); + + verifyState(currentModel); +} + +/*! + Tests the model's insertRow/Column() + */ +void tst_QItemModel::insert_data() +{ + ModelsToTest modelsToTest; + QTest::addColumn("modelType"); + QTest::addColumn("readOnly"); + QTest::addColumn("isEmpty"); + + QTest::addColumn("start"); + QTest::addColumn("count"); + + QTest::addColumn("numberOfRowsAboutToBeInsertedSignals"); + QTest::addColumn("numberOfColumnsAboutToBeInsertedSignals"); + QTest::addColumn("numberOfRowsInsertedSignals"); + QTest::addColumn("numberOfColumnsInsertedSignals"); + + QTest::addColumn("recursive"); + QTest::addColumn("recursiveRow"); + QTest::addColumn("recursiveCount"); + + QTest::addColumn("shouldSucceed"); + +#define makeTestRow(testName, start, count, sar, srr, sac, src, r, rr, rc, s) \ + QTest::newRow((t.modelType + testName).toLatin1().data()) << t.modelType << readOnly << isEmpty << \ + start << count << \ + sar << srr << sac << src << \ + r << rr << rc << \ + s; + + for (int i = 0; i < modelsToTest.tests.size(); ++i) { + ModelsToTest::test t = modelsToTest.tests.at(i); + QString name = t.modelType; + bool readOnly = (t.read == ModelsToTest::ReadOnly); + bool isEmpty = (t.contains == ModelsToTest::Empty); + + // half these + makeTestRow(":one at the start", START, DEFAULTCOUNT, DNS, DNS, DNS, DNS, !RECURSIVE, 0, 0, SUCCESS); + makeTestRow(":one at the middle", MIDDLE, DEFAULTCOUNT, DNS, DNS, DNS, DNS, !RECURSIVE, 0, 0, SUCCESS); + makeTestRow(":one at the end", END, DEFAULTCOUNT, DNS, DNS, DNS, DNS, !RECURSIVE, 0, 0, SUCCESS); + + makeTestRow(":many at the start", START, MANY, DNS, DNS, DNS, DNS, !RECURSIVE, 0, 0, SUCCESS); + makeTestRow(":many at the middle", MIDDLE, MANY, DNS, DNS, DNS, DNS, !RECURSIVE, 0, 0, SUCCESS); + makeTestRow(":many at the end", END, MANY, DNS, DNS, DNS, DNS, !RECURSIVE, 0, 0, SUCCESS); + + makeTestRow(":add row count", START, ALL, DNS, DNS, DNS, DNS, !RECURSIVE, 0, 0, SUCCESS); + + makeTestRow(":none at the start", START, 0, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); + makeTestRow(":none at the middle", MIDDLE, 0, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); + makeTestRow(":none at the end", END, 0, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); + + makeTestRow(":invalid start, valid count", -99, 0, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); + makeTestRow(":invalid start, valid count", 9999, 0, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); + makeTestRow(":invalid start, valid count", -99, 1, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); + makeTestRow(":invalid start, valid count", 9999, 1, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); + makeTestRow(":invalid start, valid count", -99, MANY, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); + makeTestRow(":invalid start, valid count", 9999, MANY, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); + + makeTestRow(":valid start, invalid count", START, -2, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); + makeTestRow(":valid start, invalid count", MIDDLE, -2, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); + makeTestRow(":valid start, invalid count", END, -2, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); + + // Recursive insert's might assert, haven't decided yet... + //makeTestRow(":one at the start recursivly", START, DEFAULTCOUNT, 2, DNS, 2, DNS, RECURSIVE, START, DEFAULTCOUNT, FAIL); + //makeTestRow(":one at the middle recursivly", MIDDLE, DEFAULTCOUNT, 2, DNS, 2, DNS, RECURSIVE, START, DEFAULTCOUNT, SUCCESS); + //makeTestRow(":one at the end recursivly", END, DEFAULTCOUNT, 2, DNS, 2, DNS, RECURSIVE, START, DEFAULTCOUNT, SUCCESS); + } +} + +void tst_QItemModel::insert() +{ + QFETCH(QString, modelType); + currentModel = testModels->createModel(modelType); + QVERIFY(currentModel); + + QFETCH(bool, readOnly); + if (readOnly) + return; + + QFETCH(int, start); + QFETCH(int, count); + + QFETCH(bool, recursive); + insertRecursively = recursive; + +/*! + Inserts count number of rows starting at start + if count is -1 it inserts all rows + if start is -1 then it starts at the last row - count + */ + QFETCH(bool, shouldSucceed); + + // Populate the test area so we can insert something. See: cleanup() + // parentOfInserted is stored so that the slots can make sure parentOfInserted is the index that is emitted. + parentOfInserted = testModels->populateTestArea(currentModel); + + if (count == -1) + count = currentModel->rowCount(parentOfInserted); + if (start == -1) + start = currentModel->rowCount(parentOfInserted)-count; + + if (currentModel->rowCount(parentOfInserted) == 0 || + currentModel->columnCount(parentOfInserted) == 0) { + qWarning() << "model test area doesn't have any rows, can't fully test insert(). Skipping"; + return; + } + + // When a row or column is inserted there should be two signals. + // Watch to make sure they are emitted and get the row/column count when they do get emitted by connecting them to a slot + qRegisterMetaType("QModelIndex"); + QSignalSpy columnsAboutToBeInsertedSpy(currentModel, SIGNAL(columnsAboutToBeInserted( const QModelIndex &, int , int ))); + QSignalSpy rowsAboutToBeInsertedSpy(currentModel, SIGNAL(rowsAboutToBeInserted( const QModelIndex &, int , int ))); + QSignalSpy columnsInsertedSpy(currentModel, SIGNAL(columnsInserted( const QModelIndex &, int, int ))); + QSignalSpy rowsInsertedSpy(currentModel, SIGNAL(rowsInserted( const QModelIndex &, int, int ))); + QSignalSpy modelResetSpy(currentModel, SIGNAL(modelReset())); + QSignalSpy modelLayoutChangedSpy(currentModel, SIGNAL(layoutChanged())); + + QVERIFY(columnsAboutToBeInsertedSpy.isValid()); + QVERIFY(rowsAboutToBeInsertedSpy.isValid()); + QVERIFY(columnsInsertedSpy.isValid()); + QVERIFY(rowsInsertedSpy.isValid()); + QVERIFY(modelResetSpy.isValid()); + QVERIFY(modelLayoutChangedSpy.isValid()); + + QFETCH(int, numberOfRowsAboutToBeInsertedSignals); + QFETCH(int, numberOfColumnsAboutToBeInsertedSignals); + QFETCH(int, numberOfRowsInsertedSignals); + QFETCH(int, numberOfColumnsInsertedSignals); + + // + // test insertRow() + // + connect(currentModel, SIGNAL(rowsAboutToBeInserted( const QModelIndex &, int , int )), + this, SLOT(slot_rowsAboutToInserted(const QModelIndex &))); + connect(currentModel, SIGNAL(rowsInserted( const QModelIndex &, int , int )), + this, SLOT(slot_rowsInserted(const QModelIndex &))); + int beforeInsertRowCount = currentModel->rowCount(parentOfInserted); + QCOMPARE(currentModel->insertRows(start, count, parentOfInserted), shouldSucceed); + currentModel->submit(); + + if (rowsAboutToBeInsertedSpy.count() > 0){ + QList arguments = rowsAboutToBeInsertedSpy.at(0); + QModelIndex parent = (qvariant_cast(arguments.at(0))); + int first = arguments.at(1).toInt(); + int last = arguments.at(2).toInt(); + QCOMPARE(first, start); + QCOMPARE(last, start + count - 1); + QVERIFY(parentOfInserted == parent); + } + + if (rowsInsertedSpy.count() > 0){ + QList arguments = rowsInsertedSpy.at(0); + QModelIndex parent = (qvariant_cast(arguments.at(0))); + int first = arguments.at(1).toInt(); + int last = arguments.at(2).toInt(); + QCOMPARE(first, start); + QCOMPARE(last, start + count - 1); + QVERIFY(parentOfInserted == parent); + } + + // Only the row signals should have been emitted + if (modelResetSpy.count() >= 1 || modelLayoutChangedSpy.count() >= 1) { + QCOMPARE(columnsAboutToBeInsertedSpy.count(), 0); + QCOMPARE(rowsAboutToBeInsertedSpy.count(), 0); + QCOMPARE(columnsInsertedSpy.count(), 0); + QCOMPARE(rowsInsertedSpy.count(), 0); + } + else { + QCOMPARE(columnsAboutToBeInsertedSpy.count(), 0); + QCOMPARE(rowsAboutToBeInsertedSpy.count(), numberOfRowsAboutToBeInsertedSignals); + QCOMPARE(columnsInsertedSpy.count(), 0); + QCOMPARE(rowsInsertedSpy.count(), numberOfRowsInsertedSignals); + } + // The row count should only change *after* rowsAboutToBeInserted has been emitted + if (shouldSucceed) { + if (modelResetSpy.count() == 0 && modelLayoutChangedSpy.count() == 0) { + QCOMPARE(afterAboutToInsertRowCount, beforeInsertRowCount); + QCOMPARE(afterInsertRowCount, beforeInsertRowCount+count+(numberOfRowsInsertedSignals-1)); + } + if (modelResetSpy.count() == 0) + QCOMPARE(currentModel->rowCount(parentOfInserted), beforeInsertRowCount+count+(numberOfRowsInsertedSignals-1)); + } + else { + if (recursive) + QCOMPARE(currentModel->rowCount(parentOfInserted), beforeInsertRowCount+1); + else + QCOMPARE(currentModel->rowCount(parentOfInserted), beforeInsertRowCount); + + } + disconnect(currentModel, SIGNAL(rowsAboutToBeInserted( const QModelIndex &, int , int )), + this, SLOT(slot_rowsAboutToInserted(const QModelIndex &))); + disconnect(currentModel, SIGNAL(rowsInserted( const QModelIndex &, int , int )), + this, SLOT(slot_rowsInserted(const QModelIndex &))); + modelResetSpy.clear(); + + // + // Test insertColumn() + // + connect(currentModel, SIGNAL(columnsAboutToBeInserted( const QModelIndex &, int , int )), + this, SLOT(slot_columnsAboutToInserted(const QModelIndex &))); + connect(currentModel, SIGNAL(columnsInserted( const QModelIndex &, int , int )), + this, SLOT(slot_columnsInserted(const QModelIndex &))); + int beforeInsertColumnCount = currentModel->columnCount(parentOfInserted); + + // Some models don't let you insert the column, only row + if (currentModel->insertColumns(start, count, parentOfInserted)) { + currentModel->submit(); + if (modelResetSpy.count() >= 1 || modelLayoutChangedSpy.count() >= 1) { + // Didn't reset the rows, so they should still be at the same value + QCOMPARE(columnsAboutToBeInsertedSpy.count(), 0); + //QCOMPARE(rowsAboutToBeInsertedSpy.count(), numberOfRowsAboutToBeInsertedSignals); + QCOMPARE(columnsInsertedSpy.count(), 0); + //QCOMPARE(rowsInsertedSpy.count(), numberOfRowsInsertedSignals); + } + else { + // Didn't reset the rows, so they should still be at the same value + QCOMPARE(columnsAboutToBeInsertedSpy.count(), numberOfColumnsAboutToBeInsertedSignals); + QCOMPARE(rowsAboutToBeInsertedSpy.count(), numberOfRowsAboutToBeInsertedSignals); + QCOMPARE(columnsInsertedSpy.count(), numberOfColumnsInsertedSignals); + QCOMPARE(rowsInsertedSpy.count(), numberOfRowsInsertedSignals); + } + // The column count should only change *after* rowsAboutToBeInserted has been emitted + if (shouldSucceed) { + if (modelResetSpy.count() == 0 && modelLayoutChangedSpy.count() == 0) { + QCOMPARE(afterAboutToInsertColumnCount, beforeInsertColumnCount); + QCOMPARE(afterInsertColumnCount, beforeInsertColumnCount+count+(numberOfColumnsInsertedSignals-1)); + } + if (modelResetSpy.count() == 0) + QCOMPARE(currentModel->columnCount(parentOfInserted), beforeInsertColumnCount+count+(numberOfColumnsInsertedSignals-1)); + } + else + QCOMPARE(currentModel->rowCount(parentOfInserted), beforeInsertRowCount); + } + disconnect(currentModel, SIGNAL(columnsAboutToBeInserted( const QModelIndex &, int , int )), + this, SLOT(slot_columnsAboutToInserted(const QModelIndex &))); + disconnect(currentModel, SIGNAL(columnsInserted( const QModelIndex &, int , int )), + this, SLOT(slot_columnsInserted(const QModelIndex &))); + + if (columnsAboutToBeInsertedSpy.count() > 0){ + QList arguments = columnsAboutToBeInsertedSpy.at(0); + QModelIndex parent = (qvariant_cast(arguments.at(0))); + int first = arguments.at(1).toInt(); + int last = arguments.at(2).toInt(); + QCOMPARE(first, start); + QCOMPARE(last, start + count - 1); + QVERIFY(parentOfInserted == parent); + } + + if (columnsInsertedSpy.count() > 0){ + QList arguments = columnsInsertedSpy.at(0); + QModelIndex parent = (qvariant_cast(arguments.at(0))); + int first = arguments.at(1).toInt(); + int last = arguments.at(2).toInt(); + QCOMPARE(first, start); + QCOMPARE(last, start + count - 1); + QVERIFY(parentOfInserted == parent); + } + + // Cleanup the test area because insert::() is called multiple times in a test + testModels->cleanupTestArea(currentModel); +} + +void tst_QItemModel::slot_rowsAboutToInserted(const QModelIndex &parent) +{ + QVERIFY(parentOfInserted == parent); + afterAboutToInsertRowCount = currentModel->rowCount(parent); + bool hasChildren = currentModel->hasChildren(parent); + bool hasDimensions = currentModel->columnCount(parent) > 0 && currentModel->rowCount(parent) > 0; + QCOMPARE(hasChildren, hasDimensions); + verifyState(currentModel); + + // This does happen + if (insertRecursively) { + QFETCH(int, recursiveRow); + QFETCH(int, recursiveCount); + insertRecursively = false; + QCOMPARE(currentModel->insertRows(recursiveRow, recursiveCount, parent), true); + } +} + +void tst_QItemModel::slot_rowsInserted(const QModelIndex &parent) +{ + QVERIFY(parentOfInserted == parent); + afterInsertRowCount = currentModel->rowCount(parent); + bool hasChildren = currentModel->hasChildren(parent); + bool hasDimensions = currentModel->columnCount(parent) > 0 && currentModel->rowCount(parent) > 0; + QCOMPARE(hasChildren, hasDimensions); + verifyState(currentModel); +} + +void tst_QItemModel::slot_columnsAboutToInserted(const QModelIndex &parent) +{ + QVERIFY(parentOfInserted == parent); + afterAboutToInsertColumnCount = currentModel->columnCount(parent); + bool hasChildren = currentModel->hasChildren(parent); + bool hasDimensions = currentModel->columnCount(parent) > 0 && currentModel->rowCount(parent) > 0; + QCOMPARE(hasChildren, hasDimensions); + verifyState(currentModel); +} + +void tst_QItemModel::slot_columnsInserted(const QModelIndex &parent) +{ + QVERIFY(parentOfInserted == parent); + afterInsertColumnCount = currentModel->columnCount(parent); + bool hasChildren = currentModel->hasChildren(parent); + bool hasDimensions = currentModel->columnCount(parent) > 0 && currentModel->rowCount(parent) > 0; + QCOMPARE(hasChildren, hasDimensions); + verifyState(currentModel); +} + +QTEST_MAIN(tst_QItemModel) +#include "tst_qitemmodel.moc" diff --git a/tests/auto/corelib/kernel/kernel.pro b/tests/auto/corelib/kernel/kernel.pro index 77762dbee1..d99f1a78f7 100644 --- a/tests/auto/corelib/kernel/kernel.pro +++ b/tests/auto/corelib/kernel/kernel.pro @@ -2,7 +2,6 @@ TEMPLATE=subdirs SUBDIRS=\ qcoreapplication \ qeventloop \ - qitemmodel \ qmath \ qmetaobject \ qmetaobjectbuilder \ diff --git a/tests/auto/corelib/kernel/qitemmodel/.gitignore b/tests/auto/corelib/kernel/qitemmodel/.gitignore deleted file mode 100644 index 017be17fa8..0000000000 --- a/tests/auto/corelib/kernel/qitemmodel/.gitignore +++ /dev/null @@ -1 +0,0 @@ -tst_qitemmodel diff --git a/tests/auto/corelib/kernel/qitemmodel/README b/tests/auto/corelib/kernel/qitemmodel/README deleted file mode 100644 index bddec0cef2..0000000000 --- a/tests/auto/corelib/kernel/qitemmodel/README +++ /dev/null @@ -1,3 +0,0 @@ -This is a QStandardItemModel test. It will help catch a lot of simple problems. You should still create your own test for custom functionality and functions that your model has. - -Add your model to the modelstotest.cpp file (qt model's are included as examples) and modify the pro file accordingly. Fix the errors in order of failure as later tests assume the ones before them have passed. diff --git a/tests/auto/corelib/kernel/qitemmodel/modelstotest.cpp b/tests/auto/corelib/kernel/qitemmodel/modelstotest.cpp deleted file mode 100644 index 5f96513171..0000000000 --- a/tests/auto/corelib/kernel/qitemmodel/modelstotest.cpp +++ /dev/null @@ -1,425 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the test suite of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - - -#include -#include -#include -#include -#include - -/* - To add a model to be tested add the header file to the includes - and impliment what is needed in the four functions below. - - You can add more then one model, several Qt models and included as examples. - - In tst_qitemmodel.cpp a new ModelsToTest object is created for each test. - - When you have errors fix the first ones first. Later tests depend upon them working -*/ - -class ModelsToTest { - -public: - ModelsToTest(); - - QAbstractItemModel *createModel(const QString &modelType); - QModelIndex populateTestArea(QAbstractItemModel *model); - void cleanupTestArea(QAbstractItemModel *model); - - enum Read { - ReadOnly, // wont perform remove(), insert(), and setData() - ReadWrite - }; - enum Contains { - Empty, // Confirm that rowCount() == 0 etc throughout the test - HasData // Confirm that rowCount() != 0 etc throughout the test - }; - - struct test { - test(QString m, Read r, Contains c) : modelType(m), read(r), contains(c){}; - - QString modelType; - Read read; - Contains contains; - }; - - QList tests; - - static void setupDatabase(); -}; - - -/*! - Add new tests, they can be the same model, but in a different state. - - The name of the model is passed to createModel - If readOnly is true the remove tests will be skipped. Example: QDirModel is disabled. - If createModel returns an empty model. Example: QDirModel does not - */ -ModelsToTest::ModelsToTest() -{ - setupDatabase(); - - tests.append(test("QDirModel", ReadOnly, HasData)); - tests.append(test("QStringListModel", ReadWrite, HasData)); - tests.append(test("QStringListModelEmpty", ReadWrite, Empty)); - - tests.append(test("QStandardItemModel", ReadWrite, HasData)); - tests.append(test("QStandardItemModelEmpty", ReadWrite, Empty)); - - // QSortFilterProxyModel test uses QStandardItemModel so test it first - tests.append(test("QSortFilterProxyModel", ReadWrite, HasData)); - tests.append(test("QSortFilterProxyModelEmpty", ReadWrite, Empty)); - tests.append(test("QSortFilterProxyModelRegExp", ReadWrite, HasData)); - - tests.append(test("QListModel", ReadWrite, HasData)); - tests.append(test("QListModelEmpty", ReadWrite, Empty)); - tests.append(test("QTableModel", ReadWrite, HasData)); - tests.append(test("QTableModelEmpty", ReadWrite, Empty)); - - tests.append(test("QTreeModel", ReadWrite, HasData)); - tests.append(test("QTreeModelEmpty", ReadWrite, Empty)); - - tests.append(test("QSqlQueryModel", ReadOnly, HasData)); - tests.append(test("QSqlQueryModelEmpty", ReadOnly, Empty)); - - // Fails on remove - tests.append(test("QSqlTableModel", ReadOnly, HasData)); -} - -/*! - Return a new modelType. - */ -QAbstractItemModel *ModelsToTest::createModel(const QString &modelType) -{ - if (modelType == "QStringListModelEmpty") - return new QStringListModel(); - - if (modelType == "QStringListModel") { - QStringListModel *model = new QStringListModel(); - populateTestArea(model); - return model; - } - - if (modelType == "QStandardItemModelEmpty") { - return new QStandardItemModel(); - } - - if (modelType == "QStandardItemModel") { - QStandardItemModel *model = new QStandardItemModel(); - populateTestArea(model); - return model; - } - - if (modelType == "QSortFilterProxyModelEmpty") { - QSortFilterProxyModel *model = new QSortFilterProxyModel; - QStandardItemModel *standardItemModel = new QStandardItemModel; - model->setSourceModel(standardItemModel); - return model; - } - - if (modelType == "QSortFilterProxyModelRegExp") { - QSortFilterProxyModel *model = new QSortFilterProxyModel; - QStandardItemModel *standardItemModel = new QStandardItemModel; - model->setSourceModel(standardItemModel); - populateTestArea(model); - model->setFilterRegExp(QRegExp("(^$|I.*)")); - return model; - } - - if (modelType == "QSortFilterProxyModel") { - QSortFilterProxyModel *model = new QSortFilterProxyModel; - QStandardItemModel *standardItemModel = new QStandardItemModel; - model->setSourceModel(standardItemModel); - populateTestArea(model); - return model; - } - - if (modelType == "QDirModel") { - QDirModel *model = new QDirModel(); - model->setReadOnly(false); - return model; - } - - if (modelType == "QSqlQueryModel") { - QSqlQueryModel *model = new QSqlQueryModel(); - populateTestArea(model); - return model; - } - - if (modelType == "QSqlQueryModelEmpty") { - QSqlQueryModel *model = new QSqlQueryModel(); - return model; - } - - if (modelType == "QSqlTableModel") { - QSqlTableModel *model = new QSqlTableModel(); - populateTestArea(model); - return model; - } - - if (modelType == "QListModelEmpty") - return (new QListWidget)->model(); - - if (modelType == "QListModel") { - QListWidget *widget = new QListWidget; - populateTestArea(widget->model()); - return widget->model(); - } - - if (modelType == "QTableModelEmpty") - return (new QTableWidget)->model(); - - if (modelType == "QTableModel") { - QTableWidget *widget = new QTableWidget; - populateTestArea(widget->model()); - return widget->model(); - } - - if (modelType == "QTreeModelEmpty") { - QTreeWidget *widget = new QTreeWidget; - return widget->model(); - } - - if (modelType == "QTreeModel") { - QTreeWidget *widget = new QTreeWidget; - populateTestArea(widget->model()); - return widget->model(); - } - - return 0; -} - -/*! - Fills model with some test data at least twenty rows and if possible twenty or more columns. - Return the parent of a row/column that can be tested. - - NOTE: If readOnly is true tests will try to remove and add rows and columns. - If you have a tree model returning not the root index will help catch more errors. - */ -QModelIndex ModelsToTest::populateTestArea(QAbstractItemModel *model) -{ - if (QStringListModel *stringListModel = qobject_cast(model)) { - QString alphabet = "a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z"; - stringListModel->setStringList( alphabet.split(",") ); - return QModelIndex(); - } - - if (qobject_cast(model)) { - // Basic tree StandardItemModel - QModelIndex parent; - QVariant blue = QVariant(QColor(Qt::blue)); -#ifndef Q_OS_WINCE - for (int i = 0; i < 4; ++i) { -#else - for (int i = 0; i < 2; ++i) { -#endif - parent = model->index(0, 0, parent); - model->insertRows(0, 26 + i, parent); -#ifndef Q_OS_WINCE - model->insertColumns(0, 26 + i, parent); -#else - model->insertColumns(0, 4 + i, parent); -#endif - // Fill in some values to make it easier to debug - /* - for (int x = 0; x < 26 + i; ++x) { - QString xval = QString::number(x); - for (int y = 0; y < 26 + i; ++y) { - QString val = xval + QString::number(y) + QString::number(i); - QModelIndex index = model->index(x, y, parent); - model->setData(index, val); - model->setData(index, blue, Qt::TextColorRole); - } - } - */ - } - return model->index(0,0); - } - - if (qobject_cast(model)) { - QAbstractItemModel *realModel = (qobject_cast(model))->sourceModel(); - // Basic tree StandardItemModel - QModelIndex parent; - QVariant blue = QVariant(QColor(Qt::blue)); -#ifndef Q_OS_WINCE - for (int i = 0; i < 4; ++i) { -#else - for (int i = 0; i < 2; ++i) { -#endif - parent = realModel->index(0, 0, parent); - realModel->insertRows(0, 26+i, parent); -#ifndef Q_OS_WINCE - realModel->insertColumns(0, 26+i, parent); -#else - realModel->insertColumns(0, 4, parent); -#endif - // Fill in some values to make it easier to debug - /* - for (int x = 0; x < 26+i; ++x) { - QString xval = QString::number(x); - for (int y = 0; y < 26 + i; ++y) { - QString val = xval + QString::number(y) + QString::number(i); - QModelIndex index = realModel->index(x, y, parent); - realModel->setData(index, val); - realModel->setData(index, blue, Qt::TextColorRole); - } - } - */ - } - QModelIndex returnIndex = model->index(0,0); - if (!returnIndex.isValid()) - qFatal("%s: model index to be returned is invalid", Q_FUNC_INFO); - return returnIndex; - } - - if (QDirModel *dirModel = qobject_cast(model)) { - if (!QDir::current().mkdir("test")) - qFatal("%s: cannot create directory %s", - Q_FUNC_INFO, - qPrintable(QDir::toNativeSeparators(QDir::currentPath()+"/test"))); - for (int i = 0; i < 26; ++i) { - QString subdir = QString("test/foo_%1").arg(i); - if (!QDir::current().mkdir(subdir)) - qFatal("%s: cannot create directory %s", - Q_FUNC_INFO, - qPrintable(QDir::toNativeSeparators(QDir::currentPath()+"/"+subdir))); - } - return dirModel->index(QDir::currentPath()+"/test"); - } - - if (QSqlQueryModel *queryModel = qobject_cast(model)) { - QSqlQuery q; - q.exec("CREATE TABLE test(id int primary key, name varchar(30))"); - q.prepare("INSERT INTO test(id, name) values (?, ?)"); -#ifndef Q_OS_WINCE - for (int i = 0; i < 1024; ++i) { -#else - for (int i = 0; i < 512; ++i) { -#endif - q.addBindValue(i); - q.addBindValue("Mr. Smith" + QString::number(i)); - q.exec(); - } - if (QSqlTableModel *tableModel = qobject_cast(model)) { - tableModel->setTable("test"); - tableModel->setEditStrategy(QSqlTableModel::OnManualSubmit); - tableModel->select(); - } else { - queryModel->setQuery("select * from test"); - } - return QModelIndex(); - } - - if (QListWidget *listWidget = qobject_cast(model->parent())) { -#ifndef Q_OS_WINCE - int items = 100; -#else - int items = 50; -#endif - while (items--) - listWidget->addItem(QString("item %1").arg(items)); - return QModelIndex(); - } - - if (QTableWidget *tableWidget = qobject_cast(model->parent())) { - tableWidget->setColumnCount(20); - tableWidget->setRowCount(20); - return QModelIndex(); - } - - if (QTreeWidget *treeWidget = qobject_cast(model->parent())) { - int topItems = 20; - treeWidget->setColumnCount(1); - QTreeWidgetItem *parent; - while (topItems--){ - parent = new QTreeWidgetItem(treeWidget, QStringList(QString("top %1").arg(topItems))); - for (int i = 0; i < 20; ++i) - new QTreeWidgetItem(parent, QStringList(QString("child %1").arg(topItems))); - } - return QModelIndex(); - } - - qFatal("%s: unknown type of model", Q_FUNC_INFO); - return QModelIndex(); -} - -/*! - If you need to cleanup from populateTest() do it here. - Note that this is called after every test even if populateTestArea isn't called. - */ -void ModelsToTest::cleanupTestArea(QAbstractItemModel *model) -{ - if (qobject_cast(model)) - { - if (QDir(QDir::currentPath()+"/test").exists()) - { - for (int i = 0; i < 26; ++i) { - QString subdir(QString("test/foo_%1").arg(i)); - if (!QDir::current().rmdir(subdir)) - qFatal("%s: cannot remove directory %s", - Q_FUNC_INFO, - qPrintable(QDir::toNativeSeparators(QDir::currentPath()+"/"+subdir))); - } - if (!QDir::current().rmdir("test")) - qFatal("%s: cannot remove directory %s", - Q_FUNC_INFO, - qPrintable(QDir::toNativeSeparators(QDir::currentPath()+"/test"))); - } - } else if (qobject_cast(model)) { - QSqlQuery q("DROP TABLE test"); - } -} - -void ModelsToTest::setupDatabase() -{ - if (!QSqlDatabase::database().isValid()) { - QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE"); - db.setDatabaseName(":memory:"); - if (!db.open()) { - qWarning() << "Unable to open database" << db.lastError(); - return; - } - } -} - diff --git a/tests/auto/corelib/kernel/qitemmodel/qitemmodel.pro b/tests/auto/corelib/kernel/qitemmodel/qitemmodel.pro deleted file mode 100644 index ff21d6afa5..0000000000 --- a/tests/auto/corelib/kernel/qitemmodel/qitemmodel.pro +++ /dev/null @@ -1,4 +0,0 @@ -CONFIG += testcase -TARGET = tst_qitemmodel -QT += widgets sql testlib -SOURCES = tst_qitemmodel.cpp diff --git a/tests/auto/corelib/kernel/qitemmodel/tst_qitemmodel.cpp b/tests/auto/corelib/kernel/qitemmodel/tst_qitemmodel.cpp deleted file mode 100644 index 636635a5b5..0000000000 --- a/tests/auto/corelib/kernel/qitemmodel/tst_qitemmodel.cpp +++ /dev/null @@ -1,1389 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the test suite of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include -#include -#include -#include "modelstotest.cpp" -#include - -Q_DECLARE_METATYPE(QModelIndex) - -/*! - See modelstotest.cpp for instructions on how to have your model tested with these tests. - - Each test such as rowCount have a _data() function which populate the QTest data with - the tests specified by modelstotest.cpp and any extra data needed for that particular test. - - setupWithNoTestData() fills the QTest data with just the tests and is used by most tests. - */ -class tst_QItemModel : public QObject -{ - Q_OBJECT - -public slots: - void init(); - void cleanup(); - -private slots: - void nonDestructiveBasicTest_data(); - void nonDestructiveBasicTest(); - - void rowCount_data(); - void rowCount(); - void columnCount_data(); - void columnCount(); - - void hasIndex_data(); - void hasIndex(); - void index_data(); - void index(); - - void parent_data(); - void parent(); - - void data_data(); - void data(); - - void setData_data(); - void setData(); - - void setHeaderData_data(); - void setHeaderData(); - - void remove_data(); - void remove(); - - void insert_data(); - void insert(); - - void sort_data(); - void sort(); - -protected slots: - void slot_rowsAboutToRemove(const QModelIndex &parent); - void slot_rowsRemoved(const QModelIndex &parent); - void slot_columnsAboutToRemove(const QModelIndex &parent); - void slot_columnsRemoved(const QModelIndex &parent); - - void slot_rowsAboutToInserted(const QModelIndex &parent); - void slot_rowsInserted(const QModelIndex &parent); - void slot_columnsAboutToInserted(const QModelIndex &parent); - void slot_columnsInserted(const QModelIndex &parent); -private: - void setupWithNoTestData(); - QAbstractItemModel *currentModel; - ModelsToTest *testModels; - - // used by remove() - QPersistentModelIndex parentOfRemoved; - int afterAboutToRemoveRowCount; - int afterRemoveRowCount; - int afterAboutToRemoveColumnCount; - int afterRemoveColumnCount; - - // remove() recursive - bool removeRecursively; - - // used by insert() - QPersistentModelIndex parentOfInserted; - int afterAboutToInsertRowCount; - int afterInsertRowCount; - int afterAboutToInsertColumnCount; - int afterInsertColumnCount; - - // insert() recursive - bool insertRecursively; -}; - -void tst_QItemModel::init() -{ - testModels = new ModelsToTest(); - removeRecursively = false; - insertRecursively = false; -} - -void tst_QItemModel::cleanup() -{ - testModels->cleanupTestArea(currentModel); - delete testModels; - delete currentModel; - currentModel = 0; -} - -void tst_QItemModel::setupWithNoTestData() -{ - ModelsToTest modelsToTest; - QTest::addColumn("modelType"); - QTest::addColumn("readOnly"); - QTest::addColumn("isEmpty"); - for (int i = 0; i < modelsToTest.tests.size(); ++i) { - ModelsToTest::test t = modelsToTest.tests.at(i); - bool readOnly = (t.read == ModelsToTest::ReadOnly); - bool isEmpty = (t.contains == ModelsToTest::Empty); - QTest::newRow(t.modelType.toLatin1().data()) << t.modelType << readOnly << isEmpty; - } -} - -void tst_QItemModel::nonDestructiveBasicTest_data() -{ - setupWithNoTestData(); -} - -/*! - nonDestructiveBasicTest tries to call a number of the basic functions (not all) - to make sure the model doesn't segfault, testing the functions that makes sense. - */ -void tst_QItemModel::nonDestructiveBasicTest() -{ - QFETCH(QString, modelType); - currentModel = testModels->createModel(modelType); - QVERIFY(currentModel); - - QCOMPARE(currentModel->buddy(QModelIndex()), QModelIndex()); - currentModel->canFetchMore(QModelIndex()); - QVERIFY(currentModel->columnCount(QModelIndex()) >= 0); - QCOMPARE(currentModel->data(QModelIndex()), QVariant()); - currentModel->fetchMore(QModelIndex()); - Qt::ItemFlags flags = currentModel->flags(QModelIndex()); - QVERIFY(flags == Qt::ItemIsDropEnabled || flags == 0); - currentModel->hasChildren(QModelIndex()); - currentModel->hasIndex(0, 0); - currentModel->headerData(0, Qt::Horizontal); - currentModel->index(0,0), QModelIndex(); - currentModel->itemData(QModelIndex()); - QVariant cache; - currentModel->match(QModelIndex(), -1, cache); - currentModel->mimeTypes(); - QCOMPARE(currentModel->parent(QModelIndex()), QModelIndex()); - QVERIFY(currentModel->rowCount() >= 0); - QVariant variant; - currentModel->setData(QModelIndex(), variant, -1); - currentModel->setHeaderData(-1, Qt::Horizontal, QVariant()); - currentModel->setHeaderData(0, Qt::Horizontal, QVariant()); - currentModel->setHeaderData(currentModel->columnCount() + 100, Qt::Horizontal, QVariant()); - QMap roles; - currentModel->setItemData(QModelIndex(), roles); - currentModel->sibling(0,0,QModelIndex()); - currentModel->span(QModelIndex()); - currentModel->supportedDropActions(); - currentModel->revert(); - currentModel->submit(); -} - - -void tst_QItemModel::rowCount_data() -{ - setupWithNoTestData(); -} - -/*! - Tests model's implimentation of QAbstractItemModel::rowCount() and hasChildren() - */ -void tst_QItemModel::rowCount() -{ - QFETCH(QString, modelType); - currentModel = testModels->createModel(modelType); - QVERIFY(currentModel); - - QFETCH(bool, isEmpty); - if (isEmpty) { - QCOMPARE(currentModel->rowCount(), 0); - QCOMPARE(currentModel->hasChildren(), false); - } - else { - QVERIFY(currentModel->rowCount() > 0); - QCOMPARE(currentModel->hasChildren(), true); - } - - // check top row - QModelIndex topIndex = currentModel->index(0, 0, QModelIndex()); - int rows = currentModel->rowCount(topIndex); - QVERIFY(rows >= 0); - if (rows > 0) - QCOMPARE(currentModel->hasChildren(topIndex), true); - else - QCOMPARE(currentModel->hasChildren(topIndex), false); - - QModelIndex secondLevelIndex = currentModel->index(0, 0, topIndex); - if (secondLevelIndex.isValid()) { // not the top level - // check a row count where parent is valid - rows = currentModel->rowCount(secondLevelIndex); - QVERIFY(rows >= 0); - if (rows > 0) - QCOMPARE(currentModel->hasChildren(secondLevelIndex), true); - else - QCOMPARE(currentModel->hasChildren(secondLevelIndex), false); - } - - // rowCount is tested more extensivly more later in checkChildren(), - // but this catches the big mistakes -} - -void tst_QItemModel::columnCount_data() -{ - setupWithNoTestData(); -} - -/*! - Tests model's implimentation of QAbstractItemModel::columnCount() and hasChildren() - */ -void tst_QItemModel::columnCount() -{ - QFETCH(QString, modelType); - currentModel = testModels->createModel(modelType); - QVERIFY(currentModel); - - QFETCH(bool, isEmpty); - if (isEmpty) { - QCOMPARE(currentModel->hasChildren(), false); - } - else { - QVERIFY(currentModel->columnCount() > 0); - QCOMPARE(currentModel->hasChildren(), true); - } - - // check top row - QModelIndex topIndex = currentModel->index(0, 0, QModelIndex()); - int columns = currentModel->columnCount(topIndex); - - // check a row count where parent is valid - columns = currentModel->columnCount(currentModel->index(0, 0, topIndex)); - QVERIFY(columns >= 0); - - // columnCount is tested more extensivly more later in checkChildren(), - // but this catches the big mistakes -} - -void tst_QItemModel::hasIndex_data() -{ - setupWithNoTestData(); -} - -/*! - Tests model's implimentation of QAbstractItemModel::hasIndex() - */ -void tst_QItemModel::hasIndex() -{ - QFETCH(QString, modelType); - currentModel = testModels->createModel(modelType); - QVERIFY(currentModel); - - // Make sure that invalid values returns an invalid index - QCOMPARE(currentModel->hasIndex(-2, -2), false); - QCOMPARE(currentModel->hasIndex(-2, 0), false); - QCOMPARE(currentModel->hasIndex(0, -2), false); - - int rows = currentModel->rowCount(); - int columns = currentModel->columnCount(); - - QCOMPARE(currentModel->hasIndex(rows, columns), false); - QCOMPARE(currentModel->hasIndex(rows+1, columns+1), false); - - QFETCH(bool, isEmpty); - if (isEmpty) - return; - - QCOMPARE(currentModel->hasIndex(0,0), true); - - // hasIndex is tested more extensivly more later in checkChildren(), - // but this catches the big mistakes -} - -void tst_QItemModel::index_data() -{ - setupWithNoTestData(); -} - -/*! - Tests model's implimentation of QAbstractItemModel::index() - */ -void tst_QItemModel::index() -{ - QFETCH(QString, modelType); - currentModel = testModels->createModel(modelType); - QVERIFY(currentModel); - - // Make sure that invalid values returns an invalid index - QCOMPARE(currentModel->index(-2, -2), QModelIndex()); - QCOMPARE(currentModel->index(-2, 0), QModelIndex()); - QCOMPARE(currentModel->index(0, -2), QModelIndex()); - - QFETCH(bool, isEmpty); - if (isEmpty) - return; - - int rows = currentModel->rowCount(); - int columns = currentModel->columnCount(); - - // Catch off by one errors - QCOMPARE(currentModel->index(rows,columns), QModelIndex()); - QCOMPARE(currentModel->index(0,0).isValid(), true); - - // Make sure that the same index is always returned - QModelIndex a = currentModel->index(0,0); - QModelIndex b = currentModel->index(0,0); - QVERIFY(a == b); - - // index is tested more extensivly more later in checkChildren(), - // but this catches the big mistakes -} - - -void tst_QItemModel::parent_data() -{ - setupWithNoTestData(); -} - -/*! - A model that returns an index of parent X should also return X when asking - for the parent of the index. - - This recursive function does pretty extensive testing on the whole model in an - effort to catch edge cases. - - This function assumes that rowCount(), columnCount() and index() work. If they have - a bug it will point it out, but the above tests should have already found the basic bugs - because it is easier to figure out the problem in those tests then this one. - */ -void checkChildren(QAbstractItemModel *currentModel, const QModelIndex &parent, int currentDepth=0) -{ - QFETCH(bool, readOnly); - - if (currentModel->canFetchMore(parent)) - currentModel->fetchMore(parent); - - int rows = currentModel->rowCount(parent); - int columns = currentModel->columnCount(parent); - - QCOMPARE(rows > 0, (currentModel->hasChildren(parent))); - - // Some reasuring testing against rows(),columns(), and hasChildren() - QVERIFY(rows >= 0); - QVERIFY(columns >= 0); - if (rows > 0 || columns > 0) - QCOMPARE(currentModel->hasChildren(parent), true); - else - QCOMPARE(currentModel->hasChildren(parent), false); - - QCOMPARE(currentModel->hasIndex(rows+1, 0, parent), false); - for (int r = 0; r < rows; ++r) { - if (currentModel->canFetchMore(parent)) - currentModel->fetchMore(parent); - - QCOMPARE(currentModel->hasIndex(r, columns+1, parent), false); - for (int c = 0; c < columns; ++c) { - QCOMPARE(currentModel->hasIndex(r, c, parent), true); - QModelIndex index = currentModel->index(r, c, parent); - QCOMPARE(index.isValid(), true); - - if (!readOnly) - currentModel->setData(index, "I'm a little tea pot short and stout"); - QModelIndex modifiedIndex = currentModel->index(r, c, parent); - QCOMPARE(index, modifiedIndex); - - // Make sure we get the same index if we request it twice in a row - QModelIndex a = currentModel->index(r, c, parent); - QModelIndex b = currentModel->index(r, c, parent); - QVERIFY(a == b); - - // Some basic checking on the index that is returned - QVERIFY(index.model() == currentModel); - QCOMPARE(index.row(), r); - QCOMPARE(index.column(), c); - QCOMPARE(currentModel->data(index, Qt::DisplayRole).isValid(), true); - - // If the next test fails here is some somewhat useful debug you play with. - /* - if (currentModel->parent(index) != parent) { - qDebug() << r << c << currentDepth << currentModel->data(index).toString() - << currentModel->data(parent).toString(); - qDebug() << index << parent << currentModel->parent(index); - QTreeView view; - view.setModel(currentModel); - view.show(); - QTest::qWait(9000); - }*/ - QCOMPARE(currentModel->parent(index), parent); - - // recursivly go down - if (currentModel->hasChildren(index) && currentDepth < 5) { - checkChildren(currentModel, index, ++currentDepth); - // Because this is recursive we will return at the first failure rather then - // reporting it over and over - if (QTest::currentTestFailed()) - return; - } - - // make sure that after testing the children that the index pointer doesn't change. - QModelIndex newerIndex = currentModel->index(r, c, parent); - QCOMPARE(index, newerIndex); - } - } -} - -/*! - Tests model's implimentation of QAbstractItemModel::parent() - */ -void tst_QItemModel::parent() -{ - QFETCH(QString, modelType); - currentModel = testModels->createModel(modelType); - QVERIFY(currentModel); - - // Make sure the model wont crash and will return an invalid QModelIndex - // when asked for the parent of an invalid index. - QCOMPARE(currentModel->parent(QModelIndex()), QModelIndex()); - - QFETCH(bool, isEmpty); - if (isEmpty) - return; - - // Common error test #1, make sure that a top level index has a parent - // that is a invalid QModelIndex. You model - QModelIndex topIndex = currentModel->index(0, 0, QModelIndex()); - QCOMPARE(currentModel->parent(topIndex), QModelIndex()); - - // Common error test #2, make sure that a second level index has a parent - // that is the top level index. - if (currentModel->rowCount(topIndex) > 0) { - QModelIndex childIndex = currentModel->index(0, 0, topIndex); - QCOMPARE(currentModel->parent(childIndex), topIndex); - } - - // Common error test #3, the second column has the same children - // as the first column in a row. - QModelIndex topIndex1 = currentModel->index(0, 1, QModelIndex()); - if (currentModel->rowCount(topIndex1) > 0) { - QModelIndex childIndex = currentModel->index(0, 0, topIndex); - QModelIndex childIndex1 = currentModel->index(0, 0, topIndex1); - QVERIFY(childIndex != childIndex1); - } - - // Full test, walk 10 levels deap through the model making sure that all - // parents's children correctly specify their parent - QModelIndex top = QModelIndex(); - checkChildren(currentModel, top); -} - - -void tst_QItemModel::data_data() -{ - setupWithNoTestData(); -} - -/*! - Tests model's implimentation of QAbstractItemModel::data() - */ -void tst_QItemModel::data() -{ - QFETCH(QString, modelType); - currentModel = testModels->createModel(modelType); - QVERIFY(currentModel); - - // Invalid index should return an invalid qvariant - QVERIFY(!currentModel->data(QModelIndex()).isValid()); - - QFETCH(bool, isEmpty); - if (isEmpty) - return; - - // A valid index should have a valid qvariant data - QVERIFY(currentModel->index(0,0).isValid()); - - // shouldn't be able to set data on an invalid index - QCOMPARE(currentModel->setData(QModelIndex(), "foo", Qt::DisplayRole), false); - - // General Purpose roles - QVariant variant = currentModel->data(currentModel->index(0,0), Qt::ToolTipRole); - if (variant.isValid()) { - QVERIFY(qVariantCanConvert(variant)); - } - variant = currentModel->data(currentModel->index(0,0), Qt::StatusTipRole); - if (variant.isValid()) { - QVERIFY(qVariantCanConvert(variant)); - } - variant = currentModel->data(currentModel->index(0,0), Qt::WhatsThisRole); - if (variant.isValid()) { - QVERIFY(qVariantCanConvert(variant)); - } - - variant = currentModel->data(currentModel->index(0,0), Qt::SizeHintRole); - if (variant.isValid()) { - QVERIFY(qVariantCanConvert(variant)); - } - - - // Appearance roles - QVariant fontVariant = currentModel->data(currentModel->index(0,0), Qt::FontRole); - if (fontVariant.isValid()) { - QVERIFY(qVariantCanConvert(fontVariant)); - } - - QVariant textAlignmentVariant = currentModel->data(currentModel->index(0,0), Qt::TextAlignmentRole); - if (textAlignmentVariant.isValid()) { - int alignment = textAlignmentVariant.toInt(); - QVERIFY(alignment == Qt::AlignLeft || - alignment == Qt::AlignRight || - alignment == Qt::AlignHCenter || - alignment == Qt::AlignJustify); - } - - QVariant colorVariant = currentModel->data(currentModel->index(0,0), Qt::BackgroundColorRole); - if (colorVariant.isValid()) { - QVERIFY(qVariantCanConvert(colorVariant)); - } - - colorVariant = currentModel->data(currentModel->index(0,0), Qt::TextColorRole); - if (colorVariant.isValid()) { - QVERIFY(qVariantCanConvert(colorVariant)); - } - - QVariant checkStateVariant = currentModel->data(currentModel->index(0,0), Qt::CheckStateRole); - if (checkStateVariant.isValid()) { - int state = checkStateVariant.toInt(); - QVERIFY(state == Qt::Unchecked || - state == Qt::PartiallyChecked || - state == Qt::Checked); - } -} - -void tst_QItemModel::setData_data() -{ - setupWithNoTestData(); -} - -/*! - Tests model's implimentation of QAbstractItemModel::setData() - */ -void tst_QItemModel::setData() -{ - QFETCH(QString, modelType); - currentModel = testModels->createModel(modelType); - QVERIFY(currentModel); - qRegisterMetaType("QModelIndex"); - QSignalSpy spy(currentModel, SIGNAL(dataChanged(const QModelIndex &, const QModelIndex &))); - QVERIFY(spy.isValid()); - QCOMPARE(currentModel->setData(QModelIndex(), QVariant()), false); - QCOMPARE(spy.count(), 0); - - QFETCH(bool, isEmpty); - if (isEmpty) - return; - - QFETCH(bool, readOnly); - if (readOnly) - return; - - // Populate the test area so we can chage stuff. See: cleanup() - QModelIndex topIndex = testModels->populateTestArea(currentModel); - QVERIFY(currentModel->hasChildren(topIndex)); - QModelIndex index = currentModel->index(0, 0, topIndex); - QVERIFY(index.isValid()); - - spy.clear(); - QString text = "Index private pointers should always be the same"; - QCOMPARE(currentModel->setData(index, text, Qt::EditRole), true); - QCOMPARE(index.data(Qt::EditRole).toString(), text); - - // Changing the text shouldn't change the layout, parent, pointer etc. - QModelIndex changedIndex = currentModel->index(0, 0, topIndex); - QCOMPARE(changedIndex, index); - QCOMPARE(spy.count(), 1); -} - -void tst_QItemModel::setHeaderData_data() -{ - setupWithNoTestData(); -} - -/*! - Tests model's implimentation of QAbstractItemModel::setHeaderData() - */ -void tst_QItemModel::setHeaderData() -{ - QFETCH(QString, modelType); - currentModel = testModels->createModel(modelType); - QVERIFY(currentModel); - - QCOMPARE(currentModel->setHeaderData(-1, Qt::Horizontal, QVariant()), false); - QCOMPARE(currentModel->setHeaderData(-1, Qt::Vertical, QVariant()), false); - - QFETCH(bool, isEmpty); - if (isEmpty) - return; - - QFETCH(bool, readOnly); - if (readOnly) - return; - - // Populate the test area so we can change stuff. See: cleanup() - QModelIndex topIndex = testModels->populateTestArea(currentModel); - QVERIFY(currentModel->hasChildren(topIndex)); - QModelIndex index = currentModel->index(0, 0, topIndex); - QVERIFY(index.isValid()); - - qRegisterMetaType("Qt::Orientation"); - QSignalSpy spy(currentModel, SIGNAL(headerDataChanged( Qt::Orientation, int , int ))); - QVERIFY(spy.isValid()); - - QString text = "Index private pointers should always be the same"; - int signalCount = 0; - for (int i = 0; i < 4; ++i){ - if(currentModel->setHeaderData(i, Qt::Horizontal, text)) { - QCOMPARE(currentModel->headerData(i, Qt::Horizontal).toString(), text); - ++signalCount; - } - if(currentModel->setHeaderData(i, Qt::Vertical, text)) { - QCOMPARE(currentModel->headerData(i, Qt::Vertical).toString(), text); - ++signalCount; - } - } - QCOMPARE(spy.count(), signalCount); -} - -void tst_QItemModel::sort_data() -{ - setupWithNoTestData(); -} - -/*! - Tests model's implimentation of QAbstractItemModel::sort() - */ -void tst_QItemModel::sort() -{ - QFETCH(QString, modelType); - currentModel = testModels->createModel(modelType); - QVERIFY(currentModel); - - QFETCH(bool, isEmpty); - if (isEmpty) - return; - - // Populate the test area so we can chage stuff. See: cleanup() - QPersistentModelIndex topIndex = testModels->populateTestArea(currentModel); - QVERIFY(currentModel->hasChildren(topIndex)); - QModelIndex index = currentModel->index(0, 0, topIndex); - QVERIFY(index.isValid()); - QSignalSpy spy(currentModel, SIGNAL(layoutChanged())); - QVERIFY(spy.isValid()); - for (int i=-1; i < 10; ++i){ - currentModel->sort(i); - if (index != currentModel->index(0, 0, topIndex)){ - QVERIFY(spy.count() > 0); - index = currentModel->index(0, 0, topIndex); - spy.clear(); - } - } - currentModel->sort(99999); -} - -/*! - Tests model's implimentation of QAbstractItemModel::removeRow() and QAbstractItemModel::removeColumn() - */ -#define START 0 -#define MIDDLE 6 -#define END -1 -#define MANY 9 -#define ALL -1 -#define NOSIGNALS 0 -#define DEFAULTCOUNT 1 -#define DNS 1 // DefaultNumberOfSignals -#define RECURSIVE true -#define SUCCESS true -#define FAIL false -void tst_QItemModel::remove_data() -{ - ModelsToTest modelsToTest; - QTest::addColumn("modelType"); - QTest::addColumn("readOnly"); - QTest::addColumn("isEmpty"); - - QTest::addColumn("start"); - QTest::addColumn("count"); - - QTest::addColumn("numberOfRowsAboutToBeRemovedSignals"); - QTest::addColumn("numberOfColumnsAboutToBeRemovedSignals"); - QTest::addColumn("numberOfRowsRemovedSignals"); - QTest::addColumn("numberOfColumnsRemovedSignals"); - - QTest::addColumn("recursive"); - QTest::addColumn("recursiveRow"); - QTest::addColumn("recursiveCount"); - - QTest::addColumn("shouldSucceed"); - -#define makeTestRow(testName, start, count, sar, srr, sac, src, r, rr, rc, s) \ - QTest::newRow((t.modelType + testName).toLatin1().data()) << t.modelType << readOnly << isEmpty << \ - start << count << \ - sar << srr << sac << src << \ - r << rr << rc << \ - s; - - for (int i = 0; i < modelsToTest.tests.size(); ++i) { - ModelsToTest::test t = modelsToTest.tests.at(i); - QString name = t.modelType; - bool readOnly = (t.read == ModelsToTest::ReadOnly); - bool isEmpty = (t.contains == ModelsToTest::Empty); - - // half these - makeTestRow(":one at the start", START, DEFAULTCOUNT, DNS, DNS, DNS, DNS, !RECURSIVE, 0, 0, SUCCESS); - makeTestRow(":one at the middle", MIDDLE, DEFAULTCOUNT, DNS, DNS, DNS, DNS, !RECURSIVE, 0, 0, SUCCESS); - makeTestRow(":one at the end", END, DEFAULTCOUNT, DNS, DNS, DNS, DNS, !RECURSIVE, 0, 0, SUCCESS); - - makeTestRow(":many at the start", START, MANY, DNS, DNS, DNS, DNS, !RECURSIVE, 0, 0, SUCCESS); - makeTestRow(":many at the middle", MIDDLE, MANY, DNS, DNS, DNS, DNS, !RECURSIVE, 0, 0, SUCCESS); - makeTestRow(":many at the end", END, MANY, DNS, DNS, DNS, DNS, !RECURSIVE, 0, 0, SUCCESS); - - makeTestRow(":remove all", START, ALL, DNS, DNS, DNS, DNS, !RECURSIVE, 0, 0, SUCCESS); - - makeTestRow(":none at the start", START, 0, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); - makeTestRow(":none at the middle", MIDDLE, 0, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); - makeTestRow(":none at the end", END, 0, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); - - makeTestRow(":invalid start, valid count", -99, 0, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); - makeTestRow(":invalid start, valid count", 9999, 0, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); - makeTestRow(":invalid start, valid count", -99, 1, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); - makeTestRow(":invalid start, valid count", 9999, 1, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); - makeTestRow(":invalid start, valid count", -99, MANY, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); - makeTestRow(":invalid start, valid count", 9999, MANY, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); - - makeTestRow(":valid start, invalid count", START, -2, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); - makeTestRow(":valid start, invalid count", MIDDLE, -2, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); - makeTestRow(":valid start, invalid count", END, -2, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); - makeTestRow(":valid start, invalid count", START, 9999, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); - makeTestRow(":valid start, invalid count", MIDDLE, 9999, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); - makeTestRow(":valid start, invalid count", END, 9999, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); - - // Recursive remove's might assert, haven't decided yet... - //makeTestRow(":one at the start recursivly", START, DEFAULTCOUNT, 2, DNS, 2, DNS, RECURSIVE, START, DEFAULTCOUNT, FAIL); - //makeTestRow(":one at the middle recursivly", MIDDLE, DEFAULTCOUNT, 2, DNS, 2, DNS, RECURSIVE, START, DEFAULTCOUNT, SUCCESS); - //makeTestRow(":one at the end recursivly", END, DEFAULTCOUNT, 2, DNS, 2, DNS, RECURSIVE, START, DEFAULTCOUNT, SUCCESS); - } -} - -void tst_QItemModel::remove() -{ - QFETCH(QString, modelType); - - currentModel = testModels->createModel(modelType); - QVERIFY(currentModel); - - QFETCH(bool, readOnly); - if (readOnly) - return; - - QFETCH(int, start); - QFETCH(int, count); - - QFETCH(bool, recursive); - removeRecursively = recursive; - -/*! - Removes count number of rows starting at start - if count is -1 it removes all rows - if start is -1 then it starts at the last row - count - */ - QFETCH(bool, shouldSucceed); - - // Populate the test area so we can remove something. See: cleanup() - // parentOfRemoved is stored so that the slots can make sure parentOfRemoved is the index that is emitted. - parentOfRemoved = testModels->populateTestArea(currentModel); - - if (count == -1) - count = currentModel->rowCount(parentOfRemoved); - if (start == -1) - start = currentModel->rowCount(parentOfRemoved)-count; - - if (currentModel->rowCount(parentOfRemoved) == 0 || - currentModel->columnCount(parentOfRemoved) == 0) { - qWarning() << "model test area doesn't have any rows or columns, can't fully test remove(). Skipping"; - return; - } - - // When a row or column is removed there should be two signals. - // Watch to make sure they are emitted and get the row/column count when they do get emitted by connecting them to a slot - qRegisterMetaType("QModelIndex"); - QSignalSpy columnsAboutToBeRemovedSpy(currentModel, SIGNAL(columnsAboutToBeRemoved( const QModelIndex &, int , int ))); - QSignalSpy rowsAboutToBeRemovedSpy(currentModel, SIGNAL(rowsAboutToBeRemoved( const QModelIndex &, int , int ))); - QSignalSpy columnsRemovedSpy(currentModel, SIGNAL(columnsRemoved( const QModelIndex &, int, int ))); - QSignalSpy rowsRemovedSpy(currentModel, SIGNAL(rowsRemoved( const QModelIndex &, int, int ))); - QSignalSpy modelResetSpy(currentModel, SIGNAL(modelReset())); - QSignalSpy modelLayoutChangedSpy(currentModel, SIGNAL(layoutChanged())); - - QVERIFY(columnsAboutToBeRemovedSpy.isValid()); - QVERIFY(rowsAboutToBeRemovedSpy.isValid()); - QVERIFY(columnsRemovedSpy.isValid()); - QVERIFY(rowsRemovedSpy.isValid()); - QVERIFY(modelResetSpy.isValid()); - QVERIFY(modelLayoutChangedSpy.isValid()); - - QFETCH(int, numberOfRowsAboutToBeRemovedSignals); - QFETCH(int, numberOfColumnsAboutToBeRemovedSignals); - QFETCH(int, numberOfRowsRemovedSignals); - QFETCH(int, numberOfColumnsRemovedSignals); - - // - // test removeRow() - // - connect(currentModel, SIGNAL(rowsAboutToBeRemoved( const QModelIndex &, int , int )), - this, SLOT(slot_rowsAboutToRemove(const QModelIndex &))); - connect(currentModel, SIGNAL(rowsRemoved( const QModelIndex &, int , int )), - this, SLOT(slot_rowsRemoved(const QModelIndex &))); - int beforeRemoveRowCount = currentModel->rowCount(parentOfRemoved); - QPersistentModelIndex dyingIndex = currentModel->index(start + count + 1, 0, parentOfRemoved); - QCOMPARE(currentModel->removeRows(start, count, parentOfRemoved), shouldSucceed); - currentModel->submit(); - if (shouldSucceed && dyingIndex.isValid()) - QCOMPARE(dyingIndex.row(), start + 1); - - if (rowsAboutToBeRemovedSpy.count() > 0){ - QList arguments = rowsAboutToBeRemovedSpy.at(0); - QModelIndex parent = (qvariant_cast(arguments.at(0))); - int first = arguments.at(1).toInt(); - int last = arguments.at(2).toInt(); - QCOMPARE(first, start); - QCOMPARE(last, start + count - 1); - QVERIFY(parentOfRemoved == parent); - } - - if (rowsRemovedSpy.count() > 0){ - QList arguments = rowsRemovedSpy.at(0); - QModelIndex parent = (qvariant_cast(arguments.at(0))); - int first = arguments.at(1).toInt(); - int last = arguments.at(2).toInt(); - QCOMPARE(first, start); - QCOMPARE(last, start + count - 1); - QVERIFY(parentOfRemoved == parent); - } - - // Only the row signals should have been emitted - if (modelResetSpy.count() >= 1 || modelLayoutChangedSpy.count() >=1 ){ - QCOMPARE(columnsAboutToBeRemovedSpy.count(), 0); - QCOMPARE(rowsAboutToBeRemovedSpy.count(), 0); - QCOMPARE(columnsRemovedSpy.count(), 0); - QCOMPARE(rowsRemovedSpy.count(), 0); - } - else { - QCOMPARE(columnsAboutToBeRemovedSpy.count(), 0); - QCOMPARE(rowsAboutToBeRemovedSpy.count(), numberOfRowsAboutToBeRemovedSignals); - QCOMPARE(columnsRemovedSpy.count(), 0); - QCOMPARE(rowsRemovedSpy.count(), numberOfRowsRemovedSignals); - } - - // The row count should only change *after* rowsAboutToBeRemoved has been emitted - if (shouldSucceed) { - if (modelResetSpy.count() == 0 && modelLayoutChangedSpy.count() == 0){ - QCOMPARE(afterAboutToRemoveRowCount, beforeRemoveRowCount); - QCOMPARE(afterRemoveRowCount, beforeRemoveRowCount-count-(numberOfRowsRemovedSignals-1)); - } - if (modelResetSpy.count() == 0 ) - QCOMPARE(currentModel->rowCount(parentOfRemoved), beforeRemoveRowCount-count-(numberOfRowsRemovedSignals-1)); - } - else { - if (recursive) - QCOMPARE(currentModel->rowCount(parentOfRemoved), beforeRemoveRowCount-1); - else - QCOMPARE(currentModel->rowCount(parentOfRemoved), beforeRemoveRowCount); - - } - disconnect(currentModel, SIGNAL(rowsAboutToBeRemoved( const QModelIndex &, int , int )), - this, SLOT(slot_rowsAboutToRemove(const QModelIndex &))); - disconnect(currentModel, SIGNAL(rowsRemoved( const QModelIndex &, int , int )), - this, SLOT(slot_rowsRemoved(const QModelIndex &))); - modelResetSpy.clear(); - QCOMPARE(modelResetSpy.count(), 0); - - // - // Test remove column - // - connect(currentModel, SIGNAL(columnsAboutToBeRemoved( const QModelIndex &, int , int )), - this, SLOT(slot_columnsAboutToRemove(const QModelIndex &))); - connect(currentModel, SIGNAL(columnsRemoved( const QModelIndex &, int , int )), - this, SLOT(slot_columnsRemoved(const QModelIndex &))); - int beforeRemoveColumnCount = currentModel->columnCount(parentOfRemoved); - - // Some models don't let you remove the column, only row - if (currentModel->removeColumns(start, count, parentOfRemoved)) { - currentModel->submit(); - // Didn't reset the rows, so they should still be at the same value - if (modelResetSpy.count() >= 1 || modelLayoutChangedSpy.count() >= 1){ - QCOMPARE(columnsAboutToBeRemovedSpy.count(), 0); - //QCOMPARE(rowsAboutToBeRemovedSpy.count(), numberOfRowsAboutToBeRemovedSignals); - QCOMPARE(columnsRemovedSpy.count(), 0); - //QCOMPARE(rowsRemovedSpy.count(), numberOfRowsRemovedSignals); - } - else { - QCOMPARE(columnsAboutToBeRemovedSpy.count(), numberOfColumnsAboutToBeRemovedSignals); - QCOMPARE(rowsAboutToBeRemovedSpy.count(), numberOfRowsAboutToBeRemovedSignals); - QCOMPARE(columnsRemovedSpy.count(), numberOfColumnsRemovedSignals); - QCOMPARE(rowsRemovedSpy.count(), numberOfRowsRemovedSignals); - } - - // The column count should only change *after* rowsAboutToBeRemoved has been emitted - if (shouldSucceed) { - if (modelResetSpy.count() == 0 && modelLayoutChangedSpy.count() == 0){ - QCOMPARE(afterAboutToRemoveColumnCount, beforeRemoveColumnCount); - QCOMPARE(afterRemoveColumnCount, beforeRemoveColumnCount-count-(numberOfColumnsRemovedSignals-1)); - } - if (modelResetSpy.count() == 0) - QCOMPARE(currentModel->columnCount(parentOfRemoved), beforeRemoveColumnCount-count-(numberOfColumnsRemovedSignals-1)); - } - else - QCOMPARE(currentModel->rowCount(parentOfRemoved), beforeRemoveRowCount); - } - disconnect(currentModel, SIGNAL(columnsAboutToBeRemoved( const QModelIndex &, int , int )), - this, SLOT(slot_columnsAboutToRemove(const QModelIndex &))); - disconnect(currentModel, SIGNAL(columnsRemoved( const QModelIndex &, int , int )), - this, SLOT(slot_columnsRemoved(const QModelIndex &))); - - if (columnsAboutToBeRemovedSpy.count() > 0){ - QList arguments = columnsAboutToBeRemovedSpy.at(0); - QModelIndex parent = (qvariant_cast(arguments.at(0))); - int first = arguments.at(1).toInt(); - int last = arguments.at(2).toInt(); - QCOMPARE(first, start); - QCOMPARE(last, start + count - 1); - QVERIFY(parentOfRemoved == parent); - } - - if (columnsRemovedSpy.count() > 0){ - QList arguments = columnsRemovedSpy.at(0); - QModelIndex parent = (qvariant_cast(arguments.at(0))); - int first = arguments.at(1).toInt(); - int last = arguments.at(2).toInt(); - QCOMPARE(first, start); - QCOMPARE(last, start + count - 1); - QVERIFY(parentOfRemoved == parent); - } - - // Cleanup the test area because remove::() is called multiple times in a test - testModels->cleanupTestArea(currentModel); -} - -/*! - Developers like to use the slots to then *do* something on the model so it needs to be - in a working state. - */ -void verifyState(QAbstractItemModel *currentModel) { - // Make sure the model isn't confused right now and still knows what is root - if (currentModel->hasChildren()) { - QCOMPARE(currentModel->hasIndex(0, 0), true); - QModelIndex index = currentModel->index(0,0); - QCOMPARE(index.isValid(), true); - QCOMPARE(currentModel->parent(index).isValid(), false); - } else { - QModelIndex index = currentModel->index(0,0); - QCOMPARE(index.isValid(), false); - } -} - -void tst_QItemModel::slot_rowsAboutToRemove(const QModelIndex &parent) -{ - QVERIFY(parentOfRemoved == parent); - afterAboutToRemoveRowCount = currentModel->rowCount(parent); - // hasChildren() should still work - if (afterAboutToRemoveRowCount > 0) - QCOMPARE(currentModel->hasChildren(parent), true); - else - QCOMPARE(currentModel->hasChildren(parent), false); - - verifyState(currentModel); - - // This does happen - if (removeRecursively) { - QFETCH(int, recursiveRow); - QFETCH(int, recursiveCount); - removeRecursively = false; - QCOMPARE(currentModel->removeRows(recursiveRow, recursiveCount, parent), true); - } -} - -void tst_QItemModel::slot_rowsRemoved(const QModelIndex &parent) -{ - QVERIFY(parentOfRemoved == parent); - afterRemoveRowCount = currentModel->rowCount(parent); - if (afterRemoveRowCount > 0) - QCOMPARE(currentModel->hasChildren(parent), true); - else - QCOMPARE(currentModel->hasChildren(parent), false); - - verifyState(currentModel); -} - -void tst_QItemModel::slot_columnsAboutToRemove(const QModelIndex &parent) -{ - QVERIFY(parentOfRemoved == parent); - afterAboutToRemoveColumnCount = currentModel->columnCount(parent); - // hasChildren() should still work - if (afterAboutToRemoveColumnCount > 0 && currentModel->rowCount(parent) > 0) - QCOMPARE(currentModel->hasChildren(parent), true); - else - QCOMPARE(currentModel->hasChildren(parent), false); - - verifyState(currentModel); -} - -void tst_QItemModel::slot_columnsRemoved(const QModelIndex &parent) -{ - QVERIFY(parentOfRemoved == parent); - afterRemoveColumnCount = currentModel->columnCount(parent); - if (afterRemoveColumnCount > 0) - QCOMPARE(currentModel->hasChildren(parent), true); - else - QCOMPARE(currentModel->hasChildren(parent), false); - - verifyState(currentModel); -} - -/*! - Tests the model's insertRow/Column() - */ -void tst_QItemModel::insert_data() -{ - ModelsToTest modelsToTest; - QTest::addColumn("modelType"); - QTest::addColumn("readOnly"); - QTest::addColumn("isEmpty"); - - QTest::addColumn("start"); - QTest::addColumn("count"); - - QTest::addColumn("numberOfRowsAboutToBeInsertedSignals"); - QTest::addColumn("numberOfColumnsAboutToBeInsertedSignals"); - QTest::addColumn("numberOfRowsInsertedSignals"); - QTest::addColumn("numberOfColumnsInsertedSignals"); - - QTest::addColumn("recursive"); - QTest::addColumn("recursiveRow"); - QTest::addColumn("recursiveCount"); - - QTest::addColumn("shouldSucceed"); - -#define makeTestRow(testName, start, count, sar, srr, sac, src, r, rr, rc, s) \ - QTest::newRow((t.modelType + testName).toLatin1().data()) << t.modelType << readOnly << isEmpty << \ - start << count << \ - sar << srr << sac << src << \ - r << rr << rc << \ - s; - - for (int i = 0; i < modelsToTest.tests.size(); ++i) { - ModelsToTest::test t = modelsToTest.tests.at(i); - QString name = t.modelType; - bool readOnly = (t.read == ModelsToTest::ReadOnly); - bool isEmpty = (t.contains == ModelsToTest::Empty); - - // half these - makeTestRow(":one at the start", START, DEFAULTCOUNT, DNS, DNS, DNS, DNS, !RECURSIVE, 0, 0, SUCCESS); - makeTestRow(":one at the middle", MIDDLE, DEFAULTCOUNT, DNS, DNS, DNS, DNS, !RECURSIVE, 0, 0, SUCCESS); - makeTestRow(":one at the end", END, DEFAULTCOUNT, DNS, DNS, DNS, DNS, !RECURSIVE, 0, 0, SUCCESS); - - makeTestRow(":many at the start", START, MANY, DNS, DNS, DNS, DNS, !RECURSIVE, 0, 0, SUCCESS); - makeTestRow(":many at the middle", MIDDLE, MANY, DNS, DNS, DNS, DNS, !RECURSIVE, 0, 0, SUCCESS); - makeTestRow(":many at the end", END, MANY, DNS, DNS, DNS, DNS, !RECURSIVE, 0, 0, SUCCESS); - - makeTestRow(":add row count", START, ALL, DNS, DNS, DNS, DNS, !RECURSIVE, 0, 0, SUCCESS); - - makeTestRow(":none at the start", START, 0, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); - makeTestRow(":none at the middle", MIDDLE, 0, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); - makeTestRow(":none at the end", END, 0, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); - - makeTestRow(":invalid start, valid count", -99, 0, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); - makeTestRow(":invalid start, valid count", 9999, 0, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); - makeTestRow(":invalid start, valid count", -99, 1, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); - makeTestRow(":invalid start, valid count", 9999, 1, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); - makeTestRow(":invalid start, valid count", -99, MANY, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); - makeTestRow(":invalid start, valid count", 9999, MANY, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); - - makeTestRow(":valid start, invalid count", START, -2, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); - makeTestRow(":valid start, invalid count", MIDDLE, -2, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); - makeTestRow(":valid start, invalid count", END, -2, NOSIGNALS, NOSIGNALS, NOSIGNALS, NOSIGNALS, !RECURSIVE, 0, 0, FAIL); - - // Recursive insert's might assert, haven't decided yet... - //makeTestRow(":one at the start recursivly", START, DEFAULTCOUNT, 2, DNS, 2, DNS, RECURSIVE, START, DEFAULTCOUNT, FAIL); - //makeTestRow(":one at the middle recursivly", MIDDLE, DEFAULTCOUNT, 2, DNS, 2, DNS, RECURSIVE, START, DEFAULTCOUNT, SUCCESS); - //makeTestRow(":one at the end recursivly", END, DEFAULTCOUNT, 2, DNS, 2, DNS, RECURSIVE, START, DEFAULTCOUNT, SUCCESS); - } -} - -void tst_QItemModel::insert() -{ - QFETCH(QString, modelType); - currentModel = testModels->createModel(modelType); - QVERIFY(currentModel); - - QFETCH(bool, readOnly); - if (readOnly) - return; - - QFETCH(int, start); - QFETCH(int, count); - - QFETCH(bool, recursive); - insertRecursively = recursive; - -/*! - Inserts count number of rows starting at start - if count is -1 it inserts all rows - if start is -1 then it starts at the last row - count - */ - QFETCH(bool, shouldSucceed); - - // Populate the test area so we can insert something. See: cleanup() - // parentOfInserted is stored so that the slots can make sure parentOfInserted is the index that is emitted. - parentOfInserted = testModels->populateTestArea(currentModel); - - if (count == -1) - count = currentModel->rowCount(parentOfInserted); - if (start == -1) - start = currentModel->rowCount(parentOfInserted)-count; - - if (currentModel->rowCount(parentOfInserted) == 0 || - currentModel->columnCount(parentOfInserted) == 0) { - qWarning() << "model test area doesn't have any rows, can't fully test insert(). Skipping"; - return; - } - - // When a row or column is inserted there should be two signals. - // Watch to make sure they are emitted and get the row/column count when they do get emitted by connecting them to a slot - qRegisterMetaType("QModelIndex"); - QSignalSpy columnsAboutToBeInsertedSpy(currentModel, SIGNAL(columnsAboutToBeInserted( const QModelIndex &, int , int ))); - QSignalSpy rowsAboutToBeInsertedSpy(currentModel, SIGNAL(rowsAboutToBeInserted( const QModelIndex &, int , int ))); - QSignalSpy columnsInsertedSpy(currentModel, SIGNAL(columnsInserted( const QModelIndex &, int, int ))); - QSignalSpy rowsInsertedSpy(currentModel, SIGNAL(rowsInserted( const QModelIndex &, int, int ))); - QSignalSpy modelResetSpy(currentModel, SIGNAL(modelReset())); - QSignalSpy modelLayoutChangedSpy(currentModel, SIGNAL(layoutChanged())); - - QVERIFY(columnsAboutToBeInsertedSpy.isValid()); - QVERIFY(rowsAboutToBeInsertedSpy.isValid()); - QVERIFY(columnsInsertedSpy.isValid()); - QVERIFY(rowsInsertedSpy.isValid()); - QVERIFY(modelResetSpy.isValid()); - QVERIFY(modelLayoutChangedSpy.isValid()); - - QFETCH(int, numberOfRowsAboutToBeInsertedSignals); - QFETCH(int, numberOfColumnsAboutToBeInsertedSignals); - QFETCH(int, numberOfRowsInsertedSignals); - QFETCH(int, numberOfColumnsInsertedSignals); - - // - // test insertRow() - // - connect(currentModel, SIGNAL(rowsAboutToBeInserted( const QModelIndex &, int , int )), - this, SLOT(slot_rowsAboutToInserted(const QModelIndex &))); - connect(currentModel, SIGNAL(rowsInserted( const QModelIndex &, int , int )), - this, SLOT(slot_rowsInserted(const QModelIndex &))); - int beforeInsertRowCount = currentModel->rowCount(parentOfInserted); - QCOMPARE(currentModel->insertRows(start, count, parentOfInserted), shouldSucceed); - currentModel->submit(); - - if (rowsAboutToBeInsertedSpy.count() > 0){ - QList arguments = rowsAboutToBeInsertedSpy.at(0); - QModelIndex parent = (qvariant_cast(arguments.at(0))); - int first = arguments.at(1).toInt(); - int last = arguments.at(2).toInt(); - QCOMPARE(first, start); - QCOMPARE(last, start + count - 1); - QVERIFY(parentOfInserted == parent); - } - - if (rowsInsertedSpy.count() > 0){ - QList arguments = rowsInsertedSpy.at(0); - QModelIndex parent = (qvariant_cast(arguments.at(0))); - int first = arguments.at(1).toInt(); - int last = arguments.at(2).toInt(); - QCOMPARE(first, start); - QCOMPARE(last, start + count - 1); - QVERIFY(parentOfInserted == parent); - } - - // Only the row signals should have been emitted - if (modelResetSpy.count() >= 1 || modelLayoutChangedSpy.count() >= 1) { - QCOMPARE(columnsAboutToBeInsertedSpy.count(), 0); - QCOMPARE(rowsAboutToBeInsertedSpy.count(), 0); - QCOMPARE(columnsInsertedSpy.count(), 0); - QCOMPARE(rowsInsertedSpy.count(), 0); - } - else { - QCOMPARE(columnsAboutToBeInsertedSpy.count(), 0); - QCOMPARE(rowsAboutToBeInsertedSpy.count(), numberOfRowsAboutToBeInsertedSignals); - QCOMPARE(columnsInsertedSpy.count(), 0); - QCOMPARE(rowsInsertedSpy.count(), numberOfRowsInsertedSignals); - } - // The row count should only change *after* rowsAboutToBeInserted has been emitted - if (shouldSucceed) { - if (modelResetSpy.count() == 0 && modelLayoutChangedSpy.count() == 0) { - QCOMPARE(afterAboutToInsertRowCount, beforeInsertRowCount); - QCOMPARE(afterInsertRowCount, beforeInsertRowCount+count+(numberOfRowsInsertedSignals-1)); - } - if (modelResetSpy.count() == 0) - QCOMPARE(currentModel->rowCount(parentOfInserted), beforeInsertRowCount+count+(numberOfRowsInsertedSignals-1)); - } - else { - if (recursive) - QCOMPARE(currentModel->rowCount(parentOfInserted), beforeInsertRowCount+1); - else - QCOMPARE(currentModel->rowCount(parentOfInserted), beforeInsertRowCount); - - } - disconnect(currentModel, SIGNAL(rowsAboutToBeInserted( const QModelIndex &, int , int )), - this, SLOT(slot_rowsAboutToInserted(const QModelIndex &))); - disconnect(currentModel, SIGNAL(rowsInserted( const QModelIndex &, int , int )), - this, SLOT(slot_rowsInserted(const QModelIndex &))); - modelResetSpy.clear(); - - // - // Test insertColumn() - // - connect(currentModel, SIGNAL(columnsAboutToBeInserted( const QModelIndex &, int , int )), - this, SLOT(slot_columnsAboutToInserted(const QModelIndex &))); - connect(currentModel, SIGNAL(columnsInserted( const QModelIndex &, int , int )), - this, SLOT(slot_columnsInserted(const QModelIndex &))); - int beforeInsertColumnCount = currentModel->columnCount(parentOfInserted); - - // Some models don't let you insert the column, only row - if (currentModel->insertColumns(start, count, parentOfInserted)) { - currentModel->submit(); - if (modelResetSpy.count() >= 1 || modelLayoutChangedSpy.count() >= 1) { - // Didn't reset the rows, so they should still be at the same value - QCOMPARE(columnsAboutToBeInsertedSpy.count(), 0); - //QCOMPARE(rowsAboutToBeInsertedSpy.count(), numberOfRowsAboutToBeInsertedSignals); - QCOMPARE(columnsInsertedSpy.count(), 0); - //QCOMPARE(rowsInsertedSpy.count(), numberOfRowsInsertedSignals); - } - else { - // Didn't reset the rows, so they should still be at the same value - QCOMPARE(columnsAboutToBeInsertedSpy.count(), numberOfColumnsAboutToBeInsertedSignals); - QCOMPARE(rowsAboutToBeInsertedSpy.count(), numberOfRowsAboutToBeInsertedSignals); - QCOMPARE(columnsInsertedSpy.count(), numberOfColumnsInsertedSignals); - QCOMPARE(rowsInsertedSpy.count(), numberOfRowsInsertedSignals); - } - // The column count should only change *after* rowsAboutToBeInserted has been emitted - if (shouldSucceed) { - if (modelResetSpy.count() == 0 && modelLayoutChangedSpy.count() == 0) { - QCOMPARE(afterAboutToInsertColumnCount, beforeInsertColumnCount); - QCOMPARE(afterInsertColumnCount, beforeInsertColumnCount+count+(numberOfColumnsInsertedSignals-1)); - } - if (modelResetSpy.count() == 0) - QCOMPARE(currentModel->columnCount(parentOfInserted), beforeInsertColumnCount+count+(numberOfColumnsInsertedSignals-1)); - } - else - QCOMPARE(currentModel->rowCount(parentOfInserted), beforeInsertRowCount); - } - disconnect(currentModel, SIGNAL(columnsAboutToBeInserted( const QModelIndex &, int , int )), - this, SLOT(slot_columnsAboutToInserted(const QModelIndex &))); - disconnect(currentModel, SIGNAL(columnsInserted( const QModelIndex &, int , int )), - this, SLOT(slot_columnsInserted(const QModelIndex &))); - - if (columnsAboutToBeInsertedSpy.count() > 0){ - QList arguments = columnsAboutToBeInsertedSpy.at(0); - QModelIndex parent = (qvariant_cast(arguments.at(0))); - int first = arguments.at(1).toInt(); - int last = arguments.at(2).toInt(); - QCOMPARE(first, start); - QCOMPARE(last, start + count - 1); - QVERIFY(parentOfInserted == parent); - } - - if (columnsInsertedSpy.count() > 0){ - QList arguments = columnsInsertedSpy.at(0); - QModelIndex parent = (qvariant_cast(arguments.at(0))); - int first = arguments.at(1).toInt(); - int last = arguments.at(2).toInt(); - QCOMPARE(first, start); - QCOMPARE(last, start + count - 1); - QVERIFY(parentOfInserted == parent); - } - - // Cleanup the test area because insert::() is called multiple times in a test - testModels->cleanupTestArea(currentModel); -} - -void tst_QItemModel::slot_rowsAboutToInserted(const QModelIndex &parent) -{ - QVERIFY(parentOfInserted == parent); - afterAboutToInsertRowCount = currentModel->rowCount(parent); - bool hasChildren = currentModel->hasChildren(parent); - bool hasDimensions = currentModel->columnCount(parent) > 0 && currentModel->rowCount(parent) > 0; - QCOMPARE(hasChildren, hasDimensions); - verifyState(currentModel); - - // This does happen - if (insertRecursively) { - QFETCH(int, recursiveRow); - QFETCH(int, recursiveCount); - insertRecursively = false; - QCOMPARE(currentModel->insertRows(recursiveRow, recursiveCount, parent), true); - } -} - -void tst_QItemModel::slot_rowsInserted(const QModelIndex &parent) -{ - QVERIFY(parentOfInserted == parent); - afterInsertRowCount = currentModel->rowCount(parent); - bool hasChildren = currentModel->hasChildren(parent); - bool hasDimensions = currentModel->columnCount(parent) > 0 && currentModel->rowCount(parent) > 0; - QCOMPARE(hasChildren, hasDimensions); - verifyState(currentModel); -} - -void tst_QItemModel::slot_columnsAboutToInserted(const QModelIndex &parent) -{ - QVERIFY(parentOfInserted == parent); - afterAboutToInsertColumnCount = currentModel->columnCount(parent); - bool hasChildren = currentModel->hasChildren(parent); - bool hasDimensions = currentModel->columnCount(parent) > 0 && currentModel->rowCount(parent) > 0; - QCOMPARE(hasChildren, hasDimensions); - verifyState(currentModel); -} - -void tst_QItemModel::slot_columnsInserted(const QModelIndex &parent) -{ - QVERIFY(parentOfInserted == parent); - afterInsertColumnCount = currentModel->columnCount(parent); - bool hasChildren = currentModel->hasChildren(parent); - bool hasDimensions = currentModel->columnCount(parent) > 0 && currentModel->rowCount(parent) > 0; - QCOMPARE(hasChildren, hasDimensions); - verifyState(currentModel); -} - -QTEST_MAIN(tst_QItemModel) -#include "tst_qitemmodel.moc" -- cgit v1.2.3 From 054a4aa7dddacbe31778c5c5e9ffc9d41f803353 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Thu, 15 Dec 2011 16:31:21 +0100 Subject: Add roles to the dataChanged slots in views. This is a source incompatible change. This is for consistency with the signal for the lifetime of Qt5. I could imagine people trying to override a virtual function (in a new class while using the Qt5 library) with the arguments of the signal and have that fail due to the arguments not being correct. It also allows ignoring dataChange events when they are known not to be for roles which are relevant to particular views or delegates. Change-Id: Ica191835125c1c8fdaf665debb62d635e81700dc Reviewed-by: David Faure Reviewed-by: Lars Knoll --- dist/changes-5.0.0 | 4 ++++ src/widgets/itemviews/qabstractitemview.cpp | 10 +++++----- src/widgets/itemviews/qabstractitemview.h | 2 +- src/widgets/itemviews/qheaderview.cpp | 2 +- src/widgets/itemviews/qheaderview.h | 2 +- src/widgets/itemviews/qlistview.cpp | 4 ++-- src/widgets/itemviews/qlistview.h | 2 +- src/widgets/itemviews/qtreeview.cpp | 4 ++-- src/widgets/itemviews/qtreeview.h | 2 +- 9 files changed, 18 insertions(+), 14 deletions(-) diff --git a/dist/changes-5.0.0 b/dist/changes-5.0.0 index 46f4478dbb..e567021aa2 100644 --- a/dist/changes-5.0.0 +++ b/dist/changes-5.0.0 @@ -175,6 +175,10 @@ QtCore * The default value of the property QSortFilterProxyModel::dynamicSortFilter was changed from false to true. +* The signature of the virtual QAbstractItemView::dataChanged method has changed to + include the roles which have changed. The signature is consistent with the dataChanged + signal in the model. + * QFileSystemWatcher is now able to return failure in case of errors whilst altering the watchlist in both the singular and QStringList overloads of addPath and removePath. diff --git a/src/widgets/itemviews/qabstractitemview.cpp b/src/widgets/itemviews/qabstractitemview.cpp index 38bd22dc24..8394e90ed1 100644 --- a/src/widgets/itemviews/qabstractitemview.cpp +++ b/src/widgets/itemviews/qabstractitemview.cpp @@ -673,8 +673,8 @@ void QAbstractItemView::setModel(QAbstractItemModel *model) if (d->model && d->model != QAbstractItemModelPrivate::staticEmptyModel()) { disconnect(d->model, SIGNAL(destroyed()), this, SLOT(_q_modelDestroyed())); - disconnect(d->model, SIGNAL(dataChanged(QModelIndex,QModelIndex)), - this, SLOT(dataChanged(QModelIndex,QModelIndex))); + disconnect(d->model, SIGNAL(dataChanged(QModelIndex,QModelIndex,QSet)), + this, SLOT(dataChanged(QModelIndex,QModelIndex,QSet))); disconnect(d->model, SIGNAL(headerDataChanged(Qt::Orientation,int,int)), this, SLOT(_q_headerDataChanged())); disconnect(d->model, SIGNAL(rowsInserted(QModelIndex,int,int)), @@ -713,8 +713,8 @@ void QAbstractItemView::setModel(QAbstractItemModel *model) if (d->model != QAbstractItemModelPrivate::staticEmptyModel()) { connect(d->model, SIGNAL(destroyed()), this, SLOT(_q_modelDestroyed())); - connect(d->model, SIGNAL(dataChanged(QModelIndex,QModelIndex)), - this, SLOT(dataChanged(QModelIndex,QModelIndex))); + connect(d->model, SIGNAL(dataChanged(QModelIndex,QModelIndex,QSet)), + this, SLOT(dataChanged(QModelIndex,QModelIndex,QSet))); connect(d->model, SIGNAL(headerDataChanged(Qt::Orientation,int,int)), this, SLOT(_q_headerDataChanged())); connect(d->model, SIGNAL(rowsInserted(QModelIndex,int,int)), @@ -3222,7 +3222,7 @@ void QAbstractItemView::update(const QModelIndex &index) inclusive. If just one item is changed \a topLeft == \a bottomRight. */ -void QAbstractItemView::dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight) +void QAbstractItemView::dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QSet &) { // Single item changed Q_D(QAbstractItemView); diff --git a/src/widgets/itemviews/qabstractitemview.h b/src/widgets/itemviews/qabstractitemview.h index 5258b7c4e5..5ab41bae23 100644 --- a/src/widgets/itemviews/qabstractitemview.h +++ b/src/widgets/itemviews/qabstractitemview.h @@ -241,7 +241,7 @@ public Q_SLOTS: void update(const QModelIndex &index); protected Q_SLOTS: - virtual void dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight); + virtual void dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QSet &roles = QSet()); virtual void rowsInserted(const QModelIndex &parent, int start, int end); virtual void rowsAboutToBeRemoved(const QModelIndex &parent, int start, int end); virtual void selectionChanged(const QItemSelection &selected, const QItemSelection &deselected); diff --git a/src/widgets/itemviews/qheaderview.cpp b/src/widgets/itemviews/qheaderview.cpp index bec39c4fa5..c9bc3423b0 100644 --- a/src/widgets/itemviews/qheaderview.cpp +++ b/src/widgets/itemviews/qheaderview.cpp @@ -2655,7 +2655,7 @@ void QHeaderView::scrollContentsBy(int dx, int dy) \reimp \internal */ -void QHeaderView::dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight) +void QHeaderView::dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QSet &) { Q_D(QHeaderView); d->invalidateCachedSizeHint(); diff --git a/src/widgets/itemviews/qheaderview.h b/src/widgets/itemviews/qheaderview.h index cd3b6e9d15..1ad79a96e1 100644 --- a/src/widgets/itemviews/qheaderview.h +++ b/src/widgets/itemviews/qheaderview.h @@ -211,7 +211,7 @@ protected: void updateGeometries(); void scrollContentsBy(int dx, int dy); - void dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight); + void dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QSet &roles = QSet()); void rowsInserted(const QModelIndex &parent, int start, int end); QRect visualRect(const QModelIndex &index) const; diff --git a/src/widgets/itemviews/qlistview.cpp b/src/widgets/itemviews/qlistview.cpp index 6a6d33fbc8..d0b5821c93 100644 --- a/src/widgets/itemviews/qlistview.cpp +++ b/src/widgets/itemviews/qlistview.cpp @@ -730,10 +730,10 @@ QSize QListView::contentsSize() const /*! \reimp */ -void QListView::dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight) +void QListView::dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QSet &roles) { d_func()->commonListView->dataChanged(topLeft, bottomRight); - QAbstractItemView::dataChanged(topLeft, bottomRight); + QAbstractItemView::dataChanged(topLeft, bottomRight, roles); } /*! diff --git a/src/widgets/itemviews/qlistview.h b/src/widgets/itemviews/qlistview.h index 163485fb1f..f78806fef1 100644 --- a/src/widgets/itemviews/qlistview.h +++ b/src/widgets/itemviews/qlistview.h @@ -147,7 +147,7 @@ protected: void resizeContents(int width, int height); QSize contentsSize() const; - void dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight); + void dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QSet &roles = QSet()); void rowsInserted(const QModelIndex &parent, int start, int end); void rowsAboutToBeRemoved(const QModelIndex &parent, int start, int end); diff --git a/src/widgets/itemviews/qtreeview.cpp b/src/widgets/itemviews/qtreeview.cpp index acff457de4..5da2185bd1 100644 --- a/src/widgets/itemviews/qtreeview.cpp +++ b/src/widgets/itemviews/qtreeview.cpp @@ -664,7 +664,7 @@ void QTreeView::setFirstColumnSpanned(int row, const QModelIndex &parent, bool s /*! \reimp */ -void QTreeView::dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight) +void QTreeView::dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QSet &roles) { Q_D(QTreeView); @@ -706,7 +706,7 @@ void QTreeView::dataChanged(const QModelIndex &topLeft, const QModelIndex &botto d->updateScrollBars(); d->viewport->update(); } - QAbstractItemView::dataChanged(topLeft, bottomRight); + QAbstractItemView::dataChanged(topLeft, bottomRight, roles); } /*! diff --git a/src/widgets/itemviews/qtreeview.h b/src/widgets/itemviews/qtreeview.h index baa3ebca4d..bc68fd413a 100644 --- a/src/widgets/itemviews/qtreeview.h +++ b/src/widgets/itemviews/qtreeview.h @@ -144,7 +144,7 @@ public: void sortByColumn(int column, Qt::SortOrder order); - void dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight); + void dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QSet &roles = QSet()); void selectAll(); Q_SIGNALS: -- cgit v1.2.3 From 1ff1288c04e8ae531ed3b405e4c2f826119160d5 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Fri, 6 Jan 2012 13:18:35 +0100 Subject: Make QUuid a class. Silence MSVC warnings about forward-declarations as class in the metatype system. Change-Id: I676662e5919585e98c87413fd8360d6f41f73631 Reviewed-by: Denis Dzyubenko --- qmake/generators/win32/msvc_vcproj.h | 2 +- src/corelib/plugin/quuid.h | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/qmake/generators/win32/msvc_vcproj.h b/qmake/generators/win32/msvc_vcproj.h index b58550743c..5bb6b2d85f 100644 --- a/qmake/generators/win32/msvc_vcproj.h +++ b/qmake/generators/win32/msvc_vcproj.h @@ -53,7 +53,7 @@ enum Target { StaticLib }; -struct QUuid; +class QUuid; class VcprojGenerator : public Win32MakefileGenerator { bool init_flag; diff --git a/src/corelib/plugin/quuid.h b/src/corelib/plugin/quuid.h index 85691d94c0..e7cc919ad5 100644 --- a/src/corelib/plugin/quuid.h +++ b/src/corelib/plugin/quuid.h @@ -64,8 +64,9 @@ QT_BEGIN_NAMESPACE QT_MODULE(Core) -struct Q_CORE_EXPORT QUuid +class Q_CORE_EXPORT QUuid { +public: enum Variant { VarUnknown =-1, NCS = 0, // 0 - - -- cgit v1.2.3 From 50e18de5161633802a88bd405b7c33cfcaaca3f7 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Tue, 3 Jan 2012 10:40:32 +0100 Subject: Windows: Run on Windows XP. Replace Q_ASSERT() on missing functions from User32.dll by qFatal() with error message. Do not check "UpdateLayeredWindowIndirect" as it was introduced with Windows Vista. Task-number: QTBUG-23351 Change-Id: I0064611351c687f0c3c6e13156dd534b9f7a5d75 Reviewed-by: Friedemann Kleint --- src/plugins/platforms/windows/qwindowscontext.cpp | 7 +++---- src/plugins/platforms/windows/qwindowscontext.h | 2 +- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/src/plugins/platforms/windows/qwindowscontext.cpp b/src/plugins/platforms/windows/qwindowscontext.cpp index 70d879e19f..3600c66114 100644 --- a/src/plugins/platforms/windows/qwindowscontext.cpp +++ b/src/plugins/platforms/windows/qwindowscontext.cpp @@ -164,11 +164,10 @@ void QWindowsUser32DLL::init() // MinGW (g++ 3.4.5) accepts only C casts. setLayeredWindowAttributes = (SetLayeredWindowAttributes)(library.resolve("SetLayeredWindowAttributes")); updateLayeredWindow = (UpdateLayeredWindow)(library.resolve("UpdateLayeredWindow")); - updateLayeredWindowIndirect = (UpdateLayeredWindowIndirect)(library.resolve("UpdateLayeredWindowIndirect")); - - Q_ASSERT(setLayeredWindowAttributes && updateLayeredWindow - && updateLayeredWindowIndirect); + if (!setLayeredWindowAttributes || !updateLayeredWindow) + qFatal("This version of Windows is not supported (User32.dll is missing the symbols 'SetLayeredWindowAttributes', 'UpdateLayeredWindow')."); + updateLayeredWindowIndirect = (UpdateLayeredWindowIndirect)(library.resolve("UpdateLayeredWindowIndirect")); isHungAppWindow = (IsHungAppWindow)library.resolve("IsHungAppWindow"); } diff --git a/src/plugins/platforms/windows/qwindowscontext.h b/src/plugins/platforms/windows/qwindowscontext.h index db57f7c097..9a8acbbb51 100644 --- a/src/plugins/platforms/windows/qwindowscontext.h +++ b/src/plugins/platforms/windows/qwindowscontext.h @@ -77,9 +77,9 @@ struct QWindowsUser32DLL // Functions missing in Q_CC_GNU stub libraries. SetLayeredWindowAttributes setLayeredWindowAttributes; UpdateLayeredWindow updateLayeredWindow; - UpdateLayeredWindowIndirect updateLayeredWindowIndirect; // Functions missing in older versions of Windows + UpdateLayeredWindowIndirect updateLayeredWindowIndirect; IsHungAppWindow isHungAppWindow; // Touch functions from Windows 7 onwards (also for use with Q_CC_MSVC). -- cgit v1.2.3 From c87bf2e8e63bed112456e8c5a501728fd093a4e6 Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Sun, 31 Jul 2011 17:20:09 -0300 Subject: Copy qbasicatomic.h to qoldbasicatomic.h Change-Id: I15df58f9dc29189419f8cbc0ce47bf11e9f17cf4 Reviewed-by: Bradley T. Hughes Reviewed-by: Thiago Macieira --- src/corelib/thread/qatomic.h | 2 +- src/corelib/thread/qbasicatomic.h | 175 ----------------------------------- src/corelib/thread/qoldbasicatomic.h | 175 +++++++++++++++++++++++++++++++++++ src/corelib/thread/thread.pri | 4 +- 4 files changed, 179 insertions(+), 177 deletions(-) delete mode 100644 src/corelib/thread/qbasicatomic.h create mode 100644 src/corelib/thread/qoldbasicatomic.h diff --git a/src/corelib/thread/qatomic.h b/src/corelib/thread/qatomic.h index 46026f3000..07350ecfcd 100644 --- a/src/corelib/thread/qatomic.h +++ b/src/corelib/thread/qatomic.h @@ -44,7 +44,7 @@ #ifndef QATOMIC_H #define QATOMIC_H -#include +#include QT_BEGIN_HEADER diff --git a/src/corelib/thread/qbasicatomic.h b/src/corelib/thread/qbasicatomic.h deleted file mode 100644 index 2f952c9e0a..0000000000 --- a/src/corelib/thread/qbasicatomic.h +++ /dev/null @@ -1,175 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtCore module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef QBASICATOMIC_H -#define QBASICATOMIC_H - -#include - -QT_BEGIN_HEADER - -QT_BEGIN_NAMESPACE - -QT_MODULE(Core) - -class Q_CORE_EXPORT QBasicAtomicInt -{ -public: -#ifdef QT_ARCH_PARISC - int _q_lock[4]; -#endif -#if defined(QT_ARCH_WINDOWS) || defined(QT_ARCH_WINDOWSCE) - union { // needed for Q_BASIC_ATOMIC_INITIALIZER - volatile long _q_value; - }; -#else - volatile int _q_value; -#endif - - // Atomic API, implemented in qatomic_XXX.h - - int load() const { return _q_value; } - int loadAcquire() { return _q_value; } - void store(int newValue) { _q_value = newValue; } - void storeRelease(int newValue) { _q_value = newValue; } - - static bool isReferenceCountingNative(); - static bool isReferenceCountingWaitFree(); - - bool ref(); - bool deref(); - - static bool isTestAndSetNative(); - static bool isTestAndSetWaitFree(); - - bool testAndSetRelaxed(int expectedValue, int newValue); - bool testAndSetAcquire(int expectedValue, int newValue); - bool testAndSetRelease(int expectedValue, int newValue); - bool testAndSetOrdered(int expectedValue, int newValue); - - static bool isFetchAndStoreNative(); - static bool isFetchAndStoreWaitFree(); - - int fetchAndStoreRelaxed(int newValue); - int fetchAndStoreAcquire(int newValue); - int fetchAndStoreRelease(int newValue); - int fetchAndStoreOrdered(int newValue); - - static bool isFetchAndAddNative(); - static bool isFetchAndAddWaitFree(); - - int fetchAndAddRelaxed(int valueToAdd); - int fetchAndAddAcquire(int valueToAdd); - int fetchAndAddRelease(int valueToAdd); - int fetchAndAddOrdered(int valueToAdd); -}; - -template -class QBasicAtomicPointer -{ -public: -#ifdef QT_ARCH_PARISC - int _q_lock[4]; -#endif -#if defined(QT_ARCH_WINDOWS) || defined(QT_ARCH_WINDOWSCE) - union { - T * volatile _q_value; -# if !defined(Q_OS_WINCE) && !defined(__i386__) && !defined(_M_IX86) - qint64 -# else - long -# endif - volatile _q_value_integral; - }; -#else - T * volatile _q_value; -#endif - - // Atomic API, implemented in qatomic_XXX.h - - T *load() const { return _q_value; } - T *loadAcquire() { return _q_value; } - void store(T *newValue) { _q_value = newValue; } - void storeRelease(T *newValue) { _q_value = newValue; } - - static bool isTestAndSetNative(); - static bool isTestAndSetWaitFree(); - - bool testAndSetRelaxed(T *expectedValue, T *newValue); - bool testAndSetAcquire(T *expectedValue, T *newValue); - bool testAndSetRelease(T *expectedValue, T *newValue); - bool testAndSetOrdered(T *expectedValue, T *newValue); - - static bool isFetchAndStoreNative(); - static bool isFetchAndStoreWaitFree(); - - T *fetchAndStoreRelaxed(T *newValue); - T *fetchAndStoreAcquire(T *newValue); - T *fetchAndStoreRelease(T *newValue); - T *fetchAndStoreOrdered(T *newValue); - - static bool isFetchAndAddNative(); - static bool isFetchAndAddWaitFree(); - - T *fetchAndAddRelaxed(qptrdiff valueToAdd); - T *fetchAndAddAcquire(qptrdiff valueToAdd); - T *fetchAndAddRelease(qptrdiff valueToAdd); - T *fetchAndAddOrdered(qptrdiff valueToAdd); -}; - -#ifdef QT_ARCH_PARISC -# define Q_BASIC_ATOMIC_INITIALIZER(a) {{-1,-1,-1,-1},(a)} -#elif defined(QT_ARCH_WINDOWS) || defined(QT_ARCH_WINDOWSCE) -# define Q_BASIC_ATOMIC_INITIALIZER(a) { {(a)} } -#else -# define Q_BASIC_ATOMIC_INITIALIZER(a) { (a) } -#endif - -QT_END_NAMESPACE -QT_END_HEADER - -#if defined(QT_MOC) || defined(QT_BUILD_QMAKE) || defined(QT_RCC) || defined(QT_UIC) || defined(QT_BOOTSTRAPPED) -# include -#else -# include -#endif - -#endif // QBASIC_ATOMIC diff --git a/src/corelib/thread/qoldbasicatomic.h b/src/corelib/thread/qoldbasicatomic.h new file mode 100644 index 0000000000..2f952c9e0a --- /dev/null +++ b/src/corelib/thread/qoldbasicatomic.h @@ -0,0 +1,175 @@ +/**************************************************************************** +** +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtCore module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBASICATOMIC_H +#define QBASICATOMIC_H + +#include + +QT_BEGIN_HEADER + +QT_BEGIN_NAMESPACE + +QT_MODULE(Core) + +class Q_CORE_EXPORT QBasicAtomicInt +{ +public: +#ifdef QT_ARCH_PARISC + int _q_lock[4]; +#endif +#if defined(QT_ARCH_WINDOWS) || defined(QT_ARCH_WINDOWSCE) + union { // needed for Q_BASIC_ATOMIC_INITIALIZER + volatile long _q_value; + }; +#else + volatile int _q_value; +#endif + + // Atomic API, implemented in qatomic_XXX.h + + int load() const { return _q_value; } + int loadAcquire() { return _q_value; } + void store(int newValue) { _q_value = newValue; } + void storeRelease(int newValue) { _q_value = newValue; } + + static bool isReferenceCountingNative(); + static bool isReferenceCountingWaitFree(); + + bool ref(); + bool deref(); + + static bool isTestAndSetNative(); + static bool isTestAndSetWaitFree(); + + bool testAndSetRelaxed(int expectedValue, int newValue); + bool testAndSetAcquire(int expectedValue, int newValue); + bool testAndSetRelease(int expectedValue, int newValue); + bool testAndSetOrdered(int expectedValue, int newValue); + + static bool isFetchAndStoreNative(); + static bool isFetchAndStoreWaitFree(); + + int fetchAndStoreRelaxed(int newValue); + int fetchAndStoreAcquire(int newValue); + int fetchAndStoreRelease(int newValue); + int fetchAndStoreOrdered(int newValue); + + static bool isFetchAndAddNative(); + static bool isFetchAndAddWaitFree(); + + int fetchAndAddRelaxed(int valueToAdd); + int fetchAndAddAcquire(int valueToAdd); + int fetchAndAddRelease(int valueToAdd); + int fetchAndAddOrdered(int valueToAdd); +}; + +template +class QBasicAtomicPointer +{ +public: +#ifdef QT_ARCH_PARISC + int _q_lock[4]; +#endif +#if defined(QT_ARCH_WINDOWS) || defined(QT_ARCH_WINDOWSCE) + union { + T * volatile _q_value; +# if !defined(Q_OS_WINCE) && !defined(__i386__) && !defined(_M_IX86) + qint64 +# else + long +# endif + volatile _q_value_integral; + }; +#else + T * volatile _q_value; +#endif + + // Atomic API, implemented in qatomic_XXX.h + + T *load() const { return _q_value; } + T *loadAcquire() { return _q_value; } + void store(T *newValue) { _q_value = newValue; } + void storeRelease(T *newValue) { _q_value = newValue; } + + static bool isTestAndSetNative(); + static bool isTestAndSetWaitFree(); + + bool testAndSetRelaxed(T *expectedValue, T *newValue); + bool testAndSetAcquire(T *expectedValue, T *newValue); + bool testAndSetRelease(T *expectedValue, T *newValue); + bool testAndSetOrdered(T *expectedValue, T *newValue); + + static bool isFetchAndStoreNative(); + static bool isFetchAndStoreWaitFree(); + + T *fetchAndStoreRelaxed(T *newValue); + T *fetchAndStoreAcquire(T *newValue); + T *fetchAndStoreRelease(T *newValue); + T *fetchAndStoreOrdered(T *newValue); + + static bool isFetchAndAddNative(); + static bool isFetchAndAddWaitFree(); + + T *fetchAndAddRelaxed(qptrdiff valueToAdd); + T *fetchAndAddAcquire(qptrdiff valueToAdd); + T *fetchAndAddRelease(qptrdiff valueToAdd); + T *fetchAndAddOrdered(qptrdiff valueToAdd); +}; + +#ifdef QT_ARCH_PARISC +# define Q_BASIC_ATOMIC_INITIALIZER(a) {{-1,-1,-1,-1},(a)} +#elif defined(QT_ARCH_WINDOWS) || defined(QT_ARCH_WINDOWSCE) +# define Q_BASIC_ATOMIC_INITIALIZER(a) { {(a)} } +#else +# define Q_BASIC_ATOMIC_INITIALIZER(a) { (a) } +#endif + +QT_END_NAMESPACE +QT_END_HEADER + +#if defined(QT_MOC) || defined(QT_BUILD_QMAKE) || defined(QT_RCC) || defined(QT_UIC) || defined(QT_BOOTSTRAPPED) +# include +#else +# include +#endif + +#endif // QBASIC_ATOMIC diff --git a/src/corelib/thread/thread.pri b/src/corelib/thread/thread.pri index d63bb914e1..974e086684 100644 --- a/src/corelib/thread/thread.pri +++ b/src/corelib/thread/thread.pri @@ -7,7 +7,8 @@ HEADERS += thread/qmutex.h \ thread/qthread.h \ thread/qthreadstorage.h \ thread/qwaitcondition.h \ - thread/qatomic.h + thread/qatomic.h \ + thread/qoldbasicatomic.h # private headers HEADERS += thread/qmutex_p.h \ @@ -40,3 +41,4 @@ unix: { else:linux-* { SOURCES += thread/qmutex_linux.cpp } else { SOURCES += thread/qmutex_unix.cpp } } + -- cgit v1.2.3 From ca5072fb185a75e2c9ef25fd19a56cbe41128b0a Mon Sep 17 00:00:00 2001 From: Shane Kearns Date: Fri, 6 Jan 2012 16:29:43 +0000 Subject: Fix renewed SSL certificates being incorrectly reported as expired OpenSSL tries certificates in the order they are added to the store. There was logic to add the expired certificates after the valid ones to ensure the valid certificate is checked first if the OS cert store contains both the expired and renewed version of the same cert (e.g. the verisign class 3 cert on windows) However due to a coding error, the ordering was reversed, ensuring the problem is always encountered instead of always avoided. Task-number: QTBUG-20012 Change-Id: I7c8dba8a09842540a22b44d33c7dcb22bbbc6a58 Reviewed-by: Thiago Macieira Reviewed-by: Richard J. Moore --- src/network/ssl/qsslsocket_openssl.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/network/ssl/qsslsocket_openssl.cpp b/src/network/ssl/qsslsocket_openssl.cpp index f22d0bd2e5..ab40f15cde 100644 --- a/src/network/ssl/qsslsocket_openssl.cpp +++ b/src/network/ssl/qsslsocket_openssl.cpp @@ -343,7 +343,7 @@ init_context: foreach (const QSslCertificate &caCertificate, q->caCertificates()) { // add expired certs later, so that the // valid ones are used before the expired ones - if (caCertificate.expiryDate() > QDateTime::currentDateTime()) { + if (caCertificate.expiryDate() < QDateTime::currentDateTime()) { expiredCerts.append(caCertificate); } else { q_X509_STORE_add_cert(ctx->cert_store, reinterpret_cast(caCertificate.handle())); @@ -1354,7 +1354,7 @@ QList QSslSocketBackendPrivate::verify(QList certifi foreach (const QSslCertificate &caCertificate, QSslSocket::defaultCaCertificates()) { // add expired certs later, so that the // valid ones are used before the expired ones - if (caCertificate.expiryDate() > QDateTime::currentDateTime()) { + if (caCertificate.expiryDate() < QDateTime::currentDateTime()) { expiredCerts.append(caCertificate); } else { q_X509_STORE_add_cert(certStore, reinterpret_cast(caCertificate.handle())); -- cgit v1.2.3 From 7dca461620ee6d8cce3a74acf2e1530d4497bff9 Mon Sep 17 00:00:00 2001 From: Jan-Arve Saether Date: Thu, 5 Jan 2012 09:51:20 +0100 Subject: Remove all references to QAccessible:: {Child|Ancestor|Sibling} These are deprecated in favor of QAccessibleInterface::child() and QAccessibleInterface::parent() QAccessible::Sibling can be done with a combination of those two. This is handled by the bridges, if required. Change-Id: I2e2a6eb2a982e7c9001a393d69f0c5f1ae9c0970 Reviewed-by: Frederik Gladhorn --- src/gui/accessible/qaccessible.h | 5 - src/gui/accessible/qaccessibleobject.cpp | 3 - src/plugins/accessible/widgets/complexwidgets.cpp | 32 +--- src/plugins/accessible/widgets/complexwidgets.h | 1 - src/plugins/accessible/widgets/itemviews.cpp | 128 ++++--------- src/plugins/accessible/widgets/itemviews.h | 11 +- src/plugins/accessible/widgets/qaccessiblemenu.cpp | 47 ----- src/plugins/accessible/widgets/qaccessiblemenu.h | 3 - .../accessible/widgets/qaccessiblewidgets.cpp | 66 +++---- .../accessible/widgets/qaccessiblewidgets.h | 4 +- src/plugins/accessible/widgets/simplewidgets.cpp | 5 +- .../platforms/windows/qwindowsaccessibility.cpp | 116 +++++++++--- src/widgets/accessible/qaccessiblewidget.cpp | 134 -------------- .../other/qaccessibility/tst_qaccessibility.cpp | 198 ++++----------------- 14 files changed, 208 insertions(+), 545 deletions(-) diff --git a/src/gui/accessible/qaccessible.h b/src/gui/accessible/qaccessible.h index 37071bcdaf..949c67c4ca 100644 --- a/src/gui/accessible/qaccessible.h +++ b/src/gui/accessible/qaccessible.h @@ -274,11 +274,6 @@ public: enum RelationFlag { Unrelated = 0x00000000, Self = 0x00000001, - Ancestor = 0x00000002, - Child = 0x00000004, - Descendent = 0x00000008, - Sibling = 0x00000010, - HierarchyMask = 0x000000ff, Up = 0x00000100, Down = 0x00000200, diff --git a/src/gui/accessible/qaccessibleobject.cpp b/src/gui/accessible/qaccessibleobject.cpp index af86ad47c2..5ba3cd1281 100644 --- a/src/gui/accessible/qaccessibleobject.cpp +++ b/src/gui/accessible/qaccessibleobject.cpp @@ -272,9 +272,6 @@ int QAccessibleApplication::navigate(QAccessible::RelationFlag relation, int, return 0; } break; - case QAccessible::Ancestor: - *target = parent(); - return 0; default: break; } diff --git a/src/plugins/accessible/widgets/complexwidgets.cpp b/src/plugins/accessible/widgets/complexwidgets.cpp index b1ff87132f..f09c942170 100644 --- a/src/plugins/accessible/widgets/complexwidgets.cpp +++ b/src/plugins/accessible/widgets/complexwidgets.cpp @@ -124,17 +124,11 @@ public: QAccessibleInterface *child(int) const { return 0; } int navigate(QAccessible::RelationFlag relation, int index, QAccessibleInterface **iface) const { - if (relation == QAccessible::Ancestor && index == 1) { - *iface = parent(); - return 0; - } + Q_UNUSED(relation); + Q_UNUSED(index); + Q_UNUSED(iface); return -1; } - QAccessible::Relation relationTo(const QAccessibleInterface *) const - { - return QAccessible::Unrelated; - } - // action interface QStringList actionNames() const { @@ -172,18 +166,6 @@ QTabBar *QAccessibleTabBar::tabBar() const return qobject_cast(object()); } -int QAccessibleTabBar::navigate(QAccessible::RelationFlag rel, int entry, QAccessibleInterface **target) const -{ - if (rel == QAccessible::Child) { - *target = child(entry - 1); - if (*target) { - return 0; - } - return -1; - } - return QAccessibleWidget::navigate(rel, entry, target); -} - QAccessibleInterface* QAccessibleTabBar::child(int index) const { // first the tabs, then 2 buttons @@ -443,8 +425,7 @@ int QAccessibleAbstractScrollArea::navigate(QAccessible::RelationFlag relation, QWidget *targetWidget = 0; QWidget *entryWidget = 0; - if (relation == QAccessible::Child || - relation == QAccessible::Left || relation == QAccessible::Up || relation == QAccessible::Right || relation == QAccessible::Down) { + if (relation == QAccessible::Left || relation == QAccessible::Up || relation == QAccessible::Right || relation == QAccessible::Down) { QWidgetList children = accessibleChildren(); if (entry < 0 || entry > children.count()) return -1; @@ -460,11 +441,6 @@ int QAccessibleAbstractScrollArea::navigate(QAccessible::RelationFlag relation, // It might be possible to make it more general, but I'll leave that as an exercise // to the reader. :-) switch (relation) { - case QAccessible::Child: - if (entry > 0) { - *target = child(entry - 1); - return *target ? 0 : -1; - } case QAccessible::Left: if (entry < 1) break; diff --git a/src/plugins/accessible/widgets/complexwidgets.h b/src/plugins/accessible/widgets/complexwidgets.h index 66dbdcfab8..24c033bda3 100644 --- a/src/plugins/accessible/widgets/complexwidgets.h +++ b/src/plugins/accessible/widgets/complexwidgets.h @@ -112,7 +112,6 @@ public: QAccessibleInterface* child(int index) const; int indexOfChild(const QAccessibleInterface *child) const; - int navigate(QAccessible::RelationFlag rel, int entry, QAccessibleInterface **target) const; protected: QTabBar *tabBar() const; diff --git a/src/plugins/accessible/widgets/itemviews.cpp b/src/plugins/accessible/widgets/itemviews.cpp index f6d719ae3a..a12036b52d 100644 --- a/src/plugins/accessible/widgets/itemviews.cpp +++ b/src/plugins/accessible/widgets/itemviews.cpp @@ -444,23 +444,9 @@ QAccessibleInterface *QAccessibleTable::child(int index) const int QAccessibleTable::navigate(QAccessible::RelationFlag relation, int index, QAccessibleInterface **iface) const { + Q_UNUSED(relation); + Q_UNUSED(index); *iface = 0; - switch (relation) { - case QAccessible::Ancestor: { - *iface = parent(); - return *iface ? 0 : -1; - } - case QAccessible::Child: { - Q_ASSERT(index > 0); - *iface = child(index - 1); - if (*iface) { - return 0; - } - break; - } - default: - break; - } return -1; } @@ -518,6 +504,29 @@ int QAccessibleTree::childCount() const return (treeView->d_func()->viewItems.count() + hHeader)* view->model()->columnCount(); } + +QAccessibleInterface *QAccessibleTree::child(int index) const +{ + Q_ASSERT(index >= 0); + int hHeader = horizontalHeader() ? 1 : 0; + + if (hHeader) { + if (index < view->model()->columnCount()) { + return new QAccessibleTableHeaderCell(view, index, Qt::Horizontal); + } else { + index -= view->model()->columnCount(); + } + } + + int row = index / view->model()->columnCount(); + int column = index % view->model()->columnCount(); + QModelIndex modelIndex = indexFromLogical(row, column); + if (modelIndex.isValid()) { + return cell(modelIndex); + } + return 0; +} + int QAccessibleTree::rowCount() const { const QTreeView *treeView = qobject_cast(view); @@ -550,38 +559,6 @@ int QAccessibleTree::indexOfChild(const QAccessibleInterface *iface) const return -1; } -int QAccessibleTree::navigate(QAccessible::RelationFlag relation, int index, QAccessibleInterface **iface) const -{ - switch (relation) { - case QAccessible::Child: { - Q_ASSERT(index > 0); - --index; - int hHeader = horizontalHeader() ? 1 : 0; - - if (hHeader) { - if (index < view->model()->columnCount()) { - *iface = new QAccessibleTableHeaderCell(view, index, Qt::Horizontal); - return 0; - } else { - index -= view->model()->columnCount(); - } - } - - int row = index / view->model()->columnCount(); - int column = index % view->model()->columnCount(); - QModelIndex modelIndex = indexFromLogical(row, column); - if (modelIndex.isValid()) { - *iface = cell(modelIndex); - return 0; - } - return -1; - } - default: - break; - } - return QAccessibleTable::navigate(relation, index, iface); -} - QAccessible::Relation QAccessibleTree::relationTo(const QAccessibleInterface *) const { return QAccessible::Unrelated; @@ -815,29 +792,10 @@ QAccessibleInterface *QAccessibleTableCell::child(int) const int QAccessibleTableCell::navigate(QAccessible::RelationFlag relation, int index, QAccessibleInterface **iface) const { - if (relation == QAccessible::Ancestor && index == 1) { - *iface = parent(); - return 0; - } - - *iface = 0; - if (!view) - return -1; - - switch (relation) { - - case QAccessible::Child: { - return -1; - } - case QAccessible::Sibling: - if (index > 0) { - QAccessibleInterface *parent = QAccessible::queryAccessibleInterface(view); - *iface = parent->child(index - 1); - delete parent; - return *iface ? 0 : -1; - } - return -1; + Q_UNUSED(index); + Q_UNUSED(relation); +// switch (relation) { // From table1 implementation: // case Up: // case Down: @@ -862,28 +820,11 @@ int QAccessibleTableCell::navigate(QAccessible::RelationFlag relation, int index // if (idx.parent() != row.parent() || idx.row() != row.row()) // *iface = cell(idx); // return index ? kids.indexOf(idx) + 1 : 0; } - default: - break; - } - +// } + *iface = 0; return -1; } -QAccessible::Relation QAccessibleTableCell::relationTo(const QAccessibleInterface *other) const -{ - // we only check for parent-child relationships in trees - if (m_role == QAccessible::TreeItem && other->role() == QAccessible::TreeItem) { - QModelIndex otherIndex = static_cast(other)->m_index; - // is the other our parent? - if (otherIndex.parent() == m_index) - return QAccessible::Ancestor; - // are we the other's child? - if (m_index.parent() == otherIndex) - return QAccessible::Child; - } - return QAccessible::Unrelated; -} - QAccessibleTableHeaderCell::QAccessibleTableHeaderCell(QAbstractItemView *view_, int index_, Qt::Orientation orientation_) : view(view_), index(index_), orientation(orientation_) { @@ -976,11 +917,10 @@ QAccessibleInterface *QAccessibleTableHeaderCell::child(int) const int QAccessibleTableHeaderCell::navigate(QAccessible::RelationFlag relation, int index, QAccessibleInterface **iface) const { - if (relation == QAccessible::Ancestor && index == 1) { - *iface = parent(); - return *iface ? 0 : -1; - } - *iface = 0; + Q_UNUSED(relation); + Q_UNUSED(index); + Q_UNUSED(iface); + return -1; } diff --git a/src/plugins/accessible/widgets/itemviews.h b/src/plugins/accessible/widgets/itemviews.h index 6fe6138d6b..3a2f5a8cb1 100644 --- a/src/plugins/accessible/widgets/itemviews.h +++ b/src/plugins/accessible/widgets/itemviews.h @@ -155,11 +155,12 @@ public: QAccessibleInterface *childAt(int x, int y) const; int childCount() const; + QAccessibleInterface *child(int index) const; + int indexOfChild(const QAccessibleInterface *) const; int rowCount() const; - int navigate(QAccessible::RelationFlag relation, int index, QAccessibleInterface **iface) const; QAccessible::Relation relationTo(const QAccessibleInterface *other) const; // table interface @@ -194,7 +195,6 @@ public: QAccessibleInterface *parent() const; QAccessibleInterface *child(int) const; int navigate(QAccessible::RelationFlag relation, int m_index, QAccessibleInterface **iface) const; - QAccessible::Relation relationTo(const QAccessibleInterface *other) const; // cell interface virtual int columnExtent() const; @@ -283,12 +283,11 @@ public: } int navigate(QAccessible::RelationFlag relation, int, QAccessibleInterface **iface) const { - if (relation == QAccessible::Ancestor) { - *iface = parent(); - return *iface ? 0 : -1; - } + Q_UNUSED(relation); + Q_UNUSED(iface); return -1; } + QAccessible::Relation relationTo(const QAccessibleInterface *) const { return QAccessible::Unrelated; diff --git a/src/plugins/accessible/widgets/qaccessiblemenu.cpp b/src/plugins/accessible/widgets/qaccessiblemenu.cpp index 8204621c13..d3a7fe0fe6 100644 --- a/src/plugins/accessible/widgets/qaccessiblemenu.cpp +++ b/src/plugins/accessible/widgets/qaccessiblemenu.cpp @@ -111,21 +111,6 @@ QAccessibleInterface *QAccessibleMenu::parent() const return QAccessibleWidget::parent(); } -int QAccessibleMenu::navigate(QAccessible::RelationFlag relation, int entry, QAccessibleInterface **target) const -{ - Q_ASSERT(entry >= 0); - switch (relation) { - case QAccessible::Child: - *target = child(entry - 1); - return *target ? 0 : -1; - case QAccessible::Ancestor: - *target = parent(); - return *target ? 0 : -1; - default: - return QAccessibleWidget::navigate(relation, entry, target); - } -} - int QAccessibleMenu::indexOfChild( const QAccessibleInterface *child) const { int index = -1; @@ -162,15 +147,6 @@ QAccessibleInterface *QAccessibleMenuBar::child(int index) const return 0; } -int QAccessibleMenuBar::navigate(QAccessible::RelationFlag relation, int entry, QAccessibleInterface **target) const -{ - if (relation == QAccessible::Child) { - *target = child(entry - 1); - return *target ? 0 : -1; - } - return QAccessibleWidget::navigate(relation, entry, target); -} - int QAccessibleMenuBar::indexOfChild(const QAccessibleInterface *child) const { int index = -1; @@ -244,12 +220,6 @@ int QAccessibleMenuItem::navigate(QAccessible::RelationFlag relation, int entry, } switch (relation) { - case QAccessible::Child: - *target = child(entry - 1); - break; - case QAccessible::Ancestor: - *target = parent(); - break; case QAccessible::Up: case QAccessible::Down:{ QAccessibleInterface *parentIface = parent(); @@ -263,13 +233,6 @@ int QAccessibleMenuItem::navigate(QAccessible::RelationFlag relation, int entry, delete parentIface; break; } - case QAccessible::Sibling: { - QAccessibleInterface *parentIface = parent(); - if (parentIface) - *target = parentIface->child(entry - 1); - delete parentIface; - break; - } default: break; @@ -308,16 +271,6 @@ QRect QAccessibleMenuItem::rect() const return rect; } -QAccessible::Relation QAccessibleMenuItem::relationTo(const QAccessibleInterface *other) const -{ - if (other->object() == owner()) { - return QAccessible::Child; - } - Q_UNUSED(other) - // ### - return QAccessible::Unrelated; -} - QAccessible::Role QAccessibleMenuItem::role() const { return m_action->isSeparator() ? QAccessible::Separator : QAccessible::MenuItem; diff --git a/src/plugins/accessible/widgets/qaccessiblemenu.h b/src/plugins/accessible/widgets/qaccessiblemenu.h index d44c02b753..873aacd5d4 100644 --- a/src/plugins/accessible/widgets/qaccessiblemenu.h +++ b/src/plugins/accessible/widgets/qaccessiblemenu.h @@ -65,7 +65,6 @@ public: QAccessible::Role role() const; QAccessibleInterface *child(int index) const; QAccessibleInterface *parent() const; - int navigate(QAccessible::RelationFlag relation, int entry, QAccessibleInterface **target) const; int indexOfChild( const QAccessibleInterface *child ) const; protected: @@ -81,7 +80,6 @@ public: QAccessibleInterface *child(int index) const; int childCount() const; - int navigate(QAccessible::RelationFlag relation, int entry, QAccessibleInterface **target) const; int indexOfChild(const QAccessibleInterface *child) const; protected: @@ -108,7 +106,6 @@ public: int navigate(QAccessible::RelationFlag relation, int entry, QAccessibleInterface ** target) const; QObject * object() const; QRect rect() const; - QAccessible::Relation relationTo(const QAccessibleInterface *other) const; QAccessible::Role role() const; void setText(QAccessible::Text t, const QString & text); QAccessible::State state() const; diff --git a/src/plugins/accessible/widgets/qaccessiblewidgets.cpp b/src/plugins/accessible/widgets/qaccessiblewidgets.cpp index 17031fe272..182a85dfc7 100644 --- a/src/plugins/accessible/widgets/qaccessiblewidgets.cpp +++ b/src/plugins/accessible/widgets/qaccessiblewidgets.cpp @@ -698,6 +698,7 @@ QAccessibleStackedWidget::QAccessibleStackedWidget(QWidget *widget) QVariant QAccessibleStackedWidget::invokeMethod(QAccessible::Method, const QVariantList ¶ms) { + Q_UNUSED(params); return QVariant(); } @@ -739,17 +740,6 @@ QAccessibleInterface *QAccessibleStackedWidget::child(int index) const return QAccessible::queryAccessibleInterface(stackedWidget()->widget(index)); } -int QAccessibleStackedWidget::navigate(QAccessible::RelationFlag relation, int entry, QAccessibleInterface **target) const -{ - switch (relation) { - case QAccessible::Child: - *target = child(entry - 1); - return *target ? 0 : -1; - default: - return QAccessibleWidget::navigate(relation, entry, target); - } -} - QStackedWidget *QAccessibleStackedWidget::stackedWidget() const { return static_cast(object()); @@ -783,6 +773,16 @@ int QAccessibleMdiArea::childCount() const return mdiArea()->subWindowList().count(); } +QAccessibleInterface *QAccessibleMdiArea::child(int index) const +{ + QList subWindows = mdiArea()->subWindowList(); + QWidget *targetObject = subWindows.value(index); + if (!targetObject) + return 0; + return QAccessible::queryAccessibleInterface(targetObject); +} + + int QAccessibleMdiArea::indexOfChild(const QAccessibleInterface *child) const { if (!child || !child->object() || mdiArea()->subWindowList().isEmpty()) @@ -799,13 +799,7 @@ int QAccessibleMdiArea::navigate(QAccessible::RelationFlag relation, int entry, { *target = 0; QWidget *targetObject = 0; - QList subWindows = mdiArea()->subWindowList(); switch (relation) { - case QAccessible::Child: - if (entry < 1 || subWindows.isEmpty() || entry > subWindows.count()) - return -1; - targetObject = subWindows.at(entry - 1); - break; case QAccessible::Up: case QAccessible::Down: case QAccessible::Left: @@ -873,6 +867,15 @@ int QAccessibleMdiSubWindow::childCount() const return 0; } +QAccessibleInterface *QAccessibleMdiSubWindow::child(int index) const +{ + QMdiSubWindow *source = mdiSubWindow(); + if (index != 0 || !source->widget()) + return 0; + + return QAccessible::queryAccessibleInterface(source->widget()); +} + int QAccessibleMdiSubWindow::indexOfChild(const QAccessibleInterface *child) const { if (child && child->object() && child->object() == mdiSubWindow()->widget()) @@ -890,11 +893,6 @@ int QAccessibleMdiSubWindow::navigate(QAccessible::RelationFlag relation, int en QWidget *targetObject = 0; QMdiSubWindow *source = mdiSubWindow(); switch (relation) { - case QAccessible::Child: - if (entry != 1 || !source->widget()) - return -1; - targetObject = source->widget(); - break; case QAccessible::Up: case QAccessible::Down: case QAccessible::Left: @@ -952,6 +950,15 @@ int QAccessibleWorkspace::childCount() const return workspace()->windowList().count(); } +QAccessibleInterface *QAccessibleWorkspace::child(int index) const +{ + QWidgetList subWindows = workspace()->windowList(); + if (index < 0 || subWindows.isEmpty() || index >= subWindows.count()) + return 0; + QObject *targetObject = subWindows.at(index); + return QAccessible::queryAccessibleInterface(targetObject); +} + int QAccessibleWorkspace::indexOfChild(const QAccessibleInterface *child) const { if (!child || !child->object() || workspace()->windowList().isEmpty()) @@ -968,13 +975,7 @@ int QAccessibleWorkspace::navigate(QAccessible::RelationFlag relation, int entry { *target = 0; QWidget *targetObject = 0; - QWidgetList subWindows = workspace()->windowList(); switch (relation) { - case QAccessible::Child: - if (entry < 1 || subWindows.isEmpty() || entry > subWindows.count()) - return -1; - targetObject = subWindows.at(entry - 1); - break; case QAccessible::Up: case QAccessible::Down: case QAccessible::Left: @@ -1066,9 +1067,6 @@ int QAccessibleCalendarWidget::navigate(QAccessible::RelationFlag relation, int return QAccessibleWidget::navigate(relation, entry, target); QWidget *targetWidget = 0; switch (relation) { - case QAccessible::Child: - *target = child(entry - 1); - return *target ? 0 : -1; case QAccessible::Up: if (entry == 2) targetWidget = navigationBar(); @@ -1201,9 +1199,6 @@ QAccessibleInterface *QAccessibleTitleBar::child(int index) const int QAccessibleTitleBar::navigate(QAccessible::RelationFlag relation, int entry, QAccessibleInterface **iface) const { switch (relation) { - case QAccessible::Child: - *iface = child(entry - 1); - return *iface ? 0 : -1; case QAccessible::FocusChild: // ### if (entry >= 1) { @@ -1222,9 +1217,6 @@ int QAccessibleTitleBar::navigate(QAccessible::RelationFlag relation, int entry, return role > QDockWidgetLayout::FloatButton ? -1 : index; } break; - case QAccessible::Ancestor: - *iface = parent(); - return iface ? 0 : -1; default: break; } diff --git a/src/plugins/accessible/widgets/qaccessiblewidgets.h b/src/plugins/accessible/widgets/qaccessiblewidgets.h index 44fdcc7a19..e60ed06b59 100644 --- a/src/plugins/accessible/widgets/qaccessiblewidgets.h +++ b/src/plugins/accessible/widgets/qaccessiblewidgets.h @@ -125,7 +125,6 @@ public: int childCount() const; int indexOfChild(const QAccessibleInterface *child) const; QAccessibleInterface *child(int index) const; - int navigate(QAccessible::RelationFlag relation, int entry, QAccessibleInterface **target) const; protected: QStackedWidget *stackedWidget() const; @@ -153,6 +152,7 @@ public: explicit QAccessibleMdiArea(QWidget *widget); int childCount() const; + QAccessibleInterface *child(int index) const; int indexOfChild(const QAccessibleInterface *child) const; int navigate(QAccessible::RelationFlag relation, int entry, QAccessibleInterface **target) const; @@ -169,6 +169,7 @@ public: void setText(QAccessible::Text textType, const QString &text); QAccessible::State state() const; int childCount() const; + QAccessibleInterface *child(int index) const; int indexOfChild(const QAccessibleInterface *child) const; int navigate(QAccessible::RelationFlag relation, int entry, QAccessibleInterface **target) const; QRect rect() const; @@ -185,6 +186,7 @@ public: explicit QAccessibleWorkspace(QWidget *widget); int childCount() const; + QAccessibleInterface *child(int index) const; int indexOfChild(const QAccessibleInterface *child) const; int navigate(QAccessible::RelationFlag relation, int entry, QAccessibleInterface **target) const; diff --git a/src/plugins/accessible/widgets/simplewidgets.cpp b/src/plugins/accessible/widgets/simplewidgets.cpp index 385ca09e08..b05b917c21 100644 --- a/src/plugins/accessible/widgets/simplewidgets.cpp +++ b/src/plugins/accessible/widgets/simplewidgets.cpp @@ -464,10 +464,11 @@ int QAccessibleDisplay::navigate(QAccessible::RelationFlag rel, int entry, QAcce } else { QGroupBox *groupbox = qobject_cast(object()); if (groupbox && !groupbox->title().isEmpty()) - rel = QAccessible::Child; + *target = child(entry - 1); #endif } - *target = QAccessible::queryAccessibleInterface(targetObject); + if (targetObject) + *target = QAccessible::queryAccessibleInterface(targetObject); if (*target) return 0; } diff --git a/src/plugins/platforms/windows/qwindowsaccessibility.cpp b/src/plugins/platforms/windows/qwindowsaccessibility.cpp index 73006a5ff9..f181f3061b 100644 --- a/src/plugins/platforms/windows/qwindowsaccessibility.cpp +++ b/src/plugins/platforms/windows/qwindowsaccessibility.cpp @@ -762,13 +762,12 @@ HRESULT STDMETHODCALLTYPE QWindowsAccessible::accNavigate(long navDir, VARIANT v return E_FAIL; QAccessibleInterface *acc = 0; - int control = -1; switch (navDir) { case NAVDIR_FIRSTCHILD: - control = accessible->navigate(QAccessible::Child, 1, &acc); + acc = accessible->child(0); break; case NAVDIR_LASTCHILD: - control = accessible->navigate(QAccessible::Child, accessible->childCount(), &acc); + acc = accessible->child(accessible->childCount() - 1); break; case NAVDIR_NEXT: case NAVDIR_PREVIOUS: @@ -778,41 +777,107 @@ HRESULT STDMETHODCALLTYPE QWindowsAccessible::accNavigate(long navDir, VARIANT v int index = parent->indexOfChild(accessible); index += (navDir == NAVDIR_NEXT) ? 1 : -1; if (index > 0 && index <= parent->childCount()) - control = parent->navigate(QAccessible::Child, index, &acc); + acc = parent->child(index - 1); delete parent; } } else { int index = varStart.lVal; index += (navDir == NAVDIR_NEXT) ? 1 : -1; if (index > 0 && index <= accessible->childCount()) - control = accessible->navigate(QAccessible::Child, index, &acc); + acc = accessible->child(index - 1); } break; + + // Geometrical case NAVDIR_UP: - control = accessible->navigate(QAccessible::Up, varStart.lVal, &acc); - break; case NAVDIR_DOWN: - control = accessible->navigate(QAccessible::Down, varStart.lVal, &acc); - break; case NAVDIR_LEFT: - control = accessible->navigate(QAccessible::Left, varStart.lVal, &acc); - break; case NAVDIR_RIGHT: - control = accessible->navigate(QAccessible::Right, varStart.lVal, &acc); + if (QAccessibleInterface *pIface = accessible->parent()) { + + QRect startg = accessible->rect(); + QPoint startc = startg.center(); + QAccessibleInterface *candidate = 0; + unsigned mindist = UINT_MAX; // will work on screen sizes at least up to 46340x46340 + const int sibCount = pIface->childCount(); + for (int i = 0; i < sibCount; ++i) { + QAccessibleInterface *sibling = 0; + sibling = pIface->child(i); + Q_ASSERT(sibling); + if ((accessible->relationTo(sibling) & QAccessible::Self) || (sibling->state() & QAccessible::Invisible)) { + //ignore ourself and invisible siblings + delete sibling; + continue; + } + + QRect sibg = sibling->rect(); + QPoint sibc = sibg.center(); + QPoint sibp; + QPoint startp; + QPoint distp; + switch (navDir) { + case NAVDIR_LEFT: + startp = QPoint(startg.left(), startg.top() + startg.height() / 2); + sibp = QPoint(sibg.right(), sibg.top() + sibg.height() / 2); + if (QPoint(sibc - startc).x() >= 0) { + delete sibling; + continue; + } + distp = sibp - startp; + break; + case NAVDIR_RIGHT: + startp = QPoint(startg.right(), startg.top() + startg.height() / 2); + sibp = QPoint(sibg.left(), sibg.top() + sibg.height() / 2); + if (QPoint(sibc - startc).x() <= 0) { + delete sibling; + continue; + } + distp = sibp - startp; + break; + case NAVDIR_UP: + startp = QPoint(startg.left() + startg.width() / 2, startg.top()); + sibp = QPoint(sibg.left() + sibg.width() / 2, sibg.bottom()); + if (QPoint(sibc - startc).y() >= 0) { + delete sibling; + continue; + } + distp = sibp - startp; + break; + case NAVDIR_DOWN: + startp = QPoint(startg.left() + startg.width() / 2, startg.bottom()); + sibp = QPoint(sibg.left() + sibg.width() / 2, sibg.top()); + if (QPoint(sibc - startc).y() <= 0) { + delete sibling; + continue; + } + distp = sibp - startp; + break; + default: + break; + } + + // Since we're *comparing* (and not measuring) distances, we can compare the + // squared distance, (thus, no need to take the sqrt()). + unsigned dist = distp.x() * distp.x() + distp.y() * distp.y(); + if (dist < mindist) { + delete candidate; + candidate = sibling; + mindist = dist; + } else { + delete sibling; + } + } + delete pIface; + acc = candidate; + } break; default: break; } - if (control == -1) { + if (!acc) { (*pvarEnd).vt = VT_EMPTY; return S_FALSE; } - if (!acc) { - (*pvarEnd).vt = VT_I4; - (*pvarEnd).lVal = control; - return S_OK; - } - QWindowsAccessible* wacc = new QWindowsAccessible(acc); IDispatch *iface = 0; @@ -850,18 +915,21 @@ HRESULT STDMETHODCALLTYPE QWindowsAccessible::get_accChild(VARIANT varChildID, I acc = QAccessible::queryAccessibleInterface(ref.first); if (acc && ref.second) { if (ref.second) { - QAccessibleInterface *res; - int index = acc->navigate(QAccessible::Child, ref.second, &res); + QAccessibleInterface *res = acc->child(ref.second - 1); delete acc; - if (index == -1) + if (!res) return E_INVALIDARG; acc = res; } } } } else { - QAccessible::RelationFlag rel = childIndex ? QAccessible::Child : QAccessible::Self; - accessible->navigate(rel, childIndex, &acc); + if (childIndex) { + acc = accessible->child(childIndex - 1); + } else { + // FIXME + Q_ASSERT(0); + } } if (acc) { diff --git a/src/widgets/accessible/qaccessiblewidget.cpp b/src/widgets/accessible/qaccessiblewidget.cpp index 5953333d0c..43a72a336f 100644 --- a/src/widgets/accessible/qaccessiblewidget.cpp +++ b/src/widgets/accessible/qaccessiblewidget.cpp @@ -363,11 +363,7 @@ QAccessible::Relation QAccessibleWidget::relationTo(const QAccessibleInterface * } QObject *parent = object()->parent(); - if (o == parent) - return relation | QAccessible::Child; - if (o->parent() == parent) { - relation |= QAccessible::Sibling; QAccessibleInterface *sibIface = QAccessible::queryAccessibleInterface(o); Q_ASSERT(sibIface); QRect wg = rect(); @@ -385,28 +381,12 @@ QAccessible::Relation QAccessibleWidget::relationTo(const QAccessibleInterface * relation |= QAccessible::Covered; } delete pIface; - } else { - QPoint wc = wg.center(); - QPoint sc = sg.center(); - if (wc.x() < sc.x()) - relation |= QAccessible::Left; - else if(wc.x() > sc.x()) - relation |= QAccessible::Right; - if (wc.y() < sc.y()) - relation |= QAccessible::Up; - else if (wc.y() > sc.y()) - relation |= QAccessible::Down; } delete sibIface; return relation; } - if (isAncestor(o, object())) - return relation | QAccessible::Descendent; - if (isAncestor(object(), o)) - return relation | QAccessible::Ancestor; - return relation; } @@ -437,120 +417,6 @@ int QAccessibleWidget::navigate(QAccessible::RelationFlag relation, int entry, QObject *targetObject = 0; switch (relation) { - // Hierarchical - case QAccessible::Self: - targetObject = object(); - break; - case QAccessible::Child: - qWarning() << "QAccessibleWidget::navigate is deprecated for QAccessible::Child in:" << object()->metaObject()->className(); - *target = child(entry - 1); - return *target ? 0 : -1; - case QAccessible::Ancestor: - qWarning() << "QAccessibleWidget::navigate is deprecated for QAccessible::Ancestor in:" << object()->metaObject()->className(); - *target = parent(); - return *target ? 0 : -1; - case QAccessible::Sibling: - { - QAccessibleInterface *iface = QAccessible::queryAccessibleInterface(parentObject()); - if (!iface) - return -1; - - *target = iface->child(entry - 1); - delete iface; - if (*target) - return 0; - } - break; - - // Geometrical - case QAccessible::Left: - // fall through - case QAccessible::Right: - // fall through - case QAccessible::Up: - // fall through - case QAccessible::Down: - { - QAccessibleInterface *pIface = parent(); - if (!pIface) - return -1; - - QRect startg = rect(); - QPoint startc = startg.center(); - QAccessibleInterface *candidate = 0; - int mindist = 100000; - int sibCount = pIface->childCount(); - for (int i = 0; i < sibCount; ++i) { - QAccessibleInterface *sibling = 0; - sibling = pIface->child(i); - Q_ASSERT(sibling); - if ((relationTo(sibling) & QAccessible::Self) || (sibling->state() & QAccessible::Invisible)) { - //ignore ourself and invisible siblings - delete sibling; - continue; - } - - QRect sibg = sibling->rect(); - QPoint sibc = sibg.center(); - QPoint sibp; - QPoint startp; - QPoint distp; - switch (relation) { - case QAccessible::Left: - startp = QPoint(startg.left(), startg.top() + startg.height() / 2); - sibp = QPoint(sibg.right(), sibg.top() + sibg.height() / 2); - if (QPoint(sibc - startc).x() >= 0) { - delete sibling; - continue; - } - distp = sibp - startp; - break; - case QAccessible::Right: - startp = QPoint(startg.right(), startg.top() + startg.height() / 2); - sibp = QPoint(sibg.left(), sibg.top() + sibg.height() / 2); - if (QPoint(sibc - startc).x() <= 0) { - delete sibling; - continue; - } - distp = sibp - startp; - break; - case QAccessible::Up: - startp = QPoint(startg.left() + startg.width() / 2, startg.top()); - sibp = QPoint(sibg.left() + sibg.width() / 2, sibg.bottom()); - if (QPoint(sibc - startc).y() >= 0) { - delete sibling; - continue; - } - distp = sibp - startp; - break; - case QAccessible::Down: - startp = QPoint(startg.left() + startg.width() / 2, startg.bottom()); - sibp = QPoint(sibg.left() + sibg.width() / 2, sibg.top()); - if (QPoint(sibc - startc).y() <= 0) { - delete sibling; - continue; - } - distp = sibp - startp; - break; - default: - break; - } - - int dist = (int)qSqrt((qreal)distp.x() * distp.x() + distp.y() * distp.y()); - if (dist < mindist) { - delete candidate; - candidate = sibling; - mindist = dist; - } else { - delete sibling; - } - } - delete pIface; - *target = candidate; - if (*target) - return 0; - } - break; case QAccessible::Covers: if (entry > 0) { QAccessibleInterface *pIface = QAccessible::queryAccessibleInterface(parentObject()); diff --git a/tests/auto/other/qaccessibility/tst_qaccessibility.cpp b/tests/auto/other/qaccessibility/tst_qaccessibility.cpp index 858d4397b4..111633cd5e 100644 --- a/tests/auto/other/qaccessibility/tst_qaccessibility.cpp +++ b/tests/auto/other/qaccessibility/tst_qaccessibility.cpp @@ -230,7 +230,6 @@ private slots: void customWidget(); void deletedWidget(); - void navigateGeometric(); void navigateHierarchy(); void sliderTest(); void navigateCovered(); @@ -463,102 +462,6 @@ void tst_QAccessibility::deletedWidget() delete iface; } -void tst_QAccessibility::navigateGeometric() -{ - { - static const int skip = 20; //speed the test up significantly - static const double step = Q_PI / 180; - QWidget *w = new QWidget(0); - w->setObjectName(QString("Josef")); - w->setFixedSize(400, 400); - - // center widget - QtTestAccessibleWidget *center = new QtTestAccessibleWidget(w, "Sol"); - center->move(200, 200); - - // arrange 360 widgets around it in a circle - QtTestAccessibleWidget *aw = 0; - for (int i = 0; i < 360; i += skip) { - aw = new QtTestAccessibleWidget(w, QString::number(i).toLatin1()); - aw->move( int(200.0 + 100.0 * sin(step * (double)i)), int(200.0 + 100.0 * cos(step * (double)i)) ); - } - - aw = new QtTestAccessibleWidget(w, "Earth"); - QAccessibleInterface *iface = QAccessible::queryAccessibleInterface(center); - QAccessibleInterface *target = 0; - QVERIFY(iface != 0); - QVERIFY(iface->isValid()); - - w->show(); - QCoreApplication::processEvents(); - QTest::qWait(100); - - // let one widget rotate around center - for (int i = 0; i < 360; i+=skip) { - aw->move( int(200.0 + 75.0 * sin(step * (double)i)), int(200.0 + 75.0 * cos(step * (double)i)) ); - - if (i < 45 || i > 315) { - QCOMPARE(iface->navigate(QAccessible::Down, 0, &target), 0); - } else if ( i < 135 ) { - QCOMPARE(iface->navigate(QAccessible::Right, 0, &target), 0); - } else if ( i < 225 ) { - QCOMPARE(iface->navigate(QAccessible::Up, 0, &target), 0); - } else { - QCOMPARE(iface->navigate(QAccessible::Left, 0, &target), 0); - } - - QVERIFY(target); - QVERIFY(target->isValid()); - QVERIFY(target->object()); - QCOMPARE(target->object()->objectName(), aw->objectName()); - delete target; target = 0; - } - - // test invisible widget - target = QAccessible::queryAccessibleInterface(aw); - QVERIFY(!(target->state() & QAccessible::Invisible)); - aw->hide(); - QVERIFY(target->state() & QAccessible::Invisible); - delete target; target = 0; - - aw->move(center->x() + 10, center->y()); - QCOMPARE(iface->navigate(QAccessible::Right, 0, &target), 0); - QVERIFY(target); - QVERIFY(target->isValid()); - QVERIFY(target->object()); - QVERIFY(QString(target->object()->objectName()) != "Earth"); - delete target; target = 0; - - aw->move(center->x() - 10, center->y()); - QCOMPARE(iface->navigate(QAccessible::Left, 0, &target), 0); - QVERIFY(target); - QVERIFY(target->isValid()); - QVERIFY(target->object()); - QVERIFY(QString(target->object()->objectName()) != "Earth"); - delete target; target = 0; - - aw->move(center->x(), center->y() + 10); - QCOMPARE(iface->navigate(QAccessible::Down, 0, &target), 0); - QVERIFY(target); - QVERIFY(target->isValid()); - QVERIFY(target->object()); - QVERIFY(QString(target->object()->objectName()) != "Earth"); - delete target; target = 0; - - aw->move(center->x(), center->y() - 10); - QCOMPARE(iface->navigate(QAccessible::Up, 0, &target), 0); - QVERIFY(target); - QVERIFY(target->isValid()); - QVERIFY(target->object()); - QVERIFY(QString(target->object()->objectName()) != "Earth"); - delete target; target = 0; - - delete iface; - delete w; - } - QTestAccessibility::clearEvents(); -} - void tst_QAccessibility::sliderTest() { { @@ -721,11 +624,6 @@ void tst_QAccessibility::navigateHierarchy() QVERIFY(iface != 0); QVERIFY(iface->isValid()); - QCOMPARE(iface->navigate(QAccessible::Sibling, -42, &target), -1); - QVERIFY(target == 0); - QCOMPARE(iface->navigate(QAccessible::Sibling, 42, &target), -1); - QVERIFY(target == 0); - target = iface->child(14); QVERIFY(target == 0); target = iface->child(-1); @@ -741,38 +639,27 @@ void tst_QAccessibility::navigateHierarchy() delete interfaceW1; delete iface; iface = 0; - QCOMPARE(target->navigate(QAccessible::Sibling, 0, &iface), -1); - QVERIFY(iface == 0); - QCOMPARE(target->navigate(QAccessible::Sibling, 42, &iface), -1); - QVERIFY(iface == 0); - QCOMPARE(target->navigate(QAccessible::Sibling, -42, &iface), -1); - QVERIFY(iface == 0); - QCOMPARE(target->navigate(QAccessible::Sibling, 2, &iface), 0); - QVERIFY(iface != 0); - QVERIFY(iface->isValid()); - QCOMPARE(iface->object(), (QObject*)w2); - delete target; target = 0; - QCOMPARE(iface->navigate(QAccessible::Sibling, 3, &target), 0); + iface = QAccessible::queryAccessibleInterface(w); + target = iface->child(2); QVERIFY(target != 0); QVERIFY(target->isValid()); QCOMPARE(target->object(), (QObject*)w3); delete iface; iface = 0; + + iface = target->child(1); + QCOMPARE(iface, (QAccessibleInterface*)0); iface = target->child(0); QVERIFY(iface != 0); QVERIFY(iface->isValid()); QCOMPARE(iface->object(), (QObject*)w31); - delete target; target = 0; - QCOMPARE(iface->navigate(QAccessible::Sibling, -1, &target), -1); - QVERIFY(target == 0); - QCOMPARE(iface->navigate(QAccessible::Sibling, 0, &target), -1); - QVERIFY(target == 0); - QCOMPARE(iface->navigate(QAccessible::Sibling, 1, &target), 0); - QVERIFY(target != 0); - QVERIFY(target->isValid()); + iface = QAccessible::queryAccessibleInterface(w); + QAccessibleInterface *acc3 = iface->child(2); + target = acc3->child(0); + delete acc3; + delete iface; QCOMPARE(target->object(), (QObject*)w31); - delete iface; iface = 0; iface = target->parent(); QVERIFY(iface != 0); @@ -1555,8 +1442,7 @@ void tst_QAccessibility::menuTest() QAccessible::MenuItem }; for (int child = 0; child < 5; ++child) { - entry = iface->navigate(QAccessible::Sibling, child + 1, &iface2); - QCOMPARE(entry, 0); + iface2 = interface->child(child); QVERIFY(iface2); QCOMPARE(iface2->role(), fileRoles[child]); delete iface2; @@ -2133,6 +2019,16 @@ void tst_QAccessibility::workspaceTest() QTestAccessibility::clearEvents(); } +bool accessibleInterfaceLeftOf(const QAccessibleInterface *a1, const QAccessibleInterface *a2) +{ + return a1->rect().x() < a2->rect().x(); +} + +bool accessibleInterfaceAbove(const QAccessibleInterface *a1, const QAccessibleInterface *a2) +{ + return a1->rect().y() < a2->rect().y(); +} + void tst_QAccessibility::dialogButtonBoxTest() { { @@ -2154,25 +2050,17 @@ void tst_QAccessibility::dialogButtonBoxTest() QCOMPARE(iface->role(), QAccessible::Grouping); QStringList actualOrder; QAccessibleInterface *child; - QAccessibleInterface *leftmost; child = iface->child(0); QCOMPARE(child->role(), QAccessible::PushButton); - // first find the leftmost button - while (child->navigate(QAccessible::Left, 1, &leftmost) != -1) { - delete child; - child = leftmost; - } - leftmost = child; - - // then traverse from left to right to find the correct order of the buttons - int right = 0; - while (right != -1) { - actualOrder << leftmost->text(QAccessible::Name); - right = leftmost->navigate(QAccessible::Right, 1, &child); - delete leftmost; - leftmost = child; - } + QVector buttons; + for (int i = 0; i < iface->childCount(); ++i) + buttons << iface->child(i); + + qSort(buttons.begin(), buttons.end(), accessibleInterfaceLeftOf); + + for (int i = 0; i < buttons.count(); ++i) + actualOrder << buttons.at(i)->text(QAccessible::Name); QStringList expectedOrder; QDialogButtonBox::ButtonLayout btnlout = @@ -2214,26 +2102,16 @@ void tst_QAccessibility::dialogButtonBoxTest() #endif QApplication::processEvents(); - QAccessibleInterface *child; QStringList actualOrder; - child = iface->child(0); - // first find the topmost button - QAccessibleInterface *other; - while (child->navigate(QAccessible::Up, 1, &other) != -1) { - delete child; - child = other; - } - other = child; - - // then traverse from top to bottom to find the correct order of the buttons - actualOrder.clear(); - int right = 0; - while (right != -1) { - actualOrder << other->text(QAccessible::Name); - right = other->navigate(QAccessible::Down, 1, &child); - delete other; - other = child; - } + + QVector buttons; + for (int i = 0; i < iface->childCount(); ++i) + buttons << iface->child(i); + + qSort(buttons.begin(), buttons.end(), accessibleInterfaceAbove); + + for (int i = 0; i < buttons.count(); ++i) + actualOrder << buttons.at(i)->text(QAccessible::Name); QStringList expectedOrder; expectedOrder << QDialogButtonBox::tr("OK") -- cgit v1.2.3 From b3ce4470ae2ece0c03c66684ca3d9dd13955786b Mon Sep 17 00:00:00 2001 From: "Jonas M. Gastal" Date: Thu, 22 Dec 2011 17:42:49 -0200 Subject: Removing QHttp class, its tests and its usage in examples. Task-number: QTBUG-22750 Change-Id: I161fad772bfb26797e6ee9d69da925b6747c371f Reviewed-by: Lars Knoll --- dist/changes-5.0.0 | 4 + examples/network/torrent/trackerclient.cpp | 37 +- examples/network/torrent/trackerclient.h | 13 +- src/network/access/access.pri | 4 +- src/network/access/qhttp.cpp | 3150 -------------------- src/network/access/qhttp.h | 311 -- src/network/access/qhttpheader.cpp | 770 +++++ src/network/access/qhttpheader_p.h | 147 + src/network/access/qhttpnetworkconnection.cpp | 1 - src/network/kernel/qauthenticator.cpp | 2 +- src/network/socket/qhttpsocketengine.cpp | 2 +- src/tools/uic/qclass_lib_map.h | 6 +- tests/auto/network/access/access.pro | 1 - tests/auto/network/access/qhttp/.gitattributes | 1 - tests/auto/network/access/qhttp/.gitignore | 1 - tests/auto/network/access/qhttp/dummyserver.h | 114 - tests/auto/network/access/qhttp/qhttp.pro | 23 - tests/auto/network/access/qhttp/rfc3252.txt | 899 ------ tests/auto/network/access/qhttp/testhtml | 8 - tests/auto/network/access/qhttp/tst_qhttp.cpp | 1565 ---------- .../qhttp/webserver/cgi-bin/retrieve_testfile.cgi | 6 - .../network/access/qhttp/webserver/cgi-bin/rfc.cgi | 5 - .../qhttp/webserver/cgi-bin/store_testfile.cgi | 6 - .../auto/network/access/qhttp/webserver/index.html | 899 ------ tests/auto/network/access/qhttp/webserver/rfc3252 | 899 ------ .../network/access/qhttp/webserver/rfc3252.txt | 899 ------ .../qhttpsocketengine/tst_qhttpsocketengine.cpp | 1 - .../tst_qsocks5socketengine.cpp | 1 - .../sax/qxmlinputsource/tst_qxmlinputsource.cpp | 63 +- 29 files changed, 999 insertions(+), 8839 deletions(-) delete mode 100644 src/network/access/qhttp.cpp delete mode 100644 src/network/access/qhttp.h create mode 100644 src/network/access/qhttpheader.cpp create mode 100644 src/network/access/qhttpheader_p.h delete mode 100644 tests/auto/network/access/qhttp/.gitattributes delete mode 100644 tests/auto/network/access/qhttp/.gitignore delete mode 100644 tests/auto/network/access/qhttp/dummyserver.h delete mode 100644 tests/auto/network/access/qhttp/qhttp.pro delete mode 100644 tests/auto/network/access/qhttp/rfc3252.txt delete mode 100644 tests/auto/network/access/qhttp/testhtml delete mode 100644 tests/auto/network/access/qhttp/tst_qhttp.cpp delete mode 100755 tests/auto/network/access/qhttp/webserver/cgi-bin/retrieve_testfile.cgi delete mode 100755 tests/auto/network/access/qhttp/webserver/cgi-bin/rfc.cgi delete mode 100755 tests/auto/network/access/qhttp/webserver/cgi-bin/store_testfile.cgi delete mode 100644 tests/auto/network/access/qhttp/webserver/index.html delete mode 100644 tests/auto/network/access/qhttp/webserver/rfc3252 delete mode 100644 tests/auto/network/access/qhttp/webserver/rfc3252.txt diff --git a/dist/changes-5.0.0 b/dist/changes-5.0.0 index e567021aa2..8855aa3852 100644 --- a/dist/changes-5.0.0 +++ b/dist/changes-5.0.0 @@ -141,6 +141,10 @@ information about a particular change. * Removed implicit conversion operator QUuid::operator QString(), instead QUuid::toString() function should be used. +- The QHttp, QHttpHeader, QHttpResponseHeader and QHttpRequestHeader classes have + been removed, QNetworkAccessManager should be used instead. + + **************************************************************************** * General * **************************************************************************** diff --git a/examples/network/torrent/trackerclient.cpp b/examples/network/torrent/trackerclient.cpp index c8525e983f..43c60ac9bd 100644 --- a/examples/network/torrent/trackerclient.cpp +++ b/examples/network/torrent/trackerclient.cpp @@ -45,6 +45,7 @@ #include "trackerclient.h" #include +#include TrackerClient::TrackerClient(TorrentClient *downloader, QObject *parent) : QObject(parent), torrentDownloader(downloader) @@ -56,7 +57,7 @@ TrackerClient::TrackerClient(TorrentClient *downloader, QObject *parent) lastTrackerRequest = false; firstSeeding = true; - connect(&http, SIGNAL(done(bool)), this, SLOT(httpRequestDone(bool))); + connect(&http, SIGNAL(finished(QNetworkReply*)), this, SLOT(httpRequestDone(QNetworkReply*))); } void TrackerClient::start(const MetaInfo &info) @@ -82,15 +83,13 @@ void TrackerClient::startSeeding() void TrackerClient::stop() { lastTrackerRequest = true; - http.abort(); fetchPeerList(); } void TrackerClient::timerEvent(QTimerEvent *event) { if (event->timerId() == requestIntervalTimer) { - if (http.state() == QHttp::Unconnected) - fetchPeerList(); + fetchPeerList(); } else { QObject::timerEvent(event); } @@ -148,32 +147,35 @@ void TrackerClient::fetchPeerList() if (!trackerId.isEmpty()) query += "&trackerid=" + trackerId; - http.setHost(url.host(), url.port() == -1 ? 80 : url.port()); - if (!url.userName().isEmpty()) - http.setUser(url.userName(), url.password()); - http.get(query); + QNetworkRequest req(url); + if (!url.userName().isEmpty()) { + uname = url.userName(); + pwd = url.password(); + connect(&http, SIGNAL(authenticationRequired(QNetworkReply*,QAuthenticator*)), this, SLOT(provideAuthentication(QNetworkReply*,QAuthenticator*))); + } + http.get(req); } -void TrackerClient::httpRequestDone(bool error) +void TrackerClient::httpRequestDone(QNetworkReply *reply) { + reply->deleteLater(); if (lastTrackerRequest) { emit stopped(); return; } - if (error) { - emit connectionError(http.error()); + if (reply->error() != QNetworkReply::NoError) { + emit connectionError(reply->error()); return; } - QByteArray response = http.readAll(); - http.abort(); + QByteArray response = reply->readAll(); + reply->abort(); BencodeParser parser; if (!parser.parse(response)) { qWarning("Error parsing bencode response from tracker: %s", qPrintable(parser.errorString())); - http.abort(); return; } @@ -234,3 +236,10 @@ void TrackerClient::httpRequestDone(bool error) emit peerListUpdated(peers); } } + +void TrackerClient::provideAuthentication(QNetworkReply *reply, QAuthenticator *auth) +{ + Q_UNUSED(reply); + auth->setUser(uname); + auth->setPassword(pwd); +} diff --git a/examples/network/torrent/trackerclient.h b/examples/network/torrent/trackerclient.h index 02dd5f91e7..723b3aa4b7 100644 --- a/examples/network/torrent/trackerclient.h +++ b/examples/network/torrent/trackerclient.h @@ -45,7 +45,9 @@ #include #include #include -#include +#include +#include +#include #include "metainfo.h" #include "torrentclient.h" @@ -64,7 +66,7 @@ public: void startSeeding(); signals: - void connectionError(QHttp::Error error); + void connectionError(QNetworkReply::NetworkError error); void failure(const QString &reason); void warning(const QString &message); @@ -80,20 +82,23 @@ protected: private slots: void fetchPeerList(); - void httpRequestDone(bool error); + void httpRequestDone(QNetworkReply *reply); + void provideAuthentication(QNetworkReply *reply, QAuthenticator *auth); private: TorrentClient *torrentDownloader; int requestInterval; int requestIntervalTimer; - QHttp http; + QNetworkAccessManager http; MetaInfo metaInfo; QByteArray trackerId; QList peers; qint64 uploadedBytes; qint64 downloadedBytes; qint64 length; + QString uname; + QString pwd; bool firstTrackerRequest; bool lastTrackerRequest; diff --git a/src/network/access/access.pri b/src/network/access/access.pri index 3d5558d334..944855e9d1 100644 --- a/src/network/access/access.pri +++ b/src/network/access/access.pri @@ -2,7 +2,7 @@ HEADERS += \ access/qftp.h \ - access/qhttp.h \ + access/qhttpheader_p.h \ access/qhttpnetworkheader_p.h \ access/qhttpnetworkrequest_p.h \ access/qhttpnetworkreply_p.h \ @@ -39,7 +39,7 @@ HEADERS += \ SOURCES += \ access/qftp.cpp \ - access/qhttp.cpp \ + access/qhttpheader.cpp \ access/qhttpnetworkheader.cpp \ access/qhttpnetworkrequest.cpp \ access/qhttpnetworkreply.cpp \ diff --git a/src/network/access/qhttp.cpp b/src/network/access/qhttp.cpp deleted file mode 100644 index 067b7f95d7..0000000000 --- a/src/network/access/qhttp.cpp +++ /dev/null @@ -1,3150 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtNetwork module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -//#define QHTTP_DEBUG - -#include -#include "qhttp.h" - -#ifndef QT_NO_HTTP -# include "private/qobject_p.h" -# include "qtcpsocket.h" -# include "qsslsocket.h" -# include "qtextstream.h" -# include "qmap.h" -# include "qlist.h" -# include "qstring.h" -# include "qstringlist.h" -# include "qbuffer.h" -# include "private/qringbuffer_p.h" -# include "qcoreevent.h" -# include "qurl.h" -# include "qnetworkproxy.h" -# include "qauthenticator.h" -# include "qauthenticator_p.h" -# include "qdebug.h" -# include "qtimer.h" -#endif - -#ifndef QT_NO_HTTP - -QT_BEGIN_NAMESPACE - -class QHttpNormalRequest; -class QHttpRequest -{ -public: - QHttpRequest() : finished(false) - { id = idCounter.fetchAndAddRelaxed(1); } - virtual ~QHttpRequest() - { } - - virtual void start(QHttp *) = 0; - virtual bool hasRequestHeader(); - virtual QHttpRequestHeader requestHeader(); - - virtual QIODevice *sourceDevice() = 0; - virtual QIODevice *destinationDevice() = 0; - - int id; - bool finished; - -private: - static QBasicAtomicInt idCounter; -}; - -class QHttpPrivate : public QObjectPrivate -{ -public: - Q_DECLARE_PUBLIC(QHttp) - - inline QHttpPrivate() - : socket(0), reconnectAttempts(2), - deleteSocket(0), state(QHttp::Unconnected), - error(QHttp::NoError), port(0), mode(QHttp::ConnectionModeHttp), - toDevice(0), postDevice(0), bytesDone(0), chunkedSize(-1), - repost(false), pendingPost(false) - { - } - - inline ~QHttpPrivate() - { - while (!pending.isEmpty()) - delete pending.takeFirst(); - - if (deleteSocket) - delete socket; - } - - // private slots - void _q_startNextRequest(); - void _q_slotReadyRead(); - void _q_slotConnected(); - void _q_slotError(QAbstractSocket::SocketError); - void _q_slotClosed(); - void _q_slotBytesWritten(qint64 numBytes); -#ifndef QT_NO_OPENSSL - void _q_slotEncryptedBytesWritten(qint64 numBytes); -#endif - void _q_slotDoFinished(); - void _q_slotSendRequest(); - void _q_continuePost(); - - int addRequest(QHttpNormalRequest *); - int addRequest(QHttpRequest *); - void finishedWithSuccess(); - void finishedWithError(const QString &detail, int errorCode); - - void init(); - void setState(int); - void closeConn(); - void setSock(QTcpSocket *sock); - - void postMoreData(); - - QTcpSocket *socket; - int reconnectAttempts; - bool deleteSocket; - QList pending; - - QHttp::State state; - QHttp::Error error; - QString errorString; - - QString hostName; - quint16 port; - QHttp::ConnectionMode mode; - - QByteArray buffer; - QIODevice *toDevice; - QIODevice *postDevice; - - qint64 bytesDone; - qint64 bytesTotal; - qint64 chunkedSize; - - QHttpRequestHeader header; - - bool readHeader; - QString headerStr; - QHttpResponseHeader response; - - QRingBuffer rba; - -#ifndef QT_NO_NETWORKPROXY - QNetworkProxy proxy; - QAuthenticator proxyAuthenticator; -#endif - QAuthenticator authenticator; - bool repost; - bool hasFinishedWithError; - bool pendingPost; - QTimer post100ContinueTimer; -}; - -QBasicAtomicInt QHttpRequest::idCounter = Q_BASIC_ATOMIC_INITIALIZER(1); - -bool QHttpRequest::hasRequestHeader() -{ - return false; -} - -QHttpRequestHeader QHttpRequest::requestHeader() -{ - return QHttpRequestHeader(); -} - -/**************************************************** - * - * QHttpNormalRequest - * - ****************************************************/ - -class QHttpNormalRequest : public QHttpRequest -{ -public: - QHttpNormalRequest(const QHttpRequestHeader &h, QIODevice *d, QIODevice *t) : - header(h), to(t) - { - is_ba = false; - data.dev = d; - } - - QHttpNormalRequest(const QHttpRequestHeader &h, QByteArray *d, QIODevice *t) : - header(h), to(t) - { - is_ba = true; - data.ba = d; - } - - ~QHttpNormalRequest() - { - if (is_ba) - delete data.ba; - } - - void start(QHttp *); - bool hasRequestHeader(); - QHttpRequestHeader requestHeader(); - inline void setRequestHeader(const QHttpRequestHeader &h) { header = h; } - - QIODevice *sourceDevice(); - QIODevice *destinationDevice(); - -protected: - QHttpRequestHeader header; - -private: - union { - QByteArray *ba; - QIODevice *dev; - } data; - bool is_ba; - QIODevice *to; -}; - -void QHttpNormalRequest::start(QHttp *http) -{ - if (!http->d_func()->socket) - http->d_func()->setSock(0); - http->d_func()->header = header; - - if (is_ba) { - http->d_func()->buffer = *data.ba; - if (http->d_func()->buffer.size() >= 0) - http->d_func()->header.setContentLength(http->d_func()->buffer.size()); - - http->d_func()->postDevice = 0; - } else { - http->d_func()->buffer = QByteArray(); - - if (data.dev && (data.dev->isOpen() || data.dev->open(QIODevice::ReadOnly))) { - http->d_func()->postDevice = data.dev; - if (http->d_func()->postDevice->size() >= 0) - http->d_func()->header.setContentLength(http->d_func()->postDevice->size()); - } else { - http->d_func()->postDevice = 0; - } - } - - if (to && (to->isOpen() || to->open(QIODevice::WriteOnly))) - http->d_func()->toDevice = to; - else - http->d_func()->toDevice = 0; - - http->d_func()->reconnectAttempts = 2; - http->d_func()->_q_slotSendRequest(); -} - -bool QHttpNormalRequest::hasRequestHeader() -{ - return true; -} - -QHttpRequestHeader QHttpNormalRequest::requestHeader() -{ - return header; -} - -QIODevice *QHttpNormalRequest::sourceDevice() -{ - if (is_ba) - return 0; - return data.dev; -} - -QIODevice *QHttpNormalRequest::destinationDevice() -{ - return to; -} - -/**************************************************** - * - * QHttpPGHRequest - * (like a QHttpNormalRequest, but for the convenience - * functions put(), get() and head() -- i.e. set the - * host header field correctly before sending the - * request) - * - ****************************************************/ - -class QHttpPGHRequest : public QHttpNormalRequest -{ -public: - QHttpPGHRequest(const QHttpRequestHeader &h, QIODevice *d, QIODevice *t) : - QHttpNormalRequest(h, d, t) - { } - - QHttpPGHRequest(const QHttpRequestHeader &h, QByteArray *d, QIODevice *t) : - QHttpNormalRequest(h, d, t) - { } - - ~QHttpPGHRequest() - { } - - void start(QHttp *); -}; - -void QHttpPGHRequest::start(QHttp *http) -{ - if (http->d_func()->port && http->d_func()->port != 80) - header.setValue(QLatin1String("Host"), http->d_func()->hostName + QLatin1Char(':') + QString::number(http->d_func()->port)); - else - header.setValue(QLatin1String("Host"), http->d_func()->hostName); - QHttpNormalRequest::start(http); -} - -/**************************************************** - * - * QHttpSetHostRequest - * - ****************************************************/ - -class QHttpSetHostRequest : public QHttpRequest -{ -public: - QHttpSetHostRequest(const QString &h, quint16 p, QHttp::ConnectionMode m) - : hostName(h), port(p), mode(m) - { } - - void start(QHttp *); - - QIODevice *sourceDevice() - { return 0; } - QIODevice *destinationDevice() - { return 0; } - -private: - QString hostName; - quint16 port; - QHttp::ConnectionMode mode; -}; - -void QHttpSetHostRequest::start(QHttp *http) -{ - http->d_func()->hostName = hostName; - http->d_func()->port = port; - http->d_func()->mode = mode; - -#ifdef QT_NO_OPENSSL - if (mode == QHttp::ConnectionModeHttps) { - // SSL requested but no SSL support compiled in - http->d_func()->finishedWithError(QLatin1String(QT_TRANSLATE_NOOP("QHttp", "HTTPS connection requested but SSL support not compiled in")), - QHttp::UnknownError); - return; - } -#endif - - http->d_func()->finishedWithSuccess(); -} - -/**************************************************** - * - * QHttpSetUserRequest - * - ****************************************************/ - -class QHttpSetUserRequest : public QHttpRequest -{ -public: - QHttpSetUserRequest(const QString &userName, const QString &password) : - user(userName), pass(password) - { } - - void start(QHttp *); - - QIODevice *sourceDevice() - { return 0; } - QIODevice *destinationDevice() - { return 0; } - -private: - QString user; - QString pass; -}; - -void QHttpSetUserRequest::start(QHttp *http) -{ - http->d_func()->authenticator.setUser(user); - http->d_func()->authenticator.setPassword(pass); - http->d_func()->finishedWithSuccess(); -} - -#ifndef QT_NO_NETWORKPROXY - -/**************************************************** - * - * QHttpSetProxyRequest - * - ****************************************************/ - -class QHttpSetProxyRequest : public QHttpRequest -{ -public: - inline QHttpSetProxyRequest(const QNetworkProxy &proxy) - { - this->proxy = proxy; - } - - inline void start(QHttp *http) - { - http->d_func()->proxy = proxy; - QString user = proxy.user(); - if (!user.isEmpty()) - http->d_func()->proxyAuthenticator.setUser(user); - QString password = proxy.password(); - if (!password.isEmpty()) - http->d_func()->proxyAuthenticator.setPassword(password); - http->d_func()->finishedWithSuccess(); - } - - inline QIODevice *sourceDevice() - { return 0; } - inline QIODevice *destinationDevice() - { return 0; } -private: - QNetworkProxy proxy; -}; - -#endif // QT_NO_NETWORKPROXY - -/**************************************************** - * - * QHttpSetSocketRequest - * - ****************************************************/ - -class QHttpSetSocketRequest : public QHttpRequest -{ -public: - QHttpSetSocketRequest(QTcpSocket *s) : socket(s) - { } - - void start(QHttp *); - - QIODevice *sourceDevice() - { return 0; } - QIODevice *destinationDevice() - { return 0; } - -private: - QTcpSocket *socket; -}; - -void QHttpSetSocketRequest::start(QHttp *http) -{ - http->d_func()->setSock(socket); - http->d_func()->finishedWithSuccess(); -} - -/**************************************************** - * - * QHttpCloseRequest - * - ****************************************************/ - -class QHttpCloseRequest : public QHttpRequest -{ -public: - QHttpCloseRequest() - { } - void start(QHttp *); - - QIODevice *sourceDevice() - { return 0; } - QIODevice *destinationDevice() - { return 0; } -}; - -void QHttpCloseRequest::start(QHttp *http) -{ - http->d_func()->closeConn(); -} - -class QHttpHeaderPrivate -{ - Q_DECLARE_PUBLIC(QHttpHeader) -public: - inline virtual ~QHttpHeaderPrivate() {} - - QList > values; - bool valid; - QHttpHeader *q_ptr; -}; - -/**************************************************** - * - * QHttpHeader - * - ****************************************************/ - -/*! - \class QHttpHeader - \obsolete - \brief The QHttpHeader class contains header information for HTTP. - - \ingroup network - \inmodule QtNetwork - - In most cases you should use the more specialized derivatives of - this class, QHttpResponseHeader and QHttpRequestHeader, rather - than directly using QHttpHeader. - - QHttpHeader provides the HTTP header fields. A HTTP header field - consists of a name followed by a colon, a single space, and the - field value. (See RFC 1945.) Field names are case-insensitive. A - typical header field looks like this: - \snippet doc/src/snippets/code/src_network_access_qhttp.cpp 0 - - In the API the header field name is called the "key" and the - content is called the "value". You can get and set a header - field's value by using its key with value() and setValue(), e.g. - \snippet doc/src/snippets/code/src_network_access_qhttp.cpp 1 - - Some fields are so common that getters and setters are provided - for them as a convenient alternative to using \l value() and - \l setValue(), e.g. contentLength() and contentType(), - setContentLength() and setContentType(). - - Each header key has a \e single value associated with it. If you - set the value for a key which already exists the previous value - will be discarded. - - \sa QHttpRequestHeader QHttpResponseHeader -*/ - -/*! - \fn int QHttpHeader::majorVersion() const - - Returns the major protocol-version of the HTTP header. -*/ - -/*! - \fn int QHttpHeader::minorVersion() const - - Returns the minor protocol-version of the HTTP header. -*/ - -/*! - Constructs an empty HTTP header. -*/ -QHttpHeader::QHttpHeader() - : d_ptr(new QHttpHeaderPrivate) -{ - Q_D(QHttpHeader); - d->q_ptr = this; - d->valid = true; -} - -/*! - Constructs a copy of \a header. -*/ -QHttpHeader::QHttpHeader(const QHttpHeader &header) - : d_ptr(new QHttpHeaderPrivate) -{ - Q_D(QHttpHeader); - d->q_ptr = this; - d->valid = header.d_func()->valid; - d->values = header.d_func()->values; -} - -/*! - Constructs a HTTP header for \a str. - - This constructor parses the string \a str for header fields and - adds this information. The \a str should consist of one or more - "\r\n" delimited lines; each of these lines should have the format - key, colon, space, value. -*/ -QHttpHeader::QHttpHeader(const QString &str) - : d_ptr(new QHttpHeaderPrivate) -{ - Q_D(QHttpHeader); - d->q_ptr = this; - d->valid = true; - parse(str); -} - -/*! \internal - */ -QHttpHeader::QHttpHeader(QHttpHeaderPrivate &dd, const QString &str) - : d_ptr(&dd) -{ - Q_D(QHttpHeader); - d->q_ptr = this; - d->valid = true; - if (!str.isEmpty()) - parse(str); -} - -/*! \internal - */ -QHttpHeader::QHttpHeader(QHttpHeaderPrivate &dd, const QHttpHeader &header) - : d_ptr(&dd) -{ - Q_D(QHttpHeader); - d->q_ptr = this; - d->valid = header.d_func()->valid; - d->values = header.d_func()->values; -} -/*! - Destructor. -*/ -QHttpHeader::~QHttpHeader() -{ -} - -/*! - Assigns \a h and returns a reference to this http header. -*/ -QHttpHeader &QHttpHeader::operator=(const QHttpHeader &h) -{ - Q_D(QHttpHeader); - d->values = h.d_func()->values; - d->valid = h.d_func()->valid; - return *this; -} - -/*! - Returns true if the HTTP header is valid; otherwise returns false. - - A QHttpHeader is invalid if it was created by parsing a malformed string. -*/ -bool QHttpHeader::isValid() const -{ - Q_D(const QHttpHeader); - return d->valid; -} - -/*! \internal - Parses the HTTP header string \a str for header fields and adds - the keys/values it finds. If the string is not parsed successfully - the QHttpHeader becomes \link isValid() invalid\endlink. - - Returns true if \a str was successfully parsed; otherwise returns false. - - \sa toString() -*/ -bool QHttpHeader::parse(const QString &str) -{ - Q_D(QHttpHeader); - QStringList lst; - int pos = str.indexOf(QLatin1Char('\n')); - if (pos > 0 && str.at(pos - 1) == QLatin1Char('\r')) - lst = str.trimmed().split(QLatin1String("\r\n")); - else - lst = str.trimmed().split(QLatin1String("\n")); - lst.removeAll(QString()); // No empties - - if (lst.isEmpty()) - return true; - - QStringList lines; - QStringList::Iterator it = lst.begin(); - for (; it != lst.end(); ++it) { - if (!(*it).isEmpty()) { - if ((*it)[0].isSpace()) { - if (!lines.isEmpty()) { - lines.last() += QLatin1Char(' '); - lines.last() += (*it).trimmed(); - } - } else { - lines.append((*it)); - } - } - } - - int number = 0; - it = lines.begin(); - for (; it != lines.end(); ++it) { - if (!parseLine(*it, number++)) { - d->valid = false; - return false; - } - } - return true; -} - -/*! \internal -*/ -void QHttpHeader::setValid(bool v) -{ - Q_D(QHttpHeader); - d->valid = v; -} - -/*! - Returns the first value for the entry with the given \a key. If no entry - has this \a key, an empty string is returned. - - \sa setValue() removeValue() hasKey() keys() -*/ -QString QHttpHeader::value(const QString &key) const -{ - Q_D(const QHttpHeader); - QString lowercaseKey = key.toLower(); - QList >::ConstIterator it = d->values.constBegin(); - while (it != d->values.constEnd()) { - if ((*it).first.toLower() == lowercaseKey) - return (*it).second; - ++it; - } - return QString(); -} - -/*! - Returns all the entries with the given \a key. If no entry - has this \a key, an empty string list is returned. -*/ -QStringList QHttpHeader::allValues(const QString &key) const -{ - Q_D(const QHttpHeader); - QString lowercaseKey = key.toLower(); - QStringList valueList; - QList >::ConstIterator it = d->values.constBegin(); - while (it != d->values.constEnd()) { - if ((*it).first.toLower() == lowercaseKey) - valueList.append((*it).second); - ++it; - } - return valueList; -} - -/*! - Returns a list of the keys in the HTTP header. - - \sa hasKey() -*/ -QStringList QHttpHeader::keys() const -{ - Q_D(const QHttpHeader); - QStringList keyList; - QSet seenKeys; - QList >::ConstIterator it = d->values.constBegin(); - while (it != d->values.constEnd()) { - const QString &key = (*it).first; - QString lowercaseKey = key.toLower(); - if (!seenKeys.contains(lowercaseKey)) { - keyList.append(key); - seenKeys.insert(lowercaseKey); - } - ++it; - } - return keyList; -} - -/*! - Returns true if the HTTP header has an entry with the given \a - key; otherwise returns false. - - \sa value() setValue() keys() -*/ -bool QHttpHeader::hasKey(const QString &key) const -{ - Q_D(const QHttpHeader); - QString lowercaseKey = key.toLower(); - QList >::ConstIterator it = d->values.constBegin(); - while (it != d->values.constEnd()) { - if ((*it).first.toLower() == lowercaseKey) - return true; - ++it; - } - return false; -} - -/*! - Sets the value of the entry with the \a key to \a value. - - If no entry with \a key exists, a new entry with the given \a key - and \a value is created. If an entry with the \a key already - exists, the first value is discarded and replaced with the given - \a value. - - \sa value() hasKey() removeValue() -*/ -void QHttpHeader::setValue(const QString &key, const QString &value) -{ - Q_D(QHttpHeader); - QString lowercaseKey = key.toLower(); - QList >::Iterator it = d->values.begin(); - while (it != d->values.end()) { - if ((*it).first.toLower() == lowercaseKey) { - (*it).second = value; - return; - } - ++it; - } - // not found so add - addValue(key, value); -} - -/*! - Sets the header entries to be the list of key value pairs in \a values. -*/ -void QHttpHeader::setValues(const QList > &values) -{ - Q_D(QHttpHeader); - d->values = values; -} - -/*! - Adds a new entry with the \a key and \a value. -*/ -void QHttpHeader::addValue(const QString &key, const QString &value) -{ - Q_D(QHttpHeader); - d->values.append(qMakePair(key, value)); -} - -/*! - Returns all the entries in the header. -*/ -QList > QHttpHeader::values() const -{ - Q_D(const QHttpHeader); - return d->values; -} - -/*! - Removes the entry with the key \a key from the HTTP header. - - \sa value() setValue() -*/ -void QHttpHeader::removeValue(const QString &key) -{ - Q_D(QHttpHeader); - QString lowercaseKey = key.toLower(); - QList >::Iterator it = d->values.begin(); - while (it != d->values.end()) { - if ((*it).first.toLower() == lowercaseKey) { - d->values.erase(it); - return; - } - ++it; - } -} - -/*! - Removes all the entries with the key \a key from the HTTP header. -*/ -void QHttpHeader::removeAllValues(const QString &key) -{ - Q_D(QHttpHeader); - QString lowercaseKey = key.toLower(); - QList >::Iterator it = d->values.begin(); - while (it != d->values.end()) { - if ((*it).first.toLower() == lowercaseKey) { - it = d->values.erase(it); - continue; - } - ++it; - } -} - -/*! \internal - Parses the single HTTP header line \a line which has the format - key, colon, space, value, and adds key/value to the headers. The - linenumber is \a number. Returns true if the line was successfully - parsed and the key/value added; otherwise returns false. - - \sa parse() -*/ -bool QHttpHeader::parseLine(const QString &line, int) -{ - int i = line.indexOf(QLatin1Char(':')); - if (i == -1) - return false; - - addValue(line.left(i).trimmed(), line.mid(i + 1).trimmed()); - - return true; -} - -/*! - Returns a string representation of the HTTP header. - - The string is suitable for use by the constructor that takes a - QString. It consists of lines with the format: key, colon, space, - value, "\r\n". -*/ -QString QHttpHeader::toString() const -{ - Q_D(const QHttpHeader); - if (!isValid()) - return QLatin1String(""); - - QString ret = QLatin1String(""); - - QList >::ConstIterator it = d->values.constBegin(); - while (it != d->values.constEnd()) { - ret += (*it).first + QLatin1String(": ") + (*it).second + QLatin1String("\r\n"); - ++it; - } - return ret; -} - -/*! - Returns true if the header has an entry for the special HTTP - header field \c content-length; otherwise returns false. - - \sa contentLength() setContentLength() -*/ -bool QHttpHeader::hasContentLength() const -{ - return hasKey(QLatin1String("content-length")); -} - -/*! - Returns the value of the special HTTP header field \c - content-length. - - \sa setContentLength() hasContentLength() -*/ -uint QHttpHeader::contentLength() const -{ - return value(QLatin1String("content-length")).toUInt(); -} - -/*! - Sets the value of the special HTTP header field \c content-length - to \a len. - - \sa contentLength() hasContentLength() -*/ -void QHttpHeader::setContentLength(int len) -{ - setValue(QLatin1String("content-length"), QString::number(len)); -} - -/*! - Returns true if the header has an entry for the special HTTP - header field \c content-type; otherwise returns false. - - \sa contentType() setContentType() -*/ -bool QHttpHeader::hasContentType() const -{ - return hasKey(QLatin1String("content-type")); -} - -/*! - Returns the value of the special HTTP header field \c content-type. - - \sa setContentType() hasContentType() -*/ -QString QHttpHeader::contentType() const -{ - QString type = value(QLatin1String("content-type")); - if (type.isEmpty()) - return QString(); - - int pos = type.indexOf(QLatin1Char(';')); - if (pos == -1) - return type; - - return type.left(pos).trimmed(); -} - -/*! - Sets the value of the special HTTP header field \c content-type to - \a type. - - \sa contentType() hasContentType() -*/ -void QHttpHeader::setContentType(const QString &type) -{ - setValue(QLatin1String("content-type"), type); -} - -class QHttpResponseHeaderPrivate : public QHttpHeaderPrivate -{ - Q_DECLARE_PUBLIC(QHttpResponseHeader) -public: - int statCode; - QString reasonPhr; - int majVer; - int minVer; -}; - -/**************************************************** - * - * QHttpResponseHeader - * - ****************************************************/ - -/*! - \class QHttpResponseHeader - \obsolete - \brief The QHttpResponseHeader class contains response header information for HTTP. - - \ingroup network - \inmodule QtNetwork - - This class is used by the QHttp class to report the header - information that the client received from the server. - - HTTP responses have a status code that indicates the status of the - response. This code is a 3-digit integer result code (for details - see to RFC 1945). In addition to the status code, you can also - specify a human-readable text that describes the reason for the - code ("reason phrase"). This class allows you to get the status - code and the reason phrase. - - \sa QHttpRequestHeader, QHttp, {HTTP Example} -*/ - -/*! - Constructs an empty HTTP response header. -*/ -QHttpResponseHeader::QHttpResponseHeader() - : QHttpHeader(*new QHttpResponseHeaderPrivate) -{ - setValid(false); -} - -/*! - Constructs a copy of \a header. -*/ -QHttpResponseHeader::QHttpResponseHeader(const QHttpResponseHeader &header) - : QHttpHeader(*new QHttpResponseHeaderPrivate, header) -{ - Q_D(QHttpResponseHeader); - d->statCode = header.d_func()->statCode; - d->reasonPhr = header.d_func()->reasonPhr; - d->majVer = header.d_func()->majVer; - d->minVer = header.d_func()->minVer; -} - -/*! - Copies the contents of \a header into this QHttpResponseHeader. -*/ -QHttpResponseHeader &QHttpResponseHeader::operator=(const QHttpResponseHeader &header) -{ - Q_D(QHttpResponseHeader); - QHttpHeader::operator=(header); - d->statCode = header.d_func()->statCode; - d->reasonPhr = header.d_func()->reasonPhr; - d->majVer = header.d_func()->majVer; - d->minVer = header.d_func()->minVer; - return *this; -} - -/*! - Constructs a HTTP response header from the string \a str. The - string is parsed and the information is set. The \a str should - consist of one or more "\r\n" delimited lines; the first line should be the - status-line (format: HTTP-version, space, status-code, space, - reason-phrase); each of remaining lines should have the format key, colon, - space, value. -*/ -QHttpResponseHeader::QHttpResponseHeader(const QString &str) - : QHttpHeader(*new QHttpResponseHeaderPrivate) -{ - parse(str); -} - -/*! - \since 4.1 - - Constructs a QHttpResponseHeader, setting the status code to \a code, the - reason phrase to \a text and the protocol-version to \a majorVer and \a - minorVer. - - \sa statusCode() reasonPhrase() majorVersion() minorVersion() -*/ -QHttpResponseHeader::QHttpResponseHeader(int code, const QString &text, int majorVer, int minorVer) - : QHttpHeader(*new QHttpResponseHeaderPrivate) -{ - setStatusLine(code, text, majorVer, minorVer); -} - -/*! - \since 4.1 - - Sets the status code to \a code, the reason phrase to \a text and - the protocol-version to \a majorVer and \a minorVer. - - \sa statusCode() reasonPhrase() majorVersion() minorVersion() -*/ -void QHttpResponseHeader::setStatusLine(int code, const QString &text, int majorVer, int minorVer) -{ - Q_D(QHttpResponseHeader); - setValid(true); - d->statCode = code; - d->reasonPhr = text; - d->majVer = majorVer; - d->minVer = minorVer; -} - -/*! - Returns the status code of the HTTP response header. - - \sa reasonPhrase() majorVersion() minorVersion() -*/ -int QHttpResponseHeader::statusCode() const -{ - Q_D(const QHttpResponseHeader); - return d->statCode; -} - -/*! - Returns the reason phrase of the HTTP response header. - - \sa statusCode() majorVersion() minorVersion() -*/ -QString QHttpResponseHeader::reasonPhrase() const -{ - Q_D(const QHttpResponseHeader); - return d->reasonPhr; -} - -/*! - Returns the major protocol-version of the HTTP response header. - - \sa minorVersion() statusCode() reasonPhrase() -*/ -int QHttpResponseHeader::majorVersion() const -{ - Q_D(const QHttpResponseHeader); - return d->majVer; -} - -/*! - Returns the minor protocol-version of the HTTP response header. - - \sa majorVersion() statusCode() reasonPhrase() -*/ -int QHttpResponseHeader::minorVersion() const -{ - Q_D(const QHttpResponseHeader); - return d->minVer; -} - -/*! \internal -*/ -bool QHttpResponseHeader::parseLine(const QString &line, int number) -{ - Q_D(QHttpResponseHeader); - if (number != 0) - return QHttpHeader::parseLine(line, number); - - QString l = line.simplified(); - if (l.length() < 10) - return false; - - if (l.left(5) == QLatin1String("HTTP/") && l[5].isDigit() && l[6] == QLatin1Char('.') && - l[7].isDigit() && l[8] == QLatin1Char(' ') && l[9].isDigit()) { - d->majVer = l[5].toLatin1() - '0'; - d->minVer = l[7].toLatin1() - '0'; - - int pos = l.indexOf(QLatin1Char(' '), 9); - if (pos != -1) { - d->reasonPhr = l.mid(pos + 1); - d->statCode = l.mid(9, pos - 9).toInt(); - } else { - d->statCode = l.mid(9).toInt(); - d->reasonPhr.clear(); - } - } else { - return false; - } - - return true; -} - -/*! \reimp -*/ -QString QHttpResponseHeader::toString() const -{ - Q_D(const QHttpResponseHeader); - QString ret(QLatin1String("HTTP/%1.%2 %3 %4\r\n%5\r\n")); - return ret.arg(d->majVer).arg(d->minVer).arg(d->statCode).arg(d->reasonPhr).arg(QHttpHeader::toString()); -} - -class QHttpRequestHeaderPrivate : public QHttpHeaderPrivate -{ - Q_DECLARE_PUBLIC(QHttpRequestHeader) -public: - QString m; - QString p; - int majVer; - int minVer; -}; - -/**************************************************** - * - * QHttpRequestHeader - * - ****************************************************/ - -/*! - \class QHttpRequestHeader - \obsolete - \brief The QHttpRequestHeader class contains request header information for HTTP. - - \ingroup network - \inmodule QtNetwork - - This class is used in the QHttp class to report the header - information if the client requests something from the server. - - HTTP requests have a method which describes the request's action. - The most common requests are "GET" and "POST". In addition to the - request method the header also includes a request-URI to specify - the location for the method to use. - - The method, request-URI and protocol-version can be set using a - constructor or later using setRequest(). The values can be - obtained using method(), path(), majorVersion() and - minorVersion(). - - Note that the request-URI must be in the format expected by the - HTTP server. That is, all reserved characters must be encoded in - %HH (where HH are two hexadecimal digits). See - QUrl::toPercentEncoding() for more information. - - Important inherited functions: setValue() and value(). - - \sa QHttpResponseHeader QHttp -*/ - -/*! - Constructs an empty HTTP request header. -*/ -QHttpRequestHeader::QHttpRequestHeader() - : QHttpHeader(*new QHttpRequestHeaderPrivate) -{ - setValid(false); -} - -/*! - Constructs a HTTP request header for the method \a method, the - request-URI \a path and the protocol-version \a majorVer and \a - minorVer. The \a path argument must be properly encoded for an - HTTP request. -*/ -QHttpRequestHeader::QHttpRequestHeader(const QString &method, const QString &path, int majorVer, int minorVer) - : QHttpHeader(*new QHttpRequestHeaderPrivate) -{ - Q_D(QHttpRequestHeader); - d->m = method; - d->p = path; - d->majVer = majorVer; - d->minVer = minorVer; -} - -/*! - Constructs a copy of \a header. -*/ -QHttpRequestHeader::QHttpRequestHeader(const QHttpRequestHeader &header) - : QHttpHeader(*new QHttpRequestHeaderPrivate, header) -{ - Q_D(QHttpRequestHeader); - d->m = header.d_func()->m; - d->p = header.d_func()->p; - d->majVer = header.d_func()->majVer; - d->minVer = header.d_func()->minVer; -} - -/*! - Copies the content of \a header into this QHttpRequestHeader -*/ -QHttpRequestHeader &QHttpRequestHeader::operator=(const QHttpRequestHeader &header) -{ - Q_D(QHttpRequestHeader); - QHttpHeader::operator=(header); - d->m = header.d_func()->m; - d->p = header.d_func()->p; - d->majVer = header.d_func()->majVer; - d->minVer = header.d_func()->minVer; - return *this; -} - -/*! - Constructs a HTTP request header from the string \a str. The \a - str should consist of one or more "\r\n" delimited lines; the first line - should be the request-line (format: method, space, request-URI, space - HTTP-version); each of the remaining lines should have the format key, - colon, space, value. -*/ -QHttpRequestHeader::QHttpRequestHeader(const QString &str) - : QHttpHeader(*new QHttpRequestHeaderPrivate) -{ - parse(str); -} - -/*! - This function sets the request method to \a method, the - request-URI to \a path and the protocol-version to \a majorVer and - \a minorVer. The \a path argument must be properly encoded for an - HTTP request. - - \sa method() path() majorVersion() minorVersion() -*/ -void QHttpRequestHeader::setRequest(const QString &method, const QString &path, int majorVer, int minorVer) -{ - Q_D(QHttpRequestHeader); - setValid(true); - d->m = method; - d->p = path; - d->majVer = majorVer; - d->minVer = minorVer; -} - -/*! - Returns the method of the HTTP request header. - - \sa path() majorVersion() minorVersion() setRequest() -*/ -QString QHttpRequestHeader::method() const -{ - Q_D(const QHttpRequestHeader); - return d->m; -} - -/*! - Returns the request-URI of the HTTP request header. - - \sa method() majorVersion() minorVersion() setRequest() -*/ -QString QHttpRequestHeader::path() const -{ - Q_D(const QHttpRequestHeader); - return d->p; -} - -/*! - Returns the major protocol-version of the HTTP request header. - - \sa minorVersion() method() path() setRequest() -*/ -int QHttpRequestHeader::majorVersion() const -{ - Q_D(const QHttpRequestHeader); - return d->majVer; -} - -/*! - Returns the minor protocol-version of the HTTP request header. - - \sa majorVersion() method() path() setRequest() -*/ -int QHttpRequestHeader::minorVersion() const -{ - Q_D(const QHttpRequestHeader); - return d->minVer; -} - -/*! \internal -*/ -bool QHttpRequestHeader::parseLine(const QString &line, int number) -{ - Q_D(QHttpRequestHeader); - if (number != 0) - return QHttpHeader::parseLine(line, number); - - QStringList lst = line.simplified().split(QLatin1String(" ")); - if (lst.count() > 0) { - d->m = lst[0]; - if (lst.count() > 1) { - d->p = lst[1]; - if (lst.count() > 2) { - QString v = lst[2]; - if (v.length() >= 8 && v.left(5) == QLatin1String("HTTP/") && - v[5].isDigit() && v[6] == QLatin1Char('.') && v[7].isDigit()) { - d->majVer = v[5].toLatin1() - '0'; - d->minVer = v[7].toLatin1() - '0'; - return true; - } - } - } - } - - return false; -} - -/*! \reimp -*/ -QString QHttpRequestHeader::toString() const -{ - Q_D(const QHttpRequestHeader); - QString first(QLatin1String("%1 %2")); - QString last(QLatin1String(" HTTP/%3.%4\r\n%5\r\n")); - return first.arg(d->m).arg(d->p) + - last.arg(d->majVer).arg(d->minVer).arg(QHttpHeader::toString()); -} - - -/**************************************************** - * - * QHttp - * - ****************************************************/ -/*! - \class QHttp - \obsolete - \reentrant - - \brief The QHttp class provides an implementation of the HTTP protocol. - - \ingroup network - \inmodule QtNetwork - - - This class provides a direct interface to HTTP that allows you to - download and upload data with the HTTP protocol. - However, for new applications, it is - recommended to use QNetworkAccessManager and QNetworkReply, as - those classes possess a simpler, yet more powerful API - and a more modern protocol implementation. - - The class works asynchronously, so there are no blocking - functions. If an operation cannot be executed immediately, the - function will still return straight away and the operation will be - scheduled for later execution. The results of scheduled operations - are reported via signals. This approach depends on the event loop - being in operation. - - The operations that can be scheduled (they are called "requests" - in the rest of the documentation) are the following: setHost(), - get(), post(), head() and request(). - - All of these requests return a unique identifier that allows you - to keep track of the request that is currently executed. When the - execution of a request starts, the requestStarted() signal with - the identifier is emitted and when the request is finished, the - requestFinished() signal is emitted with the identifier and a bool - that indicates if the request finished with an error. - - To make an HTTP request you must set up suitable HTTP headers. The - following example demonstrates how to request the main HTML page - from the Qt website (i.e., the URL \c http://qt.nokia.com/index.html): - - \snippet doc/src/snippets/code/src_network_access_qhttp.cpp 2 - - For the common HTTP requests \c GET, \c POST and \c HEAD, QHttp - provides the convenience functions get(), post() and head(). They - already use a reasonable header and if you don't have to set - special header fields, they are easier to use. The above example - can also be written as: - - \snippet doc/src/snippets/code/src_network_access_qhttp.cpp 3 - - For this example the following sequence of signals is emitted - (with small variations, depending on network traffic, etc.): - - \snippet doc/src/snippets/code/src_network_access_qhttp.cpp 4 - - The dataSendProgress() and dataReadProgress() signals in the above - example are useful if you want to show a \link QProgressBar - progress bar\endlink to inform the user about the progress of the - download. The second argument is the total size of data. In - certain cases it is not possible to know the total amount in - advance, in which case the second argument is 0. (If you connect - to a QProgressBar a total of 0 results in a busy indicator.) - - When the response header is read, it is reported with the - responseHeaderReceived() signal. - - The readyRead() signal tells you that there is data ready to be - read. The amount of data can then be queried with the - bytesAvailable() function and it can be read with the read() - or readAll() functions. - - If an error occurs during the execution of one of the commands in - a sequence of commands, all the pending commands (i.e. scheduled, - but not yet executed commands) are cleared and no signals are - emitted for them. - - For example, if you have the following sequence of requests - - \snippet doc/src/snippets/code/src_network_access_qhttp.cpp 5 - - and the get() request fails because the host lookup fails, then - the post() request is never executed and the signals would look - like this: - - \snippet doc/src/snippets/code/src_network_access_qhttp.cpp 6 - - You can then get details about the error with the error() and - errorString() functions. Note that only unexpected behavior, like - network failure is considered as an error. If the server response - contains an error status, like a 404 response, this is reported as - a normal response case. So you should always check the \link - QHttpResponseHeader::statusCode() status code \endlink of the - response header. - - The functions currentId() and currentRequest() provide more - information about the currently executing request. - - The functions hasPendingRequests() and clearPendingRequests() - allow you to query and clear the list of pending requests. - - \sa QFtp, QNetworkAccessManager, QNetworkRequest, QNetworkReply, - {HTTP Example}, {Torrent Example} -*/ - -/*! - Constructs a QHttp object. The \a parent parameter is passed on - to the QObject constructor. -*/ -QHttp::QHttp(QObject *parent) - : QObject(*new QHttpPrivate, parent) -{ - Q_D(QHttp); - d->init(); -} - -/*! - Constructs a QHttp object. Subsequent requests are done by - connecting to the server \a hostName on port \a port. - - The \a parent parameter is passed on to the QObject constructor. - - \sa setHost() -*/ -QHttp::QHttp(const QString &hostName, quint16 port, QObject *parent) - : QObject(*new QHttpPrivate, parent) -{ - Q_D(QHttp); - d->init(); - - d->hostName = hostName; - d->port = port; -} - -/*! - Constructs a QHttp object. Subsequent requests are done by - connecting to the server \a hostName on port \a port using the - connection mode \a mode. - - If port is 0, it will use the default port for the \a mode used - (80 for Http and 443 for Https). - - The \a parent parameter is passed on to the QObject constructor. - - \sa setHost() -*/ -QHttp::QHttp(const QString &hostName, ConnectionMode mode, quint16 port, QObject *parent) - : QObject(*new QHttpPrivate, parent) -{ - Q_D(QHttp); - d->init(); - - d->hostName = hostName; - if (port == 0) - port = (mode == ConnectionModeHttp) ? 80 : 443; - d->port = port; - d->mode = mode; -} - -void QHttpPrivate::init() -{ - Q_Q(QHttp); - errorString = QLatin1String(QT_TRANSLATE_NOOP("QHttp", "Unknown error")); - QMetaObject::invokeMethod(q, "_q_slotDoFinished", Qt::QueuedConnection); - post100ContinueTimer.setSingleShot(true); - QObject::connect(&post100ContinueTimer, SIGNAL(timeout()), q, SLOT(_q_continuePost())); -} - -/*! - Destroys the QHttp object. If there is an open connection, it is - closed. -*/ -QHttp::~QHttp() -{ - abort(); -} - -/*! - \enum QHttp::ConnectionMode - \since 4.3 - - This enum is used to specify the mode of connection to use: - - \value ConnectionModeHttp The connection is a regular HTTP connection to the server - \value ConnectionModeHttps The HTTPS protocol is used and the connection is encrypted using SSL. - - When using the HTTPS mode, care should be taken to connect to the sslErrors signal, and - handle possible SSL errors. - - \sa QSslSocket -*/ - -/*! - \enum QHttp::State - - This enum is used to specify the state the client is in: - - \value Unconnected There is no connection to the host. - \value HostLookup A host name lookup is in progress. - \value Connecting An attempt to connect to the host is in progress. - \value Sending The client is sending its request to the server. - \value Reading The client's request has been sent and the client - is reading the server's response. - \value Connected The connection to the host is open, but the client is - neither sending a request, nor waiting for a response. - \value Closing The connection is closing down, but is not yet - closed. (The state will be \c Unconnected when the connection is - closed.) - - \sa stateChanged() state() -*/ - -/*! \enum QHttp::Error - - This enum identifies the error that occurred. - - \value NoError No error occurred. - \value HostNotFound The host name lookup failed. - \value ConnectionRefused The server refused the connection. - \value UnexpectedClose The server closed the connection unexpectedly. - \value InvalidResponseHeader The server sent an invalid response header. - \value WrongContentLength The client could not read the content correctly - because an error with respect to the content length occurred. - \value Aborted The request was aborted with abort(). - \value ProxyAuthenticationRequiredError QHttp is using a proxy, and the - proxy server requires authentication to establish a connection. - \value AuthenticationRequiredError The web server requires authentication - to complete the request. - \value UnknownError An error other than those specified above - occurred. - - \sa error() -*/ - -/*! - \fn void QHttp::stateChanged(int state) - - This signal is emitted when the state of the QHttp object changes. - The argument \a state is the new state of the connection; it is - one of the \l State values. - - This usually happens when a request is started, but it can also - happen when the server closes the connection or when a call to - close() succeeded. - - \sa get() post() head() request() close() state() State -*/ - -/*! - \fn void QHttp::responseHeaderReceived(const QHttpResponseHeader &resp); - - This signal is emitted when the HTTP header of a server response - is available. The header is passed in \a resp. - - \sa get() post() head() request() readyRead() -*/ - -/*! - \fn void QHttp::readyRead(const QHttpResponseHeader &resp) - - This signal is emitted when there is new response data to read. - - If you specified a device in the request where the data should be - written to, then this signal is \e not emitted; instead the data - is written directly to the device. - - The response header is passed in \a resp. - - You can read the data with the readAll() or read() functions - - This signal is useful if you want to process the data in chunks as - soon as it becomes available. If you are only interested in the - complete data, just connect to the requestFinished() signal and - read the data then instead. - - \sa get() post() request() readAll() read() bytesAvailable() -*/ - -/*! - \fn void QHttp::dataSendProgress(int done, int total) - - This signal is emitted when this object sends data to a HTTP - server to inform it about the progress of the upload. - - \a done is the amount of data that has already arrived and \a - total is the total amount of data. It is possible that the total - amount of data that should be transferred cannot be determined, in - which case \a total is 0.(If you connect to a QProgressBar, the - progress bar shows a busy indicator if the total is 0). - - \warning \a done and \a total are not necessarily the size in - bytes, since for large files these values might need to be - "scaled" to avoid overflow. - - \sa dataReadProgress(), post(), request(), QProgressBar -*/ - -/*! - \fn void QHttp::dataReadProgress(int done, int total) - - This signal is emitted when this object reads data from a HTTP - server to indicate the current progress of the download. - - \a done is the amount of data that has already arrived and \a - total is the total amount of data. It is possible that the total - amount of data that should be transferred cannot be determined, in - which case \a total is 0.(If you connect to a QProgressBar, the - progress bar shows a busy indicator if the total is 0). - - \warning \a done and \a total are not necessarily the size in - bytes, since for large files these values might need to be - "scaled" to avoid overflow. - - \sa dataSendProgress() get() post() request() QProgressBar -*/ - -/*! - \fn void QHttp::requestStarted(int id) - - This signal is emitted when processing the request identified by - \a id starts. - - \sa requestFinished() done() -*/ - -/*! - \fn void QHttp::requestFinished(int id, bool error) - - This signal is emitted when processing the request identified by - \a id has finished. \a error is true if an error occurred during - the processing; otherwise \a error is false. - - \sa requestStarted() done() error() errorString() -*/ - -/*! - \fn void QHttp::done(bool error) - - This signal is emitted when the last pending request has finished; - (it is emitted after the last request's requestFinished() signal). - \a error is true if an error occurred during the processing; - otherwise \a error is false. - - \sa requestFinished() error() errorString() -*/ - -#ifndef QT_NO_NETWORKPROXY - -/*! - \fn void QHttp::proxyAuthenticationRequired(const QNetworkProxy &proxy, QAuthenticator *authenticator) - \since 4.3 - - This signal can be emitted when a \a proxy that requires - authentication is used. The \a authenticator object can then be - filled in with the required details to allow authentication and - continue the connection. - - \note It is not possible to use a QueuedConnection to connect to - this signal, as the connection will fail if the authenticator has - not been filled in with new information when the signal returns. - - \sa QAuthenticator, QNetworkProxy -*/ - -#endif - -/*! - \fn void QHttp::authenticationRequired(const QString &hostname, quint16 port, QAuthenticator *authenticator) - \since 4.3 - - This signal can be emitted when a web server on a given \a hostname and \a - port requires authentication. The \a authenticator object can then be - filled in with the required details to allow authentication and continue - the connection. - - \note It is not possible to use a QueuedConnection to connect to - this signal, as the connection will fail if the authenticator has - not been filled in with new information when the signal returns. - - \sa QAuthenticator, QNetworkProxy -*/ - -/*! - \fn void QHttp::sslErrors(const QList &errors) - \since 4.3 - - Forwards the sslErrors signal from the QSslSocket used in QHttp. \a errors - is the list of errors that occurred during the SSL handshake. Unless you - call ignoreSslErrors() from within a slot connected to this signal when an - error occurs, QHttp will tear down the connection immediately after - emitting the signal. - - \sa QSslSocket QSslSocket::ignoreSslErrors() -*/ - -/*! - Aborts the current request and deletes all scheduled requests. - - For the current request, the requestFinished() signal with the \c - error argument \c true is emitted. For all other requests that are - affected by the abort(), no signals are emitted. - - Since this slot also deletes the scheduled requests, there are no - requests left and the done() signal is emitted (with the \c error - argument \c true). - - \sa clearPendingRequests() -*/ -void QHttp::abort() -{ - Q_D(QHttp); - if (d->pending.isEmpty()) - return; - - d->finishedWithError(tr("Request aborted"), Aborted); - clearPendingRequests(); - if (d->socket) - d->socket->abort(); - d->closeConn(); -} - -/*! - Returns the number of bytes that can be read from the response - content at the moment. - - \sa get() post() request() readyRead() read() readAll() -*/ -qint64 QHttp::bytesAvailable() const -{ - Q_D(const QHttp); -#if defined(QHTTP_DEBUG) - qDebug("QHttp::bytesAvailable(): %d bytes", (int)d->rba.size()); -#endif - return qint64(d->rba.size()); -} - -/*! - Reads \a maxlen bytes from the response content into \a data and - returns the number of bytes read. Returns -1 if an error occurred. - - \sa get() post() request() readyRead() bytesAvailable() readAll() -*/ -qint64 QHttp::read(char *data, qint64 maxlen) -{ - Q_D(QHttp); - if (data == 0 && maxlen != 0) { - qWarning("QHttp::read: Null pointer error"); - return -1; - } - if (maxlen >= d->rba.size()) - maxlen = d->rba.size(); - int readSoFar = 0; - while (!d->rba.isEmpty() && readSoFar < maxlen) { - int nextBlockSize = d->rba.nextDataBlockSize(); - int bytesToRead = qMin(maxlen - readSoFar, nextBlockSize); - memcpy(data + readSoFar, d->rba.readPointer(), bytesToRead); - d->rba.free(bytesToRead); - readSoFar += bytesToRead; - } - - d->bytesDone += maxlen; -#if defined(QHTTP_DEBUG) - qDebug("QHttp::read(): read %lld bytes (%lld bytes done)", maxlen, d->bytesDone); -#endif - return maxlen; -} - -/*! - Reads all the bytes from the response content and returns them. - - \sa get() post() request() readyRead() bytesAvailable() read() -*/ -QByteArray QHttp::readAll() -{ - qint64 avail = bytesAvailable(); - QByteArray tmp; - tmp.resize(int(avail)); - qint64 got = read(tmp.data(), int(avail)); - tmp.resize(got); - return tmp; -} - -/*! - Returns the identifier of the HTTP request being executed or 0 if - there is no request being executed (i.e. they've all finished). - - \sa currentRequest() -*/ -int QHttp::currentId() const -{ - Q_D(const QHttp); - if (d->pending.isEmpty()) - return 0; - return d->pending.first()->id; -} - -/*! - Returns the request header of the HTTP request being executed. If - the request is one issued by setHost() or close(), it - returns an invalid request header, i.e. - QHttpRequestHeader::isValid() returns false. - - \sa currentId() -*/ -QHttpRequestHeader QHttp::currentRequest() const -{ - Q_D(const QHttp); - if (!d->pending.isEmpty()) { - QHttpRequest *r = d->pending.first(); - if (r->hasRequestHeader()) - return r->requestHeader(); - } - return QHttpRequestHeader(); -} - -/*! - Returns the received response header of the most recently finished HTTP - request. If no response has yet been received - QHttpResponseHeader::isValid() will return false. - - \sa currentRequest() -*/ -QHttpResponseHeader QHttp::lastResponse() const -{ - Q_D(const QHttp); - return d->response; -} - -/*! - Returns the QIODevice pointer that is used as the data source of the HTTP - request being executed. If there is no current request or if the request - does not use an IO device as the data source, this function returns 0. - - This function can be used to delete the QIODevice in the slot connected to - the requestFinished() signal. - - \sa currentDestinationDevice() post() request() -*/ -QIODevice *QHttp::currentSourceDevice() const -{ - Q_D(const QHttp); - if (d->pending.isEmpty()) - return 0; - return d->pending.first()->sourceDevice(); -} - -/*! - Returns the QIODevice pointer that is used as to store the data of the HTTP - request being executed. If there is no current request or if the request - does not store the data to an IO device, this function returns 0. - - This function can be used to delete the QIODevice in the slot connected to - the requestFinished() signal. - - \sa currentSourceDevice() get() post() request() -*/ -QIODevice *QHttp::currentDestinationDevice() const -{ - Q_D(const QHttp); - if (d->pending.isEmpty()) - return 0; - return d->pending.first()->destinationDevice(); -} - -/*! - Returns true if there are any requests scheduled that have not yet - been executed; otherwise returns false. - - The request that is being executed is \e not considered as a - scheduled request. - - \sa clearPendingRequests() currentId() currentRequest() -*/ -bool QHttp::hasPendingRequests() const -{ - Q_D(const QHttp); - return d->pending.count() > 1; -} - -/*! - Deletes all pending requests from the list of scheduled requests. - This does not affect the request that is being executed. If - you want to stop this as well, use abort(). - - \sa hasPendingRequests() abort() -*/ -void QHttp::clearPendingRequests() -{ - Q_D(QHttp); - // delete all entires except the first one - while (d->pending.count() > 1) - delete d->pending.takeLast(); -} - -/*! - Sets the HTTP server that is used for requests to \a hostName on - port \a port. - - The function does not block; instead, it returns immediately. The request - is scheduled, and its execution is performed asynchronously. The - function returns a unique identifier which is passed by - requestStarted() and requestFinished(). - - When the request is started the requestStarted() signal is - emitted. When it is finished the requestFinished() signal is - emitted. - - \sa get() post() head() request() requestStarted() requestFinished() done() -*/ -int QHttp::setHost(const QString &hostName, quint16 port) -{ - Q_D(QHttp); - return d->addRequest(new QHttpSetHostRequest(hostName, port, ConnectionModeHttp)); -} - -/*! - Sets the HTTP server that is used for requests to \a hostName on - port \a port using the connection mode \a mode. - - If port is 0, it will use the default port for the \a mode used - (80 for HTTP and 443 for HTTPS). - - The function does not block; instead, it returns immediately. The request - is scheduled, and its execution is performed asynchronously. The - function returns a unique identifier which is passed by - requestStarted() and requestFinished(). - - When the request is started the requestStarted() signal is - emitted. When it is finished the requestFinished() signal is - emitted. - - \sa get() post() head() request() requestStarted() requestFinished() done() -*/ -int QHttp::setHost(const QString &hostName, ConnectionMode mode, quint16 port) -{ -#ifdef QT_NO_OPENSSL - if (mode == ConnectionModeHttps) - qWarning("QHttp::setHost: HTTPS connection requested but SSL support not compiled in"); -#endif - Q_D(QHttp); - if (port == 0) - port = (mode == ConnectionModeHttp) ? 80 : 443; - return d->addRequest(new QHttpSetHostRequest(hostName, port, mode)); -} - -/*! - Replaces the internal QTcpSocket that QHttp uses with \a - socket. This is useful if you want to use your own custom QTcpSocket - subclass instead of the plain QTcpSocket that QHttp uses by default. - QHttp does not take ownership of the socket, and will not delete \a - socket when destroyed. - - The function does not block; instead, it returns immediately. The request - is scheduled, and its execution is performed asynchronously. The - function returns a unique identifier which is passed by - requestStarted() and requestFinished(). - - When the request is started the requestStarted() signal is - emitted. When it is finished the requestFinished() signal is - emitted. - - Note: If QHttp is used in a non-GUI thread that runs its own event - loop, you must move \a socket to that thread before calling setSocket(). - - \sa QObject::moveToThread(), {Thread Support in Qt} -*/ -int QHttp::setSocket(QTcpSocket *socket) -{ - Q_D(QHttp); - return d->addRequest(new QHttpSetSocketRequest(socket)); -} - -/*! - This function sets the user name \a userName and password \a - password for web pages that require authentication. - - The function does not block; instead, it returns immediately. The request - is scheduled, and its execution is performed asynchronously. The - function returns a unique identifier which is passed by - requestStarted() and requestFinished(). - - When the request is started the requestStarted() signal is - emitted. When it is finished the requestFinished() signal is - emitted. -*/ -int QHttp::setUser(const QString &userName, const QString &password) -{ - Q_D(QHttp); - return d->addRequest(new QHttpSetUserRequest(userName, password)); -} - -#ifndef QT_NO_NETWORKPROXY - -/*! - Enables HTTP proxy support, using the proxy server \a host on port \a - port. \a username and \a password can be provided if the proxy server - requires authentication. - - Example: - - \snippet doc/src/snippets/code/src_network_access_qhttp.cpp 7 - - QHttp supports non-transparent web proxy servers only, such as the Squid - Web proxy cache server (from \l http://www.squid.org/). For transparent - proxying, such as SOCKS5, use QNetworkProxy instead. - - \note setProxy() has to be called before setHost() for it to take effect. - If setProxy() is called after setHost(), then it will not apply until after - setHost() is called again. - - \sa QFtp::setProxy() -*/ -int QHttp::setProxy(const QString &host, int port, - const QString &username, const QString &password) -{ - Q_D(QHttp); - QNetworkProxy proxy(QNetworkProxy::HttpProxy, host, port, username, password); - return d->addRequest(new QHttpSetProxyRequest(proxy)); -} - -/*! - \overload - - Enables HTTP proxy support using the proxy settings from \a - proxy. If \a proxy is a transparent proxy, QHttp will call - QAbstractSocket::setProxy() on the underlying socket. If the type - is QNetworkProxy::HttpCachingProxy, QHttp will behave like the - previous function. - - \note for compatibility with Qt 4.3, if the proxy type is - QNetworkProxy::HttpProxy and the request type is unencrypted (that - is, ConnectionModeHttp), QHttp will treat the proxy as a caching - proxy. -*/ -int QHttp::setProxy(const QNetworkProxy &proxy) -{ - Q_D(QHttp); - return d->addRequest(new QHttpSetProxyRequest(proxy)); -} - -#endif - -/*! - Sends a get request for \a path to the server set by setHost() or - as specified in the constructor. - - \a path must be a absolute path like \c /index.html or an - absolute URI like \c http://example.com/index.html and - must be encoded with either QUrl::toPercentEncoding() or - QUrl::encodedPath(). - - If the IO device \a to is 0 the readyRead() signal is emitted - every time new content data is available to read. - - If the IO device \a to is not 0, the content data of the response - is written directly to the device. Make sure that the \a to - pointer is valid for the duration of the operation (it is safe to - delete it when the requestFinished() signal is emitted). - - \section1 Request Processing - - The function does not block; instead, it returns immediately. The request - is scheduled, and its execution is performed asynchronously. The - function returns a unique identifier which is passed by - requestStarted() and requestFinished(). - - When the request is started the requestStarted() signal is - emitted. When it is finished the requestFinished() signal is - emitted. - - \sa setHost(), post(), head(), request(), requestStarted(), - requestFinished(), done() -*/ -int QHttp::get(const QString &path, QIODevice *to) -{ - Q_D(QHttp); - QHttpRequestHeader header(QLatin1String("GET"), path); - header.setValue(QLatin1String("Connection"), QLatin1String("Keep-Alive")); - return d->addRequest(new QHttpPGHRequest(header, (QIODevice *) 0, to)); -} - -/*! - Sends a post request for \a path to the server set by setHost() or - as specified in the constructor. - - \a path must be an absolute path like \c /index.html or an - absolute URI like \c http://example.com/index.html and - must be encoded with either QUrl::toPercentEncoding() or - QUrl::encodedPath(). - - The incoming data comes via the \a data IO device. - - If the IO device \a to is 0 the readyRead() signal is emitted - every time new content data is available to read. - - If the IO device \a to is not 0, the content data of the response - is written directly to the device. Make sure that the \a to - pointer is valid for the duration of the operation (it is safe to - delete it when the requestFinished() signal is emitted). - - The function does not block; instead, it returns immediately. The request - is scheduled, and its execution is performed asynchronously. The - function returns a unique identifier which is passed by - requestStarted() and requestFinished(). - - When the request is started the requestStarted() signal is - emitted. When it is finished the requestFinished() signal is - emitted. - - \sa setHost() get() head() request() requestStarted() requestFinished() done() -*/ -int QHttp::post(const QString &path, QIODevice *data, QIODevice *to ) -{ - Q_D(QHttp); - QHttpRequestHeader header(QLatin1String("POST"), path); - header.setValue(QLatin1String("Connection"), QLatin1String("Keep-Alive")); - return d->addRequest(new QHttpPGHRequest(header, data, to)); -} - -/*! - \overload - - \a data is used as the content data of the HTTP request. -*/ -int QHttp::post(const QString &path, const QByteArray &data, QIODevice *to) -{ - Q_D(QHttp); - QHttpRequestHeader header(QLatin1String("POST"), path); - header.setValue(QLatin1String("Connection"), QLatin1String("Keep-Alive")); - return d->addRequest(new QHttpPGHRequest(header, new QByteArray(data), to)); -} - -/*! - Sends a header request for \a path to the server set by setHost() - or as specified in the constructor. - - \a path must be an absolute path like \c /index.html or an - absolute URI like \c http://example.com/index.html. - - The function does not block; instead, it returns immediately. The request - is scheduled, and its execution is performed asynchronously. The - function returns a unique identifier which is passed by - requestStarted() and requestFinished(). - - When the request is started the requestStarted() signal is - emitted. When it is finished the requestFinished() signal is - emitted. - - \sa setHost() get() post() request() requestStarted() requestFinished() done() -*/ -int QHttp::head(const QString &path) -{ - Q_D(QHttp); - QHttpRequestHeader header(QLatin1String("HEAD"), path); - header.setValue(QLatin1String("Connection"), QLatin1String("Keep-Alive")); - return d->addRequest(new QHttpPGHRequest(header, (QIODevice*)0, 0)); -} - -/*! - Sends a request to the server set by setHost() or as specified in - the constructor. Uses the \a header as the HTTP request header. - You are responsible for setting up a header that is appropriate - for your request. - - The incoming data comes via the \a data IO device. - - If the IO device \a to is 0 the readyRead() signal is emitted - every time new content data is available to read. - - If the IO device \a to is not 0, the content data of the response - is written directly to the device. Make sure that the \a to - pointer is valid for the duration of the operation (it is safe to - delete it when the requestFinished() signal is emitted). - - The function does not block; instead, it returns immediately. The request - is scheduled, and its execution is performed asynchronously. The - function returns a unique identifier which is passed by - requestStarted() and requestFinished(). - - When the request is started the requestStarted() signal is - emitted. When it is finished the requestFinished() signal is - emitted. - - \sa setHost() get() post() head() requestStarted() requestFinished() done() -*/ -int QHttp::request(const QHttpRequestHeader &header, QIODevice *data, QIODevice *to) -{ - Q_D(QHttp); - return d->addRequest(new QHttpNormalRequest(header, data, to)); -} - -/*! - \overload - - \a data is used as the content data of the HTTP request. -*/ -int QHttp::request(const QHttpRequestHeader &header, const QByteArray &data, QIODevice *to ) -{ - Q_D(QHttp); - return d->addRequest(new QHttpNormalRequest(header, new QByteArray(data), to)); -} - -/*! - Closes the connection; this is useful if you have a keep-alive - connection and want to close it. - - For the requests issued with get(), post() and head(), QHttp sets - the connection to be keep-alive. You can also do this using the - header you pass to the request() function. QHttp only closes the - connection to the HTTP server if the response header requires it - to do so. - - The function does not block; instead, it returns immediately. The request - is scheduled, and its execution is performed asynchronously. The - function returns a unique identifier which is passed by - requestStarted() and requestFinished(). - - When the request is started the requestStarted() signal is - emitted. When it is finished the requestFinished() signal is - emitted. - - If you want to close the connection immediately, you have to use - abort() instead. - - \sa stateChanged() abort() requestStarted() requestFinished() done() -*/ -int QHttp::close() -{ - Q_D(QHttp); - return d->addRequest(new QHttpCloseRequest()); -} - -/*! - \obsolete - - Behaves the same as close(). -*/ -int QHttp::closeConnection() -{ - Q_D(QHttp); - return d->addRequest(new QHttpCloseRequest()); -} - -int QHttpPrivate::addRequest(QHttpNormalRequest *req) -{ - QHttpRequestHeader h = req->requestHeader(); - if (h.path().isEmpty()) { - // note: the following qWarning is autotested. If you change it, change the test too. - qWarning("QHttp: empty path requested is invalid -- using '/'"); - h.setRequest(h.method(), QLatin1String("/"), h.majorVersion(), h.minorVersion()); - req->setRequestHeader(h); - } - - // contine below - return addRequest(static_cast(req)); -} - -int QHttpPrivate::addRequest(QHttpRequest *req) -{ - Q_Q(QHttp); - pending.append(req); - - if (pending.count() == 1) { - // don't emit the requestStarted() signal before the id is returned - QMetaObject::invokeMethod(q, "_q_startNextRequest", Qt::QueuedConnection); - } - return req->id; -} - -void QHttpPrivate::_q_startNextRequest() -{ - Q_Q(QHttp); - if (pending.isEmpty()) - return; - QHttpRequest *r = pending.first(); - - error = QHttp::NoError; - errorString = QLatin1String(QT_TRANSLATE_NOOP("QHttp", "Unknown error")); - - if (q->bytesAvailable() != 0) - q->readAll(); // clear the data - emit q->requestStarted(r->id); - r->start(q); -} - -void QHttpPrivate::_q_slotSendRequest() -{ - if (hostName.isNull()) { - finishedWithError(QLatin1String(QT_TRANSLATE_NOOP("QHttp", "No server set to connect to")), - QHttp::UnknownError); - return; - } - - QString connectionHost = hostName; - int connectionPort = port; - bool sslInUse = false; - -#ifndef QT_NO_OPENSSL - QSslSocket *sslSocket = qobject_cast(socket); - if (mode == QHttp::ConnectionModeHttps || (sslSocket && sslSocket->isEncrypted())) - sslInUse = true; -#endif - -#ifndef QT_NO_NETWORKPROXY - bool cachingProxyInUse = false; - bool transparentProxyInUse = false; - if (proxy.type() == QNetworkProxy::DefaultProxy) - proxy = QNetworkProxy::applicationProxy(); - - if (proxy.type() == QNetworkProxy::HttpCachingProxy) { - if (proxy.hostName().isEmpty()) - proxy.setType(QNetworkProxy::NoProxy); - else - cachingProxyInUse = true; - } else if (proxy.type() == QNetworkProxy::HttpProxy) { - // Compatibility behaviour: HttpProxy can be used to mean both - // transparent and caching proxy - if (proxy.hostName().isEmpty()) { - proxy.setType(QNetworkProxy::NoProxy); - } else if (sslInUse) { - // Disallow use of caching proxy with HTTPS; instead fall back to - // transparent HTTP CONNECT proxying. - transparentProxyInUse = true; - } else { - proxy.setType(QNetworkProxy::HttpCachingProxy); - cachingProxyInUse = true; - } - } - - // Proxy support. Insert the Proxy-Authorization item into the - // header before it's sent off to the proxy. - if (cachingProxyInUse) { - QUrl proxyUrl; - proxyUrl.setScheme(QLatin1String("http")); - proxyUrl.setHost(hostName); - if (port && port != 80) - proxyUrl.setPort(port); - QString request = QString::fromAscii(proxyUrl.resolved(QUrl::fromEncoded(header.path().toLatin1())).toEncoded()); - - header.setRequest(header.method(), request, header.majorVersion(), header.minorVersion()); - header.setValue(QLatin1String("Proxy-Connection"), QLatin1String("keep-alive")); - - QAuthenticatorPrivate *auth = QAuthenticatorPrivate::getPrivate(proxyAuthenticator); - if (auth && auth->method != QAuthenticatorPrivate::None) { - QByteArray response = auth->calculateResponse(header.method().toLatin1(), header.path().toLatin1()); - header.setValue(QLatin1String("Proxy-Authorization"), QString::fromLatin1(response)); - } - - connectionHost = proxy.hostName(); - connectionPort = proxy.port(); - } - - if (transparentProxyInUse || sslInUse) { - socket->setProxy(proxy); - } -#endif - - // Username support. Insert the user and password into the query - // string. - QAuthenticatorPrivate *auth = QAuthenticatorPrivate::getPrivate(authenticator); - if (auth && auth->method != QAuthenticatorPrivate::None) { - QByteArray response = auth->calculateResponse(header.method().toLatin1(), header.path().toLatin1()); - header.setValue(QLatin1String("Authorization"), QString::fromLatin1(response)); - } - - // Do we need to setup a new connection or can we reuse an - // existing one? - if (socket->peerName() != connectionHost || socket->peerPort() != connectionPort - || socket->state() != QTcpSocket::ConnectedState -#ifndef QT_NO_OPENSSL - || (sslSocket && sslSocket->isEncrypted() != (mode == QHttp::ConnectionModeHttps)) -#endif - ) { - socket->blockSignals(true); - socket->abort(); - socket->blockSignals(false); - - setState(QHttp::Connecting); -#ifndef QT_NO_OPENSSL - if (sslSocket && mode == QHttp::ConnectionModeHttps) { - sslSocket->connectToHostEncrypted(hostName, port); - } else -#endif - { - socket->connectToHost(connectionHost, connectionPort); - } - } else { - _q_slotConnected(); - } - -} - -void QHttpPrivate::finishedWithSuccess() -{ - Q_Q(QHttp); - if (pending.isEmpty()) - return; - QHttpRequest *r = pending.first(); - - // did we recurse? - if (r->finished) - return; - r->finished = true; - hasFinishedWithError = false; - - emit q->requestFinished(r->id, false); - if (hasFinishedWithError) { - // we recursed and changed into an error. The finishedWithError function - // below has emitted the done(bool) signal and cleared the queue by now. - return; - } - - pending.removeFirst(); - delete r; - - if (pending.isEmpty()) { - emit q->done(false); - } else { - _q_startNextRequest(); - } -} - -void QHttpPrivate::finishedWithError(const QString &detail, int errorCode) -{ - Q_Q(QHttp); - if (pending.isEmpty()) - return; - QHttpRequest *r = pending.first(); - hasFinishedWithError = true; - - error = QHttp::Error(errorCode); - errorString = detail; - - // did we recurse? - if (!r->finished) { - r->finished = true; - emit q->requestFinished(r->id, true); - } - - while (!pending.isEmpty()) - delete pending.takeFirst(); - emit q->done(hasFinishedWithError); -} - -void QHttpPrivate::_q_slotClosed() -{ - Q_Q(QHttp); - - if (state == QHttp::Reading) { - if (response.hasKey(QLatin1String("content-length"))) { - // We got Content-Length, so did we get all bytes? - if (bytesDone + q->bytesAvailable() != response.contentLength()) { - finishedWithError(QLatin1String(QT_TRANSLATE_NOOP("QHttp", "Wrong content length")), QHttp::WrongContentLength); - } - } - } else if (state == QHttp::Connecting || state == QHttp::Sending) { - finishedWithError(QLatin1String(QT_TRANSLATE_NOOP("QHttp", "Server closed connection unexpectedly")), QHttp::UnexpectedClose); - } - - postDevice = 0; - if (state != QHttp::Closing) - setState(QHttp::Closing); - QMetaObject::invokeMethod(q, "_q_slotDoFinished", Qt::QueuedConnection); -} - -void QHttpPrivate::_q_continuePost() -{ - if (pendingPost) { - pendingPost = false; - setState(QHttp::Sending); - _q_slotBytesWritten(0); - } -} - -void QHttpPrivate::_q_slotConnected() -{ - if (state != QHttp::Sending) { - bytesDone = 0; - setState(QHttp::Sending); - } - - QString str = header.toString(); - bytesTotal = str.length(); - socket->write(str.toLatin1(), bytesTotal); -#if defined(QHTTP_DEBUG) - qDebug("QHttp: write request header %p:\n---{\n%s}---", &header, str.toLatin1().constData()); -#endif - - if (postDevice) { - postDevice->seek(0); // reposition the device - bytesTotal += postDevice->size(); - //check for 100-continue - if (header.value(QLatin1String("expect")).contains(QLatin1String("100-continue"), Qt::CaseInsensitive)) { - //create a time out for 2 secs. - pendingPost = true; - post100ContinueTimer.start(2000); - } - } else { - bytesTotal += buffer.size(); - socket->write(buffer, buffer.size()); - } -} - -void QHttpPrivate::_q_slotError(QAbstractSocket::SocketError err) -{ - Q_Q(QHttp); - postDevice = 0; - - if (state == QHttp::Connecting || state == QHttp::Reading || state == QHttp::Sending) { - switch (err) { - case QTcpSocket::ConnectionRefusedError: - finishedWithError(QLatin1String(QT_TRANSLATE_NOOP("QHttp", "Connection refused (or timed out)")), QHttp::ConnectionRefused); - break; - case QTcpSocket::HostNotFoundError: - finishedWithError(QString::fromLatin1(QT_TRANSLATE_NOOP("QHttp", "Host %1 not found")) - .arg(socket->peerName()), QHttp::HostNotFound); - break; - case QTcpSocket::RemoteHostClosedError: - if (state == QHttp::Sending && reconnectAttempts--) { - setState(QHttp::Closing); - setState(QHttp::Unconnected); - socket->blockSignals(true); - socket->abort(); - socket->blockSignals(false); - QMetaObject::invokeMethod(q, "_q_slotSendRequest", Qt::QueuedConnection); - return; - } - break; -#ifndef QT_NO_NETWORKPROXY - case QTcpSocket::ProxyAuthenticationRequiredError: - finishedWithError(socket->errorString(), QHttp::ProxyAuthenticationRequiredError); - break; -#endif - default: - finishedWithError(QLatin1String(QT_TRANSLATE_NOOP("QHttp", "HTTP request failed")), QHttp::UnknownError); - break; - } - } - - closeConn(); -} - -#ifndef QT_NO_OPENSSL -void QHttpPrivate::_q_slotEncryptedBytesWritten(qint64 written) -{ - Q_UNUSED(written); - postMoreData(); -} -#endif - -void QHttpPrivate::_q_slotBytesWritten(qint64 written) -{ - Q_Q(QHttp); - bytesDone += written; - emit q->dataSendProgress(bytesDone, bytesTotal); - postMoreData(); -} - -// Send the POST data -void QHttpPrivate::postMoreData() -{ - if (pendingPost) - return; - - if (!postDevice) - return; - - // the following is backported code from Qt 4.6 QNetworkAccessManager. - // We also have to check the encryptedBytesToWrite() if it is an SSL socket. -#ifndef QT_NO_OPENSSL - QSslSocket *sslSocket = qobject_cast(socket); - // if it is really an ssl socket, check more than just bytesToWrite() - if ((socket->bytesToWrite() + (sslSocket ? sslSocket->encryptedBytesToWrite() : 0)) == 0) { -#else - if (socket->bytesToWrite() == 0) { -#endif - int max = qMin(4096, postDevice->size() - postDevice->pos()); - QByteArray arr; - arr.resize(max); - - int n = postDevice->read(arr.data(), max); - if (n < 0) { - qWarning("Could not read enough bytes from the device"); - closeConn(); - return; - } - if (postDevice->atEnd()) { - postDevice = 0; - } - - socket->write(arr, n); - } -} - -void QHttpPrivate::_q_slotReadyRead() -{ - Q_Q(QHttp); - QHttp::State oldState = state; - if (state != QHttp::Reading) { - setState(QHttp::Reading); - readHeader = true; - headerStr = QLatin1String(""); - bytesDone = 0; - chunkedSize = -1; - repost = false; - } - - while (readHeader) { - bool end = false; - QString tmp; - while (!end && socket->canReadLine()) { - tmp = QString::fromAscii(socket->readLine()); - if (tmp == QLatin1String("\r\n") || tmp == QLatin1String("\n") || tmp.isEmpty()) - end = true; - else - headerStr += tmp; - } - - if (!end) - return; - - response = QHttpResponseHeader(headerStr); - headerStr = QLatin1String(""); -#if defined(QHTTP_DEBUG) - qDebug("QHttp: read response header:\n---{\n%s}---", response.toString().toLatin1().constData()); -#endif - // Check header - if (!response.isValid()) { - finishedWithError(QLatin1String(QT_TRANSLATE_NOOP("QHttp", "Invalid HTTP response header")), - QHttp::InvalidResponseHeader); - closeConn(); - return; - } - - int statusCode = response.statusCode(); - if (statusCode == 401 || statusCode == 407) { // (Proxy) Authentication required - QAuthenticator *auth = -#ifndef QT_NO_NETWORKPROXY - statusCode == 407 - ? &proxyAuthenticator : -#endif - &authenticator; - if (auth->isNull()) - auth->detach(); - QAuthenticatorPrivate *priv = QAuthenticatorPrivate::getPrivate(*auth); - priv->parseHttpResponse(response, (statusCode == 407)); - if (priv->phase == QAuthenticatorPrivate::Done) { - socket->blockSignals(true); -#ifndef QT_NO_NETWORKPROXY - if (statusCode == 407) - emit q->proxyAuthenticationRequired(proxy, auth); - else -#endif - emit q->authenticationRequired(hostName, port, auth); - socket->blockSignals(false); - } else if (priv->phase == QAuthenticatorPrivate::Invalid) { - finishedWithError(QLatin1String(QT_TRANSLATE_NOOP("QHttp", "Unknown authentication method")), - QHttp::AuthenticationRequiredError); - closeConn(); - return; - } - - // priv->phase will get reset to QAuthenticatorPrivate::Start if the authenticator got modified in the signal above. - if (priv->phase == QAuthenticatorPrivate::Done) { -#ifndef QT_NO_NETWORKPROXY - if (statusCode == 407) - finishedWithError(QLatin1String(QT_TRANSLATE_NOOP("QHttp", "Proxy authentication required")), - QHttp::ProxyAuthenticationRequiredError); - else -#endif - finishedWithError(QLatin1String(QT_TRANSLATE_NOOP("QHttp", "Authentication required")), - QHttp::AuthenticationRequiredError); - closeConn(); - return; - } else { - // close the connection if it isn't already and reconnect using the chosen authentication method - bool willClose = (response.value(QLatin1String("proxy-connection")).toLower() == QLatin1String("close")) - || (response.value(QLatin1String("connection")).toLower() == QLatin1String("close")); - if (willClose) { - if (socket) { - setState(QHttp::Closing); - socket->blockSignals(true); - socket->close(); - socket->blockSignals(false); - socket->readAll(); - } - _q_slotSendRequest(); - return; - } else { - repost = true; - } - } - } else { - buffer.clear(); - } - - if (response.statusCode() == 100 && pendingPost) { - // if we have pending POST, start sending data otherwise ignore - post100ContinueTimer.stop(); - QMetaObject::invokeMethod(q, "_q_continuePost", Qt::QueuedConnection); - return; - } - - // The 100-continue header is ignored (in case of no 'expect:100-continue' header), - // because when using the POST method, we send both the request header and data in - // one chunk. - if (response.statusCode() != 100) { - post100ContinueTimer.stop(); - pendingPost = false; - readHeader = false; - if (response.hasKey(QLatin1String("transfer-encoding")) && - response.value(QLatin1String("transfer-encoding")).toLower().contains(QLatin1String("chunked"))) - chunkedSize = 0; - - if (!repost) - emit q->responseHeaderReceived(response); - if (state == QHttp::Unconnected || state == QHttp::Closing) - return; - } else { - // Restore the state, the next incoming data will be treated as if - // we never say the 100 response. - state = oldState; - } - } - - bool everythingRead = false; - - if (q->currentRequest().method() == QLatin1String("HEAD") || - response.statusCode() == 304 || response.statusCode() == 204 || - response.statusCode() == 205) { - // HEAD requests have only headers as replies - // These status codes never have a body: - // 304 Not Modified - // 204 No Content - // 205 Reset Content - everythingRead = true; - } else { - qint64 n = socket->bytesAvailable(); - QByteArray *arr = 0; - if (chunkedSize != -1) { - // transfer-encoding is chunked - for (;;) { - // get chunk size - if (chunkedSize == 0) { - if (!socket->canReadLine()) - break; - QString sizeString = QString::fromAscii(socket->readLine()); - int tPos = sizeString.indexOf(QLatin1Char(';')); - if (tPos != -1) - sizeString.truncate(tPos); - bool ok; - chunkedSize = sizeString.toInt(&ok, 16); - if (!ok) { - finishedWithError(QLatin1String(QT_TRANSLATE_NOOP("QHttp", "Invalid HTTP chunked body")), - QHttp::WrongContentLength); - closeConn(); - delete arr; - return; - } - if (chunkedSize == 0) // last-chunk - chunkedSize = -2; - } - - // read trailer - while (chunkedSize == -2 && socket->canReadLine()) { - QString read = QString::fromAscii(socket->readLine()); - if (read == QLatin1String("\r\n") || read == QLatin1String("\n")) - chunkedSize = -1; - } - if (chunkedSize == -1) { - everythingRead = true; - break; - } - - // make sure that you can read the terminating CRLF, - // otherwise wait until next time... - n = socket->bytesAvailable(); - if (n == 0) - break; - if (n == chunkedSize || n == chunkedSize+1) { - n = chunkedSize - 1; - if (n == 0) - break; - } - - // read data - qint64 toRead = chunkedSize < 0 ? n : qMin(n, chunkedSize); - if (!arr) - arr = new QByteArray; - uint oldArrSize = arr->size(); - arr->resize(oldArrSize + toRead); - qint64 read = socket->read(arr->data()+oldArrSize, toRead); - arr->resize(oldArrSize + read); - - chunkedSize -= read; - - if (chunkedSize == 0 && n - read >= 2) { - // read terminating CRLF - char tmp[2]; - socket->read(tmp, 2); - if (tmp[0] != '\r' || tmp[1] != '\n') { - finishedWithError(QLatin1String(QT_TRANSLATE_NOOP("QHttp", "Invalid HTTP chunked body")), - QHttp::WrongContentLength); - closeConn(); - delete arr; - return; - } - } - } - } else if (response.hasContentLength()) { - if (repost && (n < response.contentLength())) { - // wait for the content to be available fully - // if repost is required, the content is ignored - return; - } - n = qMin(qint64(response.contentLength() - bytesDone), n); - if (n > 0) { - arr = new QByteArray; - arr->resize(n); - qint64 read = socket->read(arr->data(), n); - arr->resize(read); - } - if (bytesDone + q->bytesAvailable() + n == response.contentLength()) - everythingRead = true; - } else if (n > 0) { - // workaround for VC++ bug - QByteArray temp = socket->readAll(); - arr = new QByteArray(temp); - } - - if (arr && !repost) { - n = arr->size(); - if (toDevice) { - qint64 bytesWritten; - bytesWritten = toDevice->write(*arr, n); - delete arr; - arr = 0; - // if writing to the device does not succeed, quit with error - if (bytesWritten == -1 || bytesWritten < n) { - finishedWithError(QLatin1String(QT_TRANSLATE_NOOP("QHttp", "Error writing response to device")), QHttp::UnknownError); - } else { - bytesDone += bytesWritten; -#if defined(QHTTP_DEBUG) - qDebug("QHttp::_q_slotReadyRead(): read %lld bytes (%lld bytes done)", n, bytesDone); -#endif - } - if (response.hasContentLength()) - emit q->dataReadProgress(bytesDone, response.contentLength()); - else - emit q->dataReadProgress(bytesDone, 0); - } else { - char *ptr = rba.reserve(arr->size()); - memcpy(ptr, arr->data(), arr->size()); - delete arr; - arr = 0; -#if defined(QHTTP_DEBUG) - qDebug("QHttp::_q_slotReadyRead(): read %lld bytes (%lld bytes done)", n, bytesDone + q->bytesAvailable()); -#endif - if (response.hasContentLength()) - emit q->dataReadProgress(bytesDone + q->bytesAvailable(), response.contentLength()); - else - emit q->dataReadProgress(bytesDone + q->bytesAvailable(), 0); - emit q->readyRead(response); - } - } - - delete arr; - } - - if (everythingRead) { - if (repost) { - _q_slotSendRequest(); - return; - } - // Handle "Connection: close" - if (response.value(QLatin1String("connection")).toLower() == QLatin1String("close")) { - closeConn(); - } else { - setState(QHttp::Connected); - // Start a timer, so that we emit the keep alive signal - // "after" this method returned. - QMetaObject::invokeMethod(q, "_q_slotDoFinished", Qt::QueuedConnection); - } - } -} - -void QHttpPrivate::_q_slotDoFinished() -{ - if (state == QHttp::Connected) { - finishedWithSuccess(); - } else if (state != QHttp::Unconnected) { - setState(QHttp::Unconnected); - finishedWithSuccess(); - } -} - - -/*! - Returns the current state of the object. When the state changes, - the stateChanged() signal is emitted. - - \sa State stateChanged() -*/ -QHttp::State QHttp::state() const -{ - Q_D(const QHttp); - return d->state; -} - -/*! - Returns the last error that occurred. This is useful to find out - what happened when receiving a requestFinished() or a done() - signal with the \c error argument \c true. - - If you start a new request, the error status is reset to \c NoError. -*/ -QHttp::Error QHttp::error() const -{ - Q_D(const QHttp); - return d->error; -} - -/*! - Returns a human-readable description of the last error that - occurred. This is useful to present a error message to the user - when receiving a requestFinished() or a done() signal with the \c - error argument \c true. -*/ -QString QHttp::errorString() const -{ - Q_D(const QHttp); - return d->errorString; -} - -void QHttpPrivate::setState(int s) -{ - Q_Q(QHttp); -#if defined(QHTTP_DEBUG) - qDebug("QHttp state changed %d -> %d", state, s); -#endif - state = QHttp::State(s); - emit q->stateChanged(s); -} - -void QHttpPrivate::closeConn() -{ - Q_Q(QHttp); - // If no connection is open -> ignore - if (state == QHttp::Closing || state == QHttp::Unconnected) - return; - - postDevice = 0; - setState(QHttp::Closing); - - // Already closed ? - if (!socket || !socket->isOpen()) { - QMetaObject::invokeMethod(q, "_q_slotDoFinished", Qt::QueuedConnection); - } else { - // Close now. - socket->close(); - } -} - -void QHttpPrivate::setSock(QTcpSocket *sock) -{ - Q_Q(const QHttp); - - // disconnect all existing signals - if (socket) - socket->disconnect(); - if (deleteSocket) - delete socket; - - // use the new QTcpSocket socket, or create one if socket is 0. - deleteSocket = (sock == 0); - socket = sock; - if (!socket) { -#ifndef QT_NO_OPENSSL - if (QSslSocket::supportsSsl()) - socket = new QSslSocket(); - else -#endif - socket = new QTcpSocket(); - } - - // connect all signals - QObject::connect(socket, SIGNAL(connected()), q, SLOT(_q_slotConnected())); - QObject::connect(socket, SIGNAL(disconnected()), q, SLOT(_q_slotClosed())); - QObject::connect(socket, SIGNAL(readyRead()), q, SLOT(_q_slotReadyRead())); - QObject::connect(socket, SIGNAL(error(QAbstractSocket::SocketError)), q, SLOT(_q_slotError(QAbstractSocket::SocketError))); - QObject::connect(socket, SIGNAL(bytesWritten(qint64)), - q, SLOT(_q_slotBytesWritten(qint64))); -#ifndef QT_NO_NETWORKPROXY - QObject::connect(socket, SIGNAL(proxyAuthenticationRequired(QNetworkProxy,QAuthenticator*)), - q, SIGNAL(proxyAuthenticationRequired(QNetworkProxy,QAuthenticator*))); -#endif - -#ifndef QT_NO_OPENSSL - if (qobject_cast(socket)) { - QObject::connect(socket, SIGNAL(sslErrors(QList)), - q, SIGNAL(sslErrors(QList))); - QObject::connect(socket, SIGNAL(encryptedBytesWritten(qint64)), - q, SLOT(_q_slotEncryptedBytesWritten(qint64))); - } -#endif -} - -/*! - Tells the QSslSocket used for the Http connection to ignore the errors - reported in the sslErrors() signal. - - Note that this function must be called from within a slot connected to the - sslErrors() signal to have any effect. - - \sa QSslSocket QSslSocket::sslErrors() -*/ -#ifndef QT_NO_OPENSSL -void QHttp::ignoreSslErrors() -{ - Q_D(QHttp); - QSslSocket *sslSocket = qobject_cast(d->socket); - if (sslSocket) - sslSocket->ignoreSslErrors(); -} -#endif - -QT_END_NAMESPACE - -#include "moc_qhttp.cpp" - -#endif diff --git a/src/network/access/qhttp.h b/src/network/access/qhttp.h deleted file mode 100644 index 5dd3b5bc3d..0000000000 --- a/src/network/access/qhttp.h +++ /dev/null @@ -1,311 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtNetwork module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef QHTTP_H -#define QHTTP_H - -#include -#include -#include -#include -#include - -QT_BEGIN_HEADER - -QT_BEGIN_NAMESPACE - -QT_MODULE(Network) - -#ifndef QT_NO_HTTP - -class QTcpSocket; -class QTimerEvent; -class QIODevice; -class QAuthenticator; -class QNetworkProxy; -class QSslError; - -class QHttpPrivate; - -class QHttpHeaderPrivate; -class Q_NETWORK_EXPORT QHttpHeader -{ -public: - QHttpHeader(); - QHttpHeader(const QHttpHeader &header); - QHttpHeader(const QString &str); - virtual ~QHttpHeader(); - - QHttpHeader &operator=(const QHttpHeader &h); - - void setValue(const QString &key, const QString &value); - void setValues(const QList > &values); - void addValue(const QString &key, const QString &value); - QList > values() const; - bool hasKey(const QString &key) const; - QStringList keys() const; - QString value(const QString &key) const; - QStringList allValues(const QString &key) const; - void removeValue(const QString &key); - void removeAllValues(const QString &key); - - // ### Qt 5: change to qint64 - bool hasContentLength() const; - uint contentLength() const; - void setContentLength(int len); - - bool hasContentType() const; - QString contentType() const; - void setContentType(const QString &type); - - virtual QString toString() const; - bool isValid() const; - - virtual int majorVersion() const = 0; - virtual int minorVersion() const = 0; - -protected: - virtual bool parseLine(const QString &line, int number); - bool parse(const QString &str); - void setValid(bool); - - QHttpHeader(QHttpHeaderPrivate &dd, const QString &str = QString()); - QHttpHeader(QHttpHeaderPrivate &dd, const QHttpHeader &header); - QScopedPointer d_ptr; - -private: - Q_DECLARE_PRIVATE(QHttpHeader) -}; - -class QHttpResponseHeaderPrivate; -class Q_NETWORK_EXPORT QHttpResponseHeader : public QHttpHeader -{ -public: - QHttpResponseHeader(); - QHttpResponseHeader(const QHttpResponseHeader &header); - QHttpResponseHeader(const QString &str); - QHttpResponseHeader(int code, const QString &text = QString(), int majorVer = 1, int minorVer = 1); - QHttpResponseHeader &operator=(const QHttpResponseHeader &header); - - void setStatusLine(int code, const QString &text = QString(), int majorVer = 1, int minorVer = 1); - - int statusCode() const; - QString reasonPhrase() const; - - int majorVersion() const; - int minorVersion() const; - - QString toString() const; - -protected: - bool parseLine(const QString &line, int number); - -private: - Q_DECLARE_PRIVATE(QHttpResponseHeader) - friend class QHttpPrivate; -}; - -class QHttpRequestHeaderPrivate; -class Q_NETWORK_EXPORT QHttpRequestHeader : public QHttpHeader -{ -public: - QHttpRequestHeader(); - QHttpRequestHeader(const QString &method, const QString &path, int majorVer = 1, int minorVer = 1); - QHttpRequestHeader(const QHttpRequestHeader &header); - QHttpRequestHeader(const QString &str); - QHttpRequestHeader &operator=(const QHttpRequestHeader &header); - - void setRequest(const QString &method, const QString &path, int majorVer = 1, int minorVer = 1); - - QString method() const; - QString path() const; - - int majorVersion() const; - int minorVersion() const; - - QString toString() const; - -protected: - bool parseLine(const QString &line, int number); - -private: - Q_DECLARE_PRIVATE(QHttpRequestHeader) -}; - -class Q_NETWORK_EXPORT QHttp : public QObject -{ - Q_OBJECT - -public: - enum ConnectionMode { - ConnectionModeHttp, - ConnectionModeHttps - }; - - explicit QHttp(QObject *parent = 0); - QHttp(const QString &hostname, quint16 port = 80, QObject *parent = 0); - QHttp(const QString &hostname, ConnectionMode mode, quint16 port = 0, QObject *parent = 0); - virtual ~QHttp(); - - enum State { - Unconnected, - HostLookup, - Connecting, - Sending, - Reading, - Connected, - Closing - }; - enum Error { - NoError, - UnknownError, - HostNotFound, - ConnectionRefused, - UnexpectedClose, - InvalidResponseHeader, - WrongContentLength, - Aborted, - AuthenticationRequiredError, - ProxyAuthenticationRequiredError - }; - - int setHost(const QString &hostname, quint16 port = 80); - int setHost(const QString &hostname, ConnectionMode mode, quint16 port = 0); - - int setSocket(QTcpSocket *socket); - int setUser(const QString &username, const QString &password = QString()); - -#ifndef QT_NO_NETWORKPROXY - int setProxy(const QString &host, int port, - const QString &username = QString(), - const QString &password = QString()); - int setProxy(const QNetworkProxy &proxy); -#endif - - int get(const QString &path, QIODevice *to=0); - int post(const QString &path, QIODevice *data, QIODevice *to=0 ); - int post(const QString &path, const QByteArray &data, QIODevice *to=0); - int head(const QString &path); - int request(const QHttpRequestHeader &header, QIODevice *device=0, QIODevice *to=0); - int request(const QHttpRequestHeader &header, const QByteArray &data, QIODevice *to=0); - - int closeConnection(); - int close(); - - qint64 bytesAvailable() const; - qint64 read(char *data, qint64 maxlen); - QByteArray readAll(); - - int currentId() const; - QIODevice *currentSourceDevice() const; - QIODevice *currentDestinationDevice() const; - QHttpRequestHeader currentRequest() const; - QHttpResponseHeader lastResponse() const; - bool hasPendingRequests() const; - void clearPendingRequests(); - - State state() const; - - Error error() const; - QString errorString() const; - -public Q_SLOTS: - void abort(); - -#ifndef QT_NO_OPENSSL - void ignoreSslErrors(); -#endif - -Q_SIGNALS: - void stateChanged(int); - void responseHeaderReceived(const QHttpResponseHeader &resp); - void readyRead(const QHttpResponseHeader &resp); - - // ### Qt 5: change to qint64 - void dataSendProgress(int, int); - void dataReadProgress(int, int); - - void requestStarted(int); - void requestFinished(int, bool); - void done(bool); - -#ifndef QT_NO_NETWORKPROXY - void proxyAuthenticationRequired(const QNetworkProxy &proxy, QAuthenticator *); -#endif - void authenticationRequired(const QString &hostname, quint16 port, QAuthenticator *); - -#ifndef QT_NO_OPENSSL - void sslErrors(const QList &errors); -#endif - -private: - Q_DISABLE_COPY(QHttp) - Q_DECLARE_PRIVATE(QHttp) - - Q_PRIVATE_SLOT(d_func(), void _q_startNextRequest()) - Q_PRIVATE_SLOT(d_func(), void _q_slotReadyRead()) - Q_PRIVATE_SLOT(d_func(), void _q_slotConnected()) - Q_PRIVATE_SLOT(d_func(), void _q_slotError(QAbstractSocket::SocketError)) - Q_PRIVATE_SLOT(d_func(), void _q_slotClosed()) - Q_PRIVATE_SLOT(d_func(), void _q_slotBytesWritten(qint64 numBytes)) -#ifndef QT_NO_OPENSSL - Q_PRIVATE_SLOT(d_func(), void _q_slotEncryptedBytesWritten(qint64 numBytes)) -#endif - Q_PRIVATE_SLOT(d_func(), void _q_slotDoFinished()) - Q_PRIVATE_SLOT(d_func(), void _q_slotSendRequest()) - Q_PRIVATE_SLOT(d_func(), void _q_continuePost()) - - friend class QHttpNormalRequest; - friend class QHttpSetHostRequest; - friend class QHttpSetSocketRequest; - friend class QHttpSetUserRequest; - friend class QHttpSetProxyRequest; - friend class QHttpCloseRequest; - friend class QHttpPGHRequest; -}; - -#endif // QT_NO_HTTP - -QT_END_NAMESPACE - -QT_END_HEADER - -#endif // QHTTP_H diff --git a/src/network/access/qhttpheader.cpp b/src/network/access/qhttpheader.cpp new file mode 100644 index 0000000000..58c24cf3f5 --- /dev/null +++ b/src/network/access/qhttpheader.cpp @@ -0,0 +1,770 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtNetwork module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +//#define QHTTP_DEBUG + +#include +#include "qhttpheader_p.h" + +#ifndef QT_NO_HTTP +# include "private/qobject_p.h" +# include "qtcpsocket.h" +# include "qsslsocket.h" +# include "qtextstream.h" +# include "qmap.h" +# include "qlist.h" +# include "qstring.h" +# include "qstringlist.h" +# include "qbuffer.h" +# include "private/qringbuffer_p.h" +# include "qcoreevent.h" +# include "qurl.h" +# include "qnetworkproxy.h" +# include "qauthenticator.h" +# include "qauthenticator_p.h" +# include "qdebug.h" +# include "qtimer.h" +#endif + +#ifndef QT_NO_HTTP + +QT_BEGIN_NAMESPACE + +class QHttpHeaderPrivate +{ + Q_DECLARE_PUBLIC(QHttpHeader) +public: + inline virtual ~QHttpHeaderPrivate() {} + + QList > values; + bool valid; + QHttpHeader *q_ptr; +}; + +/**************************************************** + * + * QHttpHeader + * + ****************************************************/ + +/*! + \class QHttpHeader + \obsolete + \brief The QHttpHeader class contains header information for HTTP. + + \ingroup network + \inmodule QtNetwork + + In most cases you should use the more specialized derivatives of + this class, QHttpResponseHeader and QHttpRequestHeader, rather + than directly using QHttpHeader. + + QHttpHeader provides the HTTP header fields. A HTTP header field + consists of a name followed by a colon, a single space, and the + field value. (See RFC 1945.) Field names are case-insensitive. A + typical header field looks like this: + \snippet doc/src/snippets/code/src_network_access_qhttp.cpp 0 + + In the API the header field name is called the "key" and the + content is called the "value". You can get and set a header + field's value by using its key with value() and setValue(), e.g. + \snippet doc/src/snippets/code/src_network_access_qhttp.cpp 1 + + Some fields are so common that getters and setters are provided + for them as a convenient alternative to using \l value() and + \l setValue(), e.g. contentLength() and contentType(), + setContentLength() and setContentType(). + + Each header key has a \e single value associated with it. If you + set the value for a key which already exists the previous value + will be discarded. + + \sa QHttpRequestHeader QHttpResponseHeader +*/ + +/*! + \fn int QHttpHeader::majorVersion() const + + Returns the major protocol-version of the HTTP header. +*/ + +/*! + \fn int QHttpHeader::minorVersion() const + + Returns the minor protocol-version of the HTTP header. +*/ + +/*! + Constructs an empty HTTP header. +*/ +QHttpHeader::QHttpHeader() + : d_ptr(new QHttpHeaderPrivate) +{ + Q_D(QHttpHeader); + d->q_ptr = this; + d->valid = true; +} + +/*! + Constructs a copy of \a header. +*/ +QHttpHeader::QHttpHeader(const QHttpHeader &header) + : d_ptr(new QHttpHeaderPrivate) +{ + Q_D(QHttpHeader); + d->q_ptr = this; + d->valid = header.d_func()->valid; + d->values = header.d_func()->values; +} + +/*! + Constructs a HTTP header for \a str. + + This constructor parses the string \a str for header fields and + adds this information. The \a str should consist of one or more + "\r\n" delimited lines; each of these lines should have the format + key, colon, space, value. +*/ +QHttpHeader::QHttpHeader(const QString &str) + : d_ptr(new QHttpHeaderPrivate) +{ + Q_D(QHttpHeader); + d->q_ptr = this; + d->valid = true; + parse(str); +} + +/*! \internal + */ +QHttpHeader::QHttpHeader(QHttpHeaderPrivate &dd, const QString &str) + : d_ptr(&dd) +{ + Q_D(QHttpHeader); + d->q_ptr = this; + d->valid = true; + if (!str.isEmpty()) + parse(str); +} + +/*! \internal + */ +QHttpHeader::QHttpHeader(QHttpHeaderPrivate &dd, const QHttpHeader &header) + : d_ptr(&dd) +{ + Q_D(QHttpHeader); + d->q_ptr = this; + d->valid = header.d_func()->valid; + d->values = header.d_func()->values; +} +/*! + Destructor. +*/ +QHttpHeader::~QHttpHeader() +{ +} + +/*! + Assigns \a h and returns a reference to this http header. +*/ +QHttpHeader &QHttpHeader::operator=(const QHttpHeader &h) +{ + Q_D(QHttpHeader); + d->values = h.d_func()->values; + d->valid = h.d_func()->valid; + return *this; +} + +/*! + Returns true if the HTTP header is valid; otherwise returns false. + + A QHttpHeader is invalid if it was created by parsing a malformed string. +*/ +bool QHttpHeader::isValid() const +{ + Q_D(const QHttpHeader); + return d->valid; +} + +/*! \internal + Parses the HTTP header string \a str for header fields and adds + the keys/values it finds. If the string is not parsed successfully + the QHttpHeader becomes \link isValid() invalid\endlink. + + Returns true if \a str was successfully parsed; otherwise returns false. + + \sa toString() +*/ +bool QHttpHeader::parse(const QString &str) +{ + Q_D(QHttpHeader); + QStringList lst; + int pos = str.indexOf(QLatin1Char('\n')); + if (pos > 0 && str.at(pos - 1) == QLatin1Char('\r')) + lst = str.trimmed().split(QLatin1String("\r\n")); + else + lst = str.trimmed().split(QLatin1String("\n")); + lst.removeAll(QString()); // No empties + + if (lst.isEmpty()) + return true; + + QStringList lines; + QStringList::Iterator it = lst.begin(); + for (; it != lst.end(); ++it) { + if (!(*it).isEmpty()) { + if ((*it)[0].isSpace()) { + if (!lines.isEmpty()) { + lines.last() += QLatin1Char(' '); + lines.last() += (*it).trimmed(); + } + } else { + lines.append((*it)); + } + } + } + + int number = 0; + it = lines.begin(); + for (; it != lines.end(); ++it) { + if (!parseLine(*it, number++)) { + d->valid = false; + return false; + } + } + return true; +} + +/*! \internal +*/ +void QHttpHeader::setValid(bool v) +{ + Q_D(QHttpHeader); + d->valid = v; +} + +/*! + Returns the first value for the entry with the given \a key. If no entry + has this \a key, an empty string is returned. + + \sa setValue() removeValue() hasKey() keys() +*/ +QString QHttpHeader::value(const QString &key) const +{ + Q_D(const QHttpHeader); + QString lowercaseKey = key.toLower(); + QList >::ConstIterator it = d->values.constBegin(); + while (it != d->values.constEnd()) { + if ((*it).first.toLower() == lowercaseKey) + return (*it).second; + ++it; + } + return QString(); +} + +/*! + Returns all the entries with the given \a key. If no entry + has this \a key, an empty string list is returned. +*/ +QStringList QHttpHeader::allValues(const QString &key) const +{ + Q_D(const QHttpHeader); + QString lowercaseKey = key.toLower(); + QStringList valueList; + QList >::ConstIterator it = d->values.constBegin(); + while (it != d->values.constEnd()) { + if ((*it).first.toLower() == lowercaseKey) + valueList.append((*it).second); + ++it; + } + return valueList; +} + +/*! + Returns a list of the keys in the HTTP header. + + \sa hasKey() +*/ +QStringList QHttpHeader::keys() const +{ + Q_D(const QHttpHeader); + QStringList keyList; + QSet seenKeys; + QList >::ConstIterator it = d->values.constBegin(); + while (it != d->values.constEnd()) { + const QString &key = (*it).first; + QString lowercaseKey = key.toLower(); + if (!seenKeys.contains(lowercaseKey)) { + keyList.append(key); + seenKeys.insert(lowercaseKey); + } + ++it; + } + return keyList; +} + +/*! + Returns true if the HTTP header has an entry with the given \a + key; otherwise returns false. + + \sa value() setValue() keys() +*/ +bool QHttpHeader::hasKey(const QString &key) const +{ + Q_D(const QHttpHeader); + QString lowercaseKey = key.toLower(); + QList >::ConstIterator it = d->values.constBegin(); + while (it != d->values.constEnd()) { + if ((*it).first.toLower() == lowercaseKey) + return true; + ++it; + } + return false; +} + +/*! + Sets the value of the entry with the \a key to \a value. + + If no entry with \a key exists, a new entry with the given \a key + and \a value is created. If an entry with the \a key already + exists, the first value is discarded and replaced with the given + \a value. + + \sa value() hasKey() removeValue() +*/ +void QHttpHeader::setValue(const QString &key, const QString &value) +{ + Q_D(QHttpHeader); + QString lowercaseKey = key.toLower(); + QList >::Iterator it = d->values.begin(); + while (it != d->values.end()) { + if ((*it).first.toLower() == lowercaseKey) { + (*it).second = value; + return; + } + ++it; + } + // not found so add + addValue(key, value); +} + +/*! + Sets the header entries to be the list of key value pairs in \a values. +*/ +void QHttpHeader::setValues(const QList > &values) +{ + Q_D(QHttpHeader); + d->values = values; +} + +/*! + Adds a new entry with the \a key and \a value. +*/ +void QHttpHeader::addValue(const QString &key, const QString &value) +{ + Q_D(QHttpHeader); + d->values.append(qMakePair(key, value)); +} + +/*! + Returns all the entries in the header. +*/ +QList > QHttpHeader::values() const +{ + Q_D(const QHttpHeader); + return d->values; +} + +/*! + Removes the entry with the key \a key from the HTTP header. + + \sa value() setValue() +*/ +void QHttpHeader::removeValue(const QString &key) +{ + Q_D(QHttpHeader); + QString lowercaseKey = key.toLower(); + QList >::Iterator it = d->values.begin(); + while (it != d->values.end()) { + if ((*it).first.toLower() == lowercaseKey) { + d->values.erase(it); + return; + } + ++it; + } +} + +/*! + Removes all the entries with the key \a key from the HTTP header. +*/ +void QHttpHeader::removeAllValues(const QString &key) +{ + Q_D(QHttpHeader); + QString lowercaseKey = key.toLower(); + QList >::Iterator it = d->values.begin(); + while (it != d->values.end()) { + if ((*it).first.toLower() == lowercaseKey) { + it = d->values.erase(it); + continue; + } + ++it; + } +} + +/*! \internal + Parses the single HTTP header line \a line which has the format + key, colon, space, value, and adds key/value to the headers. The + linenumber is \a number. Returns true if the line was successfully + parsed and the key/value added; otherwise returns false. + + \sa parse() +*/ +bool QHttpHeader::parseLine(const QString &line, int) +{ + int i = line.indexOf(QLatin1Char(':')); + if (i == -1) + return false; + + addValue(line.left(i).trimmed(), line.mid(i + 1).trimmed()); + + return true; +} + +/*! + Returns a string representation of the HTTP header. + + The string is suitable for use by the constructor that takes a + QString. It consists of lines with the format: key, colon, space, + value, "\r\n". +*/ +QString QHttpHeader::toString() const +{ + Q_D(const QHttpHeader); + if (!isValid()) + return QLatin1String(""); + + QString ret = QLatin1String(""); + + QList >::ConstIterator it = d->values.constBegin(); + while (it != d->values.constEnd()) { + ret += (*it).first + QLatin1String(": ") + (*it).second + QLatin1String("\r\n"); + ++it; + } + return ret; +} + +/*! + Returns true if the header has an entry for the special HTTP + header field \c content-length; otherwise returns false. + + \sa contentLength() setContentLength() +*/ +bool QHttpHeader::hasContentLength() const +{ + return hasKey(QLatin1String("content-length")); +} + +/*! + Returns the value of the special HTTP header field \c + content-length. + + \sa setContentLength() hasContentLength() +*/ +uint QHttpHeader::contentLength() const +{ + return value(QLatin1String("content-length")).toUInt(); +} + +/*! + Sets the value of the special HTTP header field \c content-length + to \a len. + + \sa contentLength() hasContentLength() +*/ +void QHttpHeader::setContentLength(int len) +{ + setValue(QLatin1String("content-length"), QString::number(len)); +} + +/*! + Returns true if the header has an entry for the special HTTP + header field \c content-type; otherwise returns false. + + \sa contentType() setContentType() +*/ +bool QHttpHeader::hasContentType() const +{ + return hasKey(QLatin1String("content-type")); +} + +/*! + Returns the value of the special HTTP header field \c content-type. + + \sa setContentType() hasContentType() +*/ +QString QHttpHeader::contentType() const +{ + QString type = value(QLatin1String("content-type")); + if (type.isEmpty()) + return QString(); + + int pos = type.indexOf(QLatin1Char(';')); + if (pos == -1) + return type; + + return type.left(pos).trimmed(); +} + +/*! + Sets the value of the special HTTP header field \c content-type to + \a type. + + \sa contentType() hasContentType() +*/ +void QHttpHeader::setContentType(const QString &type) +{ + setValue(QLatin1String("content-type"), type); +} + +class QHttpResponseHeaderPrivate : public QHttpHeaderPrivate +{ + Q_DECLARE_PUBLIC(QHttpResponseHeader) +public: + int statCode; + QString reasonPhr; + int majVer; + int minVer; +}; + +/**************************************************** + * + * QHttpResponseHeader + * + ****************************************************/ + +/*! + \class QHttpResponseHeader + \obsolete + \brief The QHttpResponseHeader class contains response header information for HTTP. + + \ingroup network + \inmodule QtNetwork + + HTTP responses have a status code that indicates the status of the + response. This code is a 3-digit integer result code (for details + see to RFC 1945). In addition to the status code, you can also + specify a human-readable text that describes the reason for the + code ("reason phrase"). This class allows you to get the status + code and the reason phrase. + + \sa QHttpRequestHeader, {HTTP Example} +*/ + +/*! + Constructs an empty HTTP response header. +*/ +QHttpResponseHeader::QHttpResponseHeader() + : QHttpHeader(*new QHttpResponseHeaderPrivate) +{ + setValid(false); +} + +/*! + Constructs a copy of \a header. +*/ +QHttpResponseHeader::QHttpResponseHeader(const QHttpResponseHeader &header) + : QHttpHeader(*new QHttpResponseHeaderPrivate, header) +{ + Q_D(QHttpResponseHeader); + d->statCode = header.d_func()->statCode; + d->reasonPhr = header.d_func()->reasonPhr; + d->majVer = header.d_func()->majVer; + d->minVer = header.d_func()->minVer; +} + +/*! + Copies the contents of \a header into this QHttpResponseHeader. +*/ +QHttpResponseHeader &QHttpResponseHeader::operator=(const QHttpResponseHeader &header) +{ + Q_D(QHttpResponseHeader); + QHttpHeader::operator=(header); + d->statCode = header.d_func()->statCode; + d->reasonPhr = header.d_func()->reasonPhr; + d->majVer = header.d_func()->majVer; + d->minVer = header.d_func()->minVer; + return *this; +} + +/*! + Constructs a HTTP response header from the string \a str. The + string is parsed and the information is set. The \a str should + consist of one or more "\r\n" delimited lines; the first line should be the + status-line (format: HTTP-version, space, status-code, space, + reason-phrase); each of remaining lines should have the format key, colon, + space, value. +*/ +QHttpResponseHeader::QHttpResponseHeader(const QString &str) + : QHttpHeader(*new QHttpResponseHeaderPrivate) +{ + parse(str); +} + +/*! + \since 4.1 + + Constructs a QHttpResponseHeader, setting the status code to \a code, the + reason phrase to \a text and the protocol-version to \a majorVer and \a + minorVer. + + \sa statusCode() reasonPhrase() majorVersion() minorVersion() +*/ +QHttpResponseHeader::QHttpResponseHeader(int code, const QString &text, int majorVer, int minorVer) + : QHttpHeader(*new QHttpResponseHeaderPrivate) +{ + setStatusLine(code, text, majorVer, minorVer); +} + +/*! + \since 4.1 + + Sets the status code to \a code, the reason phrase to \a text and + the protocol-version to \a majorVer and \a minorVer. + + \sa statusCode() reasonPhrase() majorVersion() minorVersion() +*/ +void QHttpResponseHeader::setStatusLine(int code, const QString &text, int majorVer, int minorVer) +{ + Q_D(QHttpResponseHeader); + setValid(true); + d->statCode = code; + d->reasonPhr = text; + d->majVer = majorVer; + d->minVer = minorVer; +} + +/*! + Returns the status code of the HTTP response header. + + \sa reasonPhrase() majorVersion() minorVersion() +*/ +int QHttpResponseHeader::statusCode() const +{ + Q_D(const QHttpResponseHeader); + return d->statCode; +} + +/*! + Returns the reason phrase of the HTTP response header. + + \sa statusCode() majorVersion() minorVersion() +*/ +QString QHttpResponseHeader::reasonPhrase() const +{ + Q_D(const QHttpResponseHeader); + return d->reasonPhr; +} + +/*! + Returns the major protocol-version of the HTTP response header. + + \sa minorVersion() statusCode() reasonPhrase() +*/ +int QHttpResponseHeader::majorVersion() const +{ + Q_D(const QHttpResponseHeader); + return d->majVer; +} + +/*! + Returns the minor protocol-version of the HTTP response header. + + \sa majorVersion() statusCode() reasonPhrase() +*/ +int QHttpResponseHeader::minorVersion() const +{ + Q_D(const QHttpResponseHeader); + return d->minVer; +} + +/*! \internal +*/ +bool QHttpResponseHeader::parseLine(const QString &line, int number) +{ + Q_D(QHttpResponseHeader); + if (number != 0) + return QHttpHeader::parseLine(line, number); + + QString l = line.simplified(); + if (l.length() < 10) + return false; + + if (l.left(5) == QLatin1String("HTTP/") && l[5].isDigit() && l[6] == QLatin1Char('.') && + l[7].isDigit() && l[8] == QLatin1Char(' ') && l[9].isDigit()) { + d->majVer = l[5].toLatin1() - '0'; + d->minVer = l[7].toLatin1() - '0'; + + int pos = l.indexOf(QLatin1Char(' '), 9); + if (pos != -1) { + d->reasonPhr = l.mid(pos + 1); + d->statCode = l.mid(9, pos - 9).toInt(); + } else { + d->statCode = l.mid(9).toInt(); + d->reasonPhr.clear(); + } + } else { + return false; + } + + return true; +} + +/*! \reimp +*/ +QString QHttpResponseHeader::toString() const +{ + Q_D(const QHttpResponseHeader); + QString ret(QLatin1String("HTTP/%1.%2 %3 %4\r\n%5\r\n")); + return ret.arg(d->majVer).arg(d->minVer).arg(d->statCode).arg(d->reasonPhr).arg(QHttpHeader::toString()); +} + +QT_END_NAMESPACE + +#endif diff --git a/src/network/access/qhttpheader_p.h b/src/network/access/qhttpheader_p.h new file mode 100644 index 0000000000..0d8b4fca13 --- /dev/null +++ b/src/network/access/qhttpheader_p.h @@ -0,0 +1,147 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtNetwork module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 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 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QHTTP_H +#define QHTTP_H + +#include +#include +#include +#include +#include + +QT_BEGIN_HEADER + +QT_BEGIN_NAMESPACE + +QT_MODULE(Network) + +#ifndef QT_NO_HTTP + +#if 0 +#pragma qt_class(QHttp) +#endif + +class QHttpHeaderPrivate; +class QHttpHeader +{ +public: + QHttpHeader(); + QHttpHeader(const QHttpHeader &header); + QHttpHeader(const QString &str); + virtual ~QHttpHeader(); + + QHttpHeader &operator=(const QHttpHeader &h); + + void setValue(const QString &key, const QString &value); + void setValues(const QList > &values); + void addValue(const QString &key, const QString &value); + QList > values() const; + bool hasKey(const QString &key) const; + QStringList keys() const; + QString value(const QString &key) const; + QStringList allValues(const QString &key) const; + void removeValue(const QString &key); + void removeAllValues(const QString &key); + + // ### Qt 5: change to qint64 + bool hasContentLength() const; + uint contentLength() const; + void setContentLength(int len); + + bool hasContentType() const; + QString contentType() const; + void setContentType(const QString &type); + + virtual QString toString() const; + bool isValid() const; + + virtual int majorVersion() const = 0; + virtual int minorVersion() const = 0; + +protected: + virtual bool parseLine(const QString &line, int number); + bool parse(const QString &str); + void setValid(bool); + + QHttpHeader(QHttpHeaderPrivate &dd, const QString &str = QString()); + QHttpHeader(QHttpHeaderPrivate &dd, const QHttpHeader &header); + QScopedPointer d_ptr; + +private: + Q_DECLARE_PRIVATE(QHttpHeader) +}; + +class QHttpResponseHeaderPrivate; +class QHttpResponseHeader : public QHttpHeader +{ +public: + QHttpResponseHeader(); + QHttpResponseHeader(const QHttpResponseHeader &header); + QHttpResponseHeader(const QString &str); + QHttpResponseHeader(int code, const QString &text = QString(), int majorVer = 1, int minorVer = 1); + QHttpResponseHeader &operator=(const QHttpResponseHeader &header); + + void setStatusLine(int code, const QString &text = QString(), int majorVer = 1, int minorVer = 1); + + int statusCode() const; + QString reasonPhrase() const; + + int majorVersion() const; + int minorVersion() const; + + QString toString() const; + +protected: + bool parseLine(const QString &line, int number); + +private: + Q_DECLARE_PRIVATE(QHttpResponseHeader) + friend class QHttpPrivate; +}; + +#endif // QT_NO_HTTP + +QT_END_NAMESPACE + +QT_END_HEADER + +#endif // QHTTP_H diff --git a/src/network/access/qhttpnetworkconnection.cpp b/src/network/access/qhttpnetworkconnection.cpp index c9a41176d6..104a21f591 100644 --- a/src/network/access/qhttpnetworkconnection.cpp +++ b/src/network/access/qhttpnetworkconnection.cpp @@ -53,7 +53,6 @@ #include #include -#include #include #ifndef QT_NO_HTTP diff --git a/src/network/kernel/qauthenticator.cpp b/src/network/kernel/qauthenticator.cpp index fa5906a3ed..0a3dddbe28 100644 --- a/src/network/kernel/qauthenticator.cpp +++ b/src/network/kernel/qauthenticator.cpp @@ -45,7 +45,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/src/network/socket/qhttpsocketengine.cpp b/src/network/socket/qhttpsocketengine.cpp index 70ae40307e..e882f77dcd 100644 --- a/src/network/socket/qhttpsocketengine.cpp +++ b/src/network/socket/qhttpsocketengine.cpp @@ -43,7 +43,7 @@ #include "qtcpsocket.h" #include "qhostaddress.h" #include "qurl.h" -#include "qhttp.h" +#include "private/qhttpheader_p.h" #include "qelapsedtimer.h" #include "qnetworkinterface.h" diff --git a/src/tools/uic/qclass_lib_map.h b/src/tools/uic/qclass_lib_map.h index d4a6c2c96c..030be12076 100644 --- a/src/tools/uic/qclass_lib_map.h +++ b/src/tools/uic/qclass_lib_map.h @@ -398,10 +398,8 @@ QT_CLASS_LIB(QXmlStreamWriter, QtXml, qxmlstream.h) QT_CLASS_LIB(QNetworkCacheMetaData, QtNetwork, qabstractnetworkcache.h) QT_CLASS_LIB(QAbstractNetworkCache, QtNetwork, qabstractnetworkcache.h) QT_CLASS_LIB(QFtp, QtNetwork, qftp.h) -QT_CLASS_LIB(QHttpHeader, QtNetwork, qhttp.h) -QT_CLASS_LIB(QHttpResponseHeader, QtNetwork, qhttp.h) -QT_CLASS_LIB(QHttpRequestHeader, QtNetwork, qhttp.h) -QT_CLASS_LIB(QHttp, QtNetwork, qhttp.h) +QT_CLASS_LIB(QHttpHeader, QtNetwork, qhttpheader_p.h) +QT_CLASS_LIB(QHttpResponseHeader, QtNetwork, qhttpheader_p.h) QT_CLASS_LIB(QNetworkAccessManager, QtNetwork, qnetworkaccessmanager.h) QT_CLASS_LIB(QNetworkCookie, QtNetwork, qnetworkcookie.h) QT_CLASS_LIB(QNetworkCookieJar, QtNetwork, qnetworkcookiejar.h) diff --git a/tests/auto/network/access/access.pro b/tests/auto/network/access/access.pro index 53b16f07b8..69ed189712 100644 --- a/tests/auto/network/access/access.pro +++ b/tests/auto/network/access/access.pro @@ -10,7 +10,6 @@ SUBDIRS=\ qnetworkcachemetadata \ qftp \ qhttpnetworkreply \ - qhttp \ qabstractnetworkcache \ !contains(QT_CONFIG, private_tests): SUBDIRS -= \ diff --git a/tests/auto/network/access/qhttp/.gitattributes b/tests/auto/network/access/qhttp/.gitattributes deleted file mode 100644 index e04709aa2e..0000000000 --- a/tests/auto/network/access/qhttp/.gitattributes +++ /dev/null @@ -1 +0,0 @@ -rfc3252.txt -crlf diff --git a/tests/auto/network/access/qhttp/.gitignore b/tests/auto/network/access/qhttp/.gitignore deleted file mode 100644 index 00c1f492cd..0000000000 --- a/tests/auto/network/access/qhttp/.gitignore +++ /dev/null @@ -1 +0,0 @@ -tst_qhttp diff --git a/tests/auto/network/access/qhttp/dummyserver.h b/tests/auto/network/access/qhttp/dummyserver.h deleted file mode 100644 index 644ae4a2ba..0000000000 --- a/tests/auto/network/access/qhttp/dummyserver.h +++ /dev/null @@ -1,114 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the test suite of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ -// Use if you need - -class DummyHttpServer : public QTcpServer -{ - Q_OBJECT -public: - DummyHttpServer() : phase(Header) - { listen(); } - -protected: - enum { - Header, - Data1, - Data2, - Close - } phase; - void incomingConnection(int socketDescriptor) - { - QSslSocket *socket = new QSslSocket(this); - socket->setSocketDescriptor(socketDescriptor, QAbstractSocket::ConnectedState); - socket->ignoreSslErrors(); - socket->startServerEncryption(); - connect(socket, SIGNAL(readyRead()), SLOT(handleReadyRead())); - } - -public slots: - void handleReadyRead() - { - QTcpSocket *socket = static_cast(sender()); - socket->readAll(); - if (phase != Header) - return; - - phase = Data1; - static const char header[] = - "HTTP/1.0 200 OK\r\n" - "Date: Fri, 07 Sep 2007 12:33:18 GMT\r\n" - "Server: Apache\r\n" - "Expires:\r\n" - "Cache-Control:\r\n" - "Pragma:\r\n" - "Last-Modified: Thu, 06 Sep 2007 08:52:06 +0000\r\n" - "Etag: a700f59a6ccb1ad39af68d998aa36fb1\r\n" - "Vary: Accept-Encoding\r\n" - "Content-Length: 6560\r\n" - "Connection: close\r\n" - "Content-Type: text/html; charset=utf-8\r\n" - "\r\n"; - - - socket->write(header, sizeof header - 1); - connect(socket, SIGNAL(bytesWritten(qint64)), SLOT(handleBytesWritten()), Qt::QueuedConnection); - } - - void handleBytesWritten() - { - QTcpSocket *socket = static_cast(sender()); - if (socket->bytesToWrite() != 0) - return; - - if (phase == Data1) { - QByteArray data(4096, 'a'); - socket->write(data); - phase = Data2; - } else if (phase == Data2) { - QByteArray data(2464, 'a'); - socket->write(data); - phase = Close; - } else { - //socket->disconnectFromHost(); - //socket->deleteLater(); - } - } -}; diff --git a/tests/auto/network/access/qhttp/qhttp.pro b/tests/auto/network/access/qhttp/qhttp.pro deleted file mode 100644 index d672eb6009..0000000000 --- a/tests/auto/network/access/qhttp/qhttp.pro +++ /dev/null @@ -1,23 +0,0 @@ -CONFIG += testcase -TARGET = tst_qhttp -SOURCES += tst_qhttp.cpp - - -QT = core network testlib - -wince*: { - webFiles.files = webserver/* - webFiles.path = webserver - cgi.files = webserver/cgi-bin/* - cgi.path = webserver/cgi-bin - addFiles.files = rfc3252.txt testhtml - addFiles.path = . - DEPLOYMENT += addFiles webFiles cgi - DEFINES += SRCDIR=\\\"\\\" -} else:vxworks*: { - DEFINES += SRCDIR=\\\"\\\" -} else { - DEFINES += SRCDIR=\\\"$$PWD/\\\" -} - -CONFIG+=insignificant_test diff --git a/tests/auto/network/access/qhttp/rfc3252.txt b/tests/auto/network/access/qhttp/rfc3252.txt deleted file mode 100644 index b80c61bf0a..0000000000 --- a/tests/auto/network/access/qhttp/rfc3252.txt +++ /dev/null @@ -1,899 +0,0 @@ - - - - - - -Network Working Group H. Kennedy -Request for Comments: 3252 Mimezine -Category: Informational 1 April 2002 - - - Binary Lexical Octet Ad-hoc Transport - -Status of this Memo - - This memo provides information for the Internet community. It does - not specify an Internet standard of any kind. Distribution of this - memo is unlimited. - -Copyright Notice - - Copyright (C) The Internet Society (2002). All Rights Reserved. - -Abstract - - This document defines a reformulation of IP and two transport layer - protocols (TCP and UDP) as XML applications. - -1. Introduction - -1.1. Overview - - This document describes the Binary Lexical Octet Ad-hoc Transport - (BLOAT): a reformulation of a widely-deployed network-layer protocol - (IP [RFC791]), and two associated transport layer protocols (TCP - [RFC793] and UDP [RFC768]) as XML [XML] applications. It also - describes methods for transporting BLOAT over Ethernet and IEEE 802 - networks as well as encapsulating BLOAT in IP for gatewaying BLOAT - across the public Internet. - -1.2. Motivation - - The wild popularity of XML as a basis for application-level protocols - such as the Blocks Extensible Exchange Protocol [RFC3080], the Simple - Object Access Protocol [SOAP], and Jabber [JABBER] prompted - investigation into the possibility of extending the use of XML in the - protocol stack. Using XML at both the transport and network layer in - addition to the application layer would provide for an amazing amount - of power and flexibility while removing dependencies on proprietary - and hard-to-understand binary protocols. This protocol unification - would also allow applications to use a single XML parser for all - aspects of their operation, eliminating developer time spent figuring - out the intricacies of each new protocol, and moving the hard work of - - - - -Kennedy Informational [Page 1] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - parsing to the XML toolset. The use of XML also mitigates concerns - over "network vs. host" byte ordering which is at the root of many - network application bugs. - -1.3. Relation to Existing Protocols - - The reformulations specified in this RFC follow as closely as - possible the spirit of the RFCs on which they are based, and so MAY - contain elements or attributes that would not be needed in a pure - reworking (e.g. length attributes, which are implicit in XML.) - - The layering of network and transport protocols are maintained in - this RFC despite the optimizations that could be made if the line - were somewhat blurred (i.e. merging TCP and IP into a single, larger - element in the DTD) in order to foster future use of this protocol as - a basis for reformulating other protocols (such as ICMP.) - - Other than the encoding, the behavioral aspects of each of the - existing protocols remain unchanged. Routing, address spaces, TCP - congestion control, etc. behave as specified in the extant standards. - Adapting to new standards and experimental algorithm heuristics for - improving performance will become much easier once the move to BLOAT - has been completed. - -1.4. Requirement Levels - - The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", - "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this - document are to be interpreted as described in BCP 14, RFC 2119 - [RFC2119]. - -2. IPoXML - - This protocol MUST be implemented to be compliant with this RFC. - IPoXML is the root protocol REQUIRED for effective use of TCPoXML - (section 3.) and higher-level application protocols. - - The DTD for this document type can be found in section 7.1. - - The routing of IPoXML can be easily implemented on hosts with an XML - parser, as the regular structure lends itself handily to parsing and - validation of the document/datagram and then processing the - destination address, TTL, and checksum before sending it on to its - next-hop. - - The reformulation of IPv4 was chosen over IPv6 [RFC2460] due to the - wider deployment of IPv4 and the fact that implementing IPv6 as XML - would have exceeded the 1500 byte Ethernet MTU. - - - -Kennedy Informational [Page 2] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - All BLOAT implementations MUST use - and specify - the UTF-8 encoding - of RFC 2279 [RFC2279]. All BLOAT document/datagrams MUST be well- - formed and include the XMLDecl. - -2.1. IP Description - - A number of items have changed (for the better) from the original IP - specification. Bit-masks, where present have been converted into - human-readable values. IP addresses are listed in their dotted- - decimal notation [RFC1123]. Length and checksum values are present - as decimal integers. - - To calculate the length and checksum fields of the IP element, a - canonicalized form of the element MUST be used. The canonical form - SHALL have no whitespace (including newline characters) between - elements and only one space character between attributes. There - SHALL NOT be a space following the last attribute in an element. - - An iterative method SHOULD be used to calculate checksums, as the - length field will vary based on the size of the checksum. - - The payload element bears special attention. Due to the character - set restrictions of XML, the payload of IP datagrams (which MAY - contain arbitrary data) MUST be encoded for transport. This RFC - REQUIRES the contents of the payload to be encoded in the base-64 - encoding of RFC 2045 [RFC2045], but removes the requirement that the - encoded output MUST be wrapped on 76-character lines. - - - - - - - - - - - - - - - - - - - - - - - - -Kennedy Informational [Page 3] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - -2.2. Example Datagram - - The following is an example IPoXML datagram with an empty payload: - - - - -
- - - - - - - - - - - - - - - -
- - -
- -3. TCPoXML - - This protocol MUST be implemented to be compliant with this RFC. The - DTD for this document type can be found in section 7.2. - -3.1. TCP Description - - A number of items have changed from the original TCP specification. - Bit-masks, where present have been converted into human-readable - values. Length and checksum and port values are present as decimal - integers. - - To calculate the length and checksum fields of the TCP element, a - canonicalized form of the element MUST be used as in section 2.1. - - An iterative method SHOULD be used to calculate checksums as in - section 2.1. - - The payload element MUST be encoded as in section 2.1. - - - -Kennedy Informational [Page 4] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - The TCP offset element was expanded to a maximum of 255 from 16 to - allow for the increased size of the header in XML. - - TCPoXML datagrams encapsulated by IPoXML MAY omit the header - as well as the declaration. - -3.2. Example Datagram - - The following is an example TCPoXML datagram with an empty payload: - - - - - - - - - - - - - - - - - - - - - - - - -4. UDPoXML - - This protocol MUST be implemented to be compliant with this RFC. The - DTD for this document type can be found in section 7.3. - -4.1. UDP Description - - A number of items have changed from the original UDP specification. - Bit-masks, where present have been converted into human-readable - values. Length and checksum and port values are present as decimal - integers. - - - - - - - -Kennedy Informational [Page 5] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - To calculate the length and checksum fields of the UDP element, a - canonicalized form of the element MUST be used as in section 2.1. An - iterative method SHOULD be used to calculate checksums as in section - 2.1. - - The payload element MUST be encoded as in section 2.1. - - UDPoXML datagrams encapsulated by IPoXML MAY omit the header - as well as the declaration. - -4.2. Example Datagram - - The following is an example UDPoXML datagram with an empty payload: - - - - - - - - - - - - - - -5. Network Transport - - This document provides for the transmission of BLOAT datagrams over - two common families of physical layer transport. Future RFCs will - address additional transports as routing vendors catch up to the - specification, and we begin to see BLOAT routed across the Internet - backbone. - -5.1. Ethernet - - BLOAT is encapsulated in Ethernet datagrams as in [RFC894] with the - exception that the type field of the Ethernet frame MUST contain the - value 0xBEEF. The first 5 octets of the Ethernet frame payload will - be 0x3c 3f 78 6d 6c (" - --> - - - - -Kennedy Informational [Page 7] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Kennedy Informational [Page 9] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - - - - - - - - - - - - - - - - - - - - - - -Kennedy Informational [Page 10] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - - - - - - - - - - - -7.2. TCPoXML DTD - - - - - - - - - - - - - - - - - -Kennedy Informational [Page 11] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Kennedy Informational [Page 12] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - - - - - - - - - - - - - - - - - - -7.3. UDPoXML DTD - - - - - - - - - - - - - - - -Kennedy Informational [Page 13] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - -8. Security Considerations - - XML, as a subset of SGML, has the same security considerations as - specified in SGML Media Types [RFC1874]. Security considerations - that apply to IP, TCP and UDP also likely apply to BLOAT as it does - not attempt to correct for issues not related to message format. - -9. References - - [JABBER] Miller, J., "Jabber", draft-miller-jabber-00.txt, - February 2002. (Work in Progress) - - [RFC768] Postel, J., "User Datagram Protocol", STD 6, RFC 768, - August 1980. - - [RFC791] Postel, J., "Internet Protocol", STD 5, RFC 791, - September 1981. - - [RFC793] Postel, J., "Transmission Control Protocol", STD 7, RFC - 793, September 1981. - - [RFC894] Hornig, C., "Standard for the Transmission of IP - Datagrams over Ethernet Networks.", RFC 894, April 1984. - - [RFC1042] Postel, J. and J. Reynolds, "Standard for the - Transmission of IP Datagrams Over IEEE 802 Networks", STD - 43, RFC 1042, February 1988. - - [RFC1123] Braden, R., "Requirements for Internet Hosts - - Application and Support", RFC 1123, October 1989. - - [RFC1874] Levinson, E., "SGML Media Types", RFC 1874, December - 1995. - - [RFC2003] Perkins, C., "IP Encapsulation within IP", RFC 2003, - October 1996. - - [RFC2045] Freed, N. and N. Borenstein, "Multipurpose Internet Mail - Extensions (MIME) Part One: Format of Internet Message - Bodies", RFC 2045, November 1996. - - [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate - Requirement Levels", BCP 14, RFC 2119, March 1997. - - [RFC2279] Yergeau, F., "UTF-8, a transformation format of ISO - 10646", RFC 2279, January 1998. - - - - - -Kennedy Informational [Page 14] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - [RFC2460] Deering, S. and R. Hinden, "Internet Protocol, Version 6 - (IPv6) Specification", RFC 2460, December 1998. - - [RFC3080] Rose, M., "The Blocks Extensible Exchange Protocol Core", - RFC 3080, March 2001. - - [SOAP] Box, D., Ehnebuske, D., Kakivaya, G., Layman, A., - Mendelsohn, N., Nielsen, H. F., Thatte, S. Winer, D., - "Simple Object Access Protocol (SOAP) 1.1" World Wide Web - Consortium Note, May 2000 http://www.w3.org/TR/SOAP/ - - [XML] Bray, T., Paoli, J., Sperberg-McQueen, C. M., "Extensible - Markup Language (XML)" World Wide Web Consortium - Recommendation REC- xml-19980210. - http://www.w3.org/TR/1998/REC-xml-19980210 - -10. Author's Address - - Hugh Kennedy - Mimezine - 1060 West Addison - Chicago, IL 60613 - USA - - EMail: kennedyh@engin.umich.edu - - - - - - - - - - - - - - - - - - - - - - - - - - -Kennedy Informational [Page 15] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - -11. Full Copyright Statement - - Copyright (C) The Internet Society (2002). All Rights Reserved. - - This document and translations of it may be copied and furnished to - others, and derivative works that comment on or otherwise explain it - or assist in its implementation may be prepared, copied, published - and distributed, in whole or in part, without restriction of any - kind, provided that the above copyright notice and this paragraph are - included on all such copies and derivative works. However, this - document itself may not be modified in any way, such as by removing - the copyright notice or references to the Internet Society or other - Internet organizations, except as needed for the purpose of - developing Internet standards in which case the procedures for - copyrights defined in the Internet Standards process must be - followed, or as required to translate it into languages other than - English. - - The limited permissions granted above are perpetual and will not be - revoked by the Internet Society or its successors or assigns. - - This document and the information contained herein is provided on an - "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING - TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING - BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION - HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF - MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. - -Acknowledgement - - Funding for the RFC Editor function is currently provided by the - Internet Society. - - - - - - - - - - - - - - - - - - - -Kennedy Informational [Page 16] - diff --git a/tests/auto/network/access/qhttp/testhtml b/tests/auto/network/access/qhttp/testhtml deleted file mode 100644 index c155360e8d..0000000000 --- a/tests/auto/network/access/qhttp/testhtml +++ /dev/null @@ -1,8 +0,0 @@ - - - Test - - -

Test

- - diff --git a/tests/auto/network/access/qhttp/tst_qhttp.cpp b/tests/auto/network/access/qhttp/tst_qhttp.cpp deleted file mode 100644 index dd57aba85c..0000000000 --- a/tests/auto/network/access/qhttp/tst_qhttp.cpp +++ /dev/null @@ -1,1565 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the test suite of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 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 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - - -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#ifndef QT_NO_OPENSSL -# include -#endif - -#include "../../../network-settings.h" - -Q_DECLARE_METATYPE(QHttpResponseHeader) - -class tst_QHttp : public QObject -{ - Q_OBJECT - -public: - tst_QHttp(); - virtual ~tst_QHttp(); - - -public slots: - void initTestCase_data(); - void initTestCase(); - void cleanupTestCase(); - void init(); - void cleanup(); -private slots: - void constructing(); - void invalidRequests(); - void get_data(); - void get(); - void head_data(); - void head(); - void post_data(); - void post(); - void request_data(); - void request(); - void authorization_data(); - void authorization(); - void proxy_data(); - void proxy(); - void proxy2(); - void proxy3(); - void postAuthNtlm(); -#ifndef QT_NO_OPENSSL - void proxyAndSsl(); - void cachingProxyAndSsl(); -#endif - void reconnect(); - void setSocket(); - void unexpectedRemoteClose(); - void pctEncodedPath(); - void caseInsensitiveKeys(); - void emptyBodyInReply(); - void abortInReadyRead(); - void abortInResponseHeaderReceived(); - void nestedEventLoop(); - void connectionClose(); - -protected slots: - void stateChanged( int ); - void responseHeaderReceived( const QHttpResponseHeader & ); - void readyRead( const QHttpResponseHeader& ); - void dataSendProgress( int, int ); - void dataReadProgress( int , int ); - - void requestStarted( int ); - void requestFinished( int, bool ); - void done( bool ); - - void reconnect_state(int state); - void proxy2_slot(); - void nestedEventLoop_slot(int id); - - void abortSender(); - void proxyAuthenticationRequired(const QNetworkProxy &, QAuthenticator *auth); - -private: - QHttp *newHttp(bool withAuth = false); - void addRequest( QHttpRequestHeader, int ); - bool headerAreEqual( const QHttpHeader&, const QHttpHeader& ); - - QHttp *http; - - struct RequestResult - { - QHttpRequestHeader req; - QHttpResponseHeader resp; - int success; - }; - QMap< int, RequestResult > resultMap; - typedef QMap::Iterator ResMapIt; - QList ids; // helper to make sure that all expected signals are emitted - - int current_id; - int cur_state; - int done_success; - - QByteArray readyRead_ba; - - int bytesTotalSend; - int bytesDoneSend; - int bytesTotalRead; - int bytesDoneRead; - - int getId; - int headId; - int postId; - - int reconnect_state_connect_count; - - bool connectionWithAuth; - bool proxyAuthCalled; -}; - -class ClosingServer: public QTcpServer -{ - Q_OBJECT -public: - ClosingServer() - { - connect(this, SIGNAL(newConnection()), SLOT(handleConnection())); - listen(); - } - -public slots: - void handleConnection() - { - delete nextPendingConnection(); - } -}; - -//#define DUMP_SIGNALS - -const int bytesTotal_init = -10; -const int bytesDone_init = -10; - -tst_QHttp::tst_QHttp() -{ -} - -tst_QHttp::~tst_QHttp() -{ -} - -void tst_QHttp::initTestCase_data() -{ - QTest::addColumn("setProxy"); - QTest::addColumn("proxyType"); - - QTest::newRow("WithoutProxy") << false << 0; - QTest::newRow("WithSocks5Proxy") << true << int(QNetworkProxy::Socks5Proxy); -} - -void tst_QHttp::initTestCase() -{ - QVERIFY(QtNetworkSettings::verifyTestNetworkSettings()); -} - -void tst_QHttp::cleanupTestCase() -{ -} - -void tst_QHttp::init() -{ - QFETCH_GLOBAL(bool, setProxy); - if (setProxy) { - QFETCH_GLOBAL(int, proxyType); - if (proxyType == QNetworkProxy::Socks5Proxy) { - QNetworkProxy::setApplicationProxy(QNetworkProxy(QNetworkProxy::Socks5Proxy, QtNetworkSettings::serverName(), 1080)); - } - } - - http = 0; - - resultMap.clear(); - ids.clear(); - - current_id = 0; - cur_state = QHttp::Unconnected; - done_success = -1; - - readyRead_ba = QByteArray(); - - getId = -1; - headId = -1; - postId = -1; -} - -void tst_QHttp::cleanup() -{ - delete http; - http = 0; - - QCoreApplication::processEvents(); - - QFETCH_GLOBAL(bool, setProxy); - if (setProxy) { - QNetworkProxy::setApplicationProxy(QNetworkProxy::DefaultProxy); - } -} - -void tst_QHttp::constructing() -{ - //QHeader - { - QHttpRequestHeader header; - header.addValue("key1", "val1"); - header.addValue("key2", "val2"); - header.addValue("key1", "val3"); - QCOMPARE(header.values().size(), 3); - QCOMPARE(header.allValues("key1").size(), 2); - QVERIFY(header.hasKey("key2")); - QCOMPARE(header.keys().count(), 2); - - } - - { - QHttpResponseHeader header(200); - } -} - -void tst_QHttp::invalidRequests() -{ - QHttp http; - http.setHost("localhost"); // we will not actually connect - - QTest::ignoreMessage(QtWarningMsg, "QHttp: empty path requested is invalid -- using '/'"); - http.get(QString()); - - QTest::ignoreMessage(QtWarningMsg, "QHttp: empty path requested is invalid -- using '/'"); - http.head(QString()); - - QTest::ignoreMessage(QtWarningMsg, "QHttp: empty path requested is invalid -- using '/'"); - http.post(QString(), QByteArray()); - - QTest::ignoreMessage(QtWarningMsg, "QHttp: empty path requested is invalid -- using '/'"); - http.request(QHttpRequestHeader("PROPFIND", QString())); -} - -void tst_QHttp::get_data() -{ - QTest::addColumn("host"); - QTest::addColumn("port"); - QTest::addColumn("path"); - QTest::addColumn("success"); - QTest::addColumn("statusCode"); - QTest::addColumn("res"); - QTest::addColumn("useIODevice"); - - // ### move this into external testdata - QFile file( SRCDIR "rfc3252.txt" ); - QVERIFY( file.open( QIODevice::ReadOnly ) ); - QByteArray rfc3252 = file.readAll(); - file.close(); - - file.setFileName( SRCDIR "testhtml" ); - QVERIFY( file.open( QIODevice::ReadOnly ) ); - QByteArray testhtml = file.readAll(); - file.close(); - - // test the two get() modes in one routine - for ( int i=0; i<2; i++ ) { - QTest::newRow(QString("path_01_%1").arg(i).toLatin1()) << QtNetworkSettings::serverName() << 80u - << QString("/qtest/rfc3252.txt") << 1 << 200 << rfc3252 << (bool)(i==1); - QTest::newRow( QString("path_02_%1").arg(i).toLatin1() ) << QString("www.ietf.org") << 80u - << QString("/rfc/rfc3252.txt") << 1 << 200 << rfc3252 << (bool)(i==1); - - QTest::newRow( QString("uri_01_%1").arg(i).toLatin1() ) << QtNetworkSettings::serverName() << 80u - << QString("http://" + QtNetworkSettings::serverName() + "/qtest/rfc3252.txt") << 1 << 200 << rfc3252 << (bool)(i==1); - QTest::newRow( QString("uri_02_%1").arg(i).toLatin1() ) << "www.ietf.org" << 80u - << QString("http://www.ietf.org/rfc/rfc3252.txt") << 1 << 200 << rfc3252 << (bool)(i==1); - - QTest::newRow( QString("fail_01_%1").arg(i).toLatin1() ) << QString("this-host-will-not-exist.") << 80u - << QString("/qtest/rfc3252.txt") << 0 << 0 << QByteArray() << (bool)(i==1); - - QTest::newRow( QString("failprot_01_%1").arg(i).toLatin1() ) << QtNetworkSettings::serverName() << 80u - << QString("/t") << 1 << 404 << QByteArray() << (bool)(i==1); - QTest::newRow( QString("failprot_02_%1").arg(i).toLatin1() ) << QtNetworkSettings::serverName() << 80u - << QString("qtest/rfc3252.txt") << 1 << 400 << QByteArray() << (bool)(i==1); - - // qt.nokia.com/doc uses transfer-encoding=chunked - /* qt.nokia.com/doc no longer seams to be using chuncked encodig. - QTest::newRow( QString("chunked_01_%1").arg(i).toLatin1() ) << QString("test.troll.no") << 80u - << QString("/") << 1 << 200 << testhtml << (bool)(i==1); - */ - QTest::newRow( QString("chunked_02_%1").arg(i).toLatin1() ) << QtNetworkSettings::serverName() << 80u - << QString("/qtest/cgi-bin/rfc.cgi") << 1 << 200 << rfc3252 << (bool)(i==1); - } -} - -void tst_QHttp::get() -{ - // for the overload that takes a QIODevice - QByteArray buf_ba; - QBuffer buf( &buf_ba ); - - QFETCH( QString, host ); - QFETCH( uint, port ); - QFETCH( QString, path ); - QFETCH( bool, useIODevice ); - - http = newHttp(); - QCOMPARE( http->currentId(), 0 ); - QCOMPARE( (int)http->state(), (int)QHttp::Unconnected ); - - addRequest( QHttpRequestHeader(), http->setHost( host, port ) ); - if ( useIODevice ) { - buf.open( QIODevice::WriteOnly ); - getId = http->get( path, &buf ); - } else { - getId = http->get( path ); - } - addRequest( QHttpRequestHeader(), getId ); - - QTestEventLoop::instance().enterLoop( 50 ); - - if ( QTestEventLoop::instance().timeout() ) - QFAIL( "Network operation timed out" ); - - ResMapIt res = resultMap.find( getId ); - QVERIFY( res != resultMap.end() ); - if ( res.value().success!=1 && host=="www.ietf.org" ) { - // The nightly tests fail from time to time. In order to make them more - // stable, add some debug output that might help locate the problem (I - // can't reproduce the problem in the non-nightly builds). - qDebug( "Error %d: %s", http->error(), http->errorString().toLatin1().constData() ); - } - QTEST( res.value().success, "success" ); - if ( res.value().success ) { - QTEST( res.value().resp.statusCode(), "statusCode" ); - - QFETCH( QByteArray, res ); - if ( res.count() > 0 ) { - if ( useIODevice ) { - QCOMPARE(buf_ba, res); - if ( bytesDoneRead != bytesDone_init ) - QVERIFY( (int)buf_ba.size() == bytesDoneRead ); - } else { - QCOMPARE(readyRead_ba, res); - if ( bytesDoneRead != bytesDone_init ) - QVERIFY( (int)readyRead_ba.size() == bytesDoneRead ); - } - } - QVERIFY( bytesTotalRead != bytesTotal_init ); - if ( bytesTotalRead > 0 ) - QVERIFY( bytesDoneRead == bytesTotalRead ); - } else { - QVERIFY( !res.value().resp.isValid() ); - } -} - -void tst_QHttp::head_data() -{ - QTest::addColumn("host"); - QTest::addColumn("port"); - QTest::addColumn("path"); - QTest::addColumn("success"); - QTest::addColumn("statusCode"); - QTest::addColumn("contentLength"); - - QTest::newRow( "path_01" ) << QtNetworkSettings::serverName() << 80u - << QString("/qtest/rfc3252.txt") << 1 << 200 << 25962u; - - QTest::newRow( "path_02" ) << QString("www.ietf.org") << 80u - << QString("/rfc/rfc3252.txt") << 1 << 200 << 25962u; - - QTest::newRow( "uri_01" ) << QtNetworkSettings::serverName() << 80u - << QString("http://" + QtNetworkSettings::serverName() + "/qtest/rfc3252.txt") << 1 << 200 << 25962u; - - QTest::newRow( "uri_02" ) << QString("www.ietf.org") << 80u - << QString("http://www.ietf.org/rfc/rfc3252.txt") << 1 << 200 << 25962u; - - QTest::newRow( "fail_01" ) << QString("this-host-will-not-exist.") << 80u - << QString("/qtest/rfc3252.txt") << 0 << 0 << 0u; - - QTest::newRow( "failprot_01" ) << QtNetworkSettings::serverName() << 80u - << QString("/t") << 1 << 404 << 0u; - - QTest::newRow( "failprot_02" ) << QtNetworkSettings::serverName() << 80u - << QString("qtest/rfc3252.txt") << 1 << 400 << 0u; - - /* qt.nokia.com/doc no longer seams to be using chuncked encodig. - QTest::newRow( "chunked_01" ) << QString("qt.nokia.com/doc") << 80u - << QString("/index.html") << 1 << 200 << 0u; - */ - QTest::newRow( "chunked_02" ) << QtNetworkSettings::serverName() << 80u - << QString("/qtest/cgi-bin/rfc.cgi") << 1 << 200 << 0u; -} - -void tst_QHttp::head() -{ - QFETCH( QString, host ); - QFETCH( uint, port ); - QFETCH( QString, path ); - - http = newHttp(); - QCOMPARE( http->currentId(), 0 ); - QCOMPARE( (int)http->state(), (int)QHttp::Unconnected ); - - addRequest( QHttpRequestHeader(), http->setHost( host, port ) ); - headId = http->head( path ); - addRequest( QHttpRequestHeader(), headId ); - - QTestEventLoop::instance().enterLoop( 30 ); - if ( QTestEventLoop::instance().timeout() ) - QFAIL( "Network operation timed out" ); - - ResMapIt res = resultMap.find( headId ); - QVERIFY( res != resultMap.end() ); - if ( res.value().success!=1 && host=="www.ietf.org" ) { - // The nightly tests fail from time to time. In order to make them more - // stable, add some debug output that might help locate the problem (I - // can't reproduce the problem in the non-nightly builds). - qDebug( "Error %d: %s", http->error(), http->errorString().toLatin1().constData() ); - } - QTEST( res.value().success, "success" ); - if ( res.value().success ) { - QTEST( res.value().resp.statusCode(), "statusCode" ); - QTEST( res.value().resp.contentLength(), "contentLength" ); - - QCOMPARE( (uint)readyRead_ba.size(), 0u ); - QVERIFY( bytesTotalRead == bytesTotal_init ); - QVERIFY( bytesDoneRead == bytesDone_init ); - } else { - QVERIFY( !res.value().resp.isValid() ); - } -} - -void tst_QHttp::post_data() -{ - QTest::addColumn("source"); - QTest::addColumn("useIODevice"); - QTest::addColumn("useProxy"); - QTest::addColumn("host"); - QTest::addColumn("port"); - QTest::addColumn("ssl"); - QTest::addColumn("path"); - QTest::addColumn("result"); - - QByteArray md5sum; - md5sum = "d41d8cd98f00b204e9800998ecf8427e"; - QTest::newRow("empty-data") - << QString() << false << false - << QtNetworkSettings::serverName() << 80 << false << "/qtest/cgi-bin/md5sum.cgi" << md5sum; - QTest::newRow("empty-device") - << QString() << true << false - << QtNetworkSettings::serverName() << 80 << false << "/qtest/cgi-bin/md5sum.cgi" << md5sum; - QTest::newRow("proxy-empty-data") - << QString() << false << true - << QtNetworkSettings::serverName() << 80 << false << "/qtest/cgi-bin/md5sum.cgi" << md5sum; - - md5sum = "b3e32ac459b99d3f59318f3ac31e4bee"; - QTest::newRow("data") << "rfc3252.txt" << false << false - << QtNetworkSettings::serverName() << 80 << false << "/qtest/cgi-bin/md5sum.cgi" - << md5sum; - QTest::newRow("device") << "rfc3252.txt" << true << false - << QtNetworkSettings::serverName() << 80 << false << "/qtest/cgi-bin/md5sum.cgi" - << md5sum; - QTest::newRow("proxy-data") << "rfc3252.txt" << false << true - << QtNetworkSettings::serverName() << 80 << false << "/qtest/cgi-bin/md5sum.cgi" - << md5sum; - -#ifndef QT_NO_OPENSSL - md5sum = "d41d8cd98f00b204e9800998ecf8427e"; - QTest::newRow("empty-data-ssl") - << QString() << false << false - << QtNetworkSettings::serverName() << 443 << true << "/qtest/cgi-bin/md5sum.cgi" << md5sum; - QTest::newRow("empty-device-ssl") - << QString() << true << false - << QtNetworkSettings::serverName() << 443 << true << "/qtest/cgi-bin/md5sum.cgi" << md5sum; - QTest::newRow("proxy-empty-data-ssl") - << QString() << false << true - << QtNetworkSettings::serverName() << 443 << true << "/qtest/cgi-bin/md5sum.cgi" << md5sum; - md5sum = "b3e32ac459b99d3f59318f3ac31e4bee"; - QTest::newRow("data-ssl") << "rfc3252.txt" << false << false - << QtNetworkSettings::serverName() << 443 << true << "/qtest/cgi-bin/md5sum.cgi" - << md5sum; - QTest::newRow("device-ssl") << "rfc3252.txt" << true << false - << QtNetworkSettings::serverName() << 443 << true << "/qtest/cgi-bin/md5sum.cgi" - << md5sum; - QTest::newRow("proxy-data-ssl") << "rfc3252.txt" << false << true - << QtNetworkSettings::serverName() << 443 << true << "/qtest/cgi-bin/md5sum.cgi" - << md5sum; -#endif - - // the following test won't work. See task 185996 -/* - QTest::newRow("proxy-device") << "rfc3252.txt" << true << true - << QtNetworkSettings::serverName() << 80 << "/qtest/cgi-bin/md5sum.cgi" - << md5sum; -*/ -} - -void tst_QHttp::post() -{ - QFETCH(QString, source); - QFETCH(bool, useIODevice); - QFETCH(bool, useProxy); - QFETCH(QString, host); - QFETCH(int, port); - QFETCH(bool, ssl); - QFETCH(QString, path); - - http = newHttp(useProxy); -#ifndef QT_NO_OPENSSL - QObject::connect(http, SIGNAL(sslErrors(const QList &)), - http, SLOT(ignoreSslErrors())); -#endif - QCOMPARE(http->currentId(), 0); - QCOMPARE((int)http->state(), (int)QHttp::Unconnected); - if (useProxy) - addRequest(QHttpRequestHeader(), http->setProxy(QtNetworkSettings::serverName(), 3129)); - addRequest(QHttpRequestHeader(), http->setHost(host, (ssl ? QHttp::ConnectionModeHttps : QHttp::ConnectionModeHttp), port)); - - // add the POST request - QFile file(SRCDIR + source); - QBuffer emptyBuffer; - QIODevice *dev; - if (!source.isEmpty()) { - QVERIFY(file.open(QIODevice::ReadOnly)); - dev = &file; - } else { - emptyBuffer.open(QIODevice::ReadOnly); - dev = &emptyBuffer; - } - - if (useIODevice) - postId = http->post(path, dev); - else - postId = http->post(path, dev->readAll()); - addRequest(QHttpRequestHeader(), postId); - - // run request - connect(http, SIGNAL(proxyAuthenticationRequired(QNetworkProxy,QAuthenticator*)), - SLOT(proxyAuthenticationRequired(QNetworkProxy,QAuthenticator*))); - QTestEventLoop::instance().enterLoop( 30 ); - - if ( QTestEventLoop::instance().timeout() ) - QFAIL( "Network operation timed out" ); - - ResMapIt res = resultMap.find(postId); - QVERIFY(res != resultMap.end()); - QVERIFY(res.value().success); - QCOMPARE(res.value().resp.statusCode(), 200); - QTEST(readyRead_ba.trimmed(), "result"); -} - -void tst_QHttp::request_data() -{ - QTest::addColumn("source"); - QTest::addColumn("useIODevice"); - QTest::addColumn("useProxy"); - QTest::addColumn("host"); - QTest::addColumn("port"); - QTest::addColumn("method"); - QTest::addColumn("path"); - QTest::addColumn("result"); - - QFile source(SRCDIR "rfc3252.txt"); - if (!source.open(QIODevice::ReadOnly)) - return; - - QByteArray contents = source.readAll(); - QByteArray md5sum = QCryptographicHash::hash(contents, QCryptographicHash::Md5).toHex() + '\n'; - QByteArray emptyMd5sum = "d41d8cd98f00b204e9800998ecf8427e\n"; - - QTest::newRow("head") << QString() << false << false << QtNetworkSettings::serverName() << 80 - << "HEAD" << "/qtest/rfc3252.txt" - << QByteArray(); - QTest::newRow("get") << QString() << false << false << QtNetworkSettings::serverName() << 80 - << "GET" << "/qtest/rfc3252.txt" - << contents; - QTest::newRow("post-empty-data") << QString() << false << false - << QtNetworkSettings::serverName() << 80 << "POST" << "/qtest/cgi-bin/md5sum.cgi" - << emptyMd5sum; - QTest::newRow("post-empty-device") << QString() << true << false - << QtNetworkSettings::serverName() << 80 << "POST" << "/qtest/cgi-bin/md5sum.cgi" - << emptyMd5sum; - QTest::newRow("post-data") << "rfc3252.txt" << false << false - << QtNetworkSettings::serverName() << 80 << "POST" << "/qtest/cgi-bin/md5sum.cgi" - << md5sum; - QTest::newRow("post-device") << "rfc3252.txt" << true << false - << QtNetworkSettings::serverName() << 80 << "POST" << "/qtest/cgi-bin/md5sum.cgi" - << md5sum; - - QTest::newRow("proxy-head") << QString() << false << true << QtNetworkSettings::serverName() << 80 - << "HEAD" << "/qtest/rfc3252.txt" - << QByteArray(); - QTest::newRow("proxy-get") << QString() << false << true << QtNetworkSettings::serverName() << 80 - << "GET" << "/qtest/rfc3252.txt" - << contents; - QTest::newRow("proxy-post-empty-data") << QString() << false << true - << QtNetworkSettings::serverName() << 80 << "POST" << "/qtest/cgi-bin/md5sum.cgi" - << emptyMd5sum; - QTest::newRow("proxy-post-data") << "rfc3252.txt" << false << true - << QtNetworkSettings::serverName() << 80 << "POST" << "/qtest/cgi-bin/md5sum.cgi" - << md5sum; - // the following test won't work. See task 185996 -/* - QTest::newRow("proxy-post-device") << "rfc3252.txt" << true << true - << QtNetworkSettings::serverName() << 80 << "POST" << "/qtest/cgi-bin/md5sum.cgi" - << md5sum; -*/ -} - -void tst_QHttp::request() -{ - QFETCH(QString, source); - QFETCH(bool, useIODevice); - QFETCH(bool, useProxy); - QFETCH(QString, host); - QFETCH(int, port); - QFETCH(QString, method); - QFETCH(QString, path); - - http = newHttp(useProxy); - QCOMPARE(http->currentId(), 0); - QCOMPARE((int)http->state(), (int)QHttp::Unconnected); - if (useProxy) - addRequest(QHttpRequestHeader(), http->setProxy(QtNetworkSettings::serverName(), 3129)); - addRequest(QHttpRequestHeader(), http->setHost(host, port)); - - QFile file(SRCDIR + source); - QBuffer emptyBuffer; - QIODevice *dev; - if (!source.isEmpty()) { - QVERIFY(file.open(QIODevice::ReadOnly)); - dev = &file; - } else { - emptyBuffer.open(QIODevice::ReadOnly); - dev = &emptyBuffer; - } - - // prepare the request - QHttpRequestHeader request; - request.setRequest(method, path, 1,1); - request.addValue("Host", host); - int *theId; - - if (method == "POST") - theId = &postId; - else if (method == "GET") - theId = &getId; - else if (method == "HEAD") - theId = &headId; - else - QFAIL("You're lazy! Please implement your test!"); - - // now send the request - if (useIODevice) - *theId = http->request(request, dev); - else - *theId = http->request(request, dev->readAll()); - addRequest(QHttpRequestHeader(), *theId); - - // run request - connect(http, SIGNAL(proxyAuthenticationRequired(QNetworkProxy,QAuthenticator*)), - SLOT(proxyAuthenticationRequired(QNetworkProxy,QAuthenticator*))); - QTestEventLoop::instance().enterLoop( 30 ); - - if ( QTestEventLoop::instance().timeout() ) - QFAIL( "Network operation timed out" ); - - ResMapIt res = resultMap.find(*theId); - QVERIFY(res != resultMap.end()); - QVERIFY(res.value().success); - QCOMPARE(res.value().resp.statusCode(), 200); - QTEST(readyRead_ba, "result"); -} - -void tst_QHttp::authorization_data() -{ - QTest::addColumn("host"); - QTest::addColumn("path"); - QTest::addColumn("user"); - QTest::addColumn("pass"); - QTest::addColumn("result"); - - QTest::newRow("correct password") << QtNetworkSettings::serverName() - << QString::fromLatin1("/qtest/rfcs-auth/index.html") - << QString::fromLatin1("httptest") - << QString::fromLatin1("httptest") - << 200; - - QTest::newRow("no password") << QtNetworkSettings::serverName() - << QString::fromLatin1("/qtest/rfcs-auth/index.html") - << QString::fromLatin1("") - << QString::fromLatin1("") - << 401; - - QTest::newRow("wrong password") << QtNetworkSettings::serverName() - << QString::fromLatin1("/qtest/rfcs-auth/index.html") - << QString::fromLatin1("maliciu0s") - << QString::fromLatin1("h4X0r") - << 401; -} - -void tst_QHttp::authorization() -{ - QFETCH(QString, host); - QFETCH(QString, path); - QFETCH(QString, user); - QFETCH(QString, pass); - QFETCH(int, result); - - QEventLoop loop; - - QHttp http; - connect(&http, SIGNAL(done(bool)), &loop, SLOT(quit())); - - if (!user.isEmpty()) - http.setUser(user, pass); - http.setHost(host); - int id = http.get(path); - Q_UNUSED(id); - - QTimer::singleShot(5000, &loop, SLOT(quit())); - loop.exec(); - - QCOMPARE(http.lastResponse().statusCode(), result); -} - -void tst_QHttp::proxy_data() -{ - QTest::addColumn("proxyhost"); - QTest::addColumn("port"); - QTest::addColumn("host"); - QTest::addColumn("path"); - QTest::addColumn("proxyuser"); - QTest::addColumn("proxypass"); - - QTest::newRow("qt-test-server") << QtNetworkSettings::serverName() << 3128 - << QString::fromLatin1("qt.nokia.com") << QString::fromLatin1("/") - << QString::fromLatin1("") << QString::fromLatin1(""); - QTest::newRow("qt-test-server pct") << QtNetworkSettings::serverName() << 3128 - << QString::fromLatin1("qt.nokia.com") << QString::fromLatin1("/%64eveloper") - << QString::fromLatin1("") << QString::fromLatin1(""); - QTest::newRow("qt-test-server-basic") << QtNetworkSettings::serverName() << 3129 - << QString::fromLatin1("qt.nokia.com") << QString::fromLatin1("/") - << QString::fromLatin1("qsockstest") << QString::fromLatin1("password"); - -#if 0 - // NTLM requires sending the same request three times for it to work - // the tst_QHttp class is too strict to handle the byte counts sent by dataSendProgress - // So don't run this test: - QTest::newRow("qt-test-server-ntlm") << QtNetworkSettings::serverName() << 3130 - << QString::fromLatin1("qt.nokia.com") << QString::fromLatin1("/") - << QString::fromLatin1("qsockstest") << QString::fromLatin1("password"); -#endif -} - -void tst_QHttp::proxy() -{ - QFETCH(QString, proxyhost); - QFETCH(int, port); - QFETCH(QString, host); - QFETCH(QString, path); - QFETCH(QString, proxyuser); - QFETCH(QString, proxypass); - - http = newHttp(!proxyuser.isEmpty()); - - QCOMPARE(http->currentId(), 0); - QCOMPARE((int)http->state(), (int)QHttp::Unconnected); - - addRequest(QHttpRequestHeader(), http->setProxy(proxyhost, port, proxyuser, proxypass)); - addRequest(QHttpRequestHeader(), http->setHost(host)); - getId = http->get(path); - addRequest(QHttpRequestHeader(), getId); - - QTestEventLoop::instance().enterLoop(30); - if (QTestEventLoop::instance().timeout()) - QFAIL("Network operation timed out"); - - ResMapIt res = resultMap.find(getId); - QVERIFY(res != resultMap.end()); - QVERIFY(res.value().success); - QCOMPARE(res.value().resp.statusCode(), 200); -} - -void tst_QHttp::proxy2() -{ - QFETCH_GLOBAL(bool, setProxy); - if (setProxy) - return; - - readyRead_ba.clear(); - - QHttp http; - http.setProxy(QtNetworkSettings::serverName(), 3128); - http.setHost(QtNetworkSettings::serverName()); - http.get("/index.html"); - http.get("/index.html"); - - connect(&http, SIGNAL(requestFinished(int, bool)), - this, SLOT(proxy2_slot())); - QTestEventLoop::instance().enterLoop(30); - QVERIFY(!QTestEventLoop::instance().timeout()); - - QCOMPARE(readyRead_ba.count("Welcome to qt-test-server"), 2); - - readyRead_ba.clear(); -} - -void tst_QHttp::proxy2_slot() -{ - QHttp *http = static_cast(sender()); - readyRead_ba.append(http->readAll()); - if (!http->hasPendingRequests()) - QTestEventLoop::instance().exitLoop(); -} - -void tst_QHttp::proxy3() -{ - QFETCH_GLOBAL(bool, setProxy); - if (setProxy) - return; - - readyRead_ba.clear(); - - QTcpSocket socket; - socket.setProxy(QNetworkProxy(QNetworkProxy::HttpProxy, QtNetworkSettings::serverName(), 3128)); - - QHttp http; - http.setSocket(&socket); - http.setHost(QtNetworkSettings::serverName()); - http.get("/index.html"); - http.get("/index.html"); - - connect(&http, SIGNAL(requestFinished(int, bool)), - this, SLOT(proxy2_slot())); - QTestEventLoop::instance().enterLoop(30); - QVERIFY(!QTestEventLoop::instance().timeout()); - - QCOMPARE(readyRead_ba.count("Welcome to qt-test-server"), 2); - - readyRead_ba.clear(); -} - -// test QHttp::currentId() and QHttp::currentRequest() -#define CURRENTREQUEST_TEST \ - { \ - ResMapIt res = resultMap.find( http->currentId() ); \ - QVERIFY( res != resultMap.end() ); \ - if ( http->currentId() == getId ) { \ - QCOMPARE( http->currentRequest().method(), QString("GET") ); \ - } else if ( http->currentId() == headId ) { \ - QCOMPARE( http->currentRequest().method(), QString("HEAD") ); \ - } else if ( http->currentId() == postId ) { \ - QCOMPARE( http->currentRequest().method(), QString("POST") ); \ - } else { \ - QVERIFY( headerAreEqual( http->currentRequest(), res.value().req ) ); \ - } \ - } - -void tst_QHttp::requestStarted( int id ) -{ -#if defined( DUMP_SIGNALS ) - qDebug( "%d:requestStarted( %d )", http->currentId(), id ); -#endif - // make sure that the requestStarted and requestFinished are nested correctly - QVERIFY( current_id == 0 ); - current_id = id; - - QVERIFY( !ids.isEmpty() ); - QVERIFY( ids.first() == id ); - if ( ids.count() > 1 ) { - QVERIFY( http->hasPendingRequests() ); - } else { - QVERIFY( !http->hasPendingRequests() ); - } - - QVERIFY( http->currentId() == id ); - QVERIFY( cur_state == http->state() ); - - - - - CURRENTREQUEST_TEST; - - QVERIFY( http->error() == QHttp::NoError ); -} - -void tst_QHttp::requestFinished( int id, bool error ) -{ -#if defined( DUMP_SIGNALS ) - qDebug( "%d:requestFinished( %d, %d ) -- errorString: '%s'", - http->currentId(), id, (int)error, http->errorString().toAscii().data() ); -#endif - // make sure that the requestStarted and requestFinished are nested correctly - QVERIFY( current_id == id ); - current_id = 0; - - QVERIFY( !ids.isEmpty() ); - QVERIFY( ids.first() == id ); - if ( ids.count() > 1 ) { - QVERIFY( http->hasPendingRequests() ); - } else { - QVERIFY( !http->hasPendingRequests() ); - } - - if ( error ) { - QVERIFY( http->error() != QHttp::NoError ); - ids.clear(); - } else { - QVERIFY( http->error() == QHttp::NoError ); - ids.pop_front(); - } - - QVERIFY( http->currentId() == id ); - QVERIFY( cur_state == http->state() ); - CURRENTREQUEST_TEST; - - ResMapIt res = resultMap.find( http->currentId() ); - QVERIFY( res != resultMap.end() ); - QVERIFY( res.value().success == -1 ); - if ( error ) - res.value().success = 0; - else - res.value().success = 1; -} - -void tst_QHttp::done( bool error ) -{ -#if defined( DUMP_SIGNALS ) - qDebug( "%d:done( %d )", http->currentId(), (int)error ); -#endif - QVERIFY( http->currentId() == 0 ); - QVERIFY( current_id == 0 ); - QVERIFY( ids.isEmpty() ); - QVERIFY( cur_state == http->state() ); - QVERIFY( !http->hasPendingRequests() ); - - QVERIFY( done_success == -1 ); - if ( error ) { - QVERIFY( http->error() != QHttp::NoError ); - done_success = 0; - } else { - QVERIFY( http->error() == QHttp::NoError ); - done_success = 1; - } - QTestEventLoop::instance().exitLoop(); -} - -void tst_QHttp::stateChanged( int state ) -{ -#if defined( DUMP_SIGNALS ) - qDebug( "%d: stateChanged( %d )", http->currentId(), state ); -#endif - QCOMPARE( http->currentId(), current_id ); - if ( ids.count() > 0 ) - CURRENTREQUEST_TEST; - - QVERIFY( state != cur_state ); - QVERIFY( state == http->state() ); - if ( state != QHttp::Unconnected && !connectionWithAuth ) { - // make sure that the states are always emitted in the right order (for - // this, we assume an ordering on the enum values, which they have at - // the moment) - // connections with authentication will possibly reconnect, so ignore them - QVERIFY( cur_state < state ); - } - cur_state = state; - - if (state == QHttp::Connecting) { - bytesTotalSend = bytesTotal_init; - bytesDoneSend = bytesDone_init; - bytesTotalRead = bytesTotal_init; - bytesDoneRead = bytesDone_init; - } -} - -void tst_QHttp::responseHeaderReceived( const QHttpResponseHeader &header ) -{ -#if defined( DUMP_SIGNALS ) - qDebug( "%d: responseHeaderReceived(\n---{\n%s}---)", http->currentId(), header.toString().toAscii().data() ); -#endif - QCOMPARE( http->currentId(), current_id ); - if ( ids.count() > 1 ) { - QVERIFY( http->hasPendingRequests() ); - } else { - QVERIFY( !http->hasPendingRequests() ); - } - CURRENTREQUEST_TEST; - - resultMap[ http->currentId() ].resp = header; -} - -void tst_QHttp::readyRead( const QHttpResponseHeader & ) -{ -#if defined( DUMP_SIGNALS ) - qDebug( "%d: readyRead()", http->currentId() ); -#endif - QCOMPARE( http->currentId(), current_id ); - if ( ids.count() > 1 ) { - QVERIFY( http->hasPendingRequests() ); - } else { - QVERIFY( !http->hasPendingRequests() ); - } - QVERIFY( cur_state == http->state() ); - CURRENTREQUEST_TEST; - - if ( QTest::currentTestFunction() != QLatin1String("bytesAvailable") ) { - int oldSize = readyRead_ba.size(); - quint64 bytesAvail = http->bytesAvailable(); - QByteArray ba = http->readAll(); - QVERIFY( (quint64) ba.size() == bytesAvail ); - readyRead_ba.resize( oldSize + ba.size() ); - memcpy( readyRead_ba.data()+oldSize, ba.data(), ba.size() ); - - if ( bytesTotalRead > 0 ) { - QVERIFY( (int)readyRead_ba.size() <= bytesTotalRead ); - } - QVERIFY( (int)readyRead_ba.size() == bytesDoneRead ); - } -} - -void tst_QHttp::dataSendProgress( int done, int total ) -{ -#if defined( DUMP_SIGNALS ) - qDebug( "%d: dataSendProgress( %d, %d )", http->currentId(), done, total ); -#endif - QCOMPARE( http->currentId(), current_id ); - if ( ids.count() > 1 ) { - QVERIFY( http->hasPendingRequests() ); - } else { - QVERIFY( !http->hasPendingRequests() ); - } - QVERIFY( cur_state == http->state() ); - CURRENTREQUEST_TEST; - - if ( bytesTotalSend == bytesTotal_init ) { - bytesTotalSend = total; - } else { - QCOMPARE( bytesTotalSend, total ); - } - - QVERIFY( bytesTotalSend != bytesTotal_init ); - QVERIFY( bytesDoneSend <= done ); - bytesDoneSend = done; - if ( bytesTotalSend > 0 ) { - QVERIFY( bytesDoneSend <= bytesTotalSend ); - } - - if ( QTest::currentTestFunction() == QLatin1String("abort") ) { - // ### it would be nice if we could specify in our testdata when to do - // the abort - if ( done >= total/100000 ) { - if ( ids.count() != 1 ) { - // do abort only once - int tmpId = ids.first(); - ids.clear(); - ids << tmpId; - http->abort(); - } - } - } -} - -void tst_QHttp::dataReadProgress( int done, int total ) -{ -#if defined( DUMP_SIGNALS ) - qDebug( "%d: dataReadProgress( %d, %d )", http->currentId(), done, total ); -#endif - QCOMPARE( http->currentId(), current_id ); - if ( ids.count() > 1 ) { - QVERIFY( http->hasPendingRequests() ); - } else { - QVERIFY( !http->hasPendingRequests() ); - } - QVERIFY( cur_state == http->state() ); - CURRENTREQUEST_TEST; - - if ( bytesTotalRead == bytesTotal_init ) - bytesTotalRead = total; - else { - QVERIFY( bytesTotalRead == total ); - } - - QVERIFY( bytesTotalRead != bytesTotal_init ); - QVERIFY( bytesDoneRead <= done ); - bytesDoneRead = done; - if ( bytesTotalRead > 0 ) { - QVERIFY( bytesDoneRead <= bytesTotalRead ); - } - - if ( QTest::currentTestFunction() == QLatin1String("abort") ) { - // ### it would be nice if we could specify in our testdata when to do - // the abort - if ( done >= total/100000 ) { - if ( ids.count() != 1 ) { - // do abort only once - int tmpId = ids.first(); - ids.clear(); - ids << tmpId; - http->abort(); - } - } - } -} - - -QHttp *tst_QHttp::newHttp(bool withAuth) -{ - QHttp *nHttp = new QHttp( 0 ); - connect( nHttp, SIGNAL(requestStarted(int)), - SLOT(requestStarted(int)) ); - connect( nHttp, SIGNAL(requestFinished(int,bool)), - SLOT(requestFinished(int,bool)) ); - connect( nHttp, SIGNAL(done(bool)), - SLOT(done(bool)) ); - connect( nHttp, SIGNAL(stateChanged(int)), - SLOT(stateChanged(int)) ); - connect( nHttp, SIGNAL(responseHeaderReceived(const QHttpResponseHeader&)), - SLOT(responseHeaderReceived(const QHttpResponseHeader&)) ); - connect( nHttp, SIGNAL(readyRead(const QHttpResponseHeader&)), - SLOT(readyRead(const QHttpResponseHeader&)) ); - connect( nHttp, SIGNAL(dataSendProgress(int,int)), - SLOT(dataSendProgress(int,int)) ); - connect( nHttp, SIGNAL(dataReadProgress(int,int)), - SLOT(dataReadProgress(int,int)) ); - - connectionWithAuth = withAuth; - return nHttp; -} - -void tst_QHttp::addRequest( QHttpRequestHeader header, int id ) -{ - ids << id; - RequestResult res; - res.req = header; - res.success = -1; - resultMap[ id ] = res; -} - -bool tst_QHttp::headerAreEqual( const QHttpHeader &h1, const QHttpHeader &h2 ) -{ - if ( !h1.isValid() ) - return !h2.isValid(); - if ( !h2.isValid() ) - return !h1.isValid(); - - return h1.toString() == h2.toString(); -} - - -void tst_QHttp::reconnect() -{ - reconnect_state_connect_count = 0; - - QHttp http; - - QObject::connect(&http, SIGNAL(stateChanged(int)), this, SLOT(reconnect_state(int))); - http.setHost("trolltech.com", 80); - http.get("/company/index.html"); - http.setHost("trolltech.com", 8080); - http.get("/company/index.html"); - - QTestEventLoop::instance().enterLoop(60); - if (QTestEventLoop::instance().timeout()) - QFAIL("Network operation timed out"); - - QCOMPARE(reconnect_state_connect_count, 1); - - QTestEventLoop::instance().enterLoop(60); - if (QTestEventLoop::instance().timeout()) - QFAIL("Network operation timed out"); - - QCOMPARE(reconnect_state_connect_count, 2); -} - -void tst_QHttp::reconnect_state(int state) -{ - if (state == QHttp::Connecting) { - ++reconnect_state_connect_count; - QTestEventLoop::instance().exitLoop(); - } -} - -void tst_QHttp::setSocket() -{ - QHttp *http = new QHttp; - QPointer replacementSocket = new QTcpSocket; - http->setSocket(replacementSocket); - QCoreApplication::processEvents(); - delete http; - QVERIFY(replacementSocket); - delete replacementSocket; -} - -class Server : public QTcpServer -{ - Q_OBJECT -public: - Server() - { - connect(this, SIGNAL(newConnection()), - this, SLOT(serveConnection())); - } - -private slots: - void serveConnection() - { - QTcpSocket *socket = nextPendingConnection(); - socket->write("HTTP/1.1 404 Not found\r\n" - "content-length: 4\r\n\r\nabcd"); - socket->disconnectFromHost(); - }; -}; - -void tst_QHttp::unexpectedRemoteClose() -{ - QFETCH_GLOBAL(int, proxyType); - if (proxyType == QNetworkProxy::Socks5Proxy) { - // This test doesn't make sense for SOCKS5 - return; - } - - Server server; - server.listen(); - QCoreApplication::instance()->processEvents(); - - QEventLoop loop; - QTimer::singleShot(3000, &loop, SLOT(quit())); - - QHttp http; - QObject::connect(&http, SIGNAL(done(bool)), &loop, SLOT(quit())); - QSignalSpy finishedSpy(&http, SIGNAL(requestFinished(int, bool))); - QSignalSpy doneSpy(&http, SIGNAL(done(bool))); - - http.setHost("localhost", server.serverPort()); - http.get("/"); - http.get("/"); - http.get("/"); - - loop.exec(); - - QCOMPARE(finishedSpy.count(), 4); - QVERIFY(!finishedSpy.at(1).at(1).toBool()); - QVERIFY(!finishedSpy.at(2).at(1).toBool()); - QVERIFY(!finishedSpy.at(3).at(1).toBool()); - QCOMPARE(doneSpy.count(), 1); - QVERIFY(!doneSpy.at(0).at(0).toBool()); -} - -void tst_QHttp::pctEncodedPath() -{ - QHttpRequestHeader header; - header.setRequest("GET", "/index.asp/a=%20&b=%20&c=%20"); - QCOMPARE(header.toString(), QString("GET /index.asp/a=%20&b=%20&c=%20 HTTP/1.1\r\n\r\n")); -} - -void tst_QHttp::caseInsensitiveKeys() -{ - QHttpResponseHeader header("HTTP/1.1 200 OK\r\nContent-Length: 213\r\nX-Been-There: True\r\nLocation: http://www.TrollTech.com/\r\n\r\n"); - QVERIFY(header.hasKey("Content-Length")); - QVERIFY(header.hasKey("X-Been-There")); - QVERIFY(header.hasKey("Location")); - QVERIFY(header.hasKey("content-length")); - QVERIFY(header.hasKey("x-been-there")); - QVERIFY(header.hasKey("location")); - QCOMPARE(header.value("Content-Length"), QString("213")); - QCOMPARE(header.value("X-Been-There"), QString("True")); - QCOMPARE(header.value("Location"), QString("http://www.TrollTech.com/")); - QCOMPARE(header.value("content-length"), QString("213")); - QCOMPARE(header.value("x-been-there"), QString("True")); - QCOMPARE(header.value("location"), QString("http://www.TrollTech.com/")); - QCOMPARE(header.allValues("location"), QStringList("http://www.TrollTech.com/")); - - header.addValue("Content-Length", "213"); - header.addValue("Content-Length", "214"); - header.addValue("Content-Length", "215"); - qDebug() << header.toString(); -} - -void tst_QHttp::proxyAuthenticationRequired(const QNetworkProxy &, QAuthenticator *auth) -{ - proxyAuthCalled = true; - auth->setUser("qsockstest"); - auth->setPassword("password"); -} - -void tst_QHttp::postAuthNtlm() -{ - QSKIP("NTLM not working"); - - QHostInfo info = QHostInfo::fromName(QHostInfo::localHostName()); - QByteArray postData("Hello World"); - QHttp http; - - http.setHost(QtNetworkSettings::serverName()); - http.setProxy(QtNetworkSettings::serverName(), 3130); - http.post("/", postData); - - proxyAuthCalled = false; - connect(&http, SIGNAL(proxyAuthenticationRequired(QNetworkProxy,QAuthenticator*)), - SLOT(proxyAuthenticationRequired(QNetworkProxy,QAuthenticator*))); - - QObject::connect(&http, SIGNAL(done(bool)), &QTestEventLoop::instance(), SLOT(exitLoop())); - QTestEventLoop::instance().enterLoop(3); - QObject::disconnect(&http, SIGNAL(done(bool)), &QTestEventLoop::instance(), SLOT(exitLoop())); - - QVERIFY(proxyAuthCalled); - QVERIFY(!QTestEventLoop::instance().timeout()); -}; - -#ifndef QT_NO_OPENSSL -void tst_QHttp::proxyAndSsl() -{ - QFETCH_GLOBAL(bool, setProxy); - if (setProxy) - return; - - QHttp http; - - http.setHost(QtNetworkSettings::serverName(), QHttp::ConnectionModeHttps); - http.setProxy(QNetworkProxy(QNetworkProxy::HttpProxy, QtNetworkSettings::serverName(), 3129)); - http.get("/"); - - proxyAuthCalled = false; - connect(&http, SIGNAL(proxyAuthenticationRequired(QNetworkProxy,QAuthenticator*)), - SLOT(proxyAuthenticationRequired(QNetworkProxy,QAuthenticator*))); - connect(&http, SIGNAL(sslErrors(QList)), - &http, SLOT(ignoreSslErrors())); - - QObject::connect(&http, SIGNAL(done(bool)), &QTestEventLoop::instance(), SLOT(exitLoop())); - QTestEventLoop::instance().enterLoop(3); - QObject::disconnect(&http, SIGNAL(done(bool)), &QTestEventLoop::instance(), SLOT(exitLoop())); - - QVERIFY(!QTestEventLoop::instance().timeout()); - QVERIFY(proxyAuthCalled); - - QHttpResponseHeader header = http.lastResponse(); - QVERIFY(header.isValid()); - QVERIFY(header.statusCode() < 400); // Should be 200, but as long as it's not an error, we're happy -} -#endif - -#ifndef QT_NO_OPENSSL -void tst_QHttp::cachingProxyAndSsl() -{ - QFETCH_GLOBAL(bool, setProxy); - if (setProxy) - return; - - QHttp http; - - http.setHost(QtNetworkSettings::serverName(), QHttp::ConnectionModeHttps); - http.setProxy(QNetworkProxy(QNetworkProxy::HttpCachingProxy, QtNetworkSettings::serverName(), 3129)); - http.get("/"); - - proxyAuthCalled = false; - connect(&http, SIGNAL(proxyAuthenticationRequired(QNetworkProxy,QAuthenticator*)), - SLOT(proxyAuthenticationRequired(QNetworkProxy,QAuthenticator*))); - - QObject::connect(&http, SIGNAL(done(bool)), &QTestEventLoop::instance(), SLOT(exitLoop())); - QTestEventLoop::instance().enterLoop(3); - QObject::disconnect(&http, SIGNAL(done(bool)), &QTestEventLoop::instance(), SLOT(exitLoop())); - - QVERIFY(!QTestEventLoop::instance().timeout()); - QVERIFY(!proxyAuthCalled); // NOT called! QHttp should get a socket error - QVERIFY(http.state() != QHttp::Connected); - - QHttpResponseHeader header = http.lastResponse(); - QVERIFY(!header.isValid()); -} -#endif - -void tst_QHttp::emptyBodyInReply() -{ - // Note: if this test starts failing, please verify the date on the file - // returned by Apache on http://netiks.troll.no/ - // It is right now hard-coded to the date below - QHttp http; - http.setHost(QtNetworkSettings::serverName()); - - QHttpRequestHeader headers("GET", "/"); - headers.addValue("If-Modified-Since", "Sun, 16 Nov 2008 12:29:51 GMT"); - headers.addValue("Host", QtNetworkSettings::serverName()); - http.request(headers); - - QObject::connect(&http, SIGNAL(done(bool)), &QTestEventLoop::instance(), SLOT(exitLoop())); - QTestEventLoop::instance().enterLoop(10); - QObject::disconnect(&http, SIGNAL(done(bool)), &QTestEventLoop::instance(), SLOT(exitLoop())); - - QVERIFY(!QTestEventLoop::instance().timeout()); - - // check the reply - if (http.lastResponse().statusCode() != 304) { - qWarning() << http.lastResponse().statusCode() << qPrintable(http.lastResponse().reasonPhrase()); - qWarning() << "Last-Modified:" << qPrintable(http.lastResponse().value("last-modified")); - QFAIL("Server replied with the wrong status code; see warning output"); - } -} - -void tst_QHttp::abortSender() -{ - QHttp *http = qobject_cast(sender()); - if (http) - http->abort(); -} - -void tst_QHttp::abortInReadyRead() -{ - QHttp http; - http.setHost(QtNetworkSettings::serverName()); - http.get("/qtest/bigfile"); - - qRegisterMetaType(); - QSignalSpy spy(&http, SIGNAL(readyRead(QHttpResponseHeader))); - - QObject::connect(&http, SIGNAL(readyRead(QHttpResponseHeader)), this, SLOT(abortSender())); - QObject::connect(&http, SIGNAL(done(bool)), &QTestEventLoop::instance(), SLOT(exitLoop())); - QTestEventLoop::instance().enterLoop(10); - QObject::disconnect(&http, SIGNAL(done(bool)), &QTestEventLoop::instance(), SLOT(exitLoop())); - - QVERIFY2(!QTestEventLoop::instance().timeout(), "Network timeout"); - QVERIFY(http.state() != QHttp::Connected); - - QCOMPARE(spy.count(), 1); -} - -void tst_QHttp::abortInResponseHeaderReceived() -{ - QHttp http; - http.setHost(QtNetworkSettings::serverName()); - http.get("/qtest/bigfile"); - - qRegisterMetaType(); - QSignalSpy spy(&http, SIGNAL(readyRead(QHttpResponseHeader))); - - QObject::connect(&http, SIGNAL(responseHeaderReceived(QHttpResponseHeader)), this, SLOT(abortSender())); - QObject::connect(&http, SIGNAL(done(bool)), &QTestEventLoop::instance(), SLOT(exitLoop())); - QTestEventLoop::instance().enterLoop(10); - QObject::disconnect(&http, SIGNAL(done(bool)), &QTestEventLoop::instance(), SLOT(exitLoop())); - - QVERIFY2(!QTestEventLoop::instance().timeout(), "Network timeout"); - QVERIFY(http.state() != QHttp::Connected); - - QCOMPARE(spy.count(), 0); -} - -void tst_QHttp::connectionClose() -{ - // This was added in response to bug 176822 - QFETCH_GLOBAL(bool, setProxy); - if (setProxy) - return; - - QHttp http; - ClosingServer server; - http.setHost("localhost", QHttp::ConnectionModeHttps, server.serverPort()); - http.get("/login/gateway/processLogin"); - - // another possibility: - //http.setHost("nexus.passport.com", QHttp::ConnectionModeHttps, 443); - //http.get("/rdr/pprdr.asp"); - - QObject::connect(&http, SIGNAL(done(bool)), &QTestEventLoop::instance(), SLOT(exitLoop())); - QTestEventLoop::instance().enterLoop(900); - QObject::disconnect(&http, SIGNAL(done(bool)), &QTestEventLoop::instance(), SLOT(exitLoop())); - - QVERIFY(!QTestEventLoop::instance().timeout()); -} - -void tst_QHttp::nestedEventLoop_slot(int id) -{ - if (!ids.contains(id)) - return; - QEventLoop subloop; - - // 16 seconds: fluke times out in 15 seconds, which triggers a QTcpSocket error - QTimer::singleShot(16000, &subloop, SLOT(quit())); - subloop.exec(); - - QTestEventLoop::instance().exitLoop(); -} - -void tst_QHttp::nestedEventLoop() -{ - QFETCH_GLOBAL(bool, setProxy); - if (setProxy) - return; - - http = new QHttp; - http->setHost(QtNetworkSettings::serverName()); - int getId = http->get("/"); - - ids.clear(); - ids << getId; - - QSignalSpy spy(http, SIGNAL(requestStarted(int))); - QSignalSpy spy2(http, SIGNAL(done(bool))); - - connect(http, SIGNAL(requestFinished(int,bool)), SLOT(nestedEventLoop_slot(int))); - QTestEventLoop::instance().enterLoop(20); - - QVERIFY2(!QTestEventLoop::instance().timeout(), "Network timeout"); - - // Find out how many signals with the first argument equalling our id were found - int spyCount = 0; - for (int i = 0; i < spy.count(); ++i) - if (spy.at(i).at(0).toInt() == getId) - ++spyCount; - - // each signal spied should have been emitted only once - QCOMPARE(spyCount, 1); - QCOMPARE(spy2.count(), 1); -} - -QTEST_MAIN(tst_QHttp) -#include "tst_qhttp.moc" diff --git a/tests/auto/network/access/qhttp/webserver/cgi-bin/retrieve_testfile.cgi b/tests/auto/network/access/qhttp/webserver/cgi-bin/retrieve_testfile.cgi deleted file mode 100755 index 7896c505ca..0000000000 --- a/tests/auto/network/access/qhttp/webserver/cgi-bin/retrieve_testfile.cgi +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/sh - -echo "Content-type: text/plain"; -echo -cat testfile -echo "no file retrieved" > testfile diff --git a/tests/auto/network/access/qhttp/webserver/cgi-bin/rfc.cgi b/tests/auto/network/access/qhttp/webserver/cgi-bin/rfc.cgi deleted file mode 100755 index c68688ea31..0000000000 --- a/tests/auto/network/access/qhttp/webserver/cgi-bin/rfc.cgi +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/sh - -echo "Content-type: text/plain"; -echo -cat ../rfc3252 diff --git a/tests/auto/network/access/qhttp/webserver/cgi-bin/store_testfile.cgi b/tests/auto/network/access/qhttp/webserver/cgi-bin/store_testfile.cgi deleted file mode 100755 index e950f2af04..0000000000 --- a/tests/auto/network/access/qhttp/webserver/cgi-bin/store_testfile.cgi +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/sh - -echo "Content-type: text/plain"; -echo -echo "file stored under 'testfile'" -cat > testfile diff --git a/tests/auto/network/access/qhttp/webserver/index.html b/tests/auto/network/access/qhttp/webserver/index.html deleted file mode 100644 index b80c61bf0a..0000000000 --- a/tests/auto/network/access/qhttp/webserver/index.html +++ /dev/null @@ -1,899 +0,0 @@ - - - - - - -Network Working Group H. Kennedy -Request for Comments: 3252 Mimezine -Category: Informational 1 April 2002 - - - Binary Lexical Octet Ad-hoc Transport - -Status of this Memo - - This memo provides information for the Internet community. It does - not specify an Internet standard of any kind. Distribution of this - memo is unlimited. - -Copyright Notice - - Copyright (C) The Internet Society (2002). All Rights Reserved. - -Abstract - - This document defines a reformulation of IP and two transport layer - protocols (TCP and UDP) as XML applications. - -1. Introduction - -1.1. Overview - - This document describes the Binary Lexical Octet Ad-hoc Transport - (BLOAT): a reformulation of a widely-deployed network-layer protocol - (IP [RFC791]), and two associated transport layer protocols (TCP - [RFC793] and UDP [RFC768]) as XML [XML] applications. It also - describes methods for transporting BLOAT over Ethernet and IEEE 802 - networks as well as encapsulating BLOAT in IP for gatewaying BLOAT - across the public Internet. - -1.2. Motivation - - The wild popularity of XML as a basis for application-level protocols - such as the Blocks Extensible Exchange Protocol [RFC3080], the Simple - Object Access Protocol [SOAP], and Jabber [JABBER] prompted - investigation into the possibility of extending the use of XML in the - protocol stack. Using XML at both the transport and network layer in - addition to the application layer would provide for an amazing amount - of power and flexibility while removing dependencies on proprietary - and hard-to-understand binary protocols. This protocol unification - would also allow applications to use a single XML parser for all - aspects of their operation, eliminating developer time spent figuring - out the intricacies of each new protocol, and moving the hard work of - - - - -Kennedy Informational [Page 1] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - parsing to the XML toolset. The use of XML also mitigates concerns - over "network vs. host" byte ordering which is at the root of many - network application bugs. - -1.3. Relation to Existing Protocols - - The reformulations specified in this RFC follow as closely as - possible the spirit of the RFCs on which they are based, and so MAY - contain elements or attributes that would not be needed in a pure - reworking (e.g. length attributes, which are implicit in XML.) - - The layering of network and transport protocols are maintained in - this RFC despite the optimizations that could be made if the line - were somewhat blurred (i.e. merging TCP and IP into a single, larger - element in the DTD) in order to foster future use of this protocol as - a basis for reformulating other protocols (such as ICMP.) - - Other than the encoding, the behavioral aspects of each of the - existing protocols remain unchanged. Routing, address spaces, TCP - congestion control, etc. behave as specified in the extant standards. - Adapting to new standards and experimental algorithm heuristics for - improving performance will become much easier once the move to BLOAT - has been completed. - -1.4. Requirement Levels - - The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", - "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this - document are to be interpreted as described in BCP 14, RFC 2119 - [RFC2119]. - -2. IPoXML - - This protocol MUST be implemented to be compliant with this RFC. - IPoXML is the root protocol REQUIRED for effective use of TCPoXML - (section 3.) and higher-level application protocols. - - The DTD for this document type can be found in section 7.1. - - The routing of IPoXML can be easily implemented on hosts with an XML - parser, as the regular structure lends itself handily to parsing and - validation of the document/datagram and then processing the - destination address, TTL, and checksum before sending it on to its - next-hop. - - The reformulation of IPv4 was chosen over IPv6 [RFC2460] due to the - wider deployment of IPv4 and the fact that implementing IPv6 as XML - would have exceeded the 1500 byte Ethernet MTU. - - - -Kennedy Informational [Page 2] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - All BLOAT implementations MUST use - and specify - the UTF-8 encoding - of RFC 2279 [RFC2279]. All BLOAT document/datagrams MUST be well- - formed and include the XMLDecl. - -2.1. IP Description - - A number of items have changed (for the better) from the original IP - specification. Bit-masks, where present have been converted into - human-readable values. IP addresses are listed in their dotted- - decimal notation [RFC1123]. Length and checksum values are present - as decimal integers. - - To calculate the length and checksum fields of the IP element, a - canonicalized form of the element MUST be used. The canonical form - SHALL have no whitespace (including newline characters) between - elements and only one space character between attributes. There - SHALL NOT be a space following the last attribute in an element. - - An iterative method SHOULD be used to calculate checksums, as the - length field will vary based on the size of the checksum. - - The payload element bears special attention. Due to the character - set restrictions of XML, the payload of IP datagrams (which MAY - contain arbitrary data) MUST be encoded for transport. This RFC - REQUIRES the contents of the payload to be encoded in the base-64 - encoding of RFC 2045 [RFC2045], but removes the requirement that the - encoded output MUST be wrapped on 76-character lines. - - - - - - - - - - - - - - - - - - - - - - - - -Kennedy Informational [Page 3] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - -2.2. Example Datagram - - The following is an example IPoXML datagram with an empty payload: - - - - -
- - - - - - - - - - - - - - - -
- - -
- -3. TCPoXML - - This protocol MUST be implemented to be compliant with this RFC. The - DTD for this document type can be found in section 7.2. - -3.1. TCP Description - - A number of items have changed from the original TCP specification. - Bit-masks, where present have been converted into human-readable - values. Length and checksum and port values are present as decimal - integers. - - To calculate the length and checksum fields of the TCP element, a - canonicalized form of the element MUST be used as in section 2.1. - - An iterative method SHOULD be used to calculate checksums as in - section 2.1. - - The payload element MUST be encoded as in section 2.1. - - - -Kennedy Informational [Page 4] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - The TCP offset element was expanded to a maximum of 255 from 16 to - allow for the increased size of the header in XML. - - TCPoXML datagrams encapsulated by IPoXML MAY omit the header - as well as the declaration. - -3.2. Example Datagram - - The following is an example TCPoXML datagram with an empty payload: - - - - - - - - - - - - - - - - - - - - - - - - -4. UDPoXML - - This protocol MUST be implemented to be compliant with this RFC. The - DTD for this document type can be found in section 7.3. - -4.1. UDP Description - - A number of items have changed from the original UDP specification. - Bit-masks, where present have been converted into human-readable - values. Length and checksum and port values are present as decimal - integers. - - - - - - - -Kennedy Informational [Page 5] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - To calculate the length and checksum fields of the UDP element, a - canonicalized form of the element MUST be used as in section 2.1. An - iterative method SHOULD be used to calculate checksums as in section - 2.1. - - The payload element MUST be encoded as in section 2.1. - - UDPoXML datagrams encapsulated by IPoXML MAY omit the header - as well as the declaration. - -4.2. Example Datagram - - The following is an example UDPoXML datagram with an empty payload: - - - - - - - - - - - - - - -5. Network Transport - - This document provides for the transmission of BLOAT datagrams over - two common families of physical layer transport. Future RFCs will - address additional transports as routing vendors catch up to the - specification, and we begin to see BLOAT routed across the Internet - backbone. - -5.1. Ethernet - - BLOAT is encapsulated in Ethernet datagrams as in [RFC894] with the - exception that the type field of the Ethernet frame MUST contain the - value 0xBEEF. The first 5 octets of the Ethernet frame payload will - be 0x3c 3f 78 6d 6c (" - --> - - - - -Kennedy Informational [Page 7] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Kennedy Informational [Page 9] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - - - - - - - - - - - - - - - - - - - - - - -Kennedy Informational [Page 10] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - - - - - - - - - - - -7.2. TCPoXML DTD - - - - - - - - - - - - - - - - - -Kennedy Informational [Page 11] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Kennedy Informational [Page 12] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - - - - - - - - - - - - - - - - - - -7.3. UDPoXML DTD - - - - - - - - - - - - - - - -Kennedy Informational [Page 13] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - -8. Security Considerations - - XML, as a subset of SGML, has the same security considerations as - specified in SGML Media Types [RFC1874]. Security considerations - that apply to IP, TCP and UDP also likely apply to BLOAT as it does - not attempt to correct for issues not related to message format. - -9. References - - [JABBER] Miller, J., "Jabber", draft-miller-jabber-00.txt, - February 2002. (Work in Progress) - - [RFC768] Postel, J., "User Datagram Protocol", STD 6, RFC 768, - August 1980. - - [RFC791] Postel, J., "Internet Protocol", STD 5, RFC 791, - September 1981. - - [RFC793] Postel, J., "Transmission Control Protocol", STD 7, RFC - 793, September 1981. - - [RFC894] Hornig, C., "Standard for the Transmission of IP - Datagrams over Ethernet Networks.", RFC 894, April 1984. - - [RFC1042] Postel, J. and J. Reynolds, "Standard for the - Transmission of IP Datagrams Over IEEE 802 Networks", STD - 43, RFC 1042, February 1988. - - [RFC1123] Braden, R., "Requirements for Internet Hosts - - Application and Support", RFC 1123, October 1989. - - [RFC1874] Levinson, E., "SGML Media Types", RFC 1874, December - 1995. - - [RFC2003] Perkins, C., "IP Encapsulation within IP", RFC 2003, - October 1996. - - [RFC2045] Freed, N. and N. Borenstein, "Multipurpose Internet Mail - Extensions (MIME) Part One: Format of Internet Message - Bodies", RFC 2045, November 1996. - - [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate - Requirement Levels", BCP 14, RFC 2119, March 1997. - - [RFC2279] Yergeau, F., "UTF-8, a transformation format of ISO - 10646", RFC 2279, January 1998. - - - - - -Kennedy Informational [Page 14] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - [RFC2460] Deering, S. and R. Hinden, "Internet Protocol, Version 6 - (IPv6) Specification", RFC 2460, December 1998. - - [RFC3080] Rose, M., "The Blocks Extensible Exchange Protocol Core", - RFC 3080, March 2001. - - [SOAP] Box, D., Ehnebuske, D., Kakivaya, G., Layman, A., - Mendelsohn, N., Nielsen, H. F., Thatte, S. Winer, D., - "Simple Object Access Protocol (SOAP) 1.1" World Wide Web - Consortium Note, May 2000 http://www.w3.org/TR/SOAP/ - - [XML] Bray, T., Paoli, J., Sperberg-McQueen, C. M., "Extensible - Markup Language (XML)" World Wide Web Consortium - Recommendation REC- xml-19980210. - http://www.w3.org/TR/1998/REC-xml-19980210 - -10. Author's Address - - Hugh Kennedy - Mimezine - 1060 West Addison - Chicago, IL 60613 - USA - - EMail: kennedyh@engin.umich.edu - - - - - - - - - - - - - - - - - - - - - - - - - - -Kennedy Informational [Page 15] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - -11. Full Copyright Statement - - Copyright (C) The Internet Society (2002). All Rights Reserved. - - This document and translations of it may be copied and furnished to - others, and derivative works that comment on or otherwise explain it - or assist in its implementation may be prepared, copied, published - and distributed, in whole or in part, without restriction of any - kind, provided that the above copyright notice and this paragraph are - included on all such copies and derivative works. However, this - document itself may not be modified in any way, such as by removing - the copyright notice or references to the Internet Society or other - Internet organizations, except as needed for the purpose of - developing Internet standards in which case the procedures for - copyrights defined in the Internet Standards process must be - followed, or as required to translate it into languages other than - English. - - The limited permissions granted above are perpetual and will not be - revoked by the Internet Society or its successors or assigns. - - This document and the information contained herein is provided on an - "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING - TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING - BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION - HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF - MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. - -Acknowledgement - - Funding for the RFC Editor function is currently provided by the - Internet Society. - - - - - - - - - - - - - - - - - - - -Kennedy Informational [Page 16] - diff --git a/tests/auto/network/access/qhttp/webserver/rfc3252 b/tests/auto/network/access/qhttp/webserver/rfc3252 deleted file mode 100644 index b80c61bf0a..0000000000 --- a/tests/auto/network/access/qhttp/webserver/rfc3252 +++ /dev/null @@ -1,899 +0,0 @@ - - - - - - -Network Working Group H. Kennedy -Request for Comments: 3252 Mimezine -Category: Informational 1 April 2002 - - - Binary Lexical Octet Ad-hoc Transport - -Status of this Memo - - This memo provides information for the Internet community. It does - not specify an Internet standard of any kind. Distribution of this - memo is unlimited. - -Copyright Notice - - Copyright (C) The Internet Society (2002). All Rights Reserved. - -Abstract - - This document defines a reformulation of IP and two transport layer - protocols (TCP and UDP) as XML applications. - -1. Introduction - -1.1. Overview - - This document describes the Binary Lexical Octet Ad-hoc Transport - (BLOAT): a reformulation of a widely-deployed network-layer protocol - (IP [RFC791]), and two associated transport layer protocols (TCP - [RFC793] and UDP [RFC768]) as XML [XML] applications. It also - describes methods for transporting BLOAT over Ethernet and IEEE 802 - networks as well as encapsulating BLOAT in IP for gatewaying BLOAT - across the public Internet. - -1.2. Motivation - - The wild popularity of XML as a basis for application-level protocols - such as the Blocks Extensible Exchange Protocol [RFC3080], the Simple - Object Access Protocol [SOAP], and Jabber [JABBER] prompted - investigation into the possibility of extending the use of XML in the - protocol stack. Using XML at both the transport and network layer in - addition to the application layer would provide for an amazing amount - of power and flexibility while removing dependencies on proprietary - and hard-to-understand binary protocols. This protocol unification - would also allow applications to use a single XML parser for all - aspects of their operation, eliminating developer time spent figuring - out the intricacies of each new protocol, and moving the hard work of - - - - -Kennedy Informational [Page 1] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - parsing to the XML toolset. The use of XML also mitigates concerns - over "network vs. host" byte ordering which is at the root of many - network application bugs. - -1.3. Relation to Existing Protocols - - The reformulations specified in this RFC follow as closely as - possible the spirit of the RFCs on which they are based, and so MAY - contain elements or attributes that would not be needed in a pure - reworking (e.g. length attributes, which are implicit in XML.) - - The layering of network and transport protocols are maintained in - this RFC despite the optimizations that could be made if the line - were somewhat blurred (i.e. merging TCP and IP into a single, larger - element in the DTD) in order to foster future use of this protocol as - a basis for reformulating other protocols (such as ICMP.) - - Other than the encoding, the behavioral aspects of each of the - existing protocols remain unchanged. Routing, address spaces, TCP - congestion control, etc. behave as specified in the extant standards. - Adapting to new standards and experimental algorithm heuristics for - improving performance will become much easier once the move to BLOAT - has been completed. - -1.4. Requirement Levels - - The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", - "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this - document are to be interpreted as described in BCP 14, RFC 2119 - [RFC2119]. - -2. IPoXML - - This protocol MUST be implemented to be compliant with this RFC. - IPoXML is the root protocol REQUIRED for effective use of TCPoXML - (section 3.) and higher-level application protocols. - - The DTD for this document type can be found in section 7.1. - - The routing of IPoXML can be easily implemented on hosts with an XML - parser, as the regular structure lends itself handily to parsing and - validation of the document/datagram and then processing the - destination address, TTL, and checksum before sending it on to its - next-hop. - - The reformulation of IPv4 was chosen over IPv6 [RFC2460] due to the - wider deployment of IPv4 and the fact that implementing IPv6 as XML - would have exceeded the 1500 byte Ethernet MTU. - - - -Kennedy Informational [Page 2] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - All BLOAT implementations MUST use - and specify - the UTF-8 encoding - of RFC 2279 [RFC2279]. All BLOAT document/datagrams MUST be well- - formed and include the XMLDecl. - -2.1. IP Description - - A number of items have changed (for the better) from the original IP - specification. Bit-masks, where present have been converted into - human-readable values. IP addresses are listed in their dotted- - decimal notation [RFC1123]. Length and checksum values are present - as decimal integers. - - To calculate the length and checksum fields of the IP element, a - canonicalized form of the element MUST be used. The canonical form - SHALL have no whitespace (including newline characters) between - elements and only one space character between attributes. There - SHALL NOT be a space following the last attribute in an element. - - An iterative method SHOULD be used to calculate checksums, as the - length field will vary based on the size of the checksum. - - The payload element bears special attention. Due to the character - set restrictions of XML, the payload of IP datagrams (which MAY - contain arbitrary data) MUST be encoded for transport. This RFC - REQUIRES the contents of the payload to be encoded in the base-64 - encoding of RFC 2045 [RFC2045], but removes the requirement that the - encoded output MUST be wrapped on 76-character lines. - - - - - - - - - - - - - - - - - - - - - - - - -Kennedy Informational [Page 3] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - -2.2. Example Datagram - - The following is an example IPoXML datagram with an empty payload: - - - - -
- - - - - - - - - - - - - - - -
- - -
- -3. TCPoXML - - This protocol MUST be implemented to be compliant with this RFC. The - DTD for this document type can be found in section 7.2. - -3.1. TCP Description - - A number of items have changed from the original TCP specification. - Bit-masks, where present have been converted into human-readable - values. Length and checksum and port values are present as decimal - integers. - - To calculate the length and checksum fields of the TCP element, a - canonicalized form of the element MUST be used as in section 2.1. - - An iterative method SHOULD be used to calculate checksums as in - section 2.1. - - The payload element MUST be encoded as in section 2.1. - - - -Kennedy Informational [Page 4] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - The TCP offset element was expanded to a maximum of 255 from 16 to - allow for the increased size of the header in XML. - - TCPoXML datagrams encapsulated by IPoXML MAY omit the header - as well as the declaration. - -3.2. Example Datagram - - The following is an example TCPoXML datagram with an empty payload: - - - - - - - - - - - - - - - - - - - - - - - - -4. UDPoXML - - This protocol MUST be implemented to be compliant with this RFC. The - DTD for this document type can be found in section 7.3. - -4.1. UDP Description - - A number of items have changed from the original UDP specification. - Bit-masks, where present have been converted into human-readable - values. Length and checksum and port values are present as decimal - integers. - - - - - - - -Kennedy Informational [Page 5] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - To calculate the length and checksum fields of the UDP element, a - canonicalized form of the element MUST be used as in section 2.1. An - iterative method SHOULD be used to calculate checksums as in section - 2.1. - - The payload element MUST be encoded as in section 2.1. - - UDPoXML datagrams encapsulated by IPoXML MAY omit the header - as well as the declaration. - -4.2. Example Datagram - - The following is an example UDPoXML datagram with an empty payload: - - - - - - - - - - - - - - -5. Network Transport - - This document provides for the transmission of BLOAT datagrams over - two common families of physical layer transport. Future RFCs will - address additional transports as routing vendors catch up to the - specification, and we begin to see BLOAT routed across the Internet - backbone. - -5.1. Ethernet - - BLOAT is encapsulated in Ethernet datagrams as in [RFC894] with the - exception that the type field of the Ethernet frame MUST contain the - value 0xBEEF. The first 5 octets of the Ethernet frame payload will - be 0x3c 3f 78 6d 6c (" - --> - - - - -Kennedy Informational [Page 7] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Kennedy Informational [Page 9] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - - - - - - - - - - - - - - - - - - - - - - -Kennedy Informational [Page 10] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - - - - - - - - - - - -7.2. TCPoXML DTD - - - - - - - - - - - - - - - - - -Kennedy Informational [Page 11] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Kennedy Informational [Page 12] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - - - - - - - - - - - - - - - - - - -7.3. UDPoXML DTD - - - - - - - - - - - - - - - -Kennedy Informational [Page 13] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - -8. Security Considerations - - XML, as a subset of SGML, has the same security considerations as - specified in SGML Media Types [RFC1874]. Security considerations - that apply to IP, TCP and UDP also likely apply to BLOAT as it does - not attempt to correct for issues not related to message format. - -9. References - - [JABBER] Miller, J., "Jabber", draft-miller-jabber-00.txt, - February 2002. (Work in Progress) - - [RFC768] Postel, J., "User Datagram Protocol", STD 6, RFC 768, - August 1980. - - [RFC791] Postel, J., "Internet Protocol", STD 5, RFC 791, - September 1981. - - [RFC793] Postel, J., "Transmission Control Protocol", STD 7, RFC - 793, September 1981. - - [RFC894] Hornig, C., "Standard for the Transmission of IP - Datagrams over Ethernet Networks.", RFC 894, April 1984. - - [RFC1042] Postel, J. and J. Reynolds, "Standard for the - Transmission of IP Datagrams Over IEEE 802 Networks", STD - 43, RFC 1042, February 1988. - - [RFC1123] Braden, R., "Requirements for Internet Hosts - - Application and Support", RFC 1123, October 1989. - - [RFC1874] Levinson, E., "SGML Media Types", RFC 1874, December - 1995. - - [RFC2003] Perkins, C., "IP Encapsulation within IP", RFC 2003, - October 1996. - - [RFC2045] Freed, N. and N. Borenstein, "Multipurpose Internet Mail - Extensions (MIME) Part One: Format of Internet Message - Bodies", RFC 2045, November 1996. - - [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate - Requirement Levels", BCP 14, RFC 2119, March 1997. - - [RFC2279] Yergeau, F., "UTF-8, a transformation format of ISO - 10646", RFC 2279, January 1998. - - - - - -Kennedy Informational [Page 14] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - [RFC2460] Deering, S. and R. Hinden, "Internet Protocol, Version 6 - (IPv6) Specification", RFC 2460, December 1998. - - [RFC3080] Rose, M., "The Blocks Extensible Exchange Protocol Core", - RFC 3080, March 2001. - - [SOAP] Box, D., Ehnebuske, D., Kakivaya, G., Layman, A., - Mendelsohn, N., Nielsen, H. F., Thatte, S. Winer, D., - "Simple Object Access Protocol (SOAP) 1.1" World Wide Web - Consortium Note, May 2000 http://www.w3.org/TR/SOAP/ - - [XML] Bray, T., Paoli, J., Sperberg-McQueen, C. M., "Extensible - Markup Language (XML)" World Wide Web Consortium - Recommendation REC- xml-19980210. - http://www.w3.org/TR/1998/REC-xml-19980210 - -10. Author's Address - - Hugh Kennedy - Mimezine - 1060 West Addison - Chicago, IL 60613 - USA - - EMail: kennedyh@engin.umich.edu - - - - - - - - - - - - - - - - - - - - - - - - - - -Kennedy Informational [Page 15] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - -11. Full Copyright Statement - - Copyright (C) The Internet Society (2002). All Rights Reserved. - - This document and translations of it may be copied and furnished to - others, and derivative works that comment on or otherwise explain it - or assist in its implementation may be prepared, copied, published - and distributed, in whole or in part, without restriction of any - kind, provided that the above copyright notice and this paragraph are - included on all such copies and derivative works. However, this - document itself may not be modified in any way, such as by removing - the copyright notice or references to the Internet Society or other - Internet organizations, except as needed for the purpose of - developing Internet standards in which case the procedures for - copyrights defined in the Internet Standards process must be - followed, or as required to translate it into languages other than - English. - - The limited permissions granted above are perpetual and will not be - revoked by the Internet Society or its successors or assigns. - - This document and the information contained herein is provided on an - "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING - TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING - BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION - HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF - MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. - -Acknowledgement - - Funding for the RFC Editor function is currently provided by the - Internet Society. - - - - - - - - - - - - - - - - - - - -Kennedy Informational [Page 16] - diff --git a/tests/auto/network/access/qhttp/webserver/rfc3252.txt b/tests/auto/network/access/qhttp/webserver/rfc3252.txt deleted file mode 100644 index b80c61bf0a..0000000000 --- a/tests/auto/network/access/qhttp/webserver/rfc3252.txt +++ /dev/null @@ -1,899 +0,0 @@ - - - - - - -Network Working Group H. Kennedy -Request for Comments: 3252 Mimezine -Category: Informational 1 April 2002 - - - Binary Lexical Octet Ad-hoc Transport - -Status of this Memo - - This memo provides information for the Internet community. It does - not specify an Internet standard of any kind. Distribution of this - memo is unlimited. - -Copyright Notice - - Copyright (C) The Internet Society (2002). All Rights Reserved. - -Abstract - - This document defines a reformulation of IP and two transport layer - protocols (TCP and UDP) as XML applications. - -1. Introduction - -1.1. Overview - - This document describes the Binary Lexical Octet Ad-hoc Transport - (BLOAT): a reformulation of a widely-deployed network-layer protocol - (IP [RFC791]), and two associated transport layer protocols (TCP - [RFC793] and UDP [RFC768]) as XML [XML] applications. It also - describes methods for transporting BLOAT over Ethernet and IEEE 802 - networks as well as encapsulating BLOAT in IP for gatewaying BLOAT - across the public Internet. - -1.2. Motivation - - The wild popularity of XML as a basis for application-level protocols - such as the Blocks Extensible Exchange Protocol [RFC3080], the Simple - Object Access Protocol [SOAP], and Jabber [JABBER] prompted - investigation into the possibility of extending the use of XML in the - protocol stack. Using XML at both the transport and network layer in - addition to the application layer would provide for an amazing amount - of power and flexibility while removing dependencies on proprietary - and hard-to-understand binary protocols. This protocol unification - would also allow applications to use a single XML parser for all - aspects of their operation, eliminating developer time spent figuring - out the intricacies of each new protocol, and moving the hard work of - - - - -Kennedy Informational [Page 1] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - parsing to the XML toolset. The use of XML also mitigates concerns - over "network vs. host" byte ordering which is at the root of many - network application bugs. - -1.3. Relation to Existing Protocols - - The reformulations specified in this RFC follow as closely as - possible the spirit of the RFCs on which they are based, and so MAY - contain elements or attributes that would not be needed in a pure - reworking (e.g. length attributes, which are implicit in XML.) - - The layering of network and transport protocols are maintained in - this RFC despite the optimizations that could be made if the line - were somewhat blurred (i.e. merging TCP and IP into a single, larger - element in the DTD) in order to foster future use of this protocol as - a basis for reformulating other protocols (such as ICMP.) - - Other than the encoding, the behavioral aspects of each of the - existing protocols remain unchanged. Routing, address spaces, TCP - congestion control, etc. behave as specified in the extant standards. - Adapting to new standards and experimental algorithm heuristics for - improving performance will become much easier once the move to BLOAT - has been completed. - -1.4. Requirement Levels - - The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", - "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this - document are to be interpreted as described in BCP 14, RFC 2119 - [RFC2119]. - -2. IPoXML - - This protocol MUST be implemented to be compliant with this RFC. - IPoXML is the root protocol REQUIRED for effective use of TCPoXML - (section 3.) and higher-level application protocols. - - The DTD for this document type can be found in section 7.1. - - The routing of IPoXML can be easily implemented on hosts with an XML - parser, as the regular structure lends itself handily to parsing and - validation of the document/datagram and then processing the - destination address, TTL, and checksum before sending it on to its - next-hop. - - The reformulation of IPv4 was chosen over IPv6 [RFC2460] due to the - wider deployment of IPv4 and the fact that implementing IPv6 as XML - would have exceeded the 1500 byte Ethernet MTU. - - - -Kennedy Informational [Page 2] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - All BLOAT implementations MUST use - and specify - the UTF-8 encoding - of RFC 2279 [RFC2279]. All BLOAT document/datagrams MUST be well- - formed and include the XMLDecl. - -2.1. IP Description - - A number of items have changed (for the better) from the original IP - specification. Bit-masks, where present have been converted into - human-readable values. IP addresses are listed in their dotted- - decimal notation [RFC1123]. Length and checksum values are present - as decimal integers. - - To calculate the length and checksum fields of the IP element, a - canonicalized form of the element MUST be used. The canonical form - SHALL have no whitespace (including newline characters) between - elements and only one space character between attributes. There - SHALL NOT be a space following the last attribute in an element. - - An iterative method SHOULD be used to calculate checksums, as the - length field will vary based on the size of the checksum. - - The payload element bears special attention. Due to the character - set restrictions of XML, the payload of IP datagrams (which MAY - contain arbitrary data) MUST be encoded for transport. This RFC - REQUIRES the contents of the payload to be encoded in the base-64 - encoding of RFC 2045 [RFC2045], but removes the requirement that the - encoded output MUST be wrapped on 76-character lines. - - - - - - - - - - - - - - - - - - - - - - - - -Kennedy Informational [Page 3] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - -2.2. Example Datagram - - The following is an example IPoXML datagram with an empty payload: - - - - -
- - - - - - - - - - - - - - - -
- - -
- -3. TCPoXML - - This protocol MUST be implemented to be compliant with this RFC. The - DTD for this document type can be found in section 7.2. - -3.1. TCP Description - - A number of items have changed from the original TCP specification. - Bit-masks, where present have been converted into human-readable - values. Length and checksum and port values are present as decimal - integers. - - To calculate the length and checksum fields of the TCP element, a - canonicalized form of the element MUST be used as in section 2.1. - - An iterative method SHOULD be used to calculate checksums as in - section 2.1. - - The payload element MUST be encoded as in section 2.1. - - - -Kennedy Informational [Page 4] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - The TCP offset element was expanded to a maximum of 255 from 16 to - allow for the increased size of the header in XML. - - TCPoXML datagrams encapsulated by IPoXML MAY omit the header - as well as the declaration. - -3.2. Example Datagram - - The following is an example TCPoXML datagram with an empty payload: - - - - - - - - - - - - - - - - - - - - - - - - -4. UDPoXML - - This protocol MUST be implemented to be compliant with this RFC. The - DTD for this document type can be found in section 7.3. - -4.1. UDP Description - - A number of items have changed from the original UDP specification. - Bit-masks, where present have been converted into human-readable - values. Length and checksum and port values are present as decimal - integers. - - - - - - - -Kennedy Informational [Page 5] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - To calculate the length and checksum fields of the UDP element, a - canonicalized form of the element MUST be used as in section 2.1. An - iterative method SHOULD be used to calculate checksums as in section - 2.1. - - The payload element MUST be encoded as in section 2.1. - - UDPoXML datagrams encapsulated by IPoXML MAY omit the header - as well as the declaration. - -4.2. Example Datagram - - The following is an example UDPoXML datagram with an empty payload: - - - - - - - - - - - - - - -5. Network Transport - - This document provides for the transmission of BLOAT datagrams over - two common families of physical layer transport. Future RFCs will - address additional transports as routing vendors catch up to the - specification, and we begin to see BLOAT routed across the Internet - backbone. - -5.1. Ethernet - - BLOAT is encapsulated in Ethernet datagrams as in [RFC894] with the - exception that the type field of the Ethernet frame MUST contain the - value 0xBEEF. The first 5 octets of the Ethernet frame payload will - be 0x3c 3f 78 6d 6c (" - --> - - - - -Kennedy Informational [Page 7] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Kennedy Informational [Page 9] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - - - - - - - - - - - - - - - - - - - - - - -Kennedy Informational [Page 10] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - - - - - - - - - - - -7.2. TCPoXML DTD - - - - - - - - - - - - - - - - - -Kennedy Informational [Page 11] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Kennedy Informational [Page 12] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - - - - - - - - - - - - - - - - - - -7.3. UDPoXML DTD - - - - - - - - - - - - - - - -Kennedy Informational [Page 13] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - -8. Security Considerations - - XML, as a subset of SGML, has the same security considerations as - specified in SGML Media Types [RFC1874]. Security considerations - that apply to IP, TCP and UDP also likely apply to BLOAT as it does - not attempt to correct for issues not related to message format. - -9. References - - [JABBER] Miller, J., "Jabber", draft-miller-jabber-00.txt, - February 2002. (Work in Progress) - - [RFC768] Postel, J., "User Datagram Protocol", STD 6, RFC 768, - August 1980. - - [RFC791] Postel, J., "Internet Protocol", STD 5, RFC 791, - September 1981. - - [RFC793] Postel, J., "Transmission Control Protocol", STD 7, RFC - 793, September 1981. - - [RFC894] Hornig, C., "Standard for the Transmission of IP - Datagrams over Ethernet Networks.", RFC 894, April 1984. - - [RFC1042] Postel, J. and J. Reynolds, "Standard for the - Transmission of IP Datagrams Over IEEE 802 Networks", STD - 43, RFC 1042, February 1988. - - [RFC1123] Braden, R., "Requirements for Internet Hosts - - Application and Support", RFC 1123, October 1989. - - [RFC1874] Levinson, E., "SGML Media Types", RFC 1874, December - 1995. - - [RFC2003] Perkins, C., "IP Encapsulation within IP", RFC 2003, - October 1996. - - [RFC2045] Freed, N. and N. Borenstein, "Multipurpose Internet Mail - Extensions (MIME) Part One: Format of Internet Message - Bodies", RFC 2045, November 1996. - - [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate - Requirement Levels", BCP 14, RFC 2119, March 1997. - - [RFC2279] Yergeau, F., "UTF-8, a transformation format of ISO - 10646", RFC 2279, January 1998. - - - - - -Kennedy Informational [Page 14] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - - [RFC2460] Deering, S. and R. Hinden, "Internet Protocol, Version 6 - (IPv6) Specification", RFC 2460, December 1998. - - [RFC3080] Rose, M., "The Blocks Extensible Exchange Protocol Core", - RFC 3080, March 2001. - - [SOAP] Box, D., Ehnebuske, D., Kakivaya, G., Layman, A., - Mendelsohn, N., Nielsen, H. F., Thatte, S. Winer, D., - "Simple Object Access Protocol (SOAP) 1.1" World Wide Web - Consortium Note, May 2000 http://www.w3.org/TR/SOAP/ - - [XML] Bray, T., Paoli, J., Sperberg-McQueen, C. M., "Extensible - Markup Language (XML)" World Wide Web Consortium - Recommendation REC- xml-19980210. - http://www.w3.org/TR/1998/REC-xml-19980210 - -10. Author's Address - - Hugh Kennedy - Mimezine - 1060 West Addison - Chicago, IL 60613 - USA - - EMail: kennedyh@engin.umich.edu - - - - - - - - - - - - - - - - - - - - - - - - - - -Kennedy Informational [Page 15] - -RFC 3252 Binary Lexical Octet Ad-hoc Transport 1 April 2002 - - -11. Full Copyright Statement - - Copyright (C) The Internet Society (2002). All Rights Reserved. - - This document and translations of it may be copied and furnished to - others, and derivative works that comment on or otherwise explain it - or assist in its implementation may be prepared, copied, published - and distributed, in whole or in part, without restriction of any - kind, provided that the above copyright notice and this paragraph are - included on all such copies and derivative works. However, this - document itself may not be modified in any way, such as by removing - the copyright notice or references to the Internet Society or other - Internet organizations, except as needed for the purpose of - developing Internet standards in which case the procedures for - copyrights defined in the Internet Standards process must be - followed, or as required to translate it into languages other than - English. - - The limited permissions granted above are perpetual and will not be - revoked by the Internet Society or its successors or assigns. - - This document and the information contained herein is provided on an - "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING - TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING - BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION - HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF - MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. - -Acknowledgement - - Funding for the RFC Editor function is currently provided by the - Internet Society. - - - - - - - - - - - - - - - - - - - -Kennedy Informational [Page 16] - diff --git a/tests/auto/network/socket/qhttpsocketengine/tst_qhttpsocketengine.cpp b/tests/auto/network/socket/qhttpsocketengine/tst_qhttpsocketengine.cpp index e470f5778a..b411dd2651 100644 --- a/tests/auto/network/socket/qhttpsocketengine/tst_qhttpsocketengine.cpp +++ b/tests/auto/network/socket/qhttpsocketengine/tst_qhttpsocketengine.cpp @@ -50,7 +50,6 @@ #include #include #include -#include #include #include diff --git a/tests/auto/network/socket/qsocks5socketengine/tst_qsocks5socketengine.cpp b/tests/auto/network/socket/qsocks5socketengine/tst_qsocks5socketengine.cpp index d83555e61b..df677875e6 100644 --- a/tests/auto/network/socket/qsocks5socketengine/tst_qsocks5socketengine.cpp +++ b/tests/auto/network/socket/qsocks5socketengine/tst_qsocks5socketengine.cpp @@ -52,7 +52,6 @@ #include #include #include -#include #include #include #include diff --git a/tests/auto/xml/sax/qxmlinputsource/tst_qxmlinputsource.cpp b/tests/auto/xml/sax/qxmlinputsource/tst_qxmlinputsource.cpp index 865e6c4d9f..5bc3a09fc5 100644 --- a/tests/auto/xml/sax/qxmlinputsource/tst_qxmlinputsource.cpp +++ b/tests/auto/xml/sax/qxmlinputsource/tst_qxmlinputsource.cpp @@ -41,7 +41,9 @@ #include -#include +#include +#include +#include #include #include #include @@ -116,13 +118,16 @@ class ServerAndClient : public QObject public: ServerAndClient(QEventLoop &ev) : success(false) , eventLoop(ev) + , isBody(false) + , bodyBytesRead(0) + , bodyLength(-1) { setObjectName("serverAndClient"); tcpServer = new QTcpServer(this); connect(tcpServer, SIGNAL(newConnection()), this, SLOT(newConnection())); tcpServer->listen(QHostAddress::LocalHost, 1088); - httpClient = new QHttp(this); - connect(httpClient, SIGNAL(requestFinished(int, bool)), SLOT(requestFinished(int, bool))); + httpClient = new QNetworkAccessManager(this); + connect(httpClient, SIGNAL(finished(QNetworkReply*)), SLOT(requestFinished(QNetworkReply*))); } bool success; @@ -132,25 +137,26 @@ public slots: void doIt() { QUrl url("http://127.0.0.1:1088"); - httpClient->setHost( url.host(), 1088); - QHttpRequestHeader req_head("POST", url.path()); - req_head.setValue("host", url.host()); - req_head.setValue("user-agent", "xml-test"); - req_head.setValue("keep-alive", "false"); + QNetworkRequest req(url); + req.setRawHeader("POST", url.path().toAscii()); + req.setRawHeader("user-agent", "xml-test"); + req.setRawHeader("keep-alive", "false"); + req.setRawHeader("host", url.host().toAscii()); QByteArray xmlrpc("\r\n\ SFD.GetVersion\r\n\ \r\n\ "); - req_head.setContentLength(xmlrpc.size()); - req_head.setContentType("text/xml"); + req.setHeader(QNetworkRequest::ContentLengthHeader, xmlrpc.size()); + req.setHeader(QNetworkRequest::ContentTypeHeader, "text/xml"); - httpClient->request(req_head, xmlrpc); + httpClient->post(req, xmlrpc); } - void requestFinished(int, bool isError) + void requestFinished(QNetworkReply *reply) { - QVERIFY(!isError); + QVERIFY(reply->error() == QNetworkReply::NoError); + reply->deleteLater(); } private slots: @@ -165,32 +171,43 @@ private slots: void readyRead() { QTcpSocket *const s = static_cast(sender()); - int bodyLength = -1; - while(s->canReadLine()) + while (s->bytesAvailable()) { const QString line(s->readLine()); - if(line.startsWith("content-length:")) + if (line.startsWith("Content-Length:")) bodyLength = line.mid(15).toInt(); - if(line == "\r\n") + if (isBody) { - if(bodyLength == -1) + body.append(line); + bodyBytesRead += line.length(); + } + else if (line == "\r\n") + { + isBody = true; + if (bodyLength == -1) { qFatal("No length was specified in the header."); } - - QDomDocument domDoc; - success = domDoc.setContent(s->read(bodyLength)); - eventLoop.exit(); } } + + if (bodyBytesRead == bodyLength) + { + QDomDocument domDoc; + success = domDoc.setContent(body); + eventLoop.exit(); + } } private: + QByteArray body; + int bodyBytesRead, bodyLength; + bool isBody; QTcpServer *tcpServer; - QHttp* httpClient; + QNetworkAccessManager* httpClient; }; void tst_QXmlInputSource::waitForReadyIODevice() const -- cgit v1.2.3 From 0277f14f48539d5f9d443c7d4135a54d4a5e2a62 Mon Sep 17 00:00:00 2001 From: Yuchen Deng Date: Sat, 31 Dec 2011 19:26:45 +0800 Subject: Avoiding crash when insert preEditString We will insert an preEditString by QInputMethodEvent See: Task-number: QTCREATORBUG-5633 Task-number: QTCREATORBUG-6082 Change-Id: I8cfc7ab2543455dfdff8ec3df983d384513453e0 Reviewed-by: Robin Burchell Reviewed-by: Lars Knoll --- src/gui/text/qtextcursor.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/gui/text/qtextcursor.cpp b/src/gui/text/qtextcursor.cpp index 10bbff3671..6bbf1be0e3 100644 --- a/src/gui/text/qtextcursor.cpp +++ b/src/gui/text/qtextcursor.cpp @@ -495,6 +495,8 @@ bool QTextCursorPrivate::movePosition(QTextCursor::MoveOperation op, QTextCursor break; } newPosition = blockIt.position() + line.textStart() + line.textLength(); + if (newPosition >= priv->length()) + newPosition = priv->length() - 1; if (line.lineNumber() < layout->lineCount() - 1) { const QString text = blockIt.text(); // ###### this relies on spaces being the cause for linebreaks. -- cgit v1.2.3 From a2fd2f90ec6f17715cff5b7e954c31b5356db649 Mon Sep 17 00:00:00 2001 From: Pekka Vuorela Date: Mon, 2 Jan 2012 16:49:07 +0200 Subject: Introduced input method hints for latin On many cases especially latin input is wanted. Hint for these may, e.g., help virtual keyboards on changing the layout to a western one. Added a hint for requiring and another for preferring latin based input. Change-Id: I0ea79643665e25d9f916c3b8d0b7d7352843c2dc Reviewed-by: Joona Petrell Reviewed-by: Lars Knoll --- src/corelib/global/qnamespace.h | 3 +++ src/corelib/global/qnamespace.qdoc | 2 ++ 2 files changed, 5 insertions(+) diff --git a/src/corelib/global/qnamespace.h b/src/corelib/global/qnamespace.h index 64c4541798..f584a26dfc 100644 --- a/src/corelib/global/qnamespace.h +++ b/src/corelib/global/qnamespace.h @@ -1298,6 +1298,8 @@ public: ImhDate = 0x80, ImhTime = 0x100, + ImhPreferLatin = 0x200, + ImhDigitsOnly = 0x10000, ImhFormattedNumbersOnly = 0x20000, ImhUppercaseOnly = 0x40000, @@ -1305,6 +1307,7 @@ public: ImhDialableCharactersOnly = 0x100000, ImhEmailCharactersOnly = 0x200000, ImhUrlCharactersOnly = 0x400000, + ImhLatinOnly = 0x800000, ImhExclusiveInputMask = 0xffff0000 }; diff --git a/src/corelib/global/qnamespace.qdoc b/src/corelib/global/qnamespace.qdoc index a7332417ae..58ca8d312e 100644 --- a/src/corelib/global/qnamespace.qdoc +++ b/src/corelib/global/qnamespace.qdoc @@ -2429,6 +2429,7 @@ \value ImhDate The text editor functions as a date field. \value ImhTime The text editor functions as a time field. + \value ImhPreferLatin Latin characters are preferred (but not required). Flags that restrict input (exclusive flags): @@ -2439,6 +2440,7 @@ \value ImhDialableCharactersOnly Only characters suitable for phone dialing are allowed. \value ImhEmailCharactersOnly Only characters suitable for email addresses are allowed. \value ImhUrlCharactersOnly Only characters suitable for URLs are allowed. + \value ImhLatinOnly Only latin based input is allowed. Masks: -- cgit v1.2.3 From a98741516c02bbc1f479300d08a39fb5f93e1d64 Mon Sep 17 00:00:00 2001 From: Pekka Vuorela Date: Thu, 5 Jan 2012 13:29:23 +0200 Subject: Move keyboard locale and input direction to QInputPanel Deprecated QGuiApplication::keyboardInputLocale() and keyboardInputDirection(), introduced QInputPanel::locale() and inputDirection(). Change-Id: Ic48c77f10821a949751c73c73f22bd78e2192b9c Reviewed-by: Joona Petrell Reviewed-by: Lars Knoll --- src/corelib/tools/qlocale.qdoc | 4 ++-- src/gui/kernel/qguiapplication.cpp | 15 ++++++--------- src/gui/kernel/qguiapplication.h | 5 ++--- src/gui/kernel/qinputpanel.cpp | 19 +++++++++++++++++++ src/gui/kernel/qinputpanel.h | 7 +++++++ src/gui/text/qlinecontrol_p.h | 2 +- src/gui/text/qtextengine.cpp | 3 ++- src/widgets/widgets/qwidgetlinecontrol_p.h | 3 ++- 8 files changed, 41 insertions(+), 17 deletions(-) diff --git a/src/corelib/tools/qlocale.qdoc b/src/corelib/tools/qlocale.qdoc index c8d8a38929..0337c708a9 100644 --- a/src/corelib/tools/qlocale.qdoc +++ b/src/corelib/tools/qlocale.qdoc @@ -89,7 +89,7 @@ pair; it does not use the system locale database. \note For the current keyboard input locale take a look at - QApplication::keyboardInputLocale(). + QInputPanel::locale(). QLocale's data is based on Common Locale Data Repository v1.8.1. @@ -114,7 +114,7 @@ California, Berkeley and its contributors. \sa QString::arg(), QString::toInt(), QString::toDouble(), - QApplication::keyboardInputLocale() + QInputPanel::locale() */ /*! diff --git a/src/gui/kernel/qguiapplication.cpp b/src/gui/kernel/qguiapplication.cpp index aaefb2c31b..96b9222fe0 100644 --- a/src/gui/kernel/qguiapplication.cpp +++ b/src/gui/kernel/qguiapplication.cpp @@ -68,7 +68,6 @@ #include #include "private/qwindowsysteminterface_qpa_p.h" #include "private/qwindow_p.h" -#include "private/qkeymapper_p.h" #include "private/qcursor_p.h" #include "private/qdnd_p.h" #include @@ -1463,26 +1462,24 @@ uint QGuiApplicationPrivate::currentKeyPlatform() /*! \since 4.2 + \obsolete - Returns the current keyboard input locale. + Returns the current keyboard input locale. Replaced with QInputPanel::locale() */ QLocale QGuiApplication::keyboardInputLocale() { - if (!QGuiApplicationPrivate::checkInstance("keyboardInputLocale")) - return QLocale::c(); - return qt_keymapper_private()->keyboardInputLocale; + return qApp ? qApp->inputPanel()->locale() : QLocale::c(); } /*! \since 4.2 + \obsolete - Returns the current keyboard input direction. + Returns the current keyboard input direction. Replaced with QInputPanel::inputDirection() */ Qt::LayoutDirection QGuiApplication::keyboardInputDirection() { - if (!QGuiApplicationPrivate::checkInstance("keyboardInputDirection")) - return Qt::LeftToRight; - return qt_keymapper_private()->keyboardInputDirection; + return qApp ? qApp->inputPanel()->inputDirection() : Qt::LeftToRight; } /*! diff --git a/src/gui/kernel/qguiapplication.h b/src/gui/kernel/qguiapplication.h index c66cb7d22d..7223e2639e 100644 --- a/src/gui/kernel/qguiapplication.h +++ b/src/gui/kernel/qguiapplication.h @@ -118,9 +118,8 @@ public: static inline bool isRightToLeft() { return layoutDirection() == Qt::RightToLeft; } static inline bool isLeftToRight() { return layoutDirection() == Qt::LeftToRight; } - // ### move to QInputPanel - static QLocale keyboardInputLocale(); - static Qt::LayoutDirection keyboardInputDirection(); + QT_DEPRECATED static QLocale keyboardInputLocale(); + QT_DEPRECATED static Qt::LayoutDirection keyboardInputDirection(); QStyleHints *styleHints() const; QInputPanel *inputPanel() const; diff --git a/src/gui/kernel/qinputpanel.cpp b/src/gui/kernel/qinputpanel.cpp index 1459a8e831..3eec3e89bf 100644 --- a/src/gui/kernel/qinputpanel.cpp +++ b/src/gui/kernel/qinputpanel.cpp @@ -41,6 +41,7 @@ #include #include +#include "private/qkeymapper_p.h" QT_BEGIN_NAMESPACE @@ -247,6 +248,24 @@ bool QInputPanel::isAnimating() const return false; } +/*! + \property QInputPanel::locale + \brief Current input locale. +*/ +QLocale QInputPanel::locale() const +{ + return qt_keymapper_private()->keyboardInputLocale; +} + +/*! + \property QInputPanel::inputDirection + \brief Current input direction. +*/ +Qt::LayoutDirection QInputPanel::inputDirection() const +{ + return qt_keymapper_private()->keyboardInputDirection; +} + /*! Called by the input item to inform the platform input methods when there has been state changes in editor's input method query attributes. When calling the function diff --git a/src/gui/kernel/qinputpanel.h b/src/gui/kernel/qinputpanel.h index 66f7f3be5a..33e49f28f4 100644 --- a/src/gui/kernel/qinputpanel.h +++ b/src/gui/kernel/qinputpanel.h @@ -64,6 +64,8 @@ class Q_GUI_EXPORT QInputPanel : public QObject Q_PROPERTY(QRectF keyboardRectangle READ keyboardRectangle NOTIFY keyboardRectangleChanged) Q_PROPERTY(bool visible READ visible NOTIFY visibleChanged) Q_PROPERTY(bool animating READ isAnimating NOTIFY animatingChanged) + Q_PROPERTY(QLocale locale READ locale NOTIFY localeChanged) + Q_PROPERTY(Qt::LayoutDirection inputDirection READ inputDirection NOTIFY inputDirectionChanged) Q_ENUMS(Action) public: @@ -92,6 +94,9 @@ public: bool isAnimating() const; + QLocale locale() const; + Qt::LayoutDirection inputDirection() const; + public Q_SLOTS: void show(); void hide(); @@ -108,6 +113,8 @@ Q_SIGNALS: void keyboardRectangleChanged(); void visibleChanged(); void animatingChanged(); + void localeChanged(); + void inputDirectionChanged(Qt::LayoutDirection newDirection); private: friend class QGuiApplication; diff --git a/src/gui/text/qlinecontrol_p.h b/src/gui/text/qlinecontrol_p.h index 166300f997..fb14df27bb 100644 --- a/src/gui/text/qlinecontrol_p.h +++ b/src/gui/text/qlinecontrol_p.h @@ -277,7 +277,7 @@ public: Qt::LayoutDirection layoutDirection() const { if (m_layoutDirection == Qt::LayoutDirectionAuto) { if (m_text.isEmpty()) - return QGuiApplication::keyboardInputDirection(); + return qApp->inputPanel()->inputDirection(); return m_text.isRightToLeft() ? Qt::RightToLeft : Qt::LeftToRight; } return m_layoutDirection; diff --git a/src/gui/text/qtextengine.cpp b/src/gui/text/qtextengine.cpp index 00418bae5a..0dd8d0bef3 100644 --- a/src/gui/text/qtextengine.cpp +++ b/src/gui/text/qtextengine.cpp @@ -54,6 +54,7 @@ #include #include "qtextdocument_p.h" #include +#include #include @@ -1408,7 +1409,7 @@ bool QTextEngine::isRightToLeft() const itemize(); // this places the cursor in the right position depending on the keyboard layout if (layoutData->string.isEmpty()) - return QGuiApplication::keyboardInputDirection() == Qt::RightToLeft; + return qApp ? qApp->inputPanel()->inputDirection() == Qt::RightToLeft : false; return layoutData->string.isRightToLeft(); } diff --git a/src/widgets/widgets/qwidgetlinecontrol_p.h b/src/widgets/widgets/qwidgetlinecontrol_p.h index b39a0b3ba1..d8f27a4003 100644 --- a/src/widgets/widgets/qwidgetlinecontrol_p.h +++ b/src/widgets/widgets/qwidgetlinecontrol_p.h @@ -62,6 +62,7 @@ #include "QtWidgets/qstyleoption.h" #include "QtCore/qpointer.h" #include "QtGui/qclipboard.h" +#include "QtGui/qinputpanel.h" #include "QtCore/qpoint.h" #include "QtWidgets/qcompleter.h" #include "QtCore/qthread.h" @@ -318,7 +319,7 @@ public: Qt::LayoutDirection layoutDirection() const { if (m_layoutDirection == Qt::LayoutDirectionAuto) { if (m_text.isEmpty()) - return QApplication::keyboardInputDirection(); + return qApp->inputPanel()->inputDirection(); return m_text.isRightToLeft() ? Qt::RightToLeft : Qt::LeftToRight; } return m_layoutDirection; -- cgit v1.2.3 From 0ba89ed91fe3599504e6dc1b6d5e761aa9f24a3d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20R=C3=B8dal?= Date: Fri, 6 Jan 2012 15:03:24 +0100 Subject: Detect autoreapeat in xcb plugin. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Until now QKeyEvent::isAutoRepeat() would always return false. Change-Id: I7771bc7a7ec848ef280f99bada0a26eda188604e Reviewed-by: Jørgen Lind --- src/plugins/platforms/xcb/qxcbconnection.h | 4 +- src/plugins/platforms/xcb/qxcbkeyboard.cpp | 83 +++++++++++++++++++++++++++++- src/plugins/platforms/xcb/qxcbkeyboard.h | 1 + 3 files changed, 85 insertions(+), 3 deletions(-) diff --git a/src/plugins/platforms/xcb/qxcbconnection.h b/src/plugins/platforms/xcb/qxcbconnection.h index e41265c1e9..f2ad71b1db 100644 --- a/src/plugins/platforms/xcb/qxcbconnection.h +++ b/src/plugins/platforms/xcb/qxcbconnection.h @@ -340,7 +340,7 @@ public: xcb_generic_event_t *checkEvent(int type); template - inline xcb_generic_event_t *checkEvent(const T &checker); + inline xcb_generic_event_t *checkEvent(T &checker); typedef bool (*PeekFunc)(xcb_generic_event_t *); void addPeekFunc(PeekFunc f); @@ -428,7 +428,7 @@ private: #define DISPLAY_FROM_XCB(object) ((Display *)(object->connection()->xlib_display())) template -xcb_generic_event_t *QXcbConnection::checkEvent(const T &checker) +xcb_generic_event_t *QXcbConnection::checkEvent(T &checker) { QXcbEventArray *eventqueue = m_reader->lock(); diff --git a/src/plugins/platforms/xcb/qxcbkeyboard.cpp b/src/plugins/platforms/xcb/qxcbkeyboard.cpp index 0eee7e4ff3..641980b030 100644 --- a/src/plugins/platforms/xcb/qxcbkeyboard.cpp +++ b/src/plugins/platforms/xcb/qxcbkeyboard.cpp @@ -907,6 +907,7 @@ QString QXcbKeyboard::translateKeySym(xcb_keysym_t keysym, uint xmodifiers, QXcbKeyboard::QXcbKeyboard(QXcbConnection *connection) : QXcbObject(connection) + , m_autorepeat_code(0) { m_key_symbols = xcb_key_symbols_alloc(xcb_connection()); setupModifiers(); @@ -1020,6 +1021,62 @@ void QXcbKeyboard::setMask(uint sym, uint mask) // #define XCB_KEYBOARD_DEBUG +class KeyChecker +{ +public: + KeyChecker(xcb_window_t window, xcb_keycode_t code, xcb_timestamp_t time) + : m_window(window) + , m_code(code) + , m_time(time) + , m_error(false) + , m_release(true) + { + } + + bool check(xcb_generic_event_t *ev) + { + if (m_error || !ev) + return false; + + int type = ev->response_type & ~0x80; + if (type != XCB_KEY_PRESS && type != XCB_KEY_RELEASE) + return false; + + xcb_key_press_event_t *event = (xcb_key_press_event_t *)ev; + + if (event->event != m_window || event->detail != m_code) { + m_error = true; + return false; + } + + if (type == XCB_KEY_PRESS) { + m_error = !m_release || event->time - m_time > 10; + return !m_error; + } + + if (m_release) { + m_error = true; + return false; + } + + m_release = true; + m_time = event->time; + + return false; + } + + bool release() const { return m_release; } + xcb_timestamp_t time() const { return m_time; } + +private: + xcb_window_t m_window; + xcb_keycode_t m_code; + xcb_timestamp_t m_time; + + bool m_error; + bool m_release; +}; + void QXcbKeyboard::handleKeyEvent(QWindow *window, QEvent::Type type, xcb_keycode_t code, quint16 state, xcb_timestamp_t time) { @@ -1062,8 +1119,32 @@ void QXcbKeyboard::handleKeyEvent(QWindow *window, QEvent::Type type, xcb_keycod return; } + bool isAutoRepeat = false; + + if (type == QEvent::KeyPress) { + if (m_autorepeat_code == code) { + isAutoRepeat = true; + m_autorepeat_code = 0; + } + } else { + // look ahead for auto-repeat + KeyChecker checker(((QXcbWindow *)window->handle())->xcb_window(), code, time); + xcb_generic_event_t *event = connection()->checkEvent(checker); + if (event) { + isAutoRepeat = true; + free(event); + } + m_autorepeat_code = isAutoRepeat ? code : 0; + } + QWindowSystemInterface::handleExtendedKeyEvent(window, time, type, qtcode, modifiers, - code, 0, state, string.left(count)); + code, 0, state, string.left(count), isAutoRepeat); + + if (isAutoRepeat && type == QEvent::KeyRelease) { + // since we removed it from the event queue using checkEvent we need to send the key press here + QWindowSystemInterface::handleExtendedKeyEvent(window, time, QEvent::KeyPress, qtcode, modifiers, + code, 0, state, string.left(count), isAutoRepeat); + } } #ifdef XCB_USE_XLIB diff --git a/src/plugins/platforms/xcb/qxcbkeyboard.h b/src/plugins/platforms/xcb/qxcbkeyboard.h index 90fa4fab67..4a62dde11a 100644 --- a/src/plugins/platforms/xcb/qxcbkeyboard.h +++ b/src/plugins/platforms/xcb/qxcbkeyboard.h @@ -86,6 +86,7 @@ private: uint m_caps_lock_mask; xcb_key_symbols_t *m_key_symbols; + xcb_keycode_t m_autorepeat_code; }; QT_END_NAMESPACE -- cgit v1.2.3 From c85121989f168d12e104a405e8afe3c89685ac25 Mon Sep 17 00:00:00 2001 From: Joerg Bornemann Date: Fri, 6 Jan 2012 15:30:43 +0100 Subject: qmake: fix /MP option for VS 2010 Setting QMAKE_CFLAGS+=/MP in a project file did not work for VS 2010. Task-number: QTBUG-23490 Change-Id: I39c349bf8dc2a4add2f32a430a245a20cc54147e Reviewed-by: Oswald Buddenhagen --- qmake/generators/win32/msvc_objectmodel.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/qmake/generators/win32/msvc_objectmodel.cpp b/qmake/generators/win32/msvc_objectmodel.cpp index 5b60c79613..c506e38d06 100644 --- a/qmake/generators/win32/msvc_objectmodel.cpp +++ b/qmake/generators/win32/msvc_objectmodel.cpp @@ -649,11 +649,11 @@ bool VCCLCompilerTool::parseOption(const char* option) RuntimeLibrary = rtMultiThreadedDebug; break; } else if (second == 'P') { - if (config->CompilerVersion >= NET2005) { - AdditionalOptions += option; - } else if (config->CompilerVersion >= NET2010) { + if (config->CompilerVersion >= NET2010) { MultiProcessorCompilation = _True; MultiProcessorCompilationProcessorCount = option+3; + } else if (config->CompilerVersion >= NET2005) { + AdditionalOptions += option; } else { warn_msg(WarnLogic, "/MP option is not supported in Visual C++ < 2005, ignoring."); } -- cgit v1.2.3 From ece75a8adfc30c91f25d45d37f98bf8cda90fdce Mon Sep 17 00:00:00 2001 From: Joerg Bornemann Date: Fri, 6 Jan 2012 16:40:27 +0100 Subject: qmake: fix default value for C++ optimization in vcxproj files For the debug configuration the optimization should be turned off. Task-number: QTBUG-23421 Change-Id: Ib63e0c51f9ab31180ff8ee01a1f6c57ab77e390e Reviewed-by: Oswald Buddenhagen --- qmake/generators/win32/msbuild_objectmodel.cpp | 6 ++++-- qmake/generators/win32/msvc_vcproj.cpp | 4 ++++ 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/qmake/generators/win32/msbuild_objectmodel.cpp b/qmake/generators/win32/msbuild_objectmodel.cpp index b20f2f951d..de95ad10be 100644 --- a/qmake/generators/win32/msbuild_objectmodel.cpp +++ b/qmake/generators/win32/msbuild_objectmodel.cpp @@ -925,15 +925,17 @@ static inline QString toString(inlineExpansionOption option) static inline QString toString(optimizeOption option) { switch (option) { - case optimizeDisabled: - case optimizeFull: case optimizeCustom: case optimizeDefault: break; + case optimizeDisabled: + return "Disabled"; case optimizeMinSpace: return "MinSpace"; case optimizeMaxSpeed: return "MaxSpeed"; + case optimizeFull: + return "Full"; } return QString(); } diff --git a/qmake/generators/win32/msvc_vcproj.cpp b/qmake/generators/win32/msvc_vcproj.cpp index a5f0c6a616..fc69881de9 100644 --- a/qmake/generators/win32/msvc_vcproj.cpp +++ b/qmake/generators/win32/msvc_vcproj.cpp @@ -949,6 +949,10 @@ void VcprojGenerator::initCompilerTool() placement = ".\\"; VCConfiguration &conf = vcProject.Configuration; + if (conf.CompilerVersion >= NET2010) { + // adjust compiler tool defaults for VS 2010 and above + conf.compiler.Optimization = optimizeDisabled; + } conf.compiler.AssemblerListingLocation = placement ; conf.compiler.ProgramDataBaseFileName = ".\\" ; conf.compiler.ObjectFile = placement ; -- cgit v1.2.3 From 2588a5b24965d9afa0d6e368a9f42491d1cfb5f7 Mon Sep 17 00:00:00 2001 From: Joerg Bornemann Date: Thu, 5 Jan 2012 18:24:53 +0100 Subject: QProcess/Win: direct forwarding of stdout and stderr We are now directly passing the standard out/err handles to CreateProcess instead of reading the output and writing it. The downside is, that we cannot automatically forward the process output of GUI applications anymore. This behaviour is intended by the CreateProcess API. Change-Id: Ic6e35c8c338dbea1a9f345567a37d938da1f34a2 Reviewed-by: Oswald Buddenhagen Reviewed-by: Joerg Bornemann --- dist/changes-5.0.0 | 4 ++++ src/corelib/io/qprocess.cpp | 8 ++++++++ src/corelib/io/qprocess_win.cpp | 40 ++++++++++++++-------------------------- 3 files changed, 26 insertions(+), 26 deletions(-) diff --git a/dist/changes-5.0.0 b/dist/changes-5.0.0 index 8855aa3852..1d6a7d6c84 100644 --- a/dist/changes-5.0.0 +++ b/dist/changes-5.0.0 @@ -144,6 +144,10 @@ information about a particular change. - The QHttp, QHttpHeader, QHttpResponseHeader and QHttpRequestHeader classes have been removed, QNetworkAccessManager should be used instead. +- QProcess + + * On Windows, QProcess::ForwardedChannels will not forward the output of GUI + applications anymore, if they do not create a console. **************************************************************************** * General * diff --git a/src/corelib/io/qprocess.cpp b/src/corelib/io/qprocess.cpp index 6f57f9f0e8..9f6fa4933e 100644 --- a/src/corelib/io/qprocess.cpp +++ b/src/corelib/io/qprocess.cpp @@ -617,6 +617,14 @@ void QProcessPrivate::Channel::clear() writes to its standard output and standard error will be written to the standard output and standard error of the main process. + \note Windows intentionally suppresses output from GUI-only + applications to inherited consoles. + This does \e not apply to output redirected to files or pipes. + To forward the output of GUI-only applications on the console + nonetheless, you must use SeparateChannels and do the forwarding + yourself by reading the output and writing it to the appropriate + output channels. + \sa setProcessChannelMode() */ diff --git a/src/corelib/io/qprocess_win.cpp b/src/corelib/io/qprocess_win.cpp index fd5f078ff0..8c6444d173 100644 --- a/src/corelib/io/qprocess_win.cpp +++ b/src/corelib/io/qprocess_win.cpp @@ -92,6 +92,15 @@ static void qt_create_pipe(Q_PIPE *pipe, bool in) CloseHandle(tmpHandle); } +static void duplicateStdWriteChannel(Q_PIPE *pipe, DWORD nStdHandle) +{ + pipe[0] = INVALID_Q_PIPE; + HANDLE hStdWriteChannel = GetStdHandle(nStdHandle); + HANDLE hCurrentProcess = GetCurrentProcess(); + DuplicateHandle(hCurrentProcess, hStdWriteChannel, hCurrentProcess, + &pipe[1], 0, TRUE, DUPLICATE_SAME_ACCESS); +} + /* Create the pipes to a QProcessPrivate::Channel. @@ -108,8 +117,11 @@ bool QProcessPrivate::createChannel(Channel &channel) if (channel.type == Channel::Normal) { // we're piping this channel to our own process - qt_create_pipe(channel.pipe, &channel == &stdinChannel); - + const bool isStdInChannel = (&channel == &stdinChannel); + if (isStdInChannel || processChannelMode != QProcess::ForwardedChannels) + qt_create_pipe(channel.pipe, isStdInChannel); + else + duplicateStdWriteChannel(channel.pipe, (&channel == &stdoutChannel) ? STD_OUTPUT_HANDLE : STD_ERROR_HANDLE); return true; } else if (channel.type == Channel::Redirect) { // we're redirecting the channel to/from a file @@ -465,18 +477,6 @@ qint64 QProcessPrivate::bytesAvailableFromStdout() const #if defined QPROCESS_DEBUG qDebug("QProcessPrivate::bytesAvailableFromStdout() == %d", bytesAvail); #endif - if (processChannelMode == QProcess::ForwardedChannels && bytesAvail > 0) { - QByteArray buf(bytesAvail, 0); - DWORD bytesRead = 0; - if (ReadFile(stdoutChannel.pipe[0], buf.data(), buf.size(), &bytesRead, 0) && bytesRead > 0) { - HANDLE hStdout = GetStdHandle(STD_OUTPUT_HANDLE); - if (hStdout) { - DWORD bytesWritten = 0; - WriteFile(hStdout, buf.data(), bytesRead, &bytesWritten, 0); - } - } - bytesAvail = 0; - } return bytesAvail; } @@ -490,18 +490,6 @@ qint64 QProcessPrivate::bytesAvailableFromStderr() const #if defined QPROCESS_DEBUG qDebug("QProcessPrivate::bytesAvailableFromStderr() == %d", bytesAvail); #endif - if (processChannelMode == QProcess::ForwardedChannels && bytesAvail > 0) { - QByteArray buf(bytesAvail, 0); - DWORD bytesRead = 0; - if (ReadFile(stderrChannel.pipe[0], buf.data(), buf.size(), &bytesRead, 0) && bytesRead > 0) { - HANDLE hStderr = GetStdHandle(STD_ERROR_HANDLE); - if (hStderr) { - DWORD bytesWritten = 0; - WriteFile(hStderr, buf.data(), bytesRead, &bytesWritten, 0); - } - } - bytesAvail = 0; - } return bytesAvail; } -- cgit v1.2.3 From 7e40ea4499ff9a6a96bf71019428dbb08876a2cd Mon Sep 17 00:00:00 2001 From: Uli Schlachter Date: Sat, 7 Jan 2012 17:28:10 +0100 Subject: xcb: Fix a memleak when atomName() fails The only reason for GetAtomName to fail is when an invalid atom is specified, so the xcb_generic_error_t struct doesn't contain any useful information for us. Still, we have to free it. Change-Id: I3da98018b7bfe08a9d7dcd566ed010f5d7b0df73 Reviewed-by: Robin Burchell Reviewed-by: Lars Knoll --- src/plugins/platforms/xcb/qxcbconnection.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/plugins/platforms/xcb/qxcbconnection.cpp b/src/plugins/platforms/xcb/qxcbconnection.cpp index de091b0308..ed995fd8cd 100644 --- a/src/plugins/platforms/xcb/qxcbconnection.cpp +++ b/src/plugins/platforms/xcb/qxcbconnection.cpp @@ -962,6 +962,7 @@ QByteArray QXcbConnection::atomName(xcb_atom_t atom) xcb_get_atom_name_reply_t *reply = xcb_get_atom_name_reply(xcb_connection(), cookie, &error); if (error) { qWarning() << "QXcbConnection::atomName: bad Atom" << atom; + free(error); } if (reply) { QByteArray result(xcb_get_atom_name_name(reply), xcb_get_atom_name_name_length(reply)); -- cgit v1.2.3 From 7aeccb183a827e8504d7dd8614d1ca555caf61d9 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Fri, 6 Jan 2012 07:33:17 +0100 Subject: Remove the Q_TYPENAME define. It is mostly not used (most places in Qt use typename directly), so is already not very useful. For example typename is used in: QDataStream& operator<<(QDataStream& s, const QVector& v) Change-Id: I85337ad7d8d4ebbb424bfa2ab9a356456ff3e90f Reviewed-by: Olivier Goffart Reviewed-by: Bradley T. Hughes --- src/corelib/global/qglobal.h | 6 ------ src/corelib/io/qdebug.h | 2 +- src/corelib/tools/qvector.h | 4 ++-- src/testlib/qbenchmark.cpp | 8 ++++---- src/widgets/graphicsview/qgraph_p.h | 6 +++--- src/widgets/kernel/qformlayout.cpp | 2 +- tests/auto/corelib/tools/qalgorithms/tst_qalgorithms.cpp | 2 +- tests/benchmarks/corelib/tools/qvector/qrawvector.h | 4 ++-- 8 files changed, 14 insertions(+), 20 deletions(-) diff --git a/src/corelib/global/qglobal.h b/src/corelib/global/qglobal.h index f07a48eca4..b1bd425852 100644 --- a/src/corelib/global/qglobal.h +++ b/src/corelib/global/qglobal.h @@ -552,7 +552,6 @@ namespace QT_NAMESPACE {} # define Q_NO_BOOL_TYPE # define Q_NO_EXPLICIT_KEYWORD # define Q_NO_USING_KEYWORD -# define Q_TYPENAME # define Q_OUTOFLINE_TEMPLATE inline # define Q_BROKEN_TEMPLATE_SPECIALIZATION # define Q_CANNOT_DELETE_CONSTANT @@ -586,7 +585,6 @@ namespace QT_NAMESPACE {} /* Apply to all versions prior to Compaq C++ V6.0-000 - observed on DEC C++ V5.5-004. */ # if __DECCXX_VER < 60060000 -# define Q_TYPENAME # define Q_BROKEN_TEMPLATE_SPECIALIZATION # define Q_CANNOT_DELETE_CONSTANT # endif @@ -1619,10 +1617,6 @@ inline int qMacVersion() { return QSysInfo::MacintoshVersion; } # define Q_INLINE_TEMPLATE inline #endif -#ifndef Q_TYPENAME -# define Q_TYPENAME typename -#endif - /* Avoid "unused parameter" warnings */ diff --git a/src/corelib/io/qdebug.h b/src/corelib/io/qdebug.h index ecef792e70..0654bf6f25 100644 --- a/src/corelib/io/qdebug.h +++ b/src/corelib/io/qdebug.h @@ -159,7 +159,7 @@ inline QDebug operator<<(QDebug debug, const QList &list) #endif { debug.nospace() << '('; - for (Q_TYPENAME QList::size_type i = 0; i < list.count(); ++i) { + for (typename QList::size_type i = 0; i < list.count(); ++i) { if (i) debug << ", "; debug << list.at(i); diff --git a/src/corelib/tools/qvector.h b/src/corelib/tools/qvector.h index 17f51fb575..2e8abcad25 100644 --- a/src/corelib/tools/qvector.h +++ b/src/corelib/tools/qvector.h @@ -591,7 +591,7 @@ void QVector::append(const T &t) } template -Q_TYPENAME QVector::iterator QVector::insert(iterator before, size_type n, const T &t) +typename QVector::iterator QVector::insert(iterator before, size_type n, const T &t) { int offset = int(before - p->array); if (n != 0) { @@ -625,7 +625,7 @@ Q_TYPENAME QVector::iterator QVector::insert(iterator before, size_type n, } template -Q_TYPENAME QVector::iterator QVector::erase(iterator abegin, iterator aend) +typename QVector::iterator QVector::erase(iterator abegin, iterator aend) { int f = int(abegin - p->array); int l = int(aend - p->array); diff --git a/src/testlib/qbenchmark.cpp b/src/testlib/qbenchmark.cpp index 02644f7dc3..b637a6e337 100644 --- a/src/testlib/qbenchmark.cpp +++ b/src/testlib/qbenchmark.cpp @@ -285,11 +285,11 @@ void QTest::setBenchmarkResult(qreal result, QTest::QBenchmarkMetric metric) } template -Q_TYPENAME T::value_type qAverage(const T &container) +typename T::value_type qAverage(const T &container) { - Q_TYPENAME T::const_iterator it = container.constBegin(); - Q_TYPENAME T::const_iterator end = container.constEnd(); - Q_TYPENAME T::value_type acc = Q_TYPENAME T::value_type(); + typename T::const_iterator it = container.constBegin(); + typename T::const_iterator end = container.constEnd(); + typename T::value_type acc = typename T::value_type(); int count = 0; while (it != end) { acc += *it; diff --git a/src/widgets/graphicsview/qgraph_p.h b/src/widgets/graphicsview/qgraph_p.h index 7c5b07f05d..676000ac3e 100644 --- a/src/widgets/graphicsview/qgraph_p.h +++ b/src/widgets/graphicsview/qgraph_p.h @@ -121,8 +121,8 @@ public: private: const Graph *g; - Q_TYPENAME QHash * >::const_iterator row; - Q_TYPENAME QHash::const_iterator column; + typename QHash * >::const_iterator row; + typename QHash::const_iterator column; }; const_iterator constBegin() const { @@ -228,7 +228,7 @@ public: QString edges; QSet setOfVertices = vertices(); - for (Q_TYPENAME QSet::const_iterator it = setOfVertices.begin(); it != setOfVertices.end(); ++it) { + for (typename QSet::const_iterator it = setOfVertices.begin(); it != setOfVertices.end(); ++it) { Vertex *v = *it; QList adjacents = adjacentVertices(v); for (int i = 0; i < adjacents.count(); ++i) { diff --git a/src/widgets/kernel/qformlayout.cpp b/src/widgets/kernel/qformlayout.cpp index e902e4c9ac..955ef4e3c7 100644 --- a/src/widgets/kernel/qformlayout.cpp +++ b/src/widgets/kernel/qformlayout.cpp @@ -93,7 +93,7 @@ void FixedColumnMatrix::addRow(const T &value) template void FixedColumnMatrix::insertRow(int r, const T &value) { - Q_TYPENAME Storage::iterator it = m_storage.begin(); + typename Storage::iterator it = m_storage.begin(); it += r * NumColumns; m_storage.insert(it, NumColumns, value); } diff --git a/tests/auto/corelib/tools/qalgorithms/tst_qalgorithms.cpp b/tests/auto/corelib/tools/qalgorithms/tst_qalgorithms.cpp index 9fce79eef3..5735c4043b 100644 --- a/tests/auto/corelib/tools/qalgorithms/tst_qalgorithms.cpp +++ b/tests/auto/corelib/tools/qalgorithms/tst_qalgorithms.cpp @@ -174,7 +174,7 @@ bool isSorted(ContainerType &container, LessThan lessThan) template bool isSorted(ContainerType &container) { - return isSorted(container, qLess()); + return isSorted(container, qLess()); } diff --git a/tests/benchmarks/corelib/tools/qvector/qrawvector.h b/tests/benchmarks/corelib/tools/qvector/qrawvector.h index 05375f9845..14fe9ca6c1 100644 --- a/tests/benchmarks/corelib/tools/qvector/qrawvector.h +++ b/tests/benchmarks/corelib/tools/qvector/qrawvector.h @@ -528,7 +528,7 @@ void QRawVector::append(const T &t) } template -Q_TYPENAME QRawVector::iterator QRawVector::insert(iterator before, size_type n, const T &t) +typename QRawVector::iterator QRawVector::insert(iterator before, size_type n, const T &t) { int offset = int(before - m_begin); if (n != 0) { @@ -562,7 +562,7 @@ Q_TYPENAME QRawVector::iterator QRawVector::insert(iterator before, size_t } template -Q_TYPENAME QRawVector::iterator QRawVector::erase(iterator abegin, iterator aend) +typename QRawVector::iterator QRawVector::erase(iterator abegin, iterator aend) { int f = int(abegin - m_begin); int l = int(aend - m_begin); -- cgit v1.2.3 From 84bd87353a3f092d00942e90aa20be3668a7456b Mon Sep 17 00:00:00 2001 From: Xizhi Zhu Date: Fri, 6 Jan 2012 17:53:38 +0200 Subject: Clean-up the interface for QDate. Four overload functions removed while keeping source compatibility: - shortMonthName() - shortDayName() - longMonthName() - longDayName() Two functions removed since they have confusing names: - gregorianToJulian() - julianToGregorian() Change-Id: Iaaea066a3fb77b1ee3499d3049fcec5563054cdf Reviewed-by: Lars Knoll Reviewed-by: John Layt --- src/corelib/tools/qdatetime.cpp | 81 ----------------------------------------- src/corelib/tools/qdatetime.h | 17 ++------- 2 files changed, 4 insertions(+), 94 deletions(-) diff --git a/src/corelib/tools/qdatetime.cpp b/src/corelib/tools/qdatetime.cpp index 8a452847f1..d20b07589e 100644 --- a/src/corelib/tools/qdatetime.cpp +++ b/src/corelib/tools/qdatetime.cpp @@ -565,18 +565,6 @@ QString QDate::shortMonthName(int month, QDate::MonthNameType type) return QString(); } -/*! - Returns the short version of the name of the \a month. The - returned name is in normal type which can be used for date formatting. - - \sa toString(), longMonthName(), shortDayName(), longDayName() - */ - -QString QDate::shortMonthName(int month) -{ - return shortMonthName(month, QDate::DateFormat); -} - /*! \since 4.5 @@ -622,21 +610,6 @@ QString QDate::longMonthName(int month, MonthNameType type) return QString(); } -/*! - Returns the long version of the name of the \a month. The - returned name is in normal type which can be used for date formatting. - - \sa toString(), shortMonthName(), shortDayName(), longDayName() - */ - -QString QDate::longMonthName(int month) -{ - if (month < 1 || month > 12) { - month = 1; - } - return QLocale::system().monthName(month, QLocale::LongFormat); -} - /*! \since 4.5 @@ -677,21 +650,6 @@ QString QDate::shortDayName(int weekday, MonthNameType type) return QString(); } -/*! - Returns the short version of the name of the \a weekday. The - returned name is in normal type which can be used for date formatting. - - \sa toString(), longDayName(), shortMonthName(), longMonthName() - */ - -QString QDate::shortDayName(int weekday) -{ - if (weekday < 1 || weekday > 7) { - weekday = 1; - } - return QLocale::system().dayName(weekday, QLocale::ShortFormat); -} - /*! \since 4.5 @@ -731,21 +689,6 @@ QString QDate::longDayName(int weekday, MonthNameType type) } return QLocale::system().dayName(weekday, QLocale::LongFormat); } - -/*! - Returns the long version of the name of the \a weekday. The - returned name is in normal type which can be used for date formatting. - - \sa toString(), shortDayName(), shortMonthName(), longMonthName() - */ - -QString QDate::longDayName(int weekday) -{ - if (weekday < 1 || weekday > 7) { - weekday = 1; - } - return QLocale::system().dayName(weekday, QLocale::LongFormat); -} #endif //QT_NO_TEXTDATE #ifndef QT_NO_DATESTRING @@ -1346,30 +1289,6 @@ bool QDate::isLeapYear(int y) } } -/*! - \internal - - This function has a confusing name and shouldn't be part of the - API anyway, since we have toJulian() and fromJulian(). - ### Qt 5: remove it -*/ -uint QDate::gregorianToJulian(int y, int m, int d) -{ - return julianDayFromDate(y, m, d); -} - -/*! - \internal - - This function has a confusing name and shouldn't be part of the - API anyway, since we have toJulian() and fromJulian(). - ### Qt 5: remove it -*/ -void QDate::julianToGregorian(uint jd, int &y, int &m, int &d) -{ - getDateFromJulianDay(jd, &y, &m, &d); -} - /*! \fn static QDate QDate::fromJulianDay(int jd) Converts the Julian day \a jd to a QDate. diff --git a/src/corelib/tools/qdatetime.h b/src/corelib/tools/qdatetime.h index e33cd69a1c..ba52f7455c 100644 --- a/src/corelib/tools/qdatetime.h +++ b/src/corelib/tools/qdatetime.h @@ -76,15 +76,10 @@ public: int weekNumber(int *yearNum = 0) const; #ifndef QT_NO_TEXTDATE - // ### Qt 5: merge these functions. - static QString shortMonthName(int month); - static QString shortMonthName(int month, MonthNameType type); - static QString shortDayName(int weekday); - static QString shortDayName(int weekday, MonthNameType type); - static QString longMonthName(int month); - static QString longMonthName(int month, MonthNameType type); - static QString longDayName(int weekday); - static QString longDayName(int weekday, MonthNameType type); + static QString shortMonthName(int month, MonthNameType type = DateFormat); + static QString shortDayName(int weekday, MonthNameType type = DateFormat); + static QString longMonthName(int month, MonthNameType type = DateFormat); + static QString longDayName(int weekday, MonthNameType type = DateFormat); #endif // QT_NO_TEXTDATE #ifndef QT_NO_DATESTRING QString toString(Qt::DateFormat f = Qt::TextDate) const; @@ -115,10 +110,6 @@ public: static bool isValid(int y, int m, int d); static bool isLeapYear(int year); - // ### Qt 5: remove these two functions - static uint gregorianToJulian(int y, int m, int d); - static void julianToGregorian(uint jd, int &y, int &m, int &d); - static inline QDate fromJulianDay(int jd) { QDate d; d.jd = jd; return d; } inline int toJulianDay() const { return jd; } -- cgit v1.2.3 From c7755d33dbf4b26b208487d4336fca7734bbedcf Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Thu, 5 Jan 2012 14:12:18 +0100 Subject: Export QTimerInfoList ... so that QCocoaEventDispatcher can use it to implement timer handling and benefit from the Qt::TimerType support in QTimerInfoList. Change-Id: I34b81502465963e2c9d528df463fa2eccd275ad6 Reviewed-by: Robin Burchell Reviewed-by: Thiago Macieira --- src/corelib/kernel/qtimerinfo_unix_p.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/corelib/kernel/qtimerinfo_unix_p.h b/src/corelib/kernel/qtimerinfo_unix_p.h index 7f651381ab..8a057dda60 100644 --- a/src/corelib/kernel/qtimerinfo_unix_p.h +++ b/src/corelib/kernel/qtimerinfo_unix_p.h @@ -77,7 +77,7 @@ struct QTimerInfo { #endif }; -class QTimerInfoList : public QList +class Q_CORE_EXPORT QTimerInfoList : public QList { #if ((_POSIX_MONOTONIC_CLOCK-0 <= 0) && !defined(Q_OS_MAC)) || defined(QT_BOOTSTRAPPED) timeval previousTime; -- cgit v1.2.3 From d23322bf1cdb28a5ad3163a789bb94287b0dfc9d Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Thu, 5 Jan 2012 14:29:15 +0100 Subject: Change QCocoaEventDispatcher timer handling to use QTimerInfoList This gives us support for the various Qt::TimerTypes. We only use one CFRunLoopTimer to drive all of the Qt timers. We update the time-to-fire for this timer as we add/remove/fire Qt timers. The documentation for the CFRunLoopTimerSetNextFireDate() function says that this is a valid use case, and is more performant than constantly adding and removing CFRunLoopTimers. The documentation recommends using a large interval for this use case (the docs say "several decades", but we use 1 year). Change-Id: Ie7fd7a845f4254699a5b6a5720e7626f2c5e787f Reviewed-by: Robin Burchell Reviewed-by: Richard Moe Gustavsen --- .../platforms/cocoa/qcocoaeventdispatcher.h | 24 +-- .../platforms/cocoa/qcocoaeventdispatcher.mm | 182 +++++++++++---------- 2 files changed, 100 insertions(+), 106 deletions(-) diff --git a/src/plugins/platforms/cocoa/qcocoaeventdispatcher.h b/src/plugins/platforms/cocoa/qcocoaeventdispatcher.h index e6e8180085..823a5626fe 100644 --- a/src/plugins/platforms/cocoa/qcocoaeventdispatcher.h +++ b/src/plugins/platforms/cocoa/qcocoaeventdispatcher.h @@ -92,6 +92,7 @@ #include #include #include +#include #include @@ -132,21 +133,6 @@ public: void flush(); }; -struct MacTimerInfo { - QCocoaEventDispatcherPrivate *d_ptr; - int id; - int interval; - Qt::TimerType timerType; - QObject *obj; - bool pending; - CFRunLoopTimerRef runLoopTimer; - bool operator==(const MacTimerInfo &other) - { - return (id == other.id); - } -}; -typedef QHash MacTimerHash; - struct MacSocketInfo { MacSocketInfo() : socket(0), runloop(0), readNotifier(0), writeNotifier(0) {} CFSocketRef socket; @@ -163,7 +149,12 @@ class QCocoaEventDispatcherPrivate : public QAbstractEventDispatcherPrivate public: QCocoaEventDispatcherPrivate(); - MacTimerHash macTimerHash; + // timer handling + QTimerInfoList timerInfoList; + CFRunLoopTimerRef runLoopTimerRef; + void maybeStartCFRunLoopTimer(); + void maybeStopCFRunLoopTimer(); + static void activateTimer(CFRunLoopTimerRef, void *info); // Set 'blockSendPostedEvents' to true if you _really_ need // to make sure that qt events are not posted while calling @@ -196,7 +187,6 @@ public: static Boolean postedEventSourceEqualCallback(const void *info1, const void *info2); static void postedEventsSourcePerformCallback(void *info); - static void activateTimer(CFRunLoopTimerRef, void *info); static void waitingObserverCallback(CFRunLoopObserverRef observer, CFRunLoopActivity activity, void *info); static void firstLoopEntry(CFRunLoopObserverRef ref, CFRunLoopActivity activity, void *info); diff --git a/src/plugins/platforms/cocoa/qcocoaeventdispatcher.mm b/src/plugins/platforms/cocoa/qcocoaeventdispatcher.mm index d46e25499c..5c22050711 100644 --- a/src/plugins/platforms/cocoa/qcocoaeventdispatcher.mm +++ b/src/plugins/platforms/cocoa/qcocoaeventdispatcher.mm @@ -111,32 +111,79 @@ static inline CFRunLoopRef mainRunLoop() /* timer call back */ void QCocoaEventDispatcherPrivate::activateTimer(CFRunLoopTimerRef, void *info) { - MacTimerInfo *tmr = static_cast(info); - QCocoaEventDispatcherPrivate *d = tmr->d_ptr; - int timerID = tmr->id; - if (tmr == 0 || tmr->pending == true) - return; // Can't send another timer event if it's pending. - - if (d->blockSendPostedEvents) { - QCoreApplication::postEvent(tmr->obj, new QTimerEvent(tmr->id)); + QCocoaEventDispatcherPrivate *d = static_cast(info); + (void) d->timerInfoList.activateTimers(); + d->maybeStartCFRunLoopTimer(); +} + +void QCocoaEventDispatcherPrivate::maybeStartCFRunLoopTimer() +{ + if (timerInfoList.isEmpty()) { + // no active timers, so the CFRunLoopTimerRef should not be active either + Q_ASSERT(runLoopTimerRef == 0); + return; + } + + if (runLoopTimerRef == 0) { + // start the CFRunLoopTimer + CFAbsoluteTime ttf = CFAbsoluteTimeGetCurrent(); + CFTimeInterval interval; + CFTimeInterval oneyear = CFTimeInterval(3600. * 24. * 365.); + + // Q: when should the CFRunLoopTimer fire for the first time? + struct timeval tv; + if (timerInfoList.timerWait(tv)) { + // A: when we have timers to fire, of course + interval = qMax(tv.tv_sec + tv.tv_usec / 1000000., 0.0000001); + } else { + // this shouldn't really happen, but in case it does, set the timer to fire a some point in the distant future + interval = oneyear; + } + + ttf += interval; + CFRunLoopTimerContext info = { 0, this, 0, 0, 0 }; + // create the timer with a large interval, as recommended by the CFRunLoopTimerSetNextFireDate() + // documentation, since we will adjust the timer's time-to-fire as needed to keep Qt timers working + runLoopTimerRef = CFRunLoopTimerCreate(0, ttf, oneyear, 0, 0, QCocoaEventDispatcherPrivate::activateTimer, &info); + Q_ASSERT(runLoopTimerRef != 0); + + CFRunLoopAddTimer(mainRunLoop(), runLoopTimerRef, kCFRunLoopCommonModes); } else { - tmr->pending = true; - QTimerEvent e(tmr->id); - - QCoreApplication::sendSpontaneousEvent(tmr->obj, &e); - // Get the value again in case the timer gets unregistered during the sendEvent. - tmr = d->macTimerHash.value(timerID); - if (tmr != 0) - tmr->pending = false; + // calculate when we need to wake up to process timers again + CFAbsoluteTime ttf = CFAbsoluteTimeGetCurrent(); + CFTimeInterval interval; + + // Q: when should the timer first next? + struct timeval tv; + if (timerInfoList.timerWait(tv)) { + // A: when we have timers to fire, of course + interval = qMax(tv.tv_sec + tv.tv_usec / 1000000., 0.0000001); + } else { + // no timers can fire, but we cannot stop the CFRunLoopTimer, set the timer to fire at some + // point in the distant future (the timer interval is one year) + interval = CFRunLoopTimerGetInterval(runLoopTimerRef); + } + + ttf += interval; + CFRunLoopTimerSetNextFireDate(runLoopTimerRef, ttf); } +} +void QCocoaEventDispatcherPrivate::maybeStopCFRunLoopTimer() +{ + if (runLoopTimerRef == 0) + return; + + CFRunLoopTimerInvalidate(runLoopTimerRef); + CFRelease(runLoopTimerRef); + runLoopTimerRef = 0; } void QCocoaEventDispatcher::registerTimer(int timerId, int interval, Qt::TimerType timerType, QObject *obj) { #ifndef QT_NO_DEBUG if (timerId < 1 || interval < 0 || !obj) { - qWarning("QEventDispatcherMac::registerTimer: invalid arguments"); + qWarning("QCocoaEventDispatcher::registerTimer: invalid arguments"); return; } else if (obj->thread() != thread() || thread() != QThread::currentThread()) { qWarning("QObject::startTimer: timers cannot be started from another thread"); @@ -144,58 +191,37 @@ void QCocoaEventDispatcher::registerTimer(int timerId, int interval, Qt::TimerTy } #endif - MacTimerInfo *t = new MacTimerInfo(); - t->d_ptr = d_func(); - t->id = timerId; - t->interval = interval; - t->timerType = timerType; - t->obj = obj; - t->runLoopTimer = 0; - t->pending = false; - - CFAbsoluteTime fireDate = CFAbsoluteTimeGetCurrent(); - CFTimeInterval cfinterval = qMax(CFTimeInterval(interval) / 1000, 0.0000001); - fireDate += cfinterval; - t->d_ptr->macTimerHash.insert(timerId, t); - CFRunLoopTimerContext info = { 0, (void *)t, 0, 0, 0 }; - t->runLoopTimer = CFRunLoopTimerCreate(0, fireDate, cfinterval, 0, 0, - QCocoaEventDispatcherPrivate::activateTimer, &info); - if (t->runLoopTimer == 0) { - qFatal("QEventDispatcherMac::registerTimer: Cannot create timer"); - } - CFRunLoopAddTimer(mainRunLoop(), t->runLoopTimer, kCFRunLoopCommonModes); + Q_D(QCocoaEventDispatcher); + d->timerInfoList.registerTimer(timerId, interval, timerType, obj); + d->maybeStartCFRunLoopTimer(); } -bool QCocoaEventDispatcher::unregisterTimer(int identifier) +bool QCocoaEventDispatcher::unregisterTimer(int timerId) { #ifndef QT_NO_DEBUG - if (identifier < 1) { - qWarning("QEventDispatcherMac::unregisterTimer: invalid argument"); + if (timerId < 1) { + qWarning("QCocoaEventDispatcher::unregisterTimer: invalid argument"); return false; } else if (thread() != QThread::currentThread()) { qWarning("QObject::killTimer: timers cannot be stopped from another thread"); return false; } #endif - if (identifier <= 0) - return false; // not init'd or invalid timer - - MacTimerInfo *timerInfo = d_func()->macTimerHash.take(identifier); - if (timerInfo == 0) - return false; - CFRunLoopTimerInvalidate(timerInfo->runLoopTimer); - CFRelease(timerInfo->runLoopTimer); - delete timerInfo; - - return true; + Q_D(QCocoaEventDispatcher); + bool returnValue = d->timerInfoList.unregisterTimer(timerId); + if (!d->timerInfoList.isEmpty()) + d->maybeStartCFRunLoopTimer(); + else + d->maybeStopCFRunLoopTimer(); + return returnValue; } bool QCocoaEventDispatcher::unregisterTimers(QObject *obj) { #ifndef QT_NO_DEBUG if (!obj) { - qWarning("QEventDispatcherMac::unregisterTimers: invalid argument"); + qWarning("QCocoaEventDispatcher::unregisterTimers: invalid argument"); return false; } else if (obj->thread() != thread() || thread() != QThread::currentThread()) { qWarning("QObject::killTimers: timers cannot be stopped from another thread"); @@ -204,40 +230,26 @@ bool QCocoaEventDispatcher::unregisterTimers(QObject *obj) #endif Q_D(QCocoaEventDispatcher); - MacTimerHash::iterator it = d->macTimerHash.begin(); - while (it != d->macTimerHash.end()) { - MacTimerInfo *timerInfo = it.value(); - if (timerInfo->obj != obj) { - ++it; - } else { - CFRunLoopTimerInvalidate(timerInfo->runLoopTimer); - CFRelease(timerInfo->runLoopTimer); - delete timerInfo; - it = d->macTimerHash.erase(it); - } - } - return true; + bool returnValue = d->timerInfoList.unregisterTimers(obj); + if (!d->timerInfoList.isEmpty()) + d->maybeStartCFRunLoopTimer(); + else + d->maybeStopCFRunLoopTimer(); + return returnValue; } QList QCocoaEventDispatcher::registeredTimers(QObject *object) const { +#ifndef QT_NO_DEBUG if (!object) { - qWarning("QEventDispatcherMac:registeredTimers: invalid argument"); + qWarning("QCocoaEventDispatcher:registeredTimers: invalid argument"); return QList(); } - - QList list; +#endif Q_D(const QCocoaEventDispatcher); - MacTimerHash::const_iterator it = d->macTimerHash.constBegin(); - while (it != d->macTimerHash.constEnd()) { - MacTimerInfo *t = it.value(); - if (t->obj == object) - list << TimerInfo(t->id, t->interval, t->timerType); - ++it; - } - return list; + return d->timerInfoList.registeredTimers(object); } /************************************************************************** @@ -882,7 +894,8 @@ void QCocoaEventDispatcherPrivate::endModalSession(QWindow *window) } QCocoaEventDispatcherPrivate::QCocoaEventDispatcherPrivate() - : blockSendPostedEvents(false), + : runLoopTimerRef(0), + blockSendPostedEvents(false), currentExecIsNSAppRun(false), nsAppRunCalledByQt(false), cleanupModalSessionsNeeded(false), @@ -1045,18 +1058,9 @@ void QCocoaEventDispatcher::flush() QCocoaEventDispatcher::~QCocoaEventDispatcher() { Q_D(QCocoaEventDispatcher); - //timer cleanup - MacTimerHash::iterator it = d->macTimerHash.begin(); - while (it != d->macTimerHash.end()) { - MacTimerInfo *t = it.value(); - if (t->runLoopTimer) { - CFRunLoopTimerInvalidate(t->runLoopTimer); - CFRelease(t->runLoopTimer); - } - delete t; - ++it; - } - d->macTimerHash.clear(); + + qDeleteAll(d->timerInfoList); + d->maybeStopCFRunLoopTimer(); // Remove CFSockets from the runloop. for (MacSocketHash::ConstIterator it = d->macSockets.constBegin(); it != d->macSockets.constEnd(); ++it) { -- cgit v1.2.3 From f6dd3ab553a56d5e39da4bbb040b9136b88fa05b Mon Sep 17 00:00:00 2001 From: Frederik Gladhorn Date: Sat, 7 Jan 2012 02:00:35 +0100 Subject: Remove docs for removed functions. Change-Id: I33346d0a2b324afe4b85b1792854b586aa7685ba Reviewed-by: Casper van Donderen --- src/widgets/kernel/qaction.cpp | 91 --------------------------------- src/widgets/widgets/qabstractslider.cpp | 56 -------------------- 2 files changed, 147 deletions(-) diff --git a/src/widgets/kernel/qaction.cpp b/src/widgets/kernel/qaction.cpp index 81ab1645cd..408e088f0f 100644 --- a/src/widgets/kernel/qaction.cpp +++ b/src/widgets/kernel/qaction.cpp @@ -1262,97 +1262,6 @@ void QAction::activate(ActionEvent event) \value Hover this will cause the QAction::hovered() signal to be emitted. */ -/*! - \fn void QAction::setMenuText(const QString &text) - - Use setText() instead. -*/ - -/*! - \fn QString QAction::menuText() const - - Use text() instead. -*/ - -/*! - \fn bool QAction::isOn() const - - Use isChecked() instead. -*/ - -/*! - \fn void QAction::setOn(bool b) - - Use setChecked() instead. -*/ - -/*! - \fn bool QAction::isToggleAction() const - - Use isCheckable() instead. -*/ - -/*! - \fn void QAction::setToggleAction(bool b) - - Use setCheckable() instead. -*/ - -/*! - \fn void QAction::setIconSet(const QIcon &i) - - Use setIcon() instead. -*/ - -/*! - \fn bool QAction::addTo(QWidget *w) - - Use QWidget::addAction() instead. - - \oldcode - action->addTo(widget); - \newcode - widget->addAction(action); - \endcode -*/ - -/*! - \fn bool QAction::removeFrom(QWidget *w) - - Use QWidget::removeAction() instead. - - \oldcode - action->removeFrom(widget); - \newcode - widget->removeAction(action); - \endcode -*/ - -/*! - \fn void QAction::setAccel(const QKeySequence &shortcut) - - Use setShortcut() instead. -*/ - -/*! - \fn QIcon QAction::iconSet() const - - Use icon() instead. -*/ - -/*! - \fn QKeySequence QAction::accel() const - - Use shortcut() instead. -*/ - -/*! - \fn void QAction::activated(int i); - - Use triggered() instead. -*/ - - /*! \property QAction::menuRole \brief the action's menu role diff --git a/src/widgets/widgets/qabstractslider.cpp b/src/widgets/widgets/qabstractslider.cpp index 035a5dc34d..d3dddde409 100644 --- a/src/widgets/widgets/qabstractslider.cpp +++ b/src/widgets/widgets/qabstractslider.cpp @@ -943,60 +943,4 @@ bool QAbstractSlider::event(QEvent *e) return QWidget::event(e); } -/*! \fn int QAbstractSlider::minValue() const - - Use minimum() instead. -*/ - -/*! \fn int QAbstractSlider::maxValue() const - - Use maximum() instead. -*/ - -/*! \fn int QAbstractSlider::lineStep() const - - Use singleStep() instead. -*/ - -/*! \fn void QAbstractSlider::setMinValue(int v) - - Use setMinimum() instead. -*/ - -/*! \fn void QAbstractSlider::setMaxValue(int v) - - Use setMaximum() instead. -*/ - -/*! \fn void QAbstractSlider::setLineStep(int v) - - Use setSingleStep() instead. -*/ - -/*! \fn void QAbstractSlider::addPage() - - Use triggerAction(QAbstractSlider::SliderPageStepAdd) instead. -*/ - -/*! \fn void QAbstractSlider::subtractPage() - - Use triggerAction(QAbstractSlider::SliderPageStepSub) instead. -*/ - -/*! \fn void QAbstractSlider::addLine() - - Use triggerAction(QAbstractSlider::SliderSingleStepAdd) instead. -*/ - -/*! \fn void QAbstractSlider::subtractLine() - - Use triggerAction(QAbstractSlider::SliderSingleStepSub) instead. -*/ - -/*! \fn void QAbstractSlider::setSteps(int single, int page) - - Use setSingleStep(\a single) followed by setPageStep(\a page) - instead. -*/ - QT_END_NAMESPACE -- cgit v1.2.3 From e8713e087318ef7e992fa3d54ead3d9a28658292 Mon Sep 17 00:00:00 2001 From: Laszlo Agocs Date: Mon, 9 Jan 2012 11:45:54 +0200 Subject: Remove unused touch-related code in QApplicationPrivate header MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit For X11 and Windows the touch handling code lives in the platform plug-ins. The RX71 code is replaced by the generic evdev touch support provided by the touchscreen plug-in. Change-Id: I12c9fd3be8b466565cac7abebbb70805f1e28b5f Reviewed-by: Samuel Rødal --- src/widgets/kernel/qapplication_p.h | 156 ------------------------------------ 1 file changed, 156 deletions(-) diff --git a/src/widgets/kernel/qapplication_p.h b/src/widgets/kernel/qapplication_p.h index 574feba001..f8d02ed437 100644 --- a/src/widgets/kernel/qapplication_p.h +++ b/src/widgets/kernel/qapplication_p.h @@ -120,37 +120,6 @@ struct QTabletDeviceData inline QPointF scaleCoord(int coordX, int coordY, int outOriginX, int outExtentX, int outOriginY, int outExtentY) const; #endif - -#ifdef Q_WS_X11 - QPointer widgetToGetPress; -#endif - -#ifdef Q_WS_X11 - int deviceType; - enum { - TOTAL_XINPUT_EVENTS = 64 - }; - void *device; - int eventCount; - long unsigned int eventList[TOTAL_XINPUT_EVENTS]; // XEventClass is in fact a long unsigned int - - int xinput_motion; - int xinput_key_press; - int xinput_key_release; - int xinput_button_press; - int xinput_button_release; - int xinput_proximity_in; - int xinput_proximity_out; -#elif defined(Q_WS_WIN) - qint64 llId; - int currentDevice; - int currentPointerType; -#elif defined(Q_WS_MAC) - quint64 tabletUniqueID; - int tabletDeviceType; - int tabletPointerType; - int capabilityMask; -#endif }; static inline int sign(int x) @@ -189,80 +158,6 @@ QMacTabletHash *qt_mac_tablet_hash(); # endif #endif - -#if defined(Q_WS_WIN) -typedef BOOL (WINAPI *PtrRegisterTouchWindow)(HWND, ULONG); -typedef BOOL (WINAPI *PtrGetTouchInputInfo)(HANDLE, UINT, PVOID, int); -typedef BOOL (WINAPI *PtrCloseTouchInputHandle)(HANDLE); - -#ifndef QT_NO_GESTURES -typedef BOOL (WINAPI *PtrGetGestureInfo)(HANDLE, PVOID); -typedef BOOL (WINAPI *PtrGetGestureExtraArgs)(HANDLE, UINT, PBYTE); -typedef BOOL (WINAPI *PtrCloseGestureInfoHandle)(HANDLE); -typedef BOOL (WINAPI *PtrSetGestureConfig)(HWND, DWORD, UINT, PVOID, UINT); -typedef BOOL (WINAPI *PtrGetGestureConfig)(HWND, DWORD, DWORD, PUINT, PVOID, UINT); - -typedef BOOL (WINAPI *PtrBeginPanningFeedback)(HWND); -typedef BOOL (WINAPI *PtrUpdatePanningFeedback)(HWND, LONG, LONG, BOOL); -typedef BOOL (WINAPI *PtrEndPanningFeedback)(HWND, BOOL); - -#ifndef WM_GESTURE -# define WM_GESTURE 0x0119 - -# define GID_BEGIN 1 -# define GID_END 2 -# define GID_ZOOM 3 -# define GID_PAN 4 -# define GID_ROTATE 5 -# define GID_TWOFINGERTAP 6 -# define GID_ROLLOVER 7 - -typedef struct tagGESTUREINFO -{ - UINT cbSize; - DWORD dwFlags; - DWORD dwID; - HWND hwndTarget; - POINTS ptsLocation; - DWORD dwInstanceID; - DWORD dwSequenceID; - ULONGLONG ullArguments; - UINT cbExtraArgs; -} GESTUREINFO; - -# define GC_PAN 0x00000001 -# define GC_PAN_WITH_SINGLE_FINGER_VERTICALLY 0x00000002 -# define GC_PAN_WITH_SINGLE_FINGER_HORIZONTALLY 0x00000004 - -# define GC_ZOOM 0x00000001 -# define GC_ROTATE 0x00000001 - -typedef struct tagGESTURECONFIG -{ - DWORD dwID; - DWORD dwWant; - DWORD dwBlock; -} GESTURECONFIG; - -# define GID_ROTATE_ANGLE_FROM_ARGUMENT(arg) ((((double)(arg) / 65535.0) * 4.0 * 3.14159265) - 2.0*3.14159265) - -#endif // WM_GESTURE - -#if defined(Q_WS_WINCE_WM) && defined(QT_WINCE_GESTURES) -#undef GID_ZOOM -#define GID_ZOOM 0xf000 -#undef GID_ROTATE -#define GID_ROTATE 0xf001 -#undef GID_TWOFINGERTAP -#define GID_TWOFINGERTAP 0xf002 -#undef GID_ROLLOVER -#define GID_ROLLOVER 0xf003 -#endif - -#endif // QT_NO_GESTURES - -#endif // Q_WS_WIN - struct FontHash : public QHash { FontHash(); @@ -489,62 +384,11 @@ public: const QList &touchPoints, ulong timestamp); -#if defined(Q_WS_WIN) - static bool HasTouchSupport; - static PtrRegisterTouchWindow RegisterTouchWindow; - static PtrGetTouchInputInfo GetTouchInputInfo; - static PtrCloseTouchInputHandle CloseTouchInputHandle; - - QHash touchInputIDToTouchPointID; - bool translateTouchEvent(const MSG &msg); - -#ifndef QT_NO_GESTURES - PtrGetGestureInfo GetGestureInfo; - PtrGetGestureExtraArgs GetGestureExtraArgs; - PtrCloseGestureInfoHandle CloseGestureInfoHandle; - PtrSetGestureConfig SetGestureConfig; - PtrGetGestureConfig GetGestureConfig; - PtrBeginPanningFeedback BeginPanningFeedback; - PtrUpdatePanningFeedback UpdatePanningFeedback; - PtrEndPanningFeedback EndPanningFeedback; -#endif // QT_NO_GESTURES -#endif - -#ifdef QT_RX71_MULTITOUCH - bool hasRX71MultiTouch; - - struct RX71TouchPointState { - QSocketNotifier *socketNotifier; - QTouchEvent::TouchPoint touchPoint; - - int minX, maxX, scaleX; - int minY, maxY, scaleY; - int minZ, maxZ; - }; - QList allRX71TouchPoints; - - bool readRX71MultiTouchEvents(int deviceNumber); - void fakeMouseEventFromRX71TouchEvent(); - void _q_readRX71MultiTouchEvents(); -#endif - -#if defined(Q_OS_SYMBIAN) - int pressureSupported; - int maxTouchPressure; - QList appAllTouchPoints; - - bool useTranslucentEGLSurfaces; -#endif - private: #ifdef Q_WS_QWS QMap maxWindowRects; #endif -#ifdef Q_OS_SYMBIAN - QHash scanCodeCache; -#endif - static QApplicationPrivate *self; static void giveFocusAccordingToFocusPolicy(QWidget *w, -- cgit v1.2.3 From 30d3c3b49f161d7d52618ae586ea6648b8c18ed4 Mon Sep 17 00:00:00 2001 From: Frederik Gladhorn Date: Sat, 7 Jan 2012 01:46:07 +0100 Subject: Improve Accessibility documentation. Change-Id: Ifb70d9c6d7b3096e0188e8454191786375296647 Reviewed-by: Geir Vattekar --- src/gui/accessible/qaccessible.cpp | 9 ++++++++- src/gui/accessible/qaccessibleobject.cpp | 2 ++ src/widgets/accessible/qaccessiblewidget.cpp | 2 ++ 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/src/gui/accessible/qaccessible.cpp b/src/gui/accessible/qaccessible.cpp index ad88904ef7..59dbcf4bef 100644 --- a/src/gui/accessible/qaccessible.cpp +++ b/src/gui/accessible/qaccessible.cpp @@ -59,11 +59,13 @@ QT_BEGIN_NAMESPACE /*! \class QAccessible \brief The QAccessible class provides enums and static functions - relating to accessibility. + related to accessibility. \ingroup accessibility \inmodule QtWidgets + This class is part of \l {Accessibility for QWidget Applications}. + Accessible applications can be used by people who are not able to use applications by conventional means. @@ -687,6 +689,8 @@ void QAccessible::updateAccessibility(QObject *o, int who, Event reason) \ingroup accessibility \inmodule QtGui + This class is part of \l {Accessibility for QWidget Applications}. + Accessibility tools (also called AT Clients), such as screen readers or braille displays, require high-level information about accessible objects in an application. Accessible objects provide @@ -1080,6 +1084,9 @@ QColor QAccessibleInterface::backgroundColor() const /*! \class QAccessibleEvent + + \internal + \brief The QAccessibleEvent class is used to query addition accessibility information about complex widgets. diff --git a/src/gui/accessible/qaccessibleobject.cpp b/src/gui/accessible/qaccessibleobject.cpp index 5ba3cd1281..8dfe5f3b02 100644 --- a/src/gui/accessible/qaccessibleobject.cpp +++ b/src/gui/accessible/qaccessibleobject.cpp @@ -96,6 +96,8 @@ QList QAccessibleObjectPrivate::actionList() const \ingroup accessibility \inmodule QtWidgets + This class is part of \l {Accessibility for QWidget Applications}. + This class is mainly provided for convenience. All subclasses of the QAccessibleInterface that provide implementations of non-widget objects should use this class as their base class. diff --git a/src/widgets/accessible/qaccessiblewidget.cpp b/src/widgets/accessible/qaccessiblewidget.cpp index 43a72a336f..5498e70744 100644 --- a/src/widgets/accessible/qaccessiblewidget.cpp +++ b/src/widgets/accessible/qaccessiblewidget.cpp @@ -159,6 +159,8 @@ public: \ingroup accessibility \inmodule QtWidgets + This class is part of \l {Accessibility for QWidget Applications}. + This class is convenient to use as a base class for custom implementations of QAccessibleInterfaces that provide information about widget objects. -- cgit v1.2.3 From f2327c083ce2996f1fc714cd8404d43fe26fd6f8 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Mon, 9 Jan 2012 13:04:37 +0100 Subject: Rename private API to avoid conflict with mac OX macros. Mac OS defines the check macro in /usr/include/AssertMacros.h http://boost.2283326.n4.nabble.com/Boost-with-Darwin-Mac-gcc-4-0-1-td2580330.html Change-Id: I99789e4dba25e80afd184c44d0781c4ebde46d74 Reviewed-by: Thiago Macieira --- src/dbus/qdbusextratypes.cpp | 4 ++-- src/dbus/qdbusextratypes.h | 24 ++++++++++++------------ 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/src/dbus/qdbusextratypes.cpp b/src/dbus/qdbusextratypes.cpp index 9adceb8871..8d9d2e06fd 100644 --- a/src/dbus/qdbusextratypes.cpp +++ b/src/dbus/qdbusextratypes.cpp @@ -46,7 +46,7 @@ QT_BEGIN_NAMESPACE -void QDBusObjectPath::check() +void QDBusObjectPath::doCheck() { if (!QDBusUtil::isValidObjectPath(*this)) { qWarning("QDBusObjectPath: invalid path \"%s\"", qPrintable(*this)); @@ -54,7 +54,7 @@ void QDBusObjectPath::check() } } -void QDBusSignature::check() +void QDBusSignature::doCheck() { if (!QDBusUtil::isValidSignature(*this)) { qWarning("QDBusSignature: invalid signature \"%s\"", qPrintable(*this)); diff --git a/src/dbus/qdbusextratypes.h b/src/dbus/qdbusextratypes.h index ec37453167..36060ab0a4 100644 --- a/src/dbus/qdbusextratypes.h +++ b/src/dbus/qdbusextratypes.h @@ -75,26 +75,26 @@ public: { return *this; } private: - void check(); + void doCheck(); }; inline QDBusObjectPath::QDBusObjectPath(const char *objectPath) : QString(QString::fromLatin1(objectPath)) -{ check(); } +{ doCheck(); } inline QDBusObjectPath::QDBusObjectPath(const QLatin1String &objectPath) : QString(objectPath) -{ check(); } +{ doCheck(); } inline QDBusObjectPath::QDBusObjectPath(const QString &objectPath) : QString(objectPath) -{ check(); } +{ doCheck(); } inline QDBusObjectPath &QDBusObjectPath::operator=(const QDBusObjectPath &_path) -{ QString::operator=(_path); check(); return *this; } +{ QString::operator=(_path); doCheck(); return *this; } inline void QDBusObjectPath::setPath(const QString &objectPath) -{ QString::operator=(objectPath); check(); } +{ QString::operator=(objectPath); doCheck(); } inline bool operator==(const QDBusObjectPath &lhs, const QDBusObjectPath &rhs) { return lhs.path() == rhs.path(); } @@ -125,26 +125,26 @@ public: { return *this; } private: - void check(); + void doCheck(); }; inline QDBusSignature::QDBusSignature(const char *dBusSignature) : QString(QString::fromAscii(dBusSignature)) -{ check(); } +{ doCheck(); } inline QDBusSignature::QDBusSignature(const QLatin1String &dBusSignature) : QString(dBusSignature) -{ check(); } +{ doCheck(); } inline QDBusSignature::QDBusSignature(const QString &dBusSignature) : QString(dBusSignature) -{ check(); } +{ doCheck(); } inline QDBusSignature &QDBusSignature::operator=(const QDBusSignature &dbusSignature) -{ QString::operator=(dbusSignature); check(); return *this; } +{ QString::operator=(dbusSignature); doCheck(); return *this; } inline void QDBusSignature::setSignature(const QString &dBusSignature) -{ QString::operator=(dBusSignature); check(); } +{ QString::operator=(dBusSignature); doCheck(); } inline bool operator==(const QDBusSignature &lhs, const QDBusSignature &rhs) { return lhs.signature() == rhs.signature(); } -- cgit v1.2.3 From 9b2a776ce25310d1afddab3faab8c8e098a6094b Mon Sep 17 00:00:00 2001 From: Frederik Gladhorn Date: Wed, 21 Dec 2011 16:10:10 +0100 Subject: Remove unused function. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Instead this code has been ported to qAccessibleRoleString. Change-Id: I41dd83d09cbcf2b0de3eb2fa027f24cf070f22a2 Reviewed-by: Jan-Arve Sæther --- .../platforms/windows/qwindowsaccessibility.cpp | 100 --------------------- 1 file changed, 100 deletions(-) diff --git a/src/plugins/platforms/windows/qwindowsaccessibility.cpp b/src/plugins/platforms/windows/qwindowsaccessibility.cpp index f181f3061b..14d4a6bbba 100644 --- a/src/plugins/platforms/windows/qwindowsaccessibility.cpp +++ b/src/plugins/platforms/windows/qwindowsaccessibility.cpp @@ -92,106 +92,6 @@ QT_BEGIN_INCLUDE_NAMESPACE #include QT_END_INCLUDE_NAMESPACE -static const char *eventString(QAccessible::Event ev) -{ - static const char *events[] = { - "null", // 0 - "SoundPlayed" /*= 0x0001*/, - "Alert" /*= 0x0002*/, - "ForegroundChanged" /*= 0x0003*/, - "MenuStart" /*= 0x0004*/, - "MenuEnd" /*= 0x0005*/, - "PopupMenuStart" /*= 0x0006*/, - "PopupMenuEnd" /*= 0x0007*/, - "ContextHelpStart" /*= 0x000C*/, // 8 - "ContextHelpEnd" /*= 0x000D*/, - "DragDropStart" /*= 0x000E*/, - "DragDropEnd" /*= 0x000F*/, - "DialogStart" /*= 0x0010*/, - "DialogEnd" /*= 0x0011*/, - "ScrollingStart" /*= 0x0012*/, - "ScrollingEnd" /*= 0x0013*/, - "MenuCommand" /*= 0x0018*/, // 16 - - // Values from IAccessible2 - "ActionChanged" /*= 0x0101*/, // 17 - "ActiveDescendantChanged", - "AttributeChanged", - "DocumentContentChanged", - "DocumentLoadComplete", - "DocumentLoadStopped", - "DocumentReload", - "HyperlinkEndIndexChanged", - "HyperlinkNumberOfAnchorsChanged", - "HyperlinkSelectedLinkChanged", - "HypertextLinkActivated", - "HypertextLinkSelected", - "HyperlinkStartIndexChanged", - "HypertextChanged", - "HypertextNLinksChanged", - "ObjectAttributeChanged", - "PageChanged", - "SectionChanged", - "TableCaptionChanged", - "TableColumnDescriptionChanged", - "TableColumnHeaderChanged", - "TableModelChanged", - "TableRowDescriptionChanged", - "TableRowHeaderChanged", - "TableSummaryChanged", - "TextAttributeChanged", - "TextCaretMoved", - // TextChanged, deprecated, use TextUpdated - //TextColumnChanged = TextCaretMoved + 2, - "TextInserted", - "TextRemoved", - "TextUpdated", - "TextSelectionChanged", - "VisibleDataChanged", /*= 0x0101+32*/ - "ObjectCreated" /*= 0x8000*/, // 49 - "ObjectDestroyed" /*= 0x8001*/, - "ObjectShow" /*= 0x8002*/, - "ObjectHide" /*= 0x8003*/, - "ObjectReorder" /*= 0x8004*/, - "Focus" /*= 0x8005*/, - "Selection" /*= 0x8006*/, - "SelectionAdd" /*= 0x8007*/, - "SelectionRemove" /*= 0x8008*/, - "SelectionWithin" /*= 0x8009*/, - "StateChanged" /*= 0x800A*/, - "LocationChanged" /*= 0x800B*/, - "NameChanged" /*= 0x800C*/, - "DescriptionChanged" /*= 0x800D*/, - "ValueChanged" /*= 0x800E*/, - "ParentChanged" /*= 0x800F*/, - "HelpChanged" /*= 0x80A0*/, - "DefaultActionChanged" /*= 0x80B0*/, - "AcceleratorChanged" /*= 0x80C0*/ - }; - int e = int(ev); - if (e <= 0x80c0) { - const int last = sizeof(events)/sizeof(char*) - 1; - - if (e <= 0x07) - return events[e]; - else if (e <= 0x13) - return events[e - 0x0c + 8]; - else if (e == 0x18) - return events[16]; - else if (e <= 0x0101 + 32) - return events[e - 0x101 + 17]; - else if (e <= 0x800f) - return events[e - 0x8000 + 49]; - else if (e == 0x80a0) - return events[last - 2]; - else if (e == 0x80b0) - return events[last - 1]; - else if (e == 0x80c0) - return events[last]; - } - return "unknown"; -}; - void showDebug(const char* funcName, const QAccessibleInterface *iface) { qDebug() << "Role:" << qAccessibleRoleString(iface->role(0)) -- cgit v1.2.3 From fa1a1421262859cc9f4f48cc16aab0d3a0033ffb Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Sun, 8 Jan 2012 22:20:43 +0100 Subject: Fix constness of QShortcut::context() MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: Ic819c9b70fb2d6732f3fdc1d151a9adda571211b Reviewed-by: JÄ™drzej Nowacki --- src/widgets/kernel/qshortcut.cpp | 4 ++-- src/widgets/kernel/qshortcut.h | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/widgets/kernel/qshortcut.cpp b/src/widgets/kernel/qshortcut.cpp index 9c3c51dd9a..cb2d08956b 100644 --- a/src/widgets/kernel/qshortcut.cpp +++ b/src/widgets/kernel/qshortcut.cpp @@ -521,9 +521,9 @@ void QShortcut::setContext(Qt::ShortcutContext context) d->redoGrab(qApp->d_func()->shortcutMap); } -Qt::ShortcutContext QShortcut::context() +Qt::ShortcutContext QShortcut::context() const { - Q_D(QShortcut); + Q_D(const QShortcut); return d->sc_context; } diff --git a/src/widgets/kernel/qshortcut.h b/src/widgets/kernel/qshortcut.h index e240ea8864..077028ccd3 100644 --- a/src/widgets/kernel/qshortcut.h +++ b/src/widgets/kernel/qshortcut.h @@ -77,7 +77,7 @@ public: bool isEnabled() const; void setContext(Qt::ShortcutContext context); - Qt::ShortcutContext context(); + Qt::ShortcutContext context() const; void setWhatsThis(const QString &text); QString whatsThis() const; -- cgit v1.2.3 From ab7c7b66ec5750d95e8699a18240d814d956f177 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Sun, 8 Jan 2012 22:20:18 +0100 Subject: Fix constness of QGraphicsSceneBspTreeIndex::bspTreeDepth() MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I8298afc9c493a1e9c6e49cc36a97184a50709558 Reviewed-by: JÄ™drzej Nowacki Reviewed-by: Thorbjørn Lund Martsum --- src/widgets/graphicsview/qgraphicsscenebsptreeindex.cpp | 2 +- src/widgets/graphicsview/qgraphicsscenebsptreeindex_p.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/widgets/graphicsview/qgraphicsscenebsptreeindex.cpp b/src/widgets/graphicsview/qgraphicsscenebsptreeindex.cpp index 1f4c3d1c18..1c4653d522 100644 --- a/src/widgets/graphicsview/qgraphicsscenebsptreeindex.cpp +++ b/src/widgets/graphicsview/qgraphicsscenebsptreeindex.cpp @@ -601,7 +601,7 @@ QList QGraphicsSceneBspTreeIndex::items(Qt::SortOrder order) co 10 items. */ -int QGraphicsSceneBspTreeIndex::bspTreeDepth() +int QGraphicsSceneBspTreeIndex::bspTreeDepth() const { Q_D(const QGraphicsSceneBspTreeIndex); return d->bspTreeDepth; diff --git a/src/widgets/graphicsview/qgraphicsscenebsptreeindex_p.h b/src/widgets/graphicsview/qgraphicsscenebsptreeindex_p.h index d1b3099295..b3b31fca6a 100644 --- a/src/widgets/graphicsview/qgraphicsscenebsptreeindex_p.h +++ b/src/widgets/graphicsview/qgraphicsscenebsptreeindex_p.h @@ -83,7 +83,7 @@ public: QList estimateTopLevelItems(const QRectF &rect, Qt::SortOrder order) const; QList items(Qt::SortOrder order = Qt::DescendingOrder) const; - int bspTreeDepth(); + int bspTreeDepth() const; void setBspTreeDepth(int depth); protected Q_SLOTS: -- cgit v1.2.3 From 90a7e6953d85a4d25502783e03c1bc48316f08b3 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Sun, 8 Jan 2012 22:19:36 +0100 Subject: Fix constness of QInputPanel::keyboardRectangle() MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I13552ed0c357b19486f389a8fbf2c338652437c9 Reviewed-by: JÄ™drzej Nowacki --- src/gui/kernel/qinputpanel.cpp | 4 ++-- src/gui/kernel/qinputpanel.h | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/gui/kernel/qinputpanel.cpp b/src/gui/kernel/qinputpanel.cpp index 3eec3e89bf..804bcda4dc 100644 --- a/src/gui/kernel/qinputpanel.cpp +++ b/src/gui/kernel/qinputpanel.cpp @@ -159,9 +159,9 @@ QRectF QInputPanel::cursorRectangle() const \property QInputPanel::keyboardRectangle \brief Virtual keyboard's geometry in window coordinates. */ -QRectF QInputPanel::keyboardRectangle() +QRectF QInputPanel::keyboardRectangle() const { - Q_D(QInputPanel); + Q_D(const QInputPanel); QPlatformInputContext *ic = d->platformInputContext(); if (ic) return ic->keyboardRect(); diff --git a/src/gui/kernel/qinputpanel.h b/src/gui/kernel/qinputpanel.h index 33e49f28f4..c33bd13451 100644 --- a/src/gui/kernel/qinputpanel.h +++ b/src/gui/kernel/qinputpanel.h @@ -82,7 +82,7 @@ public: QRectF cursorRectangle() const; // ### what if we have rotations for the item? // keyboard geometry in window coords - QRectF keyboardRectangle(); + QRectF keyboardRectangle() const; enum Action { Click, -- cgit v1.2.3 From 75ab5a15c486480777fa79d8eaa137830fa7bfc8 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Sun, 8 Jan 2012 20:37:22 +0100 Subject: Rename handler/handlerManager. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: Idbac004120ea686d403421ea4f2fb4db87f55149 Reviewed-by: JÄ™drzej Nowacki --- src/corelib/kernel/qvariant.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/corelib/kernel/qvariant.cpp b/src/corelib/kernel/qvariant.cpp index 3002db480a..9cf131312b 100644 --- a/src/corelib/kernel/qvariant.cpp +++ b/src/corelib/kernel/qvariant.cpp @@ -1899,13 +1899,13 @@ QDataStream& operator<<(QDataStream &s, const QVariant::Type p) */ template -inline T qVariantToHelper(const QVariant::Private &d, QVariant::Type t, const HandlersManager &handler) +inline T qVariantToHelper(const QVariant::Private &d, QVariant::Type t, const HandlersManager &handlerManager) { if (d.type == t) return *v_cast(&d); T ret; - handler[d.type]->convert(&d, t, &ret, 0); + handlerManager[d.type]->convert(&d, t, &ret, 0); return ret; } @@ -2212,7 +2212,7 @@ QBitArray QVariant::toBitArray() const template inline T qNumVariantToHelper(const QVariant::Private &d, - const HandlersManager &handler, bool *ok, const T& val) + const HandlersManager &handlerManager, bool *ok, const T& val) { uint t = qMetaTypeId(); if (ok) @@ -2221,7 +2221,7 @@ inline T qNumVariantToHelper(const QVariant::Private &d, return val; T ret = 0; - if (!handler[d.type]->convert(&d, QVariant::Type(t), &ret, ok) && ok) + if (!handlerManager[d.type]->convert(&d, QVariant::Type(t), &ret, ok) && ok) *ok = false; return ret; } -- cgit v1.2.3 From 696a6b57d12e6bb4edbf087b10ff5a008424fc59 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Sun, 8 Jan 2012 20:00:14 +0100 Subject: Add define for C++11 explict delete methods Change-Id: Ief4b8949acb528dcfc0be725b562ae71bd1640cd Reviewed-by: Thiago Macieira --- src/corelib/global/qglobal.h | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/corelib/global/qglobal.h b/src/corelib/global/qglobal.h index b1bd425852..a20614afde 100644 --- a/src/corelib/global/qglobal.h +++ b/src/corelib/global/qglobal.h @@ -1071,6 +1071,12 @@ redefine to built-in booleans to make autotests work properly */ # define Q_NULLPTR 0 #endif +#ifdef Q_COMPILER_DEFAULT_DELETE_MEMBERS +# define Q_DECL_EQ_DELETE = delete +#else +# define Q_DECL_EQ_DELETE +#endif + #ifdef Q_COMPILER_CONSTEXPR # define Q_DECL_CONSTEXPR constexpr #else @@ -2443,15 +2449,9 @@ Q_CORE_EXPORT QString qtTrId(const char *id, int n = -1); classes contains a private copy constructor and assignment operator to disable copying (the compiler gives an error message). */ -#ifdef Q_COMPILER_DEFAULT_DELETE_MEMBERS -#define Q_DISABLE_COPY(Class) \ - Class(const Class &) = delete;\ - Class &operator=(const Class &) = delete; -#else #define Q_DISABLE_COPY(Class) \ - Class(const Class &); \ - Class &operator=(const Class &); -#endif + Class(const Class &) Q_DECL_EQ_DELETE;\ + Class &operator=(const Class &) Q_DECL_EQ_DELETE; class QByteArray; Q_CORE_EXPORT QByteArray qgetenv(const char *varName); -- cgit v1.2.3 From f74c49bbaf7979a4df15eb13556d91be20e9483e Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Mon, 9 Jan 2012 18:50:08 +0100 Subject: Avoid using 'check' in QSharedPointer test. Avoids conflict with macro on Mac OS. Change-Id: Ia8301f52c879d941eece0fa6ae47a4c21d4e6490 Reviewed-by: Thiago Macieira --- .../tools/qsharedpointer/tst_qsharedpointer.cpp | 84 +++++++++++----------- .../tst_qsharedpointer_and_qwidget.cpp | 4 +- 2 files changed, 44 insertions(+), 44 deletions(-) diff --git a/tests/auto/corelib/tools/qsharedpointer/tst_qsharedpointer.cpp b/tests/auto/corelib/tools/qsharedpointer/tst_qsharedpointer.cpp index 6e8358c841..35b63deb4c 100644 --- a/tests/auto/corelib/tools/qsharedpointer/tst_qsharedpointer.cpp +++ b/tests/auto/corelib/tools/qsharedpointer/tst_qsharedpointer.cpp @@ -102,10 +102,10 @@ private slots: void invalidConstructs(); public slots: - void cleanup() { check(); } + void cleanup() { safetyCheck(); } public: - inline void check() + inline void safetyCheck() { #ifdef QT_BUILD_INTERNAL QtSharedPointer::internalSafetyCheckCleanCheck(); @@ -607,7 +607,7 @@ void tst_QSharedPointer::qobjectWeakManagement() delete obj; QVERIFY(weak.isNull()); } - check(); + safetyCheck(); { // same, bit with operator= @@ -621,7 +621,7 @@ void tst_QSharedPointer::qobjectWeakManagement() delete obj; QVERIFY(weak.isNull()); } - check(); + safetyCheck(); { // delete triggered by parent @@ -634,7 +634,7 @@ void tst_QSharedPointer::qobjectWeakManagement() delete parent; QVERIFY(weak.isNull()); } - check(); + safetyCheck(); { // same as above, but set the parent after QWeakPointer is created @@ -649,7 +649,7 @@ void tst_QSharedPointer::qobjectWeakManagement() delete parent; QVERIFY(weak.isNull()); } - check(); + safetyCheck(); { // with two QWeakPointers @@ -666,7 +666,7 @@ void tst_QSharedPointer::qobjectWeakManagement() delete obj; QVERIFY(weak.isNull()); } - check(); + safetyCheck(); { // same, but delete the pointer while two QWeakPointers exist @@ -683,7 +683,7 @@ void tst_QSharedPointer::qobjectWeakManagement() } QVERIFY(weak.isNull()); } - check(); + safetyCheck(); } void tst_QSharedPointer::noSharedPointerFromWeakQObject() @@ -737,7 +737,7 @@ void tst_QSharedPointer::objectCast() ptr = qobject_cast >(baseptr); QVERIFY(ptr == data); } - check(); + safetyCheck(); { const OtherObject *data = new OtherObject; @@ -763,7 +763,7 @@ void tst_QSharedPointer::objectCast() ptr = qobject_cast >(baseptr); QVERIFY(ptr == data); } - check(); + safetyCheck(); { OtherObject *data = new OtherObject; @@ -801,7 +801,7 @@ void tst_QSharedPointer::objectCast() otherptr = qobject_cast >(weakptr); QVERIFY(otherptr.isNull()); } - check(); + safetyCheck(); } void tst_QSharedPointer::differentPointers() @@ -848,7 +848,7 @@ void tst_QSharedPointer::differentPointers() QVERIFY(baseptr == aData); QVERIFY(aData == baseptr); } - check(); + safetyCheck(); { DiffPtrDerivedData *aData = new DiffPtrDerivedData; @@ -863,7 +863,7 @@ void tst_QSharedPointer::differentPointers() QVERIFY(ptr == aBase); QVERIFY(baseptr == aData); } - check(); + safetyCheck(); { DiffPtrDerivedData *aData = new DiffPtrDerivedData; @@ -880,7 +880,7 @@ void tst_QSharedPointer::differentPointers() QVERIFY(baseptr == aData); QVERIFY(baseptr == aBase); } - check(); + safetyCheck(); } void tst_QSharedPointer::virtualBaseDifferentPointers() @@ -900,7 +900,7 @@ void tst_QSharedPointer::virtualBaseDifferentPointers() QVERIFY(baseptr == aData); QVERIFY(baseptr == aBase); } - check(); + safetyCheck(); { VirtualDerived *aData = new VirtualDerived; @@ -917,7 +917,7 @@ void tst_QSharedPointer::virtualBaseDifferentPointers() QVERIFY(baseptr == aData); QVERIFY(baseptr == aBase); } - check(); + safetyCheck(); } #ifndef QTEST_NO_RTTI @@ -1084,7 +1084,7 @@ void tst_QSharedPointer::constCorrectness() ptr = cvptr.constCast(); #endif } - check(); + safetyCheck(); { Data *aData = new Data; @@ -1101,7 +1101,7 @@ void tst_QSharedPointer::constCorrectness() QCOMPARE(cptr.data(), aData); QCOMPARE(cptr.operator->(), aData); } - check(); + safetyCheck(); } static int customDeleterFnCallCount; @@ -1135,13 +1135,13 @@ void tst_QSharedPointer::customDeleter() QSharedPointer ptr2(new Data, &Data::alsoDelete); QSharedPointer ptr3(new Data, &Data::virtualDelete); } - check(); + safetyCheck(); { QSharedPointer ptr(new DerivedData, &Data::doDelete); QSharedPointer ptr2(new DerivedData, &Data::alsoDelete); QSharedPointer ptr3(new DerivedData, &Data::virtualDelete); } - check(); + safetyCheck(); customDeleterFnCallCount = 0; { @@ -1150,7 +1150,7 @@ void tst_QSharedPointer::customDeleter() QCOMPARE(customDeleterFnCallCount, 0); } QCOMPARE(customDeleterFnCallCount, 1); - check(); + safetyCheck(); customDeleterFnCallCount = 0; { @@ -1160,7 +1160,7 @@ void tst_QSharedPointer::customDeleter() QCOMPARE(customDeleterFnCallCount, 1); } QCOMPARE(customDeleterFnCallCount, 1); - check(); + safetyCheck(); customDeleterFnCallCount = 0; { @@ -1170,7 +1170,7 @@ void tst_QSharedPointer::customDeleter() QCOMPARE(customDeleterFnCallCount, 1); } QCOMPARE(customDeleterFnCallCount, 1); - check(); + safetyCheck(); customDeleterFnCallCount = 0; { @@ -1179,7 +1179,7 @@ void tst_QSharedPointer::customDeleter() QCOMPARE(customDeleterFnCallCount, 0); } QCOMPARE(customDeleterFnCallCount, 1); - check(); + safetyCheck(); customDeleterFnCallCount = 0; { @@ -1188,7 +1188,7 @@ void tst_QSharedPointer::customDeleter() QCOMPARE(customDeleterFnCallCount, 0); } QCOMPARE(customDeleterFnCallCount, 1); - check(); + safetyCheck(); customDeleterFnCallCount = 0; { @@ -1201,7 +1201,7 @@ void tst_QSharedPointer::customDeleter() QCOMPARE(customDeleterFnCallCount, 0); } QCOMPARE(customDeleterFnCallCount, 1); - check(); + safetyCheck(); customDeleterFnCallCount = 0; { @@ -1214,7 +1214,7 @@ void tst_QSharedPointer::customDeleter() QCOMPARE(customDeleterFnCallCount, 0); } QCOMPARE(customDeleterFnCallCount, 1); - check(); + safetyCheck(); refcount = 0; CustomDeleter dataDeleter; @@ -1226,7 +1226,7 @@ void tst_QSharedPointer::customDeleter() } QCOMPARE(dataDeleter.callCount, 1); QCOMPARE(refcount, 1); - check(); + safetyCheck(); dataDeleter.callCount = 0; { @@ -1237,7 +1237,7 @@ void tst_QSharedPointer::customDeleter() } QCOMPARE(dataDeleter.callCount, 1); QCOMPARE(refcount, 1); - check(); + safetyCheck(); dataDeleter.callCount = 0; { @@ -1251,7 +1251,7 @@ void tst_QSharedPointer::customDeleter() } QCOMPARE(dataDeleter.callCount, 1); QCOMPARE(refcount, 1); - check(); + safetyCheck(); dataDeleter.callCount = 0; { @@ -1261,7 +1261,7 @@ void tst_QSharedPointer::customDeleter() } QCOMPARE(dataDeleter.callCount, 1); QCOMPARE(refcount, 1); - check(); + safetyCheck(); CustomDeleter derivedDataDeleter; derivedDataDeleter.callCount = 0; @@ -1275,7 +1275,7 @@ void tst_QSharedPointer::customDeleter() QCOMPARE(dataDeleter.callCount, 0); QCOMPARE(derivedDataDeleter.callCount, 1); QCOMPARE(refcount, 2); - check(); + safetyCheck(); derivedDataDeleter.callCount = 0; dataDeleter.callCount = 0; @@ -1293,7 +1293,7 @@ void tst_QSharedPointer::customDeleter() QCOMPARE(dataDeleter.callCount, 1); QCOMPARE(derivedDataDeleter.callCount, 0); QCOMPARE(refcount, 2); - check(); + safetyCheck(); derivedDataDeleter.callCount = 0; dataDeleter.callCount = 0; @@ -1311,7 +1311,7 @@ void tst_QSharedPointer::customDeleter() QCOMPARE(dataDeleter.callCount, 0); QCOMPARE(derivedDataDeleter.callCount, 1); QCOMPARE(refcount, 2); - check(); + safetyCheck(); } void customQObjectDeleterFn(QObject *obj) @@ -1335,7 +1335,7 @@ void tst_QSharedPointer::creating() ptr.clear(); QCOMPARE(Data::destructorCounter, 1); } - check(); + safetyCheck(); Data::generationCounter = Data::destructorCounter = 0; { @@ -1351,7 +1351,7 @@ void tst_QSharedPointer::creating() QVERIFY(d->weakref.load() == 1); QVERIFY(d->strongref.load() == 0); } - check(); + safetyCheck(); Data::generationCounter = Data::destructorCounter = 0; DerivedData::derivedDestructorCounter = 0; @@ -1364,7 +1364,7 @@ void tst_QSharedPointer::creating() QCOMPARE(Data::destructorCounter, 1); QCOMPARE(DerivedData::derivedDestructorCounter, 1); } - check(); + safetyCheck(); { QSharedPointer ptr = QSharedPointer::create(); @@ -1373,7 +1373,7 @@ void tst_QSharedPointer::creating() QCOMPARE(ptr.staticCast()->buffer[3]+0, 16-3); QCOMPARE(ptr.staticCast()->buffer[0]+0, 16); } - check(); + safetyCheck(); { QSharedPointer ptr = QSharedPointer::create(); @@ -1383,7 +1383,7 @@ void tst_QSharedPointer::creating() QSharedPointer baseptr = ptr; QCOMPARE(baseptr->classLevel(), 4); } - check(); + safetyCheck(); } void tst_QSharedPointer::creatingQObject() @@ -1397,13 +1397,13 @@ void tst_QSharedPointer::creatingQObject() QVERIFY(qptr.isNull()); } - check(); + safetyCheck(); { QSharedPointer ptr = QSharedPointer::create(); QCOMPARE(ptr->metaObject(), &OtherObject::staticMetaObject); } - check(); + safetyCheck(); } void tst_QSharedPointer::mixTrackingPointerCode() @@ -1415,7 +1415,7 @@ void tst_QSharedPointer::mixTrackingPointerCode() Wrapper w(ptr); ptr.clear(); } - check(); + safetyCheck(); { // pointer created without tracking diff --git a/tests/auto/other/qsharedpointer_and_qwidget/tst_qsharedpointer_and_qwidget.cpp b/tests/auto/other/qsharedpointer_and_qwidget/tst_qsharedpointer_and_qwidget.cpp index 3ead01146d..3cda8ed1ee 100644 --- a/tests/auto/other/qsharedpointer_and_qwidget/tst_qsharedpointer_and_qwidget.cpp +++ b/tests/auto/other/qsharedpointer_and_qwidget/tst_qsharedpointer_and_qwidget.cpp @@ -62,10 +62,10 @@ private slots: void strong_sharedptrDelete(); public slots: - void cleanup() { check(); } + void cleanup() { safetyCheck(); } public: - inline void check() + inline void safetyCheck() { #ifdef QT_BUILD_INTERNAL QtSharedPointer::internalSafetyCheckCleanCheck(); -- cgit v1.2.3 From 4669d657d29ae883db746b7cbfed367758943ee9 Mon Sep 17 00:00:00 2001 From: "Jonas M. Gastal" Date: Thu, 29 Dec 2011 12:47:21 -0200 Subject: Make (dis)connectTo(From)Host virtual in QAbstractSocket. Change-Id: Ib1dfae4031f00fb331108152a259f6a2756381c9 Reviewed-by: Thiago Macieira --- dist/changes-5.0.0 | 4 ++++ src/network/socket/qabstractsocket.cpp | 33 +-------------------------------- src/network/socket/qabstractsocket.h | 11 +++-------- src/network/ssl/qsslsocket.cpp | 10 +++++----- src/network/ssl/qsslsocket.h | 8 +++----- 5 files changed, 16 insertions(+), 50 deletions(-) diff --git a/dist/changes-5.0.0 b/dist/changes-5.0.0 index 1d6a7d6c84..c20d9a3075 100644 --- a/dist/changes-5.0.0 +++ b/dist/changes-5.0.0 @@ -149,6 +149,10 @@ information about a particular change. * On Windows, QProcess::ForwardedChannels will not forward the output of GUI applications anymore, if they do not create a console. +- QAbstractSocket's connectToHost() and disconnectFromHost() are now virtual and + connectToHostImplementation() and disconnectFromHostImplementation() don't exist. + + **************************************************************************** * General * **************************************************************************** diff --git a/src/network/socket/qabstractsocket.cpp b/src/network/socket/qabstractsocket.cpp index 099c01ef71..11a9d45990 100644 --- a/src/network/socket/qabstractsocket.cpp +++ b/src/network/socket/qabstractsocket.cpp @@ -1468,27 +1468,6 @@ bool QAbstractSocket::isValid() const void QAbstractSocket::connectToHost(const QString &hostName, quint16 port, OpenMode openMode, NetworkLayerProtocol protocol) -{ - Q_D(QAbstractSocket); - d->preferredNetworkLayerProtocol = protocol; - - QMetaObject::invokeMethod(this, "connectToHostImplementation", - Qt::DirectConnection, - Q_ARG(QString, hostName), - Q_ARG(quint16, port), - Q_ARG(OpenMode, openMode)); -} - -/*! - \since 4.1 - - Contains the implementation of connectToHost(). - - Attempts to make a connection to \a hostName on the given \a - port. The socket is opened in the given \a openMode. -*/ -void QAbstractSocket::connectToHostImplementation(const QString &hostName, quint16 port, - OpenMode openMode) { Q_D(QAbstractSocket); #if defined(QABSTRACTSOCKET_DEBUG) @@ -1505,6 +1484,7 @@ void QAbstractSocket::connectToHostImplementation(const QString &hostName, quint return; } + d->preferredNetworkLayerProtocol = protocol; d->hostName = hostName; d->port = port; d->state = UnconnectedState; @@ -2620,17 +2600,6 @@ void QAbstractSocket::close() \sa connectToHost() */ void QAbstractSocket::disconnectFromHost() -{ - QMetaObject::invokeMethod(this, "disconnectFromHostImplementation", - Qt::DirectConnection); -} - -/*! - \since 4.1 - - Contains the implementation of disconnectFromHost(). -*/ -void QAbstractSocket::disconnectFromHostImplementation() { Q_D(QAbstractSocket); #if defined(QABSTRACTSOCKET_DEBUG) diff --git a/src/network/socket/qabstractsocket.h b/src/network/socket/qabstractsocket.h index 44c758aa77..e821f3ddb2 100644 --- a/src/network/socket/qabstractsocket.h +++ b/src/network/socket/qabstractsocket.h @@ -131,10 +131,9 @@ public: bool bind(const QHostAddress &address, quint16 port = 0, BindMode mode = DefaultForPlatform); bool bind(quint16 port = 0, BindMode mode = DefaultForPlatform); - // ### Qt 5: Make connectToHost() and disconnectFromHost() virtual. - void connectToHost(const QString &hostName, quint16 port, OpenMode mode = ReadWrite, NetworkLayerProtocol protocol = AnyIPProtocol); - void connectToHost(const QHostAddress &address, quint16 port, OpenMode mode = ReadWrite); - void disconnectFromHost(); + virtual void connectToHost(const QString &hostName, quint16 port, OpenMode mode = ReadWrite, NetworkLayerProtocol protocol = AnyIPProtocol); + virtual void connectToHost(const QHostAddress &address, quint16 port, OpenMode mode = ReadWrite); + virtual void disconnectFromHost(); bool isValid() const; @@ -196,10 +195,6 @@ Q_SIGNALS: void proxyAuthenticationRequired(const QNetworkProxy &proxy, QAuthenticator *authenticator); #endif -protected Q_SLOTS: - void connectToHostImplementation(const QString &hostName, quint16 port, OpenMode mode = ReadWrite); - void disconnectFromHostImplementation(); - protected: qint64 readData(char *data, qint64 maxlen); qint64 readLineData(char *data, qint64 maxlen); diff --git a/src/network/ssl/qsslsocket.cpp b/src/network/ssl/qsslsocket.cpp index ef80dbdc54..b428316a77 100644 --- a/src/network/ssl/qsslsocket.cpp +++ b/src/network/ssl/qsslsocket.cpp @@ -1733,16 +1733,16 @@ void QSslSocket::ignoreSslErrors(const QList &errors) /*! \internal */ -void QSslSocket::connectToHostImplementation(const QString &hostName, quint16 port, - OpenMode openMode) +void QSslSocket::connectToHost(const QString &hostName, quint16 port, OpenMode openMode, NetworkLayerProtocol protocol) { Q_D(QSslSocket); + d->preferredNetworkLayerProtocol = protocol; if (!d->initialized) d->init(); d->initialized = false; #ifdef QSSLSOCKET_DEBUG - qDebug() << "QSslSocket::connectToHostImplementation(" + qDebug() << "QSslSocket::connectToHost(" << hostName << ',' << port << ',' << openMode << ')'; #endif if (!d->plainSocket) { @@ -1762,11 +1762,11 @@ void QSslSocket::connectToHostImplementation(const QString &hostName, quint16 po /*! \internal */ -void QSslSocket::disconnectFromHostImplementation() +void QSslSocket::disconnectFromHost() { Q_D(QSslSocket); #ifdef QSSLSOCKET_DEBUG - qDebug() << "QSslSocket::disconnectFromHostImplementation()"; + qDebug() << "QSslSocket::disconnectFromHost()"; #endif if (!d->plainSocket) return; diff --git a/src/network/ssl/qsslsocket.h b/src/network/ssl/qsslsocket.h index 7dc888b155..936f27905a 100644 --- a/src/network/ssl/qsslsocket.h +++ b/src/network/ssl/qsslsocket.h @@ -90,6 +90,9 @@ public: bool setSocketDescriptor(qintptr socketDescriptor, SocketState state = ConnectedState, OpenMode openMode = ReadWrite); + void connectToHost(const QString &hostName, quint16 port, OpenMode openMode = ReadWrite, NetworkLayerProtocol protocol = AnyIPProtocol); + void disconnectFromHost(); + // ### Qt 5: Make virtual void setSocketOption(QAbstractSocket::SocketOption option, const QVariant &value); QVariant socketOption(QAbstractSocket::SocketOption option); @@ -193,11 +196,6 @@ Q_SIGNALS: void modeChanged(QSslSocket::SslMode newMode); void encryptedBytesWritten(qint64 totalBytes); -protected Q_SLOTS: - void connectToHostImplementation(const QString &hostName, quint16 port, - OpenMode openMode); - void disconnectFromHostImplementation(); - protected: qint64 readData(char *data, qint64 maxlen); qint64 writeData(const char *data, qint64 len); -- cgit v1.2.3 From 159098719b8e8f40d1bd663c61bdc51f883c645f Mon Sep 17 00:00:00 2001 From: "Jonas M. Gastal" Date: Thu, 22 Dec 2011 13:53:38 -0200 Subject: Using proper virtual functions instead of Q_INVOKABLE tricks. This mantains BC between version compiled with and without OPENSSL, which was the reason for the use of "runtime virtuals". Using proper virtuals should make code clearer. Change-Id: I24f141ebaab68c000c2d602b54addbae1679a424 Reviewed-by: Thiago Macieira --- src/network/access/qnetworkreply.cpp | 69 ++++++++++++++++++---------- src/network/access/qnetworkreply.h | 4 ++ src/network/access/qnetworkreplyhttpimpl.cpp | 4 +- src/network/access/qnetworkreplyhttpimpl_p.h | 17 +++---- src/network/access/qnetworkreplyimpl.cpp | 6 +-- src/network/access/qnetworkreplyimpl_p.h | 15 +++--- 6 files changed, 68 insertions(+), 47 deletions(-) diff --git a/src/network/access/qnetworkreply.cpp b/src/network/access/qnetworkreply.cpp index c38414ea44..db62f2935a 100644 --- a/src/network/access/qnetworkreply.cpp +++ b/src/network/access/qnetworkreply.cpp @@ -586,13 +586,7 @@ QVariant QNetworkReply::attribute(QNetworkRequest::Attribute code) const QSslConfiguration QNetworkReply::sslConfiguration() const { QSslConfiguration config; - - // determine if we support this extension - int id = metaObject()->indexOfMethod("sslConfigurationImplementation()"); - if (id != -1) { - void *arr[] = { &config, 0 }; - const_cast(this)->qt_metacall(QMetaObject::InvokeMetaMethod, id, arr); - } + sslConfigurationImplementation(config); return config; } @@ -602,15 +596,7 @@ QSslConfiguration QNetworkReply::sslConfiguration() const */ void QNetworkReply::setSslConfiguration(const QSslConfiguration &config) { - if (config.isNull()) - return; - - int id = metaObject()->indexOfMethod("setSslConfigurationImplementation(QSslConfiguration)"); - if (id != -1) { - QSslConfiguration copy(config); - void *arr[] = { 0, © }; - qt_metacall(QMetaObject::InvokeMetaMethod, id, arr); - } + setSslConfigurationImplementation(config); } /*! @@ -635,17 +621,52 @@ void QNetworkReply::setSslConfiguration(const QSslConfiguration &config) */ void QNetworkReply::ignoreSslErrors(const QList &errors) { - // do this cryptic trick, because we could not add a virtual method to this class later on - // since that breaks binary compatibility - int id = metaObject()->indexOfMethod("ignoreSslErrorsImplementation(QList)"); - if (id != -1) { - QList copy(errors); - void *arr[] = { 0, © }; - qt_metacall(QMetaObject::InvokeMetaMethod, id, arr); - } + ignoreSslErrorsImplementation(errors); } #endif +/*! + \fn void QNetworkReply::sslConfigurationImplementation(QSslConfiguration &configuration) const + \since 5.0 + + This virtual method is provided to enable overriding the behavior of + sslConfiguration(). sslConfiguration() is a public wrapper for this method. + The configuration will be returned in \a configuration. + + \sa sslConfiguration() +*/ +void QNetworkReply::sslConfigurationImplementation(QSslConfiguration &) const +{ +} + +/*! + \fn void QNetworkReply::setSslConfigurationImplementation(const QSslConfiguration &configuration) + \since 5.0 + + This virtual method is provided to enable overriding the behavior of + setSslConfiguration(). setSslConfiguration() is a public wrapper for this method. + If you override this method use \a configuration to set the SSL configuration. + + \sa sslConfigurationImplementation(), setSslConfiguration() +*/ +void QNetworkReply::setSslConfigurationImplementation(const QSslConfiguration &) +{ +} + +/*! + \fn void QNetworkReply::ignoreSslErrorsImplementation(const QList &errors) + \since 5.0 + + This virtual method is provided to enable overriding the behavior of + ignoreSslErrors(). ignoreSslErrors() is a public wrapper for this method. + \a errors contains the errors the user wishes ignored. + + \sa ignoreSslErrors() +*/ +void QNetworkReply::ignoreSslErrorsImplementation(const QList &) +{ +} + /*! If this function is called, SSL errors related to network connection will be ignored, including certificate validation diff --git a/src/network/access/qnetworkreply.h b/src/network/access/qnetworkreply.h index dadbe4c958..492336bbf6 100644 --- a/src/network/access/qnetworkreply.h +++ b/src/network/access/qnetworkreply.h @@ -169,6 +169,10 @@ protected: void setRawHeader(const QByteArray &headerName, const QByteArray &value); void setAttribute(QNetworkRequest::Attribute code, const QVariant &value); + virtual void sslConfigurationImplementation(QSslConfiguration &) const; + virtual void setSslConfigurationImplementation(const QSslConfiguration &); + virtual void ignoreSslErrorsImplementation(const QList &); + private: Q_DECLARE_PRIVATE(QNetworkReply) }; diff --git a/src/network/access/qnetworkreplyhttpimpl.cpp b/src/network/access/qnetworkreplyhttpimpl.cpp index 284b8c64dc..a8b0a3e514 100644 --- a/src/network/access/qnetworkreplyhttpimpl.cpp +++ b/src/network/access/qnetworkreplyhttpimpl.cpp @@ -410,10 +410,10 @@ void QNetworkReplyHttpImpl::setSslConfigurationImplementation(const QSslConfigur Q_UNUSED(newconfig); } -QSslConfiguration QNetworkReplyHttpImpl::sslConfigurationImplementation() const +void QNetworkReplyHttpImpl::sslConfigurationImplementation(QSslConfiguration &configuration) const { Q_D(const QNetworkReplyHttpImpl); - return d->sslConfiguration; + configuration = d->sslConfiguration; } #endif diff --git a/src/network/access/qnetworkreplyhttpimpl_p.h b/src/network/access/qnetworkreplyhttpimpl_p.h index 346cc6464c..6c0467add2 100644 --- a/src/network/access/qnetworkreplyhttpimpl_p.h +++ b/src/network/access/qnetworkreplyhttpimpl_p.h @@ -94,16 +94,6 @@ public: void setReadBufferSize(qint64 size); bool canReadLine () const; -#ifndef QT_NO_OPENSSL - void ignoreSslErrors(); - // ### Qt5 Add proper virtual - Q_INVOKABLE void ignoreSslErrorsImplementation(const QList &errors); - // ### Qt5 Add proper virtual - Q_INVOKABLE void setSslConfigurationImplementation(const QSslConfiguration &configuration); - // ### Qt5 Add proper virtual - Q_INVOKABLE QSslConfiguration sslConfigurationImplementation() const; -#endif - Q_DECLARE_PRIVATE(QNetworkReplyHttpImpl) Q_PRIVATE_SLOT(d_func(), void _q_startOperation()) Q_PRIVATE_SLOT(d_func(), void _q_cacheLoadReadyRead()) @@ -135,6 +125,13 @@ public: Q_PRIVATE_SLOT(d_func(), void emitReplyUploadProgress(qint64, qint64)) +#ifndef QT_NO_OPENSSL +protected: + void ignoreSslErrors(); + void ignoreSslErrorsImplementation(const QList &errors); + void setSslConfigurationImplementation(const QSslConfiguration &configuration); + void sslConfigurationImplementation(QSslConfiguration &configuration) const; +#endif signals: // To HTTP thread: diff --git a/src/network/access/qnetworkreplyimpl.cpp b/src/network/access/qnetworkreplyimpl.cpp index 8513207ef7..14b4f8b96d 100644 --- a/src/network/access/qnetworkreplyimpl.cpp +++ b/src/network/access/qnetworkreplyimpl.cpp @@ -930,13 +930,11 @@ void QNetworkReplyImpl::setReadBufferSize(qint64 size) } #ifndef QT_NO_OPENSSL -QSslConfiguration QNetworkReplyImpl::sslConfigurationImplementation() const +void QNetworkReplyImpl::sslConfigurationImplementation(QSslConfiguration &configuration) const { Q_D(const QNetworkReplyImpl); - QSslConfiguration config; if (d->backend) - d->backend->fetchSslConfiguration(config); - return config; + d->backend->fetchSslConfiguration(configuration); } void QNetworkReplyImpl::setSslConfigurationImplementation(const QSslConfiguration &config) diff --git a/src/network/access/qnetworkreplyimpl_p.h b/src/network/access/qnetworkreplyimpl_p.h index aa3af3864b..0b7664acc6 100644 --- a/src/network/access/qnetworkreplyimpl_p.h +++ b/src/network/access/qnetworkreplyimpl_p.h @@ -87,13 +87,6 @@ public: virtual qint64 readData(char *data, qint64 maxlen); virtual bool event(QEvent *); -#ifndef QT_NO_OPENSSL - Q_INVOKABLE QSslConfiguration sslConfigurationImplementation() const; - Q_INVOKABLE void setSslConfigurationImplementation(const QSslConfiguration &configuration); - virtual void ignoreSslErrors(); - Q_INVOKABLE virtual void ignoreSslErrorsImplementation(const QList &errors); -#endif - Q_DECLARE_PRIVATE(QNetworkReplyImpl) Q_PRIVATE_SLOT(d_func(), void _q_startOperation()) Q_PRIVATE_SLOT(d_func(), void _q_copyReadyRead()) @@ -104,6 +97,14 @@ public: Q_PRIVATE_SLOT(d_func(), void _q_networkSessionConnected()) Q_PRIVATE_SLOT(d_func(), void _q_networkSessionFailed()) #endif + +#ifndef QT_NO_OPENSSL +protected: + void sslConfigurationImplementation(QSslConfiguration &configuration) const; + void setSslConfigurationImplementation(const QSslConfiguration &configuration); + virtual void ignoreSslErrors(); + virtual void ignoreSslErrorsImplementation(const QList &errors); +#endif }; class QNetworkReplyImplPrivate: public QNetworkReplyPrivate -- cgit v1.2.3 From 51d634ce2e7d4348a004d0807f53288cfbbb97ff Mon Sep 17 00:00:00 2001 From: Simon Hausmann Date: Thu, 5 Jan 2012 10:38:10 +0100 Subject: Remove QtV8 library from QtBase The QtV8 library is going to live in the qtjsbackend module. Change-Id: I72251316163829411dda998b9503ce6f75b3606a Reviewed-by: Oswald Buddenhagen Reviewed-by: Aaron Kennedy Reviewed-by: Kent Hansen Reviewed-by: Rohan McGovern --- .gitignore | 3 - .gitmodules | 3 - src/3rdparty/v8 | 1 - src/modules/qt_v8.pri | 16 - src/src.pro | 4 - src/tools/mkv8snapshot/mkv8snapshot.pro | 39 - src/tools/tools.pro | 3 - ...shing-and-comparison-methods-to-v8-String.patch | 336 --- ...back-mode-for-named-property-interceptors.patch | 361 --- ...0003-Generalize-external-object-resources.patch | 595 ----- src/v8/0004-Introduce-a-QML-compilation-mode.patch | 2355 -------------------- ...5-Allow-access-to-the-calling-script-data.patch | 48 - .../0006-Add-custom-object-compare-callback.patch | 548 ----- ...07-Allow-a-script-to-be-flagged-as-native.patch | 46 - ...-Add-new-v8-api-to-check-if-a-value-is-an.patch | 63 - src/v8/0009-Fix-deprecated-Python-code.patch | 51 - .../0010-Remove-execute-flag-from-v8-debug.h.patch | 15 - src/v8/0011-Fix-warnings.patch | 46 - ...2-Add-flag-to-avoid-breakpoint-relocation.patch | 147 -- ...Update-ScriptBreakPoints-for-ScriptRegExp.patch | 68 - src/v8/README | 1 - src/v8/v8.pri | 307 --- src/v8/v8.pro | 41 - src/v8/v8base.pri | 24 - sync.profile | 5 - tests/auto/auto.pro | 2 - tests/auto/v8/Makefile.nonqt | 16 - tests/auto/v8/README.txt | 13 - tests/auto/v8/tst_v8.cpp | 98 - tests/auto/v8/v8.pro | 10 - tests/auto/v8/v8main.cpp | 66 - tests/auto/v8/v8test.cpp | 379 ---- tests/auto/v8/v8test.h | 58 - 33 files changed, 5768 deletions(-) delete mode 100644 .gitmodules delete mode 160000 src/3rdparty/v8 delete mode 100644 src/modules/qt_v8.pri delete mode 100644 src/tools/mkv8snapshot/mkv8snapshot.pro delete mode 100644 src/v8/0001-Add-hashing-and-comparison-methods-to-v8-String.patch delete mode 100644 src/v8/0002-Add-a-fallback-mode-for-named-property-interceptors.patch delete mode 100644 src/v8/0003-Generalize-external-object-resources.patch delete mode 100644 src/v8/0004-Introduce-a-QML-compilation-mode.patch delete mode 100644 src/v8/0005-Allow-access-to-the-calling-script-data.patch delete mode 100644 src/v8/0006-Add-custom-object-compare-callback.patch delete mode 100644 src/v8/0007-Allow-a-script-to-be-flagged-as-native.patch delete mode 100644 src/v8/0008-QtScript-V8-Add-new-v8-api-to-check-if-a-value-is-an.patch delete mode 100644 src/v8/0009-Fix-deprecated-Python-code.patch delete mode 100644 src/v8/0010-Remove-execute-flag-from-v8-debug.h.patch delete mode 100644 src/v8/0011-Fix-warnings.patch delete mode 100644 src/v8/0012-Add-flag-to-avoid-breakpoint-relocation.patch delete mode 100644 src/v8/0013-Update-ScriptBreakPoints-for-ScriptRegExp.patch delete mode 100644 src/v8/README delete mode 100644 src/v8/v8.pri delete mode 100644 src/v8/v8.pro delete mode 100644 src/v8/v8base.pri delete mode 100644 tests/auto/v8/Makefile.nonqt delete mode 100644 tests/auto/v8/README.txt delete mode 100644 tests/auto/v8/tst_v8.cpp delete mode 100644 tests/auto/v8/v8.pro delete mode 100644 tests/auto/v8/v8main.cpp delete mode 100644 tests/auto/v8/v8test.cpp delete mode 100644 tests/auto/v8/v8test.h diff --git a/.gitignore b/.gitignore index 03883f652e..87d3f62aa7 100644 --- a/.gitignore +++ b/.gitignore @@ -128,13 +128,10 @@ src/openvg/qtopenvgversion.h src/sql/qtsqlversion.h src/testlib/qttestversion.h src/xml/qtxmlversion.h -src/v8/qtv8version.h src/platformsupport/qtplatformsupportversion.h src/printsupport/qtprintsupportversion.h src/widgets/qtwidgetsversion.h -src/v8/generated-debug/ - # Test generated files QObject.log tst_* diff --git a/.gitmodules b/.gitmodules deleted file mode 100644 index 183f5b46cc..0000000000 --- a/.gitmodules +++ /dev/null @@ -1,3 +0,0 @@ -[submodule "src/3rdparty/v8"] - path = src/3rdparty/v8 - url = git://github.com/aaronkennedy/v8.git diff --git a/src/3rdparty/v8 b/src/3rdparty/v8 deleted file mode 160000 index a07f617da0..0000000000 --- a/src/3rdparty/v8 +++ /dev/null @@ -1 +0,0 @@ -Subproject commit a07f617da094b83b7a9e5b2d37e8bf9172c61109 diff --git a/src/modules/qt_v8.pri b/src/modules/qt_v8.pri deleted file mode 100644 index 89d6c263e8..0000000000 --- a/src/modules/qt_v8.pri +++ /dev/null @@ -1,16 +0,0 @@ -QT.v8.VERSION = 5.0.0 -QT.v8.MAJOR_VERSION = 5 -QT.v8.MINOR_VERSION = 0 -QT.v8.PATCH_VERSION = 0 - -QT.v8.name = QtV8 -QT.v8.bins = $$QT_MODULE_BIN_BASE -QT.v8.includes = $$QT_MODULE_INCLUDE_BASE/QtV8 -QT.v8.private_includes = $$QT_MODULE_INCLUDE_BASE/QtV8/$$QT.v8.VERSION -QT.v8.sources = $$QT_MODULE_BASE/src/v8 -QT.v8.libs = $$QT_MODULE_LIB_BASE -QT.v8.plugins = $$QT_MODULE_PLUGIN_BASE -QT.v8.imports = $$QT_MODULE_IMPORT_BASE -QT.v8.depends = -QT.v8.DEFINES = -!contains(QT_CONFIG, static): QT.v8.DEFINES += V8_SHARED USING_V8_SHARED diff --git a/src/src.pro b/src/src.pro index 04e3688900..80d1c4e3bd 100644 --- a/src/src.pro +++ b/src/src.pro @@ -10,7 +10,6 @@ nacl: SRC_SUBDIRS -= src_network src_testlib contains(QT_CONFIG, dbus):SRC_SUBDIRS += src_dbus contains(QT_CONFIG, no-gui): SRC_SUBDIRS -= src_gui -contains(QT_CONFIG, v8): SRC_SUBDIRS += src_v8 contains(QT_CONFIG, opengl)|contains(QT_CONFIG, opengles1)|contains(QT_CONFIG, opengles2): SRC_SUBDIRS += src_opengl SRC_SUBDIRS += src_plugins @@ -19,8 +18,6 @@ src_winmain.subdir = $$QT_SOURCE_TREE/src/winmain src_winmain.target = sub-winmain src_corelib.subdir = $$QT_SOURCE_TREE/src/corelib src_corelib.target = sub-corelib -src_v8.subdir = $$QT_SOURCE_TREE/src/v8 -src_v8.target = sub-v8 src_xml.subdir = $$QT_SOURCE_TREE/src/xml src_xml.target = sub-xml src_dbus.subdir = $$QT_SOURCE_TREE/src/dbus @@ -65,7 +62,6 @@ src_platformsupport.target = sub-platformsupport src_declarative.depends += src_opengl src_webkit.depends += src_opengl } - contains(QT_CONFIG, v8snapshot):src_v8.depends += src_tools_mkv8snapshot } diff --git a/src/tools/mkv8snapshot/mkv8snapshot.pro b/src/tools/mkv8snapshot/mkv8snapshot.pro deleted file mode 100644 index 41fa5df11b..0000000000 --- a/src/tools/mkv8snapshot/mkv8snapshot.pro +++ /dev/null @@ -1,39 +0,0 @@ -TEMPLATE = app -TARGET = mkv8snapshot -QT = -CONFIG -= app_bundle -CONFIG -= qt -CONFIG += console -CONFIG += warn_off - -DESTDIR = ../../../bin -INCLUDEPATH += . -DEPENDPATH += . -LIBS = -OBJECTS_DIR = . - -contains(QT_CONFIG, build_all): CONFIG += build_all -win32|mac:!macx-xcode: CONFIG += debug_and_release - -TARGET = $$TARGET$$qtPlatformTargetSuffix() - -cross_compile { - equals(QT_ARCH, arm): V8_TARGET_ARCH = arm -} - -include(../../v8/v8.pri) - -cross_compile { - equals(V8_TARGET_ARCH, arm): SOURCES += $$V8SRC/arm/simulator-arm.cc -} - -SOURCES += \ - $$V8SRC/snapshot-empty.cc \ - $$V8SRC/mksnapshot.cc - -unix:LIBS += -lpthread - -# We don't need to install this tool, it's only used for building v8. -# However we do have to make sure that 'make install' builds it. -dummytarget.CONFIG = dummy_install -INSTALLS += dummytarget diff --git a/src/tools/tools.pro b/src/tools/tools.pro index 89ce0be055..5cbe92309e 100644 --- a/src/tools/tools.pro +++ b/src/tools/tools.pro @@ -2,7 +2,6 @@ TEMPLATE = subdirs TOOLS_SUBDIRS = src_tools_bootstrap src_tools_moc src_tools_rcc !contains(QT_CONFIG, no-gui): TOOLS_SUBDIRS += src_tools_uic -contains(QT_CONFIG, v8):contains(QT_CONFIG, v8snapshot): TOOLS_SUBDIRS += src_tools_mkv8snapshot # Set subdir and respective target name src_tools_bootstrap.subdir = $$QT_SOURCE_TREE/src/tools/bootstrap src_tools_bootstrap.target = sub-tools-bootstrap @@ -12,8 +11,6 @@ src_tools_rcc.subdir = $$QT_SOURCE_TREE/src/tools/rcc src_tools_rcc.target = sub-rcc src_tools_uic.subdir = $$QT_SOURCE_TREE/src/tools/uic src_tools_uic.target = sub-uic -src_tools_mkv8snapshot.subdir = $$QT_SOURCE_TREE/src/tools/mkv8snapshot -src_tools_mkv8snapshot.target = sub-mkv8snapshot !wince*:!ordered { # Set dependencies for each subdir diff --git a/src/v8/0001-Add-hashing-and-comparison-methods-to-v8-String.patch b/src/v8/0001-Add-hashing-and-comparison-methods-to-v8-String.patch deleted file mode 100644 index dd6374a9cb..0000000000 --- a/src/v8/0001-Add-hashing-and-comparison-methods-to-v8-String.patch +++ /dev/null @@ -1,336 +0,0 @@ -From d97195f011cdaa8b859d759f8a34dd50c3092f30 Mon Sep 17 00:00:00 2001 -From: Aaron Kennedy -Date: Tue, 4 Oct 2011 15:04:21 +1000 -Subject: [PATCH 01/13] Add hashing and comparison methods to v8::String - -This allows us to more rapidly search for a v8::String inside a hash -of QStrings. ---- - include/v8.h | 45 +++++++++++++++++++++++++++++ - src/api.cc | 51 +++++++++++++++++++++++++++++++++ - src/heap-inl.h | 2 + - src/heap.cc | 3 ++ - src/objects-inl.h | 1 + - src/objects.cc | 82 ++++++++++++++++++++++++++++++++++++++++++++++++++++- - src/objects.h | 10 ++++++- - 7 files changed, 192 insertions(+), 2 deletions(-) - -diff --git a/include/v8.h b/include/v8.h -index 73b7fbe..86ea70f 100644 ---- a/include/v8.h -+++ b/include/v8.h -@@ -1021,6 +1021,49 @@ class String : public Primitive { - V8EXPORT int Utf8Length() const; - - /** -+ * Returns the hash of this string. -+ */ -+ V8EXPORT uint32_t Hash() const; -+ -+ struct CompleteHashData { -+ CompleteHashData() : length(0), hash(0), symbol_id(0) {} -+ int length; -+ uint32_t hash; -+ uint32_t symbol_id; -+ }; -+ -+ /** -+ * Returns the "complete" hash of the string. This is -+ * all the information about the string needed to implement -+ * a very efficient hash keyed on the string. -+ * -+ * The members of CompleteHashData are: -+ * length: The length of the string. Equivalent to Length() -+ * hash: The hash of the string. Equivalent to Hash() -+ * symbol_id: If the string is a sequential symbol, the symbol -+ * id, otherwise 0. If the symbol ids of two strings are -+ * the same (and non-zero) the two strings are identical. -+ * If the symbol ids are different the strings may still be -+ * identical, but an Equals() check must be performed. -+ */ -+ V8EXPORT CompleteHashData CompleteHash() const; -+ -+ /** -+ * Compute a hash value for the passed UTF16 string -+ * data. -+ */ -+ V8EXPORT static uint32_t ComputeHash(uint16_t *string, int length); -+ V8EXPORT static uint32_t ComputeHash(char *string, int length); -+ -+ /** -+ * Returns true if this string is equal to the external -+ * string data provided. -+ */ -+ V8EXPORT bool Equals(uint16_t *string, int length); -+ V8EXPORT bool Equals(char *string, int length); -+ inline bool Equals(Handle that) const { return v8::Value::Equals(that); } -+ -+ /** - * Write the contents of the string to an external buffer. - * If no arguments are given, expects the buffer to be large - * enough to hold the entire string and NULL terminator. Copies -@@ -1051,6 +1094,8 @@ class String : public Primitive { - NO_NULL_TERMINATION = 2 - }; - -+ V8EXPORT uint16_t GetCharacter(int index); -+ - // 16-bit character codes. - V8EXPORT int Write(uint16_t* buffer, - int start = 0, -diff --git a/src/api.cc b/src/api.cc -index ac4f07f..996812e 100644 ---- a/src/api.cc -+++ b/src/api.cc -@@ -3633,6 +3633,57 @@ int String::Utf8Length() const { - } - - -+uint32_t String::Hash() const { -+ i::Handle str = Utils::OpenHandle(this); -+ if (IsDeadCheck(str->GetIsolate(), "v8::String::Hash()")) return 0; -+ return str->Hash(); -+} -+ -+ -+String::CompleteHashData String::CompleteHash() const { -+ i::Handle str = Utils::OpenHandle(this); -+ if (IsDeadCheck(str->GetIsolate(), "v8::String::CompleteHash()")) return CompleteHashData(); -+ CompleteHashData result; -+ result.length = str->length(); -+ result.hash = str->Hash(); -+ if (str->IsSeqString()) -+ result.symbol_id = i::SeqString::cast(*str)->symbol_id(); -+ return result; -+} -+ -+ -+uint32_t String::ComputeHash(uint16_t *string, int length) { -+ return i::HashSequentialString(string, length) >> i::String::kHashShift; -+} -+ -+ -+uint32_t String::ComputeHash(char *string, int length) { -+ return i::HashSequentialString(string, length) >> i::String::kHashShift; -+} -+ -+ -+uint16_t String::GetCharacter(int index) -+{ -+ i::Handle str = Utils::OpenHandle(this); -+ return str->Get(index); -+} -+ -+ -+bool String::Equals(uint16_t *string, int length) { -+ i::Handle str = Utils::OpenHandle(this); -+ if (IsDeadCheck(str->GetIsolate(), "v8::String::Equals()")) return 0; -+ return str->SlowEqualsExternal(string, length); -+} -+ -+ -+bool String::Equals(char *string, int length) -+{ -+ i::Handle str = Utils::OpenHandle(this); -+ if (IsDeadCheck(str->GetIsolate(), "v8::String::Equals()")) return 0; -+ return str->SlowEqualsExternal(string, length); -+} -+ -+ - int String::WriteUtf8(char* buffer, - int capacity, - int* nchars_ref, -diff --git a/src/heap-inl.h b/src/heap-inl.h -index aaf2927..4c55d63 100644 ---- a/src/heap-inl.h -+++ b/src/heap-inl.h -@@ -105,6 +105,7 @@ MaybeObject* Heap::AllocateAsciiSymbol(Vector str, - String* answer = String::cast(result); - answer->set_length(str.length()); - answer->set_hash_field(hash_field); -+ SeqString::cast(answer)->set_symbol_id(0); - - ASSERT_EQ(size, answer->Size()); - -@@ -138,6 +139,7 @@ MaybeObject* Heap::AllocateTwoByteSymbol(Vector str, - String* answer = String::cast(result); - answer->set_length(str.length()); - answer->set_hash_field(hash_field); -+ SeqString::cast(answer)->set_symbol_id(0); - - ASSERT_EQ(size, answer->Size()); - -diff --git a/src/heap.cc b/src/heap.cc -index bbb9d3e..d287ead 100644 ---- a/src/heap.cc -+++ b/src/heap.cc -@@ -4009,6 +4009,7 @@ MaybeObject* Heap::AllocateInternalSymbol(unibrow::CharacterStream* buffer, - String* answer = String::cast(result); - answer->set_length(chars); - answer->set_hash_field(hash_field); -+ SeqString::cast(answer)->set_symbol_id(0); - - ASSERT_EQ(size, answer->Size()); - -@@ -4051,6 +4052,7 @@ MaybeObject* Heap::AllocateRawAsciiString(int length, PretenureFlag pretenure) { - HeapObject::cast(result)->set_map(ascii_string_map()); - String::cast(result)->set_length(length); - String::cast(result)->set_hash_field(String::kEmptyHashField); -+ SeqString::cast(result)->set_symbol_id(0); - ASSERT_EQ(size, HeapObject::cast(result)->Size()); - return result; - } -@@ -4086,6 +4088,7 @@ MaybeObject* Heap::AllocateRawTwoByteString(int length, - HeapObject::cast(result)->set_map(string_map()); - String::cast(result)->set_length(length); - String::cast(result)->set_hash_field(String::kEmptyHashField); -+ SeqString::cast(result)->set_symbol_id(0); - ASSERT_EQ(size, HeapObject::cast(result)->Size()); - return result; - } -diff --git a/src/objects-inl.h b/src/objects-inl.h -index dc3aa46..34cae9f 100644 ---- a/src/objects-inl.h -+++ b/src/objects-inl.h -@@ -2082,6 +2082,7 @@ SMI_ACCESSORS(FixedArrayBase, length, kLengthOffset) - SMI_ACCESSORS(FreeSpace, size, kSizeOffset) - - SMI_ACCESSORS(String, length, kLengthOffset) -+SMI_ACCESSORS(SeqString, symbol_id, kSymbolIdOffset) - - - uint32_t String::hash_field() { -diff --git a/src/objects.cc b/src/objects.cc -index 9a87ac5..2946d02 100644 ---- a/src/objects.cc -+++ b/src/objects.cc -@@ -6716,6 +6716,71 @@ static inline bool CompareStringContentsPartial(Isolate* isolate, - } - - -+bool String::SlowEqualsExternal(uc16 *string, int length) { -+ int len = this->length(); -+ if (len != length) return false; -+ if (len == 0) return true; -+ -+ // We know the strings are both non-empty. Compare the first chars -+ // before we try to flatten the strings. -+ if (this->Get(0) != string[0]) return false; -+ -+ String* lhs = this->TryFlattenGetString(); -+ -+ if (lhs->IsFlat()) { -+ String::FlatContent lhs_content = lhs->GetFlatContent(); -+ if (lhs->IsAsciiRepresentation()) { -+ Vector vec1 = lhs_content.ToAsciiVector(); -+ VectorIterator buf1(vec1); -+ VectorIterator ib(string, length); -+ return CompareStringContents(&buf1, &ib); -+ } else { -+ Vector vec1 = lhs_content.ToUC16Vector(); -+ Vector vec2(string, length); -+ return CompareRawStringContents(vec1, vec2); -+ } -+ } else { -+ Isolate* isolate = GetIsolate(); -+ isolate->objects_string_compare_buffer_a()->Reset(0, lhs); -+ VectorIterator ib(string, length); -+ return CompareStringContents(isolate->objects_string_compare_buffer_a(), &ib); -+ } -+} -+ -+ -+bool String::SlowEqualsExternal(char *string, int length) -+{ -+ int len = this->length(); -+ if (len != length) return false; -+ if (len == 0) return true; -+ -+ // We know the strings are both non-empty. Compare the first chars -+ // before we try to flatten the strings. -+ if (this->Get(0) != string[0]) return false; -+ -+ String* lhs = this->TryFlattenGetString(); -+ -+ if (StringShape(lhs).IsSequentialAscii()) { -+ const char* str1 = SeqAsciiString::cast(lhs)->GetChars(); -+ return CompareRawStringContents(Vector(str1, len), -+ Vector(string, len)); -+ } -+ -+ if (lhs->IsFlat()) { -+ String::FlatContent lhs_content = lhs->GetFlatContent(); -+ Vector vec1 = lhs_content.ToUC16Vector(); -+ VectorIterator buf1(vec1); -+ VectorIterator buf2(string, length); -+ return CompareStringContents(&buf1, &buf2); -+ } else { -+ Isolate* isolate = GetIsolate(); -+ isolate->objects_string_compare_buffer_a()->Reset(0, lhs); -+ VectorIterator ib(string, length); -+ return CompareStringContents(isolate->objects_string_compare_buffer_a(), &ib); -+ } -+} -+ -+ - bool String::SlowEquals(String* other) { - // Fast check: negative check with lengths. - int len = length(); -@@ -10716,9 +10781,24 @@ class AsciiSymbolKey : public SequentialSymbolKey { - - MaybeObject* AsObject() { - if (hash_field_ == 0) Hash(); -- return HEAP->AllocateAsciiSymbol(string_, hash_field_); -+ MaybeObject *result = HEAP->AllocateAsciiSymbol(string_, hash_field_); -+ if (!result->IsFailure() && result->ToObjectUnchecked()->IsSeqString()) { -+ while (true) { -+ Atomic32 my_symbol_id = next_symbol_id; -+ if (my_symbol_id > Smi::kMaxValue) -+ break; -+ if (my_symbol_id == NoBarrier_CompareAndSwap(&next_symbol_id, my_symbol_id, my_symbol_id + 1)) { -+ SeqString::cast(result->ToObjectUnchecked())->set_symbol_id(my_symbol_id); -+ break; -+ } -+ } -+ } -+ return result; - } -+ -+ static Atomic32 next_symbol_id; - }; -+Atomic32 AsciiSymbolKey::next_symbol_id = 1; - - - class SubStringAsciiSymbolKey : public HashTableKey { -diff --git a/src/objects.h b/src/objects.h -index f7d2180..d96e5f9 100644 ---- a/src/objects.h -+++ b/src/objects.h -@@ -6201,6 +6201,9 @@ class String: public HeapObject { - bool IsAsciiEqualTo(Vector str); - bool IsTwoByteEqualTo(Vector str); - -+ bool SlowEqualsExternal(uc16 *string, int length); -+ bool SlowEqualsExternal(char *string, int length); -+ - // Return a UTF8 representation of the string. The string is null - // terminated but may optionally contain nulls. Length is returned - // in length_output if length_output is not a null pointer The string -@@ -6457,8 +6460,13 @@ class SeqString: public String { - // Casting. - static inline SeqString* cast(Object* obj); - -+ // Get and set the symbol id of the string -+ inline int symbol_id(); -+ inline void set_symbol_id(int value); -+ - // Layout description. -- static const int kHeaderSize = String::kSize; -+ static const int kSymbolIdOffset = String::kSize; -+ static const int kHeaderSize = kSymbolIdOffset + kPointerSize; - - private: - DISALLOW_IMPLICIT_CONSTRUCTORS(SeqString); --- -1.7.4.1 - diff --git a/src/v8/0002-Add-a-fallback-mode-for-named-property-interceptors.patch b/src/v8/0002-Add-a-fallback-mode-for-named-property-interceptors.patch deleted file mode 100644 index 7ee05caea2..0000000000 --- a/src/v8/0002-Add-a-fallback-mode-for-named-property-interceptors.patch +++ /dev/null @@ -1,361 +0,0 @@ -From e30b202d683e36731d9674ebf75803990a33816e Mon Sep 17 00:00:00 2001 -From: Aaron Kennedy -Date: Thu, 27 Oct 2011 11:31:56 +0100 -Subject: [PATCH 02/13] Add a "fallback" mode for named property interceptors - -By default interceptors are called before the normal property -resolution on objects. When an interceptor is installed as a -"fallback" interceptor, it is only called if the object doesn't -already have the property. - -In the case of a global object having an fallback interceptor, -the interceptor is not invoked at all for var or function -declarations. ---- - include/v8.h | 7 +++++++ - src/api.cc | 29 +++++++++++++++++++++++++++++ - src/factory.cc | 3 +++ - src/handles.cc | 6 ++++-- - src/handles.h | 3 ++- - src/objects-inl.h | 15 +++++++++++++++ - src/objects.cc | 24 +++++++++++++++++------- - src/objects.h | 16 ++++++++++++---- - src/runtime.cc | 11 ++++++----- - 9 files changed, 95 insertions(+), 19 deletions(-) - -diff --git a/include/v8.h b/include/v8.h -index 86ea70f..d2e6c32 100644 ---- a/include/v8.h -+++ b/include/v8.h -@@ -2305,6 +2305,7 @@ class V8EXPORT FunctionTemplate : public Template { - NamedPropertyQuery query, - NamedPropertyDeleter remover, - NamedPropertyEnumerator enumerator, -+ bool is_fallback, - Handle data); - void SetIndexedInstancePropertyHandler(IndexedPropertyGetter getter, - IndexedPropertySetter setter, -@@ -2388,6 +2389,12 @@ class V8EXPORT ObjectTemplate : public Template { - NamedPropertyDeleter deleter = 0, - NamedPropertyEnumerator enumerator = 0, - Handle data = Handle()); -+ void SetFallbackPropertyHandler(NamedPropertyGetter getter, -+ NamedPropertySetter setter = 0, -+ NamedPropertyQuery query = 0, -+ NamedPropertyDeleter deleter = 0, -+ NamedPropertyEnumerator enumerator = 0, -+ Handle data = Handle()); - - /** - * Sets an indexed property handler on the object template. -diff --git a/src/api.cc b/src/api.cc -index 996812e..e0f3b5a 100644 ---- a/src/api.cc -+++ b/src/api.cc -@@ -1123,6 +1123,7 @@ void FunctionTemplate::SetNamedInstancePropertyHandler( - NamedPropertyQuery query, - NamedPropertyDeleter remover, - NamedPropertyEnumerator enumerator, -+ bool is_fallback, - Handle data) { - i::Isolate* isolate = Utils::OpenHandle(this)->GetIsolate(); - if (IsDeadCheck(isolate, -@@ -1141,6 +1142,7 @@ void FunctionTemplate::SetNamedInstancePropertyHandler( - if (query != 0) SET_FIELD_WRAPPED(obj, set_query, query); - if (remover != 0) SET_FIELD_WRAPPED(obj, set_deleter, remover); - if (enumerator != 0) SET_FIELD_WRAPPED(obj, set_enumerator, enumerator); -+ obj->set_is_fallback(i::Smi::FromInt(is_fallback)); - - if (data.IsEmpty()) data = v8::Undefined(); - obj->set_data(*Utils::OpenHandle(*data)); -@@ -1285,6 +1287,33 @@ void ObjectTemplate::SetNamedPropertyHandler(NamedPropertyGetter getter, - query, - remover, - enumerator, -+ false, -+ data); -+} -+ -+ -+void ObjectTemplate::SetFallbackPropertyHandler(NamedPropertyGetter getter, -+ NamedPropertySetter setter, -+ NamedPropertyQuery query, -+ NamedPropertyDeleter remover, -+ NamedPropertyEnumerator enumerator, -+ Handle data) { -+ i::Isolate* isolate = Utils::OpenHandle(this)->GetIsolate(); -+ if (IsDeadCheck(isolate, "v8::ObjectTemplate::SetNamedPropertyHandler()")) { -+ return; -+ } -+ ENTER_V8(isolate); -+ i::HandleScope scope(isolate); -+ EnsureConstructor(this); -+ i::FunctionTemplateInfo* constructor = -+ i::FunctionTemplateInfo::cast(Utils::OpenHandle(this)->constructor()); -+ i::Handle cons(constructor); -+ Utils::ToLocal(cons)->SetNamedInstancePropertyHandler(getter, -+ setter, -+ query, -+ remover, -+ enumerator, -+ true, - data); - } - -diff --git a/src/factory.cc b/src/factory.cc -index 15f640e..1b95ed1 100644 ---- a/src/factory.cc -+++ b/src/factory.cc -@@ -1213,6 +1213,9 @@ Handle Factory::CreateApiFunction( - // Set interceptor information in the map. - if (!obj->named_property_handler()->IsUndefined()) { - map->set_has_named_interceptor(); -+ InterceptorInfo *nph = InterceptorInfo::cast(obj->named_property_handler()); -+ bool is_fallback = nph->is_fallback()->IsUndefined()?false:nph->is_fallback()->value(); -+ map->set_named_interceptor_is_fallback(is_fallback); - } - if (!obj->indexed_property_handler()->IsUndefined()) { - map->set_has_indexed_interceptor(); -diff --git a/src/handles.cc b/src/handles.cc -index 62851f3..790d224 100644 ---- a/src/handles.cc -+++ b/src/handles.cc -@@ -269,9 +269,11 @@ Handle SetProperty(Handle object, - Handle key, - Handle value, - PropertyAttributes attributes, -- StrictModeFlag strict_mode) { -+ StrictModeFlag strict_mode, -+ bool skip_fallback_interceptor) { - CALL_HEAP_FUNCTION(object->GetIsolate(), -- object->SetProperty(*key, *value, attributes, strict_mode), -+ object->SetProperty(*key, *value, attributes, strict_mode, -+ skip_fallback_interceptor), - Object); - } - -diff --git a/src/handles.h b/src/handles.h -index 06e47fc..c359cb3 100644 ---- a/src/handles.h -+++ b/src/handles.h -@@ -190,7 +190,8 @@ Handle SetProperty(Handle object, - Handle key, - Handle value, - PropertyAttributes attributes, -- StrictModeFlag strict_mode); -+ StrictModeFlag strict_mode, -+ bool skip_fallback_interceptor = false); - - Handle SetProperty(Handle object, - Handle key, -diff --git a/src/objects-inl.h b/src/objects-inl.h -index 34cae9f..1cfea84 100644 ---- a/src/objects-inl.h -+++ b/src/objects-inl.h -@@ -2754,6 +2754,20 @@ void Map::set_is_shared(bool value) { - bool Map::is_shared() { - return ((1 << kIsShared) & bit_field3()) != 0; - } -+ -+void Map::set_named_interceptor_is_fallback(bool value) -+{ -+ if (value) { -+ set_bit_field3(bit_field3() | (1 << kNamedInterceptorIsFallback)); -+ } else { -+ set_bit_field3(bit_field3() & ~(1 << kNamedInterceptorIsFallback)); -+ } -+} -+ -+bool Map::named_interceptor_is_fallback() -+{ -+ return ((1 << kNamedInterceptorIsFallback) & bit_field3()) != 0; -+} - - - JSFunction* Map::unchecked_constructor() { -@@ -3255,6 +3269,7 @@ ACCESSORS(InterceptorInfo, query, Object, kQueryOffset) - ACCESSORS(InterceptorInfo, deleter, Object, kDeleterOffset) - ACCESSORS(InterceptorInfo, enumerator, Object, kEnumeratorOffset) - ACCESSORS(InterceptorInfo, data, Object, kDataOffset) -+ACCESSORS(InterceptorInfo, is_fallback, Smi, kFallbackOffset) - - ACCESSORS(CallHandlerInfo, callback, Object, kCallbackOffset) - ACCESSORS(CallHandlerInfo, data, Object, kDataOffset) -diff --git a/src/objects.cc b/src/objects.cc -index 2946d02..f5b6bee 100644 ---- a/src/objects.cc -+++ b/src/objects.cc -@@ -1980,9 +1980,10 @@ MaybeObject* JSObject::SetPropertyWithInterceptor( - MaybeObject* JSReceiver::SetProperty(String* name, - Object* value, - PropertyAttributes attributes, -- StrictModeFlag strict_mode) { -+ StrictModeFlag strict_mode, -+ bool skip_fallback_interceptor) { - LookupResult result(GetIsolate()); -- LocalLookup(name, &result); -+ LocalLookup(name, &result, skip_fallback_interceptor); - return SetProperty(&result, name, value, attributes, strict_mode); - } - -@@ -4213,7 +4214,8 @@ AccessorDescriptor* Map::FindAccessor(String* name) { - } - - --void JSReceiver::LocalLookup(String* name, LookupResult* result) { -+void JSReceiver::LocalLookup(String* name, LookupResult* result, -+ bool skip_fallback_interceptor) { - ASSERT(name->IsString()); - - Heap* heap = GetHeap(); -@@ -4245,23 +4247,31 @@ void JSReceiver::LocalLookup(String* name, LookupResult* result) { - } - - // Check for lookup interceptor except when bootstrapping. -- if (js_object->HasNamedInterceptor() && -- !heap->isolate()->bootstrapper()->IsActive()) { -+ bool wouldIntercept = js_object->HasNamedInterceptor() && -+ !heap->isolate()->bootstrapper()->IsActive(); -+ if (wouldIntercept && !map()->named_interceptor_is_fallback()) { - result->InterceptorResult(js_object); - return; - } - - js_object->LocalLookupRealNamedProperty(name, result); -+ -+ if (wouldIntercept && !skip_fallback_interceptor && !result->IsProperty() && -+ map()->named_interceptor_is_fallback()) { -+ result->InterceptorResult(js_object); -+ return; -+ } - } - - --void JSReceiver::Lookup(String* name, LookupResult* result) { -+void JSReceiver::Lookup(String* name, LookupResult* result, -+ bool skip_fallback_interceptor) { - // Ecma-262 3rd 8.6.2.4 - Heap* heap = GetHeap(); - for (Object* current = this; - current != heap->null_value(); - current = JSObject::cast(current)->GetPrototype()) { -- JSReceiver::cast(current)->LocalLookup(name, result); -+ JSReceiver::cast(current)->LocalLookup(name, result, skip_fallback_interceptor); - if (result->IsProperty()) return; - } - result->NotFound(); -diff --git a/src/objects.h b/src/objects.h -index d96e5f9..ed40061 100644 ---- a/src/objects.h -+++ b/src/objects.h -@@ -1362,7 +1362,8 @@ class JSReceiver: public HeapObject { - MUST_USE_RESULT MaybeObject* SetProperty(String* key, - Object* value, - PropertyAttributes attributes, -- StrictModeFlag strict_mode); -+ StrictModeFlag strict_mode, -+ bool skip_fallback_interceptor = false); - MUST_USE_RESULT MaybeObject* SetProperty(LookupResult* result, - String* key, - Object* value, -@@ -1414,8 +1415,8 @@ class JSReceiver: public HeapObject { - - // Lookup a property. If found, the result is valid and has - // detailed information. -- void LocalLookup(String* name, LookupResult* result); -- void Lookup(String* name, LookupResult* result); -+ void LocalLookup(String* name, LookupResult* result, bool skip_fallback_interceptor = false); -+ void Lookup(String* name, LookupResult* result, bool skip_fallback_interceptor = false); - - protected: - Smi* GenerateIdentityHash(); -@@ -4242,6 +4243,10 @@ class Map: public HeapObject { - inline void set_is_access_check_needed(bool access_check_needed); - inline bool is_access_check_needed(); - -+ // Whether the named interceptor is a fallback interceptor or not -+ inline void set_named_interceptor_is_fallback(bool value); -+ inline bool named_interceptor_is_fallback(); -+ - // [prototype]: implicit prototype object. - DECL_ACCESSORS(prototype, Object) - -@@ -4506,6 +4511,7 @@ class Map: public HeapObject { - - // Bit positions for bit field 3 - static const int kIsShared = 0; -+ static const int kNamedInterceptorIsFallback = 1; - - // Layout of the default cache. It holds alternating name and code objects. - static const int kCodeCacheEntrySize = 2; -@@ -7390,6 +7396,7 @@ class InterceptorInfo: public Struct { - DECL_ACCESSORS(deleter, Object) - DECL_ACCESSORS(enumerator, Object) - DECL_ACCESSORS(data, Object) -+ DECL_ACCESSORS(is_fallback, Smi) - - static inline InterceptorInfo* cast(Object* obj); - -@@ -7409,7 +7416,8 @@ class InterceptorInfo: public Struct { - static const int kDeleterOffset = kQueryOffset + kPointerSize; - static const int kEnumeratorOffset = kDeleterOffset + kPointerSize; - static const int kDataOffset = kEnumeratorOffset + kPointerSize; -- static const int kSize = kDataOffset + kPointerSize; -+ static const int kFallbackOffset = kDataOffset + kPointerSize; -+ static const int kSize = kFallbackOffset + kPointerSize; - - private: - DISALLOW_IMPLICIT_CONSTRUCTORS(InterceptorInfo); -diff --git a/src/runtime.cc b/src/runtime.cc -index 9c23c2c..0e256c1 100644 ---- a/src/runtime.cc -+++ b/src/runtime.cc -@@ -1330,7 +1330,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_DeclareGlobals) { - // Lookup the property in the global object, and don't set the - // value of the variable if the property is already there. - LookupResult lookup(isolate); -- global->Lookup(*name, &lookup); -+ global->Lookup(*name, &lookup, true); - if (lookup.IsProperty()) { - // We found an existing property. Unless it was an interceptor - // that claims the property is absent, skip this declaration. -@@ -1357,7 +1357,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_DeclareGlobals) { - } - - LookupResult lookup(isolate); -- global->LocalLookup(*name, &lookup); -+ global->LocalLookup(*name, &lookup, true); - - // Compute the property attributes. According to ECMA-262, section - // 13, page 71, the property must be read-only and -@@ -1398,7 +1398,8 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_DeclareGlobals) { - name, - value, - static_cast(attr), -- strict_mode)); -+ strict_mode, -+ true)); - } - } - -@@ -1534,7 +1535,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_InitializeVarGlobal) { - while (object->IsJSObject() && - JSObject::cast(object)->map()->is_hidden_prototype()) { - JSObject* raw_holder = JSObject::cast(object); -- raw_holder->LocalLookup(*name, &lookup); -+ raw_holder->LocalLookup(*name, &lookup, true); - if (lookup.IsProperty() && lookup.type() == INTERCEPTOR) { - HandleScope handle_scope(isolate); - Handle holder(raw_holder); -@@ -1557,7 +1558,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_InitializeVarGlobal) { - // Reload global in case the loop above performed a GC. - global = isolate->context()->global(); - if (assign) { -- return global->SetProperty(*name, args[2], attributes, strict_mode); -+ return global->SetProperty(*name, args[2], attributes, strict_mode, true); - } - return isolate->heap()->undefined_value(); - } --- -1.7.4.1 - diff --git a/src/v8/0003-Generalize-external-object-resources.patch b/src/v8/0003-Generalize-external-object-resources.patch deleted file mode 100644 index 580b8f0f24..0000000000 --- a/src/v8/0003-Generalize-external-object-resources.patch +++ /dev/null @@ -1,595 +0,0 @@ -From 501255df9cb6241a1f6c8d8a3361b9582fa481ef Mon Sep 17 00:00:00 2001 -From: Aaron Kennedy -Date: Tue, 4 Oct 2011 16:06:09 +1000 -Subject: [PATCH 03/13] Generalize external object resources - -V8 was already able to manage and finalize an external string -resource. This change generalizes that mechanism to handle a -single generic external resource - a v8::Object::ExternalResource -derived instance - on normal JSObject's. - -This is useful for mapping C++ objects to JS objects where the -C++ object's memory is effectively owned by the JS Object, and -thus needs to destroyed when the JS Object is garbage collected. -The V8 mailing list suggests using a weak persistent handle for -this purpose, but that seems to incur a fairly massive performance -penalty for short lived objects as weak persistent handle callbacks -are not called until the object has been promoted into the old -object space. ---- - include/v8.h | 25 ++++++++++++++++++++ - src/api.cc | 56 +++++++++++++++++++++++++++++++++++++++++++++ - src/factory.cc | 11 +++++++++ - src/heap-inl.h | 63 +++++++++++++++++++++++++++++++++++--------------- - src/heap.cc | 29 +++++++++++++++++------ - src/heap.h | 16 ++++++++----- - src/mark-compact.cc | 13 +++++----- - src/objects-inl.h | 35 +++++++++++++++++++++++++++- - src/objects.h | 19 ++++++++++++--- - 9 files changed, 223 insertions(+), 44 deletions(-) - -diff --git a/include/v8.h b/include/v8.h -index d2e6c32..3ef4dd6 100644 ---- a/include/v8.h -+++ b/include/v8.h -@@ -1597,6 +1597,25 @@ class Object : public Value { - /** Sets a native pointer in an internal field. */ - V8EXPORT void SetPointerInInternalField(int index, void* value); - -+ class V8EXPORT ExternalResource { // NOLINT -+ public: -+ ExternalResource() {} -+ virtual ~ExternalResource() {} -+ -+ protected: -+ virtual void Dispose() { delete this; } -+ -+ private: -+ // Disallow copying and assigning. -+ ExternalResource(const ExternalResource&); -+ void operator=(const ExternalResource&); -+ -+ friend class v8::internal::Heap; -+ }; -+ -+ V8EXPORT void SetExternalResource(ExternalResource *); -+ V8EXPORT ExternalResource *GetExternalResource(); -+ - // Testers for local properties. - V8EXPORT bool HasOwnProperty(Handle key); - V8EXPORT bool HasRealNamedProperty(Handle key); -@@ -2466,6 +2485,12 @@ class V8EXPORT ObjectTemplate : public Template { - */ - void SetInternalFieldCount(int value); - -+ /** -+ * Sets whether the object can store an "external resource" object. -+ */ -+ bool HasExternalResource(); -+ void SetHasExternalResource(bool value); -+ - private: - ObjectTemplate(); - static Local New(Handle constructor); -diff --git a/src/api.cc b/src/api.cc -index e0f3b5a..7d54252 100644 ---- a/src/api.cc -+++ b/src/api.cc -@@ -1436,6 +1436,34 @@ void ObjectTemplate::SetInternalFieldCount(int value) { - } - - -+bool ObjectTemplate::HasExternalResource() -+{ -+ if (IsDeadCheck(Utils::OpenHandle(this)->GetIsolate(), -+ "v8::ObjectTemplate::HasExternalResource()")) { -+ return 0; -+ } -+ return !Utils::OpenHandle(this)->has_external_resource()->IsUndefined(); -+} -+ -+ -+void ObjectTemplate::SetHasExternalResource(bool value) -+{ -+ i::Isolate* isolate = Utils::OpenHandle(this)->GetIsolate(); -+ if (IsDeadCheck(isolate, "v8::ObjectTemplate::SetHasExternalResource()")) { -+ return; -+ } -+ ENTER_V8(isolate); -+ if (value) { -+ EnsureConstructor(this); -+ } -+ if (value) { -+ Utils::OpenHandle(this)->set_has_external_resource(i::Smi::FromInt(1)); -+ } else { -+ Utils::OpenHandle(this)->set_has_external_resource(Utils::OpenHandle(this)->GetHeap()->undefined_value()); -+ } -+} -+ -+ - // --- S c r i p t D a t a --- - - -@@ -4029,6 +4057,34 @@ void v8::Object::SetPointerInInternalField(int index, void* value) { - } - - -+void v8::Object::SetExternalResource(v8::Object::ExternalResource *resource) { -+ i::Isolate* isolate = Utils::OpenHandle(this)->GetIsolate(); -+ ENTER_V8(isolate); -+ i::Handle obj = Utils::OpenHandle(this); -+ if (CanBeEncodedAsSmi(resource)) { -+ obj->SetExternalResourceObject(EncodeAsSmi(resource)); -+ } else { -+ obj->SetExternalResourceObject(*isolate->factory()->NewForeign(static_cast((void *)resource))); -+ } -+ if (!obj->IsSymbol()) { -+ isolate->heap()->external_string_table()->AddObject(*obj); -+ } -+} -+ -+ -+v8::Object::ExternalResource *v8::Object::GetExternalResource() { -+ i::Handle obj = Utils::OpenHandle(this); -+ i::Object* value = obj->GetExternalResourceObject(); -+ if (value->IsSmi()) { -+ return reinterpret_cast(i::Internals::GetExternalPointerFromSmi(value)); -+ } else if (value->IsForeign()) { -+ return reinterpret_cast(i::Foreign::cast(value)->address()); -+ } else { -+ return NULL; -+ } -+} -+ -+ - // --- E n v i r o n m e n t --- - - -diff --git a/src/factory.cc b/src/factory.cc -index 1b95ed1..8c96944 100644 ---- a/src/factory.cc -+++ b/src/factory.cc -@@ -1152,15 +1152,21 @@ Handle Factory::CreateApiFunction( - Handle construct_stub = isolate()->builtins()->JSConstructStubApi(); - - int internal_field_count = 0; -+ bool has_external_resource = false; -+ - if (!obj->instance_template()->IsUndefined()) { - Handle instance_template = - Handle( - ObjectTemplateInfo::cast(obj->instance_template())); - internal_field_count = - Smi::cast(instance_template->internal_field_count())->value(); -+ has_external_resource = -+ !instance_template->has_external_resource()->IsUndefined(); - } - - int instance_size = kPointerSize * internal_field_count; -+ if (has_external_resource) instance_size += kPointerSize; -+ - InstanceType type = INVALID_TYPE; - switch (instance_type) { - case JavaScriptObject: -@@ -1195,6 +1201,11 @@ Handle Factory::CreateApiFunction( - - Handle map = Handle(result->initial_map()); - -+ // Mark as having external data object if needed -+ if (has_external_resource) { -+ map->set_has_external_resource(true); -+ } -+ - // Mark as undetectable if needed. - if (obj->undetectable()) { - map->set_is_undetectable(); -diff --git a/src/heap-inl.h b/src/heap-inl.h -index 4c55d63..bca57cb 100644 ---- a/src/heap-inl.h -+++ b/src/heap-inl.h -@@ -222,21 +222,36 @@ MaybeObject* Heap::NumberFromUint32(uint32_t value) { - } - - --void Heap::FinalizeExternalString(String* string) { -- ASSERT(string->IsExternalString()); -- v8::String::ExternalStringResourceBase** resource_addr = -- reinterpret_cast( -- reinterpret_cast(string) + -- ExternalString::kResourceOffset - -- kHeapObjectTag); -- -- // Dispose of the C++ object if it has not already been disposed. -- if (*resource_addr != NULL) { -- (*resource_addr)->Dispose(); -+void Heap::FinalizeExternalString(HeapObject* string) { -+ ASSERT(string->IsExternalString() || string->map()->has_external_resource()); -+ -+ if (string->IsExternalString()) { -+ v8::String::ExternalStringResourceBase** resource_addr = -+ reinterpret_cast( -+ reinterpret_cast(string) + -+ ExternalString::kResourceOffset - -+ kHeapObjectTag); -+ -+ // Dispose of the C++ object if it has not already been disposed. -+ if (*resource_addr != NULL) { -+ (*resource_addr)->Dispose(); -+ } -+ -+ // Clear the resource pointer in the string. -+ *resource_addr = NULL; -+ } else { -+ JSObject *object = JSObject::cast(string); -+ Object *value = object->GetExternalResourceObject(); -+ v8::Object::ExternalResource *resource = 0; -+ if (value->IsSmi()) { -+ resource = reinterpret_cast(Internals::GetExternalPointerFromSmi(value)); -+ } else if (value->IsForeign()) { -+ resource = reinterpret_cast(Foreign::cast(value)->address()); -+ } -+ if (resource) { -+ resource->Dispose(); -+ } - } -- -- // Clear the resource pointer in the string. -- *resource_addr = NULL; - } - - -@@ -555,6 +570,16 @@ void ExternalStringTable::AddString(String* string) { - } - - -+void ExternalStringTable::AddObject(HeapObject* object) { -+ ASSERT(object->map()->has_external_resource()); -+ if (heap_->InNewSpace(object)) { -+ new_space_strings_.Add(object); -+ } else { -+ old_space_strings_.Add(object); -+ } -+} -+ -+ - void ExternalStringTable::Iterate(ObjectVisitor* v) { - if (!new_space_strings_.is_empty()) { - Object** start = &new_space_strings_[0]; -@@ -583,14 +608,14 @@ void ExternalStringTable::Verify() { - } - - --void ExternalStringTable::AddOldString(String* string) { -- ASSERT(string->IsExternalString()); -- ASSERT(!heap_->InNewSpace(string)); -- old_space_strings_.Add(string); -+void ExternalStringTable::AddOldObject(HeapObject* object) { -+ ASSERT(object->IsExternalString() || object->map()->has_external_resource()); -+ ASSERT(!heap_->InNewSpace(object)); -+ old_space_strings_.Add(object); - } - - --void ExternalStringTable::ShrinkNewStrings(int position) { -+void ExternalStringTable::ShrinkNewObjects(int position) { - new_space_strings_.Rewind(position); - if (FLAG_verify_heap) { - Verify(); -diff --git a/src/heap.cc b/src/heap.cc -index d287ead..53a0f27 100644 ---- a/src/heap.cc -+++ b/src/heap.cc -@@ -1099,18 +1099,18 @@ void Heap::Scavenge() { - } - - --String* Heap::UpdateNewSpaceReferenceInExternalStringTableEntry(Heap* heap, -- Object** p) { -+HeapObject* Heap::UpdateNewSpaceReferenceInExternalStringTableEntry(Heap* heap, -+ Object** p) { - MapWord first_word = HeapObject::cast(*p)->map_word(); - - if (!first_word.IsForwardingAddress()) { - // Unreachable external string can be finalized. -- heap->FinalizeExternalString(String::cast(*p)); -+ heap->FinalizeExternalString(HeapObject::cast(*p)); - return NULL; - } - - // String is still reachable. -- return String::cast(first_word.ToForwardingAddress()); -+ return HeapObject::cast(first_word.ToForwardingAddress()); - } - - -@@ -1128,11 +1128,11 @@ void Heap::UpdateNewSpaceReferencesInExternalStringTable( - - for (Object** p = start; p < end; ++p) { - ASSERT(InFromSpace(*p)); -- String* target = updater_func(this, p); -+ HeapObject* target = updater_func(this, p); - - if (target == NULL) continue; - -- ASSERT(target->IsExternalString()); -+ ASSERT(target->IsExternalString() || target->map()->has_external_resource()); - - if (InNewSpace(target)) { - // String is still in new space. Update the table entry. -@@ -1140,12 +1140,12 @@ void Heap::UpdateNewSpaceReferencesInExternalStringTable( - ++last; - } else { - // String got promoted. Move it to the old string list. -- external_string_table_.AddOldString(target); -+ external_string_table_.AddOldObject(target); - } - } - - ASSERT(last <= end); -- external_string_table_.ShrinkNewStrings(static_cast(last - start)); -+ external_string_table_.ShrinkNewObjects(static_cast(last - start)); - } - - -@@ -6367,6 +6367,19 @@ void ExternalStringTable::CleanUp() { - - - void ExternalStringTable::TearDown() { -+ for (int i = 0; i < new_space_strings_.length(); ++i) { -+ if (new_space_strings_[i] == heap_->raw_unchecked_null_value()) continue; -+ HeapObject *object = HeapObject::cast(new_space_strings_[i]); -+ if (!object->IsExternalString()) -+ heap_->FinalizeExternalString(object); -+ } -+ for (int i = 0; i < old_space_strings_.length(); ++i) { -+ if (old_space_strings_[i] == heap_->raw_unchecked_null_value()) continue; -+ HeapObject *object = HeapObject::cast(old_space_strings_[i]); -+ if (!object->IsExternalString()) -+ heap_->FinalizeExternalString(object); -+ } -+ - new_space_strings_.Free(); - old_space_strings_.Free(); - } -diff --git a/src/heap.h b/src/heap.h -index 7c0b0ea..5e90964 100644 ---- a/src/heap.h -+++ b/src/heap.h -@@ -245,8 +245,8 @@ class Isolate; - class WeakObjectRetainer; - - --typedef String* (*ExternalStringTableUpdaterCallback)(Heap* heap, -- Object** pointer); -+typedef HeapObject* (*ExternalStringTableUpdaterCallback)(Heap* heap, -+ Object** pointer); - - class StoreBufferRebuilder { - public: -@@ -331,10 +331,14 @@ typedef void (*ScavengingCallback)(Map* map, - // External strings table is a place where all external strings are - // registered. We need to keep track of such strings to properly - // finalize them. -+// The ExternalStringTable can contain both strings and objects with -+// external resources. It was not renamed to make the patch simpler. - class ExternalStringTable { - public: - // Registers an external string. - inline void AddString(String* string); -+ // Registers an external object. -+ inline void AddObject(HeapObject* string); - - inline void Iterate(ObjectVisitor* v); - -@@ -352,10 +356,10 @@ class ExternalStringTable { - - inline void Verify(); - -- inline void AddOldString(String* string); -+ inline void AddOldObject(HeapObject* string); - - // Notifies the table that only a prefix of the new list is valid. -- inline void ShrinkNewStrings(int position); -+ inline void ShrinkNewObjects(int position); - - // To speed up scavenge collections new space string are kept - // separate from old space strings. -@@ -851,7 +855,7 @@ class Heap { - - // Finalizes an external string by deleting the associated external - // data and clearing the resource pointer. -- inline void FinalizeExternalString(String* string); -+ inline void FinalizeExternalString(HeapObject* string); - - // Allocates an uninitialized object. The memory is non-executable if the - // hardware and OS allow. -@@ -1656,7 +1660,7 @@ class Heap { - // Performs a minor collection in new generation. - void Scavenge(); - -- static String* UpdateNewSpaceReferenceInExternalStringTableEntry( -+ static HeapObject* UpdateNewSpaceReferenceInExternalStringTableEntry( - Heap* heap, - Object** pointer); - -diff --git a/src/mark-compact.cc b/src/mark-compact.cc -index b41b033..bf0aab8 100644 ---- a/src/mark-compact.cc -+++ b/src/mark-compact.cc -@@ -1513,8 +1513,9 @@ class SymbolTableCleaner : public ObjectVisitor { - - // Since no objects have yet been moved we can safely access the map of - // the object. -- if (o->IsExternalString()) { -- heap_->FinalizeExternalString(String::cast(*p)); -+ if (o->IsExternalString() || -+ (o->IsHeapObject() && HeapObject::cast(o)->map()->has_external_resource())) { -+ heap_->FinalizeExternalString(HeapObject::cast(*p)); - } - // Set the entry to null_value (as deleted). - *p = heap_->null_value(); -@@ -2487,15 +2488,15 @@ static void UpdatePointer(HeapObject** p, HeapObject* object) { - } - - --static String* UpdateReferenceInExternalStringTableEntry(Heap* heap, -- Object** p) { -+static HeapObject* UpdateReferenceInExternalStringTableEntry(Heap* heap, -+ Object** p) { - MapWord map_word = HeapObject::cast(*p)->map_word(); - - if (map_word.IsForwardingAddress()) { -- return String::cast(map_word.ToForwardingAddress()); -+ return HeapObject::cast(map_word.ToForwardingAddress()); - } - -- return String::cast(*p); -+ return HeapObject::cast(*p); - } - - -diff --git a/src/objects-inl.h b/src/objects-inl.h -index 1cfea84..6a80c9c 100644 ---- a/src/objects-inl.h -+++ b/src/objects-inl.h -@@ -1343,7 +1343,7 @@ int JSObject::GetInternalFieldCount() { - // Make sure to adjust for the number of in-object properties. These - // properties do contribute to the size, but are not internal fields. - return ((Size() - GetHeaderSize()) >> kPointerSizeLog2) - -- map()->inobject_properties(); -+ map()->inobject_properties() - (map()->has_external_resource()?1:0); - } - - -@@ -1373,6 +1373,23 @@ void JSObject::SetInternalField(int index, Object* value) { - } - - -+void JSObject::SetExternalResourceObject(Object *value) { -+ ASSERT(map()->has_external_resource()); -+ int offset = GetHeaderSize() + kPointerSize * GetInternalFieldCount(); -+ WRITE_FIELD(this, offset, value); -+ WRITE_BARRIER(GetHeap(), this, offset, value); -+} -+ -+ -+Object *JSObject::GetExternalResourceObject() { -+ if (map()->has_external_resource()) { -+ return READ_FIELD(this, GetHeaderSize() + kPointerSize * GetInternalFieldCount()); -+ } else { -+ return GetHeap()->undefined_value(); -+ } -+} -+ -+ - // Access fast-case object properties at index. The use of these routines - // is needed to correctly distinguish between properties stored in-object and - // properties stored in the properties array. -@@ -2755,6 +2772,20 @@ bool Map::is_shared() { - return ((1 << kIsShared) & bit_field3()) != 0; - } - -+void Map::set_has_external_resource(bool value) { -+ if (value) { -+ set_bit_field(bit_field() | (1 << kHasExternalResource)); -+ } else { -+ set_bit_field(bit_field() & ~(1 << kHasExternalResource)); -+ } -+} -+ -+bool Map::has_external_resource() -+{ -+ return ((1 << kHasExternalResource) & bit_field()) != 0; -+} -+ -+ - void Map::set_named_interceptor_is_fallback(bool value) - { - if (value) { -@@ -3301,6 +3332,8 @@ ACCESSORS(FunctionTemplateInfo, flag, Smi, kFlagOffset) - ACCESSORS(ObjectTemplateInfo, constructor, Object, kConstructorOffset) - ACCESSORS(ObjectTemplateInfo, internal_field_count, Object, - kInternalFieldCountOffset) -+ACCESSORS(ObjectTemplateInfo, has_external_resource, Object, -+ kHasExternalResourceOffset) - - ACCESSORS(SignatureInfo, receiver, Object, kReceiverOffset) - ACCESSORS(SignatureInfo, args, Object, kArgsOffset) -diff --git a/src/objects.h b/src/objects.h -index ed40061..c38d461 100644 ---- a/src/objects.h -+++ b/src/objects.h -@@ -1760,6 +1760,9 @@ class JSObject: public JSReceiver { - inline Object* GetInternalField(int index); - inline void SetInternalField(int index, Object* value); - -+ inline void SetExternalResourceObject(Object *); -+ inline Object *GetExternalResourceObject(); -+ - // The following lookup functions skip interceptors. - void LocalLookupRealNamedProperty(String* name, LookupResult* result); - void LookupRealNamedProperty(String* name, LookupResult* result); -@@ -4171,11 +4174,11 @@ class Map: public HeapObject { - - // Tells whether the instance has a call-as-function handler. - inline void set_has_instance_call_handler() { -- set_bit_field(bit_field() | (1 << kHasInstanceCallHandler)); -+ set_bit_field3(bit_field3() | (1 << kHasInstanceCallHandler)); - } - - inline bool has_instance_call_handler() { -- return ((1 << kHasInstanceCallHandler) & bit_field()) != 0; -+ return ((1 << kHasInstanceCallHandler) & bit_field3()) != 0; - } - - inline void set_is_extensible(bool value); -@@ -4247,6 +4250,11 @@ class Map: public HeapObject { - inline void set_named_interceptor_is_fallback(bool value); - inline bool named_interceptor_is_fallback(); - -+ // Tells whether the instance has the space for an external resource -+ // object -+ inline void set_has_external_resource(bool value); -+ inline bool has_external_resource(); -+ - // [prototype]: implicit prototype object. - DECL_ACCESSORS(prototype, Object) - -@@ -4487,7 +4495,7 @@ class Map: public HeapObject { - static const int kHasNamedInterceptor = 3; - static const int kHasIndexedInterceptor = 4; - static const int kIsUndetectable = 5; -- static const int kHasInstanceCallHandler = 6; -+ static const int kHasExternalResource = 6; - static const int kIsAccessCheckNeeded = 7; - - // Bit positions for bit field 2 -@@ -4512,6 +4520,7 @@ class Map: public HeapObject { - // Bit positions for bit field 3 - static const int kIsShared = 0; - static const int kNamedInterceptorIsFallback = 1; -+ static const int kHasInstanceCallHandler = 2; - - // Layout of the default cache. It holds alternating name and code objects. - static const int kCodeCacheEntrySize = 2; -@@ -7539,6 +7548,7 @@ class ObjectTemplateInfo: public TemplateInfo { - public: - DECL_ACCESSORS(constructor, Object) - DECL_ACCESSORS(internal_field_count, Object) -+ DECL_ACCESSORS(has_external_resource, Object) - - static inline ObjectTemplateInfo* cast(Object* obj); - -@@ -7555,7 +7565,8 @@ class ObjectTemplateInfo: public TemplateInfo { - static const int kConstructorOffset = TemplateInfo::kHeaderSize; - static const int kInternalFieldCountOffset = - kConstructorOffset + kPointerSize; -- static const int kSize = kInternalFieldCountOffset + kPointerSize; -+ static const int kHasExternalResourceOffset = kInternalFieldCountOffset + kPointerSize; -+ static const int kSize = kHasExternalResourceOffset + kPointerSize; - }; - - --- -1.7.4.1 - diff --git a/src/v8/0004-Introduce-a-QML-compilation-mode.patch b/src/v8/0004-Introduce-a-QML-compilation-mode.patch deleted file mode 100644 index 84823ca4a7..0000000000 --- a/src/v8/0004-Introduce-a-QML-compilation-mode.patch +++ /dev/null @@ -1,2355 +0,0 @@ -From c49c39afa016b176c933ff01e748a2eddb26e131 Mon Sep 17 00:00:00 2001 -From: Aaron Kennedy -Date: Thu, 27 Oct 2011 13:34:16 +0100 -Subject: [PATCH 04/13] Introduce a QML compilation mode - -In QML mode, there is a second global object - known as the QML -global object. During property resolution, if a property is not -present on the JS global object, it is resolved on the QML global -object. - -This global object behavior is only enabled if a script is being -compiled in QML mode. The object to use as the QML global object -is passed as a parameter to the Script::Run() method. Any function -closures etc. created during the run will retain a reference to this -object, so different objects can be passed in different script -runs. ---- - include/v8.h | 19 +++++++-- - src/api.cc | 52 +++++++++++++++++++---- - src/arm/code-stubs-arm.cc | 4 ++ - src/arm/full-codegen-arm.cc | 28 +++++++----- - src/arm/lithium-arm.cc | 4 +- - src/arm/lithium-arm.h | 12 +++++- - src/arm/lithium-codegen-arm.cc | 9 ++-- - src/arm/macro-assembler-arm.h | 5 ++ - src/ast-inl.h | 5 ++ - src/ast.cc | 5 ++ - src/ast.h | 1 + - src/code-stubs.h | 2 +- - src/compiler.cc | 15 ++++++- - src/compiler.h | 16 ++++++- - src/contexts.cc | 35 ++++++++++++++++ - src/contexts.h | 4 ++ - src/execution.cc | 31 ++++++++++++-- - src/execution.h | 8 ++++ - src/full-codegen.cc | 3 +- - src/full-codegen.h | 1 + - src/heap.cc | 4 ++ - src/hydrogen-instructions.cc | 5 ++ - src/hydrogen-instructions.h | 21 ++++++++- - src/hydrogen.cc | 4 ++ - src/ia32/code-stubs-ia32.cc | 5 ++ - src/ia32/full-codegen-ia32.cc | 28 +++++++----- - src/ia32/lithium-codegen-ia32.cc | 9 ++-- - src/ia32/lithium-ia32.cc | 4 +- - src/ia32/lithium-ia32.h | 12 +++++- - src/ia32/macro-assembler-ia32.h | 3 + - src/mips/code-stubs-mips.cc | 5 ++ - src/mips/full-codegen-mips.cc | 30 ++++++++----- - src/mips/macro-assembler-mips.h | 5 ++ - src/objects-inl.h | 2 + - src/objects.h | 7 +++ - src/parser.cc | 28 +++++++++++-- - src/parser.h | 4 +- - src/prettyprinter.cc | 3 + - src/runtime.cc | 84 +++++++++++++++++++++++++------------- - src/runtime.h | 8 ++-- - src/scopeinfo.cc | 28 ++++++++++--- - src/scopeinfo.h | 1 + - src/scopes.cc | 63 ++++++++++++++++++++++++++++ - src/scopes.h | 8 ++++ - src/variables.cc | 3 +- - src/variables.h | 5 ++ - src/x64/code-stubs-x64.cc | 4 ++ - src/x64/full-codegen-x64.cc | 28 +++++++----- - src/x64/lithium-codegen-x64.cc | 9 ++-- - src/x64/lithium-x64.cc | 4 +- - src/x64/lithium-x64.h | 12 +++++ - src/x64/macro-assembler-x64.h | 5 ++ - 52 files changed, 559 insertions(+), 141 deletions(-) - -diff --git a/include/v8.h b/include/v8.h -index 3ef4dd6..193e2fe 100644 ---- a/include/v8.h -+++ b/include/v8.h -@@ -587,6 +587,11 @@ class ScriptOrigin { - */ - class V8EXPORT Script { - public: -+ enum CompileFlags { -+ Default = 0x00, -+ QmlMode = 0x01 -+ }; -+ - /** - * Compiles the specified script (context-independent). - * -@@ -605,7 +610,8 @@ class V8EXPORT Script { - static Local