#ifndef SLACKPACKIMPL_H
#define SLACKPACKIMPL_H
//
#include <QMainWindow>
#include <QtGui>
#include <Q3Process>
#include <QString>
#include <QStringList>
#include <QDirModel>
#include <QVariant>
#include <QColumnView>
#include <stdlib.h> // system() header

#include "ui_slackpack.h"
#include "ui_preferencesdialog.h"
//
class SlackpackImpl : public QMainWindow, public Ui::Slackpack
{
Q_OBJECT
public:
	SlackpackImpl( QWidget * parent = 0, Qt::WFlags f = 0 );
	
public slots:

	virtual void installbutton_clicked();
        virtual void installProcessFinished();

        virtual void removebutton_clicked();
        virtual void removeProcessFinished();

        virtual void upgradebutton_clicked();
        virtual void upgradeProcessFinished();

        virtual void makepkgbutton_clicked();
        virtual void makepkgProcessFinished();

        virtual void remselbutton_clicked();
        virtual void remselProcessFinished();

	virtual void aboutMenuAction();
	virtual void contentsMenuAction();
	virtual void quitMenuAction();
	virtual void reportBugsMenuAction();

	virtual void deb2tgzbutton_clicked();
        virtual void deb2tgzProcessFinished();

	virtual void rpm2tgzbutton_clicked();
        virtual void rpm2tgzProcessFinished();

        virtual void closeAboutDlg();
        virtual void pkgsearchbutton_clicked();
	virtual void checkIfRoot();
        virtual void currentChanged();
        virtual void packageInfo();

        virtual void saveAction();
        virtual void copyAction();
        virtual void preferencesAction();

private slots:

private:

private slots:
};
//custom model class
class MyModel : public QDirModel
{
        Q_OBJECT
public:
        QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const;
};
#endif




