summaryrefslogtreecommitdiffstats
path: root/src/gui/graphicsview
Commit message (Collapse)AuthorAgeFilesLines
...
| * | Doc: Explained how mouse events are handled by QGraphicsView.Geir Vattekar2009-08-271-3/+5
| | | | | | | | | | | | | | | Task-number: 259924 Reviewed-by: Andreas Aardal Hanssen
| * | Make sure itemAt() reflects the visual order.Jan-Arve Sæther2009-08-274-7/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This means it should respect the order that was defined with insertItem() and addItem(). Note that this is not strictly necessary (as now explicitly written in the docs for QGraphicsLayout::itemAt()), but commit 2ec56d158dc140f68efb45e2e0613f0e4026ddf6 broke the order and for people that relied on this that commit caused a regression. In addition, after commit 2ec56d158dc140f68efb45e2e0613f0e4026ddf6 it was not longer possible to query the "item at visual index". Thus, instead of adding another function (like QGGL::itemAt(int,int)) we make sure that itemAt() also returns the "item at visual index".
| * | Doc fixes.Jan-Arve Sæther2009-08-271-9/+30
| | |
| * | Remove warning.Jan-Arve Sæther2009-08-271-1/+1
| | | | | | | | | | | | | | | It was initialized correctly though, just that some compilers could not see that.
| * | Fixes typo in doc and missing return in anchor layoutLeonardo Sobral Cunha2009-08-261-2/+4
| | | | | | | | | | | | Reviewed-by: janarve
| * | Fix "We mean it." comments in graphicsviewOlivier Goffart2009-08-2610-20/+20
| | |
| * | fix warnings on Windows CEJoerg Bornemann2009-08-261-1/+1
| | | | | | | | | | | | | | | | | | | | | Lots of warnings in the qreal == float case. Some Q_UNUSED added. Reviewed-by: thartman
* | | Introduce QGraphicsItem::ItemIsPanel, light-weight window.Andreas Aardal Hanssen2009-08-267-124/+274
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ItemIsPanel allows items that act like windows. They can be activated and deactivated just like windows and focus is handled just like with windows. The main difference is that panels are more light-weight. There's less built-in functionality (e.g., clicking a panel doesn't automatically activate nor raise it). This patch also introduces QGraphicsItem::panel(), QGraphicsItem::isPanel(), and QGraphicsItem::isActive(), as well as QGraphicsScene::activePanel(), QGraphicsScene::setActivePanel(). and QGraphicsScene::isActive(). Regular windows (QGraphicsWidgets with Qt::Window set) are also panels, with added functionality. The ItemIsPanel flag is set automatically for windows. Reviewed-by: brad
* | Merge branch '4.6'Thiago Macieira2009-08-242-2/+3
|\ \
| * \ Merge branch '4.5' into 4.6Thiago Macieira2009-08-241-0/+2
| |\ \ | | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: bin/syncqt configure demos/boxes/glshaders.cpp demos/boxes/vector.h demos/embedded/fluidlauncher/pictureflow.cpp demos/embedded/fluidlauncher/pictureflow.h dist/README dist/changes-3.0.0 dist/changes-3.0.0-beta1 dist/changes-4.3.0 doc/src/desktop-integration.qdoc doc/src/development/designer-manual.qdoc doc/src/distributingqt.qdoc doc/src/examples-overview.qdoc doc/src/examples.qdoc doc/src/frameworks-technologies/dbus-adaptors.qdoc doc/src/geometry.qdoc doc/src/groups.qdoc doc/src/index.qdoc doc/src/objecttrees.qdoc doc/src/platform-notes.qdoc doc/src/plugins-howto.qdoc doc/src/porting/porting4.qdoc doc/src/porting4-obsoletedmechanism.qdocinc doc/src/qt-webpages.qdoc doc/src/qt3support.qdoc doc/src/qtdbus.qdoc doc/src/qtdesigner.qdoc doc/src/qtgui.qdoc doc/src/qtmain.qdoc doc/src/qtopengl.qdoc doc/src/qtsvg.qdoc doc/src/qtuiloader.qdoc doc/src/qundo.qdoc doc/src/richtext.qdoc doc/src/snippets/code/src_corelib_tools_qregexp.cpp doc/src/snippets/code/src_qt3support_network_q3ftp.cpp doc/src/snippets/qstring/main.cpp doc/src/snippets/textdocument-blocks/xmlwriter.cpp doc/src/snippets/textdocument-frames/xmlwriter.cpp doc/src/snippets/textdocument-tables/xmlwriter.cpp doc/src/tech-preview/known-issues.html doc/src/topics.qdoc doc/src/xml-processing/xml-processing.qdoc examples/xml/saxbookmarks/jennifer.xbel src/3rdparty/phonon/ds9/mediaobject.cpp src/3rdparty/phonon/ds9/mediaobject.h src/corelib/io/qurl.cpp src/corelib/tools/qdumper.cpp src/corelib/xml/qxmlstream.h src/gui/embedded/qkbdpc101_qws.cpp src/gui/embedded/qkbdsl5000_qws.cpp src/gui/embedded/qkbdusb_qws.cpp src/gui/embedded/qkbdvr41xx_qws.cpp src/gui/embedded/qkbdyopy_qws.cpp src/gui/embedded/qmousebus_qws.cpp src/gui/embedded/qmousevr41xx_qws.cpp src/gui/embedded/qmouseyopy_qws.cpp src/gui/image/qpixmapcache.cpp src/gui/kernel/qmotifdnd_x11.cpp src/gui/painting/qpaintengine_d3d.cpp src/gui/painting/qpaintengine_raster.cpp src/gui/painting/qwindowsurface_d3d.cpp src/gui/styles/qmacstyle_mac.mm src/gui/text/qtextformat.cpp src/gui/text/qtextobject_p.h src/network/access/qhttp.cpp src/opengl/gl2paintengineex/glgc_shader_source.h src/opengl/gl2paintengineex/qglpexshadermanager.cpp src/opengl/gl2paintengineex/qglpexshadermanager_p.h src/opengl/gl2paintengineex/qglshader.cpp src/opengl/gl2paintengineex/qglshader_p.h src/plugins/codecs/kr/qeuckrcodec.cpp src/plugins/kbddrivers/linuxis/linuxiskbdhandler.cpp src/plugins/mousedrivers/linuxis/linuxismousehandler.cpp src/qt3support/network/q3http.cpp src/script/qscriptarray_p.h src/script/qscriptasm_p.h src/script/qscriptbuffer_p.h src/script/qscriptclass.cpp src/script/qscriptcompiler.cpp src/script/qscriptcompiler_p.h src/script/qscriptcontext.cpp src/script/qscriptcontext_p.cpp src/script/qscriptcontext_p.h src/script/qscriptcontextfwd_p.h src/script/qscriptecmaarray.cpp src/script/qscriptecmaarray_p.h src/script/qscriptecmaboolean.cpp src/script/qscriptecmacore.cpp src/script/qscriptecmadate.cpp src/script/qscriptecmadate_p.h src/script/qscriptecmaerror.cpp src/script/qscriptecmaerror_p.h src/script/qscriptecmafunction.cpp src/script/qscriptecmafunction_p.h src/script/qscriptecmaglobal.cpp src/script/qscriptecmaglobal_p.h src/script/qscriptecmamath.cpp src/script/qscriptecmamath_p.h src/script/qscriptecmanumber.cpp src/script/qscriptecmanumber_p.h src/script/qscriptecmaobject.cpp src/script/qscriptecmaobject_p.h src/script/qscriptecmaregexp.cpp src/script/qscriptecmaregexp_p.h src/script/qscriptecmastring.cpp src/script/qscriptecmastring_p.h src/script/qscriptengine.cpp src/script/qscriptengine_p.cpp src/script/qscriptengine_p.h src/script/qscriptenginefwd_p.h src/script/qscriptextenumeration.cpp src/script/qscriptextenumeration_p.h src/script/qscriptextqobject.cpp src/script/qscriptextqobject_p.h src/script/qscriptextvariant.cpp src/script/qscriptfunction.cpp src/script/qscriptfunction_p.h src/script/qscriptgc_p.h src/script/qscriptmember_p.h src/script/qscriptobject_p.h src/script/qscriptprettypretty.cpp src/script/qscriptprettypretty_p.h src/script/qscriptvalue.cpp src/script/qscriptvalueimpl.cpp src/script/qscriptvalueimpl_p.h src/script/qscriptvalueimplfwd_p.h src/script/qscriptvalueiteratorimpl.cpp src/script/qscriptxmlgenerator.cpp src/script/qscriptxmlgenerator_p.h src/sql/drivers/sqlite/qsql_sqlite.cpp src/svg/qsvghandler.cpp src/svg/qsvgstyle.cpp src/xmlpatterns/expr/qcastingplatform_p.h src/xmlpatterns/iterators/qcachingiterator_p.h src/xmlpatterns/parser/qquerytransformparser_p.h tests/auto/q3uridrag/tst_q3uridrag.cpp tests/auto/qcombobox/tst_qcombobox.cpp tests/auto/qgraphicswidget/tst_qgraphicswidget.cpp tests/auto/qkeyevent/tst_qkeyevent.cpp tests/auto/qmainwindow/tst_qmainwindow.cpp tests/auto/qnetworkcookiejar/tst_qnetworkcookiejar.cpp tests/auto/qsqltablemodel/tst_qsqltablemodel.cpp tests/auto/qsslsocket/tst_qsslsocket.cpp tests/auto/qurl/tst_qurl.cpp tests/auto/qvariant/tst_qvariant.cpp tests/auto/qwidget/tst_qwidget.cpp tests/auto/uic/baseline/batchtranslation.ui tests/auto/uic/baseline/batchtranslation.ui.h tests/auto/uic/baseline/config.ui tests/auto/uic/baseline/config.ui.h tests/auto/uic/baseline/finddialog.ui tests/auto/uic/baseline/finddialog.ui.h tests/auto/uic/baseline/formwindowsettings.ui tests/auto/uic/baseline/formwindowsettings.ui.h tests/auto/uic/baseline/helpdialog.ui tests/auto/uic/baseline/helpdialog.ui.h tests/auto/uic/baseline/listwidgeteditor.ui tests/auto/uic/baseline/listwidgeteditor.ui.h tests/auto/uic/baseline/mainwindowbase.ui tests/auto/uic/baseline/mainwindowbase.ui.h tests/auto/uic/baseline/newactiondialog.ui tests/auto/uic/baseline/newactiondialog.ui.h tests/auto/uic/baseline/newform.ui tests/auto/uic/baseline/newform.ui.h tests/auto/uic/baseline/orderdialog.ui tests/auto/uic/baseline/orderdialog.ui.h tests/auto/uic/baseline/paletteeditor.ui tests/auto/uic/baseline/paletteeditor.ui.h tests/auto/uic/baseline/paletteeditoradvancedbase.ui tests/auto/uic/baseline/paletteeditoradvancedbase.ui.h tests/auto/uic/baseline/phrasebookbox.ui tests/auto/uic/baseline/phrasebookbox.ui.h tests/auto/uic/baseline/plugindialog.ui tests/auto/uic/baseline/plugindialog.ui.h tests/auto/uic/baseline/previewwidget.ui tests/auto/uic/baseline/previewwidget.ui.h tests/auto/uic/baseline/previewwidgetbase.ui tests/auto/uic/baseline/previewwidgetbase.ui.h tests/auto/uic/baseline/qfiledialog.ui tests/auto/uic/baseline/qfiledialog.ui.h tests/auto/uic/baseline/qtgradientdialog.ui tests/auto/uic/baseline/qtgradientdialog.ui.h tests/auto/uic/baseline/qtgradientviewdialog.ui tests/auto/uic/baseline/qtgradientviewdialog.ui.h tests/auto/uic/baseline/saveformastemplate.ui tests/auto/uic/baseline/saveformastemplate.ui.h tests/auto/uic/baseline/statistics.ui tests/auto/uic/baseline/statistics.ui.h tests/auto/uic/baseline/stringlisteditor.ui tests/auto/uic/baseline/stringlisteditor.ui.h tests/auto/uic/baseline/tabbedbrowser.ui tests/auto/uic/baseline/tabbedbrowser.ui.h tests/auto/uic/baseline/tablewidgeteditor.ui tests/auto/uic/baseline/tablewidgeteditor.ui.h tests/auto/uic/baseline/translatedialog.ui tests/auto/uic/baseline/translatedialog.ui.h tests/auto/uic/baseline/treewidgeteditor.ui tests/auto/uic/baseline/treewidgeteditor.ui.h tests/auto/uic/baseline/trpreviewtool.ui tests/auto/uic/baseline/trpreviewtool.ui.h tests/auto/uic3/baseline/previewwidget.ui tests/auto/uic3/baseline/previewwidget.ui.4 tests/auto/uic3/baseline/previewwidgetbase.ui tests/auto/uic3/baseline/previewwidgetbase.ui.4 tests/auto/uic3/baseline/qactivexselect.ui tests/auto/uic3/baseline/qactivexselect.ui.4 tests/auto/uiloader/baseline/batchtranslation.ui tests/auto/uiloader/baseline/config.ui tests/auto/uiloader/baseline/finddialog.ui tests/auto/uiloader/baseline/formwindowsettings.ui tests/auto/uiloader/baseline/helpdialog.ui tests/auto/uiloader/baseline/listwidgeteditor.ui tests/auto/uiloader/baseline/mainwindowbase.ui tests/auto/uiloader/baseline/newactiondialog.ui tests/auto/uiloader/baseline/newform.ui tests/auto/uiloader/baseline/orderdialog.ui tests/auto/uiloader/baseline/paletteeditor.ui tests/auto/uiloader/baseline/paletteeditoradvancedbase.ui tests/auto/uiloader/baseline/phrasebookbox.ui tests/auto/uiloader/baseline/plugindialog.ui tests/auto/uiloader/baseline/previewwidget.ui tests/auto/uiloader/baseline/previewwidgetbase.ui tests/auto/uiloader/baseline/qfiledialog.ui tests/auto/uiloader/baseline/qtgradientdialog.ui tests/auto/uiloader/baseline/qtgradienteditor.ui tests/auto/uiloader/baseline/qtgradientviewdialog.ui tests/auto/uiloader/baseline/saveformastemplate.ui tests/auto/uiloader/baseline/statistics.ui tests/auto/uiloader/baseline/stringlisteditor.ui tests/auto/uiloader/baseline/tabbedbrowser.ui tests/auto/uiloader/baseline/tablewidgeteditor.ui tests/auto/uiloader/baseline/translatedialog.ui tests/auto/uiloader/baseline/treewidgeteditor.ui tests/auto/uiloader/baseline/trpreviewtool.ui tests/auto/windowsmobile/test/test.pro tests/auto/xmlpatternsdiagnosticsts/test/tst_xmlpatternsdiagnosticsts.cpp tools/doxygen/config/header.html tools/doxygen/config/phonon.doxyfile tools/installer/nsis/opensource.ini tools/linguist/phrasebooks/polish.qph tools/linguist/shared/cpp.cpp tools/linguist/shared/ts.dtd tools/qdoc3/test/assistant.qdocconf tools/qdoc3/test/designer.qdocconf tools/qdoc3/test/linguist.qdocconf tools/qdoc3/test/qmake.qdocconf tools/qdoc3/test/qt-build-docs.qdocconf tools/qdoc3/test/qt-inc.qdocconf tools/qdoc3/test/qt.qdocconf tools/qvfb/qtopiakeysym.h tools/qvfb/qvfbx11view.cpp tools/qvfb/qvfbx11view.h tools/qvfb/x11keyfaker.cpp tools/xmlpatterns/main.cpp tools/xmlpatterns/main.h tools/xmlpatterns/qcoloringmessagehandler_p.h tools/xmlpatterns/qcoloroutput.cpp tools/xmlpatterns/qcoloroutput_p.h translations/assistant_de.ts translations/qt_ar.ts translations/qt_da.ts translations/qt_de.ts translations/qt_fr.ts translations/qt_ja_JP.ts translations/qt_ru.ts translations/qt_uk.ts translations/qt_zh_CN.ts util/qlalr/compress.cpp util/qlalr/cppgenerator.cpp util/qlalr/dotgraph.cpp util/qlalr/grammar.cpp util/qlalr/lalr.cpp util/qlalr/main.cpp util/qlalr/parsetable.cpp util/qlalr/recognizer.cpp
| | * Fix regression in clip path calculation for QGraphicsWidget.Alexis Menard2009-08-181-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes a regression when computing the clip path for a QGraphicsWidget that clip its children to its shape. The clip path cache use the bounding rect which has a null width and height the very first time on a QGraphicsWidget. This might happen as well for any item that have a null width and height (e.g. QGraphicsRectItem before you set the rect). We should do better in mainline by refactoring this clip path cache and calling it in prepareGeometryChange which should be called when you update the shape and the boundingRect of the item. Do we really need also in 4.6/mainline the clip path as it is now? This should be investigate also. The auto-test cover the problem so we can use it after for refactoring the cached clip path. Task-number: 257232 Reviewed-by: andreas Reviewed-by: bnilsen
| | * Update license headers.Jason McDonald2009-08-1135-35/+35
| | | | | | | | | | | | Reviewed-by: Trust Me
| * | Remove warningJan-Arve Sæther2009-08-241-2/+1
| | |
* | | Fix Qt::ClickFocus for QGraphicsProxyWidget.Andreas Aardal Hanssen2009-08-241-1/+7
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes click-focus for the Embedded Dialogs demo and the Pad Navigator demo. In Qt 4.6, the behavior of the spontaneous-bit in events has changed. This has happened in a number of submits that also modify Graphics View to have the correct behavior. Somewhere on the line, the spontaneous bit has been reset, preventing QApplicationPrivate's ClickFocus handling to kick in. This again causes the Embedded Dialogs demo to not give focus to widgets that are clicked. This fix is not likely to be 100% correct. What it does is ensure that the spont-bit survives a call to qt_sendSpontaneousEvent (as this bit is for some reason reset at the end of QApplicationPrivate::notify_helper), and this fixes the most apparent regression in ClickFocus handling. Pending closer review. The fix includes an autotest that should be kept if the fix is reverted. Reviewed-by: bnilsen
* | Add missing license headers and header guards.Jason McDonald2009-08-214-5/+158
| | | | | | | | Reviewed-by: Trust Me
* | Fix obsolete license headers.Jason McDonald2009-08-214-8/+8
| | | | | | | | Reviewed-by: Trust Me
* | Fixed compile error.axis2009-08-211-1/+1
| |
* | Merge branch 'master' of git@scm.dev.nokia.troll.no:qt/qt into master-s60axis2009-08-217-39/+436
|\ \ | | | | | | | | | | | | | | | | | | Conflicts: src/gui/graphicsview/qgraphicsitem.cpp src/gui/kernel/qwidget.cpp src/gui/kernel/qwidget_p.h
| * | Cleanup after wrong merge.Bjørn Erik Nilsen2009-08-211-2/+1
| | | | | | | | | | | | | | | | | | ExtraGestures is not in the master branch, and gestures has not been touched in the kinetic-graphicseffect branch so this must be a result of a wrong merge at some point. Remove it.
| * | Merge commit 'qt/master' into kinetic-graphicseffectBjørn Erik Nilsen2009-08-2113-149/+4081
| |\ \ | | | | | | | | | | | | | | | | Conflicts: src/gui/graphicsview/graphicsview.pri
| * \ \ Merge commit 'qt/master-stable' into kinetic-graphicseffectBjørn Erik Nilsen2009-08-203-9/+12
| |\ \ \ | | | | | | | | | | | | | | | | | | | | Conflicts: src/gui/graphicsview/qgraphicsscene.cpp
| * | | | Delete existing graphics effect when setting a new one.Bjørn Erik Nilsen2009-08-201-7/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before we had to delete the existing effect before setting a new one (in the same fashion as QLayout behaves). This feels wrong and we should automatically delete it instead.
| * | | | Add support for graphics effects on QWidget.Bjørn Erik Nilsen2009-08-201-0/+3
| | | | |
| * | | | Make QGraphicsItem::effectiveBoundingRect/sceneEffectiveBoundingRect internal.Bjørn Erik Nilsen2009-08-205-12/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These shouldn't be in public API unless someone ask for it. The same information is accessible via public functions in QGraphicsEffect and QGraphicsEffectSource, so they are only convenience functions after all.
| * | | | Compile graphics effect on all platforms.Bjørn Erik Nilsen2009-08-202-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | Looks like we need to include graphicseffect.h even though it should have been included by the _p.h.
| * | | | Move QGraphicsEffect from src/gui/graphicsview to src/gui/effects.Bjørn Erik Nilsen2009-08-196-1368/+4
| | | | |
| * | | | Merge commit 'qt/master' into kinetic-graphicseffectBjørn Erik Nilsen2009-08-1920-48/+51
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/gui/graphicsview/qgraphicsitem_p.h
| * \ \ \ \ Merge commit 'qt/master' into kinetic-graphicseffectBjørn Erik Nilsen2009-08-1744-193/+199
| |\ \ \ \ \
| * \ \ \ \ \ Merge commit 'qt/master' into kinetic-graphicseffectBjørn Erik Nilsen2009-08-0715-533/+1358
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/gui/graphicsview/graphicsview.pri src/gui/graphicsview/qgraphicsitem.cpp src/gui/graphicsview/qgraphicsitem.h src/gui/graphicsview/qgraphicsitem_p.h src/gui/graphicsview/qgraphicsscene.cpp tests/auto/auto.pro
| * | | | | | | Make sure caches are invalidated whenever a QGraphicsItem changes visual ↵Bjørn Erik Nilsen2009-08-071-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | appearance. QGraphicsScenePrivate::markDirty does not invalidate the cache, it only schedules a repaint. QGraphicsItem::update however, invalidates the cache and then calls markDirty. Reviewed-by: Andreas
| * | | | | | | Fixes GCC compiler warning.Bjørn Erik Nilsen2009-08-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | warning: suggest parentheses around assignment used as truth value
| * | | | | | | Notify QGraphicsEffect whenever the source is invalidated.Bjørn Erik Nilsen2009-08-073-5/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In case of caching, the effect must be notified whenever the source has been invalidated; otherwise the cached pixmap will not be up-to-date. Auto-test included.
| * | | | | | | Add ChangeFlags to QGraphicsEffect and pass flags to sourceChanged.Bjørn Erik Nilsen2009-08-073-13/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is way more flexible as it allows for extension in the future. Instead of having several virtual functions, which in most cases when re-implemented have to do exactly the same, we now have one virtual function which takes a ChangedFlags parameter do describe what kind of changes that occurred to the source.
| * | | | | | | Fix wrong transform when applying multiple QGraphicsEffects.Bjørn Erik Nilsen2009-08-063-17/+27
| | | | | | | |
| * | | | | | | Wrong caching of QGraphicsItem::childrenBoundingRect.Bjørn Erik Nilsen2009-08-061-14/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We cannot cache the bounding rect on the fly for children, because the bounding rect is mapped to the callee's local coordinate system. Auto-test included.
| * | | | | | | First round of documentation for QGraphicsEffect.Andreas Aardal Hanssen2009-08-053-20/+162
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Discovered some weaknesses in the API; next round is to discuss and fix these. Reviewed-by: TrustMe
| * | | | | | | Make tst_QGraphicsEffectSource::boundingRect happy.Bjørn Erik Nilsen2009-08-043-9/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We cannot modify the transformPtr directly because we might want to use the original transform later. The problem in this particular case was that we called source->pixmap() (which modified the transformPtr), then source->boundingRect(Qt::DeviceCoordinates) which in turn used wrong transform to map the bounding rect.
| * | | | | | | Make tst_QGraphicsEffectSource happy.Bjørn Erik Nilsen2009-08-041-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Doh, storing a stale pointer is not a good idea ;)
| * | | | | | | Toggling QGraphicsEffect's enabled property does not update the source.Bjørn Erik Nilsen2009-08-041-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Makes tst_QGraphicsEffect::draw happy.
| * | | | | | | More QGraphicsEffect API cleanup.Bjørn Erik Nilsen2009-08-043-30/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Removing some left over from previous experiments.
| * | | | | | | Artifacts when moving a child when the parent has a graphics effect.Bjørn Erik Nilsen2009-08-042-8/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We have to use the effectiveBoundingRect() when finding out which items to repaint within a specific area. However, we don't want items to be clickable on the shadow, so we shouldn't use effectiveBoundingRect for normal item-lookup. Solution to this is to only use effectiveBoundingRect() in the BSP (used by estimateTopLevels) and in drawSubtreeRecursive. Auto-test included.
| * | | | | | | Avoid painting on a null pixmap in QGraphicsShadowEffect.Bjørn Erik Nilsen2009-08-031-0/+2
| | | | | | | |
| * | | | | | | QGraphicsItem leave traces when removing graphics effect.Bjørn Erik Nilsen2009-08-032-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We have to update the view directly when removing an effect; otherwise we have no information about the effective bounding rect and only the item's bounding rect will be updated.
| * | | | | | | Fixes QGraphicsEffect offset bugs.Bjørn Erik Nilsen2009-07-312-4/+3
| | | | | | | |
| * | | | | | | Notify QGraphicsEffect about source bounding rect changes.Bjørn Erik Nilsen2009-07-315-4/+15
| | | | | | | |
| * | | | | | | Compile fix.Bjørn Erik Nilsen2009-07-301-0/+1
| | | | | | | |
| * | | | | | | Fix offset bug in QGraphicsShadowEffect.Bjørn Erik Nilsen2009-07-301-4/+19
| | | | | | | |
| * | | | | | | Make sure we don't create pixmaps that are bigger than the device rect.Bjørn Erik Nilsen2009-07-305-2/+41
| | | | | | | |
| * | | | | | | Prevent potential QGraphicsEffect crashes.Bjørn Erik Nilsen2009-07-301-10/+17
| | | | | | | |
| * | | | | | | Small optimization to QGraphicsEffectSource::boundingRect.Bjørn Erik Nilsen2009-07-291-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Don't bother asking for the childrenBoundingRect if the item has no children.