Skip to main content

pixelcoords_core/
strings.rs

1//! User-facing overlay strings. Everything the overlay renders as text
2//! comes from here so a language table can replace `EN` later without a
3//! refactor. ASCII only — the embedded font covers printable ASCII.
4
5/// One control-panel row: a short key column and what the key does.
6pub type HintRow = (&'static str, &'static str);
7
8#[derive(Debug, Clone, Copy)]
9pub struct Strings {
10    /// The marking controls, shown while not editing a label.
11    pub hud_hint_rows: &'static [HintRow],
12    /// The label editor's controls.
13    pub hud_edit_rows: &'static [HintRow],
14    pub hud_saved_prefix: &'static str,
15    pub hud_save_failed_prefix: &'static str,
16    pub hud_quit_unsaved: &'static str,
17    /// Closing a window that still holds marks. The count goes between the
18    /// two halves; deleting stays an explicit act, so this refuses rather
19    /// than offering to discard.
20    pub hud_release_blocked_prefix: &'static str,
21    pub hud_release_blocked_suffix: &'static str,
22    /// A window closed while others remain: that display is live again.
23    pub hud_released: &'static str,
24}
25
26pub const EN: Strings = Strings {
27    hud_hint_rows: &[
28        ("drag", "draw / move / resize"),
29        ("Shift", "lock ratio / 15 turns"),
30        ("Q E", "rotate"),
31        ("W", "tool"),
32        ("A", "label"),
33        ("S", "save"),
34        ("D", "delete"),
35        ("Z", "undo / Shift redo"),
36        ("C", "cycle overlap"),
37        ("Alt+drag", "duplicate"),
38        ("arrows", "nudge (Shift 10, Alt size)"),
39        ("M", "hold: loupe"),
40        ("N", "name session"),
41        ("R", "release monitor"),
42        ("3-9", "polygon sides"),
43        ("Space", "hold: move panel"),
44        ("H", "hide panel"),
45        ("Esc", "quit"),
46    ],
47    hud_edit_rows: &[("type", "text"), ("Enter", "commit"), ("Esc", "cancel")],
48    hud_saved_prefix: "Saved ",
49    hud_save_failed_prefix: "Save failed: ",
50    hud_quit_unsaved: "Unsaved work - S saves, Esc again quits",
51    hud_release_blocked_prefix: "Monitor holds ",
52    hud_release_blocked_suffix: " selections - delete them first",
53    hud_released: "Monitor released",
54};