Projects/KNS2/Handler: Difference between revisions
Line 13: | Line 13: | ||
* '''Handler(QString filename)''' Creates a bundler that operates on the given package. Note that the package needs to be unpacked somewhere first, so operating on a dir is much faster | * '''Handler(QString filename)''' Creates a bundler that operates on the given package. Note that the package needs to be unpacked somewhere first, so operating on a dir is much faster | ||
* '''Handler(KUrl dir)''' Creates a bundler that operates on the given directory. | * '''Handler(KUrl dir)''' Creates a bundler that operates on the given directory. | ||
* '''Handler(QString packageName, QString packageVersion)''' Creates a bundler that operates on the | * '''Handler(QString packageName, QString packageVersion)''' Creates a bundler that operates on the package already installed in the standard way. | ||
* '''install()''' Extracts (installs) the package, and puts the .desktop file in $KDEHOME/services/. See [[../Layout|here]] for more informations. | * '''install()''' Extracts (installs) the package, and puts the .desktop file in $KDEHOME/services/. See [[../Layout|here]] for more informations. | ||
* '''''QString author()''' Returns a pluginInfo object. You can retrive most of the metadata from it.''' <- check with KNS::Entry | * '''''QString author()''' Returns a pluginInfo object. You can retrive most of the metadata from it.''' <- check with KNS::Entry | ||
* similar methods to retrive all the rest of the metadata, icon included. | |||
* '''initLayout()''' Initializes the layout. It should be called only once. It will use KStandardDirs::saveLocation() to create needed dirs. See [[../Layout|the layout section]] for more informations. | * '''initLayout()''' Initializes the layout. It should be called only once. It will use KStandardDirs::saveLocation() to create needed dirs. See [[../Layout|the layout section]] for more informations. | ||
* installDesktopFile() ''Obsoleted by install()?'' | * '''installDesktopFile()''' ''Obsoleted by install()?'' | ||
* '''bool isInstalled()''' True if the package is already installed, false otherwise | |||
* '''QFile packageFile()''' Returns a QFile pointing to the zipped package. | |||
* '''QDir packageDir()''' Returns an (absolute) QDir pointing to the folder of the installed package. | |||
* ... | * ... |
Revision as of 09:02, 15 March 2007
Warning
Names are just temporary. Infos can be as well. Please don't trust this page as probably most of the things are going to heavily change during this 1 month developement marathone.
The Handler
This class is meant to provide a non-GUI and class to manage KNS packages. It's meant to be used from application themselves.
It will be able to:
- Unpack packages
- Map package files to standard QFiles
- more...
Proposed API
- Handler(QString filename) Creates a bundler that operates on the given package. Note that the package needs to be unpacked somewhere first, so operating on a dir is much faster
- Handler(KUrl dir) Creates a bundler that operates on the given directory.
- Handler(QString packageName, QString packageVersion) Creates a bundler that operates on the package already installed in the standard way.
- install() Extracts (installs) the package, and puts the .desktop file in $KDEHOME/services/. See here for more informations.
- QString author()' Returns a pluginInfo object. You can retrive most of the metadata from it. <- check with KNS::Entry
- similar methods to retrive all the rest of the metadata, icon included.
- initLayout() Initializes the layout. It should be called only once. It will use KStandardDirs::saveLocation() to create needed dirs. See the layout section for more informations.
- installDesktopFile() Obsoleted by install()?
- bool isInstalled() True if the package is already installed, false otherwise
- QFile packageFile() Returns a QFile pointing to the zipped package.
- QDir packageDir() Returns an (absolute) QDir pointing to the folder of the installed package.
- ...