IT-Lexikon › Programmierung › Gadget (Motif)

Gadget (Motif)

Programmierung Svenska → Aktualisiert: 2026-10-09

Eine Motif-Komponente ohne eigenes X-Fenster: Das Elternelement zeichnet sie und reicht ihr die Ereignisse weiter, dafür bleibt dem Server ein Fenster pro Schaltfläche erspart.

Jedes gewöhnliche Widget in Xt besitzt ein eigenes X-Fenster, und ein Fenster kostet: Speicher im Server, einen Roundtrip beim Anlegen und eine Event-Maske, die verwaltet werden will. Ein Menü mit zwanzig Einträgen hieß zwanzig Fenster. Motifs Antwort waren Gadgets, darunter XmPushButtonGadget, XmLabelGadget, XmToggleButtonGadget und XmSeparatorGadget, die von Xts Klasse RectObj erben, einem Objekt mit Position und Größe, aber ohne Fenster. Das umgebende Manager-Widget malt sie in sein eigenes Fenster und leitet alle Mausklicks weiter, die in ihr Rechteck fallen.

Der Preis war Flexibilität. In Motif 1.x hatte ein Gadget keine eigenen Farben, sondern erbte die des Elternelements, konnte keine eigene Translation-Tabelle tragen, und wer ein Ereignis abfangen wollte, musste das am Manager tun. In der Praxis setzte man sie fast nur in Menüs ein, wo sie messbar etwas brachten. Die Idee kehrte in Javas Swing wieder, dessen leichtgewichtige Komponenten genau denselben Kompromiss gegenüber den fensterbesitzenden von AWT darstellen.

← Zurück zum Lexikon