Commit Graph

21 Commits

Author SHA1 Message Date
Aleix Pol
24f7593788 Improve QAbstractItemModel integration in Plasma.Core QML components
Introduces QAbstractItemModel to QDeclarative when setting up
the plasma core components.

This way we don't have to cast to the type ourselves and produce proper
QML errors if the type is not correct. This happened with Plasma::SortProxyModel.

REVIEW: 106267
2012-08-29 17:35:56 +02:00
Aurélien Gâteau
91313b5eb5 Add notify signals for SortFilterModel.sourceModel and filterRegExp 2012-08-28 11:42:56 +02:00
Aurélien Gâteau
bb8eef7db1 Introduct mapRowToSource and mapRowFromSource
REVIEW: 105044
2012-05-29 17:42:11 +02:00
Marco Martin
f75cef4f87 document DataModel 2011-12-23 12:17:48 +01:00
Marco Martin
215306ee13 give the default models the get(row) function
some default components expect models to provide it
2011-11-25 18:48:42 +01:00
Aaron Seigo
b0783ce5f7 a slew of clean ups and improvements to the code
DataSource still needs to be made to not keep a private copy of all the data
2011-09-22 22:45:26 +02:00
Marco Martin
7c947d8e96 reset models in the proper way 2011-06-24 23:54:07 +02:00
Marco Martin
2abb295695 revert old deferred role update hack 2011-04-17 20:46:36 +02:00
Marco Martin
98396208dc FEATURE: sourceFilter to exclude certain sources
sourceFilter to exclude certain from the model with a regexp
2011-04-09 20:16:36 +02:00
Marco Martin
2a54c9c416 use the engine access in DeclarativeWidget
now DeclarativeWidget itself steals the scriptengine, so use it instead of having the hack there
2011-04-07 22:39:18 +02:00
Montel Laurent
9a07bb2f93 Use const ref 2011-04-03 15:29:54 +02:00
Marco Martin
45c6ac7dfb don't remapp all roles each time, keep the old ones, with the same role number/name mapping: avoids role shuffle after an update
svn path=/trunk/KDE/kdebase/runtime/; revision=1216034
2011-01-20 22:03:52 +00:00
Marco Martin
933b88e340 a new property for models: count (another thing badly missing from QML, where is necessary to hook it up to a view to figure out how many items there are)
svn path=/trunk/KDE/kdebase/runtime/; revision=1204004
2010-12-05 22:23:13 +00:00
Marco Martin
29f4ac0d99 propagate with signal sources removal, connection and disconnection
svn path=/trunk/KDE/kdebase/runtime/; revision=1194425
2010-11-08 23:07:25 +00:00
Marco Martin
befceb8dee massive change in DataSource:
* possible to connect multiple sources
* use a normal QMap instead of the quirky qdeclarativepropertymap
* DataModel can be connected to multiple sources as well
* possible to use them with dataengines such as activities and tasks where the first level keys are the "roles" themselves

(all examples in playground have to be adapted)

svn path=/trunk/KDE/kdebase/runtime/; revision=1194216
2010-11-08 10:27:36 +00:00
Marco Martin
0394675156 SortModel->SortFilterModel
svn path=/trunk/KDE/kdebase/runtime/; revision=1190655
2010-10-28 13:10:10 +00:00
Marco Martin
1b1ea1a1b3 export separately DataModel and SortModel
svn path=/trunk/KDE/kdebase/runtime/; revision=1190653
2010-10-28 13:06:40 +00:00
Marco Martin
a84b230ddc sortOrder/setSortOrder property
svn path=/trunk/KDE/kdebase/runtime/; revision=1190489
2010-10-27 21:19:03 +00:00
Marco Martin
ab064bedfa put the model into a QSortFilterProxyModel to mke possible to sort and filter trough a regular expression
svn path=/trunk/KDE/kdebase/runtime/; revision=1190082
2010-10-26 21:19:04 +00:00
Marco Martin
27bff00756 the previous way to have models didn't work for most engines:
some have many keys one for each item.
bind a new DataModel into QML that will be associated to a specific DataSource and a key pattern

an exact one like "items" of rss
or a partial regexp one like "KnowledgeBase-[\d]*" like the ocs engine

in this way is not necessary to change how those dataengine works and is possible to use them in QML without headaches

svn path=/trunk/KDE/kdebase/runtime/; revision=1189953
2010-10-26 13:18:19 +00:00
Marco Martin
7ee1ebf5ac a crazy experiment: if one of the dataitems is a QVariantList of QVariantMaps (like many dataengines, like rss, microblog, opendesktop...)
make it available as a QAbstractModel, so will be possible to categorize it
(considering to put it behind a qsortfilterproxymodel to make it easy to do filtering)

svn path=/trunk/KDE/kdebase/runtime/; revision=1189920
2010-10-26 12:01:59 +00:00