mirror of https://codeberg.org/topola/topola.git
egui: give more systematic names to translatable strings
The names are now based on where the strings are used in the GUI. This will hopefully make it easier for translators to locate where they are in the user interface. I've prefixed all translatable string names with "tr-" to prevent accidentally substitute unrelated strings in a mass replace. Once I push this commit, I will also protect `locales/**`, so that all future changes to strings pass a PR review process to reduce the probability of errors. This will also make it easier to have a freeze for translatable strings if we end up having a release schedule in the future.
This commit is contained in:
parent
24f0a1c699
commit
f21808776e
|
|
@ -1,31 +1,31 @@
|
|||
action-undo = Zurück
|
||||
action-redo = Vorwärts
|
||||
show-layer-manager = Zeige Layer-Verwaltung
|
||||
specctra-session-file = Specctra-Sitzungsdatei
|
||||
frame-timestep = Frame-Zeitschritt
|
||||
menu-file = Datei
|
||||
menu-edit = Bearbeiten
|
||||
menu-view = Ansicht
|
||||
menu-place = Ort
|
||||
menu-route = Route
|
||||
menu-inspect = Inspizieren
|
||||
menu-options = Optionen
|
||||
menu-debug = Debugging
|
||||
action-open-dsn = Öffnen
|
||||
action-export-ses = Sitzungsdatei exportieren
|
||||
action-import-cmd = Historie importieren
|
||||
action-export-cmd = Historie exportieren
|
||||
action-quit = Beenden
|
||||
action-autoroute = Autorouten
|
||||
action-place-via = Platziere DuKo
|
||||
action-remove-bands = Entferne Bänder
|
||||
action-compare-detours = Vergleiche Umwege
|
||||
presort-by-pairwise-detours = Nach paarweisen Umwegen vorsortieren
|
||||
squeeze-through-under-bands = Presse unter Bänder
|
||||
wrap-around-bands = Wickle um Bänder
|
||||
zoom-to-fit = Zoom automatisch einpassen
|
||||
show-ratsnest = Zeige Ratsnest
|
||||
show-navmesh = Zeige Navmesh
|
||||
show-bboxes = Zeige BBoxes
|
||||
show-origin-destination = Zeige Ursprung-Ziel
|
||||
action-measure-length = Länge messen
|
||||
tr-menu-edit_undo = Zurück
|
||||
tr-menu-edit_redo = Vorwärts
|
||||
tr-menu-view_show-layer-manager = Zeige Layer-Verwaltung
|
||||
tr-menu-open_specctra-session-file = Specctra-Sitzungsdatei
|
||||
tr-menu-view_frame-timestep = Frame-Zeitschritt
|
||||
tr-menu-file = Datei
|
||||
tr-menu-edit = Bearbeiten
|
||||
tr-menu-view = Ansicht
|
||||
tr-menu-place = Ort
|
||||
tr-menu-route = Route
|
||||
tr-menu-inspect = Inspizieren
|
||||
tr-menu-options = Optionen
|
||||
tr-menu-debug = Debugging
|
||||
tr-menu-file-open = Öffnen
|
||||
tr-menu-file-export-session-file = Sitzungsdatei exportieren
|
||||
tr-menu-file-import-history = Historie importieren
|
||||
tr-menu-file-export-history = Historie exportieren
|
||||
tr-menu-file-quit = Beenden
|
||||
tr-menu-route-autoroute = Autorouten
|
||||
tr-menu-place-place-via = Platziere DuKo
|
||||
tr-menu-edit_remove-bands = Entferne Bänder
|
||||
tr-menu-inspect_compare-detours = Vergleiche Umwege
|
||||
tr-menu-route-options_presort-by-pairwise-detours = Nach paarweisen Umwegen vorsortieren
|
||||
tr-menu-route-options_squeeze-through-under-bands = Presse unter Bänder
|
||||
tr-menu-route-options_wrap-around-bands = Wickle um Bänder
|
||||
tr-menu-view_zoom-to-fit = Zoom automatisch einpassen
|
||||
tr-menu-view_show-ratsnest = Zeige Ratsnest
|
||||
tr-menu-view_show-navmesh = Zeige Navmesh
|
||||
tr-menu-view_show-bboxes = Zeige BBoxes
|
||||
tr-menu-view_show-origin-destination = Zeige Ursprung-Ziel
|
||||
tr-menu-inspect_measure-length = Länge messen
|
||||
|
|
|
|||
|
|
@ -1,56 +1,56 @@
|
|||
menu-file = File
|
||||
menu-edit = Edit
|
||||
menu-view = View
|
||||
menu-place = Place
|
||||
menu-route = Route
|
||||
menu-inspect = Inspect
|
||||
tr-menu-file = File
|
||||
tr-menu-edit = Edit
|
||||
tr-menu-view = View
|
||||
tr-menu-place = Place
|
||||
tr-menu-route = Route
|
||||
tr-menu-inspect = Inspect
|
||||
|
||||
menu-options = Options
|
||||
menu-debug = Debug
|
||||
tr-menu-options = Options
|
||||
tr-menu-debug = Debug
|
||||
|
||||
action-open-dsn = Open
|
||||
action-export-ses = Export Session File
|
||||
action-import-cmd = Import History
|
||||
action-export-cmd = Export History
|
||||
tr-menu-file-open = Open
|
||||
tr-menu-file-export-session-file = Export Session File
|
||||
tr-menu-file-import-history = Import History
|
||||
tr-menu-file-export-history = Export History
|
||||
|
||||
action-quit = Quit
|
||||
action-autoroute = Autoroute
|
||||
action-place-via = Place Via
|
||||
action-remove-bands = Remove Bands
|
||||
action-compare-detours = Compare Detours
|
||||
action-measure-length = Measure Length
|
||||
tr-menu-file-quit = Quit
|
||||
tr-menu-route-autoroute = Autoroute
|
||||
tr-menu-place-place-via = Place Via
|
||||
tr-menu-edit_remove-bands = Remove Bands
|
||||
tr-menu-inspect_compare-detours = Compare Detours
|
||||
tr-menu-inspect_measure-length = Measure Length
|
||||
|
||||
action-undo = Undo
|
||||
action-redo = Redo
|
||||
action-abort = Abort
|
||||
tr-menu-edit_undo = Undo
|
||||
tr-menu-edit_redo = Redo
|
||||
tr-menu-edit_abort = Abort
|
||||
|
||||
presort-by-pairwise-detours = Presort by Pairwise Detours
|
||||
squeeze-through-under-bands = Squeeze through under Bands
|
||||
wrap-around-bands = Wrap around Bands
|
||||
tr-menu-route-options_presort-by-pairwise-detours = Presort by Pairwise Detours
|
||||
tr-menu-route-options_squeeze-through-under-bands = Squeeze through under Bands
|
||||
tr-menu-route-options_wrap-around-bands = Wrap around Bands
|
||||
|
||||
zoom-to-fit = Zoom to Fit
|
||||
tr-menu-view_zoom-to-fit = Zoom to Fit
|
||||
|
||||
show-ratsnest = Show Ratsnest
|
||||
show-navmesh = Show Navmesh
|
||||
show-bboxes = Show BBoxes
|
||||
show-origin-destination = Show Origin–Destination
|
||||
tr-menu-view_show-ratsnest = Show Ratsnest
|
||||
tr-menu-view_show-navmesh = Show Navmesh
|
||||
tr-menu-view_show-bboxes = Show BBoxes
|
||||
tr-menu-view_show-origin-destination = Show Origin–Destination
|
||||
|
||||
show-layer-manager = Show Layer Manager
|
||||
tr-menu-view_show-layer-manager = Show Layer Manager
|
||||
|
||||
frame-timestep = Frame Timestep
|
||||
tr-menu-view_frame-timestep = Frame Timestep
|
||||
|
||||
specctra-session-file = Specctra session file
|
||||
tr-menu-open_specctra-session-file = Specctra session file
|
||||
|
||||
title-error-messages = Error Messages
|
||||
reset-error-messages = Reset Messages
|
||||
discard-item = Discard
|
||||
tr-dialog-tr-error-messages = Error Messages
|
||||
tr-dialog-tr-error-messages_reset = Reset Messages
|
||||
tr-dialog-tr-error-messages_discard = Discard
|
||||
|
||||
specctra-dsn-loader = Specctra DSN file loader
|
||||
history-loader = History file loader
|
||||
invoker = Invoker
|
||||
tr-module-specctra-dsn-file-loader = Specctra DSN file loader
|
||||
tr-module-history-file-loader = History file loader
|
||||
tr-module-invoker = Invoker
|
||||
|
||||
error-file-load = unable to read file
|
||||
error-file-specctra-dsn-parse = file failed to parse as Specctra DSN
|
||||
error-file-history-parse = file failed to parse as History JSON
|
||||
error-overlay-init = unable to initialize overlay
|
||||
error-autorouter-init = unable to initialize autorouter
|
||||
tr-error_unable-to-read-file = unable to read file
|
||||
tr-error_failed-to-parse-as-specctra-dsn = file failed to parse as Specctra DSN
|
||||
tr-error_failed-to-parse-as-history-json = file failed to parse as History JSON
|
||||
tr-error_unable-to-initialize-overlay = unable to initialize overlay
|
||||
tr-error_unable-to-initialize-autorouter = unable to initialize autorouter
|
||||
|
|
|
|||
|
|
@ -1,24 +1,24 @@
|
|||
menu-file = Bestand
|
||||
menu-debug = Debug
|
||||
action-export-ses = Sessiebestand exporteren
|
||||
action-export-cmd = Geschiedenis exporteren
|
||||
action-quit = Stop
|
||||
action-place-via = Plaats Via
|
||||
action-remove-bands = Banden verwijderen
|
||||
action-compare-detours = Vergelijk Omwegen
|
||||
action-undo = Ongedaan maken
|
||||
action-redo = Opnieuw doen
|
||||
show-navmesh = Toon Navmesh
|
||||
show-bboxes = Toon BBoxen
|
||||
action-open-dsn = Open
|
||||
action-autoroute = Automatische route
|
||||
action-import-cmd = Geschiedenis importeren
|
||||
show-ratsnest = Toon Rattennest
|
||||
show-origin-destination = Toon Herkomst-Bestemming
|
||||
specctra-session-file = Specctra-sessiebestand
|
||||
action-measure-length = Lengte meten
|
||||
menu-options = Opties
|
||||
menu-view = Bekijken
|
||||
menu-route = Route
|
||||
menu-edit = Bewerken
|
||||
menu-inspect = Inspecteren
|
||||
tr-menu-file = Bestand
|
||||
tr-menu-debug = Debug
|
||||
tr-menu-file-export-session-file = Sessiebestand exporteren
|
||||
tr-menu-file-export-history = Geschiedenis exporteren
|
||||
tr-menu-file-quit = Stop
|
||||
tr-menu-place-place-via = Plaats Via
|
||||
tr-menu-edit_remove-bands = Banden verwijderen
|
||||
tr-menu-inspect_compare-detours = Vergelijk Omwegen
|
||||
tr-menu-edit_undo = Ongedaan maken
|
||||
tr-menu-edit_redo = Opnieuw doen
|
||||
tr-menu-view_show-navmesh = Toon Navmesh
|
||||
tr-menu-view_show-bboxes = Toon BBoxen
|
||||
tr-menu-file-open = Open
|
||||
tr-menu-route-autoroute = Automatische route
|
||||
tr-menu-file-import-history = Geschiedenis importeren
|
||||
tr-menu-view_show-ratsnest = Toon Rattennest
|
||||
tr-menu-view_show-origin-destination = Toon Herkomst-Bestemming
|
||||
tr-menu-open_specctra-session-file = Specctra-sessiebestand
|
||||
tr-menu-inspect_measure-length = Lengte meten
|
||||
tr-menu-options = Opties
|
||||
tr-menu-view = Bekijken
|
||||
tr-menu-route = Route
|
||||
tr-menu-edit = Bewerken
|
||||
tr-menu-inspect = Inspecteren
|
||||
|
|
|
|||
|
|
@ -1,22 +1,22 @@
|
|||
action-place-via = Wstaw przelotkę
|
||||
menu-debug = Debuguj
|
||||
action-open-dsn = Otwórz
|
||||
action-export-cmd = Eksportuj historię
|
||||
action-autoroute = Autotrasuj
|
||||
action-remove-bands = Usuń taśmy
|
||||
action-measure-length = Zmierz długość
|
||||
action-undo = Cofnij
|
||||
show-ratsnest = Pokaż szczurze gniazdo
|
||||
specctra-session-file = Plik sesji Specctra
|
||||
menu-file = Plik
|
||||
action-redo = Ponów
|
||||
action-export-ses = Eksportuj plik sesji
|
||||
action-import-cmd = Importuj historię
|
||||
action-quit = Wyjdź
|
||||
action-compare-detours = Porównaj objazdy
|
||||
show-navmesh = Pokaż siatkę nawigacyjną
|
||||
show-bboxes = Pokaż obwiednie
|
||||
show-origin-destination = Pokaż pochodzenie i destynację
|
||||
menu-options = Opcje
|
||||
wrap-around-bands = Owiń wokół taśm
|
||||
squeeze-through-under-bands = Ściśnij pod taśmami
|
||||
tr-menu-place-place-via = Wstaw przelotkę
|
||||
tr-menu-debug = Debuguj
|
||||
tr-menu-file-open = Otwórz
|
||||
tr-menu-file-export-history = Eksportuj historię
|
||||
tr-menu-route-autoroute = Autotrasuj
|
||||
tr-menu-edit_remove-bands = Usuń taśmy
|
||||
tr-menu-inspect_measure-length = Zmierz długość
|
||||
tr-menu-edit_undo = Cofnij
|
||||
tr-menu-view_show-ratsnest = Pokaż szczurze gniazdo
|
||||
tr-menu-open_specctra-session-file = Plik sesji Specctra
|
||||
tr-menu-file = Plik
|
||||
tr-menu-edit_redo = Ponów
|
||||
tr-menu-file-export-session-file = Eksportuj plik sesji
|
||||
tr-menu-file-import-history = Importuj historię
|
||||
tr-menu-file-quit = Wyjdź
|
||||
tr-menu-inspect_compare-detours = Porównaj objazdy
|
||||
tr-menu-view_show-navmesh = Pokaż siatkę nawigacyjną
|
||||
tr-menu-view_show-bboxes = Pokaż obwiednie
|
||||
tr-menu-view_show-origin-destination = Pokaż pochodzenie i destynację
|
||||
tr-menu-options = Opcje
|
||||
tr-menu-route-options_wrap-around-bands = Owiń wokół taśm
|
||||
tr-menu-route-options_squeeze-through-under-bands = Ściśnij pod taśmami
|
||||
|
|
|
|||
|
|
@ -107,7 +107,7 @@ impl App {
|
|||
match self.load_specctra_dsn(input) {
|
||||
Ok(()) => {}
|
||||
Err(err) => {
|
||||
self.error_dialog.push_error("specctra-dsn-loader", err);
|
||||
self.error_dialog.push_error("tr-module-specctra-dsn-file-loader", err);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -122,15 +122,15 @@ impl App {
|
|||
Ok(res) => invoker.replay(res),
|
||||
Err(err) => {
|
||||
self.error_dialog.push_error(
|
||||
"history-loader",
|
||||
format!("{}; {}", tr.text("error-file-history-parse"), err),
|
||||
"tr-module-history-file-loader",
|
||||
format!("{}; {}", tr.text("tr-error_failed-to-parse-as-history-json"), err),
|
||||
);
|
||||
}
|
||||
},
|
||||
Err(err) => {
|
||||
self.error_dialog.push_error(
|
||||
"history-loader",
|
||||
format!("{}; {}", tr.text("error-file-load"), err),
|
||||
"tr-module-history-file-loader",
|
||||
format!("{}; {}", tr.text("tr-error_unable-to-read-file"), err),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -141,7 +141,7 @@ impl App {
|
|||
Ok(ActivityStatus::Running) => true,
|
||||
Ok(ActivityStatus::Finished(..)) => false,
|
||||
Err(err) => {
|
||||
self.error_dialog.push_error("invoker", format!("{}", err));
|
||||
self.error_dialog.push_error("tr-module-invoker", format!("{}", err));
|
||||
false
|
||||
}
|
||||
};
|
||||
|
|
@ -156,15 +156,15 @@ impl App {
|
|||
input: std::io::Result<I>,
|
||||
) -> Result<(), String> {
|
||||
let tr = &self.translator;
|
||||
let bufread = input.map_err(|err| format!("{}; {}", tr.text("error-file-load"), err))?;
|
||||
let bufread = input.map_err(|err| format!("{}; {}", tr.text("tr-error_unable-to-read-file"), err))?;
|
||||
let design = SpecctraDesign::load(bufread)
|
||||
.map_err(|err| format!("{}; {}", tr.text("error-file-specctra-dsn-parse"), err))?;
|
||||
.map_err(|err| format!("{}; {}", tr.text("tr-error_failed-to-parse-as-specctra-dsn"), err))?;
|
||||
let board = design.make_board();
|
||||
let overlay = Overlay::new(&board)
|
||||
.map_err(|err| format!("{}; {}", tr.text("error-overlay-init"), err))?;
|
||||
.map_err(|err| format!("{}; {}", tr.text("tr-error_unable-to-initialize-overlay"), err))?;
|
||||
let layers = Layers::new(&board);
|
||||
let autorouter = Autorouter::new(board)
|
||||
.map_err(|err| format!("{}; {}", tr.text("error-autorouter-init"), err))?;
|
||||
.map_err(|err| format!("{}; {}", tr.text("tr-error_unable-to-initialize-autorouter"), err))?;
|
||||
self.maybe_overlay = Some(overlay);
|
||||
self.maybe_layers = Some(layers);
|
||||
self.maybe_design = Some(design);
|
||||
|
|
|
|||
|
|
@ -33,17 +33,17 @@ impl ErrorDialog {
|
|||
|
||||
pub fn update(&mut self, ctx: &egui::Context, tr: &Translator) {
|
||||
let mut messages_cleared = false;
|
||||
egui::Window::new(tr.text("title-error-messages"))
|
||||
.id("error-messages-dialog".into())
|
||||
egui::Window::new(tr.text("tr-dialog-tr-error-messages"))
|
||||
.id("tr-error-messages-dialog".into())
|
||||
.open(&mut self.window_open)
|
||||
.scroll(true)
|
||||
.show(ctx, |ui| {
|
||||
if ui.button(tr.text("reset-error-messages")).clicked() {
|
||||
if ui.button(tr.text("tr-dialog-tr-error-messages_reset")).clicked() {
|
||||
self.messages.clear();
|
||||
messages_cleared = true;
|
||||
}
|
||||
|
||||
egui::Grid::new("error-messages-grid").show(ui, |ui| {
|
||||
egui::Grid::new("tr-error-messages-grid").show(ui, |ui| {
|
||||
let mut messages_to_discard = BTreeSet::<usize>::new();
|
||||
let style = Arc::clone(ui.style());
|
||||
for (msg_id, msg) in self.messages.iter().enumerate() {
|
||||
|
|
@ -72,7 +72,7 @@ impl ErrorDialog {
|
|||
|
||||
// TODO: perhaps alternatively, use small icon instead?
|
||||
// (provide alt text in that case!)
|
||||
if ui.add(egui::Button::new(tr.text("discard-item"))).clicked() {
|
||||
if ui.add(egui::Button::new(tr.text("tr-dialog-tr-error-messages_discard"))).clicked() {
|
||||
messages_to_discard.insert(msg_id);
|
||||
}
|
||||
ui.label(WidgetText::LayoutJob(loj));
|
||||
|
|
|
|||
|
|
@ -68,67 +68,67 @@ impl MenuBar {
|
|||
maybe_design: &Option<SpecctraDesign>,
|
||||
) -> Result<(), InvokerError> {
|
||||
let mut open_design = Trigger::new(Action::new(
|
||||
tr.text("action-open-dsn"),
|
||||
tr.text("tr-menu-file-open"),
|
||||
egui::Modifiers::CTRL,
|
||||
egui::Key::O,
|
||||
));
|
||||
let mut export_session = Trigger::new(Action::new(
|
||||
tr.text("action-export-ses"),
|
||||
tr.text("tr-menu-file-export-session-file"),
|
||||
egui::Modifiers::CTRL,
|
||||
egui::Key::S,
|
||||
));
|
||||
let mut import_history = Trigger::new(Action::new(
|
||||
tr.text("action-import-cmd"),
|
||||
tr.text("tr-menu-file-import-history"),
|
||||
egui::Modifiers::CTRL,
|
||||
egui::Key::I,
|
||||
));
|
||||
let mut export_history = Trigger::new(Action::new(
|
||||
tr.text("action-export-cmd"),
|
||||
tr.text("tr-menu-file-export-history"),
|
||||
egui::Modifiers::CTRL,
|
||||
egui::Key::E,
|
||||
));
|
||||
let mut quit = Trigger::new(Action::new(
|
||||
tr.text("action-quit"),
|
||||
tr.text("tr-menu-file-quit"),
|
||||
egui::Modifiers::CTRL,
|
||||
egui::Key::Q,
|
||||
));
|
||||
let mut undo = Trigger::new(Action::new(
|
||||
tr.text("action-undo"),
|
||||
tr.text("tr-menu-edit_undo"),
|
||||
egui::Modifiers::CTRL,
|
||||
egui::Key::Z,
|
||||
));
|
||||
let mut redo = Trigger::new(Action::new(
|
||||
tr.text("action-redo"),
|
||||
tr.text("tr-menu-edit_redo"),
|
||||
egui::Modifiers::CTRL,
|
||||
egui::Key::Y,
|
||||
));
|
||||
let mut abort = Trigger::new(Action::new(
|
||||
tr.text("action-abort"),
|
||||
tr.text("tr-menu-edit_abort"),
|
||||
egui::Modifiers::NONE,
|
||||
egui::Key::Escape,
|
||||
));
|
||||
let mut remove_bands = Trigger::new(Action::new(
|
||||
tr.text("action-remove-bands"),
|
||||
tr.text("tr-menu-edit_remove-bands"),
|
||||
egui::Modifiers::NONE,
|
||||
egui::Key::Delete,
|
||||
));
|
||||
let mut place_via = Switch::new(Action::new(
|
||||
tr.text("action-place-via"),
|
||||
tr.text("tr-menu-place-place-via"),
|
||||
egui::Modifiers::CTRL,
|
||||
egui::Key::P,
|
||||
));
|
||||
let mut autoroute = Trigger::new(Action::new(
|
||||
tr.text("action-autoroute"),
|
||||
tr.text("tr-menu-route-autoroute"),
|
||||
egui::Modifiers::CTRL,
|
||||
egui::Key::A,
|
||||
));
|
||||
let mut compare_detours = Trigger::new(Action::new(
|
||||
tr.text("action-compare-detours"),
|
||||
tr.text("tr-menu-inspect_compare-detours"),
|
||||
egui::Modifiers::NONE,
|
||||
egui::Key::Minus,
|
||||
));
|
||||
let mut measure_length = Trigger::new(Action::new(
|
||||
tr.text("action-measure-length"),
|
||||
tr.text("tr-menu-inspect_measure-length"),
|
||||
egui::Modifiers::NONE,
|
||||
egui::Key::Plus,
|
||||
));
|
||||
|
|
@ -136,7 +136,7 @@ impl MenuBar {
|
|||
egui::TopBottomPanel::top("menu_bar")
|
||||
.show(ctx, |ui| {
|
||||
egui::menu::bar(ui, |ui| {
|
||||
ui.menu_button(tr.text("menu-file"), |ui| {
|
||||
ui.menu_button(tr.text("tr-menu-file"), |ui| {
|
||||
open_design.button(ctx, ui);
|
||||
export_session.button(ctx, ui);
|
||||
|
||||
|
|
@ -153,7 +153,7 @@ impl MenuBar {
|
|||
}
|
||||
});
|
||||
|
||||
ui.menu_button(tr.text("menu-edit"), |ui| {
|
||||
ui.menu_button(tr.text("tr-menu-edit"), |ui| {
|
||||
undo.button(ctx, ui);
|
||||
redo.button(ctx, ui);
|
||||
|
||||
|
|
@ -166,63 +166,63 @@ impl MenuBar {
|
|||
remove_bands.button(ctx, ui);
|
||||
});
|
||||
|
||||
ui.menu_button(tr.text("menu-view"), |ui| {
|
||||
ui.menu_button(tr.text("tr-menu-view"), |ui| {
|
||||
ui.toggle_value(
|
||||
&mut viewport.scheduled_zoom_to_fit,
|
||||
tr.text("zoom-to-fit"),
|
||||
tr.text("tr-menu-view_zoom-to-fit"),
|
||||
);
|
||||
|
||||
ui.separator();
|
||||
|
||||
ui.checkbox(&mut self.show_ratsnest, tr.text("show-ratsnest"));
|
||||
ui.checkbox(&mut self.show_navmesh, tr.text("show-navmesh"));
|
||||
ui.checkbox(&mut self.show_bboxes, tr.text("show-bboxes"));
|
||||
ui.checkbox(&mut self.show_ratsnest, tr.text("tr-menu-view_show-ratsnest"));
|
||||
ui.checkbox(&mut self.show_navmesh, tr.text("tr-menu-view_show-navmesh"));
|
||||
ui.checkbox(&mut self.show_bboxes, tr.text("tr-menu-view_show-bboxes"));
|
||||
ui.checkbox(
|
||||
&mut self.show_origin_destination,
|
||||
tr.text("show-origin-destination"),
|
||||
tr.text("tr-menu-view_show-origin-destination"),
|
||||
);
|
||||
|
||||
ui.separator();
|
||||
|
||||
ui.checkbox(&mut self.show_layer_manager, tr.text("show-layer-manager"));
|
||||
ui.checkbox(&mut self.show_layer_manager, tr.text("tr-menu-view_show-layer-manager"));
|
||||
|
||||
ui.separator();
|
||||
|
||||
ui.label(tr.text("frame-timestep"));
|
||||
ui.label(tr.text("tr-menu-view_frame-timestep"));
|
||||
ui.add(
|
||||
egui::widgets::Slider::new(&mut self.frame_timestep, 0.0..=3.0)
|
||||
.suffix(" s"),
|
||||
);
|
||||
});
|
||||
|
||||
ui.menu_button(tr.text("menu-place"), |ui| {
|
||||
ui.menu_button(tr.text("tr-menu-place"), |ui| {
|
||||
place_via.toggle_widget(ctx, ui, &mut self.is_placing_via);
|
||||
});
|
||||
|
||||
ui.menu_button(tr.text("menu-route"), |ui| {
|
||||
ui.menu_button(tr.text("tr-menu-route"), |ui| {
|
||||
autoroute.button(ctx, ui);
|
||||
ui.separator();
|
||||
|
||||
ui.menu_button(tr.text("menu-options"), |ui| {
|
||||
ui.menu_button(tr.text("tr-menu-options"), |ui| {
|
||||
ui.checkbox(
|
||||
&mut self.autorouter_options.presort_by_pairwise_detours,
|
||||
tr.text("presort-by-pairwise-detours"),
|
||||
tr.text("tr-menu-route-options_presort-by-pairwise-detours"),
|
||||
);
|
||||
ui.checkbox(
|
||||
&mut self
|
||||
.autorouter_options
|
||||
.router_options
|
||||
.squeeze_through_under_bands,
|
||||
tr.text("squeeze-through-under-bands"),
|
||||
tr.text("tr-menu-route-options_squeeze-through-under-bands"),
|
||||
);
|
||||
ui.checkbox(
|
||||
&mut self.autorouter_options.router_options.wrap_around_bands,
|
||||
tr.text("wrap-around-bands"),
|
||||
tr.text("tr-menu-route-options_wrap-around-bands"),
|
||||
);
|
||||
});
|
||||
});
|
||||
|
||||
ui.menu_button(tr.text("menu-inspect"), |ui| {
|
||||
ui.menu_button(tr.text("tr-menu-inspect"), |ui| {
|
||||
compare_detours.button(ctx, ui);
|
||||
measure_length.button(ctx, ui);
|
||||
});
|
||||
|
|
@ -262,7 +262,7 @@ impl MenuBar {
|
|||
}
|
||||
}
|
||||
let task = dialog
|
||||
.add_filter(tr.text("specctra-session-file"), &["ses"])
|
||||
.add_filter(tr.text("tr-menu-open_specctra-session-file"), &["ses"])
|
||||
.save_file();
|
||||
|
||||
execute(async move {
|
||||
|
|
|
|||
Loading…
Reference in New Issue