63 lines
3 KiB
Rust
63 lines
3 KiB
Rust
use gtk::prelude::*;
|
|
|
|
#[derive(Clone)]
|
|
pub struct GUISettings {
|
|
pub window_settings: gtk::Window,
|
|
|
|
// General
|
|
pub check_button_settings_save_at_exit: gtk::CheckButton,
|
|
pub check_button_settings_load_at_start: gtk::CheckButton,
|
|
pub check_button_settings_confirm_deletion: gtk::CheckButton,
|
|
pub check_button_settings_show_text_view: gtk::CheckButton,
|
|
pub check_button_settings_use_cache: gtk::CheckButton,
|
|
|
|
// Duplicates
|
|
pub check_button_settings_hide_hard_links: gtk::CheckButton,
|
|
|
|
// Similar Images
|
|
pub check_button_settings_show_preview_similar_images: gtk::CheckButton,
|
|
|
|
// Buttons
|
|
pub button_settings_save_configuration: gtk::Button,
|
|
pub button_settings_load_configuration: gtk::Button,
|
|
pub button_settings_reset_configuration: gtk::Button,
|
|
}
|
|
|
|
impl GUISettings {
|
|
pub fn create_from_builder(builder: >k::Builder) -> Self {
|
|
let window_settings: gtk::Window = builder.get_object("window_settings").unwrap();
|
|
|
|
// General
|
|
let check_button_settings_save_at_exit: gtk::CheckButton = builder.get_object("check_button_settings_save_at_exit").unwrap();
|
|
let check_button_settings_load_at_start: gtk::CheckButton = builder.get_object("check_button_settings_load_at_start").unwrap();
|
|
let check_button_settings_confirm_deletion: gtk::CheckButton = builder.get_object("check_button_settings_confirm_deletion").unwrap();
|
|
let check_button_settings_show_text_view: gtk::CheckButton = builder.get_object("check_button_settings_show_text_view").unwrap();
|
|
let check_button_settings_use_cache: gtk::CheckButton = builder.get_object("check_button_settings_use_cache").unwrap();
|
|
|
|
// Duplicates
|
|
let check_button_settings_hide_hard_links: gtk::CheckButton = builder.get_object("check_button_settings_hide_hard_links").unwrap();
|
|
|
|
// Similar Images
|
|
let check_button_settings_show_preview_similar_images: gtk::CheckButton = builder.get_object("check_button_settings_show_preview_similar_images").unwrap();
|
|
|
|
// Saving/Loading/Resetting configuration
|
|
let button_settings_save_configuration: gtk::Button = builder.get_object("button_settings_save_configuration").unwrap();
|
|
let button_settings_load_configuration: gtk::Button = builder.get_object("button_settings_load_configuration").unwrap();
|
|
let button_settings_reset_configuration: gtk::Button = builder.get_object("button_settings_reset_configuration").unwrap();
|
|
|
|
Self {
|
|
window_settings,
|
|
check_button_settings_save_at_exit,
|
|
check_button_settings_load_at_start,
|
|
check_button_settings_confirm_deletion,
|
|
check_button_settings_show_text_view,
|
|
button_settings_save_configuration,
|
|
button_settings_load_configuration,
|
|
button_settings_reset_configuration,
|
|
check_button_settings_show_preview_similar_images,
|
|
check_button_settings_hide_hard_links,
|
|
check_button_settings_use_cache,
|
|
}
|
|
}
|
|
}
|