# &kde; infrapuna kaugjuhtimise seadistamine

Frank
Scheffold

    fscheffold@googlemail.com

Michael
Zanetti

    michael_zanetti@gmx.net

Gav
Wood

    gav@kde.org

Marek
Laane

    bald@smail.ee

Tõlge eesti keelde
2010-01-06
2.0
2004
Gav Wood
2010
Frank Scheffold
Michael Zanetti

&kdelirc;i seadistamine: &kde; infrapuna kaugjuhtimise infrastruktuur.

KDE
irkick
kdelirc
kcmlirc
lirc

## Sissejuhatus

### Nõuded

&kdelirc; raamistiku pruukimiseks peab LIRC olema arvutisse paigaldatud. Kui see on korrektselt tehtud, ilmub süsteemisalve punane &kdelirc; ikoon . Kui mitte, siis on hall ja ristiga .

Rohkem infot LIRC ja selle seadistamise kohta leiab veebileheküljelt http://www.lirc.org.

Märkus: LIRC seadistamisel on soovitatav ära kasutada nuppude nimeruume.

## Kasutamine

Kolm kaarti võimaldavad seadistada mitmesuguseid asju ning pakuvad lisateavet. Esimesel kaardil Kontrolleri funktsioonid saab seadistada kõigi kaugjuhtimisseadmete režiime ja toiminguid. Kaart Profiilide ülevaade sisaldab saadaolevate profiilide üksikasju. Kaart Saadaolevad kaugjuhtimisseadmed näitab lisateavet kaugjuhtimiseadmete kohta. Seadme valimisel näeb selle nuppude ülevaadet.

### Kontrolleri funktsioonid

#### Kaugjuhtimisseadmed ja režiimid

Igal kaugjuhtimisseadmel võib olla mitu režiimi. See võimaldab ühel ja samal nupul erinevates situatsioonides erinevalt toimida ja on põhimeetod, kuidas enamik kaugjuhtimisseadmeid tuleb arvukate funktsioonidega toime vaid piiratud hulka nuppe kasutades. Heaks näiteks on tele-video-satelliidi-DVD kombopuldid, mis selle asemel, et kasutada igale seadmele omaette nupukogumist, ajavad läbi ainult ühe nupukogumiga, mis erinevate seadmete korral veidi erinevalt käitub.

Sõltumata režiimist on alati kasutatavad otse kaugjuhtimisseadmel määratud toimingud. Režiimi jaoks määratud toiminguid käivitatakse ainult siis, kui seade viibib parajasti antud režiimis. Seade saab korraga olla ainult ühes režiimis. Samuti võib režiim puududa, mis tähendab, et nupule vajutades käivitatakse ainult alati saadaolevad toimingud. Lisaks võib kindlaks määrata vaikimisi režiimi, mis omistatakse seadmele automaatselt selle sisselülitamisel.

Vasakul on nimekiri kõigi süsteemis tuvastatud kaugjuhtimisseadmetega. Režiime saab lisada ja eemaldada vajalikku seadet valides ning kasutades kohe nimekirja all olevaid nuppe Lisa ja Eemalda. Muutmisnupp võimaldab muuta olemasolevaid režiime.

#### Toimingute omistamine nuppudele

&kdelirc; tunneb kaht laadi toiminguid: režiimilülitid ja käivitatavad toimingud. Režiimilülitid võimaldavad lülitada aktiivse kaugjuhtimisseadme teise režiimi, tavalised toimingud aga käivitada käske &DBus;i vahendusel. Uue käivitatava toimingu defineerimisel on kaks võimalust. Esiteks võib kasutada malli, teiseks aga käsitsi kindlaks määrata kõik vajalikud valikud. Toimingute malle nimetatakse profiilideks. Profiili kasutamine toimingu loomiseks on lihtsam ja selgem, kuid alati ei paku see kõiki võimalikke funktsioone. Täpsemat seadistamist vajavaid toiminguid tuleb defineerida käsitsi vajalikke funktsioone ja nende parameetreid valides.

Toimingu lisamiseks kasuta all paremal asuvat nuppu Lisa.... Ilmub nõustaja, mis soovib teada, millist laadi toimingut soovid luua. Esimene võimalus on luua profiilile tuginev toiming. Teine võimalus laseb luua kogu toimingu käsitsi. Pea meeles, et rakendus, mida soovid juhtida, peab toimingu seadistamise ajal töötama, sest muidu ei ole seda saadaolevate rakenduste loendis näha. Kolmas võimalus laseb luua režiimi lülitamise toimingu. Vali soovitud toimingutüüp ja järgi nõustaja pakutavaid samme.

Toiminguid võib ka automaatselt luua nupu Automaatne lisamine... abil. Sel juhul püüab &kdelirc; sinu eest sobitada nupud funktsioonidega. Automaatse lisamise dialoog näitab lipukesega kõiki saadaolevaid profiile. Sõltuvalt lipukese värvist toetab profiil kaugjuhtimisseadet täielikult, osaliselt või ei toeta üldse. Roheline lipuke tähendab täielikku toetust, kollane osalist ja punane toetuse puudumist.

Märkus: kui kaugjuhtimisseade ei ole üheski profiilis toetatud, võib põhjust peituda selles, et sa pole seadistanud LIRC-d kasutama nimeruume.

### Profiilide ülevaade

Kaart Profiilide ülevaade sisaldab teavet saadaolevate profiilide kohta. Profiili valimisel näeb üksikasjalikku teavet, näiteks autori andmeid ja kõigi defineeritud toimingute loendit. Iga toimingukirje sisaldab teavet lisaseadistuste kohta, kommentaari ning nupu identifikaatorit, mida kasutab ära automaatse lisamise funktsioon.

Kui soovid anda oma panuse rakenduste profiilide loomisel, vaata lähemalt muu teabe peatükki.

### Saadaolevad kaugjuhtimisseadmed

Sellel kaardil näeb üksikasjalikku teavet kaugjuhtimisseadmete kohta. Siin saab kontrollida, kas süsteem on kaugjuhtimisseadmed korrektselt ära tundnud.

## Muu teave

Selles peatükis tuleb juttu asjadest, mis võivad pakkuda huvi kogenenumatele kasutajatele või arendajatele. Muu hulgas saab siin teada, kuidas luua ise profiile.

### Profiili loomine

#### Sissejuhatus

&kdelirc; võimaldab ilma probleemideta kasutada kõiki &DBus;i tundvaid rakendusi. Kasutajasõbraliku seadistamise huvides ning selleks, et rakendus ilmuks automaatse lisamise dialoogis, on siiski mõttekas luua vastav profiil.

Profiil annab &kdelirc;ile (ja kasutajale!) teada, mida eri &DBus;i väljakutsed täpselt teevad. Põhimõtteliselt ongi niisiis tegemist &DBus;i väljakutsete dokumentatsiooniga. Sa ei pea lisama kõiki &DBus;i väljakutseid, piisab neist, millest sinu meelest kasutaja võiks kõige rohkem kasu saada (reeglina liidese kohendamise väljakutsed, mitte aga teabe kogumise väljakutsed).

#### Loomine

1. ##### &DBus;

   Kontrolli, kas rakendus, millele soovid profiili luua, pakub ikka funktsioone &DBus;i vahendusel. Põhimõtteliselt saab seda kontrollida, kui lisada rakendusele toiminguid &kdelirc;i käsitsimeetodi abil. Programm qdbusviewer, mis on kaasas Qt4-ga, on samuti väga hea tööriist rakenduste &DBus;-võimekuse tundmaõppimiseks.

2. ##### Profiili loomine

   Kui oled tuvastanud sobivad &DBus;i funktsioonid, tuleb need kirjeldada dokumendis `appname.profile.xml`. Toome siin ära lühikese juhise selliste failide loomiseks:

   1. Kõigepealt loo järgmise sisuga fail. Asenda myapp rakenduse täitmisfaili nimega ning MyApplication rakenduse kirjeldava nimega.

          <?xml version="1.0" ?>
          <!DOCTYPE profile SYSTEM "profile.dtd">

            <profile id="myapp" servicename="My Application">
            </profile>

   2. Lisa sildis profile nimi ja teave autori kohta. Silt instances teatab &kdelirc;ile, kas rakendust saab käivitada mitu korda või mitte. Määra unique väärtuseks 0, kui rakendust on võimalik käivitada mitu korda (vaikimisi on väärtuseks 1). Omadus ifmulti määrab kindlaks, mida &kdelirc; peab tegema, kui vajutatakse nuppu ja käimas on mitu isendit. Valikuteks on dontsend (ei tehta midagi, kui on > 1 isendi), sendtoone (väljakutse saadetakse ühele suvaliselt valitud isendile) ja sendtoall (väljakutse saadetakse kõigile isenditele). Vaikeväärtus on dontsend, kuid paljudel juhtudel võib kasulik olla hoopis sendtoone.

          <?xml version="1.0" ?>
          <!DOCTYPE profile SYSTEM "profile.dtd">

            <profile id="myapp" servicename="My Application">
              <name>My Application</name>
              <author>Me</author>
              <instances unique="0" ifmulti="sendtoone"/>
            </profile>

   3. Lisa profiili toimingusildid. Iga toimingusilt peab sisaldama &DBus;i objekti nime ja funktsiooni prototüüpi.

      &kdelirc; vajab mõningaid lisaatribuute teadmaks, kuidas toimingut kohelda. Silt button on mõeldud automaatse lisamise funktsioonile. Saadaolevate nuppude nimede täieliku loendi toob ära Solidi API dokumentatsioon. Silt repeat annab teada, kas toiming tuleb käivitada mitu korda, kui kaugjuhtimisseadme nuppu all hoitakse (0 = ei, 1 = jah). Silt autostart määrab kindlaks, kas rakendus tuleb käivitada, kui ta veel ei tööta.

          <?xml version="1.0" ?>
          <!DOCTYPE profile SYSTEM "profile.dtd">

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

   4. Lisa toimingule nimi ja kommentaar. Neid näitab &kdelirc;i kasutajaliides.

          <?xml version="1.0" ?>
          <!DOCTYPE profile SYSTEM "profile.dtd">

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

   5. Kirjelda iga argumenti kommentaari ja tüübi atribuudiga. Kehtivate tüüpide loendi leiab profiilide kirjelduse failist. Kõigi argumentide vaikeväärtus tuleb deklareerida siltide default vahel:

          <?xml version="1.0" ?>
          <!DOCTYPE profile SYSTEM "profile.dtd">

            <profile id="myapp" servicename="My Application">
              <name>My Application</name>
              <author>Me</author>
              <instances unique="0" ifmulti="sendtoone"/>
              <action objid="MyApp" prototype="void showints(short int)"
                  button="Menu" repeat="0" autostart="0">
                <name>Show Integers</name>
                <comment>Shows a configurable integer</comment>
                <argument type="int">
                  <default>5</default>
                  <comment>The integer to be shown</comment>
                </argument>
              </action>
            </profile>

#### Paigaldamine

Profiili testimiseks ja kasutamiseks tuleb see kopeerida kataloogi `$(kde_datadir)/profiles` ja taaskäivitada &kdelirc;.

Kui soovid annetada profiili &kde; SC tarbeks, saada see palun kdeutilsi meeskonnale aadressil kde-utils-devel@kde.org.