* explicitly init QSharedData in the ctor init list (g++ was warning about it)
* add some docu as to why we still need removeAllMatches
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=803039
-New RunnerManager class, it manages runners at high level
and gives a simple API for interfaces to use.
- AbstractRunners gains description, setIgnoredTypes, ignoredTypes methods.
Now runners can specify what SearchContext::Types they are not going to process.
- SearchContext tries shared data between the original context and any local context.
It doesn't have its own completer no more.
- SearchMatch has a new type of match, CompleterMatch. Instead of using a hard coded
completer in SearchContext
- Interface class on krunner has its own completer and other changes
done to accomodate the above changes in libplasma.
-A new configuration option blacklist for runnermanager and krunner
instead of the whitelist of krunner.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802903
* remove add*Match since they broke the pattern of usage (who owns the match? do you have to add it again? etc..)
* add addMatch to compliment addMatches for those runners that just ever have one match
* make the default SearchMatch type Possible rather than Exact (making Exact and Informational the exceptions, which matches usage patterns)
* const'ify the API a bit better
generally more performant, lower memory usage and clearer API having seen what is beign done in the runners. also makes it a bit easier to turn the Matches into a qt model
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=776931
(neat when optimizations reveal bugs: previously when we were always setting the match lists even when we got empty lists, this was masking the fact that we were never updating the matches when the search context was reset ... so there was always a period of time when there were stale matches pointing off into outerspace in the UI. and of course, if no engines returned anything .. booM! but once we were not responding to empty match lists this problem became very visible.)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=775180
Also adds a addMatchesTo(SearchContext) which encapsulates this code and makes it safe to delete matches on object deletion, preventing possible memory leaks on SearchContext destruction.
Finally, don't copy all the SearchMatches already registered for each thread-local copy as that's just unused and unecessary overhead.
BIC, though SC.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=773473
* differentiate between resetSearchTerm and just setSearchTerm (to be used with the above)
* remove the SearchContext ptr from SearchMatch's dptr as it isn't used; don't want to mislead people or waste memory
* more const correctness
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=764593