game_cheetah/
lib.rs

1#![warn(clippy::all, rust_2018_idioms)]
2
3pub mod search_type;
4pub use search_type::*;
5
6pub mod search_value;
7pub use search_value::*;
8
9pub mod search_context;
10pub use search_context::*;
11
12pub mod ui;
13pub use ui::*;
14
15pub mod state;
16pub use state::*;
17mod about_dialog;
18
19pub enum MessageCommand {
20    // Quit,
21    Freeze,
22    Unfreeze,
23    Pid,
24}
25
26pub struct FreezeMessage {
27    msg: MessageCommand,
28    addr: usize,
29    value: SearchValue,
30}
31
32impl FreezeMessage {
33    pub fn from_addr(cmd: MessageCommand, addr: usize) -> Self {
34        FreezeMessage {
35            msg: cmd,
36            addr,
37            value: SearchValue(SearchType::Guess, Vec::new()),
38        }
39    }
40}
41
42use rust_embed::RustEmbed;
43#[derive(RustEmbed)]
44#[folder = "i18n"] // path to the compiled localization resources
45struct Localizations;
46
47use i18n_embed::{
48    DesktopLanguageRequester,
49    fluent::{FluentLanguageLoader, fluent_language_loader},
50};
51
52use once_cell::sync::Lazy;
53pub static LANGUAGE_LOADER: Lazy<FluentLanguageLoader> = Lazy::new(|| {
54    let loader = fluent_language_loader!();
55    let requested_languages = DesktopLanguageRequester::requested_languages();
56    let _result = i18n_embed::select(&loader, &Localizations, &requested_languages);
57    loader
58});