Galileo Computing < openbook >
Galileo Computing - Bücher zur Programmierung und Softwareentwicklung
Galileo Computing - Bücher zur Programmierung und Softwareentwicklung


'Wie werde ich Unix-Guru' als Buch bestellen
A. Willemer
Wie werde ich UNIX-Guru
I  ANWENDUNG
Know-How für Unix/Linux-User: Einführung, Shell, Befehle, Hilfe, Arbeit mit Dateien, Editoren, Reguläre Ausdrücke, nützliche Tools, Hardware.

II  ADMINISTRATION
Tools, Systemstart, Benutzer verwalten, Hardware konfigurieren, Software installieren, Datensicherung, Tuning, Kernel

III  NETZWERK
Client/Server Systeme, TCP/IP, Routing, IPv6, Internet-Dienste, DHCP, Webserver, Firewalls

IV  DAS X-WINDOW SYSTEM
Die grafische Oberfläche von UNIX einrichten und nutzen

V  PROGRAMMIERUNG VON SHELLSKRIPTEN
Automatisieren von Tasks durch Shell-Skripte.

VI  PERL
Interpreter, Syntax, Variablen, Steuerung, Funktionen, UNIX-Aufrufe, GUIs mit Tk

VII  PROGRAMMIERWERKZEUGE
C-Compiler, Analyse-Tools, CVS, yacc, diff

VIII  UNIX-SYSTEMAUFRUFE
UNIX-Befehle in eigenen Programmen nutzen

IX  LITERATUR
Weiterführende Literatur zu UNIX und LINUX

 
Galileo Computing / <openbook> / "Wie werde ich UNIX-Guru ?"
« Der Fenstermanager Grafische Oberfläche unter UNIX X Window starten »

Unterabschnitte
  • Xlib und X Toolkit Intrinsics
  • Widget Sets

Der X-Client und seine Bibliotheken

Ein X-Client ist jedes Programm, das für X geschrieben wurde. Aus der Sicht des Programmierers unterscheidet sich die Programmierung einer Anwendung für X nicht grundlegend von der für MS Windows oder für Macintosh. Die mögliche Netzverteilung, die Konfigurierbarkeit und vieles mehr übernehmen die Bibliotheken, die beim Erstellen des Programmes eingebunden werden.

Xlib und X Toolkit Intrinsics

Einer Anwendung, also einem X-Client, ist die Kommunikation mit dem X-Server, die ja auch über das Netz gehen kann, vollkommen verborgen. Diese Leistung erbringt die Bibliothek Xlib. Die Xlib enth"alt alle Bestandteile, die zu einer normalen Grafikschicht geh"oren. Alle Grafikausgaben werden "uber das X-Protokoll an den X-Server versandt. Die Xlib verf"ugt darüber hinaus "uber einige Objekte. So kennt die Xlib beispielsweise Fenster und Mauszeiger. Allerdings sind die Fenster des Xlib nicht viel mehr als Rechtecke, die die Ereignisse empfangen, die in ihren Grenzen ausgelöst werden. Es ist m"oglich, Applikationen zu schreiben, die allein auf der Xlib basieren. Ein Beispiel daf"ur ist xcalc, der Taschenrechner, der bei jeder X-Auslieferung zum Standardumfang geh"ort. Allerdings ist eine X-Anwendung, die nur auf der Xlib basiert, eher untypisch, da sie aufwändig zu programmieren ist.


Der Taschenrechner xcalc

Die Toolbox Intrinsics ist eine Bibliothek, die auf der Xlib aufsetzt und die Verwaltung von Widgets "ubernimmt. Sie stellt selbst kein Widget-Set zur Verf"ugung, sondern nur das Grundgerüst und die Grundfunktionen zur Erstellung eines Sets. Daneben verwaltet sie die Eigenschaften der Widgets und stellt dem Anwendungsprogrammierer die Funktionen zum Erzeugen, Darstellen und Entfernen von Widgets zur Verf"ugung.

Eine Aufgabe der Toolbox liegt in der Verwaltung der Eigenschaften von Widgets. Diese so genannten Ressourcen betreffen Farbe, Ausdehnung, Beschriftung und Ereignisausl"osung. Sie k"onnen durch frei editierbare Dateien, die so genannten Ressourcedateien, ver"andert werden. Die Verwaltung dieser Einstellungen wird durch die Intrinsics "ubernommen.

Widget Sets

Ein Widget Set ist sozusagen der Satz von Bausteinen, aus denen ein X-Programm zusammengesetzt wird. Sichtbar wird ein Widget Set vor allem an den Kontrollelementen. Das Aussehen der Kontrollelemente hat einen erheblichen Einfluss auf den Gesamteindruck der Applikation. Das Widget Set und die darunter liegenden Bibliotheken liegen normalerweise als dynamische Libraries auf dem Rechner.

Motif war einige Zeit der Standard für kommerzielle X-Anwendungen. Man fand Motif auf jedem relevanten UNIX System. Lediglich unter Linux ist es selten vorhanden, da Lizenzgebühren anfallen. Dennoch kann man Motif-Programme auch unter Linux laufen lassen, wenn der Programmierer die Library statisch zum Programm bindet. Dadurch werden die Programme natürlich sehr groß und unhandlich.

Das Athena Widget Set ist eines der ältesten Widget Sets, aber es hat den Vorteil, auf jedem X-Window-System kostenlos verfügbar zu sein. Aus diesem Grund sind vor allem die grundlegenden Programme oft mit diesem Widget Set erstellt. Leider ist das Widget Set sehr einfach und lässt viele Kontrollelemente vermissen. Dazu kommt ein für den heutigen Geschmack sehr tristes Aussehen. Unter Linux gibt es eine Variante des Athena Widget Set, die mit dem heute üblichen 3D-Effekt verschönert wurde. Alle Programme, die den Athena Widget Set verwenden, erhalten dieses Aussehen, wenn dieser Set installiert ist.


Ein Programmfenster mit Widget

Als das Athena Widget Set in die Jahre gekommen war, schlossen sich einige UNIX-Hersteller zusammen, um einen kommerziellen Standard für ein Widget Set zu schaffen. Das Ergebnis war Motif. Motif ist nicht nur wesentlich eleganter im Aussehen, es brachte auch neue Kontrollelemente mit, die man beim Athena Widget Set schmerzlich vermisste. Vor allem aber hatte Motif eine andere Benutzerphilosophie. Mit Motif wurde die Bedienung von X an die des Macintosh und damit die von MS Windows angepasst. Motif war allerdings lizenzpflichtig, was dazu führte, dass es unter Linux nur für diejenigen eine Rolle spielte, die kommerzielle Software entwickelten und eine preiswerte Entwicklungsumgebung brauchten. Ein Beispiel für das Aussehen einer typischen Motif-Anwendung ist das HP-UX Administrationstool sam, das Sie auf Seite sampic finden.

Die Widget Sets sind also dafür verantwortlich, dass manche Anwendungen ganz andere Buttons besitzen als andere. Auch die Tatsache, dass sich bei manchen Programmen die Rollbalken völlig anders bedienen lassen, geht auf unterschiedliche Widgets zurück.



« Der Fenstermanager | Grafische Oberfläche unter UNIX | X Window starten »
 
 Zum Katalog
Zum Katalog
Wie werde ich UNIX-Guru?
bestellen
 Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen?
Ihre Meinung

 UNIX/Linux

PHP 4-Workshop

Einstieg in Python

Perl fürs Web

MySQL 4

GNOME 2.0
 Empfehlung

Einstieg in XML
 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
Info

 MyGalileo
Der Service für registrierte Leser:
Zu MyGalileo
Info



Copyright © Galileo Press GmbH 2003
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.
[Galileo Computing]

Galileo Press GmbH, Gartenstraße 24, 53229 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, info@galileo-press.de