Tiling (Computer)

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

Tiling ist ein Begriff aus der Welt der grafischen Benutzeroberflächen. Man versteht darunter die kachelartige Anordnung von Fenstern nebeneinander, frei von Überdeckungen. Je nach Oberfläche kann Tiling die einzige Möglichkeit sein, mehrere Fenster gleichzeitig auf dem Desktop darzustellen, oder eine Möglichkeit neben anderen.

Auch die technische Anordnung mehrerer Kacheln (engl. tiles) eines Bildes oder einer Grafik nebeneinander wird als Tiling bezeichnet. Die Kacheldarstellung ermöglicht es ein wiederkehrendes Bildelement wiederholt neben- und/ oder untereinander darzustellen, um so den Eindruck einer großen Fläche zu erzeugen. Dieses auch als Parkettierung bezeichnete Verfahren kommt oft bei Hintergrundbildern zum Einsatz, die ein wiederkehrendes Muster bzw. eine Textur darstellen.

Ein anderes Einsatzgebiet der Kacheldarstellung besteht in der Darstellung großformatiger Bilder: hierbei wird das Bild vor der Darstellung in viele Teilbilder zerlegt und nur die Kacheln des darzustellenden Bildausschnitts angezeigt. Auf diese Weise können Bilder bandbreiten- und speicherschonend ausgeliefert werden, die sonst aufgrund ihrer Größe nicht dargestellt werden könnten. Anwendungsgebiete sind Kartendienste wie Google Maps oder hochaufgelöste Panoramabilder (Panos).

Ein vergleichbares Verfahren kommt auch bei der Darstellung so genannter Fotomosaike zur Anwendung. Wird ein Bild aus vielen Einzelbildern zu einem großen Bild zusammengesetzt, spricht man vom Stitching.

Geschichte[Bearbeiten]

Xerox PARC[Bearbeiten]

Als erste graphische Benutzeroberfläche mit Tiling gilt das von Xerox PARC entwickelte CEDAR. Der Xerox Star benutzte ebenfalls Tiling zur Anordnung von Fenstern, kannte jedoch zum Teil auch überlappende Fenster.[1]

Siemens RTL Tiling Window Manager[Bearbeiten]

Ein weiterer früher Fenstermanager mit Tiling war der Siemens RTL Tiling Window Manager aus dem Jahr 1988. Er gilt bis heute als Lehrbeispiel wegen seiner Algorithmen für automatische Größenanpassung, Platzierung, Anordnung und Verkleinern zu Icons sowie Wiederherstellung. RTL lief auf X11R2 und R3, hauptsächlich auf Siemens-eigenen Systemen, wie Sinix.

Andrew Project[Bearbeiten]

Das Andrew-Projekt (AP oder tAP) war ein Desktop-Clientsystem (ähnlich dem frühen Gnome) für X mit einem Fenstermanager, der Tiling und Überlappung beherrschte.

Bekannte Fenstermanager mit Tiling[Bearbeiten]

Microsoft Windows[Bearbeiten]

Microsoft Windows beinhaltet seit Windows 95 einen Fenstermanager der, obwohl er standardmäßig überlappend arbeitet, optional auch mit Tiling arbeiten kann.

Um Fenster als Kacheln anzuordnen, wird zunächst die Taskleiste ausgewählt. Mehrere Fenster können durch Halten der Steuerungstaste (Strg oder Ctrl) während des Klickens ausgewählt werden. Dann folgt ein Rechtsklick und vom Kontextmenü wählt man „Untereinander“ oder „Nebeneinander“ (Windows XP). Diese Funktion wurde bei der Neugestaltung der Taskleiste in Windows 7 nicht wieder eingeführt. Stattdessen ist es möglich, Fenster an den linken bzw. rechten Rand des aktiven Bildschirms zu ziehen (sie dort anzuheften), so dass diese jeweils eine Bildschirmhälfte einnehmen und eine Darstellung zweier Fenster nebeneinander möglich ist.

Mit der Einführung von Windows 8 wurde das Konzept der Kacheldarstellung systemweit eingeführt. Hierbei stellen die Kacheln Programme und die von Mobiltelefonen bekannten Apps in Rahmen eines kachelbasierten Startbildschirms dar. Diese können statische oder dynamische Inhalte anzeigen (Live Tiles).

Geschichte[Bearbeiten]

Die erste Version (Windows 1.0) basierte aus einem Fenstermanager mit Tiling, zu Teil wegen eines Rechtsstreits mit Apple, die die Rechte an der Metapher des Desktops mit überlappenden Fenstern beanspruchten. Aber aufgrund von Beschwerden folgte die nächste Version (Windows 2.0) der Desktop-Metapher. Alle späteren Versionen des Betriebssystems hielten an diesem Ansatz als Standardverhalten fest.

Fremdsoftware[Bearbeiten]

Es gibt Fremdsoftware, die ausgeklügeltere Tiling-Funktionalitäten hinzufügen (in Klammer Lizenz, unter der die Software steht):

  • WindowSizer - Ordnet Fenster als Kacheln an (Shareware)
  • WinSplit - Ordnet Fenster als Kacheln über Tastenkürzel an (Freeware)
  • HashTWM - Fenstermanager mit automatischem Tiling (MIT/X11)
  • GridMove - Ordnet Fenster in ausgeklügelten Layouts an mit Hotkeys und Multimonitor-Unterstützung (Freeware/Donationware)
  • bug.n[2] - Dynamischer Fenstermanager mit Tiling, der versucht die Funktionalität von dwm zu kopieren (GPL)
  • MaxTo - Platziert Fenster an einer benutzerdefinierten Raster durch Überwachen von Fenstern, die maximiert sind oder Hotkeys benutzen (Shareware)
  • Twinsplay - Ordnet Fenster als Kacheln über Tastenkürzel an (Demoware/Closed Source)

X Window System[Bearbeiten]

Im X Window System ist der Fenstermanager ein separates Programm. X selbst setzt vom Ansatz her keinen bestimmten Fenstermanager voraus und die aktuelle X-Protokollversion X11 erwähnt ausdrücklich die Möglichkeit von Fenstermanagern mit Tiling. Der Siemens RTL Tiled Window Manager (veröffentlicht 1988) war der erste, der automatische Strategien für Anordnung und Größe implementierte. Ein weiterer Fenstermanager mit Tiling aus dieser Zeit war der Cambridge Window Manager, entwickelt von IBMs Academic Information System Group.

Danach wurden längere Zeit keine neuen Fenstermanager mit Tiling entwickelt. Im Jahr 2000 wurden die ersten Versionen von larswm und Ion veröffentlicht.

Liste von Fenstermanagern für X mit Tiling[Bearbeiten]

  • awesome - dwm-Derivat mit der Möglichkeit Fenster mit Tags zu versehen
  • Compiz - Obwohl Compiz eigentlich ein Fenstermanager mit Compositing ist, hat er ein Raster-Plug-in, das Tastaturkürzel für Tiling hinzufügt und Fenster im Tiling-Layout erlaubt.
  • dwm erlaubt per Umschalten Tiling-Layouts durch Anklicken eines ASCII-Art-„Icons“ in der Statusleiste. Standardeinstellung ist eine larswm-ähnliche Kombination aus Hauptbereich und Stapelbereich, dargestellt durch a []= character glyph. Es gibt auch ein Nicht-Tiling-Fließlayout, ähnlich
  • Echinus
  • evilwm, welcher erlaubt, Fenster zu verschieben und in der Größe zu ändern, dargestellt durch ein fischähnliches ><>. Es existieren Fremdpatches, um ein Fibonacci-Layout nach dem Goldenen Schnitt, ein Rasterlayout, ein lückenfreies Rasterlayout und eine horizontale Stapelanordnung hinzuzufügen.
  • euclid-wm
  • i3 beabsichtigt, ein verbesserter, dynamischer Fenstermanager mit Tiling, inspiriert durch wmii, zu sein.
  • Ion kombiniert Tiling mit einem Tabbing-Interface. Die Anzeige wird manuell in nichtüberlappende Bereiche (Frames) geteilt. Jeder Frame kann ein oder mehrere Fenster enthalten. Nur eines dieser Fenster ist sichtbar und füllt den gesamten Frame.
  • KWin, der Fenstermanager von KDE, bietet seit Version 4.5 eine experimentelle Tiling-Funktion. Aktuell ist diese aber in der Entwicklungsversion 4.10 entfernt.
  • larswm implementiert eine Form dynamischen Tilings: Die Anzeige wird vertikal geteilt in zwei Bereiche (Tracks). Der linke Track wird mit einem einzelnen Fenster gefüllt. Der rechte Track enthält alle anderen Fenster, eines über dem anderen gestapelt.
  • Lucca WM
  • Matchbox zielt speziell auf mobile Geräte und Embedded-Anwendungen, wo mehrere als Kacheln angeordnete Fenster nicht gut passen. Er erlaubt keine überlappenden Hauptfenster (obwohl, wie bei vielen Fenstermanagern mit Tiling, Dialogfenster „speziell“ mit Stapelmanagement sind), aber er erreicht dies, indem er nur ein Fenster zeigt, statt mehrere Fenster gekachelt anzuzeigen. Dies kann als Ein-Kachel-Layout angesehen werden.
  • Musca beinhaltet manuelles Tiling, Unterstützung für mehrere Bildschirme, virtuelle Desktops und Maus- oder Tastaturnavigation.
  • plpwm ist eine Konfiguration des plwm-Fenstermanager-Toolkits, welches Tiling unterstützt.
  • Qtile ist ein Fenstermanager mit Tiling, geschrieben und konfiguriert in Python.
  • ratpoison - tastaturgesteuerter GNU Screen für X
  • Scrotwm - ein weiterer minimalistischer Fenstermanager mit Tiling
  • StumpWM - ratpoison in Lisp
  • tritium
  • TrsWM
  • WMFS
  • wmii - entwickelt parallel zu dwm vom selben Autor
  • Xmonad - automatischer Fenstermanager mit Tiling, geschrieben und erweiterbar in Haskell

Fremdapplikationen mit Tiling für X.Org[Bearbeiten]

  • Tile ist ein kleines Kommando, welches Tiling unter anderen Fenstermanagern ermöglicht.
  • Stiler (früher bekannt als „Poor man's Tiling Window manager“ (Fenstermanager mit Tiling des armen Mannes)) ist ein einfaches Python-Skript, das Tiling unter jedem Fenstermanager erlaubt.
  • PyTyle ist ein manueller Tilingmanager, der sich in jeden EWMH-konformen Fenstermanager einklinken kann.

Sonstige[Bearbeiten]

Anwendungsprogramme mit Tiling[Bearbeiten]

Obwohl Tiling nicht der Standardmodus von Fenstermanagern auf irgendwelchen weit verbreiteten Plattformen ist, zeigen die meisten Anwendungsprogramme gleichzeitig vorhandene Funktionen in ähnlicher Weise an. Beispiele umfassen E-Mail-Clients, IDEs, Sidebars in Webbrowsern und die kontext-sensitive Hilfe in Microsoft Office. Zusätzlich können HTML-Frames als Implementierung von Tiling basierend auf einer Auszeichnungssprache betrachtet werden. Fenstermanager mit Tiling erweitern diese nützliche Eigenschaft jenseits gleichzeitig vorhandener Funktionen in Anwendungsprogrammen zu gleichzeitig vorhandenen Anwendungsprogrammen innerhalb eines Desktops. Die Dokumentenschnittstelle mit Tabbing kann ein sinnvoller Zusatz zum Tiling sei, da sie mehrere Fenster für dieselbe Funktion auf dem Bildschirm vermeidet.

Referenzen[Bearbeiten]

  1. Xerox Star
  2. bug.n

Siehe auch[Bearbeiten]