<?xml version="1.0" ?>
<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
  <!ENTITY kcmlirc "<application
>KDE LIRC Control Center Module</application
>">
  <!ENTITY kdelirc "<application
>KDE LIRC</application
>">
  
  <!ENTITY % German "INCLUDE"
> <!-- change language only here -->
  <!ENTITY % addindex "IGNORE">
]>

<book lang="&language;">
<bookinfo>

<title
>Einstellungen für Infrarotfernbedienungen unter &kde;</title>

<authorgroup>
<author
><firstname
>Frank</firstname
> <surname
>Scheffold</surname
> <affiliation
> <address
><email
>fscheffold@googlemail.com</email
></address>
</affiliation>
</author>
<author
><firstname
>Michael</firstname
> <surname
>Zanetti</surname
> <affiliation
> <address
><email
>michael_zanetti@gmx.net</email
></address>
</affiliation>
</author>
<author
><firstname
>Gav</firstname
> <surname
>Wood</surname
> <affiliation
> <address
><email
>gav@kde.org</email
></address>
</affiliation>
</author>
<othercredit role="translator"
><firstname
>Gregor</firstname
><surname
>Zumstein</surname
><affiliation
><address
><email
>gz@orchester-bremgarten.ch</email
></address
></affiliation
><contrib
>Deutsche Übersetzung</contrib
></othercredit
> 
</authorgroup>

<date
>2010-01-06</date>
<releaseinfo
>2.0</releaseinfo>

<copyright>
<year
>2004</year>
<holder
>Gav Wood</holder>
</copyright>
<copyright>
<year
>2010</year>
<holder
>Frank Scheffold</holder>
<holder
>Michael Zanetti</holder>
</copyright>
<!--
<legalnotice
>&FDLNotice;</legalnotice>
-->


<abstract
><para
>&kdelirc; Einstellungen: Die Infrastruktur für die &kde;-Infrarot-Fernbedienungsfunktionalität.</para
></abstract>

<keywordset>
<keyword
>KDE</keyword>
<keyword
>irkick</keyword>
<keyword
>kdelirc</keyword>
<keyword
>kcmlirc</keyword>
<keyword
>lirc</keyword>
</keywordset>

</bookinfo>

<chapter id="introduction">
  <title
>Einführung</title>
  <sect1 id="requirements">
    <title
>Voraussetzungen</title>
    <para
>Um &kdelirc; benutzen zu können, muss LIRC auf Ihrem Rechner istalliert sein. Ist LIRC eingerichtet, wird das Symbol &kdelirc; im Systemabschnitt der Kontrollleiste rot markiert <inlinemediaobject
><imageobject
><imagedata fileref="irkick.png" format="PNG"/></imageobject
></inlinemediaobject
>. IFalls LIRC nicht läuft, wird das Symbol grau mit einem roten Kreuz angezeigt <inlinemediaobject
><imageobject
><imagedata fileref="irkickoff.png" format="PNG"/></imageobject
></inlinemediaobject
>. </para>

    <para
>Weitere Informationen zu LIRC und der Einrichtung finden Sie auf den Webseiten des Projekts <ulink url="http://www.lirc.org/"
>www.lirc.org</ulink
>. </para>

    <para
><emphasis role="strong"
>Hinweis:</emphasis
> Bei der Einrichtung von LIRC ist es erforderlich, Namensräume für die Knöpfe zu benutzen. </para>
  </sect1>

</chapter>

<chapter id="usage">
  <title
>Benutzung</title>

  <para
>Es gibt drei Karteikarten mit mehreren Bereichen für die Einrichtung und zusätzlichen Informationen. Auf der ersten Karteikarte <guibutton
>Steuerungsfunktionen</guibutton
> können Modi und Aktionen für alle verfügbaren Fernbedienungen eingerichtet werden. Die Karteikarte <guibutton
>Profilübersicht</guibutton
> zeigt Details der verfügbaren Profile an. Auf der Karte <guibutton
>Verfügbare Fernbedienungen</guibutton
> sehen Sie zusätzliche Informationen zu den Fernbedienungen. Wählen Sie hier eine der Fernbedienungen aus, wird eine Übersicht der Bedienungsknöpfe angezeigt. </para>
  <sect1 id="controllerFunctions">
    <title
>Steuerungsfunktionen</title>
    <sect2 id="modes">
      <title
>Fernbedienungen und Modi</title>

      <para
>Jede Fernbedienung hat eine Anzahl unterschiedlicher Modi. Unterschiedliche Modi erlauben es, einer Taste je nach Anwendungsbereich unterschiedliche Funktionen zuzuweisen. Auf diese Weise können Fernbedienungen viele verschiedene Geräte mit nur einigen wenigen Knöpfen steuern. Ein Beispiel hierfür sind die Vielzweck-Fernbedienungen für TV/Video/DVD und weiteres. Diese haben wenige Tasten, welche je nach zu bedienendem Gerät unterschiedliche Funktionen besitzen. </para>

      <para
>Direkt für die Fernbedienung definierte Aktionen sind immer verfügbar, unabhängig vom aktuellen Modus der Fernbedienung. Aktionen, die für einen Modus definiert wurden, werden auch nur dann ausgeführt, wenn sich die Fernbedienung in diesem Modus befindet. Für eine Fernbedienung kann gleichzeitig nur ein Modus oder auch kein Modus aktiviert sein. Ist kein Modus aktiviert, werden nur die direkt definierten und immer verfügbaren Aktionen beim Drücken eines Knopfes ausgeführt. Außerdem kann ein Standardmodus angegeben werden, der der Fernbedienung automatisch beim Start zugewiesen wird. </para>

      <para
>Die Liste auf der linken Seite enthält alle angeschlossenen und entdeckten Fernbedienungen. Modi können hinzugefügt und wieder gelöscht werden, indem die gewünschte Fernbedienung ausgewählt und anschließend einer der Knöpfe unterhalb der Liste gedrückt wird. Mit dem Knopf „Bearbeiten“ können vorhandene Modi geäandert werden. </para>

    </sect2>

    <sect2 id="addactions">
      <title
>Zuweisung von Aktionen an Knöpfe</title>
      <para
>&kdelirc; unterscheidet zwei verschiedene Arten von Aktionen, Moduswechsel und ausführbare Aktionen. Mit Moduswechseln kann die aktuell aktivierte Fernbedienung in einen anderen Modus versetzt werden, mit ausführbaren Aktionen werden Befehle über die &DBus;-Schnittstelle ausgeführt. Wenn eine neue ausführbare Aktionen definiert wird, gibt es zwei Optionen. Es kann entweder eine Vorlage benutzt oder es müssen manuell alle möglichen Optionen eingestellt werden. Vorlagen für Aktionen werden Profile genannt. Die Benutzung von Profilen ist einfach und schnell, erlaubt aber nicht den Zugriff auf alle verfügbaren Aktionen. Erweiterte Aktionen können nur eingerichtet werden, indem die Funktionen und deren Parameter manuell eingetragen werden. </para>

      <para
>Benutzen Sie den Knopf <guibutton
>Hinzufügen ...</guibutton
> rechts unten, um eine neue Aktion zu definieren. Damit wird ein Assistent gestartet, in dem zuerst der Typ der neuen Aktion ausgewählt werden muss. Die erste Option erstellt eine Aktion auf der Grundlage eines Profils, mit der zweiten Option kann die gesamte Aktion manuell definiert werden. Beachten Sie, dass das Programm ausgeführt werden muss, wenn Sie dafür eine neue Aktion festlegen möchten oder es wird nicht in der Liste der verfügbaren Programme angezeigt. Mit der dritten Option kann eine Aktion für einen Moduswechsel erstellt werden. Wählen Sie die gewünschte Art der Aktion und folgen Sie den weiteren Anweisungen im Assistenten.  </para>

      <para
>Aktionen können auch automatisch durch Drücken des Knopfes <guibutton
>Automatisch ausfüllen ...</guibutton
> erzeugt werden. Es öffnet sich ein Dialog, in dem alle verfügbaren Profile mit einer Markierung angezeigt werden. An der Farbe dieser Markierung erkennen Sie, ob Ihre Fernsteuerung vollständig (Grün). teilweise (Gelb) oder gar nicht (Rot) unterstützt wird. </para>
      <para
><emphasis role="strong"
>Hinweis:</emphasis
> Wenn Ihre Fernbedienung mit keinem Profil kompatibel ist, haben Sie lirc vermutlich nicht für die Verwendung von Namensräumen eingerichtet. </para>

    </sect2>

  </sect1>

  <sect1 id="profiles">
    <title
>Profilübersicht</title>

    <para
>Die Karteikarte <guibutton
>Profilübersicht</guibutton
> zeigt alle vorhandenen Profile an. Wählen Sie ein Profil, um ausführliche Informationen wie den Namen des Autors und alle definierten Aktionen zu sehen. Jeder Eintrag einer Aktion enthält Informationen über zusätzliche Einstellungen, einen Kommentar und die Kennung, die beim automatischen Ausfüllen benutzt wird. </para>

    <para
>Möchten Sie Anwendungsprofile zu diesem Programm beisteuern, lesen Sie bitte das Kapitel <link linkend="advancedInformation"
>zusätzliche  Informationen</link
>. </para>

  </sect1>

  <sect1 id="availableRemotes">
    <title
>Verfügbare Fernbedienungen</title>
    <para
>Diese Karteikarte gibt Ihnen ausführliche Informationen zu Ihren Fernbedienungen. Hier können Sie überprüfen, ob Ihre Fernbedienungen vom System erkannt wurden. </para>
  </sect1>

</chapter>

<chapter id="advancedInformation">
  <title
>Zusätzliche Informationen</title>
  <para
>In diesem Kapitel werden zusätzliche Information vorgestellt, die für einen erfahrenen Benutzer oder Entwickler von Interesse sind. In diesem Kapitel finden Sie eine Anweisung, um benutzerdefinierte Profile zu erstellen. </para>

  <sect1 id="profileCreation">
    <title
>Erstellung eines Profils</title>

    <sect2>
      <title
>Einführung</title>
      <para
>Alle Programme mit einer &DBus;-Schnittstelle können durch &kdelirc; ohne zusätzliche Aktionen benutzt werden. Um aber eine grafische  Benutzerschnittstelle für die Einrichtung bereitzustellen und das Programm im Dialog <guilabel
>Automatisch ausfüllen</guilabel
> anzuzeigen, sollten Sie ein Profil dafür erstellen. </para>
      <para
>Ein Profil gibt &kdelirc; und dem Benutzer die Funktion der verschiedenen &DBus;-Aufrufe an, Im Grunde ist das eine Art von Dokumentation der &DBus;-Aufrufe. Es müssen nicht alle &DBus;-Aufrufe aufgeführt sein, nur die Wichtigsten für den Endbenutzer. Dazu gehören eher die Aufrufe um die <quote
>Schnittstelle einzurichten</quote
> als die Aufrufe zu Abfrage von <quote
>Informationen</quote
>. </para>
    </sect2>

    <sect2>
      <title
>Erstellung</title>
      <procedure>

        <step>
          <title
>&DBus;</title>
          <para
>Überprüfen Sie, ob das Programm für das Sie ein Profile erstellen möchten, eine &DBus;-Schnittstelle hat. Dazu versuchen Sie, in &kdelirc; manuell eine Aktion für dieses Programm hinzuzufügen. Auch mit dem Programm <quote
>qdbusviewer</quote
>, das zusammen mit Qt4 installiert wird, können Sie Informationen über die &DBus;-Schnittstelle eines Programms finden. </para>
        </step>

        <step>
          <title
>Ein Profil erstellen</title>
          <para
>Wenn Sie die passenden &DBus;-Funktionen gefunden haben, müssen diese in der Datei <filename
>appname.profile.xml</filename
> beschrieben werden. Im folgenden Abschnitt finden Sie eine kurze Einführung zur Erstellung dieser Dateien: </para>

          <substeps>
            <step>
              <para
>Erstellen Sie zuerst eine neue Datei mit dem folgenden Inhalt. Ersetzen Sie <quote
>myapp</quote
>  mit dem Namen des ausführbaren Programms und <quote
>My Application</quote
> mit einer beschreibendem Name für die Anwendung. </para>
              <programlisting
>&lt;?xml version="1.0" ?&gt;
&lt;!DOCTYPE profile SYSTEM "profile.dtd"&gt;

  &lt;profile id="myapp" servicename="My Application"&gt;
  &lt;/profile&gt;
              </programlisting>
            </step>

            <step>
              <para
>In der <quote
>profile</quote
>-Markierung geben Sie den Namen und Informationen über den Autor an. Mit der Einstellung <quote
>instances</quote
> legen Sie fest, ob ein Programm mehrfach ausgeführt werden kann. Setzen Sie dafür den Wert für <quote
>unique</quote
> auf <quote
>0</quote
>, die Voreinstellung ist <quote
>1</quote
> (das Programm kann nur einmal ausgeführt werden). Die Eigenschaft <quote
>ifmulti</quote
> bestimmt, wie &kdelirc; mehrere Instanzen des Programms behandelt, wenn ein Knopf gedrückt wird. Es erfolgt entweder keine Aktion für mehr als eine laufende Instanz eines Programms (<quote
>dontsend</quote
>), der Aufruf wird an eine willkürlich ausgewählte Instanz (<quote
>sendtoone</quote
>) oder an alle laufenden Programme (<quote
>sendtoall</quote
>) geschickt. Die Voreinstellung ist <quote
>dontsend</quote
>, in vielen Fällen kann die Einstellung <quote
>sendtoone</quote
> sinnvoller sein. </para>

              <programlisting
>&lt;?xml version="1.0" ?&gt;
&lt;!DOCTYPE profile SYSTEM "profile.dtd"&gt;

  &lt;profile id="myapp" servicename="My Application"&gt;
    &lt;name&gt;My Application&lt;/name&gt;
    &lt;author&gt;Me&lt;/author&gt;
    &lt;instances unique="0" ifmulti="sendtoone"/&gt;
  &lt;/profile&gt;
              </programlisting>
            </step>

            <step>
              <para
>Geben Sie für das Profil <quote
>action</quote
>-Markierungen an. Jede Markierung soll den Namen des &DBus;-Objekts und einen Funktionsprototyp enthalten. </para>

              <para
>&kdelirc; benötigt zusätzliche Attribute, um eine Aktion richtig zu verarbeiten. Die <quote
>button</quote
>-Markierung wird für die das automatische Ausfüllen benötigt. In der <ulink url="http://api.kde.org/4.x-api/kdebase-workspace-apidocs/libs/solid/html/classSolid_1_1Control_1_1RemoteControlButton.html"
>API-Dokumentation für Solid</ulink
> finden Sie eine Liste aller verfügbaren Namen für Knöpfe. Die <quote
>repeat</quote
>-Markierung gibt an, ob die Aktion mehrfach ausgeführt werden soll, wenn der Knopf auf der Fernbedienung länger gedrückt wird  (0 = Nein, 1 = Ja). Die <quote
>autostart</quote
>-Markierung definiert, ob das Programm automatisch gestartet werden soll, wenn es noch nicht läuft. </para>
              <programlisting
>&lt;?xml version="1.0" ?&gt;
&lt;!DOCTYPE profile SYSTEM "profile.dtd"&gt;

  &lt;profile id="myapp" servicename="My Application"&gt;
    &lt;name&gt;My Application&lt;/name&gt;
    &lt;author&gt;Me&lt;/author&gt;
    &lt;instances unique="0" ifmulti="sendtoone"/&gt;
    &lt;action objid="MyApp" prototype="void showint(short int)"
      button="Menu" repeat="0" autostart="0"&gt;
    &lt;/action&gt;
  &lt;/profile&gt;
              </programlisting>
            </step>

            <step>
              <para
>Fügen Sie für die Aktion einen Namen und einen Kommentar hinzu. Dies wird in der Benutzerschnittstelle von &kdelirc; angezeigt. </para>

              <programlisting
>&lt;?xml version="1.0" ?&gt;
&lt;!DOCTYPE profile SYSTEM "profile.dtd"&gt;

  &lt;profile id="myapp" servicename="My Application"&gt;
    &lt;name&gt;My Application&lt;/name&gt;
    &lt;author&gt;Me&lt;/author&gt;
    &lt;instances unique="0" ifmulti="sendtoone"/&gt;
    &lt;action objid="MyApp" prototype="void showints(short int)"
        button="Menu" repeat="0" autostart="0"&gt;
      &lt;name&gt;Show Integers&lt;/name&gt;
      &lt;comment&gt;Shows a configurable integer&lt;/comment&gt;
    &lt;/action&gt;
  &lt;/profile&gt;
                </programlisting>
            </step>

	    <step>
                <para
>Beschreiben Sie jedes Argument mit einem Kommentar und geben den Typ des Attributs an. Eine Liste gültiger Typen finden Sie in der <ulink url="http://websvn.kde.org/trunk/KDE/kdeutils/kdelirc/profiles/profile.dtd?view=markup"
>Profilbeschreibungsdate</ulink
>. Für jedes Argument sollte ein Standardwert der <quote
>default</quote
>-Markierung gesetzt werden: </para>
    
                <programlisting
>&lt;?xml version="1.0" ?&gt;
&lt;!DOCTYPE profile SYSTEM "profile.dtd"&gt;

  &lt;profile id="myapp" servicename="My Application"&gt;
    &lt;name&gt;My Application&lt;/name&gt;
    &lt;author&gt;Me&lt;/author&gt;
    &lt;instances unique="0" ifmulti="sendtoone"/&gt;
    &lt;action objid="MyApp" prototype="void showints(short int)"
        button="Menu" repeat="0" autostart="0"&gt;
      &lt;name&gt;Show Integers&lt;/name&gt;
      &lt;comment&gt;Shows a configurable integer&lt;/comment&gt;
      &lt;argument type="int"&gt;
        &lt;default&gt;5&lt;/default&gt;
        &lt;comment&gt;The integer to be shown&lt;/comment&gt;
      &lt;/argument&gt;
    &lt;/action&gt;
  &lt;/profile&gt;
                </programlisting>
            </step>
            </substeps>
        </step>
      </procedure>
    </sect2>
    <sect2>
      <title
> Installation</title>
        <para
>Um das Profil zu benutzen und zu testen, müssen Sie es in den Ordner <filename
>$(kde_datadir)/profiles</filename
> kopieren und &kdelirc; neu starten. </para>
        <para
>Möchten Sie Profile zur &kde; SC beisteuern, senden sie sie bitte unter der Adresse <email
>kde-utils-devel@kde.org</email
> an das KDE-Utils-Team . </para>
      </sect2>
  </sect1>
</chapter>

</book>

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

// vim:ts=2:sw=2:tw=78:noet
-->
