Linux-Benutzeroberflächen mit Mandrakes libDrakx

Beginnen wir mit etwas sehr Einfachem. Die Anwendung in Listing A zeigt eine Eingabeaufforderung (prompt) und eine „OK“-Schaltfläche, die das Programm schließt. Wie man in Abbildung A und B sehen kann, sieht der Anwender im Grunde das gleiche Interface, egal ob in der Konsole oder bei Verwendung der GUI.

Abbildung B
Abbildung B

Das sieht ziemlich einfach aus. Doch wie funktioniert es? Schauen wir uns den Code Zeile für Zeile an.

  • Zeile 1: Dies ist eine Standard-Script-Header in Perl.
  • Zeile 3: Wir weisen Perl an, /usr/lib/libDrakx zum Bibliothekspfad (Library Path) hinzuzufügen.
  • Zeile 5: Interaktive Pulls im Core des drak-Toolkits. Das werden wir später ausführlicher behandeln.
  • Zeile 6: Dies ist wieder Standard-Perl; strict erzwingt einfach strikte Regeln für Variablen, Referenzen und Subroutinen, wenn der Code an den Perl-Interpreter geleitet wird.
  • Zeile 8: Wir erschaffen eine neue Benutzeroberfläche.
  • Zeile 10: ask_warn ist eine einfache Meldung mit einer „OK“-Schaltfläche. Das erste Argument ist der Fenstertitel, das zweite die angezeigte Meldung. Das Format „_(“ ist nicht erforderlich, aber MandrakeSoft verwendet es zur Vereinfachung der Integration von Dateien für die Übersetzung von Sprachen, damit der Text, je nach lokaler Konfiguration des Systems, in der Muttersprache des Anwenders angezeigt wird.
  • Zeile 12: Dies schließt die UI einfach aus.

Die Variable $DISPLAY in der Umgebung des Anwenders bestimmt den Grafikmodus. Würde man den Code innerhalb von X mit DISPLAY=0 ausführen, würde man die GUI-Version zu sehen bekommen. Schaltet man die Variable DISPLAY aus (unset DISPLAY), sieht man die Text-basierte Version. Die Entscheidung darüber, wie zu verfahren ist, findet in /usr/lib/libDrkx/interactive.pm statt, wie in Listing B gezeigt.

Themenseiten: Anwendungsentwicklung, Linux, Open Source, Software

Fanden Sie diesen Artikel nützlich?
Content Loading ...
Whitepaper

Artikel empfehlen:

Neueste Kommentare 

Noch keine Kommentare zu Linux-Benutzeroberflächen mit Mandrakes libDrakx

Kommentar hinzufügen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *