[Ttssh2-commit] [8177] [Setup]-[Serial port]ダイアログにCOMポートの詳細情報を追加した。

Back to archive index
scmno****@osdn***** scmno****@osdn*****
2019年 9月 17日 (火) 22:38:15 JST


Revision: 8177
          https://osdn.net/projects/ttssh2/scm/svn/commits/8177
Author:   yutakapon
Date:     2019-09-17 22:38:14 +0900 (Tue, 17 Sep 2019)
Log Message:
-----------
[Setup]-[Serial port]ダイアログにCOMポートの詳細情報を追加した。
現状は Device Description のみ。

branches/serial_port_improvedからリビジョン8144をマージ:
[Setup]-[Serial port]ダイアログにCOMポートの詳細情報を追加した。

........

Modified Paths:
--------------
    trunk/doc/en/html/about/history.html
    trunk/doc/en/html/menu/setup-serialport.html
    trunk/doc/ja/html/about/history.html
    trunk/doc/ja/html/menu/setup-serialport.html
    trunk/teraterm/ttpdlg/dlg_res.h
    trunk/teraterm/ttpdlg/ttdlg.c
    trunk/teraterm/ttpdlg/ttpdlg.rc

Property Changed:
----------------
    trunk/
    trunk/teraterm/

-------------- next part --------------
Index: trunk
===================================================================
--- trunk	2019-09-17 12:33:15 UTC (rev 8176)
+++ trunk	2019-09-17 13:38:14 UTC (rev 8177)

Property changes on: trunk
___________________________________________________________________
Modified: svn:mergeinfo
## -2,7 +2,7 ##
 /branches/flowctrl_dsrdtr:7825-7827
 /branches/openssl_1_1_1_v2:7888
 /branches/portfwd_memleak:7732,7736-7737,7764
-/branches/serial_port_improved:8119,8140-8141
+/branches/serial_port_improved:8119,8140-8141,8144
 /branches/ssh_ed25519:5495-5544
 /branches/ttproxy_improved:8041,8055-8056
 /branches/ttssh_improved:8027,8036,8040,8044,8053-8054,8058,8060,8063,8081,8085
Modified: trunk/doc/en/html/about/history.html
===================================================================
--- trunk/doc/en/html/about/history.html	2019-09-17 12:33:15 UTC (rev 8176)
+++ trunk/doc/en/html/about/history.html	2019-09-17 13:38:14 UTC (rev 8177)
@@ -49,6 +49,7 @@
       <li>When the inputted over than 256 of opacity values of the <a href="../menu/setup-additional.html">Additional settings dialog</a>, change to 255.</li>
       <li>The <a href="../menu/setup-serialport.html">[Setup]-[Serial port]</a> dialog can be called even while TCP/IP connection.</li>
       <li>The title of <a href="../menu/setup-serialport.html">[Setup]-[Serial port]</a> dialog is changed from "Serial port setup" to "Serial port setup and connection".</li>
+      <li>The detail information of COM port is added on the <a href="../menu/setup-serialport.html#Information">[Setup]-[Serial port]</a> dialog.</li>
     </ul>
   </li>
   <li>Bug fixes

Modified: trunk/doc/en/html/menu/setup-serialport.html
===================================================================
--- trunk/doc/en/html/menu/setup-serialport.html	2019-09-17 12:33:15 UTC (rev 8176)
+++ trunk/doc/en/html/menu/setup-serialport.html	2019-09-17 13:38:14 UTC (rev 8177)
@@ -43,6 +43,14 @@
       <dd>
 	Time intervals between characters (lines) being sent, in milliseconds.
       </dd>
+
+      <dt id="Information">Detail information of COM port</dt>
+      <dd>
+	The detail information of selected port is shown in the text box. <br>
+	You can select all data by using CTRL+A.
+	You can scroll horizontally by using CTRL/SHIFT + wheel. 
+      </dd>
+
     </dl>
   </body>
 </html>

Modified: trunk/doc/ja/html/about/history.html
===================================================================
--- trunk/doc/ja/html/about/history.html	2019-09-17 12:33:15 UTC (rev 8176)
+++ trunk/doc/ja/html/about/history.html	2019-09-17 13:38:14 UTC (rev 8177)
@@ -49,6 +49,7 @@
       <li><a href="../menu/setup-additional.html">Additional settings\x83_\x83C\x83A\x83\x8D\x83O</a>\x82\xCCVisual\x83^\x83u\x82ŕs\x93\xA7\x96\xBE\x93x\x82̒l\x82\xC9256\x88ȏ\xE3\x82\xF0\x93\xFC\x97͂\xB5\x82\xBD\x82Ƃ\xAB\x81A255\x82ɕύX\x82\xB7\x82\xE9\x82悤\x82ɂ\xB5\x82\xBD\x81B</li>
       <li>TCP/IP\x90ڑ\xB1\x92\x86\x82ɂ\xA8\x82\xA2\x82Ă\xE0<a href="../menu/setup-serialport.html">[Setup]-[Serial port]</a> \x83_\x83C\x83A\x83\x8D\x83O\x82\xF0\x8CĂяo\x82\xB9\x82\xE9\x82悤\x82ɂ\xB5\x82\xBD\x81B</li>
       <li><a href="../menu/setup-serialport.html">[Setup]-[Serial port]</a> \x83_\x83C\x83A\x83\x8D\x83O\x82̃^\x83C\x83g\x83\x8B\x82\xF0\x81u\x83V\x83\x8A\x83A\x83\x8B\x83|\x81[\x83g\x90ݒ\xE8\x81v\x82\xA9\x82\xE7\x81u\x83V\x83\x8A\x83A\x83\x8B\x83|\x81[\x83g\x90ݒ\xE8\x82Ɛڑ\xB1\x81v\x82ɕύX\x82\xB5\x82\xBD\x81B</li>
+      <li><a href="../menu/setup-serialport.html#Information">[Setup]-[Serial port]</a> \x83_\x83C\x83A\x83\x8D\x83O\x82\xC9COM\x83|\x81[\x83g\x82̏ڍ׏\xEE\x95\xF1\x82\xF0\x92lj\xC1\x82\xB5\x82\xBD\x81B</li>
     </ul>
   </li>
   <li>\x83o\x83O\x8FC\x90\xB3

Modified: trunk/doc/ja/html/menu/setup-serialport.html
===================================================================
--- trunk/doc/ja/html/menu/setup-serialport.html	2019-09-17 12:33:15 UTC (rev 8176)
+++ trunk/doc/ja/html/menu/setup-serialport.html	2019-09-17 13:38:14 UTC (rev 8177)
@@ -46,6 +46,13 @@
 	\x92P\x88ʂ̓~\x83\x8A\x95b\x82ł\xB7\x81B1\x95\xB6\x8E\x9A(\x8Ds)\x82\xB2\x82Ƃ̑҂\xBF\x8E\x9E\x8AԂ\xF0\x90ݒ\xE8\x82ł\xAB\x82܂\xB7\x81B<br>
 	Tera Term \x82\xA9\x82\xE7\x91\xE5\x97ʂ̕\xB6\x8E\x9A\x82𑗏o\x82\xB5\x82\xBD\x82Ƃ\xAB\x82Ƀ\x82\x83f\x83\x80\x82\xE2\x83z\x83X\x83g\x82\xAA\x95\xB6\x8E\x9A\x82\xF0\x8E\xE6\x82肱\x82ڂ\xB7\x8Fꍇ\x82ɂ͓K\x93\x96\x82ȑ҂\xBF\x8E\x9E\x8AԂ\xF0\x90ݒ肵\x82Ă݂Ă\xAD\x82\xBE\x82\xB3\x82\xA2\x81B
       </dd>
+
+      <dt id="Information">COM\x83|\x81[\x83g\x82̏ڍ׏\xEE\x95\xF1</dt>
+      <dd>
+	\x83e\x83L\x83X\x83g\x83{\x83b\x83N\x83X\x82ł͑I\x91𒆂\xCCCOM\x83|\x81[\x83g\x82Ɋւ\xB7\x82\xE9\x8Fڍ׏\xEE\x95\xF1\x82\xF0\x95\\x8E\xA6\x82\xB5\x82܂\xB7\x81B<br>
+	CTRL+A\x82őS\x91I\x91\xF0\x82\xAA\x82ł\xAB\x82܂\xB7\x81BCTRL/SHIFT+\x83z\x83C\x81[\x83\x8B\x82ʼn\xA1\x83X\x83N\x83\x8D\x81[\x83\x8B\x82\xAA\x82ł\xAB\x82܂\xB7\x81B
+      </dd>
+
     </dl>
   </body>
 </html>

Index: trunk/teraterm
===================================================================
--- trunk/teraterm	2019-09-17 12:33:15 UTC (rev 8176)
+++ trunk/teraterm	2019-09-17 13:38:14 UTC (rev 8177)

Property changes on: trunk/teraterm
___________________________________________________________________
Modified: svn:mergeinfo
## -1,4 +1,4 ##
 /branches/drag_and_drop/teraterm:7130,7139,7141,7143-7147
 /branches/flowctrl_dsrdtr/teraterm:7825-7827
-/branches/serial_port_improved/teraterm:8119,8140-8141
+/branches/serial_port_improved/teraterm:8119,8140-8141,8144
 /branches/vs2015_warn/teraterm:6194-6285
\ No newline at end of property
Modified: trunk/teraterm/ttpdlg/dlg_res.h
===================================================================
--- trunk/teraterm/ttpdlg/dlg_res.h	2019-09-17 12:33:15 UTC (rev 8176)
+++ trunk/teraterm/ttpdlg/dlg_res.h	2019-09-17 13:38:14 UTC (rev 8177)
@@ -171,6 +171,7 @@
 #define IDC_TERMRUSSFONT                1076
 #define IDC_GENLANG_UI                  1077
 #define IDC_SFMT_VERSION                1078
+#define IDC_SERIALTEXT                  1079
 #define IDC_GENHELP                     1099
 #define IDD_TERMDLG                     1100
 #define IDD_WINLISTDLG                  1200
@@ -190,7 +191,7 @@
 #define _APS_NO_MFC                     1
 #define _APS_NEXT_RESOURCE_VALUE        103
 #define _APS_NEXT_COMMAND_VALUE         40001
-#define _APS_NEXT_CONTROL_VALUE         1079
+#define _APS_NEXT_CONTROL_VALUE         1080
 #define _APS_NEXT_SYMED_VALUE           101
 #endif
 #endif

Modified: trunk/teraterm/ttpdlg/ttdlg.c
===================================================================
--- trunk/teraterm/ttpdlg/ttdlg.c	2019-09-17 12:33:15 UTC (rev 8176)
+++ trunk/teraterm/ttpdlg/ttdlg.c	2019-09-17 13:38:14 UTC (rev 8177)
@@ -1102,7 +1102,66 @@
 static PCHAR ParityList[] = {"none", "odd", "even", "mark", "space", NULL};
 static PCHAR StopList[] = {"1 bit", "1.5 bit", "2 bit", NULL};
 static PCHAR FlowList[] = {"Xon/Xoff", "RTS/CTS", "DSR/DTR", "none", NULL};
+static int g_deltaSumSerialDlg = 0;        // \x83}\x83E\x83X\x83z\x83C\x81[\x83\x8B\x82\xCCDelta\x97ݐϗp
+static WNDPROC g_defSerialDlgEditWndProc;  // Edit Control\x82̃T\x83u\x83N\x83\x89\x83X\x89\xBB\x97p
 
+/*
+ * \x83V\x83\x8A\x83A\x83\x8B\x83|\x81[\x83g\x90ݒ\xE8\x83_\x83C\x83A\x83\x8D\x83O\x82̃e\x83L\x83X\x83g\x83{\x83b\x83N\x83X\x82\xC9COM\x83|\x81[\x83g\x82̏ڍ׏\xEE\x95\xF1\x82\xF0\x95\\x8E\xA6\x82\xB7\x82\xE9\x81B
+ *
+ */
+static void serial_dlg_set_comport_info(HWND dlg, int portno, char *desc)
+{
+	char buf[1024];
+
+	_snprintf_s(buf, sizeof(buf), _TRUNCATE, "%s\r\n", desc);
+
+	SendDlgItemMessage(dlg, IDC_SERIALTEXT, WM_SETTEXT, 0, (LPARAM)(char *)buf);
+}
+
+static LRESULT CALLBACK SerialDlgEditWindowProc(HWND hWnd, UINT msg, WPARAM wp, LPARAM lp) 
+{
+	WORD keys;
+	short delta;
+	BOOL page;
+
+	switch (msg) {
+		case WM_KEYDOWN:
+			// Edit control\x8F\xE3\x82\xC5 CTRL+A \x82\xF0\x89\x9F\x89\xBA\x82\xB7\x82\xE9\x82ƁA\x83e\x83L\x83X\x83g\x82\xF0\x91S\x91I\x91\xF0\x82\xB7\x82\xE9\x81B
+			if (wp == 'A' && GetKeyState(VK_CONTROL) < 0) {
+				PostMessage(hWnd, EM_SETSEL, 0, -1);
+				return 0;
+			}
+			break;
+
+		case WM_MOUSEWHEEL:
+			// CTRLorSHIFT + \x83}\x83E\x83X\x83z\x83C\x81[\x83\x8B\x82̏ꍇ\x81A\x89\xA1\x83X\x83N\x83\x8D\x81[\x83\x8B\x82\xB3\x82\xB9\x82\xE9\x81B
+			keys = GET_KEYSTATE_WPARAM(wp);
+			delta = GET_WHEEL_DELTA_WPARAM(wp);
+			page = keys & (MK_CONTROL | MK_SHIFT);
+
+			if (page == 0)
+				break;
+
+			g_deltaSumSerialDlg += delta;
+
+			if (g_deltaSumSerialDlg >= WHEEL_DELTA) {
+				g_deltaSumSerialDlg -= WHEEL_DELTA;
+				SendMessage(hWnd, WM_HSCROLL, SB_PAGELEFT , 0);
+			} else if (g_deltaSumSerialDlg <= -WHEEL_DELTA) {
+				g_deltaSumSerialDlg += WHEEL_DELTA;
+				SendMessage(hWnd, WM_HSCROLL, SB_PAGERIGHT, 0);
+			}
+
+			break;
+	}
+    return CallWindowProc(g_defSerialDlgEditWndProc, hWnd, msg, wp, lp);
+}
+
+/*
+ * \x83V\x83\x8A\x83A\x83\x8B\x83|\x81[\x83g\x90ݒ\xE8\x83_\x83C\x83A\x83\x8D\x83O
+ *
+ *
+ */
 static INT_PTR CALLBACK SerialDlg(HWND Dialog, UINT Message, WPARAM wParam, LPARAM lParam)
 {
 	static const DlgTextInfo TextInfos[] = {
@@ -1123,10 +1182,11 @@
 	PTTSet ts;
 	int i, w, sel;
 	char Temp[128];
-	WORD ComPortTable[MAXCOMPORT];
-	static char *ComPortDesc[MAXCOMPORT];
-	int comports;
+	static WORD ComPortTable[MAXCOMPORT];  // \x8Eg\x97p\x89”\\x82\xC8COM\x83|\x81[\x83g\x94ԍ\x86
+	static char *ComPortDesc[MAXCOMPORT];  // COM\x83|\x81[\x83g\x82̏ڍ׏\xEE\x95\xF1
+	static int comports; // \x83e\x81[\x83u\x83\x8B\x8Dő吔
 	WORD Flow;
+	int portno;
 
 	switch (Message) {
 		case WM_INITDIALOG:
@@ -1155,6 +1215,10 @@
 					if (ComPortTable[i] == ts->ComPort) {
 						w = i;
 					}
+
+					// \x8Fڍ׏\xEE\x95\xF1\x82\xF0\x95\\x8E\xA6\x82\xB7\x82\xE9
+					serial_dlg_set_comport_info(Dialog, ComPortTable[w], ComPortDesc[w]);
+
 				}
 			} else if (comports == 0) {
 				DisableDlgItem(Dialog, IDC_SERIALPORT, IDC_SERIALPORT);
@@ -1214,6 +1278,13 @@
 
 			CenterWindow(Dialog, GetParent(Dialog));
 
+			// Edit control\x82\xF0\x83T\x83u\x83N\x83\x89\x83X\x89\xBB\x82\xB7\x82\xE9\x81B
+			g_deltaSumSerialDlg = 0;
+			g_defSerialDlgEditWndProc = (WNDPROC)SetWindowLongPtr(
+				GetDlgItem(Dialog, IDC_SERIALTEXT), 
+				GWLP_WNDPROC, 
+				(LONG_PTR)SerialDlgEditWindowProc);
+
 			return TRUE;
 
 		case WM_COMMAND:
@@ -1278,6 +1349,22 @@
 
 				case IDC_SERIALHELP:
 					PostMessage(GetParent(Dialog),WM_USER_DLGHELP2,0,0);
+					return TRUE;
+
+				case IDC_SERIALPORT:
+					switch (HIWORD(wParam)) {
+						case CBN_SELCHANGE: // \x83\x8A\x83X\x83g\x82\xA9\x82\xE7COM\x83|\x81[\x83g\x82\xAA\x91I\x91\xF0\x82\xB3\x82ꂽ
+							sel = SendDlgItemMessage(Dialog, IDC_SERIALPORT, CB_GETCURSEL, 0, 0);
+							portno = ComPortTable[sel];
+
+							// \x8Fڍ׏\xEE\x95\xF1\x82\xF0\x95\\x8E\xA6\x82\xB7\x82\xE9
+							serial_dlg_set_comport_info(Dialog, ComPortTable[sel], ComPortDesc[sel]);
+
+							break;
+
+					}
+				
+					return TRUE;
 			}
 	}
 	return FALSE;

Modified: trunk/teraterm/ttpdlg/ttpdlg.rc
===================================================================
--- trunk/teraterm/ttpdlg/ttpdlg.rc	2019-09-17 12:33:15 UTC (rev 8176)
+++ trunk/teraterm/ttpdlg/ttpdlg.rc	2019-09-17 13:38:14 UTC (rev 8177)
@@ -125,7 +125,7 @@
     EDITTEXT        IDC_LOCALE_EDIT,59,140,63,13,ES_AUTOHSCROLL
 END
 
-IDD_SERIALDLG DIALOGEX 20, 20, 190, 143
+IDD_SERIALDLG DIALOGEX 20, 20, 190, 205
 STYLE DS_SETFONT | DS_MODALFRAME | DS_3DLOOK | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
 CAPTION "Tera Term: Serial port setup and connection"
 FONT 14, "System", 0, 0, 0x0
@@ -150,6 +150,7 @@
     DEFPUSHBUTTON   "OK",IDOK,138,9,40,16,WS_GROUP
     PUSHBUTTON      "Cancel",IDCANCEL,138,34,40,16
     PUSHBUTTON      "&Help",IDC_SERIALHELP,138,62,40,16
+    EDITTEXT        IDC_SERIALTEXT,10,141,170,59,ES_MULTILINE | ES_AUTOVSCROLL | ES_AUTOHSCROLL | ES_READONLY | WS_VSCROLL | WS_HSCROLL
 END
 
 IDD_TCPIPDLG DIALOGEX 20, 20, 222, 157


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