summaryrefslogtreecommitdiffstats
path: root/languages/ruby/app_templates/kxt
diff options
context:
space:
mode:
authortoma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2009-11-25 17:56:58 +0000
committertoma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2009-11-25 17:56:58 +0000
commit114a878c64ce6f8223cfd22d76a20eb16d177e5e (patch)
treeacaf47eb0fa12142d3896416a69e74cbf5a72242 /languages/ruby/app_templates/kxt
downloadtdevelop-114a878c64ce6f8223cfd22d76a20eb16d177e5e.tar.gz
tdevelop-114a878c64ce6f8223cfd22d76a20eb16d177e5e.zip
Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features.
BUG:215923 git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdevelop@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'languages/ruby/app_templates/kxt')
-rw-r--r--languages/ruby/app_templates/kxt/Makefile.am20
-rw-r--r--languages/ruby/app_templates/kxt/README38
-rw-r--r--languages/ruby/app_templates/kxt/app-Makefile.am1
-rw-r--r--languages/ruby/app_templates/kxt/app-configure.in.in45
-rw-r--r--languages/ruby/app_templates/kxt/app.cpp30
-rw-r--r--languages/ruby/app_templates/kxt/app.desktop40
-rw-r--r--languages/ruby/app_templates/kxt/app.kcfg21
-rw-r--r--languages/ruby/app_templates/kxt/app.kdevelop90
-rw-r--r--languages/ruby/app_templates/kxt/app.rb94
-rw-r--r--languages/ruby/app_templates/kxt/appui.rc8
-rw-r--r--languages/ruby/app_templates/kxt/appview.rb55
-rw-r--r--languages/ruby/app_templates/kxt/appview_base.ui33
-rw-r--r--languages/ruby/app_templates/kxt/kxtruby.kdevtemplate251
-rw-r--r--languages/ruby/app_templates/kxt/kxtruby.pngbin0 -> 7841 bytes
-rw-r--r--languages/ruby/app_templates/kxt/main.rb41
-rw-r--r--languages/ruby/app_templates/kxt/prefs-base.ui127
-rw-r--r--languages/ruby/app_templates/kxt/prefs.rb7
-rw-r--r--languages/ruby/app_templates/kxt/previewruby.pngbin0 -> 7712 bytes
-rw-r--r--languages/ruby/app_templates/kxt/settings.kcfgc6
-rw-r--r--languages/ruby/app_templates/kxt/src-Makefile.am48
-rw-r--r--languages/ruby/app_templates/kxt/subdirs3
21 files changed, 958 insertions, 0 deletions
diff --git a/languages/ruby/app_templates/kxt/Makefile.am b/languages/ruby/app_templates/kxt/Makefile.am
new file mode 100644
index 00000000..b642b88b
--- /dev/null
+++ b/languages/ruby/app_templates/kxt/Makefile.am
@@ -0,0 +1,20 @@
+dataFiles = app.rb main.rb prefs.rb app.cpp appview.rb appview_base.ui prefs-base.ui \
+ appui.rc app.desktop kxtruby.png app.kdevelop \
+ app-Makefile.am app-configure.in.in \
+ app.kcfg settings.kcfgc src-Makefile.am subdirs README
+
+templateName = kxtruby
+
+### 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/ruby/app_templates/kxt/README b/languages/ruby/app_templates/kxt/README
new file mode 100644
index 00000000..490ddab8
--- /dev/null
+++ b/languages/ruby/app_templates/kxt/README
@@ -0,0 +1,38 @@
+KConfig XT Ruby template quick start
+Author: Anne-Marie Mahfouf
+Date: 2006-12-12
+-----------------------------------------------
+
+This README file explains you some basic things for starting with
+this application template, a KConfig XT Ruby template.
+-----------------------------------------------
+
+-- REQUIREMENTS --
+you need
+- Qt version might be 3.3.4 or 3.3.5.
+- kdelibs 3.5 and kdelibs headers 3.5 (devel package) in order to build this template.
+- Korundum either from your distribution or from the kdebindings module or also
+from
+http://rubyforge.org/projects/korundum/.
+
+-----------------------------------------------
+
+-- BUILD --
+In KDevelop Build menu choose:
+Run automake & friends
+Run Configure
+Build Project
+Install (or Install as root)
+-----------------------------------------------
+
+-- RUN --
+You will see that the Build menu in KDevelop is now adapted to Ruby.
+In the Build menu, choose
+Run or use Shift + F9 to see your project running.
+
+-----------------------------------------------
+
+-- RELEVANT LINK --
+http://developer.kde.org/language-bindings/ruby/index.html
+
+In KDevelop Documentation, you can find a Ruby tutorial. \ No newline at end of file
diff --git a/languages/ruby/app_templates/kxt/app-Makefile.am b/languages/ruby/app_templates/kxt/app-Makefile.am
new file mode 100644
index 00000000..bfe1c599
--- /dev/null
+++ b/languages/ruby/app_templates/kxt/app-Makefile.am
@@ -0,0 +1 @@
+SUBDIRS = $(TOPSUBDIRS)
diff --git a/languages/ruby/app_templates/kxt/app-configure.in.in b/languages/ruby/app_templates/kxt/app-configure.in.in
new file mode 100644
index 00000000..7d849466
--- /dev/null
+++ b/languages/ruby/app_templates/kxt/app-configure.in.in
@@ -0,0 +1,45 @@
+#MIN_CONFIG(3.0.0)
+
+AM_INIT_AUTOMAKE(%{APPNAMELC}, 0.1)
+AC_C_BIGENDIAN
+AC_CHECK_KDEMAXPATHLEN
+
+AC_PROG_MAKE_SET
+
+AC_CHECK_PROG(RUBY, ruby, ruby)
+
+if test -z "$RUBY"; then
+ DO_NOT_COMPILE="$DO_NOT_COMPILE qtruby"
+else
+ AC_MSG_CHECKING(for ruby dirs)
+ RUBY_ARCHDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"archdir"@:>@)'`
+ RUBY_SITEARCHDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"sitearchdir"@:>@)'`
+ RUBY_SITEDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"sitelibdir"@:>@)'`
+ RUBY_LIBDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"libdir"@:>@)'`
+ RUBY_LIBRUBYARG=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"LIBRUBYARG_SHARED"@:>@)'`
+ AC_MSG_RESULT([archdir $RUBY_ARCHDIR, sitearchdir $RUBY_SITEARCHDIR, sitedir $RUBY_SITEDIR, libdir $RUBY_LIBDIR, librubyarg $RUBY_LIBRUBYARG])
+ AC_SUBST(RUBY_ARCHDIR)
+ AC_SUBST(RUBY_SITEARCHDIR)
+ AC_SUBST(RUBY_SITEDIR)
+ AC_SUBST(RUBY_LIBDIR)
+ AC_SUBST(RUBY_LIBRUBYARG)
+fi
+
+# Korundum check
+AC_MSG_CHECKING([whether Korundum is installed])
+korundum_present=no
+cat >korundumtest.rb <<END
+require 'Korundum'
+END
+${RUBY} korundumtest.rb >/dev/null 2>&1 && korundum_present=yes
+AC_MSG_RESULT([$korundum_present])
+
+# rbuic check
+AC_PATH_PROG([RBUIC],[rbuic])
+if test -z "${RBUIC}" ; then
+ AC_MSG_ERROR([cannot find rbuic (part of the QtRuby package)])
+fi
+AC_SUBST([RBUIC])
+AC_SUBST([RUBY])
+
+
diff --git a/languages/ruby/app_templates/kxt/app.cpp b/languages/ruby/app_templates/kxt/app.cpp
new file mode 100644
index 00000000..8d6af02d
--- /dev/null
+++ b/languages/ruby/app_templates/kxt/app.cpp
@@ -0,0 +1,30 @@
+#include <ruby.h>
+
+#include <qstring.h>
+#include <qfileinfo.h>
+#include <kinstance.h>
+#include <kstandarddirs.h>
+
+int main(int argc, char **argv) {
+ KInstance * instance = new KInstance("%{APPNAMELC}");
+ QString appdir = ::locate("data", "%{APPNAMELC}/main.rb", instance);
+ delete instance;
+ if (appdir.isNull()) {
+ qFatal("Error: Can't find \"%{APPNAMELC}/main.rb\"\n");
+ }
+ QFileInfo program(appdir);
+
+ char ** rubyargs = (char **) calloc(argc+4, sizeof(char *));
+ rubyargs[0] = strdup(argv[0]);
+ rubyargs[1] = strdup("-KU");
+ rubyargs[2] = strdup(QString("-C%1").arg(program.dirPath()).latin1());
+ rubyargs[3] = strdup(QString("-I%1").arg(program.dirPath()).latin1());
+ rubyargs[4] = strdup(program.fileName().latin1());
+ for (int i = 1; i < argc; i++) {
+ rubyargs[i+4] = argv[i];
+ }
+
+ ruby_init();
+ ruby_options(argc+4, rubyargs);
+ ruby_run();
+}
diff --git a/languages/ruby/app_templates/kxt/app.desktop b/languages/ruby/app_templates/kxt/app.desktop
new file mode 100644
index 00000000..8b36e6e0
--- /dev/null
+++ b/languages/ruby/app_templates/kxt/app.desktop
@@ -0,0 +1,40 @@
+[Desktop Entry]
+Name=%{APPNAME}
+Exec=%{APPNAMELC}
+Icon=%{APPNAMELC}
+Type=Application
+Comment=A simple KDE Application
+Comment[br]=Ur meziant eeun evit KDE
+Comment[ca]=Una simple aplicació per al KDE
+Comment[da]=Et simpelt KDE program
+Comment[de]=Eine einfache KDE-Anwendung
+Comment[el]=Μια απλή εφαρμογή του KDE
+Comment[es]=Una aplicación de KDE sencilla
+Comment[et]=Lihtne KDE rakendus
+Comment[eu]=KDE aplikazio simple bat
+Comment[fa]=یک کاربرد سادۀ KDE
+Comment[fr]=Une application simple pour KDE
+Comment[ga]=Feidhmchlár Simplí KDE
+Comment[gl]=Unha aplicación KDE sinxela
+Comment[hi]=एक सादा केडीई अनुप्रयोग
+Comment[hu]=Egyszerű KDE-alkalmazás
+Comment[is]=Einfalt KDE forrit
+Comment[it]=Una semplice applicazione KDE
+Comment[ja]=簡単な KDE アプリケーション
+Comment[nds]=En eenfach KDE-Programm
+Comment[ne]=एउटा साधारण केडीई अनुप्रयोग
+Comment[nl]=Een eenvoudige KDE-toepassing
+Comment[pl]=Prosty program KDE
+Comment[pt]=Uma aplicação simples do KDE
+Comment[pt_BR]=Um simples Aplicativo do KDE
+Comment[ru]=Простое приложение KDE
+Comment[sk]=Jednoduchá KDE aplikácia
+Comment[sl]=Preprost program za KDE
+Comment[sr]=Једноставан KDE програм
+Comment[sr@Latn]=Jednostavan KDE program
+Comment[sv]=Ett enkelt KDE-program
+Comment[ta]=ஒரு சாதாரண கெடிஇ பயன்பாடு
+Comment[tg]=Гузориши оддиKDE
+Comment[tr]=Basit bir KDE Uygulaması
+Comment[zh_CN]=一个简单的 KDE 应用程序
+Comment[zh_TW]=簡單的 KDE 應用程式
diff --git a/languages/ruby/app_templates/kxt/app.kcfg b/languages/ruby/app_templates/kxt/app.kcfg
new file mode 100644
index 00000000..d5325b92
--- /dev/null
+++ b/languages/ruby/app_templates/kxt/app.kcfg
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<kcfg xmlns="http://www.kde.org/standards/kcfg/1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.kde.org/standards/kcfg/1.0
+ http://www.kde.org/standards/kcfg/1.0/kcfg.xsd" >
+ <kcfgfile name="%{APPNAME}rc"/>
+ <group name="Preferences">
+ <entry name="col_background" type="Color">
+ <label>color of the background</label>
+ <default>black</default>
+ </entry>
+ <entry name="col_foreground" type="Color">
+ <label>color of the foreground</label>
+ <default>yellow</default>
+ </entry>
+ <entry name="val_time" type="Int">
+ <label>size of a ball</label>
+ <default>2</default>
+ </entry>
+ </group>
+</kcfg>
diff --git a/languages/ruby/app_templates/kxt/app.kdevelop b/languages/ruby/app_templates/kxt/app.kdevelop
new file mode 100644
index 00000000..3a1efdd9
--- /dev/null
+++ b/languages/ruby/app_templates/kxt/app.kdevelop
@@ -0,0 +1,90 @@
+<?xml version="1.0"?>
+<kdevelop>
+ <general>
+ <author>%{AUTHOR}</author>
+ <email>%{EMAIL}</email>
+ <version>%{VERSION}</version>
+ <projectmanagement>KDevAutoProject</projectmanagement>
+ <primarylanguage>Ruby</primarylanguage>
+ <keywords>
+ <keyword>Ruby</keyword>
+ <keyword>Qt</keyword>
+ <keyword>KDE</keyword>
+ </keywords>
+ <ignoreparts>
+ <part>KDevDoxygen</part>
+ <part>KDevdistpart</part>
+ <part>KDevVisualBoyAdvance</part>
+ <part>KDevDebugger</part>
+ </ignoreparts>
+ </general>
+ <kdevautoproject>
+ <general>
+ <activedir/>
+ </general>
+ <run>
+ <mainprogram>src/%{APPNAMELC}</mainprogram>
+ </run>
+ </kdevautoproject>
+ <kdevfileview>
+ <tree>
+ <hidenonprojectfiles>false</hidenonprojectfiles>
+ <hidepatterns>CVS,.svn</hidepatterns>
+ </tree>
+ <groups>
+ <group pattern="*.rb" name="Ruby files" />
+ <group pattern="*.ui" name="QT Designer files" />
+ </groups>
+ </kdevfileview>
+ <kdevdoctreeview>
+ <ignoretocs>
+ <toc>ada</toc>
+ <toc>ada_bugs_gcc</toc>
+ <toc>bash</toc>
+ <toc>bash_bugs</toc>
+ <toc>c++_bugs_gcc</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>kde2book</toc>
+ <toc>libc</toc>
+ <toc>libstdc++</toc>
+ <toc>opengl</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>sdl</toc>
+ <toc>stl</toc>
+ <toc>w3c-svg</toc>
+ <toc>sw</toc>
+ <toc>w3c-uaag10</toc>
+ <toc>wxwindows_bugs</toc>
+ </ignoretocs>
+ </kdevdoctreeview>
+ <kdevfilecreate>
+ <useglobaltypes>
+ <type ext="rb"/>
+ <type ext="ui"/>
+ </useglobaltypes>
+ </kdevfilecreate>
+ <kdevrubysupport>
+ <run>
+ <interpreter>ruby</interpreter>
+ <terminal>false</terminal>
+ <charactercoding>3</charactercoding>
+ <mainprogram>src/main.rb</mainprogram>
+ </run>
+ </kdevrubysupport>
+</kdevelop>
diff --git a/languages/ruby/app_templates/kxt/app.rb b/languages/ruby/app_templates/kxt/app.rb
new file mode 100644
index 00000000..39da5345
--- /dev/null
+++ b/languages/ruby/app_templates/kxt/app.rb
@@ -0,0 +1,94 @@
+=begin
+ This class serves as the main window for %{APPNAME}. It handles the
+ menus, toolbars, and status bars.
+
+ @short Main window class
+ @author %{AUTHOR} <%{EMAIL}>
+ @version %{VERSION}
+=end
+
+class %{APPNAMESC} < KDE::MainWindow
+
+ slots 'fileNew()',
+ 'optionsPreferences()',
+ 'newToolbarConfig()',
+ 'changeStatusbar(const QString&)',
+ 'changeCaption(const QString&)'
+
+ def initialize()
+ super( nil, "%{APPNAMESC}" )
+ Settings.instance.readConfig
+ @view = %{APPNAMESC}View.new(self)
+ @printer = nil
+
+ # accept dnd
+ setAcceptDrops(true)
+
+ # tell the KDE::MainWindow that this is indeed the main widget
+ setCentralWidget(@view)
+
+ # then, setup our actions
+ setupActions()
+
+ # and a status bar
+ statusBar().show()
+
+ # Apply the create the main window and ask the mainwindow to
+ # automatically save settings if changed: window size, toolbar
+ # position, icon size, etc. Also to add actions for the statusbar
+ # toolbar, and keybindings if necessary.
+ setupGUI();
+
+ # allow the view to change the statusbar and caption
+ connect(@view, SIGNAL('signalChangeStatusbar(const QString&)'),
+ self, SLOT('changeStatusbar(const QString&)'))
+ connect(@view, SIGNAL('signalChangeCaption(const QString&)'),
+ self, SLOT('changeCaption(const QString&)'))
+
+ end
+
+ def setupActions()
+ KDE::StdAction.openNew(self, SLOT('fileNew()'), actionCollection())
+ KDE::StdAction.quit($kapp, SLOT('quit()'), actionCollection())
+
+ KDE::StdAction.preferences(self, SLOT('optionsPreferences()'), actionCollection())
+
+ # this doesn't do anything useful. it's just here to illustrate
+ # how to insert a custom menu and menu item
+ custom = KDE::Action.new(i18n("Swi&tch Colors"), KDE::Shortcut.new(),
+ @view, SLOT('switchColors()'),
+ actionCollection(), "switch_action")
+ end
+
+ def fileNew()
+ # This slot is called whenever the File.New menu is selected,
+ # the New shortcut is pressed (usually CTRL+N) or the New toolbar
+ # button is clicked
+
+ # create a new window
+ %{APPNAMESC}.new.show()
+ end
+
+ def optionsPreferences()
+ # The preference dialog is derived from prefs-base.ui which is subclassed into Prefs
+ #
+ # compare the names of the widgets in the .ui file
+ # to the names of the variables in the .kcfg file
+ dialog = KDE::ConfigDialog.new(self, "settings", Settings.instance, KDE::DialogBase::Swallow)
+ dialog.addPage(Prefs.new(), i18n("General"), "package_settings")
+ connect(dialog, SIGNAL('settingsChanged()'), @view, SLOT('settingsChanged()'))
+ dialog.show()
+
+ end
+
+ def changeStatusbar(text)
+ # display the text on the statusbar
+ statusBar().message(text)
+ end
+
+ def changeCaption(text)
+ # display the text on the caption
+ setCaption(text)
+ end
+
+end
diff --git a/languages/ruby/app_templates/kxt/appui.rc b/languages/ruby/app_templates/kxt/appui.rc
new file mode 100644
index 00000000..06549878
--- /dev/null
+++ b/languages/ruby/app_templates/kxt/appui.rc
@@ -0,0 +1,8 @@
+<!DOCTYPE kpartgui SYSTEM "kpartgui.dtd">
+<kpartgui name="%{APPNAMELC}" version="1">
+<MenuBar>
+ <Menu name="move"><text>&amp;Move</text>
+ <Action name="switch_action" />
+ </Menu>
+</MenuBar>
+</kpartgui>
diff --git a/languages/ruby/app_templates/kxt/appview.rb b/languages/ruby/app_templates/kxt/appview.rb
new file mode 100644
index 00000000..391f4c37
--- /dev/null
+++ b/languages/ruby/app_templates/kxt/appview.rb
@@ -0,0 +1,55 @@
+
+=begin
+ This is the main view class for %{APPNAME}. Most of the non-menu,
+ non-toolbar, and non-statusbar (e.g., non frame) GUI code should go
+ here.
+
+ This %{APPNAMELC} uses an HTML component as an example.
+
+ @short Main view
+ @author %{AUTHOR} <%{EMAIL}>
+ @version %{VERSION}
+=end
+class %{APPNAMESC}View < %{APPNAMESC}view_base
+
+ #
+ # Use this signal to change the content of the statusbar
+ #
+ signals 'signalChangeStatusbar(const QString&)'
+
+ #
+ # Use this signal to change the content of the caption
+ #
+ signals 'signalChangeCaption(const QString&)'
+
+ slots 'switchColors()',
+ 'settingsChanged()'
+
+ def initialize(parent)
+ super(parent)
+
+ settingsChanged()
+ end
+
+ def switchColors()
+ color = Settings.instance.col_background
+ Settings.instance.setCol_background( Settings.instance.col_foreground )
+ Settings.instance.setCol_foreground( color )
+
+ settingsChanged()
+ end
+
+ def settingsChanged()
+ sillyLabel.setPaletteBackgroundColor( Settings.instance.col_background )
+ sillyLabel.setPaletteForegroundColor( Settings.instance.col_foreground )
+ # i18n : internationallization
+ sillyLabel.setText( i18n("This project is %d days old" % Settings.instance.val_time) )
+
+ emit signalChangeStatusbar( i18n("Settings changed") )
+ end
+
+ def slotSetTitle(title)
+ emit signalChangeCaption(title)
+ end
+
+end
diff --git a/languages/ruby/app_templates/kxt/appview_base.ui b/languages/ruby/app_templates/kxt/appview_base.ui
new file mode 100644
index 00000000..78009d08
--- /dev/null
+++ b/languages/ruby/app_templates/kxt/appview_base.ui
@@ -0,0 +1,33 @@
+<!DOCTYPE UI><UI version="3.2" stdsetdef="1">
+<class>%{APPNAME}view_base</class>
+<widget class="QWidget">
+ <property name="name">
+ <cstring>%{APPNAMESC}view_base</cstring>
+ </property>
+ <property name="geometry">
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>268</width>
+ <height>164</height>
+ </rect>
+ </property>
+ <property name="caption">
+ <string>%{APPNAMESC}_base</string>
+ </property>
+ <grid>
+ <property name="name">
+ <cstring>unnamed</cstring>
+ </property>
+ <widget class="QLabel" row="0" column="0">
+ <property name="name">
+ <cstring>sillyLabel</cstring>
+ </property>
+ <property name="text">
+ <string>hello, world</string>
+ </property>
+ </widget>
+ </grid>
+</widget>
+<layoutdefaults spacing="6" margin="11"/>
+</UI>
diff --git a/languages/ruby/app_templates/kxt/kxtruby.kdevtemplate b/languages/ruby/app_templates/kxt/kxtruby.kdevtemplate
new file mode 100644
index 00000000..fd2a5c1a
--- /dev/null
+++ b/languages/ruby/app_templates/kxt/kxtruby.kdevtemplate
@@ -0,0 +1,251 @@
+# KDE Config File
+[General]
+
+Name=KConfig XT application
+Name[ca]=Aplicació KConfig XT
+Name[da]=KConfig XT program
+Name[de]=KConfigXT-Anwendung
+Name[el]=Εφαρμογή KConfig XT
+Name[es]=Aplicación KConfig XT
+Name[et]=KConfig XT rakendus
+Name[eu]=KConfig XT aplikazioa
+Name[fa]=کاربرد KConfig XT
+Name[fr]=Application KConfig XT
+Name[ga]=Feidhmchlár XT KConfig
+Name[gl]=Aplicación KConfig XT
+Name[hu]=KConfig XT-alapú alkalmazás
+Name[it]=Applicazione KConfig XT
+Name[ja]=KConfig XT アプリケーション
+Name[nds]=KConfig-XT-Programm
+Name[ne]=KConfig XT अनुप्रयोग
+Name[nl]=KConfig XT-toepassing
+Name[pl]=Program KConfig XT
+Name[pt]=Aplicação do KConfig XT
+Name[pt_BR]=Aplicação do KConfig XT
+Name[ru]=Приложение KDE с KConfig XT
+Name[sk]=KConfig XT aplikácia
+Name[sr]=KConfig XT програм
+Name[sr@Latn]=KConfig XT program
+Name[sv]=KConfig XT-program
+Name[tr]=KConfig XT uygulaması
+Name[zh_CN]=KConfig XT 应用程序
+Name[zh_TW]=KConfig XT 應用程式
+Category=Ruby/KDE
+Icon=kxtruby.png
+Comment=Generates a simple KDE application with one widget and a configuration dialog
+Comment[ca]=Genera una simple aplicació per al KDE amb un estri i un diàleg de configuració
+Comment[da]=Genererer et simpelt KDE-program med en kontrol og en indstillingsdialog
+Comment[de]=Erstellt eine einfache KDE-Anwendung mit einem Widget und einem Einstellungsdialog.
+Comment[el]=Δημιουργεί μια απλή εφαρμογή KDE με ένα γραφικό συστατικό, ένα διάλογο ρύθμισης
+Comment[en_GB]=Generates a simple KDE application with one widget and a configuration dialogue
+Comment[es]=Genera una sencilla aplicación para KDE con una ventana y un diálogo de configuración
+Comment[et]=Lihtsa KDE rakenduse loomine ühe vidina ja seadistustedialoogiga.
+Comment[eu]=Trepeta bat eta konfigurazio elkarrizketa-koadro bat duen KDE aplikazio sinple bat sortzen du
+Comment[fa]=یک کاربرد سادۀ KDE، با یک عنصر و یک محاورۀ پیکربندی تولید می‌کند
+Comment[fr]=Génère une application KDE simple comprenant un seul élément graphique (widget) et une boîte de dialogue de configuration
+Comment[ga]=Cruthaíonn sé seo feidhmchlár simplí KDE le giuirléid amháin agus dialóg chumraíochta
+Comment[gl]=Xera unha aplicación KDE sinxela cunha compoñente e un diálogo de configuración
+Comment[hu]=Létrehoz egy egyszerű KDE-alkalmazást egy grafikus elemmel és egy beállítóablakkal
+Comment[it]=Genera una semplice applicazione KDE con un elemento grafico e una finestra di configurazione
+Comment[ja]=一つのウィジェットと設定ダイアログを含む簡単な KDE アプリケーションを作成します
+Comment[nds]=Stellt en eenfach KDE-Programm mit een Element un en Instelldialoog op
+Comment[ne]=एउटा विगेट र कन्फिगरेसन संवादसँग साधारण केडीई अनुप्रयोग उत्पन्न गर्दछ
+Comment[nl]=Genereert een eenvoudige KDE-toepassing met één widget en een configuratiedialoog
+Comment[pl]=Generuje prosty program KDE z jednym widgetem i oknem konfiguracyjnym
+Comment[pt]=Gera uma aplicação simples do KDE com uma janela principal e outra para configuração
+Comment[pt_BR]=Gera uma aplicação simples do KDE com uma janela principal e outra para configuração
+Comment[ru]=Создание приложения KDE с окном конфигурации
+Comment[sk]=Vygeneruje jednoduchú KDE aplikáciu s jedným oknom a konfiguračným dialógom
+Comment[sr]=Прави једноставан KDE програм са једном контролом и дијалогом за подешавање
+Comment[sr@Latn]=Pravi jednostavan KDE program sa jednom kontrolom i dijalogom za podešavanje
+Comment[sv]=Skapar ett enkelt KDE-program med en grafisk komponent och en inställningsdialogruta
+Comment[tr]=Bir parçacığı ve ayar penceresi olan basit bir KDE uygulaması yaratır.
+Comment[zh_CN]=生成带一个部件和一个配置对话框的简单 KDE 应用程序
+Comment[zh_TW]=產生一個簡單的 KDE 應用程式,內含一個元件與一個設定對話框。
+ShowFilesAfterGeneration=%{dest}/src/%{APPNAMELC}.rb,%{dest}/src/README
+Archive=kxtruby.tar.gz
+
+[ADMIN]
+Type=include
+File=%{kdevelop}/template-common/admin.kdevtemplate
+
+[GNU]
+Type=include
+File=%{kdevelop}/template-common/gnu.kdevtemplate
+
+[MKDIR_DOCBOOK1]
+Type=mkdir
+Dir=%{dest}/doc
+
+[MKDIR_DOCBOOK2]
+Type=mkdir
+Dir=%{dest}/doc/en
+
+[FILE1]
+Type=install
+Source=%{kdevelop}/template-common/kde-doc-Makefile.am
+Dest=%{dest}/doc/Makefile.am
+
+[FILE2]
+Type=install
+Source=%{kdevelop}/template-common/kde-doc-en-Makefile.am
+Dest=%{dest}/doc/en/Makefile.am
+
+[FILE3]
+Type=install
+EscapeXML=true
+Source=%{kdevelop}/template-common/kde-index.docbook
+Dest=%{dest}/doc/en/index.docbook
+
+[FILE4]
+Type=install
+EscapeXML=true
+Source=%{src}/app.kdevelop
+Dest=%{dest}/%{APPNAMELC}.kdevelop
+
+[FILE5]
+Type=install
+Source=%{kdevelop}/template-common/kde-Makefile.am
+Dest=%{dest}/Makefile.am
+
+[FILE6]
+Type=install
+Source=%{kdevelop}/template-common/kde-Makefile.cvs
+Dest=%{dest}/Makefile.cvs
+
+[FILE7]
+Type=install
+Source=%{src}/app-configure.in.in
+Dest=%{dest}/configure.in.in
+
+[MkDir3]
+Type=mkdir
+Dir=%{dest}/src
+
+[FILE8]
+Type=install
+Source=%{kdevelop}/template-common/kde-app.desktop
+Dest=%{dest}/src/%{APPNAMELC}.desktop
+
+[FILE9]
+Type=install
+Source=%{kdevelop}/template-common/kde-app.lsm
+Dest=%{dest}/src/%{APPNAMELC}.lsm
+
+[FILE10]
+Type=install
+Source=%{kdevelop}/template-common/hi16-app-app.png
+Dest=%{dest}/src/hi16-app-%{APPNAMELC}.png
+Process=false
+
+[FILE11]
+Type=install
+Source=%{kdevelop}/template-common/hi32-app-app.png
+Dest=%{dest}/src/hi32-app-%{APPNAMELC}.png
+Process=false
+
+[MkDir4]
+Type=mkdir
+Dir=%{dest}/po
+
+[FILE12]
+Type=install
+Source=%{kdevelop}/template-common/kde-po-Makefile.am
+Dest=%{dest}/po/Makefile.am
+
+[FILE13]
+Type=install
+Source=%{src}/subdirs
+Dest=%{dest}/subdirs
+
+[FILE14]
+Type=install
+Source=%{src}/src-Makefile.am
+Dest=%{dest}/src/Makefile.am
+
+[FILE15]
+Type=install
+Source=%{src}/app.cpp
+Dest=%{dest}/src/%{APPNAMELC}.cpp
+
+[FILE16]
+Type=install
+Source=%{src}/app.rb
+Dest=%{dest}/src/%{APPNAMELC}.rb
+
+[FILE17]
+Type=install
+Source=%{src}/appview.rb
+Dest=%{dest}/src/%{APPNAMELC}view.rb
+
+[FILE18]
+Type=install
+Source=%{src}/appview_base.ui
+Dest=%{dest}/src/appview_base.ui
+
+[FILE19]
+Type=install
+Source=%{src}/prefs-base.ui
+Dest=%{dest}/src/prefs-base.ui
+
+[FILE20]
+Type=install
+Source=%{src}/prefs.rb
+Dest=%{dest}/src/prefs.rb
+
+[FILE21]
+Type=install
+Source=%{src}/main.rb
+Dest=%{dest}/src/main.rb
+
+[FILE22]
+Type=install
+EscapeXML=true
+Source=%{src}/appui.rc
+Dest=%{dest}/src/%{APPNAMELC}ui.rc
+
+[FILE23]
+Type=install
+Source=%{src}/README
+Dest=%{dest}/src/README
+
+[FILE24]
+Type=install
+Source=%{src}/app.kcfg
+Dest=%{dest}/src/%{APPNAMELC}.kcfg
+
+[FILE25]
+Type=install
+Source=%{src}/settings.kcfgc
+Dest=%{dest}/src/settings.kcfgc
+
+[MSG]
+Type=message
+Comment=A Korundum KConfig XT Application was created at %{dest}
+Comment[ca]=Una aplicació Korundum amb KConfig XT ha estat creada a %{dest}
+Comment[da]=Et Korundum KConfig XT program blev oprettet i %{dest}
+Comment[de]=Eine Korundum-KConfig-XT-Anwendung wurde in %{dest} erstellt.
+Comment[el]=Μια εφαρμογή Korundum KConfig XT δημιουργήθηκε στο %{dest}
+Comment[es]=Una aplicación Korundum con KConfig XT ha sido creada en %{dest}
+Comment[et]=Korundumi KConfig XT rakendus loodi asukohta %{dest}
+Comment[eu]=Korundum KConfig XT aplikazio bat sortu da hemen: %{dest}
+Comment[fa]=یک کاربرد Korundum KConfig XT در %{dest} ایجاد شد
+Comment[fr]=Une application KConfig XT Korundum a été créée dans %{dest}
+Comment[ga]=Cruthaíodh Feidhmchlár Korundum KConfig XT ag %{dest}
+Comment[gl]=Creouse unha aplicación KConfig XT con Korundum en %{dest}
+Comment[hu]=Létrejött egy Korundum-alapú KConfig XT-s alkalmazás itt: %{dest}
+Comment[it]=È stata creata un'applicazione Korundum KConfig XT in %{dest}
+Comment[ja]=Korundum KConfig XT アプリケーションを %{dest} に作成しました
+Comment[nds]=In %{dest} wöör en Korundum/KConfig-XT-Programm opstellt.
+Comment[ne]=Korundum KConfig XT अनुप्रयोग %{dest} मा सिर्जना गरियो
+Comment[nl]=Een Korundum KConfig XT-toepassing is aangemaakt in %{dest}
+Comment[pl]=Program Korundum KConfig XT został utworzony w %{dest}
+Comment[pt]=Foi criada uma aplicação Korundum com KConfig XT em %{dest}
+Comment[pt_BR]=Foi criada uma aplicação Korundum com KConfig XT em %{dest}
+Comment[ru]=Приложение Korundum с KConfig XT создано в %{dest}
+Comment[sk]=Korundim KConfig XT aplikácia bola vytvorená v %{dest}
+Comment[sr]=Korundum KConfig XT програм направљен је у %{dest}
+Comment[sr@Latn]=Korundum KConfig XT program napravljen je u %{dest}
+Comment[sv]=Ett Korundum KConfig XT-program skapades i %{dest}
+Comment[tr]=Bir Korundum KConfig XT uygulaması %{dest} içinde yaratıldı.
+Comment[zh_TW]=一個 Korundum KConfig XT 應用程式已建立於 %{dest}
diff --git a/languages/ruby/app_templates/kxt/kxtruby.png b/languages/ruby/app_templates/kxt/kxtruby.png
new file mode 100644
index 00000000..419dfa33
--- /dev/null
+++ b/languages/ruby/app_templates/kxt/kxtruby.png
Binary files differ
diff --git a/languages/ruby/app_templates/kxt/main.rb b/languages/ruby/app_templates/kxt/main.rb
new file mode 100644
index 00000000..930bff4f
--- /dev/null
+++ b/languages/ruby/app_templates/kxt/main.rb
@@ -0,0 +1,41 @@
+#!/usr/bin/env ruby
+
+require 'Korundum'
+
+require '%{APPNAMELC}.rb'
+require 'prefs-base.rb'
+require 'prefs.rb'
+require 'settings.rb'
+require 'appview_base.rb'
+require '%{APPNAMELC}view.rb'
+
+description = I18N_NOOP("A KDE Application")
+version = "%{VERSION}"
+options = [ [ "+[URL]", I18N_NOOP( "Document to open" ), "" ] ]
+
+about = KDE::AboutData.new("%{APPNAMELC}", I18N_NOOP("%{APPNAME}"), version, description,
+ KDE::AboutData.License_%{LICENSE}, "(C) %{YEAR} %{AUTHOR}", nil, nil, "%{EMAIL}")
+about.addAuthor( "%{AUTHOR}", nil, "%{EMAIL}" )
+KDE::CmdLineArgs.init(ARGV, about)
+KDE::CmdLineArgs.addCmdLineOptions(options)
+app = KDE::Application.new
+
+# see if we are starting with session management
+if app.restored?
+ RESTORE(%{APPNAMESC})
+else
+ # no session.. just start up normally
+ args = KDE::CmdLineArgs.parsedArgs
+ if args.count == 0
+ widget = %{APPNAMESC}.new
+ widget.show
+ else
+ for i in 0...args.count do
+ widget = %{APPNAMESC}.new
+ widget.show
+ end
+ end
+end
+
+app.exec
+
diff --git a/languages/ruby/app_templates/kxt/prefs-base.ui b/languages/ruby/app_templates/kxt/prefs-base.ui
new file mode 100644
index 00000000..5c0fc860
--- /dev/null
+++ b/languages/ruby/app_templates/kxt/prefs-base.ui
@@ -0,0 +1,127 @@
+<!DOCTYPE UI><UI version="3.2" stdsetdef="1">
+<class>Prefs_base</class>
+<widget class="QWidget">
+ <property name="name">
+ <cstring>Prefs_base</cstring>
+ </property>
+ <property name="geometry">
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>282</width>
+ <height>156</height>
+ </rect>
+ </property>
+ <grid>
+ <property name="name">
+ <cstring>unnamed</cstring>
+ </property>
+ <widget class="QLabel" row="0" column="0">
+ <property name="name">
+ <cstring>textLabel2_2</cstring>
+ </property>
+ <property name="text">
+ <string>Background color:</string>
+ </property>
+ </widget>
+ <widget class="KColorButton" row="0" column="1">
+ <property name="name">
+ <cstring>kcfg_col_background</cstring>
+ </property>
+ <property name="text">
+ <string></string>
+ </property>
+ </widget>
+ <widget class="QLabel" row="2" column="0">
+ <property name="name">
+ <cstring>textLabel1</cstring>
+ </property>
+ <property name="text">
+ <string>Project age:</string>
+ </property>
+ </widget>
+ <widget class="QLabel" row="1" column="0">
+ <property name="name">
+ <cstring>textLabel2</cstring>
+ </property>
+ <property name="text">
+ <string>Foreground color:</string>
+ </property>
+ </widget>
+ <widget class="KColorButton" row="1" column="1">
+ <property name="name">
+ <cstring>kcfg_col_foreground</cstring>
+ </property>
+ <property name="text">
+ <string></string>
+ </property>
+ </widget>
+ <spacer row="0" column="2">
+ <property name="name">
+ <cstring>spacer1</cstring>
+ </property>
+ <property name="orientation">
+ <enum>Horizontal</enum>
+ </property>
+ <property name="sizeType">
+ <enum>Expanding</enum>
+ </property>
+ <property name="sizeHint">
+ <size>
+ <width>41</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ <spacer row="1" column="2">
+ <property name="name">
+ <cstring>spacer2</cstring>
+ </property>
+ <property name="orientation">
+ <enum>Horizontal</enum>
+ </property>
+ <property name="sizeType">
+ <enum>Expanding</enum>
+ </property>
+ <property name="sizeHint">
+ <size>
+ <width>41</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ <widget class="QSpinBox" row="2" column="1">
+ <property name="name">
+ <cstring>kcfg_val_time</cstring>
+ </property>
+ <property name="minValue">
+ <number>1</number>
+ </property>
+ <property name="value">
+ <number>2</number>
+ </property>
+ </widget>
+ <spacer row="2" column="2">
+ <property name="name">
+ <cstring>spacer3</cstring>
+ </property>
+ <property name="orientation">
+ <enum>Horizontal</enum>
+ </property>
+ <property name="sizeType">
+ <enum>Expanding</enum>
+ </property>
+ <property name="sizeHint">
+ <size>
+ <width>41</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </grid>
+</widget>
+<layoutdefaults spacing="6" margin="11"/>
+<includehints>
+ <includehint>kcolorbutton.h</includehint>
+</includehints>
+</UI>
diff --git a/languages/ruby/app_templates/kxt/prefs.rb b/languages/ruby/app_templates/kxt/prefs.rb
new file mode 100644
index 00000000..1469687e
--- /dev/null
+++ b/languages/ruby/app_templates/kxt/prefs.rb
@@ -0,0 +1,7 @@
+
+class Prefs < Prefs_base
+
+ def initialize()
+ super()
+ end
+end
diff --git a/languages/ruby/app_templates/kxt/previewruby.png b/languages/ruby/app_templates/kxt/previewruby.png
new file mode 100644
index 00000000..e235c9cf
--- /dev/null
+++ b/languages/ruby/app_templates/kxt/previewruby.png
Binary files differ
diff --git a/languages/ruby/app_templates/kxt/settings.kcfgc b/languages/ruby/app_templates/kxt/settings.kcfgc
new file mode 100644
index 00000000..384510cd
--- /dev/null
+++ b/languages/ruby/app_templates/kxt/settings.kcfgc
@@ -0,0 +1,6 @@
+# Code generation options for kconfig_compiler
+File=%{APPNAMELC}.kcfg
+ClassName=Settings
+Singleton=true
+Mutators=col_background,col_foreground
+# will create the necessary code for setting those variables
diff --git a/languages/ruby/app_templates/kxt/src-Makefile.am b/languages/ruby/app_templates/kxt/src-Makefile.am
new file mode 100644
index 00000000..a8170abc
--- /dev/null
+++ b/languages/ruby/app_templates/kxt/src-Makefile.am
@@ -0,0 +1,48 @@
+## Makefile.am for %{APPNAMELC}
+
+# this is the program that gets installed. it's name is used for all
+# of the other Makefile.am variables
+bin_PROGRAMS = %{APPNAMELC}
+
+# set the include path for X, qt and KDE
+INCLUDES = $(all_includes) -I$(RUBY_ARCHDIR)
+
+# the library search path.
+%{APPNAMELC}_LDFLAGS = $(all_libraries) $(KDE_RPATH) -L$(RUBY_LIBDIR)
+
+# the libraries to link against.
+%{APPNAMELC}_LDADD = $(LIB_KFILE) $(LIB_KDEPRINT) $(RUBY_LIBRUBYARG)
+
+# which sources should be compiled for %{APPNAMELC}
+%{APPNAMELC}_SOURCES = %{APPNAMELC}.cpp
+
+# let automoc handle all of the meta source files (moc)
+METASOURCES = AUTO
+
+KDE_ICON = AUTO
+
+# this is where the kdelnk file will go
+kdelnkdir = $(kde_appsdir)/Utilities
+kdelnk_DATA = %{APPNAMELC}.desktop
+
+# this is where the XML-GUI resource file goes
+rcdir = $(kde_datadir)/%{APPNAMELC}
+rc_DATA = %{APPNAMELC}ui.rc
+
+rubysrc_DATA = main.rb %{APPNAMELC}.rb %{APPNAMELC}view.rb prefs.rb \
+ appview_base.rb prefs-base.rb settings.rb
+
+rubysrcdir = $(kde_datadir)/%{APPNAMELC}
+
+rubyui_DATA = appview_base.ui prefs-base.ui
+
+rubyuidir = $(kde_datadir)/%{APPNAMELC}
+
+%.rb: %.ui
+ $(RBUIC) -tr ${UIC_TR} -kde $< -o $@
+
+RBKCONFIG_COMPILER = rbkconfig_compiler
+
+settings.rb: %{APPNAMELC}.kcfg settings.kcfgc
+ $(RBKCONFIG_COMPILER) ./%{APPNAMELC}.kcfg ./settings.kcfgc
+
diff --git a/languages/ruby/app_templates/kxt/subdirs b/languages/ruby/app_templates/kxt/subdirs
new file mode 100644
index 00000000..0e678106
--- /dev/null
+++ b/languages/ruby/app_templates/kxt/subdirs
@@ -0,0 +1,3 @@
+doc
+po
+src