summaryrefslogtreecommitdiffstats
path: root/src/widgets/graphicsview/qgraphicsitem.cpp
Commit message (Collapse)AuthorAgeFilesLines
* QGraphicsTextItem: document that adjustSize can center/right align textGiuseppe D'Angelo2014-11-121-0/+1
| | | | | | | | | | | | | Unlike QTextEdit, there's no implicit width for a QGraphicsTextItem, meaning any rich text that is supposed to be centered or right aligned will not be unless the user explicitly sets the width. There's also another possibility: calling adjustSize() manually. Document that. Task-number: QTBUG-312 Change-Id: I83023269f4c63643e8224887efe2143dd1bb1908 Reviewed-by: Andy Shaw <andy.shaw@digia.com>
* QGraphicsItem: document that setOpacity(0) almost makes the item invisibleGiuseppe D'Angelo2014-11-111-2/+11
| | | | | | | | | This particular "feature" leaked into QtQuick1 back in the day. Still it was never documented in QGraphicsView. Task-number: QTBUG-18267 Change-Id: Ib5fb446015176f6e9b4095f6ec9030258cbd1ad4 Reviewed-by: Andreas Aardal Hanssen <andreas@hanssen.name>
* QGraphicsItem: clarify the documentation about caching modes and update()Giuseppe D'Angelo2014-11-071-2/+20
| | | | | | | | | | | | | | | | It is possible that Qt calls paint() several times for an item that has caching enabled, even without any explicit call to update(). There are various reasons why that is possible (memory pressure, item gets transformed, etc.); the important part is that 1) the user must not rely into "caching enabled" = "1 paint() call" 2) the user must always draw the same content from within paint(), unless update() was called before that call to paint(). Task-number: QTBUG-18410 Change-Id: I2c8d77e6e11aaceffc9a21003dd3f4cc46edd582 Reviewed-by: Venugopal Shivashankar <venugopal.shivashankar@digia.com> Reviewed-by: Andy Shaw <andy.shaw@digia.com>
* Doc: corrected wrong equivalent of obsolete QGraphicsItem::rotateNico Vertriest2014-11-031-1/+1
| | | | | | Task-number: QTBUG-39027 Change-Id: Icb5998a4e28edbc6952bc79d970c5ce6dbe57d69 Reviewed-by: Andreas Aardal Hanssen <andreas@hanssen.name>
* Produce more correct clip path for QGraphicsShapeItemLars Knoll2014-10-211-1/+1
| | | | | | | | | | | If no pen is set on the item, we can completely ignore the pen for the creation of the items shape. This both speeds up the creation of the shape and applying it as a clip mask as well as creating more correct results. Task-number: QTBUG-32846 Change-Id: I5f6f690256c71309713d8f746e67599af3088dd7 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* Update license headers and add new license filesMatti Paaso2014-09-241-19/+11
| | | | | | | | | - Renamed LICENSE.LGPL to LICENSE.LGPLv21 - Added LICENSE.LGPLv3 - Removed LICENSE.GPL Change-Id: Iec3406e3eb3f133be549092015cefe33d259a3f2 Reviewed-by: Iikka Eklund <iikka.eklund@digia.com>
* Merge remote-tracking branch 'origin/5.3' into devFrederik Gladhorn2014-07-011-1/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: mkspecs/qnx-x86-qcc/qplatformdefs.h src/corelib/global/qglobal.h src/network/socket/qnativesocketengine_winrt.cpp src/plugins/platforms/android/androidjniaccessibility.cpp src/plugins/platforms/windows/qwindowswindow.cpp Manually adjusted: mkspecs/qnx-armle-v7-qcc/qplatformdefs.h to include 9ce697f2d54be6d94381c72af28dda79cbc027d4 Thanks goes to Sergio for the qnx mkspecs adjustments. Change-Id: I53b1fd6bc5bc884e5ee2c2b84975f58171a1cb8e
| * Fix typo in QGraphicsTextItem::defaultTextColor() documentation.Mitch Curtis2014-06-101-1/+1
| | | | | | | | | | Change-Id: I6e255483d63a3024d9cbfe09a12f33d7fddf36c0 Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* | Add a new optimization flag to QGraphicsItem.Dimitar Asenov2014-03-311-4/+39
|/ | | | | | | | | | | | | | | | | | The new flag ItemContainsChildrenInShape is similar to the existing flag ItemClipsChildrenToShape. Setting the new flag makes QGraphicsScene assume that children are drawn within the shape of the current item but this is not enforced by clipping. When an application manually ensures this clipping boundary, setting the new flag removes the overhead of enforcing the clip with ItemClipsChildrenToShape, while still allowing other routines to behave more optimially by assuming children are within the shape of the current item. [ChangeLog][QtWidgets][QGraphicsItem] Added the ItemContainsChildrenInShape flag that enables using optimizations of ItemClipsChildrenToShape without the overhead of enforcing the clip. Change-Id: I5496fe1ca331b77fd51e0df8a3ace2b8e939eaf2 Reviewed-by: Andreas Aardal Hanssen <andreas@hanssen.name>
* QGraphicsSimpleTextItem: Fix drawing the outline with pen, when setKonstantin Ritt2014-03-171-1/+1
| | | | | | | | | | | QTextLayout's setAdditionalFormats() is expected to invalidate the shaping results, so that the layouting must be done *after* the format range(s) gets applied. Task-number: QTBUG-33475 Change-Id: I6b948fc179da915545a98ac36f2c20163947ec9e Reviewed-by: Andy Shaw <andy.shaw@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Fix high-dpi QGraphicsPixmapItem bounding rects.Morten Johan Sørvig2014-03-171-2/+2
| | | | | | | | | | | | | QGraphicsPixmapItem did not take the pixmaps devicePixelRatio into account when calculating the bounding rect. As a consequence, a 512x512@2x pixmap would get a 512x512 bounding size instead of the correct 256x256 bounding size. Task-number: QTBUG-37008 Change-Id: I266e418b7e5d92bf1d4c96bd9380a27708dc2b4a Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com> Reviewed-by: Andreas Aardal Hanssen <andreas@hanssen.name>
* correct send vs sent grammarDavid Fries2014-03-141-2/+2
| | | | | | | | Correct the tense of send vs sent in comments and documentation. Change-Id: I1c5ce9a7b1e49b8b0e8dcfde7d732e4c69acf73a Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* Extending the inputMethodQuery APIPaul Olav Tvete2014-02-151-1/+1
| | | | | | | | | | | | | | Currently, inputMethodQuery() only provides information about the current paragraph. On some platforms, such as Android, the input method needs information about the global cursor position, and more of the surrounding text. Some queries need to pass parameters. The current inputmethodQuery() implementation does not allow parameters to be passed. Changing this would require new or modified virtual functions, which is not possible until Qt 6. Therefore, a completely new mechanism is needed. Change-Id: Ic64fd90198ade70aa0fa6fa5ad3867dfa7ed763c Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Merge remote-tracking branch 'origin/release' into stableFrederik Gladhorn2013-12-051-1/+4
|\ | | | | | | | | | | | | | | | | Conflicts: configure mkspecs/macx-ios-clang/features/default_post.prf tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp Change-Id: Iaba97eed2272bccf54289640b8197d40e22f7bf5
| * Fix style animations to stop when the animation target is hiddenJ-P Nurmi2013-12-041-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | QStyleAnimation automatically stopped for hidden QWidgets, but didn't know anything about QQuickItems and kept animating regardless of their visibility. This change ensures that style animations stop as soon as the animation target no longer accepts the animation update eg. it has become hidden or the window was minimized. Task-number: QTBUG-35319 Change-Id: Ie48191fd918c626c0d9afe2e7d2390c495efb071 Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* | Merge remote-tracking branch 'origin/release' into stableSimon Hausmann2013-11-281-1/+4
|\| | | | | | | Change-Id: I860404a1ef18c88a968a9eded405bb67967047b9
| * Fix for co-existence of QtDeclarative and QtQmlSimon Hausmann2013-11-261-1/+4
| | | | | | | | | | | | | | | | | | | | | | As a follow-up to commit 2f87fde9bb4bad6787101c0d135419b350b201a5, we also need to change "hack" in the QGraphicsItem and QWidget destructor for early item destruction to support the _qml1 variant of the QObject destroyed callback. Task-number: QTBUG-35006 Change-Id: I65e37b1e9ddd8d14267aaba024408611b8cd3d77 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* | Report input method hints for QGraphicsTextItemPaul Olav Tvete2013-11-211-1/+3
|/ | | | | | | Task-number: QTBUG-34893 Change-Id: Iabf3b8be4896dadf07e4440f2cffc40aede4a85b Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* Doc: Adding mark-up to boolean default values.Jerome Pasion2013-10-081-39/+39
| | | | | | | | | | | | | | | | | Default values should have mark-up to denote that they are code. This commit changes: -"property is true" to "property is \c true". -"Returns true" to "Returns \c true". -"property is false" to "property is \c false". -"returns true" to "returns \c true". -"returns false" to "returns \c false". src/3rdparty and non-documentation instances were ignored. Task-number: QTBUG-33360 Change-Id: Ie87eaa57af947caa1230602b61c5c46292a4cf4e Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* Fix constant false comparison of out-of-range enumsThiago Macieira2013-09-071-3/+3
| | | | | | | | | | QGraphicsItem::GraphicsItemFlag is unsigned, so a comparison to -1 is always false. qgraphicsitem.cpp:847:39: error: comparison of constant -1 with expression of type 'QGraphicsItem::GraphicsItemFlag' is always false [-Werror,-Wtautological-constant-out-of-range-compare] Change-Id: I3fc59b777d09060dd34e81f51ed8bdf41354a0f1 Reviewed-by: Andreas Aardal Hanssen <andreas@hanssen.name>
* un-confuse lupdate: remove excess brace in dead codeOswald Buddenhagen2013-08-121-1/+0
| | | | | Change-Id: I7b81121b559f18446c4e546ad4f00cb4a592ca7f Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Fix double transform for items ignoring parent transformations.Andreas Aardal Hanssen2013-08-051-3/+8
| | | | | | | | | | | | | | | | | | Previously, the topmost untransformable's scene transform, which includes the item's position and local transformation, was used to determine the item's anchoring position. This position was then passed on to be multiplied by the item's transform again. This works fine for toplevel untransformable items that don't have any transform set at all, but those who do would have their transforms applied twice - one to determine the anchoring position, and again to transform the item itself. Since only translation transformations can affect the first operation (the anchoring pos), this bug only applies to items that set ItemIgnoresTransformations and use a local transform that includes translation. Task-number: QTBUG-21618 Change-Id: I772d52d59dfd9f242d0140632a87e9c68dfe0ea1 Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
* Fix typo in setGraphicsEffect() occurrences.Mitch Curtis2013-07-111-1/+1
| | | | | Change-Id: Iaca926ab47670616b55b0ab7ab735710237a5df8 Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* QGV: fix items not to be selected on right mouse button releaseJ-P Nurmi2013-05-141-1/+1
| | | | | | | Task-number: QTBUG-30990 Change-Id: I421d9169b592da2b468eceb9df4f3f7c6a06e8d6 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Andreas Aardal Hanssen <andreas@hanssen.name>
* Fix typo in QGraphicsItem documentation.Mitch Curtis2013-05-131-2/+2
| | | | | Change-Id: I69e7be75ec8164b81c2cd64fc0d4b475495a3db9 Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* Merge remote-tracking branch 'gerrit/release' into stableSamuel Rødal2013-03-211-9/+0
|\ | | | | | | | | | | | | | | | | | | | | | | Conflicts: configure mkspecs/features/qt_module_headers.prf mkspecs/features/qt_tool.prf src/angle/angle.pro src/tools/bootstrap/bootstrap.pro tests/auto/widgets/kernel/qwidget/tst_qwidget.cpp Change-Id: Ide5759fe419a50f1c944211a48f7c66f662684e0
| * Don't call updateAccessibility from graphicsviewJan Arve Saether2013-03-151-9/+0
| | | | | | | | | | | | | | | | | | | | Graphics items are not accessible anyway, so it doesn't make much sense. Task-number: QTBUG-30169 Change-Id: Id10b0897bce88d9b91db84609a09495aac41b0b4 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* | Fix license headers stating QtGui for QtWidgets files.Jake Petroules2013-03-191-1/+1
| | | | | | | | | | Change-Id: I0ca49e3e1f9f603f0b0f7f3553e854b871efe303 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-03-051-2/+2
|\| | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: configure qmake/generators/mac/pbuilder_pbx.cpp src/corelib/kernel/qtimerinfo_unix.cpp src/plugins/platforms/cocoa/qcocoabackingstore.mm src/plugins/platforms/cocoa/qcocoawindow.mm src/plugins/platforms/windows/qwindowswindow.cpp src/plugins/platforms/xcb/qglxintegration.cpp Change-Id: I8d125fe498f5304874e6976b53f588d3e98a66ac
| * Fix some punctuation errors.Mitch Curtis2013-02-271-2/+2
| | | | | | | | | | Change-Id: I6aa2ad2b506466fbef6a22380d151988930807c9 Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-02-181-0/+2
|\| | | | | | | | | | | | | Conflicts: src/widgets/styles/qmacstyle_mac.mm Change-Id: If8326db9e7da3cbf45dbf7475fdff9915c7723b1
| * Fix crash in somewhat faulty QGraphicsProxyWidget unit test.Andreas Aardal Hanssen2013-02-181-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The crash is deep inside QGraphicsSceneIndex, which calls boundingRect() on the item that is being destroyed. The vtable is busted, resulting in a pure virtual function call. There's a more proper fix for this lying around somewhere but in this particular case we can get the test to not crash by guarding based on whether the item has a cursor set. This also happens to speed up QGraphicsItem destruction a bit so I figured it's a win-win situation to fix it. This case will still crash if the item actually had a cursor set but that makes the case even more narrow. Generally speaking, creating objects partially on the stack and partially on the heap, mixing parent/child relationships and then deleting one of the heap objects is quite sketchy and I doubt it happens much outside of this unit test. Change-Id: I25393d2cafb1256269ab6681519bd554cc380bfd Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-01-241-5/+7
|\| | | | | | | | | | | | | Conflicts: src/plugins/platforms/windows/qwindowsdialoghelpers.cpp Change-Id: I4ca87d44129fa5c1d8541cd58b8d62bc69080688
| * Make sure QGraphicsItem notifies changes to focusScopeItem.Andreas Aardal Hanssen2013-01-241-5/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A glitch in QGraphicsItem's logic made it update the focusScopeItem pointer, but fail to notify the change to QDeclarativeItem through the d_ptr->focusScopeItemChange() virtual function, hindering QDeclarativeItem from emitting focusChanged() correctly for focus scopes that do not have focus. Two lines were moved, and a comment updated to reflect the reason why the "return" is needed at this point. It's clear that the calls to focusScopeItemChange() are unrelated to the return. Task-number: QTBUG-29260 Change-Id: I12ba9161b16d34c3689401a92c86d2047989f7bd Reviewed-by: Andreas Aardal Hanssen <andreas@hanssen.name> Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com> Reviewed-by: Alan Alpert <aalpert@rim.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-01-221-1/+1
|\| | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/io/qsavefile_p.h src/corelib/tools/qregularexpression.cpp src/gui/util/qvalidator.cpp src/gui/util/qvalidator.h Change-Id: I58fdf0358bd86e2fad5d9ad0556f3d3f1f535825
| * Update copyright year in Digia's license headersSergio Ahumada2013-01-181-1/+1
| | | | | | | | | | Change-Id: Ic804938fc352291d011800d21e549c10acac66fb Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* | Merge branch 'stable' into devFrederik Gladhorn2013-01-041-21/+10
|\| | | | | | | | | | | | | | | | | | | | | Conflicts: examples/widgets/painting/shared/shared.pri src/corelib/tools/qharfbuzz_p.h src/corelib/tools/qunicodetools.cpp src/plugins/platforms/windows/accessible/qwindowsaccessibility.cpp src/plugins/platforms/windows/qwindowsfontdatabase.cpp Change-Id: Ibc9860abf570e5ce8b052fb88feb73ec35e64bd3
| * Remove unused function _q_qgraphicsItemSetFlagThiago Macieira2012-12-291-18/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clang reports: graphicsview/qgraphicsitem.cpp:1779:13: error: function '_q_qgraphicsItemSetFlag' is not needed and will not be emitted [-Werror,-Wunneeded-internal-declaration] static void _q_qgraphicsItemSetFlag(QGraphicsItem *item, QGraphicsItem::GraphicsItemFlag flag, ^ According to the public Git history, in Qt 4.5.1 this function was already unused. The only reason it wasn't caught so far is that it is recursive: it calls itself. So it is used... by itself. Change-Id: I6fc6b33cb314b845525dc9315d0ad742e113d5cd Reviewed-by: Andreas Aardal Hanssen <andreas@hanssen.name> Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
| * Fix focusproxy-relayed crash in QGraphicsItem destructor.Andreas Aardal Hanssen2012-12-171-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Makes tst_qgraphicsitem::tst_focusProxyDeletion not crash. valgrind reported the error when running tst_qgraphicsitem. The crash was very real; when deleting an item that has another item as a focus proxy, the proxy still had a reference to the deleted item's focusProxy pointer. I'm not a huge fan of whitebox testing but thought this crash justifies a modification of the test to make it fail, instead of just passing silently with a warning only given by valgrind and friends. FTR the reason the test doesn't crash hard is that the memory is freed but not reused within the scope of the test. So the access to the pointer d_ptr->focusProxy succeeds, it just accesses memory that might as well have been reclaimed. But this is quite undefined... Task-number: QTBUG-28321 Change-Id: I2624631f5e5c2a8aa8bd4efe1fc128eba6c61f56 Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
| * Clear focus of GraphicsItem focus scopes and their children.Andrew den Exter2012-12-041-3/+9
| | | | | | | | | | | | | | | | | | | | A focus scope has effective focus if one of its children is the focus item, clearFocus() should remove effective focus from an item and its children not just from the focus item. Task-number: QTBUG-28328 Change-Id: I62a292eff000151e50b2f5221e22f326a380fc3a Reviewed-by: Martin Jones <martin.jones@jollamobile.com>
* | Deactivating an inactive panel no longer causes unwanted deactivation.Andreas Aardal Hanssen2012-12-171-10/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QGraphicsItem::setActive() is by design not guarded against calls that do not change the current activation state of the item (e.g., calling setActive(true) on an active item or calling setActive(false) on an inactive item). This is to ensure that it's possible to set explicit activation state on items, either before they are added to a scene, or while the scene itself is inactive. Before this fix, calling setActive(false) on a panel item that is not currently active would by accident clear activation from any other panel that might have focus. After this fix, activation is only cleared if the item setActive() was called on itself is the active panel, or is the panel that will regain activation once the scene is reactivated. Task-number: QTBUG-28544 Change-Id: Ic4752f1e4400f9a0660bc968834747610212bb52 Reviewed-by: Bjørn Erik Nilsen <post@bjoernen.com> Reviewed-by: Andreas Aardal Hanssen <andreas@hanssen.name> Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
* | Repair QGraphicsWidget focus chain when used with ItemIsPanel.Andreas Aardal Hanssen2012-12-071-9/+40
|/ | | | | | | | | | | | | | | | | Add handling of the focus chain to QGraphicsItem::setFlags(), so that the focus chain is repaired (panels pop out of the chain and non-panels merge back in) when the ItemIsPanel flag is toggled. Add handling focus chain to QGraphicsWidgetPrivate::fixFocusChainBeforeReparenting for panels. Before this fix, you must enable the ItemIsPanel flag before adding the item as a child to a parent panel, and you lose focus when using the tab key to focus around a panel after it has been reparented into another panel. Task-number: QTBUG-28187 Change-Id: I1d0d81a90697eaf715a8a337c8bf6c2159329e68 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* QGV: set QStyleOption::styleObject for graphics items & widgetsJ-P Nurmi2012-11-301-0/+8
| | | | | | | | | | | Certain QStyle code paths expect the style object to be set. This will avoid problems when QGraphicsItems/Widgets utilize QStyle for drawing. Even if things will not necessarily animate properly, such legacy code won't cause a crash at least. Change-Id: Ic77cb4ee9820d6c4ec92c7278fd87cb866f5a780 Reviewed-by: Andreas Aardal Hanssen <andreas@hanssen.name> Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Ensure subfocus is not reset to 0 when hiding a panel.Andreas Aardal Hanssen2012-11-261-12/+24
| | | | | | | | | | | | | | | | | | | When hiding any widget that is not a panel, it is correct to clear subfocus. In case clearFocus() has been called, the result is that focusItem() / focusWidget() points to 0, which is correct. Upon reactivation, nothing gains input focus. When changing focus, the following setSubFocus() call will ensure subfocus points to the new widget. When hiding a panel, however, it's essential that subfocus within that panel is not cleared, otherwise, when re-showing the panel, nothing will have focus, whereas the expected behavior is that focus is restored to the last item that had focus, i.e., the focusItem() a.k.a. subfocus widget. Task-number: QTBUG-22256 Change-Id: I84d849a505764e074e1369fef923cef1ad5c0b1e Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Fix sentences in QGraphicsItem documentation.Mitch Curtis2012-11-071-10/+10
| | | | | Change-Id: I5f86cdca53be103976017c83123e1ac80fcb8aa8 Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* De-inline some destructors in QtWidgetsMarc Mutz2012-11-061-0/+7
| | | | | | | | | | | | | | | | | | | | | | Destructors should be out-of-line so that the compiler doesn't generate one per translation unit. Apart from creating more work for the compiler, it can also lead to duplicated vtables if the dtor is the first virtual function (reimplementation), and all other virtuals are inline, too. Duplicate vtables then break RTTI. In addition, having virtual dtors de-inlined allows us to add code to them in a BC way. As a final argument, this change may lead to less code app-side, since a sequence of cross-DLL calls (to member variable dtors) is replaced by a single cross-DLL call to the new out-of-line dtor. Change-Id: Ifb8c4aa992c75d61ba9ac8de5ab41d1e96b0a0b1 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
* Make QPen default to 1-width non-cosmetic.Samuel Rødal2012-10-221-5/+5
| | | | | | | | | | | Use the Qt4CompatiblePainting render hint when painting with QPainter to treat default constructed QPens as cosmetic still. The NonCosmeticDefaultPen render hint gets documented as obsolete, since it was in any case not respected by the raster nor OpenGL paint engine. Change-Id: I04d910e9700baf7f13a8aac07a3633014bb9283e Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
* QGraphicsObject: handle QEvent::StyleAnimationUpdateJ-P Nurmi2012-10-171-0/+12
| | | | | Change-Id: I8545d6f26e2c2398e750b0b85ba87892a2e376ae Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
* Change copyrights from Nokia to DigiaIikka Eklund2012-09-221-24/+24
| | | | | | | | Change copyrights and license headers from Nokia to Digia Change-Id: If1cc974286d29fd01ec6c19dd4719a67f4c3f00e Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
* Doc: Remove references to the deprecated QGraphicsItemAnimationGeir Vattekar2012-09-111-5/+4
| | | | | | | | | Task-number: QTBUG-23711 Change-Id: I1c1ce049016d0bea03d43631493ed8d248162eee Reviewed-by: Qt Doc Bot <qt_docbot@qt-project.org> Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com> Reviewed-by: Andreas Aardal Hanssen <andreas@hanssen.name> Reviewed-by: Jason Barron <jason.barron@nokia.com>