X und Motif: Einführung in die Programmierung des Motif-Toolkits und des X-Window-Systems

Author:   Klaus Gottheil ,  Hermann-Josef Kaufmann ,  Thomas Kern ,  Rui Zhao
Publisher:   Springer-Verlag Berlin and Heidelberg GmbH & Co. KG
Edition:   Softcover reprint of the original 1st ed. 1992
ISBN:  

9783642773099


Pages:   694
Publication Date:   23 December 2011
Format:   Paperback
Availability:   Manufactured on demand   Availability explained
We will order this item for you from a manufactured on demand supplier.

Our Price $184.77 Quantity:  
Add to Cart

Share |

X und Motif: Einführung in die Programmierung des Motif-Toolkits und des X-Window-Systems


Add your own review!

Overview

Full Product Details

Author:   Klaus Gottheil ,  Hermann-Josef Kaufmann ,  Thomas Kern ,  Rui Zhao
Publisher:   Springer-Verlag Berlin and Heidelberg GmbH & Co. KG
Imprint:   Springer-Verlag Berlin and Heidelberg GmbH & Co. K
Edition:   Softcover reprint of the original 1st ed. 1992
Dimensions:   Width: 17.00cm , Height: 3.60cm , Length: 24.20cm
Weight:   1.184kg
ISBN:  

9783642773099


ISBN 10:   3642773095
Pages:   694
Publication Date:   23 December 2011
Audience:   Professional and scholarly ,  Professional & Vocational
Format:   Paperback
Publisher's Status:   Active
Availability:   Manufactured on demand   Availability explained
We will order this item for you from a manufactured on demand supplier.
Language:   German

Table of Contents

1 Einleitung.- 1.1 Das Motif-Toolkit.- 1.2 Lesehinweise.- 1.3 Weiterführende Literatur.- A Überblick und Konzepte.- 2 Fenster zur Welt.- 2.1 Wozu Windows?.- 2.2 Window-Historie.- 3 X-Windows machen’s möglich.- 3.1 Server und Client.- 3.2 Windows.- 3.3 Grafik im Raster.- 3.3.1 Grundlagen der Rastergrafik.- 3.3.2 Grafikausgaben mit der Xlib.- 3.4 Ereignisse werfen ihre Schatten voraus.- 3.5 Wunschlisten für Benutzer.- 3.6 Ein kleines Beispiel.- 4 Das Motif-Toolkit.- 4.1 Die Begriffswelt der Widgets.- 4.1.1 Klassen und Instanzen.- 4.1.2 Ein Baum von Klassen.- 4.1.3 Widgets, Windows und Shells.- 4.2 Widgets konkret.- 4.2.1 Das Hauptprogramm von xtime.- 4.2.2 Die Widgets erzeugen.- 4.2.3 Den Dialog organisieren.- 4.2.4 Der letzte Schliff.- B Programmieren mit Motif.- 5 Arbeiten mit X.- 5.1 Starten von X.- 5.1.1 Server, Clients und Displays.- 5.1.2 Die Maus.- 5.1.3 Das Programm xinit.- 5.1.4 Erweiterungen für .login und .cshrc.- 5.2 Terminals im Fenster.- 5.3 Schneiden und Kleben.- 5.4 Fenstergeometrie.- 5.5 Farben.- 5.6 Zeichensätze.- 5.7 Ressourcen.- 5.8 Ressourcen in den Server laden.- 5.9 Motif-Window-Manager.- 5.9.1 Starten des mwm.- 5.9.2 Mwm-Ressourcen.- 5.9.3 Menüs.- 5.9.4 Funktionen.- 5.9.5 Beispiel für ein Konfigurations-File.- 5.9.6 Im Brennpunkt: der Tastaturfokus.- 5.9.7 Icons selbstgemacht.- 6 Programmieren mit Xt und Motif.- 6.1 Hello World zum zweiten.- 6.1.1 Namenskonventionen und Bibliotheken.- 6.1.2 Include-Files.- 6.1.3 Initialisierung.- 6.1.4 Einfache Fehlerbehandlung.- 6.1.5 Keine Applikation ohne Shell.- 6.1.6 Das Label-Widget.- 6.1.7 Realisierung einer Widget-Hierarchie.- 6.1.8 Ereignisse ohne Ende: die Event-Schleife.- 6.2 Initialisierung mit Komfort.- 6.3 Der Default-Application-Context.- 6.4 Optionen.- 6.5 Wichtige Datentypen.- 6.6 Argumentlisten.- 6.7 Mehr über Argumentlisten.- 6.8 Erzeugen und Zerstören von Widgets.- 6.9 Callbacks.- 6.10 Variable Parameterlisten.- 7 Der Aufbau von Formularen.- 7.1 Das Beispiel „Software-Entwicklung”.- 7.1.1 Bedienung und Aufbau.- 7.1.2 Dialogobjekte und Layout-Widgets.- 7.1.3 Ein ganz normales Hauptprogramm.- 7.1.4 Ein einzeiliges Formular.- 7.1.5 Geschachtelte Formulare.- 7.1.6 Callback-Routinen für die Kommandos.- 7.2 Allgemeines zur Beschreibung von Widget-Klassen.- 7.3 Geometrie und Farben der Dialogobjekte.- 7.4 Das Label-Widget.- 7.4.1 Compound-Strings im Label-Widget.- 7.4.2 Bilder im Label-Widget.- 7.4.3 Ausrichten des Label-Inhaltes.- 7.4.4 Trennen mit einem Separator-Widget.- 7.5 PushButton- Widgets.- 7.5.1 Verschiedene Callback-Listen.- 7.5.2 Das Erscheinungsbild eines Push-Buttons.- 7.5.3 Ein Widget abschalten: Die Ressource XmNsensitive.- 7.5.4 Vorgefertigte Buttons.- 7.6 Der Toggle-Button.- 7.6.1 Zustand eines Toggle-Buttons.- 7.6.2 Zustandsänderungen im Programm.- 7.6.3 Markierungen und Radio-Buttons.- 7.7 Das Text-Widget.- 7.7.1 Bedienung eines Text-Widgets.- 7.7.2 Der Text im Widget.- 7.7.3 Das Aussehen des Text-Widgets.- 7.7.4 Die Callback-Routinen eines Text-Widgets.- 7.7.5 Ein einfacher Text-Editor.- 7.7.6 Text-Widgets mit Scrollbars.- 7.7.7 Text-Widgets für Fortgeschrittene.- 7.7.8 Eine spezielle Widget-Klasse für einzeilige Texte.- 7.8 Piazieren mit dem RowColumn-Widget.- 7.8.1 Die verschiedenen Varianten eines RowColumn-Widgets.- 7.8.2 Freies Piazieren im RowColumn-Widget.- 7.8.3 Kinder einheitlicher Größe.- 7.8.4 Kinder gleicher Höhe oder Breite.- 7.8.5 Einheitliche Ressourcen für die Kinder.- 7.9 Ein universelles Layout-Widget, das Form-Widget.- 7.9.1 Constraint-Ressourcen.- 7.9.2 Plazierung der oberen Kante eines Kindes.- 7.9.3 Kinder flexibler Größe.- 7.10 Form-Widgets im Einsatz.- 7.10.1 Ein Form-Widget anstelle eines RowColumn-Widgets.- 7.10.2 Dehnbare Eingabezeilen.- 7.10.3 Layout im Ressourcen-File.- 7.10.4 Tabellen mit dem Form-Widget.- 7.11 Die Superklassen der Layout-Widgets.- 7.11.1 Layout-Widgets im Motif-Toolkit.- 7.11.2 Verschiedene Maßeinheiten.- 7.11.3 Schatten am Layout-Widget.- 8 Formulare im Zusammenspiel.- 8.1 Shell-Widgets als „Tor“zum Window-Manager.- 8.1.1 Ende nur auf Bestätigung.- 8.1.2 Dialoghierarchie.- 8.1.3 Shell-Hierarchie und Popup-Shells.- 8.1.4 Klassenhierarchie der Shell-Widgets.- 8.1.5 Zusammenspiel mit dem Window-Manager.- 8.1.6 Spezielle Ressourcen für den Fensterrahmen.- 8.1.7 Tastaturfokus und Tab-Groups.- 8.1.8 Begriffe.- 8.2 Meldungen für den Benutzer.- 8.2.1 Die Bestandteile einer Message-Box.- 8.2.2 Verschiedene Formen einer Message-Box.- 8.3 Das Bulletin-Board.- 8.3.1 Das Bulletin-Board als Metaklasse für Layout-Widgets.- 8.3.2 Bulletin-Boards und Shell-Widgets.- 8.3.3 Modale Formulare.- 8.3.4 Rahmen, Buttons und Fonts.- 8.4 Mehrere Formulare mit gleichem Aufbau.- 8.4.1 Interaktive Erzeugung eines Formulars.- 8.4.2 Das Formular und die Formulardatenstruktur.- 8.4.3 Eine Shell wird zerstört.- 8.4.4 Hierarchien.- 8.4.5 Mehrere Application-Shells.- 8.5 Dateien auswählen.- 8.5.1 Zur Bedienung einer File-Selection-Box.- 8.5.2 Die Widget-Klasse XmFileSelectionBox.- 8.5.3 Eine File-Selection-Box für jedes Arbeitsformular.- 8.5.4 Toggle-Buttons zur Steuerung des Datenflusses.- 8.6 Strings auswählen.- 8.6.1 Die Widget-Klasse XmSelectionBox.- 8.6.2 String-Listen und Callbacks der Selection-Box.- 8.6.3 Anwendungen einer Selection-Box.- 8.6.4 Die Work-Area einer Selection-Box.- 8.6.5 Prompt-Dialog-Box als leere Dialogbox.- 8.6.6 Die Widget-Klasse XmList.- 8.6.7 Verschiedene Selektionsarten.- 8.6.8 Ein List-Widget mit Scrollbars.- 8.7 Das Scrollbar-Widget.- 8.7.1 Widgets mit dem Scrollbar verschieben.- 8.7.2 Eine universelle Zeichenfläche.- 8.7.3 Die Länge des Balkens.- 8.7.4 Ein Widget verschieben.- 8.7.5 Andere Widgets mit Scrollbars.- 8.7.6 Weitere Ressourcen eines Scrollbars.- 8.7.7 Zahlen auf einer Skala darstellen.- 8.8 Aspekte der Fehlerbehandlung.- 8.8.1 Vorsorge gegen Fehlbedienung.- 8.8.2 Fehler im Text-Widget.- 8.8.3 Jede Änderung im Text prüfen.- 8.8.4 Fehlermeldungen aus dem Ressourcen-File.- 8.8.5 X-Toolkit- und Xlib-Fehler.- 8.8.6 Die lokale Event-Schleife — einfach, aber unsauber.- 8.9 Die letzte Version des Programms soft.- 8.10 Auf der Suche nach Widgets und Ressourcen.- 8.10.1 Die richtige Widget-Klasse.- 8.10.2 Die Ressourcen für den gewünschten Effekt.- 8.10.3 Widgets ohne Window: Gadgets.- 9 Grafik.- 9.1 Der Grafik-Testrahmen grtest.- 9.2 Farben.- 9.2.1 Was kann der Bildschirm?.- 9.2.2 Farben erfragen.- 9.2.3 Öffentliche Einträge in der Farbtabelle.- 9.2.4 Private Einträge in der Farbtabelle.- 9.2.5 Einträge in der Farbtabelle freigeben.- 9.2.6 Farbtabellen einrichten.- 9.3 Muster.- 9.3.1 Pixmaps erzeugen und zerstören.- 9.3.2 Pixel-Daten in der Applikation bearbeiten.- 9.3.3 Bitmap-Files.- 9.4 Buchstaben.- 9.4.1 Fonts suchen.- 9.4.2 Fonts laden und wieder freigeben.- 9.4.3 Informationen über Fonts einholen.- 9.5 Grafikkontexte.- 9.5.1 Grafikkontexte verwalten.- 9.5.2 Attribute von allgemeinem Interesse.- 9.6 Die Grafikressourcen für grtest.- 9.7 Grafik ausgeben.- 9.7.1 Linien zeichnen.- 9.7.2 Flächen füllen.- 9.7.3 Text schreiben.- 9.7.4 Pixmaps ausgeben.- 9.7.5 Flächen löschen.- 9.8 Die Grafikprimitiven für grtest.- 9.9 Der Cursor.- 10 Grafikdaten verwalten.- 10.1 Grafikdaten in Listenform.- 10.2 Grafikdaten als Objekte.- 10.2.1 Objektorientierte Programmierung.- 10.2.2 Objekte und Klassen in C.- 10.2.3 Die grafische Datenstruktur.- 11 Ereignisse intim.- 11.1 Datentypen für Events.- 11.2 Events auswählen.- 11.3 Event-Typen im Detail.- 11.3.1 Tastatur- und Maus-Events.- 11.3.2 Window-Eintritt und-Austritt.- 11.3.3 Expose-Events.- 11.3.4 Tastaturfokus.- 11.3.5 Window-Änderungen.- 11.3.6 Sonstige Events.- 11.4 Der Grafikeditor gredi.- 11.5 Events selbst behandeln.- 11.6 gredi mit Event-Handlern.- 11.7 Actions.- 11.7.1 Action-Routinen bekannt machen.- 11.7.2 Translation-Tables in der Applikation ändern.- 11.7.3 Eigene Translation-Tables schreiben.- 11.7.4 Tasten umcodieren.- 11.8 gredi mit Action-Routinen.- 11.9 Eingaben beschleunigen.- 12 Menüs à la carte.- 12.1 Pulldown-Menüs.- 12.1.1 Pulldown-Menüs im Detail.- 12.1.2 Ein einfaches Pulldown-Menü.- 12.1.3 Hierarchische Pulldown-Menüs.- 12.2 Popup-Menüs.- 12.2.1 Erzeugung einer Popup-Pane.- 12.2.2 Testrahmen für Popup-Menüs.- 12.3 Option-Menüs.- 12.3.1 Der Aufbau eines Option-Menüs.- 12.3.2 Ein Beispiel für das Option-Menü.- 12.4 Beschleunigung.- 12.4.1 Mnemonics.- 12.4.2 Accelerators.- 13 Prozeßkommunikation.- 13.1 Grundlagen.- 13.2 Atome speichern Namen.- 13.3 Fenster haben Properties.- 13.3.1 Properties lesen.- 13.3.2 Properties erzeugen und verändern.- 13.3.3 Portabilitätsprobleme bei Strukturen.- 13.3.4 Properties löschen.- 13.3.5 Properties und Events.- 13.3.6 Vordefinierte Property-Namen.- 13.4 Kommunizieren mit Events.- 13.4.1 Properties und ClientMessage-Events im Zusammenspiel.- 13.5 Selektionen.- 13.6 Das Motif-Clipboard.- 13.6.1 Die Clipboard-Schnittstelle.- 13.6.2 Daten auf das Clipboard kopieren.- 13.6.3 Daten vom Clipboard lesen.- 13.6.4 Verschiedene Formate.- 13.6.5 Große Datenmengen.- 13.7 Kommunikation mit dem Window-Manager.- 13.7.1 Properties für den Window-Manager.- 13.7.2 Ein Property für Protokolle.- 13.7.3 Window-Manager-Protokolle am Beispiel.- 14 Spezielle Callbacks.- 14.1 Callback-Routinen mit Verzögerung.- 14.2 Callbacks an File-Descriptoren.- 14.3 Callbacks für die Wartezeiten.- C Programmierung von Widget-Klassen.- 15 Klassengesellschaft.- 15.1 Die Klassenhierarchie von Motif.- 15.2 Der Aufbau einer Widget-Klasse.- 16 Die Basisklassen der Toolkit-Intrinsics.- 16.1 Die Klasse Core.- 16.1.1 Der Klassen-Record von Core.- 16.1.2 Der Instanzen-Record von Core.- 16.2 Die Klasse Composite.- 16.2.1 Der Klassen-Record von Composite.- 16.2.2 Der Instanzen-Record von Composite.- 16.3 Die Klasse Constraint.- 16.3.1 Der Klassen-Record von Constraint.- 16.3.2 Der Instanzen-Record von Constraint.- 16.4 Abarbeitung der Felder des Klassen-Records.- 16.5 Das Ressourcen-Array eines Widgets.- 16.6 Die Funktionen einer Widget-Klasse.- 16.6.1 Die Funktion initiaiize().- 16.6.2 Die Funktion resize().- 16.6.3 Die Funktion expose().- 16.6.4 Die Funktion set_values().- 16.6.5 Die Funktion destroy().- 16.7 Klassen- und Instanzenzeiger.- 17 Die Klasse XmIconButton.- 17.1 IconB.h — das öffentliche Include-File.- 17.2 IconBP.h — das private Include-File.- 17.3 IconB.c — das Source-File.- 17.3.1 Das Ressourcen-Array.- 17.3.2 Initialisierung des Klassen-Records.- 17.3.3 Funktionen des Icon-Buttons.- Anhang: Quelltexte.- A.1 Textausgaben in Callback-Routinen mit langer Ausführungszeit.- A.2 Benutzungsoberfläche für Bourne-Shells.

Reviews

""...der Einstieg ins Thema ist sehr steil, doch die Verfasser haben sich bemüht und die Didaktik ist ihnen gut gelungen.... man findet das Wichtigste über X. Ein ausgezeichnetes Buch."" (mc) ""Insgesamt ist der Text leicht lesbar, wozu auch der ungewöhnlich lockere Stil beiträgt.... eine rundum gelungene Einführung in die Programmierung dreier Software-Systeme."" (iX) ""Das Buch gefällt durch seinen klaren und übersichtlichen Aufbau. Die zahlreichen Programmierbeispiele und praktischen Hinweise hinterlassen einen sehr guten Eindruck. Für eine Einführung in das Motif-Toolkit ist das Buch daher sehr zu empfehlen."" (HMD)


. ..der Einstieg ins Thema ist sehr steil, doch die Verfasser haben sich bem ht und die Didaktik ist ihnen gut gelungen.... man findet das Wichtigste ber X. Ein ausgezeichnetes Buch. (mc) Insgesamt ist der Text leicht lesbar, wozu auch der ungew hnlich lockere Stil beitr gt.... eine rundum gelungene Einf hrung in die Programmierung dreier Software-Systeme. (iX) Das Buch gef llt durch seinen klaren und bersichtlichen Aufbau. Die zahlreichen Programmierbeispiele und praktischen Hinweise hinterlassen einen sehr guten Eindruck. F r eine Einf hrung in das Motif-Toolkit ist das Buch daher sehr zu empfehlen. (HMD)


Author Information

Tab Content 6

Author Website:  

Customer Reviews

Recent Reviews

No review item found!

Add your own review!

Countries Available

All regions
Latest Reading Guide

Aorrng

Shopping Cart
Your cart is empty
Shopping cart
Mailing List