00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 #ifndef PMIPKG_H
00011 #define PMIPKG_H
00012
00013 #include <qobject.h>
00014 #include <qlist.h>
00015 #include <qstring.h>
00016 #include <qwidget.h>
00017 #include "pksettings.h"
00018 #include "runwindow.h"
00019 #include "packagelist.h"
00020 #include "installdialog.h"
00021 #include "debug.h"
00022
00023 #define createLink 0
00024 #define removeLink 1
00025
00026 class OipkgPackage;
00027 class PmIpkg : public QObject
00028 {
00029 Q_OBJECT
00030 public:
00031 PmIpkg( PackageManagerSettings* , QWidget* p=0, const char * name=0, WFlags f=0 );
00032 ~PmIpkg();
00033
00034 int linkOpp;
00035 void loadList( PackageList* );
00036 void commit();
00037 void update();
00038 void show();
00039 void clearLists();
00040
00041 public slots:
00042 void doIt();
00043 void install();
00044 void remove();
00045 void installFile(const QString &fileName, const QString &dest="");
00046 void removeFile(const QString &fileName, const QString &dest="");
00047 void createLinks( const QString &dest );
00048 void removeLinks( const QString &dest );
00049
00050
00051 private:
00052 QString ipkg_cmd;
00053 PackageManagerSettings* settings;
00054 RunWindow *runwindow;
00055 InstallDialog *installDialog;
00056 QList<OipkgPackage> to_remove;
00057 QList<OipkgPackage> to_install;
00058 void makeLinks(OipkgPackage*);
00059 void linkPackage( QString, QString );
00060 void processLinkDir( QString , QString );
00061 bool runIpkg(const QString& args, const QString& dest="" );
00062 void out( QString );
00063 QStringList* getList( QString, QString );
00064 void processFileList( QStringList*, QString );
00065
00066
00067 };
00068
00069 #endif