summaryrefslogtreecommitdiffstats
path: root/kmyfirewall/ruleoptionplugins/protocol_option/kmfruleoptioneditprotocol.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'kmyfirewall/ruleoptionplugins/protocol_option/kmfruleoptioneditprotocol.cpp')
-rw-r--r--kmyfirewall/ruleoptionplugins/protocol_option/kmfruleoptioneditprotocol.cpp132
1 files changed, 132 insertions, 0 deletions
diff --git a/kmyfirewall/ruleoptionplugins/protocol_option/kmfruleoptioneditprotocol.cpp b/kmyfirewall/ruleoptionplugins/protocol_option/kmfruleoptioneditprotocol.cpp
new file mode 100644
index 0000000..d0c8289
--- /dev/null
+++ b/kmyfirewall/ruleoptionplugins/protocol_option/kmfruleoptioneditprotocol.cpp
@@ -0,0 +1,132 @@
+/***************************************************************************
+ Copyright (C) 2004 Christian Hubinger
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * 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. *
+ * *
+ ***************************************************************************/
+//
+// C++ Implementation: kmfruleoptioneditiip
+//
+// Description:
+//
+//
+// Author: Christian Hubinger <chubinger@irrsinnig.org>, (C) 2004
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#include "kmfruleoptioneditprotocol.h"
+
+
+// QT includes
+#include <qstring.h>
+
+// KDE includes
+#include <kdebug.h>
+#include <klocale.h>
+
+// Project includes
+#include "../../core/iptrule.h"
+#include "../../core/kmfruleeditinterface.h"
+#include "kmfruleeditorprotocol.h"
+
+namespace KMF {
+KMFRuleOptionEditProtocol::KMFRuleOptionEditProtocol(QObject *parent, const char *name)
+ : KMFRuleOptionEditInterface(parent, name) {
+ kdDebug() <<"KMFRuleOptionEditProtocol::KMFRuleOptionEditProtocol(QObject *parent, const char *name)" << endl;
+ kdDebug() << "Parent has Type: " << parent->className() << endl;
+
+ m_edit = new KMFRuleEditorProtocol( 0 , "Edit", 0 );
+ m_edit->hide();
+
+ connect( m_edit,SIGNAL(sigHideMe() ),
+ this,SLOT( slotShowOverview() ) );
+}
+
+KMFRuleOptionEditProtocol::~KMFRuleOptionEditProtocol() {}
+
+
+
+void KMFRuleOptionEditProtocol::slotShowOverview() {
+ if ( KMFRuleEditInterface* ruleedit = dynamic_cast<KMFRuleEditInterface*> ( parent() ) ) {
+ ruleedit->showOverview();
+ } else {
+ kdDebug() << "KMFRuleOptionEditProtocol::slotShowOverview(): parent() not of type KMFRuleEditInterface" << endl;
+ }
+}
+
+
+
+const QString& KMFRuleOptionEditProtocol::optionEditName() const {
+ return *( new QString( i18n("Protocol Option") ) );
+}
+const QString& KMFRuleOptionEditProtocol::description() const {
+ return *( new QString( i18n("This plugin manages the Protocol based options of iptables.") ) );
+}
+
+void KMFRuleOptionEditProtocol::loadRule( IPTRule* rule ) {
+ if ( !rule ) {
+ kdDebug() << "KMFRuleOptionEditProtocol::loadRule( IPTRule* rule ) - rule == 0" << endl;
+ return;
+ }
+
+ m_edit->loadRule( rule );
+ m_rule = rule;
+
+}
+
+QWidget* KMFRuleOptionEditProtocol::editWidget() {
+ if ( ! m_edit ) {
+ kdDebug() << "KMFRuleOptionEditProtocol::editWidget() - m_edit == 0" << endl;
+ return 0;
+ }
+ return m_edit;
+}
+
+
+
+
+
+// It's usually safe to leave the factory code alone.. with the
+// notable exception of the KAboutData data
+#include <kaboutdata.h>
+#include <klocale.h>
+
+// KInstance* KMFRuleOptionEditProtocolFactory::s_instance = 0L;
+// KAboutData* KMFRuleOptionEditProtocolFactory::s_about = 0L;
+
+KMFRuleOptionEditProtocolFactory::KMFRuleOptionEditProtocolFactory( QObject* parent, const char* name )
+ : KLibFactory( parent, name ) {
+// s_instance = new KInstance( "KMFRuleOptionEditProtocolFactory" );
+}
+
+QObject* KMFRuleOptionEditProtocolFactory::createObject( QObject* parent, const char* name,
+ const char*, const QStringList & ) {
+ QObject * obj = new KMFRuleOptionEditProtocol( parent, name );
+ emit objectCreated( obj );
+ return obj;
+}
+
+
+// KInstance* KMFRuleOptionEditProtocolFactory::instance() {
+// if ( !s_instance ) {
+// s_instance = new KInstance( "KMFRuleOptionEditProtocolFactory" );
+// }
+// return s_instance;
+// }
+
+extern "C" {
+ void* init_libkmfruleoptionedit_protocol() {
+ return new KMFRuleOptionEditProtocolFactory;
+ }
+}
+
+}
+
+#include "kmfruleoptioneditprotocol.moc"