From e22ff1b362e8c5741d6e7485859ad973b63596a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rafa=C5=82=20Mikrut?= Date: Fri, 4 Sep 2020 21:12:18 +0200 Subject: [PATCH] Add basic glade file --- czkawka_gui/czkawka.glade | 215 ++++++++++++++++++++++++++++++++++++++ czkawka_gui/src/main.rs | 30 +++++- 2 files changed, 240 insertions(+), 5 deletions(-) create mode 100644 czkawka_gui/czkawka.glade diff --git a/czkawka_gui/czkawka.glade b/czkawka_gui/czkawka.glade new file mode 100644 index 0000000..a6b4a79 --- /dev/null +++ b/czkawka_gui/czkawka.glade @@ -0,0 +1,215 @@ + + + + + + False + applications-engineering + dialog + + + False + vertical + 9 + + + False + end + + + Yes + True + True + True + + + True + True + 0 + + + + + No + True + True + True + + + True + True + 1 + + + + + False + False + 0 + + + + + True + False + Are you sure that you want to delete this files? + + + + + + + False + True + 0 + + + + + Ask for this in future? + True + True + False + True + True + + + False + False + 2 + + + + + + + + + + + False + dialog + select-folder + False + folderfilter + True + True + + + False + vertical + 2 + + + False + end + + + Ok + True + True + True + + + True + True + 0 + + + + + Cancel + True + True + True + + + True + True + 1 + + + + + False + False + 0 + + + + + + + + + + False + + + True + False + vertical + + + True + False + Czkawka + + + + + + False + True + 0 + + + + + True + False + + + True + False + + + False + True + 0 + + + + + True + True + + + + + + False + True + 1 + + + + + False + True + 1 + + + + + + + + + + + + + + + diff --git a/czkawka_gui/src/main.rs b/czkawka_gui/src/main.rs index ac7592a..0064f36 100644 --- a/czkawka_gui/src/main.rs +++ b/czkawka_gui/src/main.rs @@ -6,9 +6,29 @@ use gtk::prelude::*; use gtk::{ButtonsType, DialogFlags, MessageDialog, MessageType, Window}; fn main() { - if gtk::init().is_err() { - println!("Failed to initialize GTK."); - return; - } - MessageDialog::new(None::<&Window>, DialogFlags::empty(), MessageType::Info, ButtonsType::Ok, "Hello World").run(); + gtk::init().expect("Failed to initialize GTK."); + + // Loading glade file content + let glade_src = include_str!("../czkawka.glade"); + // Build UI from glade file + let builder = gtk::Builder::from_string(glade_src); + + // Show first window + let window : gtk::Window = builder.get_object("window1").unwrap(); + window.show_all(); + + + let button: gtk::Button = builder.get_object("button1").unwrap(); + let dialog: gtk::MessageDialog = builder.get_object("messagedialog1").unwrap(); + + button.connect_clicked(move |_| { + // We make the dialog window blocks all other windows. + dialog.run(); + // When it finished running, we hide it again. + dialog.hide(); + }); + +// We start the gtk main loop. + gtk::main(); + }