#gtk #glade #gui #bind #gtk-rs

glade-bindgen

library to generate gtk glade bind

8 releases (4 stable)

1.2.1 Jan 4, 2022
1.2.0 Aug 4, 2021
1.1.0 Jul 13, 2021
1.0.0 Mar 22, 2021
0.1.0 Dec 6, 2020

#61 in Build Utils

27 downloads per month

MIT license

9KB
165 lines

crates.io

You can generate glade bind with build script

#Cargo.toml
[build-dependencies]
glade-bindgen = "1.2"
#build.rs
fn main() {
    glade_bindgen::generate_bind_build_script("src/path_to_glade_files", true);
    //disable generating get() method if false===========================^^^^
}

For example, if you have example.glade at src/path_to_glade_files, it will generate struct path_to_glade_files::Example

#src/main.rs
pub mod path_to_glade_files; //you need to include module

use path_to_glade_files::Example;

fn main() {
    let button: &gtk::Button = &Example::get().your_button_id;
    //you can use editor's autocompletion here ^^^^^^^^^^^^
}

You can also use it as owned value

let example = Example::new();
let button: &gtk::Button = &example.your_button_id;
//you can use editor's autocompletion here ^^^^^^

Dependencies

~1.5–2.3MB
~60K SLoC

a