<?xml version="1.0"  encoding="UTF-8" ?>

<sect1 id="dcop-interface">
<sect1info>
<title
>Fonctions &DCOP;</title>
<authorgroup>
<author
><firstname
></firstname
> <surname
></surname
> <affiliation
><address
> <email
></email>
</address
></affiliation>
</author>

&traducteurYohannHamon; 

</authorgroup>
</sect1info>

<title
>Fonctions &DCOP;</title>

<para
>Les &DCOP; peuvent être appelés de différentes façon dans &kommander;. Premièrement à l'aide d'un terminal </para>
<para
>dcop kmdr-executor-@pid KommanderIf changeWidgetText ÉlémentGraphique <quote
>Nouveau texte</quote
> </para>
<para
>Ceci implique que vous soyez dans un fichier &kommander; et que vous ayez accès au spécial @pid qui contient le numéro ID du processus. En fait il est plus simple de remplacer <quote
>kmdr-executor-@pid</quote
> par @dcopid. Cependant, vous pouvez utiliser cette syntaxe (bien évidement sans les spéciaux) depuis la ligne de commande ou tout script externe pour modifier la fenêtre de &kommander;. </para>
<para
>Parce que &kommander; ne dispose pas d'un parseur complet dans sa phase Alpha, si vous voulez utiliser le &DCOP; interne beaucoup plus rapide depuis la fenêtre d'une autre application (le &DCOP; en mode ligne de commande est très lent) c'est plus compliqué parce que vous devez donner beaucoup d'informations, le prototype de l'appel inclu. L'appel vu précédement deviendrait : </para>
<para
>@dcop(@dcopid, KommanderIf, <quote
>enableWidget(QString, bool)</quote
>, Widget, true) </para>
<para
>Vous devez savoir qu'au moment de l'écriture de ce manuel les appels &DCOP; imbriqués à l'intérieur de langages de script (comme <application
>bash</application
>) signifient que vous devez utiliser la méthode d'appel par terminal. <emphasis
>Si vous utilisez le &DCOP; interne tous les spéciaux &kommander; seront executés en premier et le script ne sera exécuté qu'ensuite.</emphasis
> </para>
<para
>Il y a un nouveau moyen simplifié d'utiliser &DCOP; dans &kommander; en utilisant une syntaxe objet. Disons que vous voulez changer le texte dans un composant graphique de nom @LineEdit1. Cela ressemblerais à ceci. </para>
<para
>@LineEdit1.changeWidgetText(Nouveau Texte) </para>
<para
>Comme vous pouvez le voir la nouvelle syntaxe est très simple, et également visuellement consistante avec les groupes de fonctions. Toutes les références &DCOP; utiliserons la nouvelle syntaxe d'objet décrite plus haut. <emphasis
>Merci de noter que si vous référencez un composant graphique utilisant &DCOP; depuis une autre fenêtre ou une autre application le premier paramètre sera toujours le nom de du composant graphique. Toutes les fonctions sont listées ici commencent avec le second paramètre.</emphasis
> </para>

<sect2 id="dcop-globals">
<title
>&DCOP; pour les variables globales</title>
<variablelist>
<varlistentry>
<term
>global(QString NomDeLaVariable)</term>
<listitem>
<para
>Retourne la valeur de la variable globale spécifiée. Lorsqu'un script est exécuté depuis l'intérieur de la fenêtre de &kommander; toutes les variables (non globales) créées dans ce script cesseront d'exister à la fin du script et en conséquence ne seront plus disponibles pour d'autres scripts ou dans une nouvelle instance du proccessus appellant. La <quote
>portée globale</quote
> signifie que la variable existera pour tout processus de la fenêtre jusque ce que la fenêtre soit fermée. Vous pouvez changer ces variables à tout moment à l'aide d'un nouvel appel à <function
>@setGlobal</function
>. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
>setGlobal(QString NomDeLaVariable, QString Valeur)</term>
<listitem>
<para
>Créé une variable qui est globale pour la fenêtre et lui assigne la valeur. Cette valeur peut être récupérée à l'aide de global(QString NomDeLaVariable) ou bien modifiée. </para>
</listitem>
</varlistentry>
</variablelist>
</sect2>

<sect2 id="dcop-all">
<title
>&DCOP; pour tous les composants graphiques</title>

<variablelist>
<varlistentry>
<term
>changeWidgetText(QString texte)</term>
<listitem>
<para
>Ceci sera probablement renommé en setWidgetText et ce nom sera sans doute obsolète. Cela supprime le texte affiché dans le composant graphique et le remplace par le texte fourni. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
>enableWidget(bool enable)</term>
<listitem>
<para
>Active ou désactive un composant graphique. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
>associatedText</term>
<listitem>
<para
>Retourne le texte associé à au composant graphique spécifié. Ce n'est pas le même chose que le texte affiché. Cela serait <quote
>@widgetText</quote
> ou le texte et / ou le script utilisé pour obtenir la valeur affichée. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
>setAssociatedText(QString texte)</term>
<listitem>
<para
>Ceci configure la chaîne de caractère Texte &kommander; par défaut. Elle est généralement configuré à <quote
>@widgetText</quote
> pour afficher ce qui est saisi dans le composant graphique. Il est peu probable que vous ayez besoin de ceci, mais si c'est le cas vous l'avez ici. Cela s'applique à tous les composants graphiques pouvant contenir des données. </para>
</listitem>
</varlistentry>
</variablelist>
</sect2>

<sect2 id="dcop-box">
<title
>&DCOP; pour les listes de choix et les listes déroulantes</title>
<variablelist>
<varlistentry>
<term
>addListItem(QString élément, int index)</term>
<listitem>
<para
>Ajoute un élément à un composant graphique liste de choix à l'index spécifié. L'index de liste commence à zéro. Pour ajouter à la fin d'une liste utilisez -1. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
>addListItems(QStringList éléments, int index)</term>
<listitem>
<para
>Ceci ajoute une liste d'éléments d'un seul coup. La liste devrait être délimitée par <acronym
>EOL</acronym
> (\n - nouvelle ligne). C'est très utile puisque vous pouvez utiliser bash pour produire une liste facilement.  </para>
</listitem>
</varlistentry>
<varlistentry>
<term
>addUniqueItem(QString élément)</term>
<listitem>
<para
>addUniqueItem ajoutera un élément à la fin de la liste uniquement si il n'en fait pas déjà parti. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
>clearList</term>
<listitem>
<para
>Supprime tous les éléments. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
>removeListItem(int index)</term>
<listitem>
<para
>Supprime l'élément dont la position est l'index spécifié. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
>item(int index)</term>
<listitem>
<para
>Retourne le texte de l'élément situé à l'index spécifié. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
>setCurrentListItem(int index)</term>
<listitem>
<para
>Positionne l'élément courant (ou l'élément sélectionné) à l'index spécifié. S'applique aux listes de choix et aux listes déroulantes. </para>
</listitem>
</varlistentry>
</variablelist>
</sect2>

<sect2 id="dcop-button">
<title
>&DCOP; pour les éléments graphiques case à cocher et bouton radio</title>
<variablelist>
<varlistentry>
<term
>setChecked(QString NomÉléméntGraphique, bool checked)</term>
<listitem>
<para
>Coche / décoche les éléments graphiques case à cocher et bouton radio. </para>
</listitem>
</varlistentry>
</variablelist>
</sect2>

<sect2 id="dcop-tab">
<title
>&DCOP; pour les composants graphiques de type Onglet</title>
<variablelist>
<varlistentry>
<term
>setCurrentTab(QString NomÉlémentGraphique, int index)</term>
<listitem>
<para
>Sélectionne un onglet à l'aide de son index dans l'élément graphique Onglet. L'index commence à 0. </para>
</listitem>
</varlistentry>
</variablelist>
</sect2>


</sect1>
