Plasma
Plasma::RunnerContext Class Reference
The RunnerContext class provides information related to a search, including the search term, metadata on the search term and collected matches. More...
#include <Plasma/RunnerContext>

Public Types | |
enum | Type { None = 0, UnknownType = 1, Directory = 2, File = 4, NetworkLocation = 8, Executable = 16, ShellCommand = 32, Help = 64, FileSystem = Directory | File | Executable | ShellCommand } |
Signals | |
void | matchesChanged () |
Public Member Functions | |
bool | addMatch (const QString &term, const QueryMatch &match) |
bool | addMatches (const QString &term, const QList< QueryMatch > &matches) |
bool | isValid () const |
QueryMatch | match (const QString &id) const |
QList< QueryMatch > | matches () const |
QString | mimeType () const |
QString | query () const |
void | reset () |
void | restore (const KConfigGroup &config) |
void | run (const QueryMatch &match) |
RunnerContext (RunnerContext &other, QObject *parent=0) | |
RunnerContext (QObject *parent=0) | |
void | save (KConfigGroup &config) |
void | setQuery (const QString &term) |
Type | type () const |
~RunnerContext () |
Detailed Description
The RunnerContext class provides information related to a search, including the search term, metadata on the search term and collected matches.
Definition at line 46 of file runnercontext.h.
Member Enumeration Documentation
Definition at line 51 of file runnercontext.h.
Constructor & Destructor Documentation
Plasma::RunnerContext::RunnerContext | ( | QObject * | parent = 0 |
) | [explicit] |
Definition at line 233 of file runnercontext.cpp.
Plasma::RunnerContext::RunnerContext | ( | RunnerContext & | other, | |
QObject * | parent = 0 | |||
) | [explicit] |
Copy constructor.
Definition at line 240 of file runnercontext.cpp.
Plasma::RunnerContext::~RunnerContext | ( | ) |
Definition at line 248 of file runnercontext.cpp.
Member Function Documentation
bool Plasma::RunnerContext::addMatch | ( | const QString & | term, | |
const QueryMatch & | match | |||
) |
Appends a match to the existing list of matches.
If you are going to be adding multiple matches, use addMatches instead.
- term the search term that this match was generated for.
- match the match to add
- Returns:
- true if the match was added, false otherwise.
Definition at line 353 of file runnercontext.cpp.
bool Plasma::RunnerContext::addMatches | ( | const QString & | term, | |
const QList< QueryMatch > & | matches | |||
) |
Appends lists of matches to the list of matches.
This method is thread safe and causes the matchesChanged() signal to be emitted.
- Returns:
- true if matches were added, false if matches were e.g. outdated
Definition at line 319 of file runnercontext.cpp.
bool Plasma::RunnerContext::isValid | ( | ) | const |
- Returns:
- true if this context is no longer valid and therefore matching using it should abort. Most useful as an optimization technique inside of AbstractRunner subclasses in the match method, e.g.:
while (.. a possibly large iteration) { if (!context.isValid()) { return; }
... some processing ... }
While not required to be used within runners, it provies a nice way to avoid unecessary processing in runners that may run for an extended period (as measured in 10s of ms) and therefore improve the user experience.
- Since:
- 4.2.3
Definition at line 313 of file runnercontext.cpp.
QueryMatch Plasma::RunnerContext::match | ( | const QString & | id | ) | const |
Retrieves a match by id.
- Parameters:
-
id the id of the match to return
- Returns:
- the match associated with this id, or an invalid QueryMatch object if the id does not eixst
Definition at line 387 of file runnercontext.cpp.
QList< QueryMatch > Plasma::RunnerContext::matches | ( | ) | const |
Retrieves all available matches for the current search term.
- Returns:
- a list of matches
Definition at line 379 of file runnercontext.cpp.
void Plasma::RunnerContext::matchesChanged | ( | ) | [signal] |
QString Plasma::RunnerContext::mimeType | ( | ) | const |
The mimetype that the search term refers to, if discoverable.
- Returns:
- QString() if the mimetype can not be determined, otherwise the mimetype of the object being referred to by the search string.
Definition at line 308 of file runnercontext.cpp.
QString Plasma::RunnerContext::query | ( | ) | const |
- Returns:
- the current search query term.
Definition at line 295 of file runnercontext.cpp.
void Plasma::RunnerContext::reset | ( | ) |
Resets the search term for this object.
This removes all current matches in the process.
Definition at line 252 of file runnercontext.cpp.
void Plasma::RunnerContext::restore | ( | const KConfigGroup & | config | ) |
Sets the launch counts for the associated match ids.
If a runner adds a match to this context, the context will check if the match id has been launched before and increase the matches relevance correspondingly. In this manner, any front end can implement adaptive search by sorting items according to relevance.
- Parameters:
-
config the config group where launch data was stored
Definition at line 400 of file runnercontext.cpp.
void Plasma::RunnerContext::run | ( | const QueryMatch & | match | ) |
Run a match using the information from this context.
The context will also keep track of the number of times the match was launched to sort future matches according to user habits
- Parameters:
-
match the match to run
Definition at line 427 of file runnercontext.cpp.
void Plasma::RunnerContext::save | ( | KConfigGroup & | config | ) |
- Parameters:
-
config the config group where launch data should be stored
Definition at line 413 of file runnercontext.cpp.
void Plasma::RunnerContext::setQuery | ( | const QString & | term | ) |
Sets the query term for this object and attempts to determine the type of the search.
Definition at line 283 of file runnercontext.cpp.
RunnerContext::Type Plasma::RunnerContext::type | ( | ) | const |
The type of item the search term might refer to.
- See also:
- Type
Definition at line 303 of file runnercontext.cpp.
The documentation for this class was generated from the following files: