From af5209da9a93f949875c588c472f473a7b7f69d8 Mon Sep 17 00:00:00 2001 From: nishikawa_takeshi Date: Tue, 2 Sep 2008 11:41:19 +0000 Subject: [PATCH] =?UTF-8?q?=E3=83=9E=E3=82=B9=E3=82=BF=E3=82=A8=E3=83=87?= =?UTF-8?q?=E3=82=A3=E3=82=BF:=E8=8B=B1=E8=AA=9E=E7=89=88=E4=BD=9C?= =?UTF-8?q?=E6=88=90=E3=80=82MRC=E3=82=A8=E3=83=A9=E3=83=BC=E8=A1=A8?= =?UTF-8?q?=E7=A4=BA=E3=81=AE=E8=8B=B1=E8=AA=9E=E7=89=88=E5=88=87=E3=82=8A?= =?UTF-8?q?=E6=9B=BF=E3=81=88=E3=81=AE=E3=83=90=E3=82=B0=E4=BF=AE=E6=AD=A3?= =?UTF-8?q?=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@2372 b08762b0-b915-fc4b-9d8c-17b2551a87ff --- .../tools/MasterEditorTWL/MasterEditorTWL.ncb | Bin 11185152 -> 11185152 bytes .../tools/MasterEditorTWL/MasterEditorTWL.suo | Bin 41472 -> 40448 bytes .../MasterEditorTWL/Debug/BuildLog.htm | Bin 15654 -> 13600 bytes .../MasterEditorTWL/MasterEditorTWL/Form1.h | 521 +++++++++++------- .../MasterEditorTWL/Form1.resX | 18 + .../MasterEditorTWL/FormError.h | 4 +- .../MasterEditorTWL/MasterEditorTWL/lang.h | 16 +- .../MasterEditorTWL/MasterEditorTWL/srl.cpp | 2 + .../MasterEditorTWL/MasterEditorTWL/srl.h | 7 +- .../MasterEditorTWL/MasterEditorTWL/stdafx.h | 1 + 10 files changed, 362 insertions(+), 207 deletions(-) diff --git a/build/tools/MasterEditorTWL/MasterEditorTWL.ncb b/build/tools/MasterEditorTWL/MasterEditorTWL.ncb index 77f859eb8457e0a21e57db8164ef2c1816e92363..de70aaf960f27e3b347f42603d7cc8b6846dd7fb 100644 GIT binary patch delta 56814 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�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%0AmACP~)0lM+Y358FMK<^bY_&+s*TF$&g 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 F{{pvk_0#|W delta 5036 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 Y3`#(S;*%Fhvux%v^kUxJWU+(=0MUv=9RL6T delta 1128 zcmcIjO=uHQ5T0ymkVuKNfh0ugx~Of@CX?1g@g|8vQKMEg{!-Fynnr4pZqph?nu`dE zpyXXWC=@SJ5S|AGz4WfA=vB`~1;L944}LFeli03D4{!IqneUtV-n^LymmXbvvZ84X zmMdDt-J762G=io6!xSeb7P0;jdEN7LqmxsHgR?F;;{RYRx@5KI-UdfRICxRKcW)lm z$smhzG)H-Sixk1PiltMO=3&jzNh)Dyk%|3r%2I`~$0ENA z-RP=s@rbXX@AAmjw8sf3mv=OuY46$yGS*+xz*y%H;b2(49*n5G`_{31yFNQRHVw_X z{U7-i|Kew?Q-fb(_nhl2&PDrtj7zpntM657zn4yj`4%tVuJMbzHD2VitZ_GaTO^%6 z@IzkWFNpYa>L^fx^PFlTBdA^k33R%1{$@G@TZYH~@Yf_prA^w8TBq7LAhO=xq#fJ>NDYmeJUgUa a=mVI$88BM(rcnDim4F4vn3VJUxa&7NbM+Vi diff --git a/build/tools/MasterEditorTWL/MasterEditorTWL/Form1.h b/build/tools/MasterEditorTWL/MasterEditorTWL/Form1.h index 0f2026e4..27285935 100644 --- a/build/tools/MasterEditorTWL/MasterEditorTWL/Form1.h +++ b/build/tools/MasterEditorTWL/MasterEditorTWL/Form1.h @@ -516,10 +516,10 @@ private: System::Windows::Forms::Label^ labError; private: System::Windows::Forms::RadioButton^ rErrorCurrent; private: System::Windows::Forms::RadioButton^ rErrorReading; -private: System::Windows::Forms::DataGridViewTextBoxColumn^ colWarnName; -private: System::Windows::Forms::DataGridViewTextBoxColumn^ colWarnBegin; -private: System::Windows::Forms::DataGridViewTextBoxColumn^ colWarnEnd; -private: System::Windows::Forms::DataGridViewTextBoxColumn^ colWarnCause; + + + + @@ -528,6 +528,10 @@ private: System::Windows::Forms::Label^ labMultiForeign2; private: System::Windows::Forms::DataGridView^ gridLibrary; private: System::Windows::Forms::DataGridViewTextBoxColumn^ colLibPublisher; private: System::Windows::Forms::DataGridViewTextBoxColumn^ colLibName; +private: System::Windows::Forms::DataGridViewTextBoxColumn^ colWarnName; +private: System::Windows::Forms::DataGridViewTextBoxColumn^ colWarnBegin; +private: System::Windows::Forms::DataGridViewTextBoxColumn^ colWarnEnd; +private: System::Windows::Forms::DataGridViewTextBoxColumn^ colWarnCause; private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorName; private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorBegin; private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorEnd; @@ -584,6 +588,10 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; + + + + @@ -626,8 +634,8 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; // 複数行表示したいが初期値で設定できないのでここで設定 this->tboxGuideErrorInfo->Text = "このタブには読み込んだROMデータの問題と本プログラムでの入力ミスが列挙されます。"; this->tboxGuideErrorInfo->Text += "\r\n赤文字の項目は、本プログラムで修正不可です。ROMデータ作成時の設定をご確認ください。"; - this->tboxGuideErrorInfo->Text += "\r\n青文字の項目は、本プログラムで修正できますが、修正によってROMデータが変更されます。"; - this->tboxGuideErrorInfo->Text += "\r\n黒文字の項目は、提出書類にのみ反映され、ROMデータは変更されません。"; + this->tboxGuideErrorInfo->Text += "\r\n青文字の項目は、本プログラムで修正できますが、修正がマスターROMに反映されます。"; + this->tboxGuideErrorInfo->Text += "\r\n黒文字の項目は、提出確認書にのみ反映され、マスターROMには反映されません。"; this->loadInit(); // 設定ファイルの読み込み } @@ -665,7 +673,7 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; /// void InitializeComponent(void) { - System::Windows::Forms::DataGridViewCellStyle^ dataGridViewCellStyle1 = (gcnew System::Windows::Forms::DataGridViewCellStyle()); + System::Windows::Forms::DataGridViewCellStyle^ dataGridViewCellStyle4 = (gcnew System::Windows::Forms::DataGridViewCellStyle()); this->tboxFile = (gcnew System::Windows::Forms::TextBox()); this->gboxSrl = (gcnew System::Windows::Forms::GroupBox()); this->tboxRemasterVer = (gcnew System::Windows::Forms::TextBox()); @@ -1198,7 +1206,7 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; // labCaption // this->labCaption->AutoSize = true; - this->labCaption->Location = System::Drawing::Point(367, 263); + this->labCaption->Location = System::Drawing::Point(379, 245); this->labCaption->Name = L"labCaption"; this->labCaption->Size = System::Drawing::Size(241, 12); this->labCaption->TabIndex = 8; @@ -1206,10 +1214,10 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; // // tboxCaption // - this->tboxCaption->Location = System::Drawing::Point(366, 280); + this->tboxCaption->Location = System::Drawing::Point(378, 263); this->tboxCaption->Multiline = true; this->tboxCaption->Name = L"tboxCaption"; - this->tboxCaption->Size = System::Drawing::Size(345, 57); + this->tboxCaption->Size = System::Drawing::Size(345, 74); this->tboxCaption->TabIndex = 8; // // labPEGIBBFC2 @@ -1937,7 +1945,7 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; // // tboxProductCode2 // - this->tboxProductCode2->Location = System::Drawing::Point(177, 86); + this->tboxProductCode2->Location = System::Drawing::Point(175, 81); this->tboxProductCode2->MaxLength = 4; this->tboxProductCode2->Name = L"tboxProductCode2"; this->tboxProductCode2->Size = System::Drawing::Size(56, 19); @@ -1945,7 +1953,7 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; // // tboxProductCode1 // - this->tboxProductCode1->Location = System::Drawing::Point(142, 86); + this->tboxProductCode1->Location = System::Drawing::Point(140, 81); this->tboxProductCode1->MaxLength = 1; this->tboxProductCode1->Name = L"tboxProductCode1"; this->tboxProductCode1->Size = System::Drawing::Size(18, 19); @@ -1953,7 +1961,7 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; // // tboxProductName // - this->tboxProductName->Location = System::Drawing::Point(106, 58); + this->tboxProductName->Location = System::Drawing::Point(106, 53); this->tboxProductName->Name = L"tboxProductName"; this->tboxProductName->Size = System::Drawing::Size(225, 19); this->tboxProductName->TabIndex = 0; @@ -1961,7 +1969,7 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; // labProductCode2 // this->labProductCode2->AutoSize = true; - this->labProductCode2->Location = System::Drawing::Point(166, 89); + this->labProductCode2->Location = System::Drawing::Point(164, 84); this->labProductCode2->Name = L"labProductCode2"; this->labProductCode2->Size = System::Drawing::Size(11, 12); this->labProductCode2->TabIndex = 33; @@ -1970,7 +1978,7 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; // labProductCode1 // this->labProductCode1->AutoSize = true; - this->labProductCode1->Location = System::Drawing::Point(106, 89); + this->labProductCode1->Location = System::Drawing::Point(104, 84); this->labProductCode1->Name = L"labProductCode1"; this->labProductCode1->Size = System::Drawing::Size(37, 12); this->labProductCode1->TabIndex = 32; @@ -1979,7 +1987,7 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; // dateSubmit // this->dateSubmit->Format = System::Windows::Forms::DateTimePickerFormat::Short; - this->dateSubmit->Location = System::Drawing::Point(108, 145); + this->dateSubmit->Location = System::Drawing::Point(106, 140); this->dateSubmit->MaxDate = System::DateTime(2099, 12, 31, 0, 0, 0, 0); this->dateSubmit->MinDate = System::DateTime(2008, 1, 1, 0, 0, 0, 0); this->dateSubmit->Name = L"dateSubmit"; @@ -1990,7 +1998,7 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; // dateRelease // this->dateRelease->Format = System::Windows::Forms::DateTimePickerFormat::Short; - this->dateRelease->Location = System::Drawing::Point(108, 116); + this->dateRelease->Location = System::Drawing::Point(106, 111); this->dateRelease->MaxDate = System::DateTime(2099, 12, 31, 0, 0, 0, 0); this->dateRelease->MinDate = System::DateTime(2008, 1, 1, 0, 0, 0, 0); this->dateRelease->Name = L"dateRelease"; @@ -2005,9 +2013,9 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; this->gboxUsage->Controls->Add(this->rUsageDst); this->gboxUsage->Controls->Add(this->rUsageSample); this->gboxUsage->Controls->Add(this->rUsageSale); - this->gboxUsage->Location = System::Drawing::Point(18, 263); + this->gboxUsage->Location = System::Drawing::Point(16, 258); this->gboxUsage->Name = L"gboxUsage"; - this->gboxUsage->Size = System::Drawing::Size(310, 74); + this->gboxUsage->Size = System::Drawing::Size(346, 68); this->gboxUsage->TabIndex = 6; this->gboxUsage->TabStop = false; this->gboxUsage->Text = L"用途"; @@ -2067,7 +2075,7 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; // this->gboxSubmitWay->Controls->Add(this->rSubmitHand); this->gboxSubmitWay->Controls->Add(this->rSubmitPost); - this->gboxSubmitWay->Location = System::Drawing::Point(18, 212); + this->gboxSubmitWay->Location = System::Drawing::Point(16, 207); this->gboxSubmitWay->Name = L"gboxSubmitWay"; this->gboxSubmitWay->Size = System::Drawing::Size(155, 45); this->gboxSubmitWay->TabIndex = 5; @@ -2099,7 +2107,7 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; // labSubmiteDate // this->labSubmiteDate->AutoSize = true; - this->labSubmiteDate->Location = System::Drawing::Point(16, 148); + this->labSubmiteDate->Location = System::Drawing::Point(14, 143); this->labSubmiteDate->Name = L"labSubmiteDate"; this->labSubmiteDate->Size = System::Drawing::Size(65, 12); this->labSubmiteDate->TabIndex = 11; @@ -2108,7 +2116,7 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; // labReleaseDate // this->labReleaseDate->AutoSize = true; - this->labReleaseDate->Location = System::Drawing::Point(17, 119); + this->labReleaseDate->Location = System::Drawing::Point(15, 114); this->labReleaseDate->Name = L"labReleaseDate"; this->labReleaseDate->Size = System::Drawing::Size(65, 12); this->labReleaseDate->TabIndex = 7; @@ -2117,7 +2125,7 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; // labProductCode // this->labProductCode->AutoSize = true; - this->labProductCode->Location = System::Drawing::Point(16, 89); + this->labProductCode->Location = System::Drawing::Point(14, 84); this->labProductCode->Name = L"labProductCode"; this->labProductCode->Size = System::Drawing::Size(56, 12); this->labProductCode->TabIndex = 6; @@ -2126,7 +2134,7 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; // labProductName // this->labProductName->AutoSize = true; - this->labProductName->Location = System::Drawing::Point(16, 58); + this->labProductName->Location = System::Drawing::Point(15, 56); this->labProductName->Name = L"labProductName"; this->labProductName->Size = System::Drawing::Size(41, 12); this->labProductName->TabIndex = 5; @@ -2135,7 +2143,7 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; // labCapSubmitVer // this->labCapSubmitVer->AutoSize = true; - this->labCapSubmitVer->Location = System::Drawing::Point(106, 199); + this->labCapSubmitVer->Location = System::Drawing::Point(104, 194); this->labCapSubmitVer->Name = L"labCapSubmitVer"; this->labCapSubmitVer->Size = System::Drawing::Size(233, 12); this->labCapSubmitVer->TabIndex = 26; @@ -2143,7 +2151,7 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; // // numSubmitVersion // - this->numSubmitVersion->Location = System::Drawing::Point(108, 177); + this->numSubmitVersion->Location = System::Drawing::Point(106, 172); this->numSubmitVersion->Name = L"numSubmitVersion"; this->numSubmitVersion->Size = System::Drawing::Size(38, 19); this->numSubmitVersion->TabIndex = 9; @@ -2151,7 +2159,7 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; // labSubmitVer // this->labSubmitVer->AutoSize = true; - this->labSubmitVer->Location = System::Drawing::Point(17, 179); + this->labSubmitVer->Location = System::Drawing::Point(15, 174); this->labSubmitVer->Name = L"labSubmitVer"; this->labSubmitVer->Size = System::Drawing::Size(74, 12); this->labSubmitVer->TabIndex = 24; @@ -2893,9 +2901,9 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; this->gboxProd->Controls->Add(this->combBackup); this->gboxProd->Controls->Add(this->labBackup); this->gboxProd->Controls->Add(this->tboxBackupOther); - this->gboxProd->Location = System::Drawing::Point(361, 51); + this->gboxProd->Location = System::Drawing::Point(367, 36); this->gboxProd->Name = L"gboxProd"; - this->gboxProd->Size = System::Drawing::Size(350, 50); + this->gboxProd->Size = System::Drawing::Size(356, 50); this->gboxProd->TabIndex = 13; this->gboxProd->TabStop = false; this->gboxProd->Text = L"ROM生産情報"; @@ -2948,14 +2956,14 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; // stripItemSheet // this->stripItemSheet->Name = L"stripItemSheet"; - this->stripItemSheet->Size = System::Drawing::Size(220, 22); - this->stripItemSheet->Text = L"提出書類とマスターROMを作成"; + this->stripItemSheet->Size = System::Drawing::Size(232, 22); + this->stripItemSheet->Text = L"提出確認書とマスターROMを作成"; this->stripItemSheet->Click += gcnew System::EventHandler(this, &Form1::stripItemSheet_Click); // // stripItemMasterRom // this->stripItemMasterRom->Name = L"stripItemMasterRom"; - this->stripItemMasterRom->Size = System::Drawing::Size(220, 22); + this->stripItemMasterRom->Size = System::Drawing::Size(232, 22); this->stripItemMasterRom->Text = L"マスターROMのみを作成"; this->stripItemMasterRom->Click += gcnew System::EventHandler(this, &Form1::stripItemMasterRom_Click); // @@ -3045,7 +3053,7 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; // tboxGuideRomInfo // this->tboxGuideRomInfo->BackColor = System::Drawing::SystemColors::Info; - this->tboxGuideRomInfo->Location = System::Drawing::Point(24, 17); + this->tboxGuideRomInfo->Location = System::Drawing::Point(24, 11); this->tboxGuideRomInfo->Name = L"tboxGuideRomInfo"; this->tboxGuideRomInfo->ReadOnly = true; this->tboxGuideRomInfo->Size = System::Drawing::Size(687, 19); @@ -3071,7 +3079,7 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; // tboxGuideTWLInfo // this->tboxGuideTWLInfo->BackColor = System::Drawing::SystemColors::Info; - this->tboxGuideTWLInfo->Location = System::Drawing::Point(22, 18); + this->tboxGuideTWLInfo->Location = System::Drawing::Point(24, 11); this->tboxGuideTWLInfo->Name = L"tboxGuideTWLInfo"; this->tboxGuideTWLInfo->ReadOnly = true; this->tboxGuideTWLInfo->Size = System::Drawing::Size(687, 19); @@ -3107,12 +3115,12 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; // tboxGuideRomEditInfo // this->tboxGuideRomEditInfo->BackColor = System::Drawing::SystemColors::Info; - this->tboxGuideRomEditInfo->Location = System::Drawing::Point(25, 19); + this->tboxGuideRomEditInfo->Location = System::Drawing::Point(24, 11); this->tboxGuideRomEditInfo->Name = L"tboxGuideRomEditInfo"; this->tboxGuideRomEditInfo->ReadOnly = true; this->tboxGuideRomEditInfo->Size = System::Drawing::Size(687, 19); this->tboxGuideRomEditInfo->TabIndex = 37; - this->tboxGuideRomEditInfo->Text = L"このタブの情報は、マスターROMの作成に必要です。適宜、変更してください。"; + this->tboxGuideRomEditInfo->Text = L"このタブの情報は、提出確認書およびマスターROMの作成に必要です。編集してください。"; // // gboxParental // @@ -3213,12 +3221,12 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; // tboxGuideSubmitInfo // this->tboxGuideSubmitInfo->BackColor = System::Drawing::SystemColors::Info; - this->tboxGuideSubmitInfo->Location = System::Drawing::Point(24, 19); + this->tboxGuideSubmitInfo->Location = System::Drawing::Point(24, 11); this->tboxGuideSubmitInfo->Name = L"tboxGuideSubmitInfo"; this->tboxGuideSubmitInfo->ReadOnly = true; this->tboxGuideSubmitInfo->Size = System::Drawing::Size(687, 19); this->tboxGuideSubmitInfo->TabIndex = 38; - this->tboxGuideSubmitInfo->Text = L"このタブの情報は提出書類の作成に必要です。入力してください。"; + this->tboxGuideSubmitInfo->Text = L"このタブの情報は提出確認書の作成に必要です。入力してください。"; // // gboxForeign // @@ -3234,9 +3242,9 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; this->gboxForeign->Controls->Add(this->labProductCode1Foreign); this->gboxForeign->Controls->Add(this->tboxProductNameForeign); this->gboxForeign->Controls->Add(this->labProductNameForeign); - this->gboxForeign->Location = System::Drawing::Point(362, 107); + this->gboxForeign->Location = System::Drawing::Point(368, 92); this->gboxForeign->Name = L"gboxForeign"; - this->gboxForeign->Size = System::Drawing::Size(349, 141); + this->gboxForeign->Size = System::Drawing::Size(355, 141); this->gboxForeign->TabIndex = 35; this->gboxForeign->TabStop = false; this->gboxForeign->Text = L"海外版"; @@ -3266,12 +3274,12 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; // tboxGuideCompanyInfo // this->tboxGuideCompanyInfo->BackColor = System::Drawing::SystemColors::Info; - this->tboxGuideCompanyInfo->Location = System::Drawing::Point(26, 21); + this->tboxGuideCompanyInfo->Location = System::Drawing::Point(24, 11); this->tboxGuideCompanyInfo->Name = L"tboxGuideCompanyInfo"; this->tboxGuideCompanyInfo->ReadOnly = true; this->tboxGuideCompanyInfo->Size = System::Drawing::Size(687, 19); this->tboxGuideCompanyInfo->TabIndex = 39; - this->tboxGuideCompanyInfo->Text = L"このタブの情報は提出書類の作成に必要です。入力してください。"; + this->tboxGuideCompanyInfo->Text = L"このタブの情報は提出確認書の作成に必要です。入力してください。"; // // tabErrorInfo // @@ -3295,16 +3303,16 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; this->tboxGuideErrorInfo->Multiline = true; this->tboxGuideErrorInfo->Name = L"tboxGuideErrorInfo"; this->tboxGuideErrorInfo->ReadOnly = true; - this->tboxGuideErrorInfo->Size = System::Drawing::Size(533, 61); + this->tboxGuideErrorInfo->Size = System::Drawing::Size(511, 61); this->tboxGuideErrorInfo->TabIndex = 40; // // gboxErrorTiming // this->gboxErrorTiming->Controls->Add(this->rErrorCurrent); this->gboxErrorTiming->Controls->Add(this->rErrorReading); - this->gboxErrorTiming->Location = System::Drawing::Point(573, 11); + this->gboxErrorTiming->Location = System::Drawing::Point(551, 11); this->gboxErrorTiming->Name = L"gboxErrorTiming"; - this->gboxErrorTiming->Size = System::Drawing::Size(148, 71); + this->gboxErrorTiming->Size = System::Drawing::Size(172, 71); this->gboxErrorTiming->TabIndex = 41; this->gboxErrorTiming->TabStop = false; this->gboxErrorTiming->Text = L"いつの情報を表示するか"; @@ -3340,9 +3348,9 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; this->labWarn->ForeColor = System::Drawing::SystemColors::ActiveCaption; this->labWarn->Location = System::Drawing::Point(22, 213); this->labWarn->Name = L"labWarn"; - this->labWarn->Size = System::Drawing::Size(331, 12); + this->labWarn->Size = System::Drawing::Size(339, 12); this->labWarn->TabIndex = 40; - this->labWarn->Text = L"警告(修正は必須ではありませんが情報に誤りがないかご確認ください)"; + this->labWarn->Text = L"警告(修正は必須ではありませんが情報に誤りがないかご確認ください。)"; // // labError // @@ -3350,9 +3358,9 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; this->labError->ForeColor = System::Drawing::SystemColors::ActiveCaption; this->labError->Location = System::Drawing::Point(22, 84); this->labError->Name = L"labError"; - this->labError->Size = System::Drawing::Size(137, 12); + this->labError->Size = System::Drawing::Size(145, 12); this->labError->TabIndex = 39; - this->labError->Text = L"エラー(必ず修正してください)"; + this->labError->Text = L"エラー(必ず修正してください。)"; // // gridWarn // @@ -3374,7 +3382,7 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; this->colWarnName->HeaderText = L"項目名"; this->colWarnName->Name = L"colWarnName"; this->colWarnName->ReadOnly = true; - this->colWarnName->Width = 120; + this->colWarnName->Width = 150; // // colWarnBegin // @@ -3399,8 +3407,8 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; // // gridError // - dataGridViewCellStyle1->BackColor = System::Drawing::Color::White; - this->gridError->AlternatingRowsDefaultCellStyle = dataGridViewCellStyle1; + dataGridViewCellStyle4->BackColor = System::Drawing::Color::White; + this->gridError->AlternatingRowsDefaultCellStyle = dataGridViewCellStyle4; this->gridError->BackgroundColor = System::Drawing::SystemColors::Control; this->gridError->ColumnHeadersHeightSizeMode = System::Windows::Forms::DataGridViewColumnHeadersHeightSizeMode::AutoSize; this->gridError->Columns->AddRange(gcnew cli::array< System::Windows::Forms::DataGridViewColumn^ >(4) {this->colErrorName, @@ -3419,7 +3427,7 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; this->colErrorName->HeaderText = L"項目名"; this->colErrorName->Name = L"colErrorName"; this->colErrorName->ReadOnly = true; - this->colErrorName->Width = 120; + this->colErrorName->Width = 150; // // colErrorBegin // @@ -3641,7 +3649,7 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; if( this->hSrl->hErrorList->Count > 0 ) { this->errMsg( "ROMデータにエラーがあります。「エラー情報」タブをご確認ください。", - "ROM data include error. Please look the tab \"Error\"." ); + "ROM data include error. Please look the tab \"Setting Error\"." ); return; } } // openSrl @@ -4315,7 +4323,7 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; System::Boolean checkTextForm( System::String ^formtext, System::String ^labelJ, System::String ^labelE, System::Boolean affectRom ) { System::String ^msgJ = gcnew System::String( "入力されていません。" ); - System::String ^msgE = gcnew System::String( "No setting. Please retry to input." ); + System::String ^msgE = gcnew System::String( "No item is set. Please retry to input." ); System::String ^tmp = formtext->Replace( " ", "" ); // スペースのみの文字列もエラー if( (formtext == nullptr) || formtext->Equals("") || tmp->Equals("") ) @@ -4356,8 +4364,8 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; // コンボボックスをチェック System::Boolean checkBoxIndex( System::Windows::Forms::ComboBox ^box, System::String ^labelJ, System::String ^labelE, System::Boolean affectRom ) { - System::String ^msgJ = gcnew System::String( "選択されていません。やり直してください。" ); - System::String ^msgE = gcnew System::String( "Not selected. Please retry." ); + System::String ^msgJ = gcnew System::String( "選択されていません。" ); + System::String ^msgE = gcnew System::String( "One item is not selected." ); if( box->SelectedIndex < 0 ) { @@ -4780,7 +4788,39 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; { System::Int32 index; - // フロントパネル上部 + // タイトルバー + this->stripFile->Text = gcnew System::String( "ファイル" ); + this->stripItemOpenRom->Text = gcnew System::String( "ROMデータを開く" ); + this->stripItemSaveTemp->Text = gcnew System::String( "提出情報を一時保存する" ); + this->stripItemLoadTemp->Text = gcnew System::String( "一時保存した提出情報を読み込む" ); + this->stripMaster->Text = gcnew System::String( "マスター" ); + this->stripItemSheet->Text = gcnew System::String( "提出確認書とマスターROMを作成する" ); + this->stripItemMasterRom->Text = gcnew System::String( "マスターROMのみを作成する" ); + + // 入力ファイル + this->labFile->Text = gcnew System::String( "ROMデータファイル" ); + + // タブ + this->tabRomInfo->Text = gcnew System::String( "ROM基本情報(確認用)" ); + this->tabTWLInfo->Text = gcnew System::String( "TWL拡張情報(確認用)" ); + this->tabRomEditInfo->Text = gcnew System::String( "ROM登録情報(編集可)" ); + this->tabSubmitInfo->Text = gcnew System::String( "提出情報(編集可)" ); + this->tabCompanyInfo->Text = gcnew System::String( "会社情報(編集可)" ); + this->tabErrorInfo->Text = gcnew System::String( "エラー情報(要修正)" ); + + // ガイド + this->tboxGuideRomInfo->Text = gcnew System::String( "このタブの情報は編集不可です。データに誤りがある場合にはROMデータの作成時の設定を見直してください。" ); + this->tboxGuideTWLInfo->Text = gcnew System::String( "このタブの情報は編集不可です。データに誤りがある場合にはROMデータの作成時の設定を見直してください。" ); + this->tboxGuideRomEditInfo->Text = gcnew System::String( "このタブの情報は、提出確認書およびマスターROMの作成に必要です。編集してください。" ); + this->tboxGuideSubmitInfo->Text = gcnew System::String( "このタブの情報は提出確認書の作成に必要です。入力してください。" ); + this->tboxGuideCompanyInfo->Text = gcnew System::String( "このタブの情報は提出確認書の作成に必要です。入力してください。" ); + this->tboxGuideErrorInfo->Text = gcnew System::String( "" ); + this->tboxGuideErrorInfo->Text += "このタブには読み込んだROMデータの問題と本プログラムでの入力ミスが列挙されます。"; + this->tboxGuideErrorInfo->Text += "\r\n赤文字の項目は、本プログラムで修正不可です。ROMデータ作成時の設定をご確認ください。"; + this->tboxGuideErrorInfo->Text += "\r\n青文字の項目は、本プログラムで修正できますが、修正がマスターROMに反映されます。"; + this->tboxGuideErrorInfo->Text += "\r\n黒文字の項目は、提出確認書にのみ反映され、マスターROMには反映されません。"; + + // SRL情報 this->gboxSrl->Text = gcnew System::String( "ROMデータ情報" ); this->labTitleName->Text = gcnew System::String( "ソフトタイトル" ); this->labGameCode->Text = gcnew System::String( "イニシャルコード" ); @@ -4788,55 +4828,58 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; this->labPlatform->Text = gcnew System::String( "プラットフォーム" ); this->labRomType->Text = gcnew System::String( "ROMタイプ設定" ); this->labRomSize->Text = gcnew System::String( "ROM容量" ); - this->labRemasterVer->Text = gcnew System::String( "リマスターバージョン" ); + this->labRemasterVer->Text = gcnew System::String( "リマスターバージョン" ); this->cboxRemasterVerE->Text = gcnew System::String( "E(準備版)" ); - this->labBackup->Text = gcnew System::String( "バックアップメモリ" ); this->labHeaderCRC->Text = gcnew System::String( "ヘッダCRC" ); this->labRomCRC->Text = gcnew System::String( "全体のCRC" ); index = this->combBackup->SelectedIndex; + // バックアップメモリ - this->gboxProd->Text = gcnew System::String( "ROM生産情報(必ず入力してください)" ); + this->gboxProd->Text = gcnew System::String( "ROM生産情報(必ず入力してください)" ); + this->labBackup->Text = gcnew System::String( LANG_BACKUP_J ); this->combBackup->Items->Clear(); this->combBackup->Items->AddRange(gcnew cli::array< System::Object^ >(9) {L"4Kbit EEPROM", L"64Kbit EEPROM", L"512Kbit EEPROM", L"256Kbit FRAM", L"2Mbit FLASH", L"4Mbit FLASH", L"8Mbit FLASH", L"なし", L"その他"}); this->combBackup->SelectedIndex = index; - // 提出情報タブ - this->labProductName->Text = gcnew System::String( "製品名" ); - this->labProductCode->Text = gcnew System::String( "製品コード" ); - this->labReleaseDate->Text = gcnew System::String( "発売予定日" ); - this->labSubmiteDate->Text = gcnew System::String( "書類提出日" ); - this->gboxSubmitWay->Text = gcnew System::String( "提出方法" ); - this->rSubmitPost->Text = gcnew System::String( "郵送" ); - this->rSubmitHand->Text = gcnew System::String( "手渡し" ); - this->gboxUsage->Text = gcnew System::String( "用途" ); - this->rUsageSale->Text = gcnew System::String( "一般販売用" ); - this->rUsageSample->Text = gcnew System::String( "試遊台用" ); - this->rUsageDst->Text = gcnew System::String( "データ配信用" ); - this->rUsageOther->Text = gcnew System::String( "その他" ); - this->labSubmitVer->Text = gcnew System::String( "提出バージョン" ); - this->labCapSubmitVer->Text = gcnew System::String( "* リマスターバージョンが上がると再び0からカウント" ); - this->labProductNameForeign->Text = gcnew System::String( "製品名" ); - this->labProductCodeForeign->Text = gcnew System::String( "製品コード" ); - this->cboxReleaseForeign->Text = gcnew System::String( "海外版を発売する(予定)" ); - this->labMultiForeign1->Text = gcnew System::String( "* 複数ある場合のみ" ); - this->labMultiForeign2->Text = gcnew System::String( "* 複数ある場合のみ" ); - this->labCaption->Text = gcnew System::String( "備考欄 - その他連絡事項があればご記入ください" ); - // 会社情報タブ - this->gboxPerson1->Text = gcnew System::String( "担当者1" ); - this->gboxPerson2->Text = gcnew System::String( "担当者2" ); - this->cboxIsInputPerson2->Text = gcnew System::String( "担当者2を入力する" ); - this->labCompany1->Text = gcnew System::String( "貴社名" ); - this->labDepart1->Text = gcnew System::String( "部署名" ); - this->labPerson1->Text = gcnew System::String( "ご氏名" ); - this->labCompany2->Text = gcnew System::String( "貴社名" ); - this->labDepart2->Text = gcnew System::String( "部署名" ); - this->labPerson2->Text = gcnew System::String( "ご氏名" ); + // 提出情報 + this->labProductName->Text = gcnew System::String( LANG_PRODUCT_NAME_J ); + this->labProductCode->Text = gcnew System::String( LANG_PRODUCT_CODE_J ); + this->labReleaseDate->Text = gcnew System::String( LANG_RELEASE_DATE_J ); + this->labSubmiteDate->Text = gcnew System::String( LANG_SUBMIT_DATE_J ); + this->gboxSubmitWay->Text = gcnew System::String( LANG_SUBMIT_WAY_J ); + this->rSubmitPost->Text = gcnew System::String( LANG_SUBMIT_POST_J ); + this->rSubmitHand->Text = gcnew System::String( LANG_SUBMIT_HAND_J ); + this->gboxUsage->Text = gcnew System::String( LANG_USAGE_J ); + this->rUsageSale->Text = gcnew System::String( LANG_USAGE_SALE_J ); + this->rUsageSample->Text = gcnew System::String( LANG_USAGE_SAMPLE_J ); + this->rUsageDst->Text = gcnew System::String( LANG_USAGE_DST_J ); + this->rUsageOther->Text = gcnew System::String( LANG_USAGE_OTHER_J ); + this->labSubmitVer->Text = gcnew System::String( LANG_SUBMIT_VER_J ); + this->labCapSubmitVer->Text = gcnew System::String( LANG_SUBMIT_VER_CAP_J ); + this->gboxForeign->Text = gcnew System::String( LANG_F_J ); + this->labProductNameForeign->Text = gcnew System::String( LANG_PRODUCT_NAME_F_J ); + this->labProductCodeForeign->Text = gcnew System::String( LANG_PRODUCT_CODE_F_J ); + this->cboxReleaseForeign->Text = gcnew System::String( LANG_RELEASE_F_J ); + this->labMultiForeign1->Text = gcnew System::String( LANG_MULTI_F_J ); + this->labMultiForeign2->Text = gcnew System::String( LANG_MULTI_F_J ); + this->labCaption->Text = gcnew System::String( LANG_CAPTION_J ); + + // 会社情報 + this->gboxPerson1->Text = gcnew System::String( LANG_PERSON_1_J ); + this->gboxPerson2->Text = gcnew System::String( LANG_PERSON_2_J ); + this->cboxIsInputPerson2->Text = gcnew System::String( LANG_INPUT_PERSON_2_J ); + this->labCompany1->Text = gcnew System::String( LANG_COMPANY_J ); + this->labDepart1->Text = gcnew System::String( LANG_DEPART_J ); + this->labPerson1->Text = gcnew System::String( LANG_PERSON_J ); + this->labCompany2->Text = gcnew System::String( LANG_COMPANY_J ); + this->labDepart2->Text = gcnew System::String( LANG_DEPART_J ); + this->labPerson2->Text = gcnew System::String( LANG_PERSON_J ); // ふりがな情報を有効にする this->tboxFurigana1->Enabled = true; - this->labFurigana1->Text = gcnew System::String("ふりがな"); + this->labFurigana1->Text = gcnew System::String( LANG_FURIGANA_J ); this->tboxFurigana2->Enabled = true; - this->labFurigana2->Text = gcnew System::String("ふりがな"); + this->labFurigana2->Text = gcnew System::String( LANG_FURIGANA_J ); // TWL仕様 this->gboxTWLExInfo->Text = gcnew System::String( "TWL拡張情報" ); @@ -4857,12 +4900,15 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; this->labLib->Text = gcnew System::String( "使用ライブラリ" ); this->labCaptionEx->Text = gcnew System::String( "特記事項" ); - // ROMデータ編集可能情報 - this->labEULA->Text = gcnew System::String( "EULA同意バージョン" ); - this->cboxIsEULA->Text = gcnew System::String( "EULA同意" ); - this->cboxIsWirelessIcon->Text = gcnew System::String( "DSワイヤレス通信アイコン表示" ); - this->cboxIsWiFiIcon->Text = gcnew System::String( "Wi-Fi通信アイコン表示" ); - this->labRegion->Text = gcnew System::String( "カードリージョン" ); + // SRL編集可能情報 + this->labEULA->Text = gcnew System::String( LANG_EULA_VER_J ); + this->cboxIsEULA->Text = gcnew System::String( LANG_EULA_J ); + this->gboxIcon->Text = gcnew System::String( LANG_ICON_J ); + this->cboxIsWirelessIcon->Text = gcnew System::String( LANG_WIRELESS_ICON_J ); + this->cboxIsWiFiIcon->Text = gcnew System::String( LANG_WIFI_ICON_J ); + this->labRegion->Text = gcnew System::String( LANG_REGION_J ); + + // リージョン index = this->combRegion->SelectedIndex; this->combRegion->Items->Clear(); this->combRegion->Items->AddRange(gcnew cli::array< System::Object^ >(5) @@ -4873,9 +4919,10 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; this->combRegion->SelectedIndex = index; // ペアレンタルコントロール - this->labParentalRating->Text = gcnew System::String( "レーティング" ); - this->labParentalEnable->Text = gcnew System::String( "制限を有効" ); - this->labParentalForceEnable->Text = gcnew System::String( "Rating Pending" ); + this->gboxParental->Text = gcnew System::String( LANG_REGION_PCTL_J ); + this->labParentalRating->Text = gcnew System::String( LANG_PCTL_RATING_J ); + this->labParentalEnable->Text = gcnew System::String( LANG_PCTL_ENABLE_J ); + this->labParentalForceEnable->Text = gcnew System::String( LANG_PCTL_ALWAYS_J ); index = this->combCERO->SelectedIndex; // いったんclearすると現在のindexに意味がなくなるので退避 this->combCERO->Items->Clear(); @@ -4918,6 +4965,23 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; this->combOFLC->Items->AddRange(gcnew cli::array< System::Object^ >(5) {L"G", L"PG", L"M", L"MA15+", L"未審査"}); this->combOFLC->SelectedIndex = index; + // エラー情報 + this->labError->Text = gcnew System::String( "エラー(必ず修正してください。)" ); + this->colErrorName->HeaderText = gcnew System::String( "項目名" ); + this->colErrorBegin->HeaderText = gcnew System::String( "開始" ); + this->colErrorEnd->HeaderText = gcnew System::String( "終了" ); + this->colErrorCause->HeaderText = gcnew System::String( "要因" ); + + this->labWarn->Text = gcnew System::String( "警告(修正は必須ではありませんが情報に誤りがないかご確認ください。)" ); + this->colWarnName->HeaderText = gcnew System::String( "項目名" ); + this->colWarnBegin->HeaderText = gcnew System::String( "開始" ); + this->colWarnEnd->HeaderText = gcnew System::String( "終了" ); + this->colWarnCause->HeaderText = gcnew System::String( "要因" ); + + this->gboxErrorTiming->Text = gcnew System::String( "いつの情報を表示するか" ); + this->rErrorReading->Text = gcnew System::String( "ROMデータ読み込み時" ); + this->rErrorCurrent->Text = gcnew System::String( "現在の入力を反映" ); + // 特殊な設定用のテキストボックスの表記を変更 this->setSrlFormsCaptionEx(); } @@ -4928,58 +4992,92 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; { System::Int32 index; - // フロントパネル上部 + // タイトルバー + this->stripFile->Text = gcnew System::String( "File" ); + this->stripItemOpenRom->Text = gcnew System::String( "Open a ROM data file" ); + this->stripItemSaveTemp->Text = gcnew System::String( "Save a temporary info." ); + this->stripItemLoadTemp->Text = gcnew System::String( "Load a temporary info. saved previously" ); + this->stripMaster->Text = gcnew System::String( "Master" ); + this->stripItemSheet->Text = gcnew System::String( "Make a submission sheet and a master ROM data file" ); + this->stripItemMasterRom->Text = gcnew System::String( "Make a master ROM data file only" ); + + // 入力ファイル + this->labFile->Text = gcnew System::String( "ROM Data File" ); + + // タブ + this->tabRomInfo->Text = gcnew System::String( "ROM Info.(Read Only)" ); + this->tabTWLInfo->Text = gcnew System::String( "TWL Info.(Read Only)" ); + this->tabRomEditInfo->Text = gcnew System::String( "ROM Settings(Editable)" ); + this->tabSubmitInfo->Text = gcnew System::String( "Submission Info.(Editable)" ); + this->tabCompanyInfo->Text = gcnew System::String( "Company Info.(Editable)" ); + this->tabErrorInfo->Text = gcnew System::String( "Setting Error" ); + + // ガイド + this->tboxGuideRomInfo->Text = gcnew System::String( "This tab is for checking ROM data. When ROM data is illegal, please check settings of building ROM data" ); + this->tboxGuideTWLInfo->Text = gcnew System::String( "This tab is for checking ROM data. When ROM data is illegal, please check settings of building ROM data" ); + this->tboxGuideRomEditInfo->Text = gcnew System::String( "These informations will be registered in a master ROM data and a submission sheet. Please edit certainly." ); + this->tboxGuideSubmitInfo->Text = gcnew System::String( "These informations are necessary for making a submission sheet. Please input." ); + this->tboxGuideCompanyInfo->Text = gcnew System::String( "These informations are necessary for making a submission sheet. Please input." ); + this->tboxGuideErrorInfo->Text = gcnew System::String( "" ); + this->tboxGuideErrorInfo->Text += "This tab discribes errors in the ROM data file and edit mistakes."; + this->tboxGuideErrorInfo->Text += "\r\nItems highlighted by Red can't be modified by this program. Please modify build settings."; + this->tboxGuideErrorInfo->Text += "\r\nItems highlighted by Blue can be modified by this program and will register in a master ROM."; + this->tboxGuideErrorInfo->Text += "\r\nItems highlighted by Black are discribed in a submission sheet and aren't affect a master ROM."; + + // SRL情報 this->gboxSrl->Text = gcnew System::String( "ROM Info." ); - this->labTitleName->Text = gcnew System::String( "Game title" ); - this->labGameCode->Text = gcnew System::String( "Game code" ); - this->labMakerCode->Text = gcnew System::String( "Maker code" ); + this->labTitleName->Text = gcnew System::String( "Game Title" ); + this->labGameCode->Text = gcnew System::String( "Game Code" ); + this->labMakerCode->Text = gcnew System::String( "Maker Code" ); this->labPlatform->Text = gcnew System::String( "Platform" ); - this->labRomType->Text = gcnew System::String( "ROM type" ); - this->labRomSize->Text = gcnew System::String( "ROM size" ); - this->labRemasterVer->Text = gcnew System::String( "Release ver." ); - this->cboxRemasterVerE->Text = gcnew System::String( "E(Preliminary ver.)" ); - this->labBackup->Text = gcnew System::String( "Backup memory" ); + this->labRomType->Text = gcnew System::String( "ROM Type" ); + this->labRomSize->Text = gcnew System::String( "ROM Size" ); + this->labRemasterVer->Text = gcnew System::String( "Release Ver." ); + this->cboxRemasterVerE->Text = gcnew System::String( "E(Preliminary Ver.)" ); this->labHeaderCRC->Text = gcnew System::String( "Header CRC" ); this->labRomCRC->Text = gcnew System::String( "ROM CRC" ); index = this->combBackup->SelectedIndex; // バックアップメモリ - this->gboxProd->Text = gcnew System::String( "ROM Production Info.(Please input certainly)" ); + this->gboxProd->Text = gcnew System::String( "ROM Production Info." ); + this->labBackup->Text = gcnew System::String( LANG_BACKUP_E ); this->combBackup->Items->Clear(); this->combBackup->Items->AddRange(gcnew cli::array< System::Object^ >(9) {L"4Kbit EEPROM", L"64Kbit EEPROM", L"512Kbit EEPROM", L"256Kbit FRAM", L"2Mbit FLASH", L"4Mbit FLASH", L"8Mbit FLASH", L"Nothing", L"Other"}); this->combBackup->SelectedIndex = index; - // 提出情報タブ - this->labProductName->Text = gcnew System::String( "Product name" ); - this->labProductCode->Text = gcnew System::String( "Product code" ); - this->labReleaseDate->Text = gcnew System::String( "Release date" ); - this->labSubmiteDate->Text = gcnew System::String( "Submission date" ); - this->gboxSubmitWay->Text = gcnew System::String( "How to submit" ); - this->rSubmitPost->Text = gcnew System::String( "Mail" ); - this->rSubmitHand->Text = gcnew System::String( "Handover" ); - this->gboxUsage->Text = gcnew System::String( "Purpose" ); - this->rUsageSale->Text = gcnew System::String( "For Sale" ); - this->rUsageSample->Text = gcnew System::String( "For Trial" ); - this->rUsageDst->Text = gcnew System::String( "For Network distribution" ); - this->rUsageOther->Text = gcnew System::String( "Other" ); - this->labSubmitVer->Text = gcnew System::String( "Submission ver." ); - this->labCapSubmitVer->Text = gcnew System::String( "* return to 0 when release ver. is updated." ); - this->labProductNameForeign->Text = gcnew System::String( "Product name" ); - this->labProductCodeForeign->Text = gcnew System::String( "Product code" ); - this->cboxReleaseForeign->Text = gcnew System::String( "Foreign ver. is scheduled to go on sale" ); - this->labMultiForeign1->Text = gcnew System::String( "* Only release multi ver." ); - this->labMultiForeign2->Text = gcnew System::String( "* Only release multi ver." ); - this->labCaption->Text = gcnew System::String( "Remarks item - Please write further information." ); - // 会社情報タブ - this->gboxPerson1->Text = gcnew System::String( "Account1" ); - this->gboxPerson2->Text = gcnew System::String( "Account2" ); - this->cboxIsInputPerson2->Text = gcnew System::String( "Input Account2" ); - this->labCompany1->Text = gcnew System::String( "Company" ); - this->labDepart1->Text = gcnew System::String( "Dept." ); - this->labPerson1->Text = gcnew System::String( "Name" ); - this->labCompany2->Text = gcnew System::String( "Company" ); - this->labDepart2->Text = gcnew System::String( "Dept." ); - this->labPerson2->Text = gcnew System::String( "Name" ); + // 提出情報 + this->labProductName->Text = gcnew System::String( LANG_PRODUCT_NAME_E ); + this->labProductCode->Text = gcnew System::String( LANG_PRODUCT_CODE_E ); + this->labReleaseDate->Text = gcnew System::String( LANG_RELEASE_DATE_E ); + this->labSubmiteDate->Text = gcnew System::String( LANG_SUBMIT_DATE_E ); + this->gboxSubmitWay->Text = gcnew System::String( LANG_SUBMIT_WAY_E ); + this->rSubmitPost->Text = gcnew System::String( LANG_SUBMIT_POST_E ); + this->rSubmitHand->Text = gcnew System::String( LANG_SUBMIT_HAND_E ); + this->gboxUsage->Text = gcnew System::String( LANG_USAGE_E ); + this->rUsageSale->Text = gcnew System::String( LANG_USAGE_SALE_E ); + this->rUsageSample->Text = gcnew System::String( LANG_USAGE_SAMPLE_E ); + this->rUsageDst->Text = gcnew System::String( LANG_USAGE_DST_E ); + this->rUsageOther->Text = gcnew System::String( LANG_USAGE_OTHER_E ); + this->labSubmitVer->Text = gcnew System::String( LANG_SUBMIT_VER_E ); + this->labCapSubmitVer->Text = gcnew System::String( LANG_SUBMIT_VER_CAP_E ); + this->gboxForeign->Text = gcnew System::String( LANG_F_E ); + this->labProductNameForeign->Text = gcnew System::String( LANG_PRODUCT_NAME_F_E ); + this->labProductCodeForeign->Text = gcnew System::String( LANG_PRODUCT_CODE_F_E ); + this->cboxReleaseForeign->Text = gcnew System::String( LANG_RELEASE_F_E ); + this->labMultiForeign1->Text = gcnew System::String( LANG_MULTI_F_E ); + this->labMultiForeign2->Text = gcnew System::String( LANG_MULTI_F_E ); + this->labCaption->Text = gcnew System::String( LANG_CAPTION_E ); + + // 会社情報 + this->gboxPerson1->Text = gcnew System::String( LANG_PERSON_1_E ); + this->gboxPerson2->Text = gcnew System::String( LANG_PERSON_2_E ); + this->cboxIsInputPerson2->Text = gcnew System::String( LANG_INPUT_PERSON_2_E ); + this->labCompany1->Text = gcnew System::String( LANG_COMPANY_E ); + this->labDepart1->Text = gcnew System::String( LANG_DEPART_E ); + this->labPerson1->Text = gcnew System::String( LANG_PERSON_E ); + this->labCompany2->Text = gcnew System::String( LANG_COMPANY_E ); + this->labDepart2->Text = gcnew System::String( LANG_DEPART_E ); + this->labPerson2->Text = gcnew System::String( LANG_PERSON_E ); // ふりがな情報を削除 this->tboxFurigana1->Clear(); this->tboxFurigana1->Enabled = false; @@ -4990,29 +5088,32 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; // TWL仕様 this->gboxTWLExInfo->Text = gcnew System::String( "TWL Extended Info" ); - this->labNormalRomOffset->Text = gcnew System::String( "TWL normal area ROM offset" ); - this->labKeyTableRomOffset->Text = gcnew System::String( "TWL secure area ROM offset" ); - this->cboxIsNormalJump->Text = gcnew System::String( "Enable Normal app. jump" ); - this->cboxIsTmpJump->Text = gcnew System::String( "Enable Temp. app. jump" ); - this->cboxIsSubBanner->Text = gcnew System::String( "Enable SubBanner file" ); - this->cboxIsWL->Text = gcnew System::String( "Enable NTR WhiteList signature" ); + this->labNormalRomOffset->Text = gcnew System::String( "TWL Normal Area ROM Offset" ); + this->labKeyTableRomOffset->Text = gcnew System::String( "TWL Secure Area ROM Offset" ); + this->cboxIsNormalJump->Text = gcnew System::String( "Enable Normal App. Jump" ); + this->cboxIsTmpJump->Text = gcnew System::String( "Enable Temp. App. Jump" ); + this->cboxIsSubBanner->Text = gcnew System::String( "Enable SubBanner File" ); + this->cboxIsWL->Text = gcnew System::String( "Enable NTR WhiteList Signature" ); this->gboxAccess->Text = gcnew System::String( "Access Control" ); this->cboxIsSD->Text = gcnew System::String( "SD Card" ); this->cboxIsNAND->Text = gcnew System::String( "NAND Flash Memory" ); this->labIsGameCardOn->Text = gcnew System::String( "Card Power" ); this->labAccessOther->Text = gcnew System::String( "Others" ); this->gboxShared2Size->Text = gcnew System::String( "Size of Shared2 Files" ); - this->cboxIsShared2->Text = gcnew System::String( "Use Shared2 files" ); - this->labSDK->Text = gcnew System::String( "SDK ver." ); + this->cboxIsShared2->Text = gcnew System::String( "Use Shared2 Files" ); + this->labSDK->Text = gcnew System::String( "SDK Ver." ); this->labLib->Text = gcnew System::String( "Libraries used by the program" ); - this->labCaptionEx->Text = gcnew System::String( "Special note" ); + this->labCaptionEx->Text = gcnew System::String( "Special Note" ); - // ROMデータ編集可能情報 - this->labEULA->Text = gcnew System::String( "EULA agreement ver." ); - this->cboxIsEULA->Text = gcnew System::String( "Agree EULA" ); - this->cboxIsWirelessIcon->Text = gcnew System::String( "Display an Icon of DS Wireless" ); - this->cboxIsWiFiIcon->Text = gcnew System::String( "Display an Icon of Wi-Fi connection" ); - this->labRegion->Text = gcnew System::String( "Card Region" ); + // SRL編集可能情報 + this->labEULA->Text = gcnew System::String( LANG_EULA_VER_E ); + this->cboxIsEULA->Text = gcnew System::String( LANG_EULA_E ); + this->gboxIcon->Text = gcnew System::String( LANG_ICON_E ); + this->cboxIsWirelessIcon->Text = gcnew System::String( LANG_WIRELESS_ICON_E ); + this->cboxIsWiFiIcon->Text = gcnew System::String( LANG_WIFI_ICON_E ); + this->labRegion->Text = gcnew System::String( LANG_REGION_E ); + + // リージョン index = this->combRegion->SelectedIndex; this->combRegion->Items->Clear(); this->combRegion->Items->AddRange(gcnew cli::array< System::Object^ >(5) @@ -5023,9 +5124,10 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; this->combRegion->SelectedIndex = index; // ペアレンタルコントロール - this->labParentalRating->Text = gcnew System::String( "Rating" ); - this->labParentalEnable->Text = gcnew System::String( "Enable Control" ); - this->labParentalForceEnable->Text = gcnew System::String( "Rating Pending" ); + this->gboxParental->Text = gcnew System::String( LANG_REGION_PCTL_E ); + this->labParentalRating->Text = gcnew System::String( LANG_PCTL_RATING_E ); + this->labParentalEnable->Text = gcnew System::String( LANG_PCTL_ENABLE_E ); + this->labParentalForceEnable->Text = gcnew System::String( LANG_PCTL_ALWAYS_E ); index = this->combCERO->SelectedIndex; // いったんclearすると現在のindexに意味がなくなるので退避 this->combCERO->Items->Clear(); @@ -5069,6 +5171,23 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; this->combOFLC->Items->AddRange(gcnew cli::array< System::Object^ >(5) {L"G", L"PG", L"M", L"MA15+", L"Unexamined"}); this->combOFLC->SelectedIndex = index; + // エラー情報 + this->labError->Text = gcnew System::String( "Error Information(Modification is necessary.)" ); + this->colErrorName->HeaderText = gcnew System::String( "Name" ); + this->colErrorBegin->HeaderText = gcnew System::String( "Begin" ); + this->colErrorEnd->HeaderText = gcnew System::String( "End" ); + this->colErrorCause->HeaderText = gcnew System::String( "Reason" ); + + this->labWarn->Text = gcnew System::String( "Warning(Modification is not necessary. Please check validity of these information.)" ); + this->colWarnName->HeaderText = gcnew System::String( "Name" ); + this->colWarnBegin->HeaderText = gcnew System::String( "Begin" ); + this->colWarnEnd->HeaderText = gcnew System::String( "End" ); + this->colWarnCause->HeaderText = gcnew System::String( "Reason" ); + + this->gboxErrorTiming->Text = gcnew System::String( "Error Of Timing" ); + this->rErrorReading->Text = gcnew System::String( "When ROM data was read" ); + this->rErrorCurrent->Text = gcnew System::String( "In current settings" ); + // 特殊な設定用のテキストボックスの表記を変更 this->setSrlFormsCaptionEx(); } @@ -5183,6 +5302,29 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; } } + // まとめて更新 + public: + void updateGrid(void) + { + if( this->rErrorReading->Checked == true ) + { + this->setGridError(); + this->setGridWarn(); + } + else + { + if( !System::String::IsNullOrEmpty(this->tboxFile->Text) ) + { + this->hErrorList->Clear(); + this->hWarnList->Clear(); + this->checkSrlForms(); + this->checkDeliverableForms(); + this->overloadGridError(); + this->overloadGridWarn(); + } + } + } + ///////////////////////////////////////////// // フォーム操作メソッド ///////////////////////////////////////////// @@ -5337,6 +5479,7 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; this->changeEnglish(); this->stripItemEnglish->Checked = true; this->stripItemJapanese->Checked = false; + this->updateGrid(); } private: @@ -5345,6 +5488,7 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; this->changeJapanese(); this->stripItemEnglish->Checked = false; this->stripItemJapanese->Checked = true; + this->updateGrid(); } private: @@ -5381,7 +5525,7 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; // SRLが読み込まれていないときにはリードさせない if( System::String::IsNullOrEmpty( this->tboxFile->Text ) ) { - this->errMsg( "ROMデータファイルがオープンされていませんので、提出書類の作成ができません。", + this->errMsg( "ROMデータファイルがオープンされていませんので、提出確認書の作成ができません。", "ROM data file has not opened yet. Therefore a submission sheet can't be made." ); return; } @@ -5412,7 +5556,7 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; if( dlg->ShowDialog() != System::Windows::Forms::DialogResult::OK ) { - this->errMsg( "フォルダの選択がキャンセルされましたので提出書類は作成されません。", + this->errMsg( "フォルダの選択がキャンセルされましたので提出確認書は作成されません。", "A submission sheet can not be made, since selecting folder is canceled." ); return; } @@ -5443,13 +5587,13 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; // SRLと書類の両方のフォーム入力をチェックする if( this->checkSrlForms() == false ) { - this->errMsg( "ROMデータに不正な設定があるためROMデータの保存および提出書類の作成ができません。", + this->errMsg( "ROMデータに不正な設定があるためROMデータの保存および提出確認書の作成ができません。", "A ROM data and a submission sheet can't be saved, since it has illegal info." ); return; } if( this->checkDeliverableForms() == false ) { - this->errMsg( "入力情報に不正な設定があるため提出書類を作成できません。", + this->errMsg( "入力情報に不正な設定があるため提出確認書を作成できません。", "Making a submission sheet can't be done, since input data is illegal." ); return; } @@ -5471,7 +5615,7 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; // 注意書き { this->sucMsg( - "Step1/2: ROMデータファイル(SRL)と提出書類の情報を一致させるため、まず、入力情報を反映させたROMデータファイルを作成します。\n(キャンセルされたとき、SRLおよび提出書類は作成されません。)\n" + "Step1/2: ROMデータファイル(SRL)と提出確認書の情報を一致させるため、まず、入力情報を反映させたROMデータファイルを作成します。\n(キャンセルされたとき、SRLおよび提出確認書は作成されません。)\n" + "\n ROMデータファイル名は \"" + srlfile + "\"となります。\n" + "\nROMデータファイルを保存するフォルダを選択してください。", "Step1/2: Firstly, We save ROM file(SRL) because several information in a submission sheet are match those in the ROM data file.\n(When it is canceled, both the SRL and a submission sheet are not made.)" + "\n ROM data file name is \"" + srlfile + "\".\n" + "\nPlease select a folder in which the ROM data is saved." @@ -5484,7 +5628,7 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; if( dlg->ShowDialog() != System::Windows::Forms::DialogResult::OK ) { - this->errMsg( "フォルダの選択がキャンセルされましたので提出書類は作成されません。", + this->errMsg( "フォルダの選択がキャンセルされましたので提出確認書は作成されません。", "A submission sheet can not be made, since selecting folder is canceled." ); return; } @@ -5497,7 +5641,7 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; // 注意書き { this->sucMsg( - "Step2/2: 続いて提出書類を作成します。\nここでキャンセルされたとき、提出書類はもとよりROMデータファイルも作成されませんのでご注意ください。", + "Step2/2: 続いて提出確認書を作成します。\nここでキャンセルされたとき、提出確認書はもとよりROMデータファイルも作成されませんのでご注意ください。", "Step2/2: Secondly, We should make a submission sheet. \n(CAUTION: When it is canceled, not only a submission sheet is not made, but also the ROM data file is selected previously.)" ); } @@ -5512,7 +5656,7 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; if( dlg->ShowDialog() != System::Windows::Forms::DialogResult::OK ) { - this->errMsg( "提出書類の作成がキャンセルされました。", "Making a submission sheet is canceled." ); + this->errMsg( "提出確認書の作成がキャンセルされました。", "Making a submission sheet is canceled." ); return; } delivfile = dlg->FileName; @@ -5522,7 +5666,7 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; } } - // マスタ提出書類に必要な情報をフォームから取得して更新 + // マスタ提出確認書に必要な情報をフォームから取得して更新 this->setSrlProperties(); // 先にSrlを更新しておく this->setDeliverableProperties(); @@ -5531,7 +5675,7 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; u16 crc; // SRL全体のCRCを計算する(書類に記述するため) if( !getWholeCRCInFile( srlfile, &crc ) ) { - this->errMsg( "CRCの計算に失敗しました。提出書類の作成はキャンセルされます。", + this->errMsg( "CRCの計算に失敗しました。提出確認書の作成はキャンセルされます。", "Calc CRC is failed. Therefore, Making a submission sheet is canceled." ); return; } @@ -5547,31 +5691,22 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; result = this->hDeliv->writeSpreadsheet( delivfile, this->hSrl, hcrc, srlfile, !(this->stripItemJapanese->Checked) ); if( result != ECDeliverableResult::NOERROR ) { - this->errMsg( "提出書類の作成に失敗しました。", "Making the submission sheet is failed." ); + this->errMsg( "提出確認書の作成に失敗しました。", "Making the submission sheet is failed." ); return; } - this->sucMsg( "提出書類の作成に成功しました。", "The submission sheet is made successfully." ); + this->sucMsg( "提出確認書の作成に成功しました。", "The submission sheet is made successfully." ); } //stripItemSheet_Click() private: System::Void rErrorReading_CheckedChanged(System::Object^ sender, System::EventArgs^ e) { - this->setGridError(); - this->setGridWarn(); + this->updateGrid(); } private: System::Void rErrorCurrent_CheckedChanged(System::Object^ sender, System::EventArgs^ e) { - if( !System::String::IsNullOrEmpty(this->tboxFile->Text) ) - { - this->hErrorList->Clear(); - this->hWarnList->Clear(); - this->checkSrlForms(); - this->checkDeliverableForms(); - this->overloadGridError(); - this->overloadGridWarn(); - } + this->updateGrid(); } private: @@ -5580,22 +5715,10 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; // エラータブを最新情報に更新 if( tabMain->SelectedIndex == 5 ) { - if( this->rErrorReading->Checked == true ) - { - this->setGridError(); - this->setGridWarn(); - } - else - { - this->hErrorList->Clear(); - this->hWarnList->Clear(); - this->checkSrlForms(); - this->checkDeliverableForms(); - this->overloadGridError(); - this->overloadGridWarn(); - } + this->updateGrid(); } } + }; // enf of ref class Form1 } // end of namespace MasterEditorTWL diff --git a/build/tools/MasterEditorTWL/MasterEditorTWL/Form1.resX b/build/tools/MasterEditorTWL/MasterEditorTWL/Form1.resX index 1f0e93fa..302e29f7 100644 --- a/build/tools/MasterEditorTWL/MasterEditorTWL/Form1.resX +++ b/build/tools/MasterEditorTWL/MasterEditorTWL/Form1.resX @@ -126,6 +126,24 @@ True + + True + + + True + + + True + + + True + + + True + + + True + True diff --git a/build/tools/MasterEditorTWL/MasterEditorTWL/FormError.h b/build/tools/MasterEditorTWL/MasterEditorTWL/FormError.h index 6f739678..34df51ce 100644 --- a/build/tools/MasterEditorTWL/MasterEditorTWL/FormError.h +++ b/build/tools/MasterEditorTWL/MasterEditorTWL/FormError.h @@ -333,13 +333,13 @@ namespace MasterEditorTWL { public: void changeJapanese(void) { - this->labError->Text = gcnew System::String( "エラー(必ず修正してください)" ); + this->labError->Text = gcnew System::String( "エラー(必ず修正してください。)" ); this->colErrorName->HeaderText = gcnew System::String( "項目名" ); this->colErrorBegin->HeaderText = gcnew System::String( "開始" ); this->colErrorEnd->HeaderText = gcnew System::String( "終了" ); this->colErrorCause->HeaderText = gcnew System::String( "要因" ); - this->labWarn->Text = gcnew System::String( "警告(修正は必須ではありませんが情報に誤りがないかご確認ください)" ); + this->labWarn->Text = gcnew System::String( "警告(修正は必須ではありませんが情報に誤りがないかご確認ください。)" ); this->colWarnName->HeaderText = gcnew System::String( "項目名" ); this->colWarnBegin->HeaderText = gcnew System::String( "開始" ); this->colWarnEnd->HeaderText = gcnew System::String( "終了" ); diff --git a/build/tools/MasterEditorTWL/MasterEditorTWL/lang.h b/build/tools/MasterEditorTWL/MasterEditorTWL/lang.h index 25cbb3ba..0b3f190c 100644 --- a/build/tools/MasterEditorTWL/MasterEditorTWL/lang.h +++ b/build/tools/MasterEditorTWL/MasterEditorTWL/lang.h @@ -14,13 +14,14 @@ #define LANG_USAGE_SAMPLE_J ("試遊台用") #define LANG_USAGE_DST_J ("データ配信用") #define LANG_USAGE_OTHER_J ("その他") -#define LANG_SUBMIT_VER_J ("提出バージョン") #define LANG_BACKUP_J ("バックアップメモリ") +#define LANG_SUBMIT_VER_J ("提出バージョン") #define LANG_SUBMIT_VER_CAP_J ("* リマスターバージョンが上がると再び0からカウント") +#define LANG_F_J ("海外版") #define LANG_PRODUCT_NAME_F_J ("製品名") #define LANG_PRODUCT_CODE_F_J ("製品コード") #define LANG_RELEASE_F_J ("海外版を発売する(予定)") -#define LANG_MULTI_F_J ("* 複数ある場合のみ") +#define LANG_MULTI_F_J ("(複数ある場合のみ)") #define LANG_CAPTION_J ("備考欄 - その他連絡事項があればご記入ください") #define LANG_PERSON_1_J ("担当者1") #define LANG_PERSON_2_J ("担当者2") @@ -37,8 +38,10 @@ #define LANG_EULA_J ("EULA同意") #define LANG_EULA_VER_J ("EULA同意バージョン") +#define LANG_ICON_J ("アイコン表示") #define LANG_WIRELESS_ICON_J ("DSワイヤレス通信アイコン表示") #define LANG_WIFI_ICON_J ("Wi-Fi通信アイコン表示") +#define LANG_REGION_PCTL_J ("リージョンとペアレンタルコントロール") #define LANG_REGION_J ("カードリージョン") #define LANG_PCTL_RATING_J ("レーティング") #define LANG_PCTL_ENABLE_J ("制限を有効") @@ -47,7 +50,7 @@ #define LANG_PRODUCT_NAME_E ("Product Name") #define LANG_PRODUCT_CODE_E ("Product Code") -#define LANG_RELEASE_DATE_E ("Release Date") +#define LANG_RELEASE_DATE_E ("Launch Date") #define LANG_SUBMIT_DATE_E ("Submission Date") #define LANG_SUBMIT_WAY_E ("How to submit") #define LANG_SUBMIT_POST_E ("Mail") @@ -55,15 +58,16 @@ #define LANG_USAGE_E ("Purpose") #define LANG_USAGE_SALE_E ("For Sale") #define LANG_USAGE_SAMPLE_E ("For Trial") -#define LANG_USAGE_DST_E ("For Network distribution") +#define LANG_USAGE_DST_E ("For Network Distribution") #define LANG_USAGE_OTHER_E ("Other") #define LANG_SUBMIT_VER_E ("Submission Ver.") #define LANG_BACKUP_E ("Backup Memory") #define LANG_SUBMIT_VER_CAP_E ("* return to 0 when release ver. is updated.") +#define LANG_F_E ("Foreign Ver.") #define LANG_PRODUCT_NAME_F_E ("Product Name") #define LANG_PRODUCT_CODE_F_E ("Product Code") #define LANG_RELEASE_F_E ("Foreign Ver. is scheduled to go on sale") -#define LANG_MULTI_F_E ("* Only Release Multi Ver.") +#define LANG_MULTI_F_E ("(Only Release Multi Ver.)") #define LANG_CAPTION_E ("Remarks Item - Please write further information.") #define LANG_PERSON_1_E ("Account1") #define LANG_PERSON_2_E ("Account2") @@ -80,8 +84,10 @@ #define LANG_EULA_E ("Agree EULA") #define LANG_EULA_VER_E ("EULA agreement ver.") +#define LANG_ICON_E ("Icons") #define LANG_WIRELESS_ICON_E ("Display an Icon of DS Wireless") #define LANG_WIFI_ICON_E ("Display an Icon of Wi-Fi connection") +#define LANG_REGION_PCTL_E ("Card Region and Parental Control") #define LANG_REGION_E ("Card Region") #define LANG_PCTL_RATING_E ("Rating") #define LANG_PCTL_ENABLE_E ("Enable Control") diff --git a/build/tools/MasterEditorTWL/MasterEditorTWL/srl.cpp b/build/tools/MasterEditorTWL/MasterEditorTWL/srl.cpp index 086278c2..8776a015 100644 --- a/build/tools/MasterEditorTWL/MasterEditorTWL/srl.cpp +++ b/build/tools/MasterEditorTWL/MasterEditorTWL/srl.cpp @@ -614,6 +614,7 @@ ECSrlResult RCSrl::mrc( FILE *fp ) this->hErrorList->Clear(); this->hWarnList->Clear(); +#ifdef METWL_WHETHER_MRC ECSrlResult result; result = this->mrcNTR( fp ); if( result != ECSrlResult::NOERROR ) @@ -625,6 +626,7 @@ ECSrlResult RCSrl::mrc( FILE *fp ) { return result; } +#endif return ECSrlResult::NOERROR; } diff --git a/build/tools/MasterEditorTWL/MasterEditorTWL/srl.h b/build/tools/MasterEditorTWL/MasterEditorTWL/srl.h index 1852f051..d99afd8a 100644 --- a/build/tools/MasterEditorTWL/MasterEditorTWL/srl.h +++ b/build/tools/MasterEditorTWL/MasterEditorTWL/srl.h @@ -177,7 +177,12 @@ namespace MasterEditorTWL cli::array^ getAll( System::Boolean isJapanese ) { if( (*this->hBegin == METWL_ERRLIST_NORANGE) && (*this->hEnd == METWL_ERRLIST_NORANGE) ) - return (gcnew array{this->hName, "-", "-", this->hMsg}); + { + if( isJapanese ) + return (gcnew array{this->hName, "-", "-", this->hMsg}); + else + return (gcnew array{this->hNameE, "-", "-", this->hMsgE}); + } if( isJapanese ) return (gcnew array{this->hName, this->hBegin->ToString("X04")+"h", this->hEnd->ToString("X04")+"h", this->hMsg}); diff --git a/build/tools/MasterEditorTWL/MasterEditorTWL/stdafx.h b/build/tools/MasterEditorTWL/MasterEditorTWL/stdafx.h index 3bdc4b5e..d923771d 100644 --- a/build/tools/MasterEditorTWL/MasterEditorTWL/stdafx.h +++ b/build/tools/MasterEditorTWL/MasterEditorTWL/stdafx.h @@ -13,6 +13,7 @@ //#define METWL_WHETHER_PLATFORM_CHECK // プラットフォームがTWL対応以外かどうかをチェックする //#define METWL_WHETHER_SIGN_DECRYPT // 署名を外してダイジェストをベリファイする +#define METWL_WHETHER_MRC // MRC機能を含めるか // 宣言 #define METWL_ERRLIST_NORANGE 0 // エラーのアドレス範囲を指定しないことを表す特別な値