// Copyright 2008 Simon Edwards // Generated by twine // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU Library General Public License as // published by the Free Software Foundation; either version 2, or // (at your option) any later version. // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details // You should have received a copy of the GNU Library General Public // License along with this program; if not, write to the // Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. namespace Plasma { class Package { %TypeHeaderCode #include %End public: Package (const QString& packageRoot, const QString& package, Plasma::PackageStructure::Ptr structure); Package (const QString& packagePath, Plasma::PackageStructure::Ptr structure); bool isValid () const; QString filePath (const char* fileType, const QString& filename) const; QString filePath (const char* fileType) const; QStringList entryList (const char* fileType) const; Plasma::PackageMetadata metadata () const; void setPath (const QString& path); const QString path () const; const Plasma::PackageStructure::Ptr structure () const; static QStringList listInstalled (const QString& packageRoot); static QStringList listInstalledPaths (const QString& packageRoot); static bool installPackage (const QString& package, const QString& packageRoot, const QString& servicePrefix); static bool uninstallPackage (const QString& package, const QString& packageRoot, const QString& servicePrefix); static bool registerPackage (const Plasma::PackageMetadata& data, const QString& iconPath); static bool createPackage (const Plasma::PackageMetadata& metadata, const QString& source, const QString& destination, const QString& icon = QString()); ~Package (); private: //force Package (const Plasma::Package& other); // FIXME bad enum/QFlags comp error. //end public: //ig void publish (Plasma::AnnouncementMethods methods, const QString& name); //FIXME missing implementation //ig void unpublish (const QString& name = QString()); //ig bool isPublished () const; QString contentsHash () const; explicit Package (); }; // Package }; // Plasma