/****************************************************************************
** Execute class
**
** Created: Tue Jan 26 12:09:08 2003
**      by: Varol Okan using kate editor
**
** This class provide a GUI to the man pages.
**
****************************************************************************/

#ifndef __TEST_PLUGS_H__
#define __TEST_PLUGS_H__

#include "../interface.h"
#include "uiMainForm.h"

class QBoxLayout;

namespace Plugin
{

class CreateDVD;

class TestPlugs : public uiMainForm
{
  Q_OBJECT

public:
           TestPlugs  ( QWidget *p=NULL, const char *n=NULL, bool m=FALSE, WFlags f=0 );
  virtual ~TestPlugs  ( );

  virtual void  initMe  ( );
  int loadPlugins ( QString & );


protected slots:
  virtual void slotCancel ( );
  virtual void slotLoad   ( );
  virtual void slotPluginChanged ( int );

protected:
  bool loadPlugin ( uint );
  void unloadPlugin (  );

private:
  QStringList m_listOfPlugins;
  int         m_iCurrentPlugin;

  void       *m_pLibrary;
  destroy_t  *m_pDestroyFunction;
  Interface  *m_pPlugin;
  QWidget    *m_pConfigWidget;
  QBoxLayout *m_pLayoutMain;
};

}; // end of namespace Plugins
#endif // __TEST_PLUGS_H__
