Open Source im professionellen Einsatz

Newsletter abonnieren
Seite durchsuchen

HEFTARCHIV | NEWS | E-BIBLIOTHEK | VIDEO | BLOGS | WHITEPAPER | EVENTS | ACADEMY | ABO | SHOP

user friendly

  Home  »  Heft & Abo  »  Heftarchiv  »  2004  »  01  »  K-Steuerung  

RSS-Feed der aktuellen News von Linux-Magazin Online Folgen Sie Linux-Magazin Online auf Twitter
Diesen Artikel druckenDiesen Artikel weiterempfehlen Diesen Artikel kommentieren Newsletter abonnieren
Share/Bookmark

KDE-Applikationen von der Kommandozeile aus bedienen

K-Steuerung

von Scott Wheeler
Erschienen im Linux-Magazin 2004/01

KDE-Programme mit Maus und Tastatur bedienen ist in vielen Fällen sehr zeitraubend. Hier hilft DCOP, das Desktop Communication Protocol. Es steuert GUI-Programme per Kommandozeile oder Skript.

DCOP ist KDEs Skripting-Backend, über das sämtliche KDE-Applikationen miteinander kommunizieren. Es veranlasst Anwendungen dazu, ihre Daten zu aktualisieren, wenn der Anwender die Einstellungen ändert, oder startet KMail nach einem Klick auf eine E-Mail-Adresse. Doch DCOP arbeitet nicht nur im Hintergrund. Es erlaubt Anwendern ihre Arbeit mit KDE zu automatisieren, auch von einem anderen Rechner aus. Ein Benutzer darf allerdings nur die Programme steuern, die mit seiner eigenen User-ID laufen.

Allen KDE-Anwendungen gemein ist ein grundlegendes DCOP-Interface, das es ermöglicht, Fenster in ihrer Größe zu verändern oder sie mit Eigenschaften wie »immer im Vordergrund« zu versehen. Die meisten Programme bieten darüber hinaus eigene Methoden; KMail besitzt Funktionen, um E-Mails abzufragen oder eine neue Nachricht zu erstellen, Konqueror öffnet per DCOP ein Fenster mit einer bestimmten URL und KWord erlaubt es, die Eigenschaften von Dokumenten zu ändern.

Interfaces mit Kdcop erkunden

Weil DCOP so viele Funktionen besitzt, wirkt es auf den ersten Blick etwas unübersichtlich. Das grafische Werkzeug »kdcop« verschafft Abhilfe: Es ordnet die einzelnen Applikationen in einer Hierarchie an. Die erste Ebene zeigt alle KDE-Programme, die im Moment laufen. In der zweiten Ebene liegen die vorhandenen Interfaces einer Applikation. Jedes Interface bietet in einer weiteren Ebene eine Liste von Methoden an.

Einige Applikationen erscheinen lediglich einmal in der Interface-Liste, das sind die so genannten Unique Applications wie KMail oder KWin, von denen immer nur eine Instanz läuft. Andere Programme finden sich möglicherweise mehrmals in der Liste, sie lassen sich aber anhand der Prozess-ID unterscheiden, die Kdcop anzeigt.

Nach dem Start einer Konqueror-Instanz erscheint in der Kdcop-Hierarchie der Eintrag »konqueror- PID«. Er bietet neben einer Reihe von Interfaces auch »KonquerorIface (Voreinstellung)« an. Dieses Interface enthält unter anderem die Methode »createNewWindow(QString url)«. Ein Doppelklick darauf öffnet ein Fenster (siehe Abbildung 1), in dem der Bediener eine URL angibt. Nach dem Bestätigen mit »OK« sendet Kdcop eine DCOP-Nachricht an den Konqueror, der die URL in einem neuen Fenster lädt.


Abbildung 1: Kdcop (links) ist eine grafische Oberfläche für DCOP-Operationen. Der Benutzer hat in diesem Beispiel die Methode »createNewWindow()« (linkes Fenster) durch Doppelklick ausgewählt. Im daraufhin erscheinenden Fenster (Vordergrund Mitte) gibt er die URL ein, die Konqueror in einem neuen Fenster öffnet.

KDE weckt mit Musik

Die Methoden, die Kdcop anzeigt, sind überall einsetzbar: Im Folgenden soll der Multimediaplayer Juk jeden Morgen zu einer bestimmten Zeit Musik abspielen. Juk selbst hat keine solche Alarmfunktion, dafür ist die zweite Applikation KAlarm zuständig. DCOP ist dazu prädestiniert, diese beiden Programme zusammenarbeiten zu lassen.

Ein Klick auf »Neu« in KAlarm öffnet einen Dialog, dort wählt der Anwender als Aktion »Befehl« aus und zieht per Drag & Drop die Methode »juk | Player | play()« aus Kdcop ins Eingabefeld. Dort erscheint dann »dcop juk Player play« (siehe Abbildung 2). Nach dem Einstellen der gewünschten Uhrzeit ist der Wecker fertig eingerichtet.


Abbildung 2: Kdcop unterstützt Drag & Drop. Die Methode »play()« wurde einfach vom Kdcop-Fenster in die Eingabezeile von KAlarm gezogen. Das Tool »dcop« ruft die Methode auf.

Es bietet sich mit dieser Methode ebenfalls an, Programme per Shellskript zu steuern. Das Tool, um DCOP von der Kommandozeile zu kontrollieren, heißt »dcop«. Dieses Programm stellt die Baumstruktur, die Kdcop anzeigt, auf der Kommandozeile dar. Ein einfacher Aufruf gibt eine Liste aller laufenden KDE-Applikationen aus.

Mit einem Anwendungsnamen als Argument zeigt »dcop« die zur Verfügung stehenden Interfaces an. Wenn das Tool zusätzlich als Argument noch den Namen eines Interface erhält, gibt es eine Liste an Methoden dieses Interface aus. Der folgende Aufruf veranlasst KDE beispielsweise dazu, zum zweiten virtuellen Desktop zu wechseln:

dcop kwin KWinInterface setCurrentDesktop 2
Diesen Artikel druckenDiesen Artikel weiterempfehlen Diesen Artikel kommentieren Newsletter abonnieren
Share/Bookmark
Ähnliche Artikel
ÜbersetzO-matik Vims Skriptsprache praktisch erklärt
Allzweckmittel Rich Internet Applications mit Zkoss 5
Programme von Welt Software internationalisieren mit Gettext
Brave GNU World Die monatliche GNU-Kolumne
Im Gleichklang Synchronisations-Werkzeuge
Ready, Set, Go! Google erfindet neue Programmiersprache
Whitepaper
Usage Landscape Enterprise Open Source Data Integration

Die Nachfrage nach Datenintegrationslösungen für Unternehmen ist zunehmend gestiegen und vor allem das Interesse an Open Source Technologien wird immer größer. Doch wie und von wem werden Open Source Datenintegrationslösungen genutzt und welches Nutzungsverhalten lässt sich daraus ableiten? Das vorliegende White Paper präsentiert die Erfahrungswerte von über 1000 Open Source Nutzern und liefert fundierte Antworten auf diese Fragen.

Download PDF (Registrierung erforderlich)
Daten Migration - Eine Publikation von Bloor Research

Datenmigrationsprojekte überschreiten häufig das Budget, neigen zu Verzögerung und werden unter Umständen komplett abgebrochen. Bloor Research ist eines der weltweit führenden IT-Forschungs-, Analyse- und Beratungsunternehmen und wird in dem vorliegenden White Paper die wichtigsten Aspekte dieser Problematik näher beleuchten. Ferner werden praktische Empfehlungen für erfolgreiche Migrationsprojekte gegeben, die Sie auf Ihr nächstes Projekt übertragen können.

Download PDF (Registrierung erforderlich)
Kommentare (0)