Changeset 561 for trunk/src/gui/graphicsview/qgraphicsview_p.h
- Timestamp:
- Feb 11, 2010, 11:19:06 PM (15 years ago)
- Location:
- trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk
-
Property svn:mergeinfo
set to (toggle deleted branches)
/branches/vendor/nokia/qt/4.6.1 merged eligible /branches/vendor/nokia/qt/current merged eligible /branches/vendor/trolltech/qt/current 3-149
-
Property svn:mergeinfo
set to (toggle deleted branches)
-
trunk/src/gui/graphicsview/qgraphicsview_p.h
r2 r561 2 2 ** 3 3 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). 4 ** Contact: Qt Software Information (qt-info@nokia.com) 4 ** All rights reserved. 5 ** Contact: Nokia Corporation (qt-info@nokia.com) 5 6 ** 6 7 ** This file is part of the QtGui module of the Qt Toolkit. … … 21 22 ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. 22 23 ** 23 ** In addition, as a special exception, Nokia gives you certain 24 ** additional rights. These rights are described in the Nokia Qt LGPL 25 ** Exception version 1.0, included in the file LGPL_EXCEPTION.txt in this 26 ** package. 24 ** In addition, as a special exception, Nokia gives you certain additional 25 ** rights. These rights are described in the Nokia Qt LGPL Exception 26 ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. 27 27 ** 28 28 ** GNU General Public License Usage … … 34 34 ** met: http://www.gnu.org/copyleft/gpl.html. 35 35 ** 36 ** If you are unsure which license is appropriate for your use, please37 ** contact the sales department at qt-sales@nokia.com.36 ** If you have questions regarding the use of this file, please contact 37 ** Nokia at qt-info@nokia.com. 38 38 ** $QT_END_LICENSE$ 39 39 ** … … 48 48 // 49 49 // This file is not part of the Qt API. It exists for the convenience 50 // of qapplication_*.cpp, qwidget*.cpp and qfiledialog.cpp. This header51 // file may change from version toversion without notice, or even be removed.50 // of other Qt classes. This header file may change from version to 51 // version without notice, or even be removed. 52 52 // 53 53 // We mean it. … … 59 59 60 60 #include <QtGui/qevent.h> 61 #include <QtCore/qcoreapplication.h> 61 62 #include "qgraphicssceneevent.h" 63 #include <QtGui/qstyleoption.h> 62 64 #include <private/qabstractscrollarea_p.h> 63 65 64 66 QT_BEGIN_NAMESPACE 65 67 66 class Q_ GUI_EXPORT QGraphicsViewPrivate : public QAbstractScrollAreaPrivate68 class Q_AUTOTEST_EXPORT QGraphicsViewPrivate : public QAbstractScrollAreaPrivate 67 69 { 68 70 Q_DECLARE_PUBLIC(QGraphicsView) … … 85 87 qint64 verticalScroll() const; 86 88 87 QList<QGraphicsItem *> itemsInArea(const QPainterPath &path, 88 Qt::ItemSelectionMode mode = Qt::IntersectsItemShape, 89 Qt::SortOrder = Qt::AscendingOrder) const; 89 QRectF mapRectToScene(const QRect &rect) const; 90 QRectF mapRectFromScene(const QRectF &rect) const; 90 91 91 92 QPointF mousePressItemPoint; … … 95 96 QPointF lastMouseMoveScenePoint; 96 97 QPoint lastMouseMoveScreenPoint; 98 QPoint dirtyScrollOffset; 97 99 Qt::MouseButton mousePressButton; 98 100 QTransform matrix; … … 160 162 QRect mapToViewRect(const QGraphicsItem *item, const QRectF &rect) const; 161 163 QRegion mapToViewRegion(const QGraphicsItem *item, const QRectF &rect) const; 162 void itemUpdated(QGraphicsItem *item, const QRectF &rect);163 164 bool fullUpdatePending; 164 QList<QRect> dirtyRects; 165 QList<QRegion> dirtyRegions; 166 int dirtyRectCount; 165 QRegion dirtyRegion; 167 166 QRect dirtyBoundingRect; 168 void updateLater(); 169 bool updatingLater; 170 void _q_updateLaterSlot(); 171 void updateAll(); 172 void updateRect(const QRect &rect); 173 void updateRegion(const QRegion ®ion); 167 void processPendingUpdates(); 168 inline void updateAll() 169 { 170 viewport->update(); 171 fullUpdatePending = true; 172 dirtyBoundingRect = QRect(); 173 dirtyRegion = QRegion(); 174 } 175 176 inline void dispatchPendingUpdateRequests() 177 { 178 #ifndef Q_WS_MAC 179 // QWidget::update() works slightly different on the Mac; it's not part of 180 // our backing store so it needs special threatment. 181 if (qt_widget_private(viewport)->paintOnScreen()) 182 QCoreApplication::sendPostedEvents(viewport, QEvent::UpdateRequest); 183 else 184 QCoreApplication::sendPostedEvents(viewport->window(), QEvent::UpdateRequest); 185 #else 186 QCoreApplication::processEvents(QEventLoop::AllEvents | QEventLoop::ExcludeSocketNotifiers 187 | QEventLoop::ExcludeUserInputEvents); 188 #endif 189 } 190 191 bool updateRect(const QRect &rect); 192 bool updateRegion(const QRegion ®ion); 174 193 bool updateSceneSlotReimplementedChecked; 175 176 QList<QGraphicsItem *> findItems(const QRegion &exposedRegion, bool *allItems) const; 177 178 void generateStyleOptions(const QList<QGraphicsItem *> &itemList,179 QGraphicsItem **itemArray, 180 QStyleOptionGraphicsItem *styleOptionArray, 181 const QTransform &worldTransform, 182 bool allItems, 183 const QRegion &exposedRegion) const;194 QRegion exposedRegion; 195 196 QList<QGraphicsItem *> findItems(const QRegion &exposedRegion, bool *allItems, 197 const QTransform &viewTransform) const; 198 199 QPointF mapToScene(const QPointF &point) const; 200 QRectF mapToScene(const QRectF &rect) const; 201 static void translateTouchEvent(QGraphicsViewPrivate *d, QTouchEvent *touchEvent); 202 void updateInputMethodSensitivity(); 184 203 }; 185 204
Note:
See TracChangeset
for help on using the changeset viewer.