summaryrefslogtreecommitdiffstats
path: root/languages/cpp/app_templates/tdevpart2
diff options
context:
space:
mode:
Diffstat (limited to 'languages/cpp/app_templates/tdevpart2')
-rw-r--r--languages/cpp/app_templates/tdevpart2/CMakeLists.txt30
-rw-r--r--languages/cpp/app_templates/tdevpart2/Makefile.am21
-rw-r--r--languages/cpp/app_templates/tdevpart2/README.dox55
-rw-r--r--languages/cpp/app_templates/tdevpart2/app.tdevelop148
-rw-r--r--languages/cpp/app_templates/tdevpart2/globalconfig.cpp15
-rw-r--r--languages/cpp/app_templates/tdevpart2/globalconfig.h23
-rw-r--r--languages/cpp/app_templates/tdevpart2/globalconfigbase.ui20
-rw-r--r--languages/cpp/app_templates/tdevpart2/projectconfig.cpp15
-rw-r--r--languages/cpp/app_templates/tdevpart2/projectconfig.h23
-rw-r--r--languages/cpp/app_templates/tdevpart2/projectconfigbase.ui20
-rw-r--r--languages/cpp/app_templates/tdevpart2/src-Makefile.am17
-rw-r--r--languages/cpp/app_templates/tdevpart2/subdirs3
-rw-r--r--languages/cpp/app_templates/tdevpart2/tdevpart-configure.in.in10
-rw-r--r--languages/cpp/app_templates/tdevpart2/tdevpart.desktop83
-rw-r--r--languages/cpp/app_templates/tdevpart2/tdevpart2.pngbin0 -> 483 bytes
-rw-r--r--languages/cpp/app_templates/tdevpart2/tdevpart2.tdevtemplate276
-rw-r--r--languages/cpp/app_templates/tdevpart2/tdevpart_part.cpp183
-rw-r--r--languages/cpp/app_templates/tdevpart2/tdevpart_part.h46
-rw-r--r--languages/cpp/app_templates/tdevpart2/tdevpart_part.rc11
-rw-r--r--languages/cpp/app_templates/tdevpart2/tdevpart_widget.cpp21
-rw-r--r--languages/cpp/app_templates/tdevpart2/tdevpart_widget.h24
21 files changed, 1044 insertions, 0 deletions
diff --git a/languages/cpp/app_templates/tdevpart2/CMakeLists.txt b/languages/cpp/app_templates/tdevpart2/CMakeLists.txt
new file mode 100644
index 00000000..d48daf45
--- /dev/null
+++ b/languages/cpp/app_templates/tdevpart2/CMakeLists.txt
@@ -0,0 +1,30 @@
+#################################################
+#
+# (C) 2010-2011 Serghei Amelian
+# serghei (DOT) amelian (AT) gmail.com
+#
+# Improvements and feedback are welcome
+#
+# This file is released under GPL >= 2
+#
+#################################################
+
+add_custom_target( tdevpart2.tar.gz ALL
+ COMMAND tar zcf tdevpart2.tar.gz -C ${CMAKE_CURRENT_SOURCE_DIR}
+ src-Makefile.am tdevpart_part.cpp tdevpart_part.h
+ tdevpart_widget.h tdevpart_widget.cpp tdevpart_part.rc
+ tdevpart.desktop app.tdevelop tdevpart-configure.in.in
+ README.dox subdirs globalconfigbase.ui globalconfig.h
+ globalconfig.cpp projectconfigbase.ui projectconfig.h
+ projectconfig.cpp
+)
+
+
+install( FILES
+ ${CMAKE_CURRENT_BINARY_DIR}/tdevpart2.tar.gz tdevpart2.png
+ DESTINATION ${DATA_INSTALL_DIR}/tdevappwizard )
+
+
+install( FILES
+ tdevpart2.tdevtemplate
+ DESTINATION ${DATA_INSTALL_DIR}/tdevappwizard/templates )
diff --git a/languages/cpp/app_templates/tdevpart2/Makefile.am b/languages/cpp/app_templates/tdevpart2/Makefile.am
new file mode 100644
index 00000000..ae1df924
--- /dev/null
+++ b/languages/cpp/app_templates/tdevpart2/Makefile.am
@@ -0,0 +1,21 @@
+dataFiles = src-Makefile.am tdevpart_part.cpp tdevpart_part.h\
+ tdevpart_widget.h tdevpart_widget.cpp \
+ tdevpart_part.rc tdevpart.desktop app.tdevelop \
+ tdevpart-configure.in.in README.dox subdirs globalconfigbase.ui globalconfig.h \
+ globalconfig.cpp projectconfigbase.ui projectconfig.h projectconfig.cpp
+
+templateName = tdevpart2
+
+### no need to change below:
+template_DATA = $(templateName).tdevtemplate
+templatedir = ${appwizarddatadir}/templates
+
+appwizarddatadir = ${kde_datadir}/tdevappwizard
+$(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 \ No newline at end of file
diff --git a/languages/cpp/app_templates/tdevpart2/README.dox b/languages/cpp/app_templates/tdevpart2/README.dox
new file mode 100644
index 00000000..7069f3a5
--- /dev/null
+++ b/languages/cpp/app_templates/tdevpart2/README.dox
@@ -0,0 +1,55 @@
+/** \class %{APPNAME}
+Put a brief description here, the brief description ends at the first dot.
+Put a more detailed description of your part in these lines. It can span
+over several lines. You can even use some html commands in these lines like:
+<code>This is code</code>, html links <a href="http://somelocation">link text</a>,
+and images.
+
+\authors <a href="mailto:%{EMAIL}">%{AUTHOR}</a>
+\authors <a href="mailto:2nd author AT provider.com">2nd author full name</a>
+...
+\authors <a href="mailto:nth author AT provider.com">nth author full name</a>
+
+\maintainer <a href="mailto:%{EMAIL}">%{AUTHOR}</a>
+\maintainer <a href="mailto:2nd maintainer AT provider.com">2nd maintainer full name</a>
+...
+\maintainer <a href="mailto:nth maintainer AT provider.com">nth maintainer full name</a>
+
+\feature Describe the first feature
+\feature Describe the second feature
+...
+\feature Describe the last feature
+
+\bug bugs in <a href="http://bugs.kde.org/buglist.cgi?product=tdevelop&component=YOUR_COMPONENT_NAME&
+bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&order=Bug+Number">
+YOUR_COMPONENT_NAME at Bugzilla database</a>
+\bug Describe a the 1st bug that you know of, but probably hasn't been reported yet.
+..
+\bug Describe a the nth bug that you know of, but probably hasn't been reported yet.
+
+\requirement Describe a the 1st requirement of your part.
+\requirement Describe a the 2nd requirement of your part.
+...
+\requirement Describe a the nth requirement of your part.
+
+\todo Describe a the 1st TODO of your part.
+\todo Describe a the 2nd TODO of your part.
+...
+\todo Describe a the nth TODO of your part.
+
+\faq <b>First frequenly asked question about your part ?</b> Answer.
+\faq <b>Second frequenly asked question about your part ?</b> Answer.
+...
+\faq <b>Last frequenly asked question about your part ?</b> Answer.
+
+\note First note text.
+\note Second note text.
+...
+\note Last note text.
+
+\warning First warning text.
+\warning Second warning text.
+...
+\warning Last warning text.
+
+*/
diff --git a/languages/cpp/app_templates/tdevpart2/app.tdevelop b/languages/cpp/app_templates/tdevpart2/app.tdevelop
new file mode 100644
index 00000000..ac470cdc
--- /dev/null
+++ b/languages/cpp/app_templates/tdevpart2/app.tdevelop
@@ -0,0 +1,148 @@
+<?xml version = '1.0'?>
+<tdevelop>
+ <general>
+ <author>%{AUTHOR}</author>
+ <email>%{EMAIL}</email>
+ <version>%{VERSION}</version>
+ <projectmanagement>KDevTDEAutoProject</projectmanagement>
+ <primarylanguage>C++</primarylanguage>
+ <keywords>
+ <keyword>C++</keyword>
+ <keyword>Code</keyword>
+ <keyword>Qt</keyword>
+ <keyword>TDE</keyword>
+ <keyword>KDevelop</keyword>
+ </keywords>
+ </general>
+ <tdevautoproject>
+ <general>
+ <activetarget>src/%{APPNAMELC}</activetarget>
+ <useconfiguration>debug</useconfiguration>
+ </general>
+ <run>
+ <mainprogram>src/%{APPNAMELC}</mainprogram>
+ <directoryradio>executable</directoryradio>
+ </run>
+ <configurations>
+ <optimized>
+ <builddir>optimized</builddir>
+ <ccompiler>kdevgccoptions</ccompiler>
+ <cxxcompiler>kdevgppoptions</cxxcompiler>
+ <f77compiler>kdevg77options</f77compiler>
+ <cxxflags>-O2 -g0</cxxflags>
+ </optimized>
+ <debug>
+ <configargs>--enable-debug=full</configargs>
+ <builddir>debug</builddir>
+ <ccompiler>kdevgccoptions</ccompiler>
+ <cxxcompiler>kdevgppoptions</cxxcompiler>
+ <f77compiler>kdevg77options</f77compiler>
+ <cxxflags>-O0 -g3</cxxflags>
+ </debug>
+ </configurations>
+ <make>
+ <envvars>
+ <envvar value="1" name="WANT_AUTOCONF_2_5" />
+ <envvar value="1" name="WANT_AUTOMAKE_1_6" />
+ </envvars>
+ </make>
+ </tdevautoproject>
+ <tdevfileview>
+ <groups>
+ <group pattern="*.cpp;*.cxx;*.h" name="Sources" />
+ <group pattern="*.ui" name="User Interface" />
+ <group pattern="*.png" name="Icons" />
+ <group pattern="*.po;*.ts" name="Translations" />
+ <group pattern="*" name="Others" />
+ </groups>
+ <tree>
+ <hidepatterns></hidepatterns>
+ <hidenonprojectfiles>false</hidenonprojectfiles>
+ <showvcsfields>true</showvcsfields>
+ </tree>
+ </tdevfileview>
+ <tdevdoctreeview>
+ <ignoretocs>
+ <toc>ada</toc>
+ <toc>ada_bugs_gcc</toc>
+ <toc>bash</toc>
+ <toc>bash_bugs</toc>
+ <toc>clanlib</toc>
+ <toc>w3c-dom-level2-html</toc>
+ <toc>fortran_bugs_gcc</toc>
+ <toc>gnome1</toc>
+ <toc>gnustep</toc>
+ <toc>gtk</toc>
+ <toc>gtk_bugs</toc>
+ <toc>haskell</toc>
+ <toc>haskell_bugs_ghc</toc>
+ <toc>java_bugs_gcc</toc>
+ <toc>java_bugs_sun</toc>
+ <toc>pascal_bugs_fp</toc>
+ <toc>php</toc>
+ <toc>php_bugs</toc>
+ <toc>perl</toc>
+ <toc>perl_bugs</toc>
+ <toc>python</toc>
+ <toc>python_bugs</toc>
+ <toc>ruby</toc>
+ <toc>ruby_bugs</toc>
+ <toc>sdl</toc>
+ <toc>w3c-svg</toc>
+ <toc>sw</toc>
+ <toc>w3c-uaag10</toc>
+ <toc>wxwidgets_bugs</toc>
+ </ignoretocs>
+ <ignoreqt_xml>
+ <toc>qmake User Guide</toc>
+ </ignoreqt_xml>
+ </tdevdoctreeview>
+ <tdevdebugger>
+ <general>
+ <dbgshell>libtool</dbgshell>
+ </general>
+ </tdevdebugger>
+ <tdevfilecreate>
+ <filetypes/>
+ <useglobaltypes>
+ <type ext="ui" />
+ <type ext="cpp" />
+ <type ext="h" />
+ </useglobaltypes>
+ </tdevfilecreate>
+ <tdevcvs>
+ <cvsoptions>-f</cvsoptions>
+ <commitoptions></commitoptions>
+ <addoptions></addoptions>
+ <logoptions></logoptions>
+ <updateoptions>-dP</updateoptions>
+ <removeoptions>-f</removeoptions>
+ <revertoptions>-C -d -P</revertoptions>
+ <diffoptions>-u3 -p</diffoptions>
+ <rshoptions></rshoptions>
+ </tdevcvs>
+ <tdevcppsupport>
+ <qt>
+ <version>3</version>
+ <used>true</used>
+ <includestyle>3</includestyle>
+ <designerintegration>EmbeddedTDevDesigner</designerintegration>
+ </qt>
+ <codecompletion>
+ <includeGlobalFunctions>true</includeGlobalFunctions>
+ <includeTypes>true</includeTypes>
+ <includeEnums>true</includeEnums>
+ <includeTypedefs>false</includeTypedefs>
+ <automaticCodeCompletion>true</automaticCodeCompletion>
+ <automaticArgumentsHint>true</automaticArgumentsHint>
+ <codeCompletionDelay>250</codeCompletionDelay>
+ <argumentsHintDelay>400</argumentsHintDelay>
+ </codecompletion>
+ </tdevcppsupport>
+ <tdevdocumentation>
+ <projectdoc>
+ <docsystem>Doxygen Documentation Collection</docsystem>
+ <docurl>%{APPNAMELC}.tag</docurl>
+ </projectdoc>
+ </tdevdocumentation>
+</tdevelop>
diff --git a/languages/cpp/app_templates/tdevpart2/globalconfig.cpp b/languages/cpp/app_templates/tdevpart2/globalconfig.cpp
new file mode 100644
index 00000000..cddf3e7e
--- /dev/null
+++ b/languages/cpp/app_templates/tdevpart2/globalconfig.cpp
@@ -0,0 +1,15 @@
+%{CPP_TEMPLATE}
+#include "%{APPNAMELC}globalconfig.h"
+
+#include "%{APPNAMELC}part.h"
+
+%{APPNAME}GlobalConfig::%{APPNAME}GlobalConfig(%{APPNAME}Part *part, TQWidget *parent, const char *name)
+ : %{APPNAME}GlobalConfigBase(parent, name), m_part(part)
+{
+}
+
+void %{APPNAME}GlobalConfig::accept()
+{
+}
+
+#include "%{APPNAMELC}globalconfig.moc"
diff --git a/languages/cpp/app_templates/tdevpart2/globalconfig.h b/languages/cpp/app_templates/tdevpart2/globalconfig.h
new file mode 100644
index 00000000..723dbae2
--- /dev/null
+++ b/languages/cpp/app_templates/tdevpart2/globalconfig.h
@@ -0,0 +1,23 @@
+%{H_TEMPLATE}
+#ifndef %{APPNAMEUC}_GLOBAL_CONFIG_H
+#define %{APPNAMEUC}_GLOBAL_CONFIG_H
+
+#include "%{APPNAMELC}globalconfigbase.h"
+
+class %{APPNAME}Part;
+
+class %{APPNAME}GlobalConfig: public %{APPNAME}GlobalConfigBase
+{
+ Q_OBJECT
+
+public:
+ %{APPNAME}GlobalConfig(%{APPNAME}Part *part, TQWidget *parent = 0, const char *name = 0);
+
+public slots:
+ void accept();
+
+private:
+ %{APPNAME}Part *m_part;
+};
+
+#endif
diff --git a/languages/cpp/app_templates/tdevpart2/globalconfigbase.ui b/languages/cpp/app_templates/tdevpart2/globalconfigbase.ui
new file mode 100644
index 00000000..588f9dc9
--- /dev/null
+++ b/languages/cpp/app_templates/tdevpart2/globalconfigbase.ui
@@ -0,0 +1,20 @@
+<!DOCTYPE UI><UI version="3.2" stdsetdef="1">
+<class>%{APPNAME}GlobalConfigBase</class>
+<widget class="TQWidget">
+ <property name="name">
+ <cstring>%{APPNAME}GlobalConfigBase</cstring>
+ </property>
+ <property name="geometry">
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>600</width>
+ <height>480</height>
+ </rect>
+ </property>
+ <property name="caption">
+ <string>%{APPNAME}</string>
+ </property>
+</widget>
+<layoutdefaults spacing="6" margin="11"/>
+</UI>
diff --git a/languages/cpp/app_templates/tdevpart2/projectconfig.cpp b/languages/cpp/app_templates/tdevpart2/projectconfig.cpp
new file mode 100644
index 00000000..42a9f3e7
--- /dev/null
+++ b/languages/cpp/app_templates/tdevpart2/projectconfig.cpp
@@ -0,0 +1,15 @@
+%{CPP_TEMPLATE}
+#include "%{APPNAMELC}projectconfig.h"
+
+#include "%{APPNAMELC}part.h"
+
+%{APPNAME}ProjectConfig::%{APPNAME}ProjectConfig(%{APPNAME}Part *part, TQWidget *parent, const char *name)
+ : %{APPNAME}ProjectConfigBase(parent, name), m_part(part)
+{
+}
+
+void %{APPNAME}ProjectConfig::accept()
+{
+}
+
+#include "%{APPNAMELC}projectconfig.moc"
diff --git a/languages/cpp/app_templates/tdevpart2/projectconfig.h b/languages/cpp/app_templates/tdevpart2/projectconfig.h
new file mode 100644
index 00000000..49d4f089
--- /dev/null
+++ b/languages/cpp/app_templates/tdevpart2/projectconfig.h
@@ -0,0 +1,23 @@
+%{H_TEMPLATE}
+#ifndef %{APPNAMEUC}_PROJECT_CONFIG_H
+#define %{APPNAMEUC}_PROJECT_CONFIG_H
+
+#include "%{APPNAMELC}projectconfigbase.h"
+
+class %{APPNAME}Part;
+
+class %{APPNAME}ProjectConfig: public %{APPNAME}ProjectConfigBase
+{
+ Q_OBJECT
+
+public:
+ %{APPNAME}ProjectConfig(%{APPNAME}Part *part, TQWidget *parent = 0, const char *name = 0);
+
+public slots:
+ void accept();
+
+private:
+ %{APPNAME}Part *m_part;
+};
+
+#endif
diff --git a/languages/cpp/app_templates/tdevpart2/projectconfigbase.ui b/languages/cpp/app_templates/tdevpart2/projectconfigbase.ui
new file mode 100644
index 00000000..30849e54
--- /dev/null
+++ b/languages/cpp/app_templates/tdevpart2/projectconfigbase.ui
@@ -0,0 +1,20 @@
+<!DOCTYPE UI><UI version="3.2" stdsetdef="1">
+<class>%{APPNAME}ProjectConfigBase</class>
+<widget class="TQWidget">
+ <property name="name">
+ <cstring>%{APPNAME}ProjectConfigBase</cstring>
+ </property>
+ <property name="geometry">
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>600</width>
+ <height>480</height>
+ </rect>
+ </property>
+ <property name="caption">
+ <string>%{APPNAME}</string>
+ </property>
+</widget>
+<layoutdefaults spacing="6" margin="11"/>
+</UI>
diff --git a/languages/cpp/app_templates/tdevpart2/src-Makefile.am b/languages/cpp/app_templates/tdevpart2/src-Makefile.am
new file mode 100644
index 00000000..407d9565
--- /dev/null
+++ b/languages/cpp/app_templates/tdevpart2/src-Makefile.am
@@ -0,0 +1,17 @@
+INCLUDES = -I$(kde_includes)/tdevelop/interfaces -I$(kde_includes)/tdevelop/util $(all_includes)
+
+kde_module_LTLIBRARIES = libtdev%{APPNAMELC}.la
+libtdev%{APPNAMELC}_la_LDFLAGS = -module -avoid-version -no-undefined $(all_libraries) $(KDE_PLUGIN)
+libtdev%{APPNAMELC}_la_LIBADD = -ltdevelop
+libtdev%{APPNAMELC}_la_SOURCES = %{APPNAMELC}part.cpp %{APPNAMELC}widget.cpp %{APPNAMELC}globalconfigbase.ui %{APPNAMELC}globalconfig.cpp %{APPNAMELC}projectconfigbase.ui %{APPNAMELC}projectconfig.cpp
+
+METASOURCES = AUTO
+
+servicedir = $(kde_servicesdir)
+service_DATA = kdev%{APPNAMELC}.desktop
+
+rcdir = $(kde_datadir)/kdev%{APPNAMELC}
+rc_DATA = kdev%{APPNAMELC}.rc
+
+appsharedir = $(kde_datadir)/kdev%{APPNAMELC}
+appshare_DATA =
diff --git a/languages/cpp/app_templates/tdevpart2/subdirs b/languages/cpp/app_templates/tdevpart2/subdirs
new file mode 100644
index 00000000..0e678106
--- /dev/null
+++ b/languages/cpp/app_templates/tdevpart2/subdirs
@@ -0,0 +1,3 @@
+doc
+po
+src
diff --git a/languages/cpp/app_templates/tdevpart2/tdevpart-configure.in.in b/languages/cpp/app_templates/tdevpart2/tdevpart-configure.in.in
new file mode 100644
index 00000000..f08ae2b7
--- /dev/null
+++ b/languages/cpp/app_templates/tdevpart2/tdevpart-configure.in.in
@@ -0,0 +1,10 @@
+#MIN_CONFIG(3.0.0)
+
+AM_INIT_AUTOMAKE(%{APPNAMELC}, %{VERSION})
+AC_C_BIGENDIAN
+AC_CHECK_TDEMAXPATHLEN
+
+KDE_CHECK_HEADERS([tdevelop/interfaces/tdevcore.h])
+KDE_CHECK_LIB([tdevelop],main,
+ [LIBTDEVELOP="-ltdevelop"])
+AC_SUBST(LIBTDEVELOP)
diff --git a/languages/cpp/app_templates/tdevpart2/tdevpart.desktop b/languages/cpp/app_templates/tdevpart2/tdevpart.desktop
new file mode 100644
index 00000000..c3eb6a81
--- /dev/null
+++ b/languages/cpp/app_templates/tdevpart2/tdevpart.desktop
@@ -0,0 +1,83 @@
+[Desktop Entry]
+Type=Service
+Exec=blubb
+Name=KDev%{APPNAME}
+Name[nds]=KDev%{ProgNaam}
+Name[sv]=TDevelop %{APPNAME}
+Name[ta]=கெடெவ்%{APPNAME}
+GenericName=%{APPNAME} Plugin
+GenericName[br]=Lugent %{APPNAME}
+GenericName[ca]=Connector per a %{APPNAME}
+GenericName[da]=%{APPNAME} plugin
+GenericName[de]=%{APPNAME}-Modul
+GenericName[el]=Πρόσθετο %{APPNAME}
+GenericName[es]=Complemento %{APPNAME}
+GenericName[et]=%{APPNAME} plugin
+GenericName[eu]=%{APPNAME} plugina
+GenericName[fa]=وصلۀ %{APPNAME}
+GenericName[fr]=Module externe pour %{APPNAME}
+GenericName[ga]=Breiseán %{APPNAME}
+GenericName[gl]=Extensión %{APPNAME}
+GenericName[hu]=%{APPNAME}-bővítőmodul
+GenericName[it]=Plugin %{APPNAME}
+GenericName[ja]=%{APPNAME} プラグイン
+GenericName[nds]=%{APPNAME}-Moduul
+GenericName[ne]=%{APPNAME} प्लगइन
+GenericName[nl]=%{APPNAME}-plugin
+GenericName[pl]=Wtyczka %{APPNAME}
+GenericName[pt]='Plugin' %{APPNAME}
+GenericName[pt_BR]=Plug-in do %{APPNAME}
+GenericName[ru]=Модуль %{APPNAME}
+GenericName[sk]=%{APPNAME} modul
+GenericName[sl]=Vstavek za %{APPNAME}
+GenericName[sr]=%{APPNAME} прикључак
+GenericName[sr@Latn]=%{APPNAME} priključak
+GenericName[sv]=%{APPNAME} insticksprogram
+GenericName[tr]=%{APPNAME} Eklentisi
+GenericName[zh_CN]=%{APPNAME} 插件
+GenericName[zh_TW]=%{APPNAME} 外掛程式
+Comment=%{APPNAME} Description
+Comment[br]=Deskrivadur %{APPNAME}
+Comment[ca]=Descripció per a %{APPNAME}
+Comment[da]=%{APPNAME} beskrivelse
+Comment[de]=%{APPNAME} Beschreibung
+Comment[el]=Περιγραφή %{APPNAME}
+Comment[es]=Descripción de %{APPNAME}
+Comment[et]=%{APPNAME} kirjeldus
+Comment[eu]=%{APPNAME} deskribapena
+Comment[fa]=توصیف %{APPNAME}
+Comment[fr]=Description pour %{APPNAME}
+Comment[ga]=Cur Síos %{APPNAME}
+Comment[gl]=Descripción de %{APPNAME}
+Comment[hu]=%{APPNAME} leírása
+Comment[it]=Descrizione %{APPNAME}
+Comment[ja]=%{APPNAME} 概説
+Comment[nds]=%{APPNAME}-Beschrieven
+Comment[ne]=%{APPNAME} वर्णन
+Comment[nl]=%{APPNAME} omschrijving
+Comment[pl]=Opis %{APPNAME}
+Comment[pt]=Descrição de %{APPNAME$}
+Comment[pt_BR]=Descrição do %{APPNAME}
+Comment[ru]=Описание %{APPNAME}
+Comment[sk]=%{APPNAME} popis
+Comment[sl]=Opis za %{APPNAME}
+Comment[sr]=Опис за %{APPNAME}
+Comment[sr@Latn]=Opis za %{APPNAME}
+Comment[sv]=%{APPNAME} beskrivning
+Comment[tr]=%{APPNAME} Tanımı
+Comment[zh_CN]=%{APPNAME} 描述
+Comment[zh_TW]=%{APPNAME} 描述
+Icon=tdevelop
+ServiceTypes=TDevelop/Plugin
+
+X-TDevelop-Plugin-Version=1
+X-TDevelop-Plugin-Homepage=
+X-TDevelop-Plugin-BugsEmailAddress=%{EMAIL}
+X-TDevelop-Plugin-Copyright=(C) by %{AUTHOR}
+
+X-TDevelop-Args=
+
+X-TDevelop-Scope=%{SCOPE}
+X-TDE-Library=libtdev%{APPNAMELC}
+X-TDevelop-Version=3
+X-TDevelop-Properties=%{PROPS}
diff --git a/languages/cpp/app_templates/tdevpart2/tdevpart2.png b/languages/cpp/app_templates/tdevpart2/tdevpart2.png
new file mode 100644
index 00000000..840a953c
--- /dev/null
+++ b/languages/cpp/app_templates/tdevpart2/tdevpart2.png
Binary files differ
diff --git a/languages/cpp/app_templates/tdevpart2/tdevpart2.tdevtemplate b/languages/cpp/app_templates/tdevpart2/tdevpart2.tdevtemplate
new file mode 100644
index 00000000..b0431099
--- /dev/null
+++ b/languages/cpp/app_templates/tdevpart2/tdevpart2.tdevtemplate
@@ -0,0 +1,276 @@
+# TDE Config File
+[General]
+Name=TDevelop Plugin (Standalone build)
+Name[ca]=Connector per a TDevelop (de construcció aïllada)
+Name[da]=TDevelop plugin (Alenestående)
+Name[de]=TDevelop-Modul (Unabhängige Erstellung)
+Name[el]=Πρόσθετο TDevelop (Αυτόνομη κατασκευή)
+Name[es]=Complemento para TDevelop (construcción independiente)
+Name[et]=TDevelopi plugin (autonoomne)
+Name[eu]=TDevelop plugin-a (eraikuntza autonomoak)
+Name[fa]=وصلۀ TDevelop )ساخت خوداتکا(
+Name[fr]=Module externe pour TDevelop (construction autonome)
+Name[ga]=Breiseán TDevelop (Tógáil Shaorsheasaimh)
+Name[gl]=Extensión para TDevelop (compilación independente)
+Name[hu]=TDevelop-bővítőmodul (önálló)
+Name[it]=Plugin di TDevelop (compilazione indipendente)
+Name[ja]=TDevelop プラグイン (スタンダローンビルド)
+Name[nds]=TDevelop-Moduul (Enkelprogramm)
+Name[ne]=केडीई विकास प्लगइन (स्ट्यान्डअलोन निर्माण)
+Name[nl]=TDevelop-plugin (standalone build)
+Name[pl]=Wtyczka do TDevelopa (budowana oddzielnie)
+Name[pt]='Plugin' do TDevelop (compilação autónoma)
+Name[pt_BR]='Plugin' do TDevelop (compilação autónoma)
+Name[ru]=Модуль TDevelop (внешний)
+Name[sk]=TDevelop modul (samostatný build)
+Name[sl]=Vstavek za TDevelop (samostojna izgradnja)
+Name[sr]=Прикључак за TDevelop
+Name[sr@Latn]=Priključak za TDevelop
+Name[sv]=TDevelop-insticksprogram (att bygga fristående)
+Name[tr]=TDevelop Eklentisi (Kendi başına çalışabilen)
+Name[zh_CN]=TDevelop 插件(独立编译)
+Name[zh_TW]=TDevelop 外掛程式(單獨建立)
+Category=C++/TDevelop/
+Comment=This generates a KPart for TDevelop, to be built outside of the TDevelop source tree.
+Comment[ca]=Genera una KPart per a TDevelop, per a que es construeixi fora de l'arbre de fonts de TDevelop.
+Comment[da]=Dette genererer en KPart for TDevelop, til at bygges udenfor TDevelop's kildetræ.
+Comment[de]=Hiermit wird eine Komponente (KPart) für TDevelop generiert, die außerhalb des Quelltextbaumes von TDevelop erstellt wird.
+Comment[el]=Αυτό δημιουργεί ένα KPart για το TDevelop, για κατασκευή του έξω από το δέντρο πηγαίου κώδικα του TDevelop.
+Comment[es]=Genera un KPart para TDevelop, para ser construido fuera del árbol de código fuente de TDevelop.
+Comment[et]=TDevelopi KPart'i loomine, mida saab ehitada väljaspool TDevelopi lähtekoodipuud.
+Comment[eu]=Honek TDevelop-en KPart bat sortzen du, TDevelop-en iturburu-zuhaitzetik at eraikitzeko.
+Comment[fa]=یک KPart برای TDevelop، برای ساخته شدن در بیرون درخت منبع پروژه تولید می‌کند.
+Comment[fr]=Génère un KPart pour TDevelop, à construire en dehors de l'arborescence des sources de TDevelop.
+Comment[gl]=Isto xera un KPart para TDevelop que se compilará fóra da árbore de código de TDevelop.
+Comment[hu]=Létrehoz egy TDevelop-bővítőmodult, mely a TDevelopos forráskönyvtáron kívül fordítható le.
+Comment[it]=Genera un KPart per TDevelop, da compilare al di fuori dell'albero sorgente di TDevelop.
+Comment[nds]=Dit stellt en KPart-Komponent för TDevelop op, dat buten den TDevelop-Bornboom kompileert warrt.
+Comment[ne]=यसले केडीई विकास स्रोत ट्री बाहिर निर्माण हुने, केडीई विकासका लागि केडीई भाग उत्पन्न गर्दछ ।
+Comment[nl]=Dit genereert een KPart voor TDevelop, welke buiten de TDevelop sourcetree wordt gebouwd.
+Comment[pl]=Generuje KPart dla TDevelopa budowane poza jego drzewem źródłowym.
+Comment[pt]=Isto gera uma KPart para o TDevelop, de modo a ser compilada fora da árvore de código do TDevelop.
+Comment[pt_BR]=Isto gera uma KPart para o TDevelop, de modo a ser compilada fora da árvore de código do TDevelop.
+Comment[ru]=Создание компонента KPart для TDevelop со сборкой вне исходного кода TDevelop.
+Comment[sk]=Vygenruje KPart pre TDevelop, tak aby ho bolo možné kompilovať mimo zdrojový strom TDevelop.
+Comment[sr]=Ово прави KPart за TDevelop, за градњу изван TDevelop-овог изворног стабла.
+Comment[sr@Latn]=Ovo pravi KPart za TDevelop, za gradnju izvan TDevelop-ovog izvornog stabla.
+Comment[sv]=Detta skapar ett TDevelop-delprogram, att bygga utanför TDevelops källkodsträd.
+Comment[tr]=Bu, TDevelop için, TDevelop kaynak ağacının dışında yapılacak, bir KPart yaratır.
+Comment[zh_CN]=这将生成一个 TDevelop 的 KPart,可以在 TDevelop 源代码树之外编译。
+Comment[zh_TW]=產生一個 TDevelop 的 KPart 元件,建立在 TDevelop 程式源碼樹之外。
+FileTemplates=h,CStyle,cpp,CStyle
+ShowFilesAfterGeneration=%{dest}/%{APPNAMELC}_part.cpp
+Archive=tdevpart2.tar.gz
+
+[SCOPE]
+Type = value
+ValueType=QString
+Value= SCOPE
+Comment= The scope of a plugin (Global, Project, Core)
+Comment[ca]= L'àmbit d'un connector (Global, Project, Core)
+Comment[da]= Et plugins omfang (Globalt, Projekt, Kerne)
+Comment[de]= Gültigkeitsbereich eines Moduls (Global, Projekt, Kern)
+Comment[el]= Η εμβέλεια ενός πρόσθετου (Καθολική, Έργο, Πυρήνας)
+Comment[es]=El alcance de un complemento (global, proyecto, núcleo)
+Comment[et]=Plugina skoop (globaalne, projekt, tuum)
+Comment[eu]= Pluginaren barrutia (Globala, Projektua, Nukleoa)
+Comment[fa]=دامنۀ یک وصله )سراسری، پروژه، هسته(
+Comment[fr]= La portée d'un module externe (globale, projet, core)
+Comment[ga]= Scóip an bhreiseáin (Comhchoiteann, Tionscadal, Ceartlár)
+Comment[gl]=Ámbito da extensión (Global, Proxecto, Núcleo)
+Comment[hu]=A modul hatóköre (globális, projektszintű, alap)
+Comment[it]=Il contesto di un plugin (Globale, Progetto, Core)
+Comment[nds]= Dat Rebeet vun en Moduul (Globaal, Projekt, Karn)
+Comment[ne]= प्लगइनको क्षेत्र (विश्वव्यापी, परियोजना, कोर)
+Comment[nl]=Het bereik van een plugin (globaal, project, core)
+Comment[pl]=Przynależność wtyczki (globalna, projekt, część główna)
+Comment[pt]=O âmbito de um 'plugin' (Global, Projecto, Núcleo)
+Comment[pt_BR]=O âmbito de um 'plugin' (Global, Projecto, Núcleo)
+Comment[ru]=Тип модуля (Global, Project, Core)
+Comment[sk]=Rozsah module (globálny, projektový, jadrový)
+Comment[sr]=Опсег прикључка (глобални, пројекат, језгро)
+Comment[sr@Latn]=Opseg priključka (globalni, projekat, jezgro)
+Comment[sv]=Insticksprogrammets omfattning (Global, Projekt, Kärna)
+Comment[tr]=Bir eklentinin alanı (Genel, Proje, İç)
+Comment[zh_CN]=插件的范围(全局、工程、核心)
+Comment[zh_TW]=外掛程式的範圍(全域、專案、核心)
+Default= Global
+
+[PROPS]
+Type = value
+ValueType=QString
+Value= PROPS
+Comment= The list of supported TDevelop properties
+Comment[ca]= La llista de propietats suportades del TDevelop
+Comment[da]= Listen af understøttede TDevelop-egenskaber
+Comment[de]= Die Liste der unterstützten TDevelop-Eigenschaften
+Comment[el]= Η λίστα των υποστηριζόμενων ιδιοτήτων του TDevelop
+Comment[es]=La lista de propiedades de TDevelop soportadas
+Comment[et]= TDevelopi toetatud omaduste nimekiri
+Comment[eu]= Onartzen diren TDevelop-en propietateen zerrenda
+Comment[fa]=فهرست ویژگیهای پشتیبانی‌شدۀ TDevelop
+Comment[fr]= La liste des propriétés de TDevelop prises en charge
+Comment[ga]= Liosta d'airíonna TDevelop a dtacaítear leo
+Comment[gl]=Lista das propiedades de TDevelop soportadas
+Comment[hu]=A támogatott TDevelop-tulajdonságok
+Comment[it]=Lista delle proprietà supportate da TDevelop
+Comment[nds]= De List mit ünnerstütt TDevelop-Egenschappen
+Comment[ne]= केडीई विकास समर्थन गर्ने गुणको सूची
+Comment[nl]=De lijst met ondersteunde TDevelop-properties
+Comment[pl]= Lista obsługiwanych właściwości TDevelopa
+Comment[pt]= A lista de propriedades do TDevelop suportadas
+Comment[pt_BR]= A lista de propriedades do TDevelop suportadas
+Comment[ru]=Список поддерживаемых типов модулей для TDevelop
+Comment[sk]=Zoznam podporovaných vlastností TDevelop
+Comment[sl]=Seznam podprtih lastnosti TDevelop
+Comment[sr]=Листа подржаних TDevelop-ових својстава
+Comment[sr@Latn]=Lista podržanih TDevelop-ovih svojstava
+Comment[sv]=Listan med egenskaper i TDevelop som stöds
+Comment[tr]=Desteklenen TDevelop özellikleri
+Comment[zh_CN]=列出支持的 TDevelop 属性
+Comment[zh_TW]=支援的 TDevelop 屬性列表
+Default=
+
+[ADMIN]
+Type=include
+File=%{tdevelop}/template-common/admin.tdevtemplate
+
+[GNU]
+Type=include
+File=%{tdevelop}/template-common/gnu.tdevtemplate
+
+[FILE1]
+Type=install
+EscapeXML=true
+Source=%{src}/app.tdevelop
+Dest=%{dest}/%{APPNAMELC}.tdevelop
+
+[FILE2]
+Type=install
+Source=%{tdevelop}/template-common/kde-Makefile.am
+Dest=%{dest}/Makefile.am
+
+[FILE3]
+Type=install
+Source=%{tdevelop}/template-common/kde-Makefile.cvs
+Dest=%{dest}/Makefile.cvs
+
+[FILE4]
+Type=install
+Source=%{src}/subdirs
+Dest=%{dest}/subdirs
+
+[FILE5]
+Type=install
+Source=%{src}/tdevpart-configure.in.in
+Dest=%{dest}/configure.in.in
+
+[MkDir1]
+Type=mkdir
+Dir=%{dest}/src
+
+[FILE6]
+Type=install
+Source=%{src}/src-Makefile.am
+Dest=%{dest}/src/Makefile.am
+
+[FILE7]
+Type=install
+Source=%{src}/tdevpart_part.cpp
+Dest=%{dest}/src/%{APPNAMELC}part.cpp
+
+[FILE71]
+Type=install
+EscapeXML=true
+Source=%{src}/globalconfigbase.ui
+Dest=%{dest}/src/%{APPNAMELC}globalconfigbase.ui
+
+[FILE711]
+Type=install
+Source=%{src}/globalconfig.h
+Dest=%{dest}/src/%{APPNAMELC}globalconfig.h
+
+[FILE712]
+Type=install
+Source=%{src}/globalconfig.cpp
+Dest=%{dest}/src/%{APPNAMELC}globalconfig.cpp
+
+[FILE72]
+Type=install
+EscapeXML=true
+Source=%{src}/projectconfigbase.ui
+Dest=%{dest}/src/%{APPNAMELC}projectconfigbase.ui
+
+[FILE721]
+Type=install
+Source=%{src}/projectconfig.h
+Dest=%{dest}/src/%{APPNAMELC}projectconfig.h
+
+[FILE722]
+Type=install
+Source=%{src}/projectconfig.cpp
+Dest=%{dest}/src/%{APPNAMELC}projectconfig.cpp
+
+[FILE8]
+Type=install
+Source=%{src}/tdevpart_part.h
+Dest=%{dest}/src/%{APPNAMELC}part.h
+
+[FILE9]
+Type=install
+Source=%{src}/tdevpart_widget.cpp
+Dest=%{dest}/src/%{APPNAMELC}widget.cpp
+
+[FILE10]
+Type=install
+Source=%{src}/tdevpart_widget.h
+Dest=%{dest}/src/%{APPNAMELC}widget.h
+
+[FILE11]
+Type=install
+EscapeXML=true
+Source=%{src}/tdevpart_part.rc
+Dest=%{dest}/src/kdev%{APPNAMELC}.rc
+
+[FILE12]
+Type=install
+Source=%{src}/tdevpart.desktop
+Dest=%{dest}/src/kdev%{APPNAMELC}.desktop
+
+[FILE13]
+Type=install
+Source=%{src}/README.dox
+Dest=%{dest}/src/README.dox
+
+[MSG]
+Type=message
+Comment=A TDevelop plugin was created in %{dest}
+Comment[ca]=Un connector per a TDevelop ha estat creat en %{dest}
+Comment[da]=Et TDevelop plugin blev oprettet i %{dest}
+Comment[de]=Ein TDevelop-Modul wurde in %{dest} erstellt.
+Comment[el]=Ένα πρόσθετο του TDevelop δημιουργήθηκε στο %{dest}
+Comment[es]=Un complemento para TDevelop ha sido creado en %{dest}
+Comment[et]=TDevelopi plugin loodi asukohta %{dest}
+Comment[eu]=TDevelop plugin bat sortu da hemen: %{dest}
+Comment[fa]=یک وصلۀ TDevelop در %{dest} ایجاد شد
+Comment[fr]=Un module externe pour TDevelop a été créé dans %{dest}
+Comment[ga]=Cruthaíodh breiseán TDevelop i %{dest}
+Comment[gl]=Creouse unha extensión para TDevelop en %{dest}
+Comment[hu]=Létrejött egy TDevelop-bővítőmodul itt: %{dest}
+Comment[it]=È stato creato un plugin per TDevelop in %{dest}
+Comment[ja]=TDevelop プラグインを %{dest} に作成しました
+Comment[nds]=In %{dest} wöör en TDevelop-Moduul opstellt
+Comment[ne]=केडीई विकास प्लगइन %{dest} मा सिर्जना गरियो
+Comment[nl]=Er is een TDevelop-plugin aangemaakt in %{dest}
+Comment[pl]=Wtyczka do TDevelopa została utworzona w %{dest}
+Comment[pt]=Foi criado um 'plugin' do TDevelop em %{dest}
+Comment[pt_BR]=Foi criado um 'plugin' do TDevelop em %{dest}
+Comment[ru]=Модуль TDevelop создан в %{dest}
+Comment[sk]=TDevelop modul bol vytvorený v %{dest}
+Comment[sl]=Vstavek za TDevelop je bil ustvarjen v %{dest}
+Comment[sr]=Прикључак за TDevelop направљен је у %{dest}
+Comment[sr@Latn]=Priključak za TDevelop napravljen je u %{dest}
+Comment[sv]=Ett insticksprogram för TDevelop skapades i %{dest}
+Comment[tr]=Bir TDevelop eklentisi %{dest} içinde yaratıldı.
+Comment[zh_CN]=在 %{dest} 中创建了 TDevelop 插件
+Comment[zh_TW]=一個 TDevelop 外掛程式已建立於 %{dest}
diff --git a/languages/cpp/app_templates/tdevpart2/tdevpart_part.cpp b/languages/cpp/app_templates/tdevpart2/tdevpart_part.cpp
new file mode 100644
index 00000000..0d846d38
--- /dev/null
+++ b/languages/cpp/app_templates/tdevpart2/tdevpart_part.cpp
@@ -0,0 +1,183 @@
+%{CPP_TEMPLATE}
+#include "%{APPNAMELC}part.h"
+
+#include <tqtimer.h>
+#include <tqpopupmenu.h>
+#include <tqwhatsthis.h>
+
+#include <tdelocale.h>
+#include <tdeaction.h>
+#include <kdialogbase.h>
+#include <kiconloader.h>
+#include <tdemessagebox.h>
+#include <tdevplugininfo.h>
+#include <tdevgenericfactory.h>
+
+#include <tdevcore.h>
+#include <tdevmainwindow.h>
+#include <configwidgetproxy.h>
+
+#include "%{APPNAMELC}widget.h"
+#include "%{APPNAMELC}globalconfig.h"
+#include "%{APPNAMELC}projectconfig.h"
+
+typedef TDevGenericFactory<%{APPNAME}Part> %{APPNAME}Factory;
+TDevPluginInfo data("tdev%{APPNAMELC}");
+K_EXPORT_COMPONENT_FACTORY( libtdev%{APPNAMELC}, %{APPNAME}Factory( data ) );
+
+#define GLOBALDOC_OPTIONS 1
+#define PROJECTDOC_OPTIONS 2
+
+%{APPNAME}Part::%{APPNAME}Part(TQObject *parent, const char *name, const TQStringList &/*args*/)
+ : TDevPlugin(&data, parent, name ? name : "%{APPNAME}Part")
+{
+ setInstance(%{APPNAME}Factory::instance());
+ setXMLFile("tdev%{APPNAMELC}.rc");
+
+ m_widget = new %{APPNAME}Widget(this);
+ m_widget->setCaption("widget caption");
+ m_widget->setIcon(SmallIcon(info()->icon()));
+
+ TQWhatsThis::add(m_widget, i18n("WHAT DOES THIS PART DO?"));
+
+ // now you decide what should happen to the widget. Take a look at tdevcore.h
+ // or at other plugins how to embed it.
+
+ // if you want to embed your widget as an outputview, simply uncomment
+ // the following line.
+ // mainWindow()->embedOutputView( m_widget, "name that should appear", "enter a tooltip" );
+
+ // if you want to embed your widget as a selectview (at the left), simply uncomment
+ // the following line.
+ // mainWindow()->embedSelectView( m_widget, "name that should appear", "enter a tooltip" );
+
+ // if you want to embed your widget as a selectview (at the right), simply uncomment
+ // the following line.
+ // mainWindow()->embedSelectViewRight( m_widget, "name that should appear", "enter a tooltip" );
+
+ setupActions();
+
+ m_configProxy = new ConfigWidgetProxy(core());
+ m_configProxy->createGlobalConfigPage(i18n("%{APPNAME}"), GLOBALDOC_OPTIONS, info()->icon());
+ m_configProxy->createProjectConfigPage(i18n("%{APPNAME}"), PROJECTDOC_OPTIONS, info()->icon());
+ connect(m_configProxy, TQT_SIGNAL(insertConfigWidget(const KDialogBase*, TQWidget*, unsigned int )),
+ this, TQT_SLOT(insertConfigWidget(const KDialogBase*, TQWidget*, unsigned int)));
+
+ connect(core(), TQT_SIGNAL(contextMenu(TQPopupMenu *, const Context *)),
+ this, TQT_SLOT(contextMenu(TQPopupMenu *, const Context *)));
+ connect(core(), TQT_SIGNAL(projectOpened()), this, TQT_SLOT(projectOpened()));
+ connect(core(), TQT_SIGNAL(projectClosed()), this, TQT_SLOT(projectClosed()));
+
+
+ TQTimer::singleShot(0, this, TQT_SLOT(init()));
+}
+
+%{APPNAME}Part::~%{APPNAME}Part()
+{
+// if you embed a widget, you need to tell the mainwindow when you remove it
+// if ( m_widget )
+// {
+// mainWindow()->removeView( m_widget );
+// }
+ delete m_widget;
+ delete m_configProxy;
+}
+
+void %{APPNAME}Part::init()
+{
+// delayed initialization stuff goes here
+}
+
+void %{APPNAME}Part::setupActions()
+{
+// create XMLGUI actions here
+ action = new TDEAction(i18n("&Do Something..."), 0,
+ this, TQT_SLOT(doSomething()), actionCollection(), "plugin_action" );
+ action->setToolTip(i18n("Do something"));
+ action->setWhatsThis(i18n("<b>Do something</b><p>Describe here what does this action do."));
+}
+
+void %{APPNAME}Part::insertConfigWidget(const KDialogBase *dlg, TQWidget *page, unsigned int pageNo)
+{
+// create configuraton dialogs here
+ switch (pageNo)
+ {
+ case GLOBALDOC_OPTIONS:
+ {
+ %{APPNAME}GlobalConfig *w = new %{APPNAME}GlobalConfig(this, page, "global config");
+ connect(dlg, TQT_SIGNAL(okClicked()), w, TQT_SLOT(accept()));
+ break;
+ }
+ case PROJECTDOC_OPTIONS:
+ {
+ %{APPNAME}ProjectConfig *w = new %{APPNAME}ProjectConfig(this, page, "project config");
+ connect(dlg, TQT_SIGNAL(okClicked()), w, TQT_SLOT(accept()));
+ break;
+ }
+ }
+}
+
+void %{APPNAME}Part::contextMenu(TQPopupMenu *popup, const Context *context)
+{
+// put actions into the context menu here
+ if (context->hasType(Context::EditorContext))
+ {
+ // editor context menu
+ const EditorContext *econtext = static_cast<const EditorContext*>(context);
+
+ // use context and plug actions here
+ action->plug(popup);
+
+ // or create menu items on the fly
+ // int id = -1;
+ // id = popup->insertItem(i18n("Do Something Here"),
+ // this, TQT_SLOT(doSomething()) );
+ // popup->setWhatsThis(id, i18n("<b>Do something here</b><p>Describe here what does this action do."
+ }
+ else if (context->hasType(Context::FileContext))
+ {
+ // file context menu
+ const FileContext *fcontext = static_cast<const FileContext*>(context);
+
+ //use context and plug actions here
+ }
+ else if (context->hasType(Context::ProjectModelItemContext))
+ {
+ // project tree context menu
+ const ProjectModelItemContext *pcontext = static_cast<const ProjectModelItemContext*>(context);
+
+ // use context and plug actions here
+ }
+ else if (context->hasType(Context::CodeModelItemContext))
+ {
+ // class tree context menu
+ const CodeModelItemContext *mcontext = static_cast<const CodeModelItemContext*>(context);
+
+ // use context and plug actions here
+ }
+ else if (context->hasType(Context::DocumentationContext))
+ {
+ // documentation viewer context menu
+ const DocumentationContext *dcontext = static_cast<const DocumentationContext*>(context);
+
+ // use context and plug actions here
+ }
+}
+
+void %{APPNAME}Part::projectOpened()
+{
+// do something when the project is opened
+}
+
+void %{APPNAME}Part::projectClosed()
+{
+// do something when the project is closed
+}
+
+void %{APPNAME}Part::doSomething()
+{
+// do something useful here instead of showing the message box
+ KMessageBox::information(m_widget, i18n("This action does nothing."), i18n("%{APPNAME} Plugin"));
+}
+
+#include "%{APPNAMELC}part.moc"
diff --git a/languages/cpp/app_templates/tdevpart2/tdevpart_part.h b/languages/cpp/app_templates/tdevpart2/tdevpart_part.h
new file mode 100644
index 00000000..1d61dd0c
--- /dev/null
+++ b/languages/cpp/app_templates/tdevpart2/tdevpart_part.h
@@ -0,0 +1,46 @@
+%{H_TEMPLATE}
+#ifndef TDEV%{APPNAMEUC}_H
+#define TDEV%{APPNAMEUC}_H
+
+#include <tdevplugin.h>
+
+#include <tqguardedptr.h>
+
+class TQPopupMenu;
+class TDEAction;
+class KDialogBase;
+class Context;
+class ConfigWidgetProxy;
+class %{APPNAME}Widget;
+
+/**
+Please read the README.dox file for more info about this part
+*/
+class %{APPNAME}Part: public TDevPlugin
+{
+ Q_OBJECT
+
+public:
+ %{APPNAME}Part(TQObject *parent, const char *name, const TQStringList &args);
+ ~%{APPNAME}Part();
+
+private slots:
+ void init();
+
+ void insertConfigWidget(const KDialogBase *dlg, TQWidget *page, unsigned int pageNo);
+ void contextMenu(TQPopupMenu *popup, const Context *context);
+ void projectOpened();
+ void projectClosed();
+
+ void doSomething();
+
+private:
+ void setupActions();
+
+ TDEAction *action;
+
+ TQGuardedPtr<%{APPNAME}Widget> m_widget;
+ ConfigWidgetProxy *m_configProxy;
+};
+
+#endif
diff --git a/languages/cpp/app_templates/tdevpart2/tdevpart_part.rc b/languages/cpp/app_templates/tdevpart2/tdevpart_part.rc
new file mode 100644
index 00000000..a38ee14e
--- /dev/null
+++ b/languages/cpp/app_templates/tdevpart2/tdevpart_part.rc
@@ -0,0 +1,11 @@
+<!DOCTYPE kpartgui>
+<kpartplugin name="%{APPNAMELC}" library="lib%{APPNAMELC}plugin" version="1">
+<MenuBar>
+ <Menu name="tools"><Text>&amp;Tools</Text>
+ <Action name="plugin_action"/>
+ </Menu>
+</MenuBar>
+<ToolBar name="extraToolBar">
+ <Action name="plugin_action"/>
+</ToolBar>
+</kpartplugin>
diff --git a/languages/cpp/app_templates/tdevpart2/tdevpart_widget.cpp b/languages/cpp/app_templates/tdevpart2/tdevpart_widget.cpp
new file mode 100644
index 00000000..1f356afd
--- /dev/null
+++ b/languages/cpp/app_templates/tdevpart2/tdevpart_widget.cpp
@@ -0,0 +1,21 @@
+%{CPP_TEMPLATE}
+#include "%{APPNAMELC}widget.h"
+
+#include <kurl.h>
+#include <klibloader.h>
+#include <tdeparts/part.h>
+
+#include <tdevcore.h>
+
+#include "%{APPNAMELC}part.h"
+
+%{APPNAME}Widget::%{APPNAME}Widget(%{APPNAME}Part *part)
+ : TQWidget(0, "%{APPNAMELC} widget"), m_part(part)
+{
+}
+
+%{APPNAME}Widget::~%{APPNAME}Widget()
+{
+}
+
+#include "%{APPNAMELC}widget.moc"
diff --git a/languages/cpp/app_templates/tdevpart2/tdevpart_widget.h b/languages/cpp/app_templates/tdevpart2/tdevpart_widget.h
new file mode 100644
index 00000000..e9762de3
--- /dev/null
+++ b/languages/cpp/app_templates/tdevpart2/tdevpart_widget.h
@@ -0,0 +1,24 @@
+%{H_TEMPLATE}
+#ifndef %{APPNAMEUC}_WIDGET_H
+#define %{APPNAMEUC}_WIDGET_H
+
+#include <tqwidget.h>
+#include <tqstring.h>
+
+class TDevProject;
+class %{APPNAME}Part;
+
+class %{APPNAME}Widget: public TQWidget
+{
+ Q_OBJECT
+
+public:
+ %{APPNAME}Widget(%{APPNAME}Part *part);
+ ~%{APPNAME}Widget();
+
+private:
+ %{APPNAME}Part *m_part;
+};
+
+
+#endif