<!DOCTYPE book PUBLIC  "-//KDE//DTD DocBook V3.1-Based Variant
V1.0//EN" [   <!ENTITY ktuberling
"<application>KTuberling</application>">   <!ENTITY kappname
"&ktuberling;">   <!ENTITY % addindex "IGNORE">
  <![ %addindex; [ <!ENTITY docindex SYSTEM "docindex.docbook"> ]]>
  <!ENTITY % addindex "IGNORE">
  <!ENTITY % English "INCLUDE" -- change language only here -->
  <!ENTITY % ents PUBLIC "-//KDE//ENTITIES Documentation V1.0//EN">
  %ents;
]>

<book lang="&language;">
<!-- book lang="&lang;" is this the new way? makes jade errors for me-->
<bookinfo>
<title>The KTuberling Handbook</title>

<authorgroup>
<author>
<firstname>Eric</firstname>
<surname>Bischoff</surname>
<affiliation>
<address><email>e.bischoff@noos.fr</email></address>
</affiliation></author>
</authorgroup>

<!--rewritten to conform to the KDE2 documentation template -->

<date>06/02/2001</date>
<releaseinfo>0.1</releaseinfo>
<!--release level pulled from main.cpp, 12/11/2000 cvs head -->

<abstract>
<para>
&ktuberling; is a game intended for small children.
</para>
</abstract>

<keywordset>
<keyword>KDE</keyword>
<keyword>KTuberling</keyword>
<keyword>game</keyword>
<keyword>potato</keyword>
<keyword>tuberling</keyword>
<keyword>children</keyword>
</keywordset>
</bookinfo>

<chapter id="introduction">
<title>Introduction</title>

<para>
&ktuberling; is a game intended for small children. Of course, it may be
suitable for adults who have remained young at heart.
</para>

<para>
It is a potato editor. That means that you can drag and drop eyes, mouths,
mustache,and other parts of face and goodies onto a potato-like guy.
</para>

<para>
There is no winner for the game. The only purpose is to make the funniest
faces you can.
</para>

<para>
There is a museum (like a <quote>Madame Tusseau</quote> gallery) where you
can find many funny examples of decorated potatoes. Of course, you can send
your own creations to the programmer,
<ulink url="mailto:e.bischoff@noos.fr">Eric Bischoff</ulink>, who will
include them in the museum if he gets some spare time.
</para>
</chapter>

<chapter id="onscreen-fundamentals">
<title>On screen Fundamentals</title>

<!--=======================================================     MOUSE -->

<sect1 id="mouse-operation">
<title>Mouse Operation</title>

<para>
There are two areas in the main window:
</para>

<itemizedlist>
<listitem><para><quote>Potato</quote> area, on the left side.
</para></listitem>
<listitem><para>
<quote>Objects</quote> area, on the right side, where you select Objects to
place on your potato!
</para></listitem>
</itemizedlist>

<!-- original gameboard.xpm, needs more compression -->

<screenshot>
<screeninfo>Main Window of &ktuberling; main window:</screeninfo>
<mediaobject>
<imageobject>
<imagedata format="PNG" fileref="gameboard.png">
</imageobject>
<imageobject>
<imagedata format="EPS" fileref="gameboard.eps">
</imageobject>
<textobject><phrase>Main Window</phrase></textobject>
</mediaobject>
</screenshot>

<sect2 id="place-object">
<title>Placing an Object</title>

<para>
To drag an object, move the mouse pointer to the <quote>objects</quote>
area on the right. Click on the object you want to drag, but do not release
the mouse button until you have moved the mouse pointer to the location in
the <quote>potato</quote> area where you want to drop the object.
</para>
</sect2>

<sect2 id="move-object">
<title>Moving an Object</title>
<para>
Once dropped in the <quote>potato</quote> area, an object can be moved.
Just click on the object to select it for further drag and drop. When you
click on it, it goes on top of other objects that were partially hiding it.
This trick is useful for getting the glasses and eyes placed correctly.
</para>
</sect2>

<sect2 id="remove-object">
<title>Removing an Object</title>
<para>
To remove an object that has been dropped in the <quote>potato</quote>
area, drag it back from the <quote>potato</quote> area to the
<quote>objects</quote> area.
</para>
</sect2>
</sect1>

<!--=======================================================   TOOLBAR -->

<sect1 id="the-tool-bar">
<title>The Tool Bar</title>

<mediaobject>
<imageobject>
<imagedata format="PNG" fileref="toolbar.png">
</imageobject>
<imageobject>
<imagedata format="EPS" fileref="toolbar.eps">
</imageobject>
<textobject><phrase>Toolbar</phrase></textobject>
</mediaobject>
<para>
The toolbar provides buttons for the commonly used functions.
</para>


<!-- buttons shown in a table -->

<table>
<title>Toolbar Buttons</title>
<tgroup cols=3>
<!-- <thead> tag not used -->
<tbody>

<row>
<entry>Button</entry>
<entry>Name</entry>
<entry>Action</entry>
</row>

<row>
<entry>

<!--  document type does
not allow element "MEDIAOBJECT" here;
missing one of "FOOTNOTE", "MSGTEXT", "SYNOPSIS" start-tag

<mediaobject>
<imageobject>
<imagedata format="PNG" fileref="button.new.png">
</imageobject>
<imageobject>
<imagedata format="EPS" fileref="button.new.eps">
</imageobject>
</mediaobject>
 -->

<!--try inlinemediaobject.... although inline is on the "banned" list -->

<inlinemediaobject>
<imageobject>
<imagedata format="PNG" fileref="button.new.png">
</imageobject>
<imageobject>
<imagedata format="EPS" fileref="button.new.eps">
</imageobject>
</inlinemediaobject>

</entry>
<entry>
New</entry>
<entry>
Resets the <quote>potato</quote> area. This cleans all parts off the
potato so a new character may be created.
 </entry>
</row>


<row>
<entry>
<inlinemediaobject>
<imageobject>
<imagedata format="PNG" fileref="button.open.png">
</imageobject>
<imageobject>
<imagedata format="EPS" fileref="button.open.eps">
</imageobject>
</inlinemediaobject>
</entry>
<entry>Open</entry>
<entry>
Opens an existing tuberling file from the museum or from other folders.
</entry>
</row>

<row>
<entry>
<inlinemediaobject>
<imageobject>
<imagedata format="PNG" fileref="button.save.png">
</imageobject>
<imageobject>
<imagedata format="EPS" fileref="button.save.eps">
</imageobject>
<textobject><phrase>Save Button</phrase></textobject>
</inlinemediaobject>
</entry>
<entry>Save</entry>
<entry>
Saves your creation to the museum, or to some other folder if you
wish. The tuberling is saved to a small file where only the
position of objects are saved.
</entry>
</row>


<row>
<entry>
<inlinemediaobject>
<imageobject>
<imagedata format="PNG" fileref="button.print.png">
</imageobject>
<imageobject>
<imagedata format="EPS" fileref="button.print.eps">
</imageobject>
<textobject><phrase>Print Button</phrase></textobject>
</inlinemediaobject>
</entry>
<entry>
Print
</entry>
<entry>
Prints your picture (&PostScript format).
</entry>
</row>

<row>
<entry>
<inlinemediaobject>
<imageobject>
<imagedata format="PNG" fileref="button.undo.png">
</imageobject>
<imageobject>
<imagedata format="EPS" fileref="button.undo.eps">
</imageobject>
<textobject><phrase>Undo Button</phrase></textobject>
</inlinemediaobject>
</entry>
<entry>
Undo
</entry>
<entry>Undoes last operation.</entry>
</row>

<row>
<entry>
<inlinemediaobject>
<imageobject>
<imagedata format="PNG" fileref="button.redo.png">
</imageobject>
<imageobject>
<imagedata format="EPS" fileref="button.redo.eps">
</imageobject>
<textobject><phrase>Redo Button</phrase></textobject>
</inlinemediaobject>
</entry>
<entry>
Redo
</entry>
<entry>
Re-does last operation.</entry>
</row>

<!--  Currently there is no HELP button on the toolbar
<row>
<entry>
<inlinemediaobject>
<imageobject>
<imagedata format="PNG" fileref="button.help.png">
</imageobject>
<imageobject>
<imagedata format="EPS" fileref="button.help.eps">
</imageobject>
<textobject><phrase>Help Button</phrase></textobject>
</inlinemediaobject>
</entry>
<entry>
Help
</entry>
<entry>Displays this handbook.</entry>
</row>
-->

</tbody>
</tgroup>
</table>
</sect1>

<!--=======================================================     MENU -->

<sect1 id="the-menu-items">
<title>The Menu Items</title>

<mediaobject>
<imageobject>
<imagedata format="PNG" fileref="menu.raw.png">
</imageobject>
<imageobject>
<imagedata format="EPS" fileref="menu.raw.eps">
</imageobject>
<textobject><phrase>Menu Bar</phrase></textobject>
</mediaobject>

<sect2>
<title>The File Menu</title>
<mediaobject>
<imageobject>
<imagedata format="PNG" fileref="menu.file.png">
</imageobject>
<imageobject>
<imagedata format="EPS" fileref="menu.file.eps">
</imageobject>
<textobject><phrase>File Menu</phrase></textobject>
</mediaobject>

<para><variablelist>

<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl<keycap>N</keycap></keycombo>
 </shortcut>
<guimenu><accel>F</accel>ile</guimenu>
 <guimenuitem><accel>N</accel>ew</guimenuitem>
 </menuchoice></term>
<listitem><para><action>Clears</action> the <quote>potato</quote>
area </para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl<keycap>O</keycap></keycombo>
 </shortcut>
<guimenu><accel>F</accel>ile</guimenu>
 <guimenuitem><accel>O</accel>pen</guimenuitem>
 </menuchoice></term>
 <listitem><para><action>Opens an existing tuberling file</action> from
the museum or from somewhere else if you wish.</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl<keycap>S</keycap></keycombo>
</shortcut>
<guimenu><accel>F</accel>ile</guimenu>
<guimenuitem><accel>S</accel>ave</guimenuitem>
</menuchoice></term>
<listitem><para><action>Saves</action> your creation. The tuberling is
saved to a small file where only the position of objects are saved.
</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<!-- <shortcut>  -NO SHORTCUT-
<keycombo action="simul">&Ctrl<keycap>C</keycap></keycombo>
</shortcut> -->
<guimenu><accel>F</accel>ile</guimenu>
<guimenuitem>Save <accel>a</accel>s picture...</guimenuitem>
</menuchoice></term>
<listitem><para><action>Creates a graphics file</action>
containing a picture of your tuberling.  Available file formats
are XPM, JPEG, PNG and BMP.
</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl<keycap>P</keycap></keycombo>
</shortcut>
<guimenu><accel>F</accel>ile</guimenu>
<guimenuitem><accel>P</accel>rint</guimenuitem>
</menuchoice></term>
<listitem><para><action>Print</action> your tuberling picture using
 &PostScript format.
</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl<keycap>Q</keycap></keycombo>
</shortcut>
<guimenu><accel>F</accel>ile</guimenu>
<guimenuitem><accel>Q</accel>uit</guimenuitem>
</menuchoice></term>
<listitem><para><action>Quit</action> &ktuberling;.
</para></listitem>
</varlistentry>


</variablelist>
</para>
</sect2>

<sect2>
<title>The Edit Menu</title>
<mediaobject>
<imageobject>
<imagedata format="PNG" fileref="menu.edit.png">
</imageobject>
<imageobject>
<imagedata format="EPS" fileref="menu.edit.eps">
</imageobject>
<textobject><phrase>Edit Menu</phrase></textobject>
</mediaobject>


<para><variablelist>

<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl<keycap>C</keycap></keycombo>
</shortcut>
<guimenu><accel>E</accel>dit</guimenu>
<guimenuitem><accel>C</accel>opy</guimenuitem>
</menuchoice></term>
<!--<listitem><para><action>Copy the <quote>potato</quote> area</action> to
 QUOTE TAG NOT ALLOWED HERE -->
<listitem><para><action>Copy the potato area</action> to the clipboard
</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl<keycap>Z</keycap></keycombo>
</shortcut>
<guimenu><accel>E</accel>dit</guimenu>
<guimenuitem><accel>U</accel>ndo</guimenuitem>
</menuchoice></term>
<listitem><para><action>Undo</action> the last
<quote>object</quote> placement.
</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl<keycap>Shift</keycap>
<keycap>Z</keycap></keycombo>
</shortcut>
<guimenu><accel>E</accel>dit</guimenu>
<guimenuitem><accel>R</accel>edo</guimenuitem>
</menuchoice></term>
<listitem><para><action>Re-does</action> the last <quote>object</quote>
placement.  This menu option is active only if you have previously used
<guilabel>Undo</guilabel>.
</para></listitem>
</varlistentry>
</variablelist>
</para>
</sect2>

<sect2>
<title>The Options Menu</title>
<mediaobject>
<imageobject>
<imagedata format="PNG" fileref="menu.option.png">
</imageobject>
<imageobject>
<imagedata format="EPS" fileref="menu.option.eps">
</imageobject>
<textobject><phrase>Options Menu</phrase></textobject>
</mediaobject>

<para><variablelist>
<varlistentry>
<term><menuchoice>
<!-- <shortcut> -NO KEYBOARD SHORTCUT-
<keycombo action="simul">&Ctrl<keycap>C</keycap></keycombo>
</shortcut> -->
<guimenu><accel>O</accel>ptions</guimenu>
<guimenuitem><accel>S</accel>ound</guimenuitem>
</menuchoice></term>
<listitem><para><action>Toggles sound on/off</action>.
If <filename>artsd</filename> is not running, this menu item is
disabled. <!--grayed out.-->
</para></listitem>
</varlistentry>
</variablelist>
</para>
</sect2>

<sect2>
<title>The Help Menu</title>
<mediaobject>
<imageobject>
<imagedata format="PNG" fileref="menu.help.png">
</imageobject>
<imageobject>
<imagedata format="EPS" fileref="menu.help.eps">
</imageobject>
<textobject><phrase>Help Menu</phrase></textobject>
</mediaobject>


<para><variablelist>

<varlistentry>
<term><menuchoice>
<shortcut><keycap>F1</keycap></shortcut>
<guimenu><accel>H</accel>elp</guimenu>
<guimenuitem><accel>C</accel>ontents</guimenuitem>
</menuchoice></term>
<listitem><para><action>Displays this handbook</action>.
</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul"><keycap>Shift</keycap>
<keycap>F1</keycap></keycombo>
</shortcut>
<guimenu><accel>H</accel>elp</guimenu>
<guimenuitem>What's <accel>T</accel>his</guimenuitem>
</menuchoice></term>
<listitem><para><action>Get help for an item</action> by clicking on it.
 This feature is not fully implemented.  Playing with this option does no
harm. </para></listitem> </varlistentry>

<varlistentry>
<term><menuchoice>
<!--<shortcut>  -==NO SHORTCUT KEY==-
<keycombo action="simul"><keycap>Shift</keycap>
<keycap>F1</keycap></keycombo>
</shortcut>  -->
<guimenu><accel>H</accel>elp</guimenu>
<guimenuitem><accel>R</accel>eport bug...</guimenuitem>
</menuchoice></term>
<listitem><para><action>Report a bug</action> or request an enhancement to
&ktuberling;.
</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<!-- ===NO SHORTCUT KEYS==
<shortcut>
<keycombo action="simul">&Ctrl<keycap>C</keycap></keycombo>
</shortcut> -->
<guimenu><accel>H</accel>elp</guimenu>
<guimenuitem><accel>A</accel>bout kTuberling</guimenuitem>
</menuchoice></term>
<listitem><para><action>Displays information about the program</action>.
  Also strokes the ego of the authors.
</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<!-- <shortcut>  -==NO SHORTCUT KEY==-
<keycombo action="simul">&Ctrl<keycap>C</keycap></keycombo>
</shortcut>  -->
<guimenu><accel>H</accel>elp</guimenu>
<guimenuitem>About <accel>K</accel>DE</guimenuitem>
</menuchoice></term>
<listitem><para><action>Tells about</action>
 one of the greatest Linux-related projects.</para></listitem>
</varlistentry>

</variablelist>
</para>

</sect2>
</sect1>
</chapter>

<chapter id="technical-reference">
<title>Technical reference</title>

<para>
&ktuberling; offers a gentle and rewarding introduction to KDE
customization and programming.  The application can be extended.  For
example, without any coding, new vegetable characters can be added by
changing the graphics files. By adding appropriate sound files,
translators can change the sounds to their native tongue!
</para>

<para>
If you extend or add to the game please consider sending your
additions to the developer
<ulink url="mailto:e.bischoff@noos.fr">Eric Bischoff</ulink>
for inclusion in future releases.
</para>

<sect1 id="graphics">
<title>Graphics</title>

<para>
The size and shape of the gameboard and the number of objects can be
changed.  Only two files need to be created: a gameboard and a mask.
</para>

<para>
Two images are used in &ktuberling;: "gameboard.xpm" and "masks.xpm".  The
standard location for these files is the directory
$KDE/share/apps/ktuberling/pics/. "gamboard.xpm" holds the gameboard and
the objects that the user selects.  This is the graphic that the user sees
when playing the game.
</para>
<para>
The second file, "masks.xpm", contains only masks of the objects.  The
masks are used to delimit the borders of the objects and, in some cases,
give the object some transparancy (for example, the spectacles).  In the
distributed <quote>masks.xpm</quote> the objects are duplicated from
<quote>gameboard.xpm</quote>.  This is an artifact of the original artist's
technique.  Only the masks, the stencil-like images, in
<quote>masks.xpm</quote> are used by the program.
</para>

<para>
The third file in the directory, <quote>layout.txt</quote>.
($KDE/share/apps/ktuberling/pics/layout.txt) contains the position
parameters of the objects and the masks.  It also assigns the sounds to
objects and places the objects in groups. This file is changed to describe
the graphic to the program.  It contains only decimal integers,
separated by whitespace, followed by a comment.
</para>

<screenco>
        <areaspec>
          <area coords="1 65" id="one">
          <area coords="2 65" id="two">
          <area coords="5 50" id="three">
          <area coords="9 66" id="four">
          <area coords="11 58" id="five">
         </areaspec>
<screen>
   0   0  240 320          0 Area where objects can be dropped
                6             Number of texts described here
 241 101  413 115          0 "Eyes" text
 415 123  511 137          1 "Eyebrows" text
 241 179  394 193          2 "Noses" text
 395 179  511 193          3 "Ears" text
 241 259  445 273          4 "Mouths" text
 241 307  511 321          5 "Goodies" text
                   43         Number of objects described here
 242   0  283  32      70   0  111  32      1 Eye #1
 242  34  283  66      70  34  111  66      1 Eye #2
 242  68  283 100      70  68  111 100      1 Eye #3
  :
  :  <---cut--->
</screen>
</screenco>


<calloutlist>
<callout arearefs="one">
<para>Layout header line.</para>
<para>
 This line describes the area of the gameboard where objects are
placed (the potato area).  The first four numbers are the coordinates
of the area: left, top, right, bottom.  The fifth number is the index
number of the associated sound.  The sounds are defined in the source
file <quote>categories.h</quote>.
</para>
</callout>

<callout arearefs="two">
<para>Quantity of group labels</para>
<para>
This, the second line, is the number of group text labels defined in
the next section of this file.
</para>
</callout>

<callout arearefs="three">
<para>Label positions</para>
<para>
These lines describe the position of the text labeling the
groups or categories of objects.  The text of the labels can only be
changed in the source code (<quote>categories.h</quote>).  Only the
position of the labels can be changed here.
</para>
</callout>

<callout arearefs="four">
<para>Quantity of objects</para>
<para>
This line is the number of objects described in the next section of the
file.  Adjust this number if you add or remove objects.
</para>
</callout>

<callout arearefs="five">
<para>Individual objects</para>
<para>
In this section each of the individual objects are described.  The
position of the objects in <quote>gameboard.xpm</quote> and the
positions of the masks in <quote>masks.xpm</quote>. The first four
numbers are the coordinates of the object rectangle on the gameboard: left,
top, right, bottom. The fifth through eighth are the coordinates of the
object's mask, same ordering.  The ninth number is the index of the
associated sound. Several objects can be associated with the same sound.
</para> </callout>
</calloutlist>
</sect1>


<sect1 id="for-translators">
<title>Translation</title>

<para>
Besides the usual .po files mechanism for translating program labels
and prompts, the sounds can be localized
too.
</para>
<para>   <!-- "language-specific" needs a proper dash_entity -->
If the various translators can record their voice to a .wav file, they can
store that file to the language-specific subdirectory of the sounds
directory.  The name of the sound file is then translated in
the .po file. For example, if destination language is Italian, translators
can record their voice in .wav files located in
$KDE/share/apps/ktuberling/sounds/it. Then they can translate file names
like <quote>en/hat.wav</quote> to names like <quote>it/capello.wav</quote>.
</para>

<para>
Information on how to work with the translation mechanisms in &kde is
available in
<ulink url="http://i18n.kde.org/translation-howto/index.html">
The KDE Translation HOWTO</ulink>.
</para>

</sect1>
<sect1 id="for-programmers">

<title>For programmers</title>
<para>KTuberling isn't really difficult to extend for programmers.</para>

<sect2>
<title>C++ classes</title>

<para><variablelist>
<varlistentry>
<term>TopLevel</term>
<listitem>
<para>Top-level window and basic program management</para>
</listitem>
</varlistentry>
<varlistentry>
<term>ToDraw</term>
<listitem>
<para>Description of one of the graphical <quote>objects</quote> to be
drawn</para> </listitem>
</varlistentry>
</variablelist>
</para>

</sect2>

<sect2>
<title>.tuberling files structure</title>

<para>A .tuberling file holds all the necessary data to redraw a tuberling.
It can be edited with an ordinary text editor.</para>
<para>There is one graphical object per line, in the order that is used to
draw them.
Each line contains 5 numbers: the identifier of the object, and the rectangle
where it should be drawn
(left, top, right, bottom). The numbers are separated by whitespaces.</para>

</sect2>
</sect1>
</chapter>

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

<sect1 id="credits">
<title>Credits</title>
<para><itemizedlist>
<listitem>
<para>John Calhoun <email></email> - Original idea, pictures and english
sounds</para>
</listitem>
<listitem>
<para>Eric Bischoff <email>ebisch@cybercable.tm.fr</email> - KDE
Programming</para>
</listitem>
<listitem>
<para>François-xavier Duranceau <email>duranceau@free.fr</email> - Tests,
advice and help</para>
</listitem>
<listitem>
<para>Peter Silva <email>peter.silva@videotron.ca</email> - Proofreading of
the documentation</para>
</listitem>
<listitem>
<para>Paul Ahlquist<email>pea@ahlquist.org</email> -
Reformated and added screenshots for KDE 2.1.  Expanded the
graphics section of the technical reference.</para> </listitem>
</itemizedlist> </para>

<para>This game is dedicated to my little daughter Sunniva Bischoff</para>

<para>Thanks to Apple Computer and to the Linux PPC project for having made
ports of Linux to the Macintosh.
KTuberling would never have existed without that!</para>

</sect1>

<sect1 id="license">
<title>License</title>

&underFDL;
&underGPL;

<para>There is <emphasis>no warranty</emphasis>
that this program works or for whatever.</para>

</sect1>
</chapter>


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

<sect1 id="how-to-obtain-ktuberling">
<title>How to obtain <application>ktuberling</application></title>

<para>
<application>ktuberling</application> is a game application for the KDE project
<ulink url="http://www.kde.org">http://www.kde.org</ulink>.
Ktuberling  can be found on
<ulink url="ftp://ftp.kde.org/pub/kde/">ftp://ftp.kde.org/pub/kde/</ulink>,
the main ftp site of the KDE project.
</para>
</sect1>


<sect1 id="requirements">
<title>Requirements</title>

<para>
In order to successfully compile <application>ktuberling</application>,
you need the latest versions of <filename>libkdecore</filename>,
<literal remap="tt">libkdeui</literal>, <literal remap="tt">libkfile</literal>,
<literal remap="tt">libkfm</literal>, and
<literal remap="tt">libmediatooli</literal>.  All required libraries as
well as &ktuberling itself can be found on
<ulink url="ftp://ftp.kde.org/pub/kde/">ftp://ftp.kde.org/pub/kde/</ulink>.
</para>
</sect1>

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

<para>
In order to compile and install <application>ktuberling</application> on your
system, type the following in the base directory of the
<application>ktuberling</application> distribution:

<screen>
<prompt>%</prompt> <userinput><command>./configure</command></userinput>
<prompt>%</prompt> <userinput><command>make</command></userinput>
<prompt>%</prompt> <userinput><command>make</command> install</userinput>
</screen>

</para>
</sect1>
</appendix>

</book>

<!--
<author>
<firstname>Paul</firstname>
<surname>Ahlquist</surname>
<affiliation>
<address><email>pea@ahlquist.org</email></address>
</affiliation>
</author>
-->
