[ttssh2-commit] [9897] 「コーディング-送信」に「漢字イン」「漢字アウト」を設定なしにできる

Back to archive index
scmno****@osdn***** scmno****@osdn*****
2022年 5月 2日 (月) 00:40:17 JST


Revision: 9897
          https://osdn.net/projects/ttssh2/scm/svn/commits/9897
Author:   zmatsuo
Date:     2022-05-02 00:40:17 +0900 (Mon, 02 May 2022)
Log Message:
-----------
「コーディング-送信」に「漢字イン」「漢字アウト」を設定なしにできる

- UTF-8など未使用時 tttset.KanjiIn, KanjiOut に0をセットしていた
- 値が0のときドロップダウンが設定なしになっていた
- Japanese/JISのとき
  - tttset.KanjiInは次の値をとる
    - IdKanjiInA(1)
    - IdKanjiInB(2) (default)
  - tttset.KanjiOutは次の値をとる
    - IdKanjiOutB(1) (default)
    - IdKanjiOutJ(2)
    - IdKanjiOutH(3)
- ダイアログ表示時、変数が0など不正値なら default値を設定するようにした

ticket #44325

Ticket Links:
------------
    https://osdn.net/projects/ttssh2/tracker/detail/44325

Modified Paths:
--------------
    trunk/teraterm/teraterm/coding_pp.cpp
    trunk/teraterm/ttpdlg/ttdlg.c

-------------- next part --------------
Modified: trunk/teraterm/teraterm/coding_pp.cpp
===================================================================
--- trunk/teraterm/teraterm/coding_pp.cpp	2022-05-01 13:38:45 UTC (rev 9896)
+++ trunk/teraterm/teraterm/coding_pp.cpp	2022-05-01 15:40:17 UTC (rev 9897)
@@ -123,13 +123,18 @@
 			SetRB(hWnd, ts->JIS7Katakana, IDC_TERMKANA, IDC_TERMKANA);
 			SetRB(hWnd, ts->JIS7KatakanaSend, IDC_TERMKANASEND, IDC_TERMKANASEND);
 
-			SetDropDownList(hWnd, IDC_TERMKIN, KanjiInList, ts->KanjiIn);
-			if ((ts->TermFlag & TF_ALLOWWRONGSEQUENCE) != 0) {
-				SetDropDownList(hWnd, IDC_TERMKOUT, KanjiOutList2, ts->KanjiOut);
+			{
+				const char **kanji_out_list;
+				int n;
+				n = ts->KanjiIn;
+				n = (n <= 0 || 2 < n) ? IdKanjiInB : n;
+				SetDropDownList(hWnd, IDC_TERMKIN, KanjiInList, n);
+
+				kanji_out_list = (ts->TermFlag & TF_ALLOWWRONGSEQUENCE) ? KanjiOutList2 : KanjiOutList;
+				n = ts->KanjiOut;
+				n = (n <= 0 || 3 < n) ? IdKanjiOutB : n;
+				SetDropDownList(hWnd, IDC_TERMKOUT, kanji_out_list, n);
 			}
-			else {
-				SetDropDownList(hWnd, IDC_TERMKOUT, KanjiOutList, ts->KanjiOut);
-			}
 
 			// characters as wide
 			SetDropDownList(hWnd, IDC_AMBIGUOUS_WIDTH_COMBO, CellWidthList, ts->UnicodeAmbiguousWidth == 1 ? 1 : 2);

Modified: trunk/teraterm/ttpdlg/ttdlg.c
===================================================================
--- trunk/teraterm/ttpdlg/ttdlg.c	2022-05-01 13:38:45 UTC (rev 9896)
+++ trunk/teraterm/ttpdlg/ttdlg.c	2022-05-01 15:40:17 UTC (rev 9897)
@@ -258,13 +258,19 @@
 					DisableDlgItem(Dialog,IDC_TERMKANASEND,IDC_TERMKOUT);
 				}
 				SetRB(Dialog,ts->JIS7KatakanaSend,IDC_TERMKANASEND,IDC_TERMKANASEND);
-				SetDropDownList(Dialog,IDC_TERMKIN,KanjiInList,ts->KanjiIn);
-				if ((ts->TermFlag & TF_ALLOWWRONGSEQUENCE)!=0) {
-					SetDropDownList(Dialog,IDC_TERMKOUT,KanjiOutList2,ts->KanjiOut);
+
+				{
+					const char **kanji_out_list;
+					int n;
+					n = ts->KanjiIn;
+					n = (n <= 0 || 2 < n) ? IdKanjiInB : n;
+					SetDropDownList(Dialog, IDC_TERMKIN, KanjiInList, n);
+
+					kanji_out_list = (ts->TermFlag & TF_ALLOWWRONGSEQUENCE) ? KanjiOutList2 : KanjiOutList;
+					n = ts->KanjiOut;
+					n = (n <= 0 || 3 < n) ? IdKanjiOutB : n;
+					SetDropDownList(Dialog, IDC_TERMKOUT, kanji_out_list, n);
 				}
-				else {
-					SetDropDownList(Dialog,IDC_TERMKOUT,KanjiOutList,ts->KanjiOut);
-				}
 			}
 			CenterWindow(Dialog, GetParent(Dialog));
 			return TRUE;


ttssh2-commit メーリングリストの案内
Back to archive index