feat(locale): localize full interface

This commit is contained in:
Hakan Seven committed 2026-08-02 22:09:25 +03:00
1 parent b90b3e3ecf
commit 3e6693b93f
205 files changed
+32369 -3810

No files matched your search

+2 -1
View File
@@ -5,6 +5,7 @@ use iced::{Element, Fill};
use crate::app::Message;
use crate::ui::statusbar::status_menu::Entry;
use crate::t;
/// - `has_selection`: enables Isolate / Hide (they act on the selection).
/// - `isolation_active`: enables End Isolation (something is hidden).
@@ -41,7 +42,7 @@ fn action_entry(label: &'static str, enabled: bool, msg: Message) -> Entry<'stat
}
fn action_row(label: &'static str, enabled: bool, msg: Message) -> Element<'static, Message> {
let lbl = text(label).size(11);
let lbl = text(t!(label)).size(11);
let content = row![lbl].align_y(iced::Center);
let mut btn = button(content)
+2 -1
View File
@@ -2,6 +2,7 @@
use iced::widget::{button, container, row, text, text_input};
use iced::{Element, Fill, Length};
use crate::t;
use crate::app::Message;
use crate::ui::statusbar::status_menu::Entry;
@@ -32,7 +33,7 @@ pub fn menu_entries<'a>(
.collect();
// Free-entry custom angle: type a value and press Enter to apply.
let custom_field = text_input("Custom…", custom)
let custom_field = text_input(t!("Custom…").as_ref(), custom)
.on_input(Message::PolarCustomInput)
.on_submit(Message::SubmitPolarCustom)
.size(11)
+2 -1
View File
@@ -2,6 +2,7 @@
use iced::widget::{button, row, text};
use iced::{Element, Fill};
use crate::t;
use crate::app::Message;
use crate::ui::statusbar::status_menu::Entry;
@@ -63,7 +64,7 @@ fn scale_row(label: String, active: bool, msg: Message) -> Element<'static, Mess
}
fn manage_row() -> Element<'static, Message> {
button(text("Manage...").size(11))
button(text(t!("Manage...")).size(11))
.on_press(Message::ScaleManagerOpen)
.style(button::primary)
.width(Fill)
+4 -3
View File
@@ -6,6 +6,7 @@ use rustc_hash::FxHashSet as HashSet;
use iced::widget::{button, container, row, text};
use iced::{Background, Element, Fill, Theme};
use crate::t;
use crate::app::Message;
use crate::ui::statusbar::status_menu::Entry;
@@ -66,7 +67,7 @@ pub fn menu_entries(
fn type_row(name: String, included: bool) -> Element<'static, Message> {
let check = crate::ui::icons::themed_check_cell(included);
let lbl = text(name.clone()).size(11);
let lbl = text(t!(name.as_str())).size(11);
let content = row![check, lbl].spacing(6).align_y(iced::Center);
@@ -80,7 +81,7 @@ fn type_row(name: String, included: bool) -> Element<'static, Message> {
fn empty_row() -> Element<'static, Message> {
container(
text("No objects").size(11).style(|theme: &Theme| text::Style {
text(t!("No objects")).size(11).style(|theme: &Theme| text::Style {
color: Some(
theme
.palette()
@@ -96,7 +97,7 @@ fn empty_row() -> Element<'static, Message> {
}
fn header_btn(label: &str, msg: Message, enabled: bool) -> Element<'_, Message> {
let b = button(text(label).size(10));
let b = button(text(t!(label)).size(10));
let b = if enabled { b.on_press(msg) } else { b };
b.style(button::secondary)
.padding([3, 8])
+3 -2
View File
@@ -6,6 +6,7 @@ use iced::{Background, Element, Fill, Length, Theme};
use crate::app::Message;
use crate::snap::{SnapType, Snapper, ALL_SNAP_MODES};
use crate::ui::statusbar::status_menu::Entry;
use crate::t;
pub fn menu_entries<'a>(snapper: &'a Snapper) -> Vec<Entry<'a>> {
let all_on = snapper.all_on();
@@ -54,7 +55,7 @@ fn snap_row<'a>(snap_type: SnapType, label: &'a str, active: bool) -> Element<'a
.width(Length::Fixed(16.0))
.align_x(iced::Center);
let label_el = text(label).size(11);
let label_el = text(t!(label)).size(11);
let content = row![checkmark, icon_el, label_el]
.spacing(4)
@@ -69,7 +70,7 @@ fn snap_row<'a>(snap_type: SnapType, label: &'a str, active: bool) -> Element<'a
}
fn header_btn(label: &str, msg: Message, enabled: bool) -> Element<'_, Message> {
let b = button(text(label).size(10));
let b = button(text(t!(label)).size(10));
let b = if enabled { b.on_press(msg) } else { b };
b.style(button::secondary)
.padding([3, 8])
+2 -1
View File
@@ -5,6 +5,7 @@ use iced::{Element, Fill};
use crate::app::Message;
use crate::ui::statusbar::status_menu::Entry;
use crate::t;
/// Units offered in the picker: (INSUNITS code, menu label).
const UNITS: &[(i16, &str)] = &[
@@ -51,7 +52,7 @@ pub fn menu_entries(current: i16) -> Vec<Entry<'static>> {
fn unit_row(label: &'static str, active: bool, msg: Message) -> Element<'static, Message> {
let check = crate::ui::icons::themed_check_cell(active);
let lbl = text(label).size(11);
let lbl = text(t!(label)).size(11);
let content = row![check, lbl].spacing(6).align_y(iced::Center);