diff --git a/Cargo.toml b/Cargo.toml index d2bb646..d6e643d 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -2,5 +2,6 @@ members = [ "hammond-data", "hammond-cli", - "hammond-downloader" + "hammond-downloader", + "hammond-gtk" ] diff --git a/hammond-gtk/Cargo.toml b/hammond-gtk/Cargo.toml new file mode 100644 index 0000000..2d26acf --- /dev/null +++ b/hammond-gtk/Cargo.toml @@ -0,0 +1,7 @@ +[package] +name = "hammond-gtk" +version = "0.1.0" +authors = ["Jordan Petridis "] + +[dependencies] +gtk = { version = "0.2.0", features = ["v3_22"]} diff --git a/hammond-gtk/src/main.rs b/hammond-gtk/src/main.rs new file mode 100644 index 0000000..d5d0a94 --- /dev/null +++ b/hammond-gtk/src/main.rs @@ -0,0 +1,32 @@ +extern crate gtk; + +use gtk::prelude::*; + +fn main() { + if gtk::init().is_err() { + println!("Failed to initialize GTK."); + return; + } + + let window = gtk::Window::new(gtk::WindowType::Toplevel); + + window.set_title("Hello"); + window.set_border_width(10); + window.set_position(gtk::WindowPosition::Center); + window.set_default_size(200, 200); + + window.connect_delete_event(|_, _| { + gtk::main_quit(); + Inhibit(false) + }); + + let button = gtk::Button::new_with_label("Say Hi!"); + button.connect_clicked(|_| { + println!("Hello World!"); + }); + + window.add(&button); + + window.show_all(); + gtk::main(); +} \ No newline at end of file