1
0
Fork 0
mirror of synced 2024-04-30 02:23:53 +12:00
czkawka/czkawka_gui/src/gui_about.rs
Rafał Mikrut 77a48ca6aa
Add support for translations (#469)
* Reformat code with idea tool

* Pierwsza działająca wersja tłumaczeń

* Działa? I dobrze, bo ma działać

* Ćma szła i się potkła

* Ściął śmiałek źółty rząd pąków.
2021-12-11 16:16:14 +01:00

44 lines
1.6 KiB
Rust

use crate::fl;
use gtk::prelude::*;
use gtk::{Builder, Window};
#[derive(Clone)]
pub struct GuiAbout {
pub about_dialog: gtk::AboutDialog,
pub button_repository: gtk::Button,
pub button_donation: gtk::Button,
pub button_instruction: gtk::Button,
}
impl GuiAbout {
pub fn create_from_builder(window_main: &Window) -> Self {
let glade_src = include_str!("../ui/about_dialog.glade").to_string();
let builder = Builder::from_string(glade_src.as_str());
let about_dialog: gtk::AboutDialog = builder.object("about_dialog").unwrap();
about_dialog.set_modal(true);
about_dialog.set_transient_for(Some(window_main));
let button_repository: gtk::Button = builder.object("button_repository").unwrap();
let button_donation: gtk::Button = builder.object("button_donation").unwrap();
let button_instruction: gtk::Button = builder.object("button_instruction").unwrap();
Self {
about_dialog,
button_repository,
button_donation,
button_instruction,
}
}
pub fn update_language(&self) {
self.button_repository.set_tooltip_text(Some(&fl!("about_repository_button_tooltip")));
self.button_donation.set_tooltip_text(Some(&fl!("about_donation_button_tooltip")));
self.button_instruction.set_tooltip_text(Some(&fl!("about_instruction_button_tooltip")));
self.button_repository.set_label(&fl!("about_repository_button"));
self.button_donation.set_label(&fl!("about_donation_button"));
self.button_instruction.set_label(&fl!("about_instruction_button"));
}
}