You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
237 lines
8.6 KiB
237 lines
8.6 KiB
<?xml version="1.0" encoding="UTF-8" ?>
|
|
|
|
<sect1 id="dcop-interface">
|
|
<sect1info>
|
|
<title
|
|
>&DCOP;-i funktsioonid</title>
|
|
</sect1info>
|
|
|
|
<title
|
|
>&DCOP;-i funktsioonid</title>
|
|
|
|
<para
|
|
>&kommander; hakkas esialgu kasutama vidinaid sisemiselt &DCOP;-i vahendusel, mis arenes edasi vidinate funktsioonideks. &DCOP; on endiselt kasutusel ning seda saab tarvitada teabe jagamiseks dialoogide vahel. Samuti saab selle abil laiendada peaaegu kõiki KDE rakendusi. &DCOP; on võimalik &kommander;is välja kutsuda mitmel viisil. Esimene võimalus on konsool. Ava &kommander;i dialoog ja seejärek konsool ning proovi ise. </para>
|
|
<note
|
|
><para
|
|
>Allolev jutt käsitleb peamiselt vana parserit, Kui tunned huvi sisemiste vidinate funktsioonide vastu, tasub tutvust teha <link linkend="new_parserdocs"
|
|
>uue parseriga</link
|
|
>. See teave käib eriti dialoogide ja rakenduste suhtlemise või teiste skriptikeelte käivitamise kohta Kommanderis skriptidena.</para
|
|
></note>
|
|
<screen
|
|
>dcop | grep kmdr
|
|
dcop `dcop | grep kmdr`
|
|
dcop `dcop | grep kmdr` KommanderIf
|
|
</screen>
|
|
<para
|
|
>See näitab, millised dialoogid töötavad ja millised liidesed on saadaval, samuti seda, mida saab kasutada väljakutsumiseks &kommander;i spetsiaalses sisemises liideses. &DCOP;-i selgituste juures tasub meeles pidada, et &DCOP;-i kasutavad seesmiselt KDE rakendused (KDE4 ajal asendab selle D-Bus) ja et see on väga kasulik asi. Uuri programmi <command
|
|
>kdcop</command
|
|
>; vajuta Alt+F2 ja kirjuta programmi nimi käivitusreale. Seal saab näha kõike, mis töötab. Nüüd aga tagasi &DCOP;-i ja &kommander;i juurde. </para>
|
|
<screen
|
|
>dcop kmdr-executor-@pid KommanderIf setText minuVidin <quote
|
|
>uus tekst</quote
|
|
>
|
|
</screen>
|
|
<para
|
|
>See eeldab, et oled &kommander;i failis ja sul on ligipääs spetsiaalsele @pid-ile, mis sisaldab protsessi ID-d. Tegelikult on lihtsam asendada <quote
|
|
>kmdr-executor-@pid</quote
|
|
> @dcopid-ga. Aga igal juhul on võimalik seda süntaksit kasutada (küll ilma erideta) käsurealt või mis tahes välisest skriptist, et muuta &kommander;i akent. </para>
|
|
<para
|
|
>&kommander; on võtnud kasutusele palju kiirema sisemise &DCOP;-funktsiooni. Selle kasutamine mõne muu rakenduse aknast (konsooli &DCOP; on ikka päris aeglane) tekitab mõningaid raskusi, sest sa pead andma hulganisti infot, sealhulgas väljakutse prototüübi. Eeltoodud käsk võtab siis kuju (pane tähele, et @dcopid on dialoogis tegelikult sisene, aga sa võid selle asendada mis tahes korrektse protsessi ID-ga): </para>
|
|
<screen
|
|
>@dcop(@dcopid, KommanderIf, <quote
|
|
>enableWidget(QString, tõeväärtus)</quote
|
|
>, Vidin, true)
|
|
</screen>
|
|
<para
|
|
>Varasemas &kommander;is tähendas &DCOP;-väljakutsete pesastamine skriptikeele struktuuridesse (näiteks <application
|
|
>bash</application
|
|
>) seda, et väljakutsed tuli esitada konsoolilt. <emphasis
|
|
>Kui kasutad sisest &DCOP;-i, käivitatakse esmalt kõik &kommander;i erid ja seejärel skript.</emphasis
|
|
> Palun loe eelmist lauset veel kord, sest muidu ei ole nutul ja halal piiri, kui <application
|
|
>bash</application
|
|
> satub &kommander;i eridega lõpmatusse silmusesse. </para>
|
|
<para
|
|
>On ka uus ja lihtsam viis kasutada &DCOP;-i &kommander;is endas, mida võimaldab objektsüntaks. Oletame, et soovid muuta teksti vidinas nimega @LineEdit1. See käib järgmiselt. </para>
|
|
<screen
|
|
>@LineEdit1.setText(Uus tekst)
|
|
</screen>
|
|
<para
|
|
>Nagu näed, on uus süntaks väga lihtne ja visuaalselt funktsioonigruppidega kooskõlas. Kõik siintoodud &DCOP;-i viited kasutavad sellist objektisüntaksit. <emphasis
|
|
>Palun arvesta, et kui viitad &DCOP;-i muust aknast või rakendusest kasutades vidinale, peab esimene parameeter olema alati vidina nimi. Kõik siin toodud funktsioonid algavad teise parameetriga.</emphasis
|
|
> </para>
|
|
|
|
<sect2 id="dcop-globals">
|
|
<title
|
|
>&DCOP; globaalsete muutujatele</title>
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term
|
|
>global(QString muutujaNimi)</term>
|
|
<listitem>
|
|
<para
|
|
>Tagastab määratud globaalse muutuja väärtuse. Kui skript käivitatakse &kommander;i aknast, lakkavad kõik skriptiga määratud (mitteglobaalsed) muutujad eksisteerimast pärast skripti töö lõpetamist ega ole seepärast enam kasutatavad muudes skriptides või ka sama väljakutse kordamisel. Globaalne <quote
|
|
>skoop</quote
|
|
> tähendab seda, et muutuja eksisteerib akna iga protsessi jaoks seni, kuni aken suletakse. Neid muutujaid võib igal ajal muuta funktsiooni <function
|
|
>@setGlobal</function
|
|
> uue väljakutsega. </para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term
|
|
>setGlobal(QString muugujaNimi, QString väärtus)</term>
|
|
<listitem>
|
|
<para
|
|
>Loob muutuja, mis on akna protsessile globaalne ja omistab sellele väärtuse, Väärtuse saab hankida global(QString muutujaNimi) abil või ka uuesti määrata. </para>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</sect2>
|
|
|
|
<sect2 id="dcop-all">
|
|
<title
|
|
>&DCOP; kõigile vidinatele</title>
|
|
|
|
<para
|
|
>Järgnev nimekiri on vananenud ja siin ära toodud rohkem ajaloo huvides. Kõigi vidinafunktsioonide ajakohastatud täielikku nimekirja pakub <emphasis
|
|
>funktsioonibrauser</emphasis
|
|
>, mille saab avada suvalisest &kommander;i tekstiredaktori aknast alumisele vasakpoolsele nupule vajutades. Need on nüüd vidinafunktsioonid, mitte enam &DCOP;-funktsioonid, aga &DCOP;-funktsioonid avaldatakse <emphasis
|
|
>KommanderIf</emphasis
|
|
> &DCOP;-liideses, mida kirjeldati eespool. Selle funktsionaalsuse väljakutsete loomise dialoogid on saadaval meie veebileheküljel. </para>
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term
|
|
>setText(QString tekst)</term>
|
|
<listitem>
|
|
<para
|
|
>See eemaldab see vidinas näidatava teksti ja asendab selle antava tekstiga. </para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term
|
|
>enableWidget(tõeväärtus enable)</term>
|
|
<listitem>
|
|
<para
|
|
>Lubab või keelab elemendi. </para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term
|
|
>associatedText</term>
|
|
<listitem>
|
|
<para
|
|
>Tagastab määratud vidinaga seostatud teksti. See ei ole sama, mis näidatav tekst. See võib olla <quote
|
|
>@widgetText</quote
|
|
> või tekst ja/või skript, mida kasutatakse näidatava väärtuseni jõudmiseks. </para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term
|
|
>setAssociatedText(QString tekst)</term>
|
|
<listitem>
|
|
<para
|
|
>See määrab &kommander;i vaiketekstistringi. Tavaliselt määratakse selleks <quote
|
|
>@widgetText</quote
|
|
>, et näidata vidinasse sisestatut. Vaevalt sul seda eriti vaja läheb, aga igatahes on see olemas. Saab kasutada kõigi andmeid sisaldavate vidinate korral. </para>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</sect2>
|
|
|
|
<sect2 id="dcop-box">
|
|
<title
|
|
>&DCOP; loendikasti ja liitkasti vidinale</title>
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term
|
|
>addListItem(QString element, int index)</term>
|
|
<listitem>
|
|
<para
|
|
>Lisab elemendi loendikasti vidinasse määratud indeksiga. Loendi indeks algab nullist. Loendi lõppu lisamiseks anna -1. </para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term
|
|
>addListItems(QStringList elemendid, int index)</term>
|
|
<listitem>
|
|
<para
|
|
>Lisab korraga terve stringide loendi. Loendis tuleb kasutada eraldajana <acronym
|
|
>EOL</acronym
|
|
>-i (\n - reavahetused). See on hea juhul, kui soovid Bashi muretult loendi tuletamiseks kasutada. Näiteks elementide korral @exec(ls -l ~/projects | grep kmdr) kasutades saad oma projektikataloogi &kommander;i failide nimekirja. Loendi indeks algab nulliga. Loendi lõppu lisamiseks anna -1. </para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term
|
|
>addUniqueItem(QString element)</term>
|
|
<listitem>
|
|
<para
|
|
>addUniqueItem lisab elemendi loendi lõppu ainult siis, kui see on unikaalne. </para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term
|
|
>clearList</term>
|
|
<listitem>
|
|
<para
|
|
>Eemaldab kõik elemendid. </para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term
|
|
>removeListItem(int index)</term>
|
|
<listitem>
|
|
<para
|
|
>Eemaldab antud indeksiga elemendi. </para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term
|
|
>item(int index)</term>
|
|
<listitem>
|
|
<para
|
|
>Tagastab antud indeksiga elemendi teksti. </para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term
|
|
>setCurrentListItem(int index)</term>
|
|
<listitem>
|
|
<para
|
|
>Määrab aktiivse (või valitud) elemendi määratud indeksile. Saab kasutada loendikasti ja liitkasti vidina korral. </para>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</sect2>
|
|
|
|
<sect2 id="dcop-button">
|
|
<title
|
|
>&DCOP; märkekasti ja raadionupu vidinale</title>
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term
|
|
>setChecked(QString elemendiNimi, tõeväärtus checked)</term>
|
|
<listitem>
|
|
<para
|
|
>Märgib või eemaldab märke märkekasti või raadionupu elemendilt. </para>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</sect2>
|
|
|
|
<sect2 id="dcop-tab">
|
|
<title
|
|
>&DCOP; kaardividinale</title>
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term
|
|
>setCurrentTab(QString elemendiNimi, int index)</term>
|
|
<listitem>
|
|
<para
|
|
>Valib kaardi indeksi järgi kaardividinalde. Indeks algab nulliga. </para>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</sect2>
|
|
|
|
|
|
</sect1>
|