1 / 28

OSS und GUIs

Allgemeines (Robert) X Window System (Claudius) GTK/GNOME (Robert). OSS und GUIs. Übersicht. Verteilte Entwicklergemeinde Unterschiedliche Interessen Freie Ideen Breites Feedback Immer mehr Firmen. OSS und GUIs. Allgemeines. Übersicht. Einführung Motivation Geschichte

gryta
Download Presentation

OSS und GUIs

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Allgemeines (Robert) X Window System (Claudius) GTK/GNOME (Robert) OSS und GUIs Übersicht

  2. Verteilte Entwicklergemeinde Unterschiedliche Interessen Freie Ideen Breites Feedback Immer mehr Firmen OSS und GUIs Allgemeines

  3. Übersicht • Einführung • Motivation • Geschichte • Architektur • Technik • Beispiele X Window System

  4. Einführung • X ist ein • verteiltes • intelligentes • geräteunabhängiges • O/S – unabhängiges Windowing System X Window System

  5. Einführung II • X ist ein Windows System für Computer mit Bitmap – Displays • Standard bei Linux, Unix und Unix-ähnlichen System • Client-Server Basierend X Window System

  6. Motivation • ASCII Terminals • 80x24 Zeichen über serielle Verbindung • Ausreichend geringe Datenmenge • Graphische Terminals • 512x512x4 bis hin zu heutigen Auflösungen • Zu hohe Netzlast für „full refresh“ • Neues Protokoll „X“ • Nicht Bildinhalte schicken • sondern Information, wie Bild aufgebaut werden soll X Window System

  7. Geschichte • Konzept erstmalig 1984 am M.I.T • Motivation: platform-unabhängiges Grafiksystem um heterogene System zusammenzuführen • Versionen • X10 (1986) erste verbreitete Version • X11 (1987) heute noch gültige Release • Aktuelle Version: X11R6.7.0 • Seit 1999: X Org (www.x.org) X Window System

  8. Architektur • Client-Server Modell • Display-Server läuft auf Rechner mit graphischem Display und kommuniziert mit Client Programmen • Akzeptiert Request für graphischen Output (Fenster) und sendet User-Input (Tastatur, Maus) zurück • Terminologie aus der Sicht des Programms nicht aus der des Benutzers X Window System

  9. Architektur II X Window System

  10. Kommunikation • Protokoll zw. Client und Server ist netzwerk-transparent • Client und Server können auf gleicher Maschine laufen oder auf verschiedenen – auch verschiedene Hardware und OS. • Beispiel: Simulation auf entferntem Supercomputer berechnen lassen, Anzeige des Ergebnisses auf lokalem Rechner X Window System

  11. Services • Input Handling • Tastatur und Maus Eingaben werden an Clients weitergereicht als Events mittels eines Window-Manager • Window Services • Erstellen und Zerstören von Fenstern • Fenster können hierarchisch angeordnet werden • Clients können Information über Fenster anfordern • Text und Schriften • Texte können mit einer bestimmten Schriftart an einer bestimmten Position gerendert werden • Clients können Information über Schriftarten anfordern • Graphics • Clients können den Server auffordern, pixels, lines, shapes zu zeichnen oder bimap operationen auszuführen X Window System

  12. Protokoll • Request • Client request an action or information • Reply • Server Reply • Nicht alle Requests generieren Antworten • Event • Server schickt Client einen Event • Tastatur, Maus input • Fenster wird bewegt, Grösse geändert etc. • Error • Server schickt einen Error wenn Request ungültig ist • Request kommen in Queue daher muss ein Error nicht umgehend geschickt werden X Window System

  13. X Display Manager • Hält den Server-Prozess am Leben • Connected ihn zu einem physischen Screen • Liefert einen Login-Prompt auf diesem Screen • Display Manager • XDM („Standard“ Display Manager) • GDM (entwickelt von Gnome Project) • KDM (entwickelt von KDE Project) • wdm (window Maker) • entrance (architecture von enlightenment) X Window System

  14. Widget Toolkits • X liefert „Mechanism, not Policy“ • Spezifiziert und liefert keine User-Interface Features wie buttons, menüs etc. • Wird geliefert von • Window Managern • GUI Widget Toolkits • Desktop Environments X Window System

  15. Widget Toolkits II • Frühe GUI Toolkits für X inkludierten • Xaw (Athena Widget Set) • OLIT (OPEN LOOK Intrinsics Toolkit • XView • Motif (CDE „Unix Standard“) • Tk • Neuer Toolkits der letzten Jahre • Qt (KDE, entwickelt von Trolltech) • GTK+ (GNOME, GIMP Tool Kit) • wxWidgets • fltk, Fox… X Window System

  16. Widget Toolkits X Window System CDE on Solaris 8 GNOME 2 KDE 3.1

  17. Beispiel GNOME / GTK+ • …gleich geht’s weiter X Window System

  18. Allgemeines Sicht des Benutzers Sicht des Entwicklers Wie gehts weiter GNOME und HCI Übersicht

  19. Freie Software (Open Source) Firmen: Novell, Red Hat, Sun OS: Linux, Unix, OS X Partnerprojekte Mozilla, OpenOffice.org GNOME und HCI Allgemeines (1)

  20. GNU: GNU is not UNIX GPL: General Public License GIMP: GNU Image Manipulation Program GTK: GIMP Toolkit GNOME: GNU Network Object Model GNOME und HCI Allgemeines (2)

  21. Komplette Oberfläche Einfache Bedienung Konsistente Bedienung (HIG) Einstellungen nur wo nötig Richtige Vorgabewerte GNOME und HCI Sicht des Benutzers (1)

  22. GNOME und HCI Sicht des Benutzers (2)

  23. „Auto-Apply“ Integration (VFS, Adressbuch) Barrierefreiheit Internationalisierung (RTL) GNOME und HCI Sicht des Benutzers (3)

  24. Geschrieben in C Portabel und effizient Objektorientierter Ansatz Basierend auf GTK Sprachanbindungen C++, C#, Java, Perl, Python ... GNOME und HCI Sicht des Entwicklers (1)

  25. HIG (Human Interface Guidelines) Mithilfe von Sun 141 Seiten Genaue Definitionen Generelle Aspekte: Farben Spezielle Aspekte: Toolbars, Menüs, Buttons, Abstände ... GNOME und HCI Sicht des Entwicklers (2)

  26. Dialoge in XML-Dateien Glade: „point and klick“ Laden zur Laufzeit Änderung ohne Kompilation Dynamisches Layout Änderung Fenstergröße, Sprache GNOME und HCI Sicht des Entwicklers (3)

  27. GNOME und HCI Sicht des Entwicklers (3)

  28. Kooperation mit Mozilla Plug and Play Dashboard (http://nat.org) Storage (http://gnome.org/~seth) GNOME und HCI Wie gehts weiter

More Related