Kommander: Unterschied zwischen den Versionen

Aus Linupedia.org
Wechseln zu: Navigation, Suche
K (Formatierung)
(Weiter mit Beispiel 1)
Zeile 8: Zeile 8:
 
'''Die Bedienungsanleitung zu Kommander ist für den Nicht-Programmierer zum großen Teil unverständlich!'''
 
'''Die Bedienungsanleitung zu Kommander ist für den Nicht-Programmierer zum großen Teil unverständlich!'''
  
Hier will nun dieser Wiki-Artikel etwas Hilfestellung leisten. Es wird versucht, dem interessierten Laien den Umgang mit Kommander etwas näher zu bringen. Schaut euch zum Beispiel einmal die Bedienoberfläche für das DVB-Script an: [http://wiki.linux-club.de/opensuse/Bild:Dvb_script_gui.png Screenshot der GUI].
+
Hier will nun dieser Wiki-Artikel etwas Hilfestellung leisten. Es wird versucht, dem interessierten Laien den Umgang mit Kommander etwas näher zu bringen. Schaut euch zum Beispiel einmal die Bedienoberfläche für das [http://wiki.linux-club.de/opensuse/Dvb_script_gui DVB-Script] an: [http://wiki.linux-club.de/opensuse/Bild:Dvb_script_gui.png Screenshot der GUI].
  
 
Ihr werdet vielleicht denken: Sowas schaff ich nicht. Das ist mir zu kompliziert. Dazu sage ich nur: Habt etwas Geduld! Ihr bekommt hier Schritt für Schritt erzählt, wie diese GUI entstanden ist.
 
Ihr werdet vielleicht denken: Sowas schaff ich nicht. Das ist mir zu kompliziert. Dazu sage ich nur: Habt etwas Geduld! Ihr bekommt hier Schritt für Schritt erzählt, wie diese GUI entstanden ist.
Zeile 48: Zeile 48:
 
Bevor ein Dialog gespeichert wird, sollten alle Unterfenster von Kommander geschlossen werden. Nur das Editor-Fenster darf noch zu sehen sein. Tut man das nicht, so kann es passieren, daß Kommander beim Schließen abstürzt und die vermeintlich gespeicherten Änderungen mit sich ins Nirwana nimmt!
 
Bevor ein Dialog gespeichert wird, sollten alle Unterfenster von Kommander geschlossen werden. Nur das Editor-Fenster darf noch zu sehen sein. Tut man das nicht, so kann es passieren, daß Kommander beim Schließen abstürzt und die vermeintlich gespeicherten Änderungen mit sich ins Nirwana nimmt!
  
== <font color="purple">Dialog ausführen (kommander-executor)</font> ==
+
=== <font color="purple">Dialog ausführen (kommander-executor)</font> ===
 
Bevor nun der fertige Kommander-Dialog gestartet werden kann, müssen wir das kmdr-file ausführbar machen : ''Eigenschaften – Berechtigungen''
 
Bevor nun der fertige Kommander-Dialog gestartet werden kann, müssen wir das kmdr-file ausführbar machen : ''Eigenschaften – Berechtigungen''
  
Zeile 85: Zeile 85:
 
* Kommander-Editor öffnen
 
* Kommander-Editor öffnen
 
* Symbolleiste: Exec-Button markieren
 
* Symbolleiste: Exec-Button markieren
* Editorfenster: Linksklick, damit wird der Exec-Button eingefügt
+
* Formular-Fenster: Linksklick, damit wird der Exec-Button eingefügt
* Exec-Button im Editorfenster: Doppelklick
+
* Exec-Button im Formular-fenster: Doppelklick
* Namen für den Knopf eingeben (z.B.: Edit Beispiel 1)
+
* Namen für den Knopf eingeben (z.B.: ''Edit Hauptfenster'')
 
* Rechtsklick auf den Knopf: ''Grösse anpassen''
 
* Rechtsklick auf den Knopf: ''Grösse anpassen''
 
* Rechtsklick auf den Knopf: ''Kommender-Text bearbeiten''
 
* Rechtsklick auf den Knopf: ''Kommender-Text bearbeiten''
* Eingeben: exec("kmdr-editor ~/Spielwiese/beispiel_1.kmdr")
+
* Eingeben: ''exec("kmdr-editor ~/Spielwiese/beispiel_1.kmdr")''
 
* Speichern (geöffnete Unterfenster vorher schließen)
 
* Speichern (geöffnete Unterfenster vorher schließen)
  
Damit ist der erste Dialog fertig und das Editorfenster kann geschlossen werden. Gestartet wird der Dialog durch Klicken auf die Desktopdatei, die wir vorhin erstellt haben.  
+
Damit ist der erste Dialog fertig und das Editorfenster kann geschlossen werden. Gestartet wird der Dialog durch Klicken auf die Desktopdatei, die wir vorhin erstellt haben.
  
 +
=== <font color="purple">Die Details</font> ===
 +
==== <font color="brown">Das Editorfenster</font> ====
 +
Um Kommander etwas näher kennen zu lernen. werden wir uns bei diesem ersten Beispiel etwas genauer damit befassen, was wir da nun programmiert haben.
 +
 +
So, wie in diesem [http://wiki.linux-club.de/opensuse/Bild:Kommander_editor.png Screenshot] zu sehen, sollte das Editorfenster jetzt aussehen.
 +
 +
Oben erkennen wir die Symbolleiste. Zeigen wir mit dem Cursor auf eines dieser Symbole, so wird dessen Bedeutung angezeigt. Der Exec-Button ist zum Beispiel ein kleines Quadrat mit der Beschriftung ''OK''. In der Mitte das Formular, in das wir vorhin den Exec-Button kopiert und benannt haben. Links ist das Eigenschaftsfenster desjenigen Teils zu sehen, das gerade markiert ist. Ist nichts markiert, so sieht man die Eigenschaften des Formulars.
 +
 +
==== <font color="brown">Das Eigenschaftsfenster</font> ====
 +
Auf dem Screenshot sehen wir die Eigenschaften unseres Exec-Knopfes:
 +
 +
* '''name:''' Unter diesem Namen wird der Knopf verwaltet. Es empfielt sich, einen sinnvollen Namen zu wählen, um schnell erkennen zu können, welches Symbol was tun soll. Also geben wir einen neuen Namen ein: ''ExecButton_Edit_Hauptfenster''.
 +
* '''text:''' Hier steht die Beschriftung des Knopfes drin. Das & vor dem t legt diesen Buchstaben als Hot-Key fest. Das geschieht automatisch.
 +
 +
Jetzt ändern wir noch den Namen des Formulars selber. Das Eigenschaftsfenster für das Formular erreichen wir durch anklicken einer leeren Stelle im Formular. Den Namen oben ändern in ''Formular_kmdr_Beispiele'' sollte nur noch eine Kleinigkeit für uns sein.
 +
 +
Was nun noch etwas stört, das ist der phantasielose Titel des Formulars. Den wollen wir flugs auch noch ändern:
 +
 +
* '''caption:''' In diese Eigenschaft ''kmdr-Beispiele'' reinschreiben
 +
 +
Das Ändern der Namen mag im Moment wie eine sinnlose Spielerei aussehen. Wenn aber erst einmal 15 Exec-Buttons im Formular vertteilt sind, dann wird man froh darüber sein, sich diese Mühe gemacht zu haben. Denn über diese Namen werden die Symbole nicht nur verwaltet, sondern auch angesprochen. Deshalb sollte man sich auch bei kleineren Formularen konsequent eine sinnvolle Namensgebung angewöhnen.
 +
 +
==== <font color="brown">Der Funktionsbrowser</font> ====
 
will be continued
 
will be continued

Version vom 26. Oktober 2008, 15:38 Uhr

Höhe=24px
Achtung dieser Artikel ist noch in Arbeit und dient vorläufig nur als Vorlage. Dieser Beitrag zu Linux oder der Abschnitt ist in Bearbeitung. Weitere Informationen findest du hier. Der Ersteller arbeitet an dem Beitrag oder Abschnitt und entsorgt den Wartungsbaustein spätestens 3 Tage nach der letzten Bearbeitung. Änderungen außer Rechtschreibkorrekturen ohne Absprache mit dem Urspungsautor sind möglichst zu vermeiden, solange dieser Baustein noch innerhalb der genannten Frist aktiviert ist.


Einleitung

Kommander ist ein Tool, mit dem man KDE-Dialoge erstellen kann, die über die Möglichkeiten von kdialog hinausgehen. Dieses Programm lässt sich aber auch dazu verwenden, verschiedene Aufgabenstellungen unter einer einheitlichen Bedienoberfläche zusammenzufassen.

Das Bauen von eigenen, also benutzerdefinierten Dialogen, erfordert Programmierkennnisse (C++). Möchte man aber nur eine kleine, einfache GUI mit Kommander-Bordmitteln basteln, so sind Programmierkenntnisse zwar hilfreich, aber nicht unbedingt erforderlich. Dafür stellt sich dem motivierten Anfänger ein anderes Hindernis in den Weg. Und dieses Hindernis heißt Dokumentation.

Die Bedienungsanleitung zu Kommander ist für den Nicht-Programmierer zum großen Teil unverständlich!

Hier will nun dieser Wiki-Artikel etwas Hilfestellung leisten. Es wird versucht, dem interessierten Laien den Umgang mit Kommander etwas näher zu bringen. Schaut euch zum Beispiel einmal die Bedienoberfläche für das DVB-Script an: Screenshot der GUI.

Ihr werdet vielleicht denken: Sowas schaff ich nicht. Das ist mir zu kompliziert. Dazu sage ich nur: Habt etwas Geduld! Ihr bekommt hier Schritt für Schritt erzählt, wie diese GUI entstanden ist.

Eine Bemerkung sei noch erlaubt, bevor wir in medias res gehen.

So ganz ohne Programmierkenntnisse werden wir doch nicht auskommen. Denn, wenn wir eine Bedienoberfläche für ein Bash-Script erstellen wollen, dann müssen wir auch wissen, wie das geht, das Programmieren eines Bash-Scriptes.

Fangen wir also an! Und keine Angst, wir beginnen erst einmal einfach, ganz einfach...

Installieren von Kommander

Ihr wolltet es einfach haben, ihr bekommt es einfach:Kommander ist bei KDE dabei und kann problemlos mit Yast installiert werden:

  • Yast starten und das Root-Passwort eingeben
  • Auswählen: Software installieren oder löschen
  • Bei Suche eingeben: kommander und auf suchen drücken
  • Folgende Pakete auswählen: kommander und kommander-Runtime
  • Akzeptieren

Falls von Yast gefragt werden sollte: Nein, wir wollen keine weiteren Pakete installieren!

Arbeiten mit Kommander

Dialog erstellen (kommander-editor)

Kommander sollte nun irgendwo im KDE-Startmenue bei den Anwendungen unter dem Menuepunkt Entwicklung - Bedienoberfläche zu finden sein. Man suche einfach nach einem Programm mit dem Namen Kommander-Editor!

Auch über die Kommandozeile können wir Kommander starten, indem wir in eine Konsole eintippen: kmdr-editor

Es erscheint das Editor-Fenster von Kommander, in dem wir Datei - neu erstellen auswählen. Im nun erscheinenden Fenster wählen wir dialog aus. Und schon befinden wir uns mitten drin im Editor-Modus und könne einen Dialog (eine GUI) ganz nach unseren Wünschen programmieren.

Dialog speichern

Das funktioniert wie bei jeder Anderen KDE-Anwendung auch:

  • Datei - speichern unter
  • Namen eingeben, unter dem die Datei gespeichert werden soll: pfad_zur_beispieldatei/beispieldatei.kmdr
  • OK

Dabei ist noch folgendes zu beachten:

Bevor ein Dialog gespeichert wird, sollten alle Unterfenster von Kommander geschlossen werden. Nur das Editor-Fenster darf noch zu sehen sein. Tut man das nicht, so kann es passieren, daß Kommander beim Schließen abstürzt und die vermeintlich gespeicherten Änderungen mit sich ins Nirwana nimmt!

Dialog ausführen (kommander-executor)

Bevor nun der fertige Kommander-Dialog gestartet werden kann, müssen wir das kmdr-file ausführbar machen : Eigenschaften – Berechtigungen

  • Den vorhin (fiktiv) programmierten Dialog können wir dann starten, indem wir im Editor-Fenster auf "Exec" klicken.
  • Oder wir machen es wieder mit der Bash und geben in ein Terminal folgenden Befehl ein: kmdr-executor pfad_zur_beispieldatei/beispieldatei.kmdr

Der erste Dialog

Vorbereitung

Wir brauchen ein Verzeichnis, in dem die kmdr-Dateien stehen, mit denen wir experimentieren wollen. Nennen wir es Spielwiese und legen es in unseren persönlichen Ordner. Diesen Namen habe ich gewählt in Anlehnung an die Spielwiese des LC-Wikis . Ein Platz zum Experimentieren eben!

Unser erster mit Kommander-Dialog wird den Namen ~/Spielwiese/beispiel_1.kmdr tragen. Erstellen wir diese Datei also so, wie es vorhin beschrieben wurde.

Dieser Dialog wird dazu verwendet werden, weitere Beispiel-Dialoge zum Editieren aufzurufen bzw. diese Dialoge auszuführen. Es ist daher sinnvoll, ihn möglichst einfach starten zu können, am besten in einer Desktop-Datei. Das geht so:

  • Rechtsklick auf den Desktop: Neu erstellen - Verknüpfung zu Programm (bei Plasma (KDE4) im Ordner ~/Desktop)
  • Name für die Verknüpfung eingeben
  • Evt. über das Zahnrad ein Icon für die Verknüpfung auswählen
  • Reiter Programm wählen
  • Befehl: kmdr-executor ~/Spielwiese/beispiel_1.kmdr
  • OK
  • Bei KDE4 die Desktop-Datei auf die Plasmaoberfläche ziehen

Ein Klick auf das Icon der Desktop-Datei öffnet dann den Auswahldialog, natürlich erst, wenn er programmiert ist. Und das machen wir jetzt: Wir programmieren unseren ersten Dialog...

beispiel_1.kmdr

Zweck

Editieren bzw. Starten von kmdr-Beispieldateien, die im Verzeichnis ~/Spielwiese stehen.

Objekte

Exec-Button

Funktionen

exec

Programmierung

  • Kommander-Editor öffnen
  • Symbolleiste: Exec-Button markieren
  • Formular-Fenster: Linksklick, damit wird der Exec-Button eingefügt
  • Exec-Button im Formular-fenster: Doppelklick
  • Namen für den Knopf eingeben (z.B.: Edit Hauptfenster)
  • Rechtsklick auf den Knopf: Grösse anpassen
  • Rechtsklick auf den Knopf: Kommender-Text bearbeiten
  • Eingeben: exec("kmdr-editor ~/Spielwiese/beispiel_1.kmdr")
  • Speichern (geöffnete Unterfenster vorher schließen)

Damit ist der erste Dialog fertig und das Editorfenster kann geschlossen werden. Gestartet wird der Dialog durch Klicken auf die Desktopdatei, die wir vorhin erstellt haben.

Die Details

Das Editorfenster

Um Kommander etwas näher kennen zu lernen. werden wir uns bei diesem ersten Beispiel etwas genauer damit befassen, was wir da nun programmiert haben.

So, wie in diesem Screenshot zu sehen, sollte das Editorfenster jetzt aussehen.

Oben erkennen wir die Symbolleiste. Zeigen wir mit dem Cursor auf eines dieser Symbole, so wird dessen Bedeutung angezeigt. Der Exec-Button ist zum Beispiel ein kleines Quadrat mit der Beschriftung OK. In der Mitte das Formular, in das wir vorhin den Exec-Button kopiert und benannt haben. Links ist das Eigenschaftsfenster desjenigen Teils zu sehen, das gerade markiert ist. Ist nichts markiert, so sieht man die Eigenschaften des Formulars.

Das Eigenschaftsfenster

Auf dem Screenshot sehen wir die Eigenschaften unseres Exec-Knopfes:

  • name: Unter diesem Namen wird der Knopf verwaltet. Es empfielt sich, einen sinnvollen Namen zu wählen, um schnell erkennen zu können, welches Symbol was tun soll. Also geben wir einen neuen Namen ein: ExecButton_Edit_Hauptfenster.
  • text: Hier steht die Beschriftung des Knopfes drin. Das & vor dem t legt diesen Buchstaben als Hot-Key fest. Das geschieht automatisch.

Jetzt ändern wir noch den Namen des Formulars selber. Das Eigenschaftsfenster für das Formular erreichen wir durch anklicken einer leeren Stelle im Formular. Den Namen oben ändern in Formular_kmdr_Beispiele sollte nur noch eine Kleinigkeit für uns sein.

Was nun noch etwas stört, das ist der phantasielose Titel des Formulars. Den wollen wir flugs auch noch ändern:

  • caption: In diese Eigenschaft kmdr-Beispiele reinschreiben

Das Ändern der Namen mag im Moment wie eine sinnlose Spielerei aussehen. Wenn aber erst einmal 15 Exec-Buttons im Formular vertteilt sind, dann wird man froh darüber sein, sich diese Mühe gemacht zu haben. Denn über diese Namen werden die Symbole nicht nur verwaltet, sondern auch angesprochen. Deshalb sollte man sich auch bei kleineren Formularen konsequent eine sinnvolle Namensgebung angewöhnen.

Der Funktionsbrowser

will be continued