mirror of
https://github.com/13hannes11/toolbx-tuner.git
synced 2024-09-03 23:21:00 +02:00
40 lines
1.1 KiB
Rust
40 lines
1.1 KiB
Rust
use relm4::gtk;
|
|
|
|
use gettextrs::{gettext, LocaleCategory};
|
|
use gtk::{gio, glib};
|
|
|
|
use crate::config::{APP_ID, GETTEXT_PACKAGE, LOCALEDIR, RESOURCES_FILE};
|
|
|
|
pub fn setup() {
|
|
// Initialize GTK
|
|
gtk::init().unwrap();
|
|
|
|
setup_gettext();
|
|
|
|
glib::set_application_name(&gettext("Toolbox Tuner"));
|
|
|
|
let res = gio::Resource::load(RESOURCES_FILE).expect("Could not load gresource file");
|
|
gio::resources_register(&res);
|
|
|
|
setup_css(&res);
|
|
|
|
gtk::Window::set_default_icon_name(APP_ID);
|
|
}
|
|
|
|
fn setup_gettext() {
|
|
// Prepare i18n
|
|
gettextrs::setlocale(LocaleCategory::LcAll, "");
|
|
gettextrs::bindtextdomain(GETTEXT_PACKAGE, LOCALEDIR).expect("Unable to bind the text domain");
|
|
gettextrs::textdomain(GETTEXT_PACKAGE).expect("Unable to switch to the text domain");
|
|
}
|
|
|
|
fn setup_css(res: &gio::Resource) {
|
|
let data = res
|
|
.lookup_data(
|
|
"/org/kuchelmeister/ToolboxTuner/style.css",
|
|
gio::ResourceLookupFlags::NONE,
|
|
)
|
|
.unwrap();
|
|
relm4::set_global_css(&glib::GString::from_utf8_checked(data.to_vec()).unwrap());
|
|
}
|