A Interface de &DCOP; do &k3b;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 utilizar estas funções &DCOP; pode utilizar o programa de linha de comandos dcop ou a aplicação Kdcop. Ambos fornecem a mesma funcionalidade por isso é uma questão de gosto e de contexto de utilização ao escolher qual utilizar.Este capítulo assume que está a utiliza o programa de linha de comando dcop. 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: #dcop[função]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.A interface por omissão do K3bA interface de DCOP por omissão do DCOP oferece funcionalidades do tipo 'copyCD', 'formatDVD', bem como métodos para criar projectos novos.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)
Como resultado de um dos métodos 'createXXXProject', obtém-se uma referência de DCOP ao projecto acabado de criar: DCOPRef(k3b,K3bProject-0) Em alternativa, poderá criar um projecto com a linha de comandos: #k3b--audiocd e então obter uma referência para este projecto com #dcopcurrentProject Se usar esta referência, é possível manipular o project com a K3bProjectInterface.K3bProjectInterfacevoid addUrls(KURL::List urls)
void addUrl(KURL url)
void burn()
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): 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)
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: #!/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