* return an instance of the NullEngine on engine loading failure; this way applets don't have to test for engine existence and can just assume something gets returned
* DataEngine::isValid() in case someone really cares to know whether they have a non-functional engine (e.g. the NullEngine)
svn path=/trunk/KDE/kdebase/workspace/lib/plasma/; revision=670900
* add the ability to limit the number of data sources in an engine; least used items drop off. the algorithm for this is pretty simplistic and not overly scalable, but that's something that can be fixed when we run into problems (e.g. setLimit(1000) or something silly =)
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=668927
* void addSource(DataSource* source): allows adding of DataSources directly; useful for more complex engines where setData would be inneficient and clumsy or just not powerful enough
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=667584
* make DataEngine take a QObject in the connect, making DataVisualization somewhere superfluous. unless it ends up doing something useful soon, DataVisualization as a class will be going away.
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=667167
* move DataSource::Data to DataEngine::Data; this means consumers of DataEngine have no need to know about DataSource as a class
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=666756
* queue updates so that multiple calls to setData don't result in a storm of updated signals
* some API cleanups, e.g. connect -> connectSource
* provide and install a ServiceType .desktop; this adds the X-EngineName QString symbol. maybe that's too generic.
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=666241