summaryrefslogtreecommitdiffstats
path: root/src/widgets/itemviews
Commit message (Collapse)AuthorAgeFilesLines
* Take account of spanned items in QTreeView when dragging.Stephen Kelly2012-04-261-32/+9
| | | | | | | | | | Also remove some code which has been unused since it was introduced in 32182d107fa75e5619ecc91a81f50626f429ebe1 Task-number: QTBUG-25140 Change-Id: Ic7053d68d8200f845c1ae330342d27af7275e057 Reviewed-by: Tarja Sundqvist <tarja.sundqvist@digia.com> Reviewed-by: David Faure <faure@kde.org>
* Fix out of bounds use of QVector API.Stephen Kelly2012-04-172-6/+7
| | | | | | | | | | | This is a regression introduced by commit 22b7d211865c1505862627a2e65bcd063e314e45. Task-number: QTBUG-24965 Task-number: QTBUG-25140 Change-Id: I3f3bfe23af802444b078a29ee5565dd2bd24a34d Reviewed-by: David Faure <faure@kde.org>
* Merge remote-tracking branch 'origin/master' into api_changesLars Knoll2012-04-162-110/+94
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: configure src/corelib/io/qurl.cpp src/gui/kernel/qwindow.cpp src/tools/moc/generator.cpp src/widgets/kernel/qwidget_qpa.cpp src/widgets/styles/qstyle.h src/widgets/widgets/qtabbar.cpp tests/auto/corelib/codecs/utf8/tst_utf8.cpp Change-Id: Ia457228d6f684ec8184e13e8fcc9d25857b1751e
| * QHeaderView - remove some (nearly) unused span functionsThorbjørn Lund Martsum2012-04-112-21/+2
| | | | | | | | | | | | | | | | | | | | | | This removes a couple of functions. Two of them are unused and the last one has its (now) very simple implementation inlined in the only caller. The last function was called something with spans and we would like to get away from using the word 'span' since we no longer uses spans. Change-Id: Icef95166289d52bd958400cba70daceb6fa75913 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
| * QHeaderView - rename many spans classes and variablesThorbjørn Lund Martsum2012-04-112-94/+97
| | | | | | | | | | | | | | | | | | | | | | | | | | In (SHA) b800d8b94a7861ecf8853621f6556fca186fb5b7 the span model was replaced with a plain section model. The code however still has variables and classes called someting with spans which would be confusing for possible new readers of the code. This patch cleans up most of it. It only renames classes,functions and variables (and not any semantics or the public API). Change-Id: I6ceb068c7317223f0d8e37f8032197f518d0174c Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* | Merge remote-tracking branch 'origin/master' into api_changesOswald Buddenhagen2012-04-101-2/+0
|\| | | | | | | | | | | | | | | | | | | Conflicts: configure src/widgets/styles/qwindowsxpstyle.cpp tests/auto/gui/kernel/qwindow/qwindow.pro tests/auto/gui/kernel/qwindow/tst_qwindow.cpp Change-Id: I624b6d26abce9874c610c04954c1c45bc074bef3
| * Remove Qt5 TODO to change QListView semantics.Stephen Kelly2012-03-281-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The comment was written before Qt5 was planned, so it might have seemed like a good idea to change the semantic with Qt 5.0. However, as Qt5 is intended to be close to Qt4 in behaviour, this isn't really a 5.0 change. It can be done any time, but only optionally and while retaining backwards compatibility. Change-Id: I8c5c497d13a7ec6574e1cdb6bd411e8b28db876b Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com> Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com> Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
* | Remove the sectionAutoResize signal.Stephen Kelly2012-04-032-15/+2
| | | | | | | | | | | | | | | | | | Despite being documented, it was never emitted, and I can't find any use of it in the history either. Change-Id: If89b401004d14ef068ada6a4099bef9dc47936c9 Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* | Remove workaround for QComboBox not having a USER property.Stephen Kelly2012-03-282-8/+0
| | | | | | | | | | | | | | | | | | | | QComboBox does in fact have a user property since b1b87a73012342dc1619a8e907ea9954d59ca564. Change-Id: I24eb2ef267cec5d8a9f7348954b703fa6df04fa5 Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com> Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com> Reviewed-by: David Faure <faure@kde.org>
* | Add USER properties to QDateEdit and QTimeEdit.Stephen Kelly2012-03-282-24/+0
| | | | | | | | | | | | | | | | | | | | | | | | Both classes had such components before, but there were issues with the NOTIFY signal not being in the same class as the Q_PROPERTY. This patch solves that problem by using a signal of a different name. Task-number: QTBUG-15731 Change-Id: Ibc7ce4dba8a6b88c05d62a90e14d0101c5cd3082 Reviewed-by: Olivier Goffart <ogoffart@woboq.com> Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
* | Merge master into api_changesKent Hansen2012-03-271-1/+0
|\| | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/global/qisenum.h src/dbus/qdbusconnection_p.h src/widgets/kernel/qwidget.cpp tests/auto/other/qaccessibility/tst_qaccessibility.cpp Change-Id: I85102515d5fec835832cc20ffdc5c1ba578bd01d
| * Fix warnings in qtbase.Friedemann Kleint2012-03-241-1/+0
| | | | | | | | | | Change-Id: I981e08872440e35eb9bfad32b20543cfce8439c9 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* | Merge master into api_changesKent Hansen2012-03-235-36/+23
|\| | | | | | | Change-Id: I93551e4d13a1b0815b359b9415060e9089477db1
| * QHeaderView - minor fix to setDefaultSectionSizeThorbjørn Lund Martsum2012-03-201-2/+1
| | | | | | | | | | | | | | | | | | | | This fixes a situation where we (wrongly) assume that a section with size 0 is hidden. However a hidden section should be one that we have called hideSection (or setSectionHidden) on. Change-Id: Ic14eded2666022f27434dc55927323a74910549c Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
| * QHeaderView - minor fix to createSectionSpanThorbjørn Lund Martsum2012-03-201-1/+3
| | | | | | | | | | | | | | | | I am unsure if this is only theoretic - but if/when we have added sections here - we must ensure that we recalculate startpositions. Change-Id: I70bf55209f1a1a885cb49748b65218879bc68776 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
| * Remove QAccessibleEvent child parameter.Frederik Gladhorn2012-03-194-33/+19
| | | | | | | | | | | | | | | | | | This makes the api cleaner and generally the child should not be there. It is only sometimes more convenient not to create a QAccessibleInterface instance, so the functionallity is kept. Change-Id: I26018a6d3e0549f4d79856775b4167c5660e229d Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
* | Remove obsolete methods which forward to the base class.Stephen Kelly2012-03-222-22/+0
| | | | | | | | | | | | | | Change-Id: I7903d9664d52c6afeff800a95062c983a49703c6 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Reviewed-by: Sean Harmer <sh@theharmers.co.uk> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* | Remove non-const version of QTreeWidget method.Stephen Kelly2012-03-222-11/+0
| | | | | | | | | | | | | | | | | | The const version should be enough. Change-Id: Ia9cfa484f070e318c76f03df8d8220217a7100c2 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* | Remove obsolete internal functions.Stephen Kelly2012-03-222-27/+0
| | | | | | | | | | | | | | | | Change-Id: Ib0deecfe4bfc13504b98e6e1f3349f8c57b25314 Reviewed-by: Sean Harmer <sh@theharmers.co.uk> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* | Reserve a virtual method for use with a feature in Qt 5.1.Stephen Kelly2012-03-202-0/+12
| | | | | | | | | | | | | | | | | | | | The view will query the delegate for roles which are relevant to the particular delegate. For unrelated roles, the delegate will not have to repaint when the data changes. Change-Id: If8f1ba4c2bce7dbcf70de344b984aea1deca0edd Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com> Reviewed-by: David Faure <faure@kde.org>
* | QtWidgets: Cleanup Q3* itemsDebao Zhang2012-03-201-2/+2
| | | | | | | | | | | | | | | | | | Clear all the Q3* items away, expect QStyle::SH_Q3ListViewExpand_SelectMouseType which is still used by QTreeView. So simply removed Q3 from its name. Change-Id: Ia79f0283137b6751ba68791ae55df1d8bd7ea74a Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* | Merge master into api_changesKent Hansen2012-03-191-9/+10
|\| | | | | | | | | | | | | | | Conflicts: src/corelib/tools/qvector.h tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp Change-Id: I877256e95f3788e617437f4e9661a88047f38cd6
| * Fix bug showing folder icons for filesArnt Witteveen2012-03-171-9/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix an issue where the cache was updated with the folder icon, even though this is never used from the cache. This caused files to sometimes be shown with a folder icon: If a folder has an extension (e.g. a folder named 'folder.ext'), this means the folder icon will be written to the cache for the 'ext' extension, and from that point on all .ext files will be shown with the folder icon. The fix is to not save an icon in the cache for those cases where it will not be used from the cache anyway, by using the same condition for updating the cache as for reading it (which is in line 8 of the same function). Change-Id: I9ce8fca0718b2b62b9390fa64989acd54952a88e Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com> Reviewed-by: Robin Burchell <robin+qt@viroteck.net> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* | Merge master into api_changesKent Hansen2012-03-168-86/+171
|\| | | | | | | | | | | | | | | | | Conflicts: src/corelib/kernel/qmetatype.cpp src/gui/kernel/qplatformsurface_qpa.cpp tests/auto/corelib/tools/qtimeline/qtimeline.pro Change-Id: Iff3fff34eeeb06f02369767ddfce44cfde505178
| * Use pointers for QAccessibleEvent.Frederik Gladhorn2012-03-154-38/+34
| | | | | | | | | | | | | | | | | | At least on mac g++ badly wants to copy the event and cannot use the copy ctor. The sensible solution is thus to use pointers. This is in line with QCoreApplication::sendEvent. Change-Id: Icb58852be351ab04ffa17069989d7a07d4b377da Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
| * QTableView: call model->submit() on row changeMark Brand2012-03-151-0/+16
| | | | | | | | | | | | | | | | | | QTreeView already does this in the exact same way. It's necessary to call submit() so edit strategy OnRowChange in QSqlTableModel will work as expected. Change-Id: Ib430143e8a71f3b0bcd842fcc772cc7ee4525f0a Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
| * QHeaderView - documentation update. Prefer hideSection over 0-resize.Thorbjørn Lund Martsum2012-03-141-2/+4
| | | | | | | | | | | | | | | | There is a different behavior on 0 sections and hidden sections e.g with scrollbars. Normally people want to use hideSection. Change-Id: Id99de30ea46906bb4ef7720ed12d4ac9615c9743 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
| * QHeaderView - renaming functions in Qt5Thorbjørn Lund Martsum2012-03-145-46/+115
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch renames the functions in Qt5 according to the notes. It also renames resizeMode to be consistent. The old functions are both marked with both QT_DEPRECATED and '### Qt 6 - remove' All usage of the function within the qtbase are also changed to use the new functions. Change-Id: I9e05fa41d232e9ca43b945fcc949987017f3aedd Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
| * Add two (forgotten) since 5.0Thorbjørn Lund Martsum2012-03-141-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | SHA for QWidget::hasHeightForWidth change: 466107107a85e7211c4b7f77b36ec50625657061 SHA for QAbstractItemDelegate::destoryeditor change 15f253a46aa45e2a9fa1055799fa2768ba49b9a3 Change-Id: Ic7e38c15f62eef22ab95414fad6e7b6c9c7d4f59 Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* | itemview/itemmodels: make some constructors explicitMarc Mutz2012-03-076-6/+6
|/ | | | | | | | | This is a semi-automatic search, so I'm reasonably sure that all the exported ones have been caught. Change-Id: I38d7978f1fcf7513e802ed0042aa7a57a95b0060 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Remove the usage of deprecated qdoc macros.Casper van Donderen2012-03-0212-156/+156
| | | | | | | | | | | QDoc now has support for Doxygen style commands for italics, bold and list items. This change applies that change in QDoc to the actual documentation. Task-number: QTBUG-24578 Change-Id: I519bf9c29b14092e3ab6067612f42bf749eeedf5 Reviewed-by: Shane Kearns <shane.kearns@accenture.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Refactor the QPA dnd interface.Friedemann Kleint2012-02-292-2/+10
| | | | | | | | | | | | | | | - Give QPlatformDrag a synchronous drag() function returning the Qt::DropAction - Move the base functionality for asynchronous event handling to the platformsupport library as QBasicDrag (extendable base class handling drag icon and providing new virtuals) and QSimpleDrag (sample implementation for drag within the Qt application). - Change the Windows implementation accordingly. - Change XCB to be based on QBasicDrag. - Clean up QDragManager. Change-Id: I654f76f0e55a385ba189bd74f3ceaded6a8fe318 Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* QHeaderView - remove sectionCount variableThorbjørn Lund Martsum2012-02-292-69/+67
| | | | | | | | | | | | | A previous patch ensures that we have exactly one section in a Span. ( see SHA : b800d8b94a7861ecf8853621f6556fca186fb5b7 ) Therefore we no longer need the sectionCount variable. We have assess to it through the sectionSpan.count. To keep this patch quite simple the variable sectionCount has been changed to a function returning the count value. Change-Id: Ibc419eafa38ab64b08f93074cb6ae4b8518995f6 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* QHeaderView - minor cleanup in viewportEventThorbjørn Lund Martsum2012-02-271-9/+4
| | | | | | | | | | | | | | | | | This is an improvement to a previous fix with SHA e62e71162606fec134600955a89b7e0c34a7840b We actually never want to call resizeSections if the parent is hidden. Therefore we can both simplify and improve the code with this patch. When we do show/hide on parent then the visible status is updated before we get into this code. I have verified the patch on the code from: Task-number: QTBUG-14234 Change-Id: If7bfa3b3813c97b4a545e48423526e9cfe118de4 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Remove usage of deprecated QAbstractItemModel::setRoleNamesOlivier Goffart2012-02-271-5/+3
| | | | | Change-Id: If41bf0d6d50969156269c67a15e006d38edc8e1f Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Don't use deprecated QAbstractItemModel::reset()Olivier Goffart2012-02-274-4/+8
| | | | | Change-Id: Idf9971668a372a12ba319d954c35e157d8a08bd1 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Remove usage of deprecated QRect::uniteOlivier Goffart2012-02-261-1/+1
| | | | | Change-Id: I1920da995fde6ff2a8b2e3facddeee6e3c17b44c Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
* QHeaderView - fix setOffsetToSectionPosition a bitThorbjørn Lund Martsum2012-02-241-2/+2
| | | | | | | | | | | It might be silly to have sections with size 0 without using hideSection. Nevertheless we should still use the principle of least surprise. It does not make sense that hiding a row 'far' away should affect the semantics of setOffsetToSectionPosition on lower indexes. Change-Id: Iaf847eba2ea4d28fc7bcfe3a27d62f432f6f61e0 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* QHeaderView - change not needed if to Q_ASSERTThorbjørn Lund Martsum2012-02-241-2/+1
| | | | | | | | | | | | | | | This removes an if that should always be false. If it isn't false we had more logical indexes than sections. Unless visualIndices and logicalIndices are both 0-sized (meaning that visual and logical indexes are the same) then they better have exactly as many indexes as sectionCount. Otherwise there must be inconsistent data - some logicalindex would refer to non-existing visual sections or some visualindeces wouldn't be hit by logicalIndices. Change-Id: I2dc92f40895438d912bba20612131baf63df4fbe Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* QHeaderView - create a union to save some space.Thorbjørn Lund Martsum2012-02-211-3/+5
| | | | | | | | | Beside saving some space it also ensures a bit faster vector operations (remove and insert memcpy) - and lower the risk for a cache-miss. (Many operations seems to be about 5-10% faster in the benchmark). Change-Id: If8109e2146c25f642015906375dfbb449706ce8e Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* QHeaderview - many sections removed performance boost.Thorbjørn Lund Martsum2012-02-212-2/+23
| | | | | | | | | | | | | | | | | | | When the QHeaderView model rowCount is decreased then the headerview needs to remove some sections. If e.g swapSections had occured then qheaderview before this patch did a very slow removal by removing one section at a time and for each section it restored visual and logical indexes. By temporarily storing the logical index on the section we can reduce the execution time of this a lot. The old code is only faster when we remove one index (and is kept for that situation) There is a complexity in difference (and many factors in our qheaderview benchmark (the trunc part)) Change-Id: If45eab17fbca3364d458b004980570b5d013e4bd Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Widgets: Remove obsolete QGuiPlatformPlugin.Friedemann Kleint2012-02-171-5/+0
| | | | | | | | It has been superseeded by QPlatformTheme. Task-number: QTBUG-24204 Change-Id: I8c4131c7bfd8201e747984d772ed8042610192b8 Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Some small doc fixes, typos and removal of one incorrect paragraphAndy Shaw2012-02-172-5/+5
| | | | | | | | | The QTextStream paragraph that is removed referred to something that is incorrect. This was confirmed for Windows, Linux and Mac. Change-Id: Ibac8f82482f2060308b5b8485d6da228bdf52fe6 Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com> (cherry picked from commit 80cebfde10cf34dcc0777c24f1b3ff37cad20181)
* QHeaderView::moveSection performance boostThorbjørn Lund Martsum2012-02-152-245/+80
| | | | | | | | | | | | | | | | | | | | | | | | | | The patch also speeds up swapSections and hideSection a lot. It work by eliminating the Span. (That is forcing each 'Span' to have exactly one element) That saves a lot of loops since we can often lookup info fast - and/or change it fast. Since it is often a complexity change, it is difficult to put %-increase on. (The most used linear function is recalcSectionStartPos() - and it has a very low constant) However comparing with the new benchmark (2500 rows) swapSection, showHideSection and moveSection are about 20-40 factors faster. (Yes, it is a lot faster!) In the benchmark moveSection is about 300 factors faster. Beside being a far better model it is also far more simple. This fix partly solves: Task-number: QTBUG-19092 Change-Id: I8deeb9315276d15c68e8a27d5dcb8e0c0badf367 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Remove no longer needed ifdef Q_OS_WINCE.Andreas Holzammer2012-02-101-8/+0
| | | | | | | | There is now an implementation to qt_pixmapFromWinHICON. So use it for Windows CE too. Change-Id: Ie2f3cacd4be9209e33d49e53703c5abc95d98d09 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* QHeaderView - minor bug in visualIndexAtThorbjørn Lund Martsum2012-02-101-2/+2
| | | | | | | | | | | | | | | This fixes a minor bug in VisualIndex triggered when calling resizeSection with size 0 (but not hideSection). It is mostly cosmetics - however hopefully there will soon be a minor refactoring and there is really no need to make strange code to keep a semantic bug. However it is also doubtful to make a semantic change while refactoring. Change-Id: Ide153e421fd7a634062cb74867f4a49da4bf9cd6 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Replace Q_WS_WINCE against Q_OS_WINCE.Andreas Holzammer2012-02-091-1/+1
| | | | | | | | | | Window system Macros where deprecated so use Q_OS_WINCE for now. This code will need some refactoring, but this is the first step to it. Change-Id: I5876b80ee45d4b38ac63fc7d51e775dc70bbd485 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Make QAbstractItemView::itemOptions properly initialize a V4 optionGiuseppe D'Angelo2012-02-031-16/+15
| | | | | | | | | Since the QStyleOptionViewItem now contains the V4 fields, they must be properly initialized when calling itemOptions. Change-Id: I1346e6887d2d9a7eb29cc458fa4eede0b815001c Reviewed-by: Lars Knoll <lars.knoll@nokia.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Introduce QItemDelegate::destroyEditor virtual invoked at editor closeThorbjørn Lund Martsum2012-02-024-8/+28
| | | | | | | | | | | | | | This provides a stronger mechanism e.g when inheriting QItemDelegate. It makes some things much easier e.g avoid delete of an editor and maybe only delete depending on what the editor says itself. This introduces a new virtual function. Task-number: QTBUG-2299 Change-Id: I8410f8199775987dbacffd99e4c354fdadcdd21f Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* QHeaderView - Do not try to remove non-existing sectionThorbjørn Lund Martsum2012-02-011-1/+1
| | | | | | | | | The end parameter passed to removeSectionsFromSpans is off by one. removeSectionsFromSpans can currently handle/ignore it, but it is still wrong. Change-Id: I9148bd106504a37a5c8fd72928ab84c669eebcdb Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>