Files
fmviewer3/project/fm_viewer/core/fm_strings.cpp
2026-02-21 17:11:31 +09:00

806 lines
31 KiB
C++
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#include "fm_strings.h"
#define DEBUG_FM_STRINGS 0
#include <QFile>
#if (FM_STR_TYPE2)
QMap<QString,QStringList> FMS::strings = QMap<QString,QStringList>();
#else // FM_STR_TYPE2
#if !(MODEL_KOREAN_ONLY)
QMap<QString,QString> FMS::jps = QMap<QString,QString>();
#endif // MODEL_KOREAN_ONLY
#if(RM_MODEL == RM_MODEL_TYPE_ADT_CAPS || RM_MODEL == RM_MODEL_TYPE_TB4000 || RM_MODEL == RM_MODEL_TYPE_BV2000 || SUB_MODEL_KEIYO_KR || RM_MODEL == RM_MODEL_TYPE_MH9000 || RM_MODEL_TYPE_EMT_KR)
QMap<QString,QString> FMS::kos = QMap<QString,QString>();
#endif
#if(SUB_MODEL_BV5000 || RM_MODEL == RM_MODEL_TYPE_MH9000 || RM_MODEL_TYPE_EMT_KR)
QMap<QString,QString> FMS::ens = QMap<QString,QString>();
#endif
#endif // FM_STR_TYPE2
bool FMS::_loaded = false;
#if (FM_STR_TYPE2)
void FMS::load()
{
if(QFile::exists(":/raw/strings.txt"))
{
QFile f(":/raw/strings.txt");
if (f.open(QIODevice::ReadOnly))
{
QTextStream in(&f);
in.setCodec("UTF-8");
while (!in.atEnd())
{
QString line = in.readLine();
QStringList lst = line.split("|");
QString key = lst.first();
lst.removeFirst();
FMS::strings.insert(key,lst);
}
f.close();
}
}
}
QString FMS::txtLine(const char* key)
{
return txt(key).replace("\\n","\n");
}
QString FMS::txt(const char* key)
{
if(!_loaded) {
load();
_loaded = true;
}
return txt(key,RMLanguage::instance()->language());
}
QString FMS::txt(const char* key,RMLanguage::LANGUAGE_TYPE type)
{
if(!strings.contains(key)) {
qInfo() << "KEY NOT FOUND:" << key << __FUNCTION__;
return "";
}
int idx = 0;
switch (type) {
case RMLanguage::LANGUAGE_JP:
idx = 1;
break;
case RMLanguage::LANGUAGE_KR:
idx = 0;
break;
case RMLanguage::LANGUAGE_EN:
idx = 2;
break;
}
QStringList l = strings[key];
if(l.size() > idx) {
return l.at(idx);
}
qInfo() << "LANGUAGE NOT FOUND:" << key << "type:" << type << __FUNCTION__;
return "";
}
#else // FM_STR_TYPE2
void FMS::load()
{
#if (RM_MODEL == RM_MODEL_TYPE_TBD360) // ENG
jps.insert("report","Report");
jps.insert("map","Map");
jps.insert("language","Language");
jps.insert("file_type","Type");
jps.insert("file_name","File Name");
jps.insert("file_duration","Duration");
jps.insert("restart_msg","The application must restart in order to enable/disable H/W acceleration");
// ビューア情報
jps.insert("viewer_info","Viewer Info.");
jps.insert("capture","Capture");
jps.insert("close","Close");
jps.insert("minimize","Minimize");
jps.insert("low_speed","Low Speed");
jps.insert("high_speed","High Speed");
jps.insert("flip_h","Flip Horizontal");
jps.insert("flip_v","Flip Vertical");
// フロント・リア切替え
jps.insert("swap","Swap Screen");
jps.insert("mode_360","Camera Mode");
jps.insert("zoom_360","Zoom Mode");
jps.insert("reset_360","Reset Camera");
jps.insert("fullscreen","Full Screen");
jps.insert("graph_zoom_in","Zoom In");
jps.insert("graph_zoom_out","Zoom Out");
jps.insert("brightness","Brightness");
jps.insert("contrast","Contrast");
jps.insert("play_speed","Speed");
jps.insert("volume_mute","Mute");
jps.insert("volume_un_mute","Unmute");
jps.insert("play_backward","Seek backward");
jps.insert("play_forward","Seek forward");
jps.insert("play_play","Play");
jps.insert("play_stop","Stop");
jps.insert("play_file_previous","Previous File");
jps.insert("play_file_next","Next File");
jps.insert("open","Open");
jps.insert("play_pause","Pause");
jps.insert("backup","Backup");
jps.insert("viewer_sw_version","S/W Version");
jps.insert("hw_accel","Graphic Accelation");
jps.insert("ok","OK");
jps.insert("cancel","Cancel");
jps.insert("change","Change");
// 入力,確認
jps.insert("input","Input");
jps.insert("confirm","Confirm");
jps.insert("old","Previous");
// 間違ったパスワード
jps.insert("password_wrong","Wrong Password");
// 注意
jps.insert("warning","Warning");
jps.insert("save","Save");
// 初期値
jps.insert("default","Default");
// 緯度
jps.insert("lat","LAT:");
//経度
jps.insert("lon","LON:");
// 録画ファイルがあるフォルダを選択
jps.insert("open_message","Select the folder");
#else
#if (SUB_MODEL_BV5000 || RM_MODEL == RM_MODEL_TYPE_MH9000 || RM_MODEL_TYPE_EMT_KR)
ens.insert("report","Report");
ens.insert("map","Map");
ens.insert("language","Language");
ens.insert("auto_select","Auto");
ens.insert("file_type","Type");
ens.insert("file_name","File Name");
ens.insert("file_duration","Duration");
ens.insert("file_date","Date");
ens.insert("file_size","Size");
ens.insert("restart_msg","The application must restart in order to enable/disable H/W acceleration");
// ビューア情報
ens.insert("viewer_info","Viewer Info.");
ens.insert("capture","Capture");
ens.insert("close","Close");
ens.insert("minimize","Minimize");
ens.insert("maximize","Maximize");
ens.insert("restore_window","Restore Window");
ens.insert("low_speed","Low Speed");
ens.insert("high_speed","High Speed");
ens.insert("flip_h","Flip Horizontal");
ens.insert("flip_v","Flip Vertical");
// フロント・リア切替え
ens.insert("swap","Swap Screen");
ens.insert("mode_360","Camera Mode");
ens.insert("zoom_360","Zoom Mode");
ens.insert("reset_360","Reset Camera");
ens.insert("fullscreen","Full Screen");
ens.insert("graph_zoom_in","Zoom In");
ens.insert("graph_zoom_out","Zoom Out");
ens.insert("brightness","Brightness");
ens.insert("contrast","Contrast");
ens.insert("play_speed","Speed");
ens.insert("volume_mute","Mute");
ens.insert("volume_un_mute","Unmute");
ens.insert("play_backward","Seek backward");
ens.insert("play_forward","Seek forward");
ens.insert("play_play","Play");
ens.insert("play_stop","Stop");
ens.insert("play_file_previous","Previous File");
ens.insert("play_file_next","Next File");
ens.insert("open","Open");
ens.insert("play_pause","Pause");
ens.insert("backup","Backup");
ens.insert("viewer_sw_version","S/W Version");
ens.insert("hw_accel","Graphic Accelation");
ens.insert("ok","OK");
ens.insert("cancel","Cancel");
ens.insert("change","Change");
// 入力,確認
ens.insert("input","Input");
ens.insert("confirm","Confirm");
ens.insert("old","Previous");
// 間違ったパスワード
ens.insert("password_wrong","Wrong Password");
// 注意
ens.insert("warning","Warning");
ens.insert("save","Save");
// 初期値
ens.insert("default","Default");
// 緯度
ens.insert("lat","LAT:");
//経度
ens.insert("lon","LON:");
// 録画ファイルがあるフォルダを選択
ens.insert("open_message","Select the folder");
#endif // BV5000 ENG
#if !(MODEL_KOREAN_ONLY)
// 파일 저장
// ファイルの保存
jps.insert("backup_title",FM_WSTR(L"バックアップ中"));
// 파일 종류
jps.insert("type_event",FM_WSTR(L"衝撃検知"));
jps.insert("type_manual",FM_WSTR(L"手動"));
jps.insert("type_parking_normal",FM_WSTR(L"駐車監視"));
jps.insert("type_parking",FM_WSTR(L"パーキング"));
jps.insert("type_parking_event",FM_WSTR(L"駐車衝撃"));
jps.insert("type_normal",FM_WSTR(L"常時"));
#endif // #if !(MODEL_KOREAN_ONLY)
#if(SUB_MODEL_BV5000 || RM_MODEL == RM_MODEL_TYPE_MH9000 || RM_MODEL_TYPE_EMT_KR)
ens.insert("type_event","EVENT");
ens.insert("type_manual","MANUAL");
ens.insert("type_parking_normal","PARKING");
ens.insert("type_parking","PARKING");
ens.insert("type_parking_event","PAKING.E");
ens.insert("type_normal","NORMAL");
#endif // #if(SUPPORT_LANGUAGE_INSERT)
#if (RC_LANGUAGE==0x0412 || MODEL_KOREAN_ONLY)
kos.insert("type_event",FM_WSTR(L"이벤트"));
kos.insert("type_manual",FM_WSTR(L"수동"));
kos.insert("type_parking_normal",FM_WSTR(L"주차감시"));
kos.insert("type_parking",FM_WSTR(L"주차"));
kos.insert("type_parking_event",FM_WSTR(L"주차E"));
kos.insert("type_normal",FM_WSTR(L"상시"));
kos.insert("restart_msg",FM_WSTR(L"설정 적용을 위해 뷰어를 다시 시작 합니다."));
kos.insert("report",FM_WSTR(L"보고서"));
kos.insert("map",FM_WSTR(L"지도"));
kos.insert("language",FM_WSTR(L"언어"));
kos.insert("file_type",FM_WSTR(L"분류"));
kos.insert("file_name",FM_WSTR(L"파일명"));
kos.insert("file_date",FM_WSTR(L"날짜"));
kos.insert("file_duration",FM_WSTR(L"재생시간"));
kos.insert("file_size",FM_WSTR(L"크기")); // タイプ
kos.insert("viewer_info",FM_WSTR(L"S/W 정보"));
kos.insert("speed_warning",FM_WSTR(L"GPS 속도는 실제 속도와 다를 수 있습니다."));
kos.insert("capture",FM_WSTR(L"JPG 저장"));
kos.insert("capture_desc",FM_WSTR(L"현재 화면을 JPEG 파일로 저장 합니다"));
kos.insert("close",FM_WSTR(L"닫기"));
kos.insert("minimize",FM_WSTR(L"최소화"));
kos.insert("maximize",FM_WSTR(L"최대화"));
kos.insert("restore_window",FM_WSTR(L"이전 크기로 복원"));
kos.insert("low_speed",FM_WSTR(L"저속"));
kos.insert("high_speed",FM_WSTR(L"고속"));
kos.insert("flip_h",FM_WSTR(L"좌우반전"));
kos.insert("flip_v",FM_WSTR(L"상하반전"));
kos.insert("swap",FM_WSTR(L"전후방 화면 전환"));
kos.insert("indoor",FM_WSTR(L"실내외 화면 전환"));
kos.insert("fullscreen",FM_WSTR(L"전체화면"));
kos.insert("graph_zoom_in",FM_WSTR(L"확대"));
kos.insert("graph_zoom_out",FM_WSTR(L"축소"));
kos.insert("brightness",FM_WSTR(L"밝기조정"));
kos.insert("contrast",FM_WSTR(L"대비조정"));
kos.insert("play_speed",FM_WSTR(L"재생속도"));
kos.insert("volume_mute",FM_WSTR(L"음량"));
kos.insert("volume_un_mute",FM_WSTR(L"음량"));
kos.insert("play_backward",FM_WSTR(L"1초 이전으로 이동"));
kos.insert("play_forward",FM_WSTR(L"1초 이후로 이동"));
kos.insert("play_play",FM_WSTR(L"재생"));
kos.insert("play_stop",FM_WSTR(L"정지"));
kos.insert("play_file_previous",FM_WSTR(L"이전 파일"));
kos.insert("play_file_next",FM_WSTR(L"다음 파일"));
kos.insert("open",FM_WSTR(L"파일 열기"));
kos.insert("open_title",FM_WSTR(L"파일 열기"));
kos.insert("play_pause",FM_WSTR(L"일시 정지"));
kos.insert("backup_title",FM_WSTR(L"파일 저장"));
kos.insert("file_exist",FM_WSTR(L"이 위치에 같은 이름의 파일이 있습니다."));
kos.insert("apply_rule",FM_WSTR(L"동일한 작업을 다음의"));
kos.insert("after_files",FM_WSTR(L"파일에도 적용"));
kos.insert("skip",FM_WSTR(L"건너뛰기"));
kos.insert("overwrite",FM_WSTR(L"덮어쓰기"));
kos.insert("auto_select",FM_WSTR(L"자동선택"));
kos.insert("select_language",FM_WSTR(L"언어 선택"));
kos.insert("enter_file_name",FM_WSTR(L"파일명을 입력해 주십시오"));
kos.insert("front_suffix",FM_WSTR(L"전방"));
kos.insert("rear_suffix",FM_WSTR(L"후방"));
kos.insert("save_jpg_fail",FM_WSTR(L"JPEG 파일 생성 실패"));
kos.insert("thumbnail",FM_WSTR(L"썸네일보기"));
kos.insert("register",FM_WSTR(L"적발원부"));
kos.insert("save_video",FM_WSTR(L"영상저장"));
kos.insert("reset_360",FM_WSTR(L"초기화"));
kos.insert("save_360",FM_WSTR(L"파일로 저장"));
//
kos.insert("backup_title",FM_WSTR(L"파일 저장중..."));
kos.insert("change_folder",FM_WSTR(L"폴더 선택"));
kos.insert("backup",FM_WSTR(L"파일 저장"));
kos.insert("viewer_sw_version",FM_WSTR(L"Viewer S/W 버전 정보"));
kos.insert("hw_accel",FM_WSTR(L"H/W 가속 설정"));
kos.insert("pw_message",FM_WSTR(L"암호 (4 자 이상 20 자 이하) 생성."));
kos.insert("password",FM_WSTR(L"암호"));
kos.insert("password_new",FM_WSTR(L"신규 암호"));
kos.insert("password_input",FM_WSTR(L"암호 입력"));
kos.insert("password_change",FM_WSTR(L"암호 변경"));
kos.insert("ok",FM_WSTR(L"확인"));
kos.insert("cancel",FM_WSTR(L"취소"));
kos.insert("change",FM_WSTR(L"변경"));
kos.insert("input",FM_WSTR(L"입력"));
kos.insert("confirm",FM_WSTR(L"확인"));
kos.insert("old",FM_WSTR(L"이전"));
kos.insert("password_wrong",FM_WSTR(L"잘못된 암호"));
kos.insert("invalid_media",FM_WSTR(L"재생할 수 없는 파일입니다"));
kos.insert("warning",FM_WSTR(L"주의"));
kos.insert("file_not_exist",FM_WSTR(L"파일이 존재하지 않습니다"));
kos.insert("save",FM_WSTR(L"저장"));
kos.insert("default",FM_WSTR(L"초기화"));
kos.insert("lat",FM_WSTR(L"위도"));
kos.insert("lon",FM_WSTR(L"경도"));
kos.insert("open_message",FM_WSTR(L"녹화 파일이 있는 폴더를 선택"));
kos.insert("password",FM_WSTR(L"비밀번호설정"));
#endif // SUPPORT_LANGUAGE_INSERT || MODEL_KOREAN_ONLY
#if !(MODEL_KOREAN_ONLY)
jps.insert("settings",FM_WSTR(L"設定"));
#endif // MODEL_KOREAN_ONLY
kos.insert("settings",FM_WSTR(L"설정"));
ens.insert("settings",FM_WSTR(L"Settings"));
#if(SUPPORT_LANGUAGE_INSERT || RM_MODEL == RM_MODEL_TYPE_MH9000)
ens.insert("open_title","Open");
ens.insert("select_language","Select language");
#endif // #if(SUPPORT_LANGUAGE_INSERT)
#if !(MODEL_KOREAN_ONLY)
jps.insert("info",FM_WSTR(L"ビューアー情報"));
#endif // #if !(MODEL_KOREAN_ONLY)
#if(SUPPORT_LANGUAGE_INSERT)
kos.insert("info",FM_WSTR(L"뷰어정보"));
ens.insert("info",FM_WSTR(L"Viewer Info."));
#endif // #if(SUPPORT_LANGUAGE_INSERT)
#if !(MODEL_KOREAN_ONLY)
jps.insert("report","\xe3\x83\xac\xe3\x83\x9d\xe3\x83\xbc\xe3\x83\x88");
jps.insert("map","\xe5\x9c\xb0\xe5\x9b\xb3");
jps.insert("language","\xe8\xa8\x80\xe8\xaa\x9e\xe9\x81\xb8\xe6\x8a\x9e");
jps.insert("file_type","\xe3\x82\xbf\xe3\x82\xa4\xe3\x83\x97"); // タイプ
jps.insert("file_name","\xe3\x83\x95\xe3\x82\xa1\xe3\x82\xa4\xe3\x83\xab\xe5\x90\x8d"); // ファイル名
jps.insert("file_date",FM_WSTR(L"ファイル日付")); // ファイル名
jps.insert("file_duration","\xe9\x8c\xb2\xe7\x94\xbb\xe6\x99\x82\xe9\x96\x93"); // 録画時間
jps.insert("file_size",FM_WSTR(L"サイズ")); // タイプ
// 재기동 경고 再起動します
jps.insert("restart_msg","\xe5\x86\x8d\xe8\xb5\xb7\xe5\x8b\x95\xe3\x81\x97\xe3\x81\xbe\xe3\x81\x99");
// ビューア情報
jps.insert("viewer_info","\xe3\x83\x93\xe3\x83\xa5\xe3\x83\xbc\xe3\x82\xa2\xe6\x83\x85\xe5\xa0\xb1");
//速度はGPS算出値となります。実際の速度とは異なります。
jps.insert("speed_warning","\xe9\x80\x9f\xe5\xba\xa6\xe3\x81\xaf\x47\x50\x53\xe7\xae\x97\xe5\x87\xba\xe5\x80\xa4\xe3\x81\xa8\xe3\x81\xaa\xe3\x82\x8a\xe3\x81\xbe\xe3\x81\x99\xe3\x80\x82\xe5\xae\x9f\xe9\x9a\x9b\xe3\x81\xae\xe9\x80\x9f\xe5\xba\xa6\xe3\x81\xa8\xe3\x81\xaf\xe7\x95\xb0\xe3\x81\xaa\xe3\x82\x8a\xe3\x81\xbe\xe3\x81\x99\xe3\x80\x82");
jps.insert("capture","\x4a\x50\x47 \xe4\xbf\x9d\xe5\xad\x98");
jps.insert("capture_desc",FM_WSTR(L"キャプチャーをJPEGで保存します"));
//
jps.insert("close","\xe9\x96\x89\xe3\x81\x98\xe3\x82\x8b"); // 閉じる
jps.insert("minimize","\xe6\x9c\x80\xe5\xb0\x8f\xe5\x8c\x96"); // 最小化
jps.insert("maximize","\xe6\x9c\x80\xe5\xa4\xa7\xe5\x8c\x96"); // 最大化
jps.insert("restore_window","\xe5\x85\x83\xe3\x81\xab\xe6\x88\xbb\xe3\x81\x99\xef\xbc\x88\xe7\xb8\xae\xe5\xb0\x8f\xef\xbc\x89"); // 元に戻す(縮小)
jps.insert("low_speed","\xe4\xbd\x8e\xe9\x80\x9f");
jps.insert("high_speed","\xe9\xab\x98\xe9\x80\x9f \x28 \x31\x33\x30 \x4b\x6d\x2f\x68 \xe4\xbb\xa5\xe4\xb8\x8a \x29");
jps.insert("flip_h","\xe5\xb7\xa6\xe5\x8f\xb3\xe5\x8f\x8d\xe8\xbb\xa2"); // 左右反転
jps.insert("flip_v","\xe4\xb8\x8a\xe4\xb8\x8b\xe5\x8f\x8d\xe8\xbb\xa2"); // 上下反転
// フロント・リア切替え
// フロント・サブ切替え
#if (RM_MODEL == RM_MODEL_TYPE_XLDR_88)
jps.insert("swap",FM_WSTR(L"フロント・サブ切替え"));
#else
// フロント・リア切替え
#if (SUB_MODEL_KEIYO_360)
jps.insert("swap",FM_WSTR(L"360度・ワイド切り替え"));
#else // SUB_MODEL_KEIYO_360
jps.insert("swap",FM_WSTR(L"フロント・リア切替え"));
#endif // SUB_MODEL_KEIYO_360
#endif
jps.insert("indoor",FM_WSTR(L"室内・外切替え"));
#if (RM_MODEL == RM_MODEL_TYPE_KEIYO1 || \
RM_MODEL == RM_MODEL_TYPE_MBJ5010 || \
RM_MODEL == RM_MODEL_TYPE_BV2000 || \
RM_MODEL == RM_MODEL_TYPE_FC_DR232W) // 最大化,フルスクリーン
// フルスクリーン
jps.insert("fullscreen","\xe3\x83\x95\xe3\x83\xab\xe3\x82\xb9\xe3\x82\xaf\xe3\x83\xaa\xe3\x83\xbc\xe3\x83\xb3");
#else
jps.insert("fullscreen","\xe6\x9c\x80\xe5\xa4\xa7\xe5\x8c\x96");
#endif
jps.insert("graph_zoom_in","\xe6\x8b\xa1\xe5\xa4\xa7"); // 拡大
jps.insert("graph_zoom_out","\xe7\xb8\xae\xe5\xb0\x8f"); // 縮小
jps.insert("brightness","\xe6\x98\x8e\xe3\x82\x8b\xe3\x81\x95"); // 明るさ
jps.insert("contrast","\xe3\x82\xb3\xe3\x83\xb3\xe3\x83\x88\xe3\x83\xa9\xe3\x82\xb9\xe3\x83\x88"); // コントラスト
jps.insert("play_speed","\xe5\x86\x8d\xe7\x94\x9f\xe9\x80\x9f\xe5\xba\xa6"); // 再生速度
#if (RM_MODEL == RM_MODEL_TYPE_KEIYO1 || \
RM_MODEL == RM_MODEL_TYPE_BV2000 || \
RM_MODEL == RM_MODEL_TYPE_MBJ5010 || \
RM_MODEL == RM_MODEL_TYPE_FC_DR232W) // 音量
jps.insert("volume_mute","\xe9\x9f\xb3\xe9\x87\x8f"); // 音量
jps.insert("volume_un_mute","\xe9\x9f\xb3\xe9\x87\x8f");
#else
jps.insert("volume_mute","\xe6\xb6\x88\xe9\x9f\xb3\xe3\x83\xa2\xe3\x83\xbc\xe3\x83\x89");
jps.insert("volume_un_mute","\xe3\x83\x9f\xe3\x83\xa5\xe3\x83\xbc\xe3\x83\x88\xe3\x81\xae\xe8\xa7\xa3\xe9\x99\xa4");
#endif
#if (SEEK_STEP_SIZE == 10)
jps.insert("play_backward","\x31\x30\xe7\xa7\x92\xe5\x89\x8d\xe3\x81\xb8"); // 10秒前へ
jps.insert("play_forward","\x31\x30\xe7\xa7\x92\xe9\x80\xb2\xe3\x82\x80"); // 10秒進む
#else
jps.insert("play_backward","\x31\xe7\xa7\x92\xe5\x89\x8d\xe3\x81\xb8");
jps.insert("play_forward","\x31\xe7\xa7\x92\xe9\x80\xb2\xe3\x82\x80");
#endif
jps.insert("play_play","\xe5\x86\x8d\xe7\x94\x9f"); // 再生
jps.insert("play_stop","\xe5\x81\x9c\xe6\xad\xa2"); // 停止
jps.insert("play_file_previous","\xe5\x89\x8d\xe3\x81\xae\xe3\x83\x95\xe3\x82\xa1\xe3\x82\xa4\xe3\x83\xab"); // 前のファイル <- \xe4\xbb\xa5\xe5\x89\x8d\xe3\x83\x95\xe3\x82\xa1\xe3\x82\xa4\xe3\x83\xab
jps.insert("play_file_next","\xe6\xac\xa1\xe3\x81\xae\xe3\x83\x95\xe3\x82\xa1\xe3\x82\xa4\xe3\x83\xab");
jps.insert("open","\xe3\x83\x95\xe3\x82\xa1\xe3\x82\xa4\xe3\x83\xab\xe3\x82\x92\xe9\x96\x8b\xe3\x81\x8f");
jps.insert("play_pause","\xe4\xb8\x80\xe6\x99\x82\xe5\x81\x9c\xe6\xad\xa2");
jps.insert("open_title",FM_WSTR(L"ファイルOPEN"));
//
jps.insert("backup_title",FM_WSTR(L"ファイルの保存"));
jps.insert("file_exist",FM_WSTR(L"この場所に同じ名前のファイルがあります。"));
jps.insert("apply_rule",FM_WSTR(L"同じ処理を次の"));
jps.insert("after_files",FM_WSTR(L"個の競合に適用"));
jps.insert("skip",FM_WSTR(L"スキップ"));
jps.insert("overwrite",FM_WSTR(L"置き換える"));
jps.insert("auto_select",FM_WSTR(L"自動"));
jps.insert("select_language",FM_WSTR(L"言語を選択してください"));
jps.insert("enter_file_name",FM_WSTR(L"ファイル名を入れてください。"));
jps.insert("front_suffix",FM_WSTR(L"前方"));
jps.insert("rear_suffix",FM_WSTR(L"後方"));
jps.insert("save_jpg_fail",FM_WSTR(L"JPEGファイル生成に失敗しました。"));
jps.insert("change_folder",FM_WSTR(L"フォルダー変更"));
//
//
//
//
#if (RM_MODEL == RM_MODEL_TYPE_KEIYO1 || \
RM_MODEL == RM_MODEL_TYPE_MBJ5010 || \
RM_MODEL == RM_MODEL_TYPE_BV2000 || \
RM_MODEL == RM_MODEL_TYPE_FC_DR232W)
jps.insert("backup","\xe3\x82\xb3\xe3\x83\x94\xe3\x83\xbc"); // コピー
#else
jps.insert("backup","\xe4\xbf\x9d\xe5\xad\x98");
#endif
// Viewer S/W バージョン情報
jps.insert("viewer_sw_version","\x56\x69\x65\x77\x65\x72 \x53\x2f\x57 \xe3\x83\x90\xe3\x83\xbc\xe3\x82\xb8\xe3\x83\xa7\xe3\x83\xb3\xe6\x83\x85\xe5\xa0\xb1");
// ハードウェアアクセラレーション
jps.insert("hw_accel","\xe3\x83\x8f\xe3\x83\xbc\xe3\x83\x89\xe3\x82\xa6\xe3\x82\xa7\xe3\x82\xa2\xe3\x82\xa2\xe3\x82\xaf\xe3\x82\xbb\xe3\x83\xa9\xe3\x83\xac\xe3\x83\xbc\xe3\x82\xb7\xe3\x83\xa7\xe3\x83\xb3");
jps.insert("directx_audio",FM_WSTR(L"DirectX Audio でサウンド再生"));
// パスワード作成4文字以上20文字以内生成。
jps.insert("pw_message","\xe3\x83\x91\xe3\x82\xb9\xe3\x83\xaf\xe3\x83\xbc\xe3\x83\x89\xe4\xbd\x9c\xe6\x88\x90\xef\xbc\x88\x34\xe6\x96\x87\xe5\xad\x97\xe4\xbb\xa5\xe4\xb8\x8a\x32\x30\xe6\x96\x87\xe5\xad\x97\xe4\xbb\xa5\xe5\x86\x85\xef\xbc\x89\xe7\x94\x9f\xe6\x88\x90\xe3\x80\x82");
// パスワード
jps.insert("password","\xe3\x83\x91\xe3\x82\xb9\xe3\x83\xaf\xe3\x83\xbc\xe3\x83\x89");
// パスワード作成
jps.insert("password_new","\xe3\x83\x91\xe3\x82\xb9\xe3\x83\xaf\xe3\x83\xbc\xe3\x83\x89\xe4\xbd\x9c\xe6\x88\x90");
// パスワード入力
jps.insert("password_input","\xe3\x83\x91\xe3\x82\xb9\xe3\x83\xaf\xe3\x83\xbc\xe3\x83\x89\xe5\x85\xa5\xe5\x8a\x9b");
// パスワード変更
jps.insert("password_change","\xe3\x83\x91\xe3\x82\xb9\xe3\x83\xaf\xe3\x83\xbc\xe3\x83\x89\xe5\xa4\x89\xe6\x9b\xb4");
jps.insert("ok","\x4f\x4b");
jps.insert("cancel","\xe3\x82\xad\xe3\x83\xa3\xe3\x83\xb3\xe3\x82\xbb\xe3\x83\xab"); // キャンセル
jps.insert("change","\xe5\xa4\x89\xe6\x9b\xb4"); // 変更
// 入力,確認
jps.insert("input","\xe5\x85\xa5\xe5\x8a\x9b"); // 入力
jps.insert("confirm","\xe7\xa2\xba\xe8\xaa\x8d"); // 確認
jps.insert("old","\xe4\xbb\xa5\xe5\x89\x8d"); // 以前
//jps.insert("file_open_title","\xe3\x83\x95\xe3\x82\xa1\xe3\x82\xa4\xe3\x83\xab\x4f\x50\x45\x4e")
// 間違ったパスワード
jps.insert("password_wrong","\xe9\x96\x93\xe9\x81\x95\xe3\x81\xa3\xe3\x81\x9f\xe3\x83\x91\xe3\x82\xb9\xe3\x83\xaf\xe3\x83\xbc\xe3\x83\x89");
// 注意
jps.insert("warning","\xe6\xb3\xa8\xe6\x84\x8f");
jps.insert("file_not_exist",FM_WSTR(L"ファイルがありません"));
// \x4a\x50\x47 \xe4\xbf\x9d\xe5\xad\x98
// 保存 \xe4\xbf\x9d\xe5\xad\x98
jps.insert("save","\xe4\xbf\x9d\xe5\xad\x98");
// 初期値
jps.insert("default","\xe5\x88\x9d\xe6\x9c\x9f\xe5\x80\xa4");
// 緯度
jps.insert("lat","\xe7\xb7\xaf\xe5\xba\xa6");
//経度
jps.insert("lon","\xe7\xb5\x8c\xe5\xba\xa6");
// 録画ファイルがあるフォルダを選択
jps.insert("open_message","\xe9\x8c\xb2\xe7\x94\xbb\xe3\x83\x95\xe3\x82\xa1\xe3\x82\xa4\xe3\x83\xab\xe3\x81\x8c\xe3\x81\x82\xe3\x82\x8b\xe3\x83\x95\xe3\x82\xa9\xe3\x83\xab\xe3\x83\x80\xe3\x82\x92\xe9\x81\xb8\xe6\x8a\x9e");
// ファイル分割
jps.insert("split_files",FM_WSTR(L"ファイル分割"));
#endif // #if !(MODEL_KOREAN_ONLY)
#if(RM_MODEL == RM_MODEL_TYPE_ADT_CAPS)
kos.insert("report","\xeb\xb3\xb4\xea\xb3\xa0\xec\x84\x9c");
kos.insert("map","\xec\xa7\x80\xeb\x8f\x84");
kos.insert("language","\xec\x96\xb8\xec\x96\xb4");
kos.insert("viewer_info","\xeb\xb7\xb0\xec\x96\xb4\xec\xa0\x95\xeb\xb3\xb4");
kos.insert("capture","\xed\x99\x94\xeb\xa9\xb4\xec\xba\xa1\xec\xb3\x90");
kos.insert("setup","");
kos.insert("close","\xeb\x8b\xab\xea\xb8\xb0"); // 닫기
kos.insert("minimize","\xec\xb5\x9c\xec\x86\x8c\xed\x99\x94"); // 최소화
kos.insert("low_speed","\xec\xa0\x80\xec\x86\x8d");
kos.insert("high_speed","\xea\xb3\xa0\xec\x86\x8d \x28 \x31\x33\x30 \x4b\x6d\x2f\x68 \xec\x9d\xb4\xec\x83\x81 \x29");
kos.insert("flip_h","\xed\x99\x94\xeb\xa9\xb4\xec\xa2\x8c\xec\x9a\xb0\xeb\xb0\x98\xec\xa0\x84");
kos.insert("flip_v","\xed\x99\x94\xeb\xa9\xb4\xec\x83\x81\xed\x95\x98\xeb\xb0\x98\xec\xa0\x84");
kos.insert("swap","\xec\xb1\x84\xeb\x84\x90\xec\xa0\x84\xed\x99\x98");
kos.insert("fullscreen","\xec\xa0\x84\xec\xb2\xb4\xed\x99\x94\xeb\xa9\xb4");
kos.insert("graph_zoom_in","\xed\x99\x95\xeb\x8c\x80");
kos.insert("graph_zoom_out","\xec\xb6\x95\xec\x86\x8c");
kos.insert("brightness","\xeb\xb0\x9d\xea\xb8\xb0\xec\xa1\xb0\xec\xa0\x95");
kos.insert("contrast","\xeb\x8c\x80\xeb\xb9\x84\xec\xa1\xb0\xec\xa0\x95");
kos.insert("play_speed","\xec\x9e\xac\xec\x83\x9d\xec\x86\x8d\xeb\x8f\x84");
kos.insert("volume_mute","\xec\x9d\x8c\xec\x86\x8c\xea\xb1\xb0");
kos.insert("volume_un_mute","\xec\x9d\x8c\xec\x86\x8c\xea\xb1\xb0 \xed\x95\xb4\xec\xa0\x9c");
kos.insert("play_backward","\x31\xec\xb4\x88\xed\x9b\x84\xeb\xb0\xa9\xec\x9d\xb4\xeb\x8f\x99");
kos.insert("play_play","\xec\x9e\xac\xec\x83\x9d\xec\x8b\x9c\xec\x9e\x91");
kos.insert("play_stop","\xec\xa0\x95\xec\xa7\x80");
kos.insert("play_forward","\x31\xec\xb4\x88\xec\xa0\x84\xeb\xb0\xa9\xec\x9d\xb4\xeb\x8f\x99");
kos.insert("play_file_previous","\xec\x9d\xb4\xec\xa0\x84\xed\x8c\x8c\xec\x9d\xbc\xec\x9e\xac\xec\x83\x9d");
kos.insert("play_file_next","\xeb\x8b\xa4\xec\x9d\x8c\xed\x8c\x8c\xec\x9d\xbc\xec\x9e\xac\xec\x83\x9d");
kos.insert("open","\xed\x8c\x8c\xec\x9d\xbc\xec\x97\xb4\xea\xb8\xb0");
kos.insert("play_pause","\xec\x9d\xbc\xec\x8b\x9c\xec\xa0\x95\xec\xa7\x80");
kos.insert("backup","\xed\x8c\x8c\xec\x9d\xbc\xeb\xb3\xb4\xec\xa1\xb4");
kos.insert("viewer_sw_version","\xeb\xb7\xb0\xec\x96\xb4 \x53\x2f\x57 \xeb\xb2\x84\xec\xa0\x84 \xec\xa0\x95\xeb\xb3\xb4");
kos.insert("hw_accel","\x48\x2f\x57 \xea\xb7\xb8\xeb\x9e\x98\xed\x94\xbd \xea\xb0\x80\xec\x86\x8d \xec\x82\xac\xec\x9a\xa9");
#endif
#endif // ENG
#if (RM_MODEL == RM_MODEL_TYPE_MH9000)
jps.insert("select_fr",FM_WSTR(L"フロント l リア"));
jps.insert("select_lr",FM_WSTR(L"左サイド l 右サイド"));
jps.insert("select_front",FM_WSTR(L"フロント"));
jps.insert("select_rear",FM_WSTR(L"リア"));
jps.insert("select_left",FM_WSTR(L"左サイド"));
jps.insert("select_right",FM_WSTR(L"右サイド"));
jps.insert("select_asst",FM_WSTR(L"サブカメラ"));
jps.insert("select_indoor",FM_WSTR(L"車内カメラ"));
kos.insert("select_fr",FM_WSTR(L"전후방"));
kos.insert("select_lr",FM_WSTR(L"좌우측"));
kos.insert("select_front",FM_WSTR(L"전방"));
kos.insert("select_rear",FM_WSTR(L"후방"));
kos.insert("select_left",FM_WSTR(L"좌측"));
kos.insert("select_right",FM_WSTR(L"우측"));
kos.insert("select_asst",FM_WSTR(L"보조캠"));
kos.insert("select_indoor",FM_WSTR(L"실내캠"));
ens.insert("select_fr","Front|Rear");
ens.insert("select_lr",FM_WSTR(L"Left|Right"));
ens.insert("select_front",FM_WSTR(L"Front"));
ens.insert("select_rear",FM_WSTR(L"Rear"));
ens.insert("select_left",FM_WSTR(L"Left"));
ens.insert("select_right",FM_WSTR(L"Right"));
ens.insert("select_asst",FM_WSTR(L"Assistant"));
ens.insert("select_indoor",FM_WSTR(L"Indoor"));
#endif //
#if (DEBUG_FM_STRINGS)
QFile logFile("C:\\home\\temp2\\fmviewer.txt");
if (logFile.open(QFile::WriteOnly | QFile::Text))
{
QTextStream ts(&logFile);
ts.setCodec("UTF-8");
foreach (QString key, kos.keys())
{
ts << "\"" << key << "\",\"" << kos[key] << "\",\"" << jps[key] << "\",\"" << ens[key] << "\"\n";
}
}
#endif
}
#if (MODEL_KOREAN_ONLY)
QString FMS::txt(const char* key,RMLanguage::LANGUAGE_TYPE type) {
Q_UNUSED(type)
return FMS::txt(key);
}
#else // #if !(MODEL_KOREAN_ONLY)
QString FMS::txt(const char* key,RMLanguage::LANGUAGE_TYPE type) {
if(!_loaded) {
load();
_loaded = true;
}
QMap<QString,QString>* l = NULL;
switch (type) {
case RMLanguage::LANGUAGE_JP:
l = &FMS::jps;
break;
#if (RC_LANGUAGE == 0x0412)
case RMLanguage::LANGUAGE_KR:
l = &FMS::kos;
break;
#endif // #if (RC_LANGUAGE == 0x0412)
#if(SUB_MODEL_BV5000 || RM_MODEL == RM_MODEL_TYPE_MH9000 || RM_MODEL == RM_MODEL_TYPE_EMT_KR)
case RMLanguage::LANGUAGE_EN:
l = &FMS::ens;
break;
#endif // #if(SUB_MODEL_BV5000)
}
if(l->contains(key)) {
return l->value(key);
} else {
qInfo() << "STN:!!!" << key << RMLanguage::instance()->language() <<__FUNCTION__;
return "";
}
}
#endif // #if !(MODEL_KOREAN_ONLY)
QString FMS::txt(const char* key)
{
if(!_loaded) {
load();
_loaded = true;
}
#if (RM_MODEL == RM_MODEL_TYPE_NX_DRW22 || \
RM_MODEL == RM_MODEL_TYPE_KEIYO1 || \
RM_MODEL == RM_MODEL_TYPE_MBJ5010 || \
RM_MODEL == RM_MODEL_TYPE_TBD360 || \
RM_MODEL == RM_MODEL_TYPE_FC_DR232W || \
RM_MODEL == RM_MODEL_TYPE_AN6000 || \
RM_MODEL == RM_MODEL_TYPE_XLDR_88)
//qInfo() << jps.contains(key) << key << ":" << jps[key] << __FUNCTION__;
//qInfo() << key << QString::fromUtf8(jps[key]) << __FUNCTION__;
#if (MODEL_KOREAN_ONLY)
return kos[key];
#else // MODEL_KOREAN_ONLY
return jps[key];
#endif // MODEL_KOREAN_ONLY
#elif(RM_MODEL == RM_MODEL_TYPE_ADT_CAPS)
return kos[key];//QString::fromUtf8(kos[key]);
#elif (SUB_MODEL_BV5000 || RM_MODEL == RM_MODEL_TYPE_MH9000)
QMap<QString,QString>* l = NULL;
switch (RMLanguage::instance()->language()) {
case RMLanguage::LANGUAGE_JP:
l = &FMS::jps;
break;
case RMLanguage::LANGUAGE_KR:
l = &FMS::kos;
break;
case RMLanguage::LANGUAGE_EN:
l = &FMS::ens;
break;
}
if(l->contains(key)) {
return l->value(key);
} else {
qInfo() << "STN:!!!" << key << RMLanguage::instance()->language() <<__FUNCTION__;
return "";
}
#elif (RC_LANGUAGE == 0x0412)
if(!kos.contains(key) || kos.contains(key) == NULL) {
qInfo() << "LANGUAGE ERROR:" << key << __FUNCTION__ ;
return "";
}
return kos[key];
#endif
}
#if(SUPPORT_LANGUAGE_INSERT)
// 1:KR 2:JP, 3:EN
void FMS::insert_if_not_exist(int type,QString key, QString text)
{
QMap<QString,QString>* l = NULL;
switch (type) {
case 2:
l = &FMS::jps;
break;
case 3:
l = &FMS::ens;
break;
case 1:
l = &FMS::kos;
break;
}
//qInfo() << type << key << text << __FUNCTION__;
if(l != NULL && !l->contains(key)) {
l->insert(key,text);
}
}
#endif // #SUPPORT_LANGUAGE_INSERT
#endif // FM_STR_TYPE2