Commit Graph

21 Commits

Author SHA1 Message Date
Marco Martin
3134f2a5bc fix the role mapping of some engines
by making sourceAdded a delayed connection, also add a long explanation why this is unfortunately needed
2011-11-18 16:19:34 +01:00
Marco Martin
7a325f4658 i_p suffix only for stuff not exported from qml
general rule:
if the header if from a class that will be made available as qml type, foo.h, otherwise foo_p.h
2011-11-01 19:27:55 +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
734d0e15df unfortunately this is still needed 2011-09-16 19:20:49 +02:00
Marco Martin
ccc5bf7b90 queued connection is not necessary anymore
all data is checked for possible roles now
2011-09-15 21:06:05 +02:00
Marco Martin
e18e08c2f1 don't cache empty sources 2011-09-15 21:05:06 +02:00
Marco Martin
d48888e7ac default to 0 interval (no polling) 2011-09-01 16:25:31 +02:00
Artur Duque de Souza
add8249568 Do not allow the adition of a source that is already connected
If you try to connect a source that is already connected, it should
return and not create a duplicate of that source.

Signed-off-by: Artur Duque de Souza <asouza@kde.org>
2011-04-24 19:18:14 -03:00
Marco Martin
96fdce66c1 make connection to connectedSourcesChanged queued
Changing to Qt::QueuedConnection delays setupData().
this makes the dataChanged() signal arrive to qml only when the full
batch of setData has been done.
this in turn doesn't let incomplete data arrive to the model, making an
incomplete role mapping.
should fix the QML version of Lionmail
CCMAIL:sebas@kde.org
2011-04-17 20:01:45 +02:00
Aaron Seigo
85bfb715ee disconnect sources we get data for but don't have a connected vis to 2011-04-12 22:13:23 +02:00
Aaron Seigo
3a72217fe3 delete service objects 2011-04-12 22:13:23 +02:00
Sebastian Kügler
a211718f6d fix signals 2011-02-24 21:32:10 +01:00
Marco Martin
ccf35dd608 don't emit dataChanged() when undesired data arrives
svn path=/trunk/KDE/kdebase/runtime/; revision=1216014
2011-01-20 20:29:00 +00:00
Marco Martin
8565829336 only set data that was explicitly connected to the dataengine
(some dataengines are a bit too exuberant in sending stuff, like the images of microblog)

svn path=/trunk/KDE/kdebase/runtime/; revision=1216008
2011-01-20 20:22:44 +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
0797009207 possible again to access to sources without the model
svn path=/trunk/KDE/kdebase/runtime/; revision=1194365
2010-11-08 20:50:09 +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
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
Laurent Montel
c90b506d8e Fix includes
svn path=/trunk/KDE/kdebase/runtime/; revision=1185374
2010-10-13 07:20:22 +00:00
Marco Martin
2a256d1e74 move the core, graphicslayouts and graphicswidgets imports in runtime
svn path=/trunk/KDE/kdebase/runtime/; revision=1185277
2010-10-12 19:51:57 +00:00