KDE 4.7 PyKDE API Reference
  • KDE's Python API
  • Overview
  • PyKDE Home
  • Sitemap
  • Contact Us
 

KUriFilterData Class Reference

from PyKDE4.kio import *

Detailed Description

This class is a basic messaging class used to exchange filtering information between the filter plugins and the application requesting the filtering service.

Use this object if you require a more detailed information about the URI you want to filter. Any application can create an instance of this class and send it to KUriFilter to have the plugins fill out all possible information about the URI.

On successful filtering you can use uriType() to determine what type of resource the request was filtered into. See KUriFilter.UriTypes for details. If an error is encountered, then KUriFilter.Error is returned. You can use errorMsg to obtain the error information.

The functions in this class are not reentrant.

Example

Here is a basic example of how this class is used with KUriFilter:

   KUriFilterData filterData (QLatin1String("kde.org"));
   bool filtered = KUriFilter.self()->filterUri(filterData);

If you are only interested in getting the list of preferred search providers, then you can do the following (requires KDE >= 4.5):

 KDE 4.5:
 KUriFilterData data;
 data.setData("<text-to-search-for>");
 data.setAlternateDefaultSearchProvider("google");
 bool filtered = KUriFilter.self()->filterUri(data, "kuriikwsfilter");

 KDE >= 4.6:
 KUriFilterData data;
 data.setData("<text-to-search-for>");
 data.setSearchFilteringOption(KUriFilterData.RetrievePreferredSearchProvidersOnly);
 bool filtered = KUriFilter.self()->filterSearchUri(data, KUriFilter.NormalTextFilter);

A class for exchanging filtering information.

Author:
Dawit Alemayehu <adawit at kde.org>


Enumerations

SearchFilterOption { SearchFilterOptionNone, RetrieveSearchProvidersOnly, RetrievePreferredSearchProvidersOnly, RetrieveAvailableSearchProvidersOnly }
UriTypes { NetProtocol, LocalFile, LocalDir, Executable, Help, Shell, Blocked, Error, Unknown }

Methods

 __init__ (self)
 __init__ (self, KUrl url)
 __init__ (self, QString url)
 __init__ (self, KUriFilterData other)
QString absolutePath (self)
QStringList allQueriesForSearchProvider (self, QString provider)
QString alternateDefaultSearchProvider (self)
QStringList alternateSearchProviders (self)
QString argsAndOptions (self)
bool checkForExecutables (self)
QString defaultUrlScheme (self)
QString errorMsg (self)
bool hasAbsolutePath (self)
bool hasArgsAndOptions (self)
QString iconName (self)
QString iconNameForPreferredSearchProvider (self, QString provider)
QStringList preferredSearchProviders (self)
QString queryForPreferredSearchProvider (self, QString provider)
KUriFilterSearchProvider queryForSearchProvider (self, QString provider)
KUriFilterData.SearchFilterOptions searchFilteringOptions (self)
QString searchProvider (self)
QString searchTerm (self)
QChar searchTermSeparator (self)
bool setAbsolutePath (self, QString abs_path)
 setAlternateDefaultSearchProvider (self, QString provider)
 setAlternateSearchProviders (self, QStringList providers)
 setCheckForExecutables (self, bool check)
 setData (self, KUrl url)
 setData (self, QString url)
 setDefaultUrlScheme (self, QString a0)
 setSearchFilteringOptions (self, KUriFilterData.SearchFilterOptions options)
QString typedString (self)
KUrl uri (self)
KUriFilterData.UriTypes uriType (self)

Method Documentation

__init__ (   self )

Default constructor.

Creates a UriFilterData object.

__init__ (  self,
KUrl  url
)

Creates a KUriFilterData object from the given string.

Parameters:
url  is the string to be filtered.

__init__ (  self,
QString  url
)

Creates a KUriFilterData object from the given string.

Parameters:
url  is the string to be filtered.

__init__ (  self,
KUriFilterData  other
)

Copy constructor.

Creates a KUriFilterData object from another KURIFilterData object.

Parameters:
other  the uri filter data to be copied.

QString absolutePath (   self )

Returns the absolute path if one has already been set.

Returns:
the absolute path, or QString()

See also:
hasAbsolutePath()

QStringList allQueriesForSearchProvider (  self,
QString  provider
)

Returns all the query urls for the given search provider.

Use this function to obtain all the different queries that can be used for the given provider. For example, if a search engine provider named "foobar" has web shortcuts named "foobar", "foo" and "bar", then this function, unlike queryForPreferredSearchProvider, will return a a query for each and every web shortcut.

See also:
queryForPreferredSearchProvider
Since:
4.6

QString alternateDefaultSearchProvider (   self )

Returns the search provider to use when a default provider is not available.

This function returns an empty string if setAlternateDefaultSearchProvider was not called to set the default search provider to be used when none has been chosen by the user through the search configuration module.

See also:
setAlternateDefaultSearchProvider
Since:
4.5

QStringList alternateSearchProviders (   self )

Returns the list of alternate search providers.

This function returns an empty list if setAlternateSearchProviders was not called to set the alternate search providers to be when no preferred providers have been chosen by the user through the search configuration module.

See also:
setAlternatteSearchProviders
See also:
preferredSearchProviders
Since:
4.5

QString argsAndOptions (   self )

Returns the command line options and arguments for a local resource when present.

Returns:
options and arguments when present, otherwise QString()

bool checkForExecutables (   self )

Returns:
true if the filters should attempt to check whether the supplied uri is an executable. False otherwise.

QString defaultUrlScheme (   self )

Returns the default protocol to use when filtering potentially valid url inputs.

By default this function will return an empty string.

See also:
setDefaultUrlScheme
Since:
4.6

QString errorMsg (   self )

Returns an error message.

This functions returns the error message set by the plugin whenever the uri type is set to KUriFilterData.ERROR. Otherwise, it returns a NULL string.

Returns:
the error message or a NULL when there is none.

bool hasAbsolutePath (   self )

Checks whether the supplied data had an absolute path.

Returns:
true if the supplied data has an absolute path

See also:
absolutePath()

bool hasArgsAndOptions (   self )

Checks whether the current data is a local resource with command line options and arguments.

Returns:
true if the current data has command line options and arguments

QString iconName (   self )

The name of the icon that matches the current filtered URL.

This function returns a null string by default and when no icon is found for the filtered URL.

QString iconNameForPreferredSearchProvider (  self,
QString  provider
)

Returns the icon associated with the given preferred search provider.

You can use this function to obtain the icon names associated with the preferred search providers returned by preferredSearchProviders.

See also:
preferredSearchProviders
Since:
4.5

QStringList preferredSearchProviders (   self )

Returns a list of the names of preferred or available search providers.

This function returns the list of providers marked as preferred whenever the input data, i.e. typedString, is successfully filtered.

If no default search provider has been selected prior to a filter request, this function will return an empty list. To avoid this problem you must either set an alternate default search provider using setAlternateDefaultSearchProvider or set one of the SearchFilterOption flags if you are only interested in getting the list of providers and not filtering the input.

Additionally, you can also provide alternate search providers in case there are no preferred ones already selected.

You can use queryForPreferredServiceProvider to obtain the query associated with the list of search providers returned by this function.

See also:
setAlternateSearchProviders
See also:
setAlternateDefaultSearchProvider
See also:
setSearchFilteringOption
See also:
queryForPreferredServiceProvider
Since:
4.5

QString queryForPreferredSearchProvider (  self,
QString  provider
)

Returns the web shortcut url for the given preferred search provider.

You can use this function to obtain the query for the preferred search providers returned by preferredSearchProviders.

The query returned by this function is in web shortcut format, i.e. "gg:foo bar", and must be re-filtered through KUriFilter to obtain a valid url.

See also:
preferredSearchProviders
Since:
4.5

KUriFilterSearchProvider queryForSearchProvider (  self,
QString  provider
)

Returns information about provider.

You can use this function to obtain the more information about the search providers returned by preferredSearchProviders.

See also:
preferredSearchProviders
See also:
KUriFilterSearchProvider
Since:
4.6

KUriFilterData.SearchFilterOptions searchFilteringOptions (   self )

Returns the specified search filter options.

By default this function returns SearchFilterOptionNone.

See also:
setSearchFilteringOptions
Since:
4.6

QString searchProvider (   self )

Returns the name of the search service provider, e.g. Google.

If typedString was not filtered by a search filter plugin, this function returns an empty string.

See also:
typedString
Since:
4.5

QString searchTerm (   self )

Returns the search term portion of the typed string.

If the typedString was not filtered by a search filter plugin, this function returns an empty string.

See also:
typedString
Since:
4.5

QChar searchTermSeparator (   self )

Returns the character that is used to separate the search term from the keyword.

If typedString was not filtered by a search filter plugin, this function returns a null charater.

See also:
typedString
Since:
4.5

bool setAbsolutePath (  self,
QString  abs_path
)

Sets the absolute path to be used whenever the supplied data is a relative local URL.

NOTE: This function should only be used for local resources, i.e. the "file:/" protocol. It is useful for specifying the absolute path in cases where the actual URL might be relative. If deriving the path from a KUrl, make sure you set the argument for this function to the result of calling path () instead of url ().

Parameters:
abs_path  the abolute path to the local resource.

Returns:
true if absolute path is successfully set. Otherwise, false.

setAlternateDefaultSearchProvider (  self,
QString  provider
)

Sets the search provider to use in case no default provider is available.

The default search provider set using this function will only be used if the default and favorite search providers have not yet been selected by the user. Otherwise, the default provider specified by through function will be ignored.

See also:
alternateDefaultSearchProvider
See also:
preferredSearchProviders
Since:
4.5

setAlternateSearchProviders (  self,
QStringList  providers
)

Sets a list of search providers to use in case no preferred search providers are available.

The list of preferred search providers set using this function will only be used if the default and favorite search providers have not yet been selected by the user. Otherwise, the providers specified through this function will be ignored.

See also:
alternateSearchProviders
See also:
preferredSearchProviders
Since:
4.5

setCheckForExecutables (  self,
bool  check
)

Check whether the provided uri is executable or not.

Setting this to false ensures that typing the name of an executable does not start that application. This is useful in the location bar of a browser. The default value is true.

setData (  self,
KUrl  url
)

Sets the URL to be filtered.

Use this function to set the string to be filtered when you construct an empty filter object.

Parameters:
url  the string to be filtered.

setData (  self,
QString  url
)

Sets the URL to be filtered.

Use this function to set the string to be filtered when you construct an empty filter object.

Parameters:
url  the string to be filtered.

setDefaultUrlScheme (  self,
QString  a0
)

Sets the default scheme used when filtering potentially valid url inputs.

Use this function to change the default protocol used when filtering potentially valid url inputs. The default protocol is http.

If the scheme is specified without a separator, then "://" will be used as the separator by default. For example, if the default url scheme was simply set to "ftp", then a potentially valid url input such as "kde.org" will be filtered to "ftp://kde.org".

See also:
defaultUrlScheme
Since:
4.6

setSearchFilteringOptions (  self,
KUriFilterData.SearchFilterOptions  options
)

Sets the options used by search filter plugins to filter requests.

The default search filter option is SearchFilterOptionNone. See SearchFilterOption for the description of the other flags.

It is important to note that the options set through this function can prevent any filtering from being performed by search filter plugins. As such, uriTypes can return KUriFilterData.Unknown and uri can return an invalid url eventhough the filtering request returned a successful response.

See also:
searchFilteringOptions
Since:
4.6

QString typedString (   self )

The string as typed by the user, before any URL processing is done.

KUrl uri (   self )

Returns the filtered or the original URL.

If one of the plugins successfully filtered the original input, this function returns it. Otherwise, it will return the input itself.

Returns:
the filtered or original url.

KUriFilterData.UriTypes uriType (   self )

Returns the URI type.

This method always returns KUriFilterData.UNKNOWN if the given URL was not filtered.

Returns:
the type of the URI


Enumeration Documentation

SearchFilterOption

This enum describes the search filtering options to be used.

  • SearchFilterOptionNone
  • No search filter options are set and normal filtering is performed on the input data.
  • RetrieveSearchProvidersOnly
  • If set, the list of all available search providers are returned without any input filtering. This flag only applies when used in conjunction with the KUriFilter.NormalTextFilter flag.
  • RetrievePreferredSearchProvidersOnly
  • If set, the list of preferred search providers are returned without any input filtering. This flag only applies when used in conjunction with the KUriFilter.NormalTextFilter flag.
  • RetrieveAvailableSearchProvidersOnly
  • Same as doing RetrievePreferredSearchProvidersOnly | RetrieveSearchProvidersOnly, where all available search providers are returned if no preferred ones ones are available. No input filtering will be performed.

    See also:
    setSearchFilteringOptions
    See also:
    KUriFilter.filterSearchUri
    Since:
    4.6

    Enumerator:
    SearchFilterOptionNone = 0x0
    RetrieveSearchProvidersOnly = 0x01
    RetrievePreferredSearchProvidersOnly = 0x02
    RetrieveAvailableSearchProvidersOnly = (RetrievePreferredSearchProvidersOnly|RetrieveSearchProvidersOnly)

    UriTypes

    Describes the type of the URI that was filtered. Here is a brief description of the types:

  • NetProtocol - Any network protocol: http, ftp, nttp, pop3, etc...
  • LocalFile - A local file whose executable flag is not set
  • LocalDir - A local directory
  • Executable - A local file whose executable flag is set
  • Help - A man or info page
  • Shell - A shell executable (ex: echo "Test..." >> ~/testfile)
  • Blocked - A URI that should be blocked/filtered (ex: ad filtering)
  • Error - An incorrect URI (ex: "~johndoe" when user johndoe
  • does not exist in that system )
  • Unknown - A URI that is not identified. Default value when
  • a KUriFilterData is first created.

    Enumerator:
    NetProtocol = 0
    LocalFile 
    LocalDir 
    Executable 
    Help 
    Shell 
    Blocked 
    Error 
    Unknown 

    • Full Index

    Modules

    • akonadi
    • dnssd
    • kdecore
    • kdeui
    • khtml
    • kio
    • knewstuff
    • kparts
    • kutils
    • nepomuk
    • phonon
    • plasma
    • polkitqt
    • solid
    • soprano
    This documentation is maintained by Simon Edwards.
    KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal