"Fossies" - the Fresh Open Source Software archive

Member "anyfs-tools-0.85.1c/src/anysurrect/anysurreqt/mainform.h" of archive anyfs-tools-0.85.1c.tar.gz:


#ifndef MAINFORM_H
#define MAINFORM_H

#include <QObject>
#include <QIntValidator>

#include <QtCore/QVariant>
#include <QtGui/QAction>
#include <QtGui/QApplication>
#include <QtGui/QButtonGroup>
#include <QtGui/QCheckBox>
#include <QtGui/QComboBox>
#include <QtGui/QLabel>
#include <QtGui/QMainWindow>
#include <QtGui/QMenu>
#include <QtGui/QMenuBar>
#include <QtGui/QProgressBar>
#include <QtGui/QPushButton>
#include <QtGui/QStatusBar>
#include <QtGui/QTreeWidget>
#include <QtGui/QWidget>
#include <QtGui/QFileDialog>
#include <QtGui/QGridLayout>
#include <QtGui/QMessageBox>

#include <QtAssistant/QAssistantClient>

#include <QThread>

class BlockSizeBox : public QComboBox {
	public:
		BlockSizeBox(QWidget *parent = 0) : QComboBox(parent)
	{};
	protected:
		void focusOutEvent ( QFocusEvent * event );
};

class DiskBox : public QComboBox {
	public:
		DiskBox(QWidget *parent = 0) : QComboBox(parent)
	{};
	protected:
};

class DiskButton : public QPushButton {
	public:
		DiskButton(QWidget *parent = 0) : QPushButton(parent)
	{};
	protected:
		void mousePressEvent ( QMouseEvent * event );
};

class StartButton : public QPushButton {
	public:
		StartButton(QWidget *parent = 0) : QPushButton(parent)
	{};
	protected:
		void mousePressEvent ( QMouseEvent * event );
};

class SaveSelectedButton : public QPushButton {
	public:
		SaveSelectedButton(QWidget *parent = 0) : QPushButton(parent)
	{};
	protected:
		void mousePressEvent ( QMouseEvent * event );
};

class MyObject : public QObject {
	Q_OBJECT

	public slots:
		void currentItemChanged ( QTreeWidgetItem * current, 
				QTreeWidgetItem * previous )
		{
			printf("Changed\n");
		}
};

class MyThread : public QThread
{
	Q_OBJECT
	public:
		MyThread(QWidget *parent = 0) : QThread(parent)
	{};     

	protected:
		void run();
};              


class MainWindow: public QMainWindow {
	Q_OBJECT
	public:
		struct any_sb_info *sb_info;
		int	state;
		int	image_access;
		int	saved;
		unsigned long *block_bitmap;
		MyThread	*thread;
		int	FD;
		int	save_state;
		int	open_state;

		int wait_terminate;

	public:
		MainWindow();
		int InitSurrect();
		int StartSurrect();
		int DeInitSurrect();
		int SaveSelected();
		int NewSurrect();
		int SaveInode(const QString &To, 
				uint32_t ino);
		QTreeWidgetItem *GetItem(struct any_sb_info *info, 
				const char *name, uint32_t ino);

		void EmitAddItem(struct any_sb_info *info, 
				const char *name, uint32_t ino, 
				uint32_t rootino);

		int FillItems(uint32_t ino = 1, char *name = "/", QTreeWidgetItem *parent = NULL);

		void closeEvent(QCloseEvent * event);
		int save();
		bool maybeSave();

		int checkState();

	public slots:
		void currentItemChanged ( QTreeWidgetItem * current, 
				QTreeWidgetItem * previous );
		void editTextChanged ( const QString & text );
		void AddItem(any_sb_info *info, 
				const char *name, uint32_t ino, 
				uint32_t rootino);
		void FinishSurrect();
		int openAction();
		int saveAction();
		int saveAsAction();
		int newAction();

		void Message(QString str1, QString str2);

		void help();
		void about();

	signals:
		void SigAddItem(any_sb_info *info, 
				const char *name, uint32_t ino, 
				uint32_t rootino);
		void SetProgress(int value);
		void SigFinishSurrect();

		void SigMessage(QString str1, QString str2);

	public:
		QAction *actionOpen;
		QAction *actionSave;
		QAction *actionSave_As;
		QAction *actionExit;
		QAction *actionNew;
		QAction *actionAbout;
		QAction *actionAbout_Qt;
		QAction *actionHelp;
		QWidget *centralwidget;
		QGridLayout *gridLayout;
		SaveSelectedButton *saveSelectedButton;
		StartButton *startButton;
		DiskButton *diskButton;
		QProgressBar *progressBar;
		QLabel *listoffileslabel;
		QLabel *blocksizeLabel;
		QCheckBox *firstblockBox;
		QLabel *progressLabel;
		BlockSizeBox *blocksizeBox;
		QLabel *deviceLabel;
		DiskBox *diskBox;
		QTreeWidget *treeWidget;
		QMenuBar *menubar;
		QMenu *menu_2;
		QMenu *menu;
		QStatusBar *statusbar;

		QAssistantClient *assistantClient;

		void retranslateUi();

		void init();
};

#endif // MAINFORM_H