<chapter id="getting-started">

<!-- ToDo: 
Put the AppWizard section at the beginning.
Before anything else, let the user generate
a hello program like this:
- assumes KDevelop is properly installed,
  e.g. from a good Linux distribution
  (list those that include KDevelop?)
- start KDevelop
- if settings are needed, accept default ones
- Project - New Project
- C++ - KDE - Simple KDE application
- name: hello, location: default (/home/user). Next
- Project Options: Leave as default. Next
- .h Template: Leave as default. Next
- .cpp Template: Leave as default. Finish
- Build - Execute Program (Yes to run automake & friends)
- Messages window appears. Wait until program is compiled.
- Finally, program pops up, saying "Hello World".

After this, explore the KDevelop functionality
with the hello program as an example.

Also: Links to detailed descriptions in the main part.
Volker Paul
-->

<chapterinfo>
  <authorgroup>
    <author
><firstname
>Bernd</firstname
><surname
>Pol</surname
></author>
    <!-- ROLES_OF_TRANSLATORS -->
  </authorgroup>
</chapterinfo>

<title
>Komma igång med &kdevelop;: En guidad tur</title>

<para
>När du nu har installerat &kdevelop;s integrerade utvecklingsmiljö, hur ska du använda den på ett bra sätt? Eftersom det här är ett komplext program, kan inlärningskurvan vara något brant, särskilt om du inte redan är van vid den här sortens integrerade utvecklingsmiljö. </para>
<para
>Vi försöker att göra inlärningskurvan mindre brant genom att stegvis gå igenom hur ett enkelt KDE C++ program skapas. Därigenom tar vi en (översiktlig) titt på: </para>
<simplelist>
  <member
><link linkend="gettingstarted-overview"
>Vad är det som syns på ytan av den integrerade utvecklingsmiljön &kdevelop;.</link
></member>
<!--  <member
><link linkend="gettingstarted-configure"
>Some initial configuration steps.</link
></member
> -->
  <member
><link linkend="gettingstarted-new"
>Hur man skapar ett nytt projekt.</link
></member>
<!--  
  <member
><link linkend="gettingstarted-edit"
>How to work with documents.</link
></member>
  <member
><link linkend="gettingstarted-compile"
>How to compile the application in this project.</link
></member>
  <member
><link linkend="gettingstarted-extend"
>How to add classes and other detail to your project.</link
></member>
  <member
><link linkend="gettingstarted-debug"
>What to do to debug the application.</link
></member>
  <member
><link linkend="gettingstarted-doc"
>Some basic tools to build program or user documentation.</link
></member>
-->
</simplelist>

<sect1 id="gettingstarted-overview">
<title
>Den allra första titten på &kdevelop;</title>

<sect2 id="gettingstarted-overview-basic">
<title
>På ytan</title>

<para
>När du startar &kdevelop; allra första gången ser du en skärm som liknar den här: </para>

<screenshot>
  <mediaobject>
    <imageobject>
      <imagedata fileref="empty-ide.png" format="PNG"/>
    </imageobject>
    <caption
><para
>Ursprunglig layout i &kdevelop; </para
></caption>
  </mediaobject>
</screenshot>

<formalpara>
<title
>Arbetsområde och verktygsflikar</title>
<para
>I det här initiala fallet använder &kdevelop; det så kallade <link linkend="uimodes-survey"
>IDEA-användargränssnittet</link
>. Ett maximalt stort arbetsområde omges till vänster, under, och till höger av en serie knappar som fungerar på liknande sätt som flikarna på en skärm med flikar. Om du klickar på en av flikarna visas ett så kallat <emphasis
>verktygsvyfönster</emphasis
>, som låter dig arbeta med en speciell aktivitet. </para>
</formalpara>

<formalpara>
<title
>Menyer och verktygsrader</title>
<para
>Längst upp finns den vanliga menyraden, följd av flera rader med verktygsrader, där vissa är tomma från början. De förses med knappar så fort ett projekt har öppnats för verkligt arbete. </para>
</formalpara>

<formalpara>
<title
>Statusrad</title>
<para
>Till sist finns en statusrad längst ner i fönstret, som visar kortfattad information om flera aktiviteter. </para>
</formalpara>
</sect2
> <!-- gettingstarted-overview-basic -->

<sect2 id="gettingstarted-overview-help">
<title
>Hur man får hjälp</title>

<para
>Förutom <guimenu
>Hjälp</guimenu
>, som erbjuder svar på specifika frågor, tillhandahåller statusraden och två olika sorters verktygstips en del snabbinformation. </para>

<formalpara>
<title
>Vad gör det här menyalternativet?</title>
<para
>När du placerar muspekaren över ett menyalternativ, visas oftast kortfattad information i statusraden. Även om det i de flesta fall bara upprepar alternativets namn, tillhandahålls ibland ytterligare information om menyalternativets syfte.</para>
</formalpara>

<formalpara>
<title
>Vad är det här objektets namn?</title>
<para
>För många objekt visas ett kort verktygstips med funktionsnamnet när du håller markören över det några sekunder. Det är användbart för snabb orientering i verktygsrader eller verktygsvyflikar i IDEA-läge, när den integrerade utvecklingsmiljön har ställts in att bara visa ikoner på dessa knappar.</para>
</formalpara>

<formalpara>
<title
>Vad gör det här objektet?</title>
<para
>Mer information är tillgänglig genom utökad hjälp med verktygstips för många objekt i den integrerade utvecklingsmiljön. Välj <menuchoice
><guimenu
>Hjälp</guimenu
> <guimenuitem
>Vad är det här?</guimenuitem
></menuchoice
> eller tryck på <keycombo
><keycap
>&Shift;</keycap
><keycap
>F1</keycap
></keycombo
>, välj därefter objektet som du vill veta mer om med markören i form av ett frågetecken. Du kan också visa vilken meny som helst på detta sätt, och klicka på ett visst menyalternativ (både aktiva och inaktiva) för att se om mer information finns tillgänglig.</para>
</formalpara>

</sect2
> <!-- gettingstarted-overview-help -->

<sect2 id="gettingstarted-overview-menu">
<title
>Vad finns i menyerna?</title>

<para
>Det finns tio menyer som kan väljas i menyraden. De flesta förses med alla alternativ när ett projekt väl har öppnats för verkligt arbete, medan andra kräver att att minst ett dokument är öppnat. I korthet tillåter de följande sorters åtgärder. </para>

<para
>Det här är bara en översikt. För en detaljerad listning av menyerna och deras alternativ, se <link linkend="commands"
>Kommandoreferensen</link
>.</para>

<variablelist>
  <varlistentry>
  <term
><guimenu
>Arkiv</guimenu
></term>
  <listitem>
    <formalpara
><title
>Vanliga åtgärder</title>
    <para
>Detta är ganska standardmässigt. Det tillåter att dokumentfiler skapas, öppnas, sparas, skrivs ut och stängs, samt att avsluta programmet &kdevelop; som vanligt.</para
></formalpara>
    <formalpara
><title
>Återställ ändringar</title>
    <para
>Dessutom tillåts att ändringar återställs genom att ladda om filens innehåll på ett ordnat sätt.</para
></formalpara>
  </listitem>
  </varlistentry>
  
  <varlistentry>
  <term
><guimenu
>Redigera</guimenu
></term>
  <listitem>
    <para
>Den här menyn är bara användbar om ett dokument är öppnat.</para>
    <formalpara
><title
>Vanliga åtgärder</title>
    <para
>Tillhandahåller de vanliga åtgärderna för att ångra, göra om och klippa ut, kopiera eller klistra in. Dessutom tillåter den att markera textblock på olika sätt.</para
></formalpara>
    <formalpara
><title
>Sök och ersätt</title>
    <para
>Det finns en mycket kraftfull sökfunktion tillgänglig i menyn <guimenu
>Redigera</guimenu
>. Förutom de vanliga sök- och ersättningsfunktionerna begränsade till det nuvarande dokumentet, kan du dessutom utföra globala sök- och ersättningsåtgärder. Det gör det möjligt att arbeta med alla filer i projektet på en gång.</para
></formalpara>
    <formalpara
><title
>Avancerad textredigering</title>
    <para
>Det finns möjlighet att formatera om nuvarande dokument och att automatiskt komplettera delvis inskriven text på olika sätt.</para
></formalpara>
  </listitem>
  </varlistentry>
  
  <varlistentry>
  <term
><guimenu
>Visa</guimenu
></term>
  <listitem>
    <para
>Som menyn <guimenu
>Redigera</guimenu
>, är den här menyn bara användbar om ett projekt för närvarande är öppet. I detta fall är följande alternativ tillgängliga (bland annat):</para>
    <formalpara
><title
>Navigeringshistorik</title>
    <para
>Byt fram och tillbaka mellan dokumenten du tittat på, etc.</para>
    </formalpara>
    <formalpara
><title
>Felspårning</title>
    <para
>Navigera till källkodsraderna för fel som stöttes på i den senaste kompilerings- eller byggprocessen.</para>
    </formalpara>
    <formalpara
><title
>Hantera verktygsvyer</title>
    <para
>Visa eller dölj verktygsvyfönster eller verktygsvydockningar.</para>
    </formalpara>
    <formalpara
><title
>Åtgärder som hör ihop med editorn</title>
    <para
>Visa alternativ i menyn <guimenu
>Visa</guimenu
> styr utseendet och vyn för editorn du använder. När det gäller &kate;-programdelen (den inbäddade avancerade texteditorn) finns följande alternativ tillgängliga:</para>
    </formalpara>
    <itemizedlist>
      <listitem
><para
>Styr radbrytningsbeteendet i dokumentfönstret.</para
></listitem>
      <listitem
><para
>Visa eller dölj olika kolumner längs dokumentfönsterkanter: radnummer, ikoner och dessutom bokmärken i rullningslisten.</para
></listitem>
      <listitem
><para
>Styr visning av ihopdragna (tillfälligt dolda) avsnitt i en källkodstext.</para
></listitem>
    </itemizedlist>
  </listitem>
  </varlistentry>
  
  <varlistentry>
  <term
><guimenu
>Projekt</guimenu
></term>
  <listitem>
    <para
>Allt arbete i &kdevelop; är baserat på <emphasis
>projekt</emphasis
>, som i grunden samlar källkodsfiler, bygghanteringsfiler och annan information i en projektkatalog. Med den här menyn bestämmer du vilket projekt som används, vilka egenskaper det har och några andra hanteringsalternativ. I synnerhet:</para>
    <formalpara
><title
>Öppna ett projekt</title>
    <para
>Tillåter att nya projekt skapas, befintliga öppnas och import av projekt från andra miljöer.</para>
    </formalpara>
    <formalpara
><title
>Projektalternativ</title>
    <para
>Gör det möjligt att definiera en hel mängd olika projektegenskaper.</para>
    </formalpara>
    <formalpara
><title
>Klasshantering</title>
    <para
>Lägg till nya klasser i projektet och gå igenom arvträdet för en klass.</para>
    </formalpara>
    <formalpara
><title
>Distribuera projekt</title>
    <para
>Hjälper till att bygga paket för distribution av projektet.</para
></formalpara>
  </listitem>
  </varlistentry>
  
  <varlistentry>
  <term
><guimenu
>Bygg</guimenu
></term>
  <listitem>
    <para
>Den här menyn handlar helt och hållet om att kompilera och dokumentera projektet. Sålunda är den bara användbar när ett projekt verkligen är öppet. I detta fall tillhandahåller den följande alternativ:</para>
    <formalpara
><title
>Kompilera, länka och köra</title>
    <para
>Tillåter att hela projektet eller delar av det kompileras och länkas, samt kör programmet inifrån den integrerade utvecklingsmiljön.</para>
    </formalpara>
    <formalpara
><title
>Förberedande byggåtgärder</title>
    <para
>Det här beror i själva verket på byggsystemet som du använder för projektet. I fallet med automake-projekt tillåter de att köra <filename
>Makefile.cvs</filename
> och <filename
>configure</filename
> enskilt. Det finns också möjlighet att ta bort skapade filer från projektet, på olika nivåer.</para>
    </formalpara>
    <formalpara
><title
>Installera programmet</title>
    <para
>Tillåter att programmet installeras, både i lokala kataloger och i systemkataloger som bara är tillgängliga för systemadministratören.</para>
    </formalpara>
    <formalpara
><title
>Dokumentation av programmeringsgränssnittet</title>
    <para
>Bygg eller ta bort dokumentation av projektets programmeringsgränssnitt baserad på doxygen, enligt definitionen i projektalternativen.</para>
    </formalpara>
  </listitem>
  </varlistentry>
  
  <varlistentry>
  <term
><guimenu
>Avlusa</guimenu
></term>
  <listitem>
    <para
>Även om menyn fylls i så fort ett projekt är aktivt, är den förstås bara användbar om själva projektet tidigare har kompilerats med avlusningsinformation (det ställs i huvudsak in under <menuchoice
><guimenu
>Projekt</guimenu
> <guimenuitem
>Projektinställningar...</guimenuitem
></menuchoice
>). I detta fall finns följande alternativ tillgängliga:</para>
    <formalpara
><title
>Vanliga avlusningsåtgärder</title>
    <para
>Den första delen i menyn <guimenu
>Avlusa</guimenu
> tillhandahåller ett grafiskt gränssnitt till GDB, &GNU;:s symboliska avlusare. Den gör det möjligt att starta och stoppa programmet i avlusaren och stega igenom det på olika sätt.</para>
    </formalpara>
    <formalpara
><title
>Brytpunkter</title>
    <para
>&kdevelop; tillhandahåller flera möjligheter att ange brytpunkter i programmets källkod. Ett är genom användning av menyalternativet <guimenuitem
>Växla brytpunkt</guimenuitem
>.</para>
    </formalpara>
    <formalpara
><title
>Avancerad avlusning</title>
    <para
>Andra alternativ i menyn <guimenu
>Avlusa</guimenu
> tillåter mer avancerad analys av programmet. Använd <keycombo
>&Shift; <keycap
>F1</keycap
></keycombo
> för att få mer information om deras syfte.</para>
    </formalpara>
  </listitem>
  </varlistentry>
  
  <varlistentry>
  <term
><guimenu
>Fönster</guimenu
></term>
  <listitem>
    <para
>Det här är ganska standardmässigt. Du kan välja alla öppna dokumentfönster samt stänga ett eller flera dokumentfönster här. Du kan till och med välja en uppsättning dokumentfönster som ska stängas på en gång.</para>
  </listitem>
  </varlistentry>
  
  <varlistentry>
  <term
><guimenu
>Verktyg</guimenu
></term>
  <listitem>
    <para
>&kdevelop; är mycket anpassningsbart. Du kan välja din favoriteditor för dokument samt tillhandahålla externa och insticksverktyg för att utöka den grundläggande integrerade utvecklingsmiljön. Menyn <guimenu
>Verktyg</guimenu
> avspeglar det mesta av inställningarna.</para>
    <formalpara
><title
>Avancerad redigering</title>
    <para
>Den övre delen av menyalternativ i <guimenu
>Verktyg</guimenu
> tillhandahålls av editorinsticksprogrammet som används. Du kan välja din favoriteditor via <menuchoice
><guimenu
>Inställningar</guimenu
> <guimenuitem
>Anpassa KDevelop...</guimenuitem
> <guilabel
>Editor</guilabel
></menuchoice
>. Så fort en redigerbar dokumentfil väljes, tillhandahåller den övre delen av menyn <guimenu
>Verktyg</guimenu
> avancerade redigeringskommandon, specifika för editorn som används.</para>
    </formalpara>
    <formalpara
><title
>Hantering av webbsidor</title>
    <para
>Om det aktiva dokumentfönstret innehåller en HTML-sida (som t.ex. visas från <guilabel
>Dokumentation</guilabel
>), visar <guimenu
>Verktyg</guimenu
> ytterligare menyalternativ som tillhandahåller olika sätt att hantera webbsidor.</para>
    </formalpara>
    <formalpara
><title
>Övriga verktyg</title>
    <para
>Oftast finns det en mängd andra alternativ enligt de verktyg som för närvarande är tillgängliga. Använd <keycombo
>&Shift;<keycap
>F1</keycap
></keycombo
> för att få mer information om deras ändamål.</para>
    </formalpara>
  </listitem>
  </varlistentry>
  
  <varlistentry>
  <term
><guimenu
>Inställningar</guimenu
></term>
  <listitem>
    <para
>Den här menyn låter dig visa och dölja menyraden, verktygsrader och statusraden. Dessutom kan du anpassa genvägar, verktygsrader, underrättelser, editorn och Kdevelops allmänna beteende.</para>
  </listitem>
  </varlistentry>
  
  <varlistentry>
  <term
><guimenu
>Hjälp</guimenu
></term>
  <listitem>
    <para
>Här kan du visa KDevelops handbok, läsa Qt-dokumentation, visa manualsidor (det traditionella Unix manualformatet) och infosidor (GNU manualformatet), rapportera fel och få viss information om den nuvarande versionen av KDevelop och dess upphovsmän.</para>
  </listitem>
  </varlistentry>
</variablelist>

</sect2
> <!--gettingstarted-overview-menu-->

</sect1
> <!-- gettingstarted-overview -->

<!--
This is covered elsewhere, so unless someone convinces me that 
it is useful to have it here as well, I will eventually delete it. Volker Paul.

<sect1 id="gettingstarted-configure">
<title
>A Bit of Configuration</title>

<para
>(- to be written -)</para>

</sect1
> 

 -->

<sect1 id="gettingstarted-new">
<title
>Hur man påbörjar ett nytt projekt: Programguiden</title>

<para
>Det här är till för att visa dig hur enkelt det är att få KDevelop att skapa ett körbart program åt dig.</para>

<para
><link linkend="applicationwizard"
>Programguiden</link
> kan snabbt skapa ett projekt åt dig från en lista med fördefinierade projektmallar. Allt du behöver göra är att välja projekttypen du vill ha, hur det ska namnges, och var det ska placeras. </para>

<para
>Välj Projekt -> Nytt projekt. Fönstret Skapa nytt projekt visas. Låt oss anta att du vill skapa ett vanligt KDE-projekt. Välj alltså typen C++ -> KDE -> Enkelt KDE-program. Skriv in namnet, t.ex. hejsan. Den förvalda platsen är /home/hemkatalog/hejsan. När du är klar med inställningarna i fönstret, klicka på Nästa. I nästa fönster kan du ställa in några alternativ, som är förinställda med användbara förvalda värden. Klicka på Nästa. Då visas mallar för deklarationsfiler och källkodsfiler. Återigen kan du lämna dem med förvald text, och klicka på Slutför. Du ser meddelandet om att ditt program har skapats. </para>

<para
>För att köra programmet, välj Bygg -> Kör program. Du får ett meddelande om att automake och besläktade program först måste köras. Klicka på Ok. Programmet byggs och körs, och ett fönster från det nya programmet dyker upp med meddelandet "Hello World". Du kan nu redigera ditt program och lägga till mer användbara funktioner. </para>

</sect1
> <!-- gettingstarted-new -->

<!-- 
Again, this will be deleted, if nobody complains.

<sect1 id="gettingstarted-edit">
<title
>Working With Documents</title>

<para
>(- to be written -)</para>

<sect2 id="gettingstarted-edit-codecompletion">
<title
>How to Automate Some Typing Tasks</title>

<para
>(- to be written -)</para>

</sect2
> 

</sect1
> 


<sect1 id="gettingstarted-compile">
<title
>How to Compile a Project</title>

<para
>(- to be written -)</para>

<sect2 id="gettingstarted-compile-messages">
<title
>What the Messages Tell</title>

<para
>(- to be written -)</para>

</sect2
> 

</sect1
> 


<sect1 id="gettingstarted-extend">
<title
>How to Extend a Project &mdash; the &automanag;</title>

<para
>(- to be written -)</para>

<sect2 id="gettingstarted-extend-automake">
<title
>A Short Look at the Automake Machinery</title>

<para
>(- to be written -)</para>

</sect2
> 

<sect2 id="gettingstarted-extend-pics">
<title
>How to Place Icons in a Separate Directory</title>

<para
>(- to be written -)</para>

</sect2
> 

<sect2 id="gettingstarted-extend-class">
<title
>How to Add New Classes</title>

<para
>(- to be written -)</para>

<caution
><para>
Be careful when you select your class file names. It is extremely difficult to change them later.
</para
></caution>

</sect2
> 

<sect2 id="gettingstarted-extend-subproject">
<title
>What is in a Subproject?</title>

<para
>(- to be written -)</para>

<sect3 id="gettingstarted-extend-subproject-active">
<title
>Concentrate on Your Work &mdash; the Active Target</title>

<para
>(- to be written -)</para>

</sect3
> 

</sect2
> 

<sect2 id="gettingstarted-extend-restructure">
<title
>Some Steps to Restructure a Project</title>

<para
>(- to be written -)</para>

</sect2
> 


</sect1
> 



<sect1 id="gettingstarted-debug">
<title
>How to Debug</title>

<para
>(- to be written -)</para>

</sect1>


<sect1 id="gettingstarted-doc">
<title
>A Note on Documentation</title>

<para
>(- to be written -)</para>

</sect1>
-->
</chapter>
