summaryrefslogtreecommitdiffstats
path: root/src/gui/graphicsview
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | Doc: add \since 4.6 for new APIsVolker Hilsheimer2009-07-194-8/+24
| | | |
| * | | Doc: add documentation for new overloads, and mark old overloads thatVolker Hilsheimer2009-07-181-5/+57
| | | | | | | | | | | | | | | | might lead to incorrect results as obsolete (and explain why).
| * | | Doc: fix qdoc errors and clarify purpose of deviceTransform parameterVolker Hilsheimer2009-07-163-39/+58
| | | | | | | | | | | | | | | | | | | | | | | | in new overloads. Reviewed-By: bnilsen
| * | | With license it's better.Alexis Menard2009-07-161-0/+41
| | | |
| * | | Update the license header in a few more placesThiago Macieira2009-07-162-2/+2
| | | |
| * | | QGraphicsItems not painted after QGraphicsScene::clear().Bjoern Erik Nilsen2009-07-151-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The problem was that we didn't regenerate the bsp when adding items after calling QGraphicsScene::clear. Reviewed-by: alexis
| * | | Fix license header in new files - make testcase pass.Volker Hilsheimer2009-07-153-9/+9
| | | |
| * | | Merge branch 'master' of git@scm.dev.nokia.troll.no:qt/qtMarius Bugge Monsen2009-07-143-15/+19
| |\ \ \
| | * | | Make sure QGraphicsScene::update() only requires one event-loopBjørn Erik Nilsen2009-07-143-15/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | iteration before the views are updated. A full scene update (scene.update()) already supported it because the scene called update() on the views directly. However, partially scene updates (scene.update(rect)) required two event-loop iterations before the views were updated. Auto-test included.
| * | | | Remove sendGestureEvent().Marius Bugge Monsen2009-07-141-68/+0
| | | | |
| * | | | Add QGraphicsView::filtersChildEvents property.Marius Bugge Monsen2009-07-145-9/+149
| |/ / / | | | | | | | | | | | | This obsoletes QGraphicsView::handlesChildEvents.
| * | | Cut-off in QGraphicsView not hit if setting a scene rect.Bjørn Erik Nilsen2009-07-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QGraphicsScene::sceneRect() returns the growingItemsBoundingRect if not a particular scene rect is set; otherwise the sceneRect is returned. This cut-off aims to do less processing when the exposed region covers the entire scene, but it won't get hit in case of a sceneRect because we always check against the growingItemsBoundingRect. Task-number: 257192
| * | | Fixed linking of QtSvg with MSVC.Rohan McGovern2009-07-132-18/+17
| | | |
| * | | build fix on windowsThierry Bastian2009-07-111-0/+1
| | | |
| * | | Merge commit 'qt/master' into graphicssceneindexBjørn Erik Nilsen2009-07-1012-617/+91
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/gui/graphicsview/qgraphicsitem_p.h tests/auto/qgraphicsproxywidget/tst_qgraphicsproxywidget.cpp tests/auto/qgraphicsview/tst_qgraphicsview.cpp
| | * | | Improved the support for input methods in Graphics View.jasplin2009-07-039-10/+90
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch improves the graphics view support for input methods in several ways: * A new ItemAcceptsInputMethod flag is introduced to serve the same purpose for graphics items as WA_InputMethodEnabled does for widgets: Input method support can be controlled individually for each item. * The input method sensitivity of a view (i.e. the value of the WA_InputMethodEnabled flag) is updated dynamically whenever the input method support of the current focus item may change. * Input contexts are reset whenever an item that supports input methods loses focus. Reviewed-by: janarve Task-number: 254492
| | * | | Refactored gesture apiDenis Dzyubenko2009-07-0210-611/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rewritten the api almost from scratch, making it simplier and more flexible at the same time. The current implementation will not have complex gseturemanager class inside Qt, but the QGesture base class, which represents both a gesture recognizer and a gesture itself with a set of properties. A set of common gestures that can use used in third-party applications (and in Qt itself internally) is supposed to be found in qstandardgestures.h, and a base class for user-defined gestures is in qgesture.h Gesture implementation for Pan on Windows7 has also been added as a reference implementation for platform gestures.
| | * | | doc: Corrected several qdoc warnings.Martin Smith2009-07-021-1/+4
| | | | |
| | * | | doc: Corrected several qdoc warnings.Martin Smith2009-07-021-17/+18
| | | | |
| * | | | QGraphicsItem not updated properly when moving parent.Bjørn Erik Nilsen2009-07-102-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Found during manual testing (manualtests/graphicsview/movableitems). Moving a child item (via its parent) outside the viewport, and then back again didn't trigger an update on the child. Reason was that we had a cut-off checking the wrong bit (geometryChanged). This bit means exactly the same as the paintedViewBoundingRectsNeedRepaint bit, except that it doesn't propagate to the children (and that's the bug). We use paintedViewBoundingRectsNeedRepaint instead. Auto-test included.
| * | | | Fixes broken item-lookup for untransformable items.Bjørn Erik Nilsen2009-07-101-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Found during manual testing (manualtests/graphicsview/untransformable). At some point it was not possible to click on an untransformable item. The problem was that none of the untransformable items were top-levels, and none of the transformable top-level items were in the same area, resulting in an empty list of estimated top-level items. Auto-test included.
| * | | | Painting artifacts when closing an embedded popup in Graphics View.Bjørn Erik Nilsen2009-07-101-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Found during manual testing (demos/embeddeddialogs). The problem was that a full update (right before hiding/deleting an item) caused the update request made from the destructor to be discarded. Auto-test included.
| * | | | Painting artifacts when moving an item with partial updates.Bjørn Erik Nilsen2009-07-102-24/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Found during manual testing (dndrobotinproxy). The problem was that the paintedViewBoundingRect was set to an empty rect because the partial update area didn't intersect with the viewport. The item itself was partially inside the viewport. Then, when the item was moved, its old area was not repainted due to this empty paintedViewBoundingRect. Auto-test included.
| * | | | Rendering artifacts when hiding a QGraphicsItem.Bjørn Erik Nilsen2009-07-091-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The problem was that update() followed by hide() didn't work as expected because the update() caused all sub-sequent update requests to be discareded. This is correct, however, we have to make sure the ignoreVisible/ignoreOpacity bit is set properly; we won't process a hidden item otherwise. Auto-test included.
| * | | | Optimize QGraphicsViewPrivate::updateRect/updateRegion.Bjørn Erik Nilsen2009-07-082-7/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We can do QRect::intersects/contains/operator| faster than QRect because we can assume the rects are normalized. Another important factor is our knowledge about the viewport rect, which is always QRect(0, 0, viewport->width(), viewport->height()). Auto-tests included.
| * | | | Reduce QTransform operations in QGraphicsSceneIndex.Bjørn Erik Nilsen2009-07-082-28/+76
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update the scene transform and use it directly in the same fashion as we do in processDirtyItemsRecursive/drawSubtreeRecursive. All auto-tests pass
| * | | | Reduce QTransform operations in Graphics View.Bjørn Erik Nilsen2009-07-084-61/+188
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use the item's cached scene transform directly instead of always making a copy of it. Moreover, we don't have to use the transform at all if the scene transform is a "translate only" transform :-). QTransform already use the same cut-offs, but it must update the type() before it can find out. We don't have to check the type() because that is already stored (and we usually don't call type() when we store the value either). All auto-tests pass.
| * | | | Simplify QGraphicsScenePrivate::processDirtyItemsRecursive.Bjørn Erik Nilsen2009-07-032-62/+81
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This version is easier to read and is slightly faster than the old one. All auto-tests pass.
| * | | | More re-factoring of QGraphicsSceneIndex.Bjørn Erik Nilsen2009-07-0210-96/+98
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | New method: QGraphicsSceneIndex::estimateTopLevelItems. QGraphicsSceneIndex::estimateItems returns *all* items within the rect, but we are only interested in the top-levels (those that are within the rect themselves or have descendants within the rect) when doing recursive drawing/item-lookup. All auto-tests pass. Demos/examples/manualtests run fine.
| * | | | Speedup item-lookup in Graphics View.Bjørn Erik Nilsen2009-07-027-52/+65
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We don't have to do a stable sort anymore because the lessThan operator now accounts for the insertion order. This also means we don't have to sort all top-level items to preserve the insertion order in QGraphicsScenePrivate::topLevelItemsInStackingOrder. Reviewed-by: Andreas
| * | | | Kill dead BSP tree code in graphics view.Bjørn Erik Nilsen2009-07-022-44/+0
| | | | |
| * | | | Dont include untransformable graphics items twice.Bjørn Erik Nilsen2009-07-021-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This revertes d39a62720ba67a0fa6e4e37519d22f14c7b7404e (we had to do it with the old implementation, but the new one have untransformable items included in the indexed list. The only difference is that untransformable items are also in the untransformable list; otherwise in the bsp tree). Auto-test included.
| * | | | Fixes broken BSP lookup in QGraphicsSceneBspTreeIndex.Bjørn Erik Nilsen2009-07-012-6/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The chip demo was unbelievable slow, so I investigated and found out the bsp always returned almost all items in the tree (40 000 in this particular case). It did so because the tree was initialized with an empty sceneRect. The sceneRect was empty due to a lacking signal-slot connection, resulting in QGraphicsSceneBspTreeIndex::updateSceneRect never being invoked. Auto-test included.
| * | | | Fix a regression with extended style option items.Alexis Menard2009-07-011-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We basically passed an unitialized transform to construct the styleoptions for items that use the useExtendedStyleOption flag. We had an auto-test to cover that but for some reason view.show() was removed by me so the auto-test did nothing. oops. Reviewed-by:bnilsen
| * | | | Compiler warning.Bjørn Erik Nilsen2009-07-011-1/+1
| | | | |
| * | | | Merge commit 'qt/master' into graphicssceneindexBjørn Erik Nilsen2009-07-014-2/+33
| |\ \ \ \ | | |/ / /
| | * | | Compiler warnings.Bjørn Erik Nilsen2009-07-013-2/+3
| | | | |
| | * | | Added QGraphicsScene::sendEvent().J-P Nurmi2009-07-012-0/+30
| | | | | | | | | | | | | | | | | | | | | | | | | Merge-request: 787 Reviewed-by: Bjørn Erik Nilsen <bjorn.nilsen@nokia.com>
| * | | | Merge commit 'qt/master' into graphicssceneindexBjørn Erik Nilsen2009-07-0114-41/+1050
| |\ \ \ \ | | |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/gui/graphicsview/qgraphicsscene.cpp src/gui/graphicsview/qgraphicsscene_p.h src/gui/graphicsview/qgraphicsview.cpp src/gui/graphicsview/qgraphicsview_p.h
| | * | | doc: Fixed several qdoc error reports.Martin Smith2009-06-301-6/+10
| | | |/ | | |/|
| * | | Partially revert 7fe4f8ff71cf09bbabbd3438ef637fe408a11c33Bjørn Erik Nilsen2009-06-301-5/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | We have to ensure that the item's top-level is marked as discovered. This broke the dragandroprobot example after we started using the BSP from QGraphicsSceneIndex::items()* (see 6ee3fb750377eeedf161d96fef02c5fa336810e9)
| * | | Make QGraphicsSceneIndex::clear() less nasty.Bjørn Erik Nilsen2009-06-301-2/+3
| | | |
| * | | More BSP tree index cleanup.Bjørn Erik Nilsen2009-06-302-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ensure the index of indexed items are reset to -1. Makes tst_QGraphicsScene::itemIndexMethod happy. (this test passed before we actually started using the BSP from the items() functions, see 6ee3fb750377eeedf161d96fef02c5fa336810e9)
| * | | More re-factoring of QGraphicsSceneIndex.Bjørn Erik Nilsen2009-06-305-103/+89
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Mostly re-factoring of QGraphicsSceneIndexPrivate::recursive_items_helper so it can re-use code from the scene (topLevelItemsInStackingOrder). That also means we'll use the bsp tree in case of NoIndex instead of always looping through the top-levels. This function is now almost identical to QGraphicsScenePrivate::drawSubtreeRecursive, so it might be worth looking into how we can abstract it even more and have one common recursive function.
| * | | Add lacking parenthesis around bitwise AND operator.Bjørn Erik Nilsen2009-06-291-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | This caused a crash in the diagramscene example because "!bits & something" does not have the same meaning as "!(bits & something)", hence item was never removed from the BSP resulting in a stale item pointer.
| * | | Graphics View: BSP tree cleanup.Bjørn Erik Nilsen2009-06-294-18/+22
| | | | | | | | | | | | | | | | | | | | Ensure the BSP resets the QGraphicsItemPrivate::itemDiscovered bit before returning the list of discovered items.
| * | | Fix broken point item lookup in Graphics View.Bjørn Erik Nilsen2009-06-261-3/+14
| | | | | | | | | | | | | | | | Done with Andreas.
| * | | Proper handling of scene rect in QGraphicsScene(Index).Bjørn Erik Nilsen2009-06-2610-61/+52
| | | | | | | | | | | | | | | | Reviewed-by: Andreas
| * | | Re-factor parts of the QGraphicsSceneBspTreeIndex.Bjørn Erik Nilsen2009-06-253-177/+133
| | | | | | | | | | | | | | | | | | | | This patch adds better support for untransformable items and removes some redundant code.
| * | | Partially revert be79229eBjørn Erik Nilsen2009-06-251-7/+5
| | | | | | | | | | | | | | | | | | | | The change in processPendingUpdates was completely wrong and broke several auto-tests.