1
0
Fork 0
mirror of synced 2024-05-10 07:22:36 +12:00
czkawka/krokiet/src/connect_translation.rs
2023-12-03 12:06:42 +01:00

24 lines
737 B
Rust

use crate::localizer_krokiet::LANGUAGE_LOADER_GUI;
use crate::{Callabler, MainWindow};
use slint::ComponentHandle;
use slint::Model;
use std::collections::HashMap;
pub fn connect_translations(app: &MainWindow) {
app.global::<Callabler>().on_translate(move |text_to_translate, args| {
let text_to_translate = text_to_translate.to_string();
let mut arguments = HashMap::new();
args.iter().for_each(|(key, value)| {
arguments.insert(key.to_string(), value.to_string());
});
if arguments.is_empty() {
LANGUAGE_LOADER_GUI.get(&text_to_translate)
} else {
LANGUAGE_LOADER_GUI.get_args(&text_to_translate, arguments)
}
.into()
});
}