GTK4-Rust-tutorial/src/main.rs

34 lines
748 B
Rust
Raw Normal View History

2022-05-30 03:37:45 -07:00
use gtk::prelude::*;
2022-05-30 13:57:19 -07:00
use gtk::{Application, ApplicationWindow, Button};
2022-05-30 03:37:45 -07:00
const APP_ID: &'static str = "org.gtk-rs.Gamarjoba";
2022-05-30 03:34:15 -07:00
fn main() {
2022-05-30 03:37:45 -07:00
let app = Application::builder().application_id(APP_ID).build();
app.connect_activate(build_ui);
app.run();
}
fn build_ui(app: &Application) {
2022-05-30 13:57:19 -07:00
let button = Button::builder()
.label("Hit me!")
.margin_top(12)
.margin_bottom(12)
.margin_start(12)
.margin_end(12)
.build();
2022-05-30 13:58:09 -07:00
button.connect_clicked(move |button| {
button.set_label("Hahaha! Gay!");
});
2022-05-30 03:37:45 -07:00
let window = ApplicationWindow::builder()
.application(app)
.title("Gamarjoba from GTK4")
2022-05-30 13:57:19 -07:00
.child(&button)
2022-05-30 03:37:45 -07:00
.build();
window.present();
2022-05-30 03:34:15 -07:00
}