<sect1 id="windows-how-to-work">
<sect1info>
<authorgroup>
<author>&Philip.Rodrigues; </author>
</authorgroup>
</sect1info>


<title>Hvordan man arbejder med vinduer</title>

<sect2 id="basic-window-management">
<title>Grundlæggende vindueshåndtering</title>
<indexterm><primary>Vindueshåndtering</primary></indexterm>

<para>Alle programmer som kører under &kde; har deres egne vinduer, og visse programmer kan bruge mere end et vindue. Du kan håndtere vinduerne på mange måder for at få desktoppen til at fungere for dig. Her er et normalt vindue: <screenshot> <mediaobject>
<imageobject>
<imagedata fileref="a-window.png" format="PNG"/>
</imageobject>
<textobject><phrase>Et normalt vindue</phrase>
</textobject>
</mediaobject>
</screenshot>
</para>

<sect3 id="switching-between-windows">
<title>Skifte mellem vinduer</title> 
<indexterm><primary>Fokus (vindue)</primary></indexterm>

<para>Hvis du vil bruge et vindue skal det være aktivt. Et vindue bliver automatisk aktivt når du åbner det, så program du åbnede det med med det samme er klart til at bruge. Kun et vindue kan være aktivt af gangen. Det aktive vindue er det du kan skrive i, og det kan skelnes fra de øvrige eftersom det har en navnelist med en anden farve. (Med &kde;'s standardtema, har det aktive vindue en <replaceable>lyseblå</replaceable> navnelist, og inaktive vinduer har <replaceable>grå</replaceable> titellinjer.)</para>

<para>
<indexterm><primary>Hæv vindue</primary></indexterm> Når du vil arbejde i et andet vindue, skal du gøre det aktivt. Der er to måder at gøre det: <itemizedlist>

<listitem>
<para>Klik med venstre museknap på vinduet som du vil aktivere. Vinduet bliver aktivt og hæves over andre vindue hvis det overlapper dem.</para>
</listitem>

<listitem>
<para><indexterm><primary><keycombo
action="simul">&Alt;&Tab;</keycombo></primary></indexterm> Hold &Alt; nede og tryk på tabulatortasten (slip ikke &Alt;-tasten). En dialog vises med en liste over tilgængelige vinduer, hvor et er markeret. Du kan vælge et andet vindue ved at trykke på tabulatortasten igen for at gå igennem listen, mens du hele tiden holder &Alt; nede. Når du slipper &Alt;-tasten, bliver vinduet som var markeret aktivt.</para>
</listitem>
</itemizedlist>
</para>

</sect3>

<sect3 id="moving-windows">
<title>Flyt vinduer</title>
<indexterm><primary>Flyt vinduer</primary></indexterm>

<para>Den første måde at organisere vinduer på desktoppen er at flytte dem rundt. Du kan flytte vinduer så de overlapper andre vinduer, eller så du kan se hele vinduet. Der er tre måder at flytte et vindue: <itemizedlist>
<listitem>
<para>Klik med venstre museknap på vinduets navnelist og hold den nede. Flyt musemarkøren så flyttes vinduet med den. Slip museknappen, så stopper vinduet hvor du efterlod det.</para>
</listitem>

<!-- FIXME:  OK, so the screenie sucks, but it shows the idea --> 
<!-- In fact, maybe it's not even necessary: just mention the previous -->
<!-- screenshot (having callouts on it would be nice) -->

<listitem>
<para>Åbn vinduesmenuen med knappen længst til venstre i vinduets titellinje (som vist nedenfor), og vælg <guimenuitem>Flyt</guimenuitem>. Musemarkøren flyttes til midten af det nuværende vindue og ved at flytte musen rundt kan du flytte vinduet. Når du har flyttet vinduet til stedet du vil have det, klik med venstre museknap for at slippe det.</para>
<indexterm><primary>Vinduesmenu.</primary></indexterm>

<screenshot>
<screeninfo>Vinduesmenuen</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="titlebar-menu.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Vinduesmenuen</phrase>
</textobject>
</mediaobject>
</screenshot>
</listitem>

<listitem>
<para>Hold &Alt; nede og venstre museknap når musemarkøren er over vinduet som du vil flytte. Musemarkøren ændres til et kompas, og ved at flytte musen kan du flytte vinduet. Slip kun museknappen for at slippe vinduet. Denne metode er særlig nyttig r om vinduets titellinje er flyttet udenfor skærmen så du ikke kan bruge de andre metoder.</para>
</listitem>
</itemizedlist>
</para>

</sect3>

<sect3 id="resizing-windows">
<title>Ændr vinduesstørrelse</title>

<indexterm><primary>Ændr vinduesstørrelse</primary></indexterm>

<para>Du kan gøre vinduer større eller mindre, bredere eller højere på en af to måder. Brug den som du synes er bedst for dig: <itemizedlist>
<listitem>
<para>Flyt musemarkøren hen over vinduets kant (den er lyseblå på skærmaftrykket ovenfor). Pegeren ændres til en pil med to hoveder. Klik og træk, så følger vinduets kant musemarkøren, hvilket gør vinduet større eller mindre. Hvis du klikker på vinduets over- eller underkant, kan du justere højden for sig selv. Hvis du klikker på vinduets venstre- eller højrekant, kan du justere bredden. For at ændre begge samtidigt, flyt musen hen over et af vinduets hjørner. Når pegeren bliver til en diagonal pil med to hoveder, klik og træk.</para>
</listitem>
<listitem>
<para>Brug knappen længst til venstre i vinduets titellinje til at vise vinduesmenuen. Vælg indgangen <guimenuitem>Ændr størrelse</guimenuitem>, så bliver musemarkøren til en pil med to hoveder. Flyt omkring musemarkøren rundt for at ændre størrelse, og klik på venstre museknap når du er klar til at slippe vinduet.</para>
</listitem>
<listitem>
<para>Hvis du ikke kan se vinduekanten eller vinduemenuens knap, kan du bruge &Alt; og musens højreknap. Hold &Alt; nede og træl med højre museknap. Vinduets størrelse ændres. Du slipper blot højre museknap når du er klar. </para>
</listitem>
</itemizedlist>
</para>

<para>Hvis du kun vil gøre et vindue så stort som muligt, så det optager hele skærmen, bruges knappen <guibutton>Maksimér<indexterm><primary>Maksimér vindue</primary></indexterm></guibutton>, som er den anden knap fra højre i vinduets titellinje. At klikke med venstre museknap på knappen gør vinduet så stort som muligt i begge retninger, mens at klikke med midterknappen<indexterm><primary>Maksimér vindue</primary><secondary>Lodret</secondary></indexterm> eller med højreknappen<indexterm><primary>Maksimér vindue</primary><secondary>Vandret</secondary></indexterm> kun øger vinduets størrelse enten i den lodrette eller vandrette retning.</para>


</sect3>

<sect3 id="hiding-windows">
<title>Skjul vindue</title>
<indexterm><primary>Skjul vindue</primary></indexterm>

<!-- TODO: Screenshot of the minimize button -->
<para>
<indexterm><primary>Minimér</primary></indexterm> Når du har brug for at holde programmet åbent, men du ikke ønsker at det skal optage plads på desktoppen, kan du minimere det eller rulle det op. For at minimere et vindue, klikkes på knappen <guibutton>Minimér</guibutton>, som er den tredje knap fra højre i vinduets titellinje. Vinduet vises ikke længere, men programmet kører stadigvæk, og en indgang for det vises i panelets opgavelinje. For at vise vinduet igen, klikkes på indgangen i opgavelinjen. Du kan også bruge <keycombo action="simul">&Alt;<keycap>Tabulator</keycap></keycombo><indexterm><primary><keycombo action="simul">&Alt;<keycap>Tabulator</keycap></keycombo></primary></indexterm>: se <xref linkend="switching-between-windows"/>.</para>

<para>
<indexterm><primary>Skyg</primary></indexterm> At rulle vinduer op er meget ligesom at minimere dem, men denne gang vises kun vinduets titellinje. For at rulle et vindue op, dobbeltklikkes på titellinjen. For at få vinduet tilbage, dobbeltklikkes blot på titellinjen igen.</para>
</sect3>

<sect3 id="cascade-windows">
<title>Vinduer i kaskade</title>

<para>Sommetider har du måske en hel mængde vinduer åbne, og på alle mulige steder. Ved at lægge vinduer på linje, retter &kde; dem automatisk op som en følge fra øverste venstre hjørne på skærmen. For at bruge dette, klikkes med musens midterste knap på desktoppen, og derefter vælges <guimenuitem>Vinduer i kaskade</guimenuitem>.</para>

</sect3>

<sect3 id="unclutter-windows">
<title>Opryddede vinduer</title>

<para>Ved at vælge at ordne dine åbne vinduer, forsøger &kde; at bruge maksimalt tilgængeligt plads på desktoppen til at vise så meget som muligt af hvert vindue. Hvis du for eksempel vil have fire vinduer åbne og du vil at de skal ordnes så de placeres i hvert sit hjørne af desktoppen, uafhængig af hvor de oprindelig befandt sig. For at bruge dette, klikkes igen med musens midterste knap på desktoppen, og derefter vælges <guimenuitem>Ryd op i vinduer</guimenuitem>.</para>

</sect3>

<sect3 id="closing-windows">
<title>Luk vindue</title>

<indexterm><primary>Luk vindue</primary></indexterm>

<para>Når du er færdig med at bruge et program, vil du afslutte programmet og lukke dets vindue. Igen kan du vælge blandt nogle forskellige alternativer: <itemizedlist>
<listitem>
<para>Klik på knappen længst til højre i vinduets titellinje. Hvis du redigerer et dokument i programmet, bliver du spurgt om du vil <guibutton>Gemme</guibutton> ændringerne, <guibutton>Kassere</guibutton> dem eller <guibutton>Annullere</guibutton> kommandoen at afslutte programmet.</para>
</listitem>
<listitem>
<para>Brug punktet <menuchoice><guimenu>Fil</guimenu> <guimenuitem>Afslut</guimenuitem></menuchoice> i menulinjen. Du får så samme valg om at <guibutton>Gemme</guibutton>, <guibutton>Kassere</guibutton> eller <guibutton>Annullere</guibutton>.</para>
</listitem>

<listitem>
<para><mousebutton>Højre</mousebutton>klik på respektive vinduer i &kicker;, &kde;'s panel, og vælg <guimenuitem>Luk</guimenuitem>. Du bliver bedt om at gemme eventuelle dokumenter som var ved at blive redigeret.</para>
</listitem>

<listitem>
<para>Tryk på <keycombo action="simul">&Alt;<keycap>F4</keycap></keycombo><indexterm><primary><keycombo action="simul">&Alt;<keycap>F4</keycap></keycombo></primary></indexterm>. Igen vises bekræftelsesdialogen hvis du redigerede et dokument.</para>
</listitem>
</itemizedlist>
</para>

</sect3>

<!-- Let's try organising this a different way
<para>The bar along the top is called the titlebar, and contains most
of the things you'll need to manipulate the window. Let's take a
closer look:
<screenshot>
<mediaobject>
<imageobject>
<imagedata fileref="titlebar.png" format="png"/>
</imageobject>
<textobject><phrase>A window titlebar</phrase>
</textobject>
</mediaobject>
</screenshot>
<note><para>This screenshot shows the titlebar which appears in the
default &kde; configuration. The exact appearance on your system may
be slightly different, but the functions are similar.</para>
</note>
-->

<!-- TODO:Note &MMB; mouse button/&RMB mouse button on maximize for
vertical/horizontal maximization. Or is this advanced? -->

</sect2>

<sect2 id="advanced-window-management">
<title>Avanceret vinduehåndtering</title>

<para>kstart</para>
<sect3 id="kstart">
<sect3info>
<author>&Richard.J.Moore; &Richard.J.Moore.mail; </author>
</sect3info>
<title>&kstart;</title> 

<para>Den nemmeste måde at få adgang til avancerede vinduehåndteringsfunktioner i &kde; er at bruge et ganske ukendt værktøj som hedder &kstart;, som indgår i &kde; 2.1 og senere. &kstart;> lader dig styre måden som et program samarbejder med vinduehåndteringen. Kommandoen bruges oftest til at angive en speciel opførsel for ofte brugte programmer, men det kan også være nyttigt til at integrere programmer som ikke indgår i &kde; med desktoppen.</para>

<para>At bruge &kstart; er enkelt: Du skriver helt blot <userinput><command>kstart</command></userinput> og nogle flag før en  kommando. For at begynde, lad os tage et kig på hvordan vi kan bruge &kstart; til at indstille opførslen af et &kcalc;-vindue. Kommandoen vi bruger er følgende: <screen><prompt>%</prompt> <userinput><command>kstart</command> <option>--ontop</option> <option>--alldesktops</option> <option>kcalc</option></userinput></screen>
</para>

<para>Med lidt held bør effekten som kommandoen har være ganske klar: Lommeregnerens vindue forbliver ovenpå alle andre og ses på alle virtuelle desktoppe. En funktion som er mindre åbenbar er at kommandoen virker med alle miljøer som understøtter NET, ikke kun med &kde;.</para>

<para>Man kan sende argumenter til programmer som startes med &kstart;, for eksempel: <screen><prompt>%</prompt> <userinput><command>kstart</command>
<option>--skiptaskbar</option> <option>--desktop</option>
1 xmessage 'Hej, allesammen!'</userinput></screen>

</para>

<para>Kommandoen viser <computeroutput>Hej, allesammen!</computeroutput> med <application>xmessage</application> og sørger for at vinduet vises på den første virtuelle desktop og udelades fra opgavelinjen. Det faktum at programmet er skrevet med Xt-værktøjskassen i stedet for at være et rigtigt &kde;-program forårsager ingen problemer for &kstart;. Forhåbentlig illustrerer dette hvordan &kstart; kan bruges til at integrere fremmede programmer i &kde;'s desktop.</para>
</sect3>

<sect3 id="special-window-settings">
<title>Andre specielle vinduesindstillinger</title>
<para>Selv om du kan bruge &kstart; til at tildele særlige vinduesindstillinger, lader &kde; dig også ændre dem, og lignende indstillinger, fra selve programvinduet. Klik blot på knappen længst til venstre i vinduets navnelist (eller tryk på <keycombo action="simul">&Alt; <keycap>F3</keycap></keycombo> når vinduet har fokus), og gå til <menuchoice><guisubmenu>Avanceret</guisubmenu> <guimenuitem>Særlige vinduesregler...</guimenuitem></menuchoice>. Som du kan se, kan du ændre diverse ting, fra dets geometri ved start, til om det skal have en kant eller ej.</para>
</sect3>

<sect3 id="system-tray">
<sect3info>
<author>&Richard.J.Moore; &Richard.J.Moore.mail; </author>
</sect3info>

<title>Statusfeltet</title>

<para>Nu da vi ved hvordan et vindues dekoration kan indstilles, lad os tage et kig på en anden af desktoppens aspekter: statusfeltet. Statusfeltet er et område hvor et program kan vise et lille vindue. Det bruges oftest til at vis statusinformation eller give hurtig adgang til kommandoer. Et vindue som har en ikon i statusfeltet forsvinder oftest fra opgavelinjen når det minimeres, med ikonen i statusfeltet som erstatning. Normalt udvikles ikoner i statusfeltet specifikt som en del af et program, men som med vinduesdekorationer, sørger &kde; for et værktøj til at ændre det: <application>ksystraycmd</application>.</para>

<para>Til en begyndelse tager vi det almindelige programmet &kcalc; og gør det om til et program i statusfeltet. Det afstedkommes med en eneste simpel kommando: <screen><prompt>%</prompt> <userinput><command>ksystraycmd</command> <option>--title</option> 'kcalc' kcalc</userinput></screen>

</para>

<para>Ikonen som vises i statusfeltet er den som angives i vinduesvink og den opdateres hvis ikonen ændres. Vinduets navn vises som et værktøjsvink hvis du holder musen over ikonen. <application>ksystraycmd</application> følger den almindelige opførsel i &kde;, så vinduet kan vises eller skjules ved at klikke på ikonen i statusfeltet, og en almindelig sammenhængsafhængig menu er tilgængelig. </para>

<screenshot> <mediaobject> <imageobject><imagedata
fileref="kcalc-systray.png"></imagedata></imageobject>
</mediaobject></screenshot>
</sect3>

<sect3 id="more-complex-uses-of-ksystraycmd">
<sect3info>
<author>&Richard.J.Moore; &Richard.J.Moore.mail; </author>
</sect3info>

<title>Mere kompliceret brug af <application>ksystraycmd</application></title>

<para>For at illustrere yderligere funktioner i <application>ksystraycmd</application>, bruger vi et mere kompliceret eksempel, et terminalvindue som følger filen <filename>.xsession-errors</filename> (det er logfilen som opbevarer det der sker på desktoppen). Til en begyndelse tager vi blot et kig på hvordan vi kan vise den: <screen><prompt>%</prompt> <userinput><command>konsole</command> <option>--icon</option>
log <option>--caption</option> 'X Log' \ 
<option>--nomenubar</option> <option>--notabbar</option>
<option>--noframe</option> \ 
<option>-e</option> tail -f ~/.xsession-errors</userinput></screen>
</para>

 <para>Argumenterne <option>--caption</option> og <option>--icon</option> indgår som standard i &kde;-programmer. Du kan få en fuldstændig liste over disse globale flag ved at køre et program med flagene <option>--help-kde</option> og <option>--help-qt</option>. Her giver vi vort terminalvindue navnet 'X-log' og ikonen <quote>log</quote>. Du kan bruge flagene med et hvilket som helst &kde;-program, og som nævnt ovenfor, <application>ksystraycmd</application> tager hensyn til dem når ikonen i statusfeltet laves. Flaget <option>-e</option> er specifik for terminalen og beder den om at køre kommandoen <command>tail</command>. Trods dets kompleksitet, kan vi nemt flytte vinduet til statusfeltet med <application>ksystraycmd</application>: <screen><prompt>%</prompt> <userinput><command>ksystraycmd</command>
<option>--hidden</option> <option>--title</option> 'X Log' \
konsole --icon log --caption 'XLog' \ 
--nomenubar --notabbar --noframe \ 
-e tail -f .xsession-errors</userinput></screen>
</para>

 <para>Foruden at være den mest komplekse kommando vi har brugt, demonstrerer eksemplet flaget <option>--hidden</option> som starter kommandoen med kun ikonen i statusfeltet synlig. Eksemplet opnår vort mål hurtigt at kunne få adgang til logfilen, men vi kan gøre det hele lidt mere effektivt hvis vi kun kører terminalprocessen når den er synlig. Kommandoen vi bruger er: <screen><prompt>%</prompt> <userinput><command>ksystraycmd</command> <option>--startonshow</option> \
 --<option>icon</option> log <option>--tooltip</option> 'X Log' \ 
konsole --icon log --caption 'X Log' \
--nomenubar --notabbar --noframe \
-e tail -f ~/.xsession-errors</userinput></screen>
</para>

<para>Tilføjelsen af flaget <option>--startonshow</option> beder <application>ksystraycmd</application> om kun at starte med ikonen i statusfeltet synlig (ligesom flaget <option>--hidden</option>) og at vente til brugeren aktiverer ikonen i statusfeltet inden kommandoen køres. Vi anvender også flaget <option>--quitonhide</option> som beder <application>ksystraycmd</application> om at afslutte kommandoen når dets vindue skjules. Ved at bruge begge flag sikrer vi os at vor terminalikon i statusfeltet ikke sløser ressourcer bort når vi ikke bruger den. At oprette og afslutte vinduet som vi gør her, forhindrer at den almindelige håndtering af ikoner og navne fungerer i <application>ksystraycmd</application>, så nu behøver vi også eksplicit at angive den oprindelige ikon og værktøjsvinket.</para>
</sect3>

<sect3 id="improving-reliability">
<sect3info>
<author>&Richard.J.Moore; &Richard.J.Moore.mail; </author>
</sect3info>

<title>Forbedre tilforladeligheden</title>

<para>I alle foregående eksempler har vi stolet på at &kstart; og <application>ksystraycmd</application> regner ud hvilket vindue vi vil påvirke, og hvis vi ikke siger noget andet, antager de at det første vindue som dukker op er det vi vil bruge. Denne politik er oftest o.k., eftersom vi starter programmet samtidigt, men det kan mislykkes slemt når mange vinduer dukker op (som når du logger på). For at gøre kommandoerne robustere, kan vi bruge flaget <option>--window</option>. Det angiver vinduets navn. Følgende eksempel bruger flaget <option>--window</option> til at sikre os om at et bestemt terminalvindue påvirkes: <screen><prompt>%</prompt> <userinput><command>kstart</command> <option>--iconify</option> <option>--window</option> 'kstart_me' konsole
--caption 'kstart_me' -e tail -f
~/.xsession-errors</userinput></screen>

</para>

<para>Her bruger vi den prøvede og testede teknik at angive et navn for både &kstart; og programmet. Det er i generelt den bedste måde at bruge &kstart; og <application>ksystraycmd</application>. Flaget <option>--window</option> understøttes både af <application>kstart</application> og <option>ksystraycmd</option>, og kan være et regulært udtryk f.eks.(f.eks. <quote>window[0-9]</quote>) samt et bestemt navn. (Et regulært udtryk er et kraftfuldt værktøj for mønstermatchning som du vil se bruges på mange steder i &kde;.) </para>

</sect3>

</sect2>

<sect2 id="using-multiple-desktops">
<title>Brug af flere desktoppe</title>

<indexterm><primary>Virtuelle desktoppe</primary></indexterm>
<indexterm><primary>Flere desktoppe</primary></indexterm>

<para>Sommetider er en skærm helt enkelt ikke tilstrækkeligt med plads. Hvis du bruger mange programmer samtidigt, og mærker at du drukner i de forskellige vinduer, tilbydes virtuelle desktoppe oftest løsningen. Normalt har &kde; fire virtuelle desktoppe, hvor hver er som en separat skærm: du kan åbne vinduer, flytte vinduer rundt og angive baggrunde og ikoner på hver af desktoppene. Hvis du kender til begrebet med virtuelle terminaler, kommer du ikke til at have besvær med &kde;'s virtuelle desktop.</para>

<sect3 id="switching-virtual-desktops">
<title>Skift virtuel desktop</title>
<para>For at skifte til en anden virtuel desktop, kan du bruge <keycombo action="simul">&Ctrl; <keysym>Tabulator</keysym></keycombo> på samme måde som du ville bruge <keycombo action="simul">&Alt;<keysym>Tabulator</keysym></keycombo> til at skifte mellem vinduer (se <xref linkend="switching-between-windows"/>): Hold &Ctrl; nede og tryk derefter på tabulatortasten. En lille dialog dukker op som viser de virtuelle desktoppe, hvor et er markeret. Hvis du slipper &Ctrl;, skifter &kde; til desktoppen som er markeret. For at vælge en anden virtuel desktop, tryk gentagne gange på tabulatortasten mens &Ctrl; holdes nede. Markeringen flyttes gennem de tilgængelige desktoppe. Når desktoppen du vil skifte til er markeret, slippes &Ctrl;.</para>

<!-- TODO: Write about the desktop pager thing -->

</sect3>

<sect3 id="windows-and-virtual-desktops">
<title>Vinduer og virtuelle desktoppe</title>
<para>Du kan flytte vinduer rundt mellem virtuelle desktoppe med punktet <guisubmenu>Til desktop</guisubmenu> i vinduesmenuen: vælg blot desktoppen hvor du vil flytte vinduet hen. Du kan få vinduet til at vises på alle desktoppe med punktet <guimenuitem>Alle desktoppe</guimenuitem><indexterm><primary>Klæbrige vinduer</primary></indexterm>.</para>

<!-- Add links to "further reading" here 
<itemizedlist>
<title>Related Information</title>
<listitem><para></para>
</listitem>
</itemizedlist>

-->
</sect3>


</sect2>

</sect1>
