summaryrefslogtreecommitdiffstats
path: root/languages/cpp/app_templates/opienet
diff options
context:
space:
mode:
Diffstat (limited to 'languages/cpp/app_templates/opienet')
-rw-r--r--languages/cpp/app_templates/opienet/.kdev_ignore0
-rw-r--r--languages/cpp/app_templates/opienet/Example.pngbin0 -> 1262 bytes
-rw-r--r--languages/cpp/app_templates/opienet/Makefile.am19
-rw-r--r--languages/cpp/app_templates/opienet/app.kdevelop143
-rw-r--r--languages/cpp/app_templates/opienet/app.pro39
-rw-r--r--languages/cpp/app_templates/opienet/opienet.kdevtemplate142
-rw-r--r--languages/cpp/app_templates/opienet/opienet.pngbin0 -> 483 bytes
-rw-r--r--languages/cpp/app_templates/opienet/simmplemodule.h36
-rw-r--r--languages/cpp/app_templates/opienet/simpleiface.cpp43
-rw-r--r--languages/cpp/app_templates/opienet/simpleiface.h22
-rw-r--r--languages/cpp/app_templates/opienet/simplemodule.cpp71
-rw-r--r--languages/cpp/app_templates/opienet/simplemodule.h36
12 files changed, 551 insertions, 0 deletions
diff --git a/languages/cpp/app_templates/opienet/.kdev_ignore b/languages/cpp/app_templates/opienet/.kdev_ignore
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/languages/cpp/app_templates/opienet/.kdev_ignore
diff --git a/languages/cpp/app_templates/opienet/Example.png b/languages/cpp/app_templates/opienet/Example.png
new file mode 100644
index 00000000..f63d0bc7
--- /dev/null
+++ b/languages/cpp/app_templates/opienet/Example.png
Binary files differ
diff --git a/languages/cpp/app_templates/opienet/Makefile.am b/languages/cpp/app_templates/opienet/Makefile.am
new file mode 100644
index 00000000..47dc4231
--- /dev/null
+++ b/languages/cpp/app_templates/opienet/Makefile.am
@@ -0,0 +1,19 @@
+dataFiles = Makefile.am Example.png app.kdevelop app.pro \
+ simpleiface.cpp simpleiface.h simplemodule.h \
+ simplemodule.cpp
+
+templateName = opienet
+
+### no need to change below:
+template_DATA = $(templateName).kdevtemplate
+templatedir = ${appwizarddatadir}/templates
+
+appwizarddatadir = ${kde_datadir}/kdevappwizard
+$(templateName).tar.gz: ${dataFiles}
+ $(TAR) -cf $(templateName).tar -C $(srcdir) ${dataFiles}
+ $(GZIP_COMMAND) -f9 $(templateName).tar
+
+archivedir = ${appwizarddatadir}
+archive_DATA = $(templateName).tar.gz ${templateName}.png
+
+CLEANFILES = *.tar.gz
diff --git a/languages/cpp/app_templates/opienet/app.kdevelop b/languages/cpp/app_templates/opienet/app.kdevelop
new file mode 100644
index 00000000..660b7bee
--- /dev/null
+++ b/languages/cpp/app_templates/opienet/app.kdevelop
@@ -0,0 +1,143 @@
+<?xml version="1.0"?>
+<kdevelop>
+ <general>
+ <author>%{AUTHOR}</author>
+ <email>%{EMAIL}</email>
+ <version>%{VERSION}</version>
+ <projectmanagement>KDevTrollProject</projectmanagement>
+ <primarylanguage>C++</primarylanguage>
+ <keywords>
+ <keyword>Qt</keyword>
+ <keyword>C++</keyword>
+ <keyword>Code</keyword>
+ </keywords>
+ <ignoreparts/>
+ </general>
+ <kdevfileview>
+ <groups>
+ <group pattern="*.cpp;*.cxx;*.h" name="Sources" />
+ <group pattern="*.ui" name="User Interface" />
+ <group pattern="*.png" name="Icons" />
+ <group pattern="*" name="Others" />
+ </groups>
+ <tree>
+ <hidenonprojectfiles>false</hidenonprojectfiles>
+ <hidepatterns>*.o,*.lo,CVS</hidepatterns>
+ </tree>
+ </kdevfileview>
+ <kdevdoctreeview>
+ <ignoretocs>
+ <toc>gtk</toc>
+ <toc>gnustep</toc>
+ <toc>python</toc>
+ <toc>php</toc>
+ <toc>perl</toc>
+ <toc>w3c-dom-level2-html</toc>
+ <toc>kdev3api</toc>
+ <toc>sdl</toc>
+ <toc>w3c-svg</toc>
+ <toc>w3c-uaag10</toc>
+ </ignoretocs>
+ <ignoreqt_xml>
+ <toc>Guide to the Qt Translation Tools</toc>
+ <toc>qmake User Guide</toc>
+ <toc>Qt Assistant Manual</toc>
+ <toc>Qt Designer Manual</toc>
+ <toc>Qt Referrence Documentation</toc>
+ </ignoreqt_xml>
+ <ignoredevhelp>
+ <toc>bonobo-activation</toc>
+ <toc>gconf</toc>
+ <toc>gtksourceview</toc>
+ <toc>libbonobo</toc>
+ <toc>libbonoboui</toc>
+ </ignoredevhelp>
+ </kdevdoctreeview>
+ <kdevdebugger>
+ <general>
+ <dbgshell></dbgshell>
+ <programargs>-qws</programargs>
+ <gdbpath/>
+ <breakonloadinglibs>true</breakonloadinglibs>
+ <separatetty>false</separatetty>
+ <floatingtoolbar>false</floatingtoolbar>
+ </general>
+ <display>
+ <staticmembers>false</staticmembers>
+ <demanglenames>true</demanglenames>
+ </display>
+ </kdevdebugger>
+ <kdevtrollproject>
+ <opie>
+ <quick_app>false</quick_app>
+ </opie>
+ <packaging>
+ <template>3</template>
+ <custom_dest>plugins/networksettings</custom_dest>
+ <owner>
+ <package>%{APPNAMELC}</package>
+ <prio>0</prio>
+ <section>opie/settings</section>
+ <maintainer>%{AUTHOR} %{EMAIL}</maintainer>
+ <arch>arm</arch>
+ <depends>opie-networksettings</depends>
+ <version>%{VERSION}</version>
+ <desc>Empty</desc>
+ </owner>
+ </packaging>
+ <general>
+ <activedir></activedir>
+ </general>
+ <run>
+ <mainprogram>qpe</mainprogram>
+ <programargs>-qws</programargs>
+ </run>
+ <envvars/>
+ </kdevtrollproject>
+ <kdevfilecreate>
+ <filetypes/>
+ <useglobaltypes>
+ <type ext="ui" />
+ <type ext="cpp" />
+ <type ext="h" />
+ </useglobaltypes>
+ </kdevfilecreate>
+ <cppsupportpart>
+ <codecompletion>
+ <codehinting outputview="1" enablech="0" selectview="0" />
+ </codecompletion>
+ <classstore>
+ <enablepcs>false</enablepcs>
+ <enablepp>false</enablepp>
+ <preparsing/>
+ </classstore>
+ <filetemplates>
+ <choosefiles>false</choosefiles>
+ <interfaceURL></interfaceURL>
+ <implementationURL></implementationURL>
+ <interfacesuffix>.h</interfacesuffix>
+ <implementationsuffix>.cpp</implementationsuffix>
+ <lowercasefilenames>true</lowercasefilenames>
+ </filetemplates>
+ </cppsupportpart>
+ <kdevclassview>
+ <folderhierarchy>true</folderhierarchy>
+ <depthoffolders>2</depthoffolders>
+ </kdevclassview>
+ <kdevcvs>
+ <cvsoptions>-f</cvsoptions>
+ <commitoptions></commitoptions>
+ <updateoptions>-dP</updateoptions>
+ <addoptions></addoptions>
+ <removeoptions>-f</removeoptions>
+ <diffoptions>-u3 -p</diffoptions>
+ <logoptions></logoptions>
+ <rshoptions></rshoptions>
+ </kdevcvs>
+ <kdevdocumentation>
+ <projectdoc>
+ <docsystem>Doxygen Documentation Collection</docsystem>
+ <docurl>%{APPNAMELC}.tag</docurl>
+ </projectdoc>
+ </kdevdocumentation>
+</kdevelop>
diff --git a/languages/cpp/app_templates/opienet/app.pro b/languages/cpp/app_templates/opienet/app.pro
new file mode 100644
index 00000000..53fb6eea
--- /dev/null
+++ b/languages/cpp/app_templates/opienet/app.pro
@@ -0,0 +1,39 @@
+TEMPLATE = lib
+CONFIG = qt dll qtopia warn_on release zecke-libqpe zecke-libopie opie-network
+HEADERS = %{APPNAMELC}module.h %{APPNAMELC}iface.h
+SOURCES = %{APPNAMELC}module.cpp %{APPNAMELC}iface.cpp
+TARGET = %{APPNAMELC}
+LIBS += -linterfaces
+
+
+QUICK_SPEC_FOO = $$(OPIE_BUILD_QUICK_APP)
+contains( TEMPLATE, quick-template ){
+ contains( QUICK_SPEC_FOO, quick-app-lib ){
+ message( "foo" )
+ system( rm $$TARGET )
+ system( ln -s $$(OPIEDIR)/bin/quicklauncher $$TARGET)
+ DEFINES += OPIE_APP_INTERFACE
+ TEMPLATE = lib
+ CONFIG += dll
+ }else{
+ LI = $$join( TARGET, "lib", "lib", ".so*" )
+ system( rm $$LI )
+ TEMPLATE = app
+ }
+}
+
+
+QMAKE_LIBDIR= $$(OPIEDIR)/lib
+OPIE-SPEC=6
+
+zecke-libqpe {
+ INCLUDEPATH += $$(OPIEDIR)/include
+ LIBS += -lqpe
+ DEPENDPATH += $$(OPIEDIR)/include
+}
+
+zecke-libopie {
+ INCLUDEPATH += $$(OPIEDIR)/include
+ DEPENDPATH += $$(OPIEDIR)/include
+ LIBS += -lopie
+}
diff --git a/languages/cpp/app_templates/opienet/opienet.kdevtemplate b/languages/cpp/app_templates/opienet/opienet.kdevtemplate
new file mode 100644
index 00000000..4ab9ebbe
--- /dev/null
+++ b/languages/cpp/app_templates/opienet/opienet.kdevtemplate
@@ -0,0 +1,142 @@
+# KDE Config File
+[General]
+Name=Opie Networksettings
+Name[br]=Kefluniadur rouedad Opie
+Name[ca]=Connector de preferències de xarxa per a Opie
+Name[da]=Opie netværksopsætning
+Name[de]=Opie-Netzwerkeinstellungen
+Name[el]=Ρυθμίσεις δικτύου Opie
+Name[es]=Preferencias de red para Opie
+Name[et]=Opie võrguseadustused
+Name[eu]=Opie-ren sare-ezarpenak
+Name[fa]=تنظیمات شبکۀ Opie
+Name[fr]=Paramètres réseau pour Opie
+Name[ga]=Socruithe Líonra Opie
+Name[hu]=Opie-s hálózati beállítómodul
+Name[it]=Impostazioni di rete di Opie
+Name[ja]=Opie ネットワーク設定
+Name[nds]=Opie-Nettwarkinstellen
+Name[ne]=ओपिइ सञ्जाल सेटिङ
+Name[nl]=Opie-netwerkinstellingen
+Name[pl]=Ustawienia sieciowe Opie
+Name[pt]=Configuração de rede do Opie
+Name[pt_BR]=Configuração de rede do Opie
+Name[ru]=Параметры сети Opie
+Name[sk]=Opie sieťové nastavenia
+Name[sr]=Opie мрежна подешавања
+Name[sr@Latn]=Opie mrežna podešavanja
+Name[sv]=Opie nätverksinställningar
+Name[tr]=Opie Ağ Ayarları
+Name[zh_CN]=Opie 网络设置
+Name[zh_TW]=Opie 網路設定
+Icon=qmakeapp.png
+Category=C++/Embedded
+Comment=Generate an Opie network config plugin.
+Comment[ca]=Genera un connector de preferències de xarxa per a Opie.
+Comment[da]=Generér en Opie netværks-config-plugin.
+Comment[de]=Erstellt ein Modul für Opie-Netzwerkeinstellungen.
+Comment[el]=Δημιουργία ενός πρόσθετου ρύθμισης δικτύου Opie.
+Comment[es]=Genera un complemento de configuración de red para Opie.
+Comment[et]=Opie võrguseadistuste plugina loomine.
+Comment[eu]=Sortu Opie-ren sare-ezarpenetarako plugin bat.
+Comment[fa]=یک وصلۀ پیکربندی شبکۀ Opie تولید می‌کند.
+Comment[fr]=Génère un module externe de configuration réseau pour Opie.
+Comment[ga]=Cruthaigh breiseán cumraíochta líonra Opie.
+Comment[gl]=Xera unha extensión de configuración da rede para Opie.
+Comment[hu]=Létrehoz egy Opie-s hálózati beállítómodult.
+Comment[it]=Genera un plugin di configurazione di rete Opie.
+Comment[ja]=Opie ネットワーク設定プラグインを作成
+Comment[nds]=Stellt en Moduul för Opie-Nettwarkinstellen op.
+Comment[ne]=ओपिइ सञ्जाल कन्फिग प्लगइन उत्पन्न गर्नुहोस्
+Comment[nl]=Genereert een Opie netwerkconfiguratieplugin.
+Comment[pl]=Generuje wtyczkę do ustawień sieciowych Opie
+Comment[pt]=Gera um 'plugin' de configuração da rede do Opie.
+Comment[pt_BR]=Gera um 'plugin' de configuração da rede do Opie.
+Comment[ru]=Создание модуля настройки сети Opie.
+Comment[sk]=Vygeneruje Opie modul pre sieťovú konfiguráciu.
+Comment[sr]=Прави прикључак за Opie мрежна подешавања.
+Comment[sr@Latn]=Pravi priključak za Opie mrežna podešavanja.
+Comment[sv]=Skapa ett Opie-insticksprogram för nätverksinställning.
+Comment[tr]=Opie ağ ayar eklentisi yarat.
+Comment[zh_CN]=生成一个 Opie 网络配置插件。
+Comment[zh_TW]=產生一個 Opie 網路設定外掛程式
+FileTemplates=h,CStyle,cpp,CStyle
+ShowFilesAfterGeneration=%{dest}/%{APPNAMELC}.cpp
+Archive=opienet.tar.gz
+
+[FILE1]
+Type=install
+EscapeXML=true
+Source=%{src}/app.kdevelop
+Dest=%{dest}/%{APPNAMELC}.kdevelop
+
+[MkDir0]
+Type=mkdir
+Dir=%{dest}/pics
+
+[MkDir1]
+Type=mkdir
+Dir=%{dest}/pics/%{APPNAMELC}
+
+[FILE2]
+Type=install
+Source=%{src}/Example.png
+Dest=%{dest}/pics/%{APPNAMELC}/%{APPNAMELC}.png
+Process=false
+
+[FILE3]
+Type=install
+Source=%{src}/app.pro
+Dest=%{dest}/%{APPNAMELC}.pro
+
+[FILE4]
+Type=install
+Source=%{src}/simplemodule.cpp
+Dest=%{dest}/%{APPNAMELC}module.cpp
+
+[FILE5]
+Type=install
+Source=%{src}/simpleiface.cpp
+Dest=%{dest}/%{APPNAMELC}iface.cpp
+
+[FILE6]
+Type=install
+Source=%{src}/simplemodule.h
+Dest=%{dest}/%{APPNAMELC}module.h
+
+[FILE7]
+Type=install
+Source=%{src}/simpleiface.h
+Dest=%{dest}/%{APPNAMELC}iface.h
+
+[MSG]
+Type=message
+Comment=An opie network settings plugin was created in %{dest}
+Comment[ca]=Un connector de preferències de xarxa per a Opie ha estat creat en %{dest}
+Comment[da]=En opie netværksopsætning-plugin blev oprettet i %{dest}
+Comment[de]=Ein Modul für Opie-Netzwerkeinstellungen wurde in %{dest} erstellt.
+Comment[el]=Ένα πρόσθετο ρύθμισης δικτύου του opie δημιουργήθηκε στο %{dest}
+Comment[es]=Un complemento de preferencias de red para Opie ha sido creado en %{dest}
+Comment[et]=Opie võrguseadistuste plugin loodi asukohta %{dest}
+Comment[eu]=Opie-ren sare-ezarpenetarako plugin bat sortu da hemen: %{dest}
+Comment[fa]=یک وصلۀ تنظیمات شبکۀ opie در %{dest} ایجاد شد
+Comment[fr]=Un module externe de configuration réseau pour Opie a été créé dans %{dest}
+Comment[gl]=Creouse unha extensión de configuración da rede para opie en %{dest}
+Comment[hu]=Létrejött egy Opie-s hálózati beállítómodul itt: %{dest}
+Comment[it]=È stato creato un plugin per le impostazioni di rete di Opie in %{dest}
+Comment[ja]=Opie ネットワーク設定プラグインを %{dest} に作成しました
+Comment[nds]=In %{dest} wöör en Nettwarkinstellenmoduul för Opie opstellt
+Comment[ne]=ओपिइ सञ्जाल सेटिङ प्लगइन %{dest} मा सिर्जना गरियो
+Comment[nl]=Een Opie netwerkconfiguratieplugin is aangemaakt in %{dest}
+Comment[pl]=Wtyczka ustawień sieciowych Opie została utworzona w %{dest}
+Comment[pt]=Foi criado um 'plugin' de configuração da rede do Opie em %{dest}
+Comment[pt_BR]=Foi criado um 'plugin' de configuração da rede do Opie em %{dest}
+Comment[ru]=Модуль настройки сети Opie создан в %{dest}
+Comment[sk]=Opie module pre sieťové nastavenia bol vytvorený v %{dest}
+Comment[sr]=Прикључак за Opie мрежна подешавања направљен је у %{dest}
+Comment[sr@Latn]=Priključak za Opie mrežna podešavanja napravljen je u %{dest}
+Comment[sv]=Ett Opie-insticksprogram för nätverksinställning skapades i %{dest}
+Comment[tr]=Bir opie ağ ayar eklentisi %{dest} içinde yaratıldı.
+Comment[zh_CN]=在 %{dest} 中创建了一个 opie 网络设置插件
+Comment[zh_TW]=一個 Opie 網路設定外掛程式已建立於 %{dest}
+
diff --git a/languages/cpp/app_templates/opienet/opienet.png b/languages/cpp/app_templates/opienet/opienet.png
new file mode 100644
index 00000000..840a953c
--- /dev/null
+++ b/languages/cpp/app_templates/opienet/opienet.png
Binary files differ
diff --git a/languages/cpp/app_templates/opienet/simmplemodule.h b/languages/cpp/app_templates/opienet/simmplemodule.h
new file mode 100644
index 00000000..9158a7c8
--- /dev/null
+++ b/languages/cpp/app_templates/opienet/simmplemodule.h
@@ -0,0 +1,36 @@
+#ifndef %{APPNAME}_NETWORK_MODULE_H
+#define %{APPNAME}_NETWORK_MODULE_H
+
+#include <module.h>
+
+class VirtualModule : Module {
+
+signals:
+ void updateInterface(Interface* i );
+
+public:
+ VirtualModule();
+ ~VirtualModule();
+
+ const QString type() {return QString::fromLatin1("vpn" );}
+ void setProfile( const QString& ) {}
+ bool isOwner( Interface* );
+ QWidget *configure( Interface* );
+ QWidget *information( Interface* );
+ QList<Interface> getInterfaces();
+ void possibleNewInterfaces( QMap<QString, QString>& );
+ Interface *addNewInterface( const QString& );
+ bool remove( Interface* iface );
+ QString getPixmapName( Interface* ) {return QString::fromLatin1("Tux"); }
+ void receive( const QCString&, const QByteArray& ar ) {} // don't listen
+private:
+ QList<Interface> m_interfaces;
+};
+
+extern "C" {
+ void* create_plugin() {
+ return new VirtualModule();
+ }
+};
+
+#endif
diff --git a/languages/cpp/app_templates/opienet/simpleiface.cpp b/languages/cpp/app_templates/opienet/simpleiface.cpp
new file mode 100644
index 00000000..9182a2f9
--- /dev/null
+++ b/languages/cpp/app_templates/opienet/simpleiface.cpp
@@ -0,0 +1,43 @@
+#include "%{APPNAMELC}iface.h"
+
+%{APPNAME}Interface::%{APPNAME}Interface( QObject* parent,
+ const char* name,
+ bool status )
+ : Interface(parent, name, status )
+{
+}
+
+%{APPNAME}Interface::~%{APPNAME}Interface() {
+}
+
+bool %{APPNAME}Interface::refresh() {
+/* we do VPN over ppp
+ * so replace the interfaceName with
+ * something actual existing
+ * I take wlan0 in my case
+ */
+ QString old = getInterfaceName();
+ qWarning("Interface name was " + old );
+ setInterfaceName( "wlan0" );
+
+ bool b =Interface::refresh();
+ setInterfaceName( old );
+
+/* new and old interface name */
+ emit updateInterface(this);
+ return b;
+}
+
+
+void %{APPNAME}Interface::start() {
+// call pptp
+ setStatus(true);
+ refresh();
+ emit updateMessage("VPN started");
+}
+
+void %{APPNAME}Interface::stop() {
+ setStatus(false );
+ refresh();
+ emit updateMessage("VPN halted");
+}
diff --git a/languages/cpp/app_templates/opienet/simpleiface.h b/languages/cpp/app_templates/opienet/simpleiface.h
new file mode 100644
index 00000000..f235c160
--- /dev/null
+++ b/languages/cpp/app_templates/opienet/simpleiface.h
@@ -0,0 +1,22 @@
+#ifndef EXAMPLE_IFACE_VPN_H
+#define EXAMPLE_IFACE_VPN_H
+
+#include <interfaces/interface.h>
+
+class %{APPNAME}Interface : public Interface {
+ Q_OBJECT
+
+public:
+ %{APPNAME}Interface(QObject* parent, const char* name = "vpn", bool up = false );
+ ~%{APPNAME}Interface();
+
+public slots:
+ bool refresh(); // refresh information
+ void start();
+ void stop();
+
+private:
+ bool m_isUp : 1;
+};
+
+#endif
diff --git a/languages/cpp/app_templates/opienet/simplemodule.cpp b/languages/cpp/app_templates/opienet/simplemodule.cpp
new file mode 100644
index 00000000..a67974a8
--- /dev/null
+++ b/languages/cpp/app_templates/opienet/simplemodule.cpp
@@ -0,0 +1,71 @@
+#include <qwidget.h>
+
+#include <interfaces/interfaceinformationimp.h>
+
+#include "%{APPNAMELC}iface.h"
+#include "%{APPNAMELC}module.h"
+
+%{APPNAME}Module::%{APPNAME}Module() {
+ Interface* iface = new %{APPNAME}Interface( 0 );
+ iface->setHardwareName( "vpn" );
+ iface->setInterfaceName( "Test VPN" );
+ m_interfaces.append( iface );
+
+// If we set up VPN via pptp
+// and networksettins was closed and now opened
+// we need to hide the ppp device behind us
+// One can do this by calling setHandledInterfaceNames
+// setHandledInterfaceNames();
+}
+
+%{APPNAME}Module::~%{APPNAME}Module() {
+ m_interfaces.setAutoDelete( true );
+ m_interfaces.clear();
+}
+
+
+/*
+ * We're a VPN module
+ */
+bool %{APPNAME}Module::isOwner( Interface* iface ) {
+ /* check if it is our device */
+ return m_interfaces.find( iface ) != -1;
+}
+
+QWidget* %{APPNAME}Module::configure( Interface* ) {
+/* We don't have any Config for now */
+ return 0l;
+}
+
+QWidget* %{APPNAME}Module::information( Interface* iface ) {
+ return new InterfaceInformationImp(0, "Interface info", iface );
+}
+
+QList<Interface> %{APPNAME}Module::getInterfaces() {
+ return m_interfaces;
+}
+
+void %{APPNAME}Module::possibleNewInterfaces( QMap<QString, QString>& map) {
+ map.insert( QObject::tr("VPN PPTP"),
+ QObject::tr("Add new Point to Point Tunnel Protocol connection" ) );
+}
+
+
+Interface* %{APPNAME}Module::addNewInterface( const QString& ) {
+ /* check the str if we support more interfaces */
+/*
+ Interface* iface = new %{APPNAME}Interface( 0 );
+ iface->setModuleOwner( this );
+ return iface;*/
+
+// if we would support saving interfaces we could add
+// them here
+
+ return 0;
+}
+
+
+bool %{APPNAME}Module::remove( Interface* ) {
+/* we do not support removing our interface */
+ return false;
+}
diff --git a/languages/cpp/app_templates/opienet/simplemodule.h b/languages/cpp/app_templates/opienet/simplemodule.h
new file mode 100644
index 00000000..1b02b688
--- /dev/null
+++ b/languages/cpp/app_templates/opienet/simplemodule.h
@@ -0,0 +1,36 @@
+#ifndef %{APPNAME}_NETWORK_MODULE_H
+#define %{APPNAME}_NETWORK_MODULE_H
+
+#include <module.h>
+
+class %{APPNAME}Module : Module {
+
+signals:
+ void updateInterface(Interface* i );
+
+public:
+ %{APPNAME}Module();
+ ~%{APPNAME}Module();
+
+ const QString type() {return QString::fromLatin1("vpn" );}
+ void setProfile( const QString& ) {}
+ bool isOwner( Interface* );
+ QWidget *configure( Interface* );
+ QWidget *information( Interface* );
+ QList<Interface> getInterfaces();
+ void possibleNewInterfaces( QMap<QString, QString>& );
+ Interface *addNewInterface( const QString& );
+ bool remove( Interface* iface );
+ QString getPixmapName( Interface* ) {return QString::fromLatin1("Tux"); }
+ void receive( const QCString&, const QByteArray& ar ) {} // don't listen
+private:
+ QList<Interface> m_interfaces;
+};
+
+extern "C" {
+ void* create_plugin() {
+ return new %{APPNAME}Module();
+ }
+};
+
+#endif