summaryrefslogtreecommitdiffstats
path: root/kmyfirewall/installer/openbsd/kmfpfinstaller.h
blob: 5b562f2eb90ee173dfac2eebc1e48b4d1ab41eac (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
/***************************************************************************
 begin                : Mon Jan 28 2002
 copyright            : (C) 2002 by Christian Hubinger
 email                : [email protected]
***************************************************************************/

/***************************************************************************
 *                                                                         *
 *   This program is free software; you can redistribute it and/or modify  *
 *   it under the terms of the GNU General Public License as published by  *
 *   the Free Software Foundation; either version 2 of the License, or     *
 *   (at your option) any later version.                                   *
 *                                                                         *
 ***************************************************************************/
#ifndef KMFPFINSTALLER_H
#define KMFPFINSTALLER_H
#include <qobject.h>
#include <qpixmap.h>
#include <qstringlist.h>

#include <kparts/part.h>
#include <kparts/plugin.h>
#include <kparts/factory.h>
#include <kxmlgui.h>



#include "../../core/kmfplugin.h"
#include "../../core/kmfinstallerinterface.h"

#include "../../kmyfirewall.h"

class QString;
class QLabel;
class QPushButton;
class QGridLayout;
class KTempFile;
class KInstance;


namespace KMF {

class KMFProcOut;
class KMFError;
class KMFTarget;
class KMFErrorHandler;
class KMFCompilerInterface;

class KMFPFInstaller :  public KMFPlugin, public KMFInstallerInterface {
	Q_OBJECT

public:
	KMFPFInstaller( QObject* parent = 0, const char* name = 0 );
	~KMFPFInstaller();
	virtual KMFCompilerInterface* compiler();
 	virtual void cmdRunFW();
 	virtual void cmdStopFW();
 	virtual void cmdInstallFW();
 	virtual void cmdUninstallFW();
 	virtual void cmdShowRunningConfig( const QString& );
 	virtual void generateInstallerPackage( KMFTarget*, const KURL& );
 	virtual const QString& osName() const {
		return m_osName;
	}
	virtual const QString& osGUIName() const {
		return m_osGUIName;
	}
 	virtual QValueList<KMFCompilerInterface*>* compilers();
 	
 	

public slots:


private:    // functions
	QString m_osName;
	QString m_osGUIName;
	KMFProcOut* execWidget();

/*	void loadIcons();
	
	KMFError* createInitScript( const QString& file, const QString& systemtype );

	
	QString cmdShowAll();
	QString cmdShowFilter();
	QString cmdShowNat();
	QString cmdShowMangle();
	void installRemote();
	
	
	void parseFileHeaders( const QString& source_file_path, const QString& target_file_path ); 
	void writeBase64DataField( const QString& source_file_path, const QString& target_file_path, const QString& data );*/
	
	
private:
	KMFProcOut *m_execWidget;
	QString m_script;
	
};




class KMFPFInstallerFactory : public KLibFactory {
	Q_OBJECT
public:
	KMFPFInstallerFactory( QObject *parent = 0, const char *name = 0 );
	virtual ~KMFPFInstallerFactory() {};
	virtual QObject* createObject( QObject* parent = 0, const char* pname = 0,
	                               const char* name = "QObject",
	                               const QStringList &args = QStringList() );
};
}

#endif // KMFPFINSTALLER_H