def on_pref_apply(value_widgets: List[Gtk.Editable], apply_btn: Gtk.Widget) -> None: values = {w.get_name(): w.get_text() for w in value_widgets} new_config = validate_applet_config(**values) if isinstance(new_config, AppletConfig): if save_to_gsettings(mate_applet.get_preferences_path(), new_config): notify(ConfigUpdated(id(mate_applet.get_child()), new_config)) apply_btn.get_ancestor(Gtk.Dialog).close() else: logging.error(new_config) # TODO: display the error back
def on_pref_cancel(cancel_button: Gtk.Widget) -> None: cancel_button.get_ancestor(Gtk.Dialog).close()