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.6 KiB
125 lines
3.6 KiB
<chapter id="dcop">
|
|
<title
|
|
>&DCOP;-grænsefladen i &k3b;</title>
|
|
<para
|
|
>&k3b; tilbyder, som mange andre &kde;-programmer, en &DCOP;-grænseflade som gør det muligt at styre den del af dets funktioner fra f.eks. et skalscript.</para>
|
|
<para
|
|
>For at bruge &DCOP;-funktionerne, kan du enten bruge kommandolinjeprogrammet <command
|
|
>dcop</command
|
|
>, eller det bekvemmere program <application
|
|
>Kdcop</application
|
|
>. Begge sørger for samme funktioner, så det er mest et spørgsmål om smag og brugsområde hvad der vælges.</para>
|
|
<para
|
|
>Dette kapitel antager at du bruger kommandolinjeprogrammet <command
|
|
>dcop</command
|
|
>. For at få adgang til &k3b;s &DCOP;-funktioner, skal du sørge for at &k3b; er startet og skriv derefter noget i retning af dette i en terminal: <screen
|
|
><prompt
|
|
>#</prompt
|
|
> <command
|
|
>dcop</command
|
|
> <option
|
|
>k3b</option
|
|
> <option
|
|
>K3bInterface</option
|
|
> <replaceable
|
|
>[funktion]</replaceable
|
|
>
|
|
</screen>
|
|
</para>
|
|
|
|
<para
|
|
>Foruden de generelle &DCOP;-funktioner som er tilgængelige i alle &kde;-programmer, består DCOP-grænsefladen i &k3b; hovedsageligt af to dele som beskrives nedenfor.</para>
|
|
|
|
<sect1>
|
|
<title
|
|
>Standard K3bInterface</title>
|
|
|
|
<para
|
|
>Standard K3b DCOP-grænsefladen sørger for funktioner såsom copyCD, formatDVD og metoder til at oprette nye projekter.</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
|
|
>Som resultat fra en af metoderne createXXXProject, får man en DCOP-reference til det nyoprettede projekt: <programlisting
|
|
>DCOPRef(k3b,K3bProject-0)</programlisting
|
|
> Som et alternativ kan du oprette et projekt fra kommandolinjen: <screen>
|
|
<prompt
|
|
>#</prompt
|
|
> <command
|
|
>k3b</command
|
|
> <replaceable
|
|
>--audiocd</replaceable>
|
|
</screen
|
|
> og derefter hente en reference til projektet med <screen>
|
|
<prompt
|
|
>#</prompt
|
|
> <command
|
|
>dcop</command
|
|
> <option
|
|
>k3b</option
|
|
> <option
|
|
>K3bInterface</option
|
|
> <replaceable
|
|
>currentProject</replaceable>
|
|
</screen
|
|
> Ved at bruge referencen er det muligt at manipulere projektet med <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
|
|
>K3b tilbyder K3bProjectInterface som listes ovenfor eller det kraftfuldere K3bDataProjectInterface, som kun gælder dataprojekter (cd og dvd): <programlisting
|
|
>void createFolder(TQString name)
|
|
void createFolder(TQString name,TQString parent)
|
|
void addUrl(KURL url,TQString parent)
|
|
void addUrls(KURL::List urls,TQString parent)
|
|
void removeItem(TQString path)
|
|
void renameItem(TQString path,TQString newName)
|
|
void setVolumeID(TQString id)
|
|
</programlisting>
|
|
</para>
|
|
|
|
<para
|
|
>Ved at bruge det er det muligt at fylde et dataprojekt med filer og mapper fra et script. Følgende script laver for eksempel et nyt dataprojekt, tilføjer flere mapper til projektet, og tilføjer filer i de nyoprettede mapper. <programlisting
|
|
>#!/bin/bash
|
|
PROJECT=$(dcop k3b K3bInterface createDataCDProject)
|
|
dcop $PROJECT createFolder test
|
|
dcop $PROJECT createFolder foo
|
|
dcop $PROJECT createFolder bar /foo
|
|
dcop $PROJECT addUrl /home/trueg/somefile.txt /foo/bar
|
|
</programlisting>
|
|
|
|
</para>
|
|
|
|
</sect1>
|
|
</chapter>
|