diff options
Diffstat (limited to 'src/dialogs/SetBackground.vala')
| -rw-r--r-- | src/dialogs/SetBackground.vala | 38 | 
1 files changed, 38 insertions, 0 deletions
| diff --git a/src/dialogs/SetBackground.vala b/src/dialogs/SetBackground.vala new file mode 100644 index 0000000..d9a77c4 --- /dev/null +++ b/src/dialogs/SetBackground.vala @@ -0,0 +1,38 @@ +/* Copyright 2016 Software Freedom Conservancy Inc. + * Copyright 2017 Jens Georg <mail@jensge.org> + * + * This software is licensed under the GNU LGPL (version 2.1 or later). + * See the COPYING file in this distribution. + */ + +[GtkTemplate (ui = "/org/gnome/Shotwell/ui/set_background_dialog.ui")] +public class SetBackgroundPhotoDialog : Gtk.Dialog { +    [GtkChild] +    private Gtk.CheckButton desktop_background_checkbox; +    [GtkChild] +    private Gtk.CheckButton screensaver_checkbox; + +    public SetBackgroundPhotoDialog() { +        Object(use_header_bar: Resources.use_header_bar()); +        this.set_transient_for (AppWindow.get_instance()); +    } + +    [GtkCallback] +    private void on_checkbox_clicked() { +        set_response_sensitive (Gtk.ResponseType.OK, +                                desktop_background_checkbox.active || +                                screensaver_checkbox.active); +    } + +    public bool execute(out bool desktop_background, out bool screensaver) { +        this.show_all(); +        var result = this.run() == Gtk.ResponseType.OK; +        this.hide (); + +        desktop_background = desktop_background_checkbox.active; +        screensaver = screensaver_checkbox.active; + +        this.destroy(); +        return result; +    } +} | 
