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.
125 lines
3.7 KiB
125 lines
3.7 KiB
<chapter id="dcop">
|
|
<title
|
|
>A Interface de &DCOP; do &k3b;</title>
|
|
<para
|
|
>O &k3b; possui, tal como muitas outras aplicações do &kde;, uma interface &DCOP; que torna possível controlar parte das suas funcionalidades a partir, por exemplo, de um 'shellscript'.</para>
|
|
<para
|
|
>Para utilizar estas funções &DCOP; pode utilizar o programa de linha de comandos <command
|
|
>dcop</command
|
|
> ou a aplicação <application
|
|
>Kdcop</application
|
|
>. Ambos fornecem a mesma funcionalidade por isso é uma questão de gosto e de contexto de utilização ao escolher qual utilizar.</para>
|
|
<para
|
|
>Este capítulo assume que está a utiliza o programa de linha de comando <command
|
|
>dcop</command
|
|
>. Para aceder às funções &DCOP; do &k3b;'s &DCOP;, verifique se o &k3b; está a correr e depois escreva algo deste género na consola: <screen
|
|
><prompt
|
|
>#</prompt
|
|
><command
|
|
>dcop</command
|
|
> <option
|
|
>k3b</option
|
|
> <option
|
|
>K3bInterface</option
|
|
> <replaceable
|
|
>[função]</replaceable
|
|
>
|
|
</screen>
|
|
</para>
|
|
|
|
<para
|
|
>Para além das funções &DCOP; genéricas disponíveis em todos os programas do &kde;, o &k3b; consiste em duas partes principais, como é descrito em baixo.</para>
|
|
|
|
<sect1>
|
|
<title
|
|
>A interface por omissão do K3b</title>
|
|
|
|
<para
|
|
>A interface de DCOP por omissão do DCOP oferece funcionalidades do tipo 'copyCD', 'formatDVD', bem como métodos para criar projectos novos.</para>
|
|
|
|
<programlisting
|
|
>DCOPRef createDataCDProject()
|
|
DCOPRef createAudioCDProject()
|
|
DCOPRef createMixedCDProject()
|
|
DCOPRef createVideoCDProject()
|
|
DCOPRef createMovixCDProject()
|
|
DCOPRef createDataDVDProject()
|
|
DCOPRef createVideoDVDProject()
|
|
DCOPRef createMovixDVDProject()
|
|
DCOPRef openProject(KURL url)
|
|
QValueList<DCOPRef> projects()
|
|
DCOPRef currentProject()
|
|
void copyCd()
|
|
void copyDvd()
|
|
void eraseCdrw()
|
|
void formatDvd()
|
|
void burnCdImage(KURL url)
|
|
void burnDvdImage(KURL url)
|
|
</programlisting>
|
|
|
|
<para
|
|
>Como resultado de um dos métodos 'createXXXProject', obtém-se uma referência de DCOP ao projecto acabado de criar: <programlisting
|
|
>DCOPRef(k3b,K3bProject-0)</programlisting
|
|
> Em alternativa, poderá criar um projecto com a linha de comandos: <screen>
|
|
<prompt
|
|
>#</prompt
|
|
> <command
|
|
>k3b</command
|
|
> <replaceable
|
|
>--audiocd</replaceable>
|
|
</screen
|
|
> e então obter uma referência para este projecto com <screen>
|
|
<prompt
|
|
>#</prompt
|
|
> <command
|
|
>dcop</command
|
|
> <option
|
|
>k3b</option
|
|
> <option
|
|
>K3bInterface</option
|
|
> <replaceable
|
|
>currentProject</replaceable>
|
|
</screen
|
|
> Se usar esta referência, é possível manipular o project com a <link linkend="k3bprojectinterface"
|
|
>K3bProjectInterface</link
|
|
>.</para>
|
|
|
|
</sect1>
|
|
|
|
<sect1 id="k3bprojectinterface">
|
|
<title
|
|
>K3bProjectInterface</title>
|
|
|
|
<programlisting
|
|
>void addUrls(KURL::List urls)
|
|
void addUrl(KURL url)
|
|
void burn()
|
|
</programlisting>
|
|
|
|
<para
|
|
>O K3b oferece a K3bProjectInterface listada acima, ou então a K3bDataProjectInterface, mais poderosa, que só se aplica aos projectos de dados (CD e DVD): <programlisting
|
|
>void createFolder(QString nome)
|
|
void createFolder(QString nome,QString pai)
|
|
void addUrl(KURL url,QString pai)
|
|
void addUrls(KURL::List urls,QString pai)
|
|
void removeItem(QString localização)
|
|
void renameItem(QString localização,QString novoNome)
|
|
void setVolumeID(QString id)
|
|
</programlisting>
|
|
</para>
|
|
|
|
<para
|
|
>Se usar estes métodos, é possível preencher um projecto de dados com os ficheiros e pastas de um programa. O exemplo a seguir cria um novo projecto de dados, adiciona várias pastas ao projecto e adiciona ficheiros às pastas acabadas de criar: <programlisting
|
|
>#!/bin/bash
|
|
PROJECT=$(dcop k3b K3bInterface createDataCDProject)
|
|
dcop $PROJECT createFolder teste
|
|
dcop $PROJECT createFolder xpto
|
|
dcop $PROJECT createFolder xpto2 /xpto
|
|
dcop $PROJECT addUrl /home/ze/umFicheiro.txt /xpto/xpto2
|
|
</programlisting>
|
|
|
|
</para>
|
|
|
|
</sect1>
|
|
</chapter>
|