Home / Nachrichten / Guadec 2010: Multitouch mit Gtk+

Top-Beiträge

GIMP - Auswahl und Ebenen
(324 Punkte bei 38 Stimmen)
GIMP - Laserschwert
(322 Punkte bei 41 Stimmen)
Panorama ohne Weitwinkel
(272 Punkte bei 16 Stimmen)
Ein erstes Resümee
(247 Punkte bei 20 Stimmen)
Re: Mehrere Partitionen auf USB-Stick
(233 Punkte bei 9 Stimmen)

Heftarchiv

LinuxUser Heftarchiv

EasyLinux Heftarchiv

Ubuntu User Heftarchiv

Partner-Links:

Shopping
Topsuche
 
Yatego Deutschlands größte Shoppingmall. 8500 Shops,
3.1 Mio Artikel. Alle Bestseller, Gutscheine und Themenwelten.

Notebooks und Netzwerkhardware bei Mercateo günstig kaufen.
Internet Telefonie mit VoIP Telefonen von Gigaset
Das B2B Portal www.Linx.de informiert über Produkte und Dienstleistungen.
Bei Freeware bietet Ihnen kostenlose Software Downloads von Programmen.
Günstige Digitalkameras finden Sie im Preisvergleich.

Eine Menge Mäuse

Guadec 2010: Multitouch mit Gtk+

29.07.2010 Auf der Konferenz Guadec hat Carlos Garnacho vom Gnome-Spezialisten Lanedo GmbH gezeigt, wie sich mehrere Zeigegräte in Gtk+-Programmen verarbeiten lassen.

Eingangs stellte der Referent die beiden Szenarien vor, in denen mehrere Zeigegeräte existieren: Neben dem Multitouch mit mehreren Fingern auf einem Touchscreen und höchstens einer Tastatur gibt es auch Multiuser-Anwendungen wie den kollaborativen Editor Gobby. In diesem Fall existieren mehrere Benutzer mit je einem Tastatur-Zeiger-Paar.

Für beide Anwendungen eignet sich Xinput2, das maßgeblich von Peter Hutterer entwickelt wurde. Es verwendet eine Hierarchie von Tastaturen und Zeigegeräten, wobei es Master-Slave-Beziehungen sowie angebundene und ungebundene Zeiger gibt. Auf die Geräte dieser Hierarchie greift der Entwickler mittels Methoden der des Gimp Drawing Kit (GDK) zu, wie Garnacho anhand einiger Zeilen Code demonstrierte.

Im Unterschied zum klassischen Betrieb mit nur einer Maus erhalten nun viele Gtk+-Funktionen und Ereignisse als zusätzliches Argument das auslösende Gerät. Im Multitouch-Betrieb muss der Programmierer zudem ermitteln, welche Finger-Zeiger zur selben Gruppe gehören, wozu er Abstand und Winkel zwischen deren Events auswertet. Umdenken ist auch bei den Enter- und Leave-Ereignissen von Fenstern gefragt: Der erste Zeiger, der ein Fenster betritt, löst Enter, der letzte verlassende löst Leave aus. Auch der Grab auf ein Fenster muss bei Multitouch zwischen mehreren Zeigegeräten aufgeteilt werden.

Ein Fotoalbum diente Carlos Garnacho als eine der Beispielanwendungen für Gtk+-Multitouch.

Zu all diesen Aufgaben zeigte Carlos Garnacho Quelltext und ließ einzelne Demo-Programme laufen. Neben Code für das stabile Gtk+ präsentierte er immer wieder Funktionen aus dem experimentellen Zweig. Dieser Zweig namens "xi2-playground" ist im Gtk+-Repository des Gnome-Projekts zu finden. Damit Anwendungen funktionieren, ist zudem X.org in der Version 7.5 erforderlich. Ein Tipp aus dem Publikum bei der Guadec: Wer keinen Touchscreen besitzt, kann Multitouch-Anwendungen auch mit mehreren USB-Mäusen testen.

Kommentare

Einem Freund empfehlen    Druckansicht

544 Hits
Wertung: 69 Punkte (1 Stimme)

Aktuelle Fragen

SUSE und Windows parallel betreiben, reparieren des BOOTMANAGERS
oli m., 31.08.2010 10:17, 6 Antworten
ich betreibe XP, VISTA, W7 und SUSE parallel auf einer Festplatte. wenn ich SUSE als letztes ins...
kmail link verweist auf firefox, umstellung wieder auf konqueror ???
oli m., 31.08.2010 10:06, 2 Antworten
seit firefox mit suse installiert wird, startet ein link in einer email automatisch auch firefox....
SUSE 11.3 - nvidia 9800GT+ - DUALMONITOR Installation/Einstellung
oli m., 31.08.2010 09:57, 2 Antworten
Grafikkarte: nvidia GForce 9800GT+ Monitore: 2x Medion MD 20094 1920x1200 SUSE 11.3 nach ins...
Tastatur / Maus blockiert
Roland M. Egloff, 30.08.2010 22:56, 0 Antworten
Hallo Linux Freunde, Die folgende Info. ist vielleicht für jemand nutzlich... Ich musste mi...
Erstellung von Newslettern unter Suse 11.3
Klaus Werner, 27.08.2010 09:45, 1 Antworten
Moin suchen ein Programm zur Erstellung von Newslettern. sollte unter Linux laufen. Jemand eine...