import bpy


def t(input_string):
    user_lang = bpy.context.preferences.view.language
    trans_result = trans_dict.get(input_string)
    if trans_result is None:
        return input_string

    if "zh_" in user_lang:
        return trans_result[1]
    if "ja_" in user_lang:
        return trans_result[2]
    else:
        return trans_result[0]


trans_dict = {
    "start": ["Start", "开始", "スタート"],
    "stop": ["Stop", "停止", "停止する"],
    "quit": ["Quit", "退出", "終了"],
    "apply_mesh": ["Apply Mesh", "应用网格", "メッシュを適用"],
    "enable": ["Enable", "启用", "有効化"],
    "disable": ["Disable", "禁用", "無効化"],
    "key": ["Key", "键", "キー"],
    "enter": ["Enter", "回车", "エンター"],
    "current_status": ["Current Status", "当前状态", "現在の状態"],
    "drawing": ["Drawing", "正在绘制", "描画中"],
    "patching": ["Patching", "选择补丁", "パッチ適用"],
    "click_drag_to_draw_line": [
        "Click drag to draw line",
        "点击并拖动鼠标绘制边缘",
        "クリックしてドラッグし線を描く",
    ],
    "snap_surface": ["Snap surface", "吸附表面", "サーフェスにスナップ"],
    "hold_ctrl": ["Hold Ctrl", "按住Ctrl", "Ctrlを押し続ける"],
    "hold_shift": ["hold Shift", "按住Shift", "Shiftを押し続ける"],
    "scroll": ["Scroll", "滚轮", "スクロール"],
    "change_segment": ["Change Segment", "改变分段数", "セグメントを変更"],
    "snap_vert": ["Snap Vertex", "吸附顶点", "頂点にスナップ"],
    "snap_exist_path": ["Snap Exist Path", "吸附已有路径", "既存のパスにスナップ"],
    "solver_solution": ["Solver Solution", "求解器结果", "ソルバーの解"],
    "pattern": ["Pattern", "形状", "パターン"],
    "solver_constraint": ["Solver Constraint", "求解器约束", "ソルバーの制約"],
    "change_padding": ["Change Padding", "改变填充数量", "パディングを変更"],
    "rotate_pattern": ["Rotate Pattern", "旋转形状", "パターンを回転"],
    "clear_constraint": ["Clear Constraint", "清除约束", "制約をクリア"],
    "switch_pattern": ["Switch Pattern", "切换形状", "パターンを切り替え"],
    "no_solution": ["No Solution", "无解", "解なし"],
    "not_even_num_edges": ["Not Even Number Edges", "非偶数边", "偶数でないエッジ数"],
    "no_match_pattern": [
        "No Match Pattern",
        "未找到匹配的形状",
        "一致するパターンなし",
    ],
    "rotation": ["Rotation", "旋转", "回転"],
    "paddings": ["Paddings", "填充", "パディング"],
    "var_constraint": ["Variable Constraint", "变量约束", "変数制約"],
    "current_para": ["Current Parameters", "当前参数", "現在のパラメータ"],
    "snap_obj_setting_desc": [
        "snap target obj, if empty snap to whole collection",
        "吸附目标物体，如果留空则吸附整个集合",
        "ターゲットオブジェクトをスナップします。空の場合はコレクション全体にスナップします",
    ],
    "flip_normal": ["Flip Normals", "反转法线", "法線を反転する"],
    "smooth_mesh": ["Smooth Mesh", "平滑网格", "スムーズ メッシュ"],
    "guide_mode": ["Guide Mode", "引导模式", "ガイドモード"],
    "only_clear_rotation": ["Only clear rotation", "只清除旋转", "回転のみクリア"],
    "only_clear_var": ["Only clear variable", "只清除变量", "変数のみクリア"],
    "snap_opposite": [
        "Snap to normals opposite surface",
        "吸附法线方向相反的表面",
        "サーフェスの反対側の法線にスナップします",
    ],
    "skip_no_solution_pattern": [
        "Skip no solution pattern",
        "跳过无解形状",
        "スキップなしの解決パターン",
    ],
    "padding": ["Padding", "填充", "パディング"],
    "snap_selected_to_surface": [
        "Snap Selected Vertices to Surface",
        "吸附选中顶点至表面",
        "選択頂点スナップ",
    ],
    "right_click": ["Right Click", "右键", "右クリック"],
    "cancel_this_draw": ["Cancel this Darw", "取消绘制", "この図面をキャンセル"],
    "left_click_release": ["Left Click Release", "释放左键", "左クリックリリース"],
    "apply_this_draw": ["Apply this Draw", "应用绘制", "この図面を適用"],
    "delete_highlight_edge": [
        "Delete highlight Edge",
        "删除高亮边",
        "ハイライトエッジを削除",
    ],
    "faces_normal_toward_viewport": [
        "Change Faces Normal Toward Viewport",
        "修改面法向朝向视图",
        "ビューポートに向かって面の法線を変更",
    ],
    "draw_on_axis_of_symmetry": [
        "Draw on Axis of Symmetry",
        "沿对称轴绘制",
        "対称軸に沿って描く",
    ],
    "you_cant_undo_here": [
        "Undo is not allowed here, quit and retry",
        "此處無法撤回，退出再試",
        "ここでは元に戻すことはできません。終了して再試行してください",
    ],
    "faces": [
        "Faces",
        "面",
        "ここでは元に戻すことはできません。終了して再試行してください",
    ],
    "verts": [
        "verts",
        "頂點",
        "頂点",
    ],
    "edges": [
        "edges",
        "边",
        "エッジ",
    ],
    "created": [
        "created",
        "創建",
        "作成された",
    ],
    "font_size": [
        "Font Size",
        "字體大小",
        "フォントサイズ",
    ],
    "hotkey_display_position": [
        "Hotkey Display Position",
        "熱鍵的展示位置",
        "ホットキーの表示位置",
    ],
}
