Widget-Änderungen in GTK+ 2.20+
| Anke (encarsia)
Auch wenn die Entwicklung von GTK+ 4 weit fortgeschritten ist, gibt es immer noch Änderungen in der 3er Version
Das GUI-Programm Glade wurde erst kürzlich modernisiert, in der Anwendung von Widgets sind mir einige Neuerungen aufgefallen. Dies fällt in der Regel durch entsprechende DeprecationWarnings in der Konsole auf, die Programme selbst funktionieren noch wie gewünscht.
Das heißt, die Artikel der Tutorial-Reihe bleiben vorerst unverändert (über eine gute Lösung muss ich noch nachdenken).
Es folgt eine nicht auf Vollständigkeit ausgelegte und bei Bedarf ergänzte Liste der Änderungen:
set_wm_class
Programmname in Panel und Dock anzeigen
Alt:
Gtk.Window.set_wmclass(wmclass_name, wmclass_class)
Neu:
GLib.set_prgname(wmclass_name)
(in .desktop-DateiStartupWMClass=wmclass_name
erforderlich)
widget.new_from_stock
Alt:
Gtk.Button.new_from_stock(Gtk.STOCK_OK)
Neu:
Gtk.Button.new_with_label("OK")
Labels bekommen nur noch eine Bezeichnung durch einen String.
Gilt auch für ToggleButton und Image (hier: image.new_from_icon_name() verwenden)
set_alignment
Alt:
Gtk.Misc.set_alignment(x, y)
, z.B. bei LabelsNeu: Gtk.Widget-Alignment
:halign
und:valign
verwenden
Vte-Terminal
Befehl übergeben
Alt:
Vte.Terminal.feed_child(cmd, len(cmd))
(cmd ist das zu übergebene Kommando)Neu:
Vte.Terminal.feed_child(cmd.encode())
(seit v2.91)
Start
Alt:
Vte.Terminal.spawn_sync(args)
Neu: GLib.spawn_async oder Vte.Pty.spawn_async (Details unbekannt)
FileChooserDialog
Alt:
dialog = Gtk.FileChooserDialog("Choose a folder", app.obj("window"), Gtk.FileChooserAction.SELECT_FOLDER, (Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL, Gtk.STOCK_APPLY, Gtk.ResponseType.OK))
'
Neu: Argumente werden namentlich übergeben, Buttons separat hinzugefügt:
dialog = Gtk.FileChooserDialog(title="Choose a folder", parent=app.obj("window"), action=Gtk.FileChooserAction.SELECT_FOLDER, ) dialog.add_buttons("Cancel", Gtk.ResponseType.CANCEL, "OK", Gtk.ResponseType.OK)
Kommentare
Comments powered by Disqus