/*
 * This file is part of DesktopBSD, see the README file.
 *
 * Author: Peter Hofer <ph@desktopbsd.net>
 *         (C) 2004, 2005
 *
 * Copyright: BSD, see the COPYING file included in this distribution
 *
 */

#ifndef __DBSDMODULE_H
#define __DBSDMODULE_H

#include <qvariant.h>
#include <qwidget.h>


class DBSDModule : public QWidget {
	Q_OBJECT

public:
	enum Operations {
	    Apply = 1,
	    Reset = 2
	};

	DBSDModule(QWidget* parent = NULL, const char  *name = NULL,  WFlags f = 0);
	virtual ~DBSDModule();

	bool	wasInitialized();
	virtual int		getSupportedOperations();
	virtual bool	exitReady();

signals:
	void	changed(bool);

public slots:
	virtual void	initializeModule();
	virtual void	apply();
	virtual void	reset();

protected slots:
	virtual void	changed();
	virtual bool	event(QEvent *);
	virtual void	languageChange();

protected:
	virtual void	initModule();

private:
	bool	modInitialized;
};

#endif /* __DBSDMODULE_H */
