<?xml version="1.0" ?>
<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
  <!ENTITY kappname "&kapptemplate;">
  <!ENTITY package "kdesdk">
  <!ENTITY % addindex "IGNORE">
  <!ENTITY % English "INCLUDE">
]>

<book id="kapptemplate" lang="&language;">

<bookinfo>
<title>The &kapptemplate; Handbook</title>

<authorgroup>
<author>
<firstname>Anne-Marie</firstname>
<surname>Mahfouf</surname>
<affiliation>
<address>&Anne-Marie.Mahfouf.mail;</address>
</affiliation>
</author>
<!-- TRANS:ROLES_OF_TRANSLATORS -->
</authorgroup>

<copyright>
<year>2008</year>
<holder>&Anne-Marie.Mahfouf;</holder>
</copyright>

<legalnotice>&FDLNotice;</legalnotice>


<date>2008-04-28</date>
<releaseinfo>0.1</releaseinfo>

<abstract>
<para>
&kapptemplate; is a &kde; 4 templates generator.
</para>
</abstract>

<keywordset>
<keyword>KDE</keyword>
<keyword>kdesdk</keyword>
<keyword>KDE 4</keyword>
<keyword>programming</keyword>
<keyword>template</keyword>
<keyword>C++</keyword>
<keyword>python</keyword>
<keyword>ruby</keyword>
<keyword>pyqt4</keyword>
<keyword>pykde4</keyword>
<keyword>plasma</keyword>
<keyword>Qt 4</keyword>
</keywordset>

</bookinfo>

<chapter id="introduction"> 
<title>Introduction</title> 
<para>
&kapptemplate; generates &kde; templates to help you start easily &kde;
programming.</para> 

<para>
&kapptemplate; offers you a few basic templates projects and also picks up KDevelop templates if some are installed on your machine.
</para>
<para>
As default you will find:</para>

<itemizedlist>
<listitem><para>A simple &kde; 4 &GUI; template</para> </listitem>
<listitem><para>A &kde; 4 KPart template</para> </listitem>
<listitem><para>A Qt4 main window based template</para></listitem>
<listitem><para>A PyQt4 application</para></listitem>
<listitem><para>A Py&kde;4 application</para></listitem>
<listitem><para>A Ruby (korundum4) template</para></listitem>
<listitem><para>A plasma applet template</para></listitem>
</itemizedlist>

<para>Answer the wizard questions on each page and generate your template.</para>

<note><para>A <filename>README</filename> file in each template will allow you to find out how to build the template. It will also give you links for tutorials related to the project. After the project is generated, &kapptemplate;'s job is finished and you are on your own to build it.</para></note>
</chapter>

<chapter id="using-kapptemplate">
<title>Using &kapptemplate;</title>
<para>&kapptemplate; is a wizard. The first page of the wizard explains you that &kapptemplate; will generate a base project. Click <guibutton>Next</guibutton> to start generating your project. <guibutton>Cancel</guibutton> will stop the program and quit it. <guibutton>Help</guibutton> will display this help handbook in &khelpcenter;.</para>
<screenshot>
<screeninfo>&kapptemplate; first page</screeninfo>
	<mediaobject>
	  <imageobject>
	    <imagedata fileref="first-page.png" format="PNG"/>
	  </imageobject>
	    <textobject>
	    <phrase>&kapptemplate; first page</phrase>
	  </textobject>
	</mediaobject>
</screenshot>

<para>The second page lists the available templates. On the right you can see the template preview and below the template description. After you chose your template, you are invited to enter the project name in the field at the bottom.</para>
<screenshot>
<screeninfo>&kapptemplate; second page</screeninfo>
	<mediaobject>
	  <imageobject>
	    <imagedata fileref="second-page.png" format="PNG"/>
	  </imageobject>
	    <textobject>
	    <phrase>&kapptemplate; second page</phrase>
	  </textobject>
	</mediaobject>
</screenshot>
<para>On the third page, you are asked for the project version, the source folder and the author name and email. If you filled &systemsettings; tab about your personal information, it will be taken from there as default.</para>
<screenshot>
<screeninfo>&kapptemplate; third page</screeninfo>
	<mediaobject>
	  <imageobject>
	    <imagedata fileref="third-page.png" format="PNG"/>
	  </imageobject>
	    <textobject>
	    <phrase>&kapptemplate; third page</phrase>
	  </textobject>
	</mediaobject>
</screenshot>
<para>The fourth and last page gives you some feedback about the project generation.</para>
<screenshot>
<screeninfo>&kapptemplate; fourth page</screeninfo>
	<mediaobject>
	  <imageobject>
	    <imagedata fileref="fourth-page.png" format="PNG"/>
	  </imageobject>
	    <textobject>
	    <phrase>&kapptemplate; fourth page</phrase>
	  </textobject>
	</mediaobject>
</screenshot>
<para>Then click <guibutton>Finish</guibutton> to close &kapptemplate;.</para>
</chapter>

<chapter id="templates-description">
<title>What template do you need?</title>
<para>This chapter describes the templates so you can choose the one that
 is the best adapted to your needs.</para>

<sect1 id="kde4-gui-app">
<title>The C++ &kde; 4 &GUI; application template</title>
<para>This is a CMake based &kde; 4 &GUI; template using KXMLGuiWindow and KConfig XT. This is a &kde; 4 standard application.</para>
<screenshot>
<screeninfo>Here's a screenshot of the C++ &kde; 4 &GUI; application template</screeninfo>
	<mediaobject>
	  <imageobject>
	    <imagedata fileref="kapp4.png" format="PNG"/>
	  </imageobject>
	    <textobject>
	    <phrase>C++ &kde; 4 &GUI; application template</phrase>
	  </textobject>
	</mediaobject>
</screenshot>
<para>This template demonstrates how you create &kde; menus using XMLGui and 
how to use KConfig XT to change settings using the <menuchoice>
<guimenu>Settings</guimenu>
<guimenuitem>Configure &lt;AppName&gt;</guimenuitem>
</menuchoice>.</para>

<para>Don't forget to read the <filename>README</filename> in the project directory. You can find some great tutorials for &kde; 4 on <ulink url="http://techbase.kde.org/Development/Tutorials">http://techbase.kde.org/Development/Tutorials</ulink>.</para>
</sect1>

<sect1 id="kpart-app">
<title>The C++ &kde; 4 KPart application template</title>
<para>This is a CMake based &kde; 4 KPart template.</para>
<screenshot>
<screeninfo>Here's a screenshot of the C++ &kde; 4 Kpart template</screeninfo>
	<mediaobject>
	  <imageobject>
	    <imagedata fileref="kpartapp.png" format="PNG"/>
	  </imageobject>
	    <textobject>
	    <phrase>C++ &kde; 4 Kpart template</phrase>
	  </textobject>
	</mediaobject>
</screenshot>

<para>Don't forget to read the <filename>README</filename> in the project directory.</para>
</sect1>

<sect1 id="plasmoid">
<title>The plasmoid application</title>
<para>This template generates a simple plasma applet with an icon and some text on it.</para>

<screenshot>
<screeninfo>&kde; 4 plasma applet template</screeninfo>
	<mediaobject>
	  <imageobject>
	    <imagedata fileref="plasma-applet.png" format="PNG"/>
	  </imageobject>
	    <textobject>
	    <phrase>&kde; 4 plasma applet template</phrase>
	  </textobject>
	</mediaobject>
</screenshot>
<para>You need &kde; 4.1 to build this template and it uses CMake. You can read more about it on <ulink url="http://techbase.kde.org/index.php?title=Development/Tutorials/Plasma/GettingStarted">http://techbase.kde.org/index.php?title=Development/Tutorials/Plasma/GettingStarted</ulink>, all methods are explained here.</para>
<para>Restart plasma to load the applet by issuing <userinput>kquitapp plasma &amp;&amp; plasma</userinput> or view it with <userinput>plasmoidviewer YourAppletName</userinput>.</para>
</sect1>

<sect1 id="pyqt4-template">
<title>The PyQT4 application</title>

<para>
The template will give you the following application:
</para>

<screenshot>
<screeninfo>The PyQT4 application</screeninfo>
	<mediaobject>
	  <imageobject>
	    <imagedata fileref="pyqt4app.png" format="PNG"/>
	  </imageobject>
	    <textobject>
	    <phrase>The PyQT4 application</phrase>
	  </textobject>
	</mediaobject>
</screenshot>

<para>You need PyQt4 from your distribution.</para>

<para>To run the template, first generate the python module from the Designer myCalendar.ui file by typing
<userinput>pyuic4 -o myCalendar.py myCalendar.ui</userinput> in your project folder and then start your project:
<userinput>python APPNAME.py</userinput>.</para>
</sect1>


<sect1 id="pyKDE4-template">
<title>The PyKDE4 application</title>

<para>
The template will give you the following application:
</para>

<screenshot>
<screeninfo>The PyKDE4 application</screeninfo>
	<mediaobject>
	  <imageobject>
	    <imagedata fileref="pykde4.png" format="PNG"/>
	  </imageobject>
	    <textobject>
	    <phrase>The PyKDE4 application</phrase>
	  </textobject>
	</mediaobject>
</screenshot>

<para>You need PyKDE 4 from your distribution.</para>

<para>To run the template, first generate the python module from the Designer myCalendar.ui file by typing
<userinput>pyuic4 -o myCalendar.py myCalendar.ui</userinput> in your project folder and then start your project:
<userinput>python APPNAME.py</userinput>.</para>
</sect1>

<sect1 id="ruby-template">
<title>The Ruby &kde; application</title>

<para>
The template will give you the following application:
</para>

<screenshot>
<screeninfo>The &kde; Ruby application</screeninfo>
	<mediaobject>
	  <imageobject>
	    <imagedata fileref="kderubyapp.png" format="PNG"/>
	  </imageobject>
	    <textobject>
	    <phrase>The &kde; Ruby application</phrase>
	  </textobject>
	</mediaobject>
</screenshot>

<para>You need korundum4 from &kde; 4 kdebindings module or from your distribution to run this template.</para>

<para>To run the template, after building and installing the project (see the <filename>README</filename>), type in konsole: <userinput>krubyapplication your-app/main.rb</userinput>.</para>
</sect1>

</chapter>

<chapter id="credits">
<title>Credits and License</title>

<itemizedlist>
<listitem><para>Program copyright 1998-2003 &Kurt.Granroth;</para> </listitem>
<listitem><para>Program copyright 2006-2008 &Anne-Marie.Mahfouf;</para></listitem>
<listitem><para>Program copyright 2008 Beat Wolf</para>
</listitem>
</itemizedlist>
<para>
Contributors:
<itemizedlist>
<listitem><para>Coding help: Beat Wolf
<email>asraniel@fryx.ch</email></para> </listitem>
<listitem><para>Ruby template: Cyrille Berger
<email>cberger@cberger.net</email></para> </listitem>
<listitem><para>Ruby template: Richard Dale
<email>Richard_Dale@tipitina.demon.co.uk></email></para> </listitem>
<listitem><para>Py&kde;4 template: Christoph Burgmer 
<email>chrislb@gmx.de</email></para> </listitem>
</itemizedlist>
</para>
<para>
Documentation copyright 2008 &Anne-Marie.Mahfouf; &Anne-Marie.Mahfouf.mail;
</para>

<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
&underFDL;               <!-- FDL: do not remove -->
&underGPL;        	 <!-- GPL License -->

</chapter>


<appendix id="installation">
<title>Installation</title>

<sect1 id="getting-kapptemplate">
<title>How to obtain &kapptemplate;</title>

&install.intro.documentation;

</sect1>

<sect1 id="compilation">
<title>Compilation and installation</title>

&install.compile.documentation;

</sect1>

</appendix>
&documentation.index; 
</book>

<!--
Local Variables:
mode: sgml
sgml-minimize-attributes:nil
sgml-general-insert-case:lower
sgml-indent-step:0
sgml-indent-data:nil
End:
-->
