[Ttssh2-commit] [4915] - 言語ファイルUIの設定変更時、自動的に Tera Term を再起動するかどうかを

Back to archive index

svnno****@sourc***** svnno****@sourc*****
2012年 4月 30日 (月) 21:58:56 JST


Revision: 4915
          http://sourceforge.jp/projects/ttssh2/svn/view?view=rev&revision=4915
Author:   yutakapon
Date:     2012-04-30 21:58:55 +0900 (Mon, 30 Apr 2012)
Log Message:
-----------
- 言語ファイルUIの設定変更時、自動的に Tera Term を再起動するかどうかを
  問い合わせるようにした。
- ttpcmn: RestartTeraTerm() 共通関数を追加した。

Modified Paths:
--------------
    trunk/installer/release/lang/French.lng
    trunk/installer/release/lang/German.lng
    trunk/teraterm/common/ttcommon.h
    trunk/teraterm/ttpcmn/ttcmn.c
    trunk/teraterm/ttpcmn/ttpcmn.def
    trunk/teraterm/ttpdlg/ttdlg.c

-------------- next part --------------
Modified: trunk/installer/release/lang/French.lng
===================================================================
--- trunk/installer/release/lang/French.lng	2012-04-30 12:00:57 UTC (rev 4914)
+++ trunk/installer/release/lang/French.lng	2012-04-30 12:58:55 UTC (rev 4915)
@@ -442,7 +442,7 @@
 ; common
 MSG_ERROR=ERROR
 MSG_TT_ERROR=Tera Term: Erreur
-MSG_TT_TAKE_EFFECT=This option takes effect the next time a session is started.
+MSG_TT_TAKE_EFFECT=This option takes effect the next time a session is started.\nAre you sure that you want to relaunch Tera Term?
 
 BTN_OK=OK
 BTN_CANCEL=Effacer

Modified: trunk/installer/release/lang/German.lng
===================================================================
--- trunk/installer/release/lang/German.lng	2012-04-30 12:00:57 UTC (rev 4914)
+++ trunk/installer/release/lang/German.lng	2012-04-30 12:58:55 UTC (rev 4915)
@@ -442,7 +442,7 @@
 ; common
 MSG_ERROR=Fehler
 MSG_TT_ERROR=TeraTerm-Fehler
-MSG_TT_TAKE_EFFECT=This option takes effect the next time a session is started.
+MSG_TT_TAKE_EFFECT=This option takes effect the next time a session is started.\nAre you sure that you want to relaunch Tera Term?
 
 BTN_OK=OK
 BTN_CANCEL=Abbrechen

Modified: trunk/teraterm/common/ttcommon.h
===================================================================
--- trunk/teraterm/common/ttcommon.h	2012-04-30 12:00:57 UTC (rev 4914)
+++ trunk/teraterm/common/ttcommon.h	2012-04-30 12:58:55 UTC (rev 4915)
@@ -13,6 +13,7 @@
 void PASCAL CopyShmemToTTSet(PTTSet ts);
 void PASCAL CopyTTSetToShmem(PTTSet ts);
 BOOL FAR PASCAL StartTeraTerm(PTTSet ts);
+void PASCAL FAR RestartTeraTerm(HWND hwnd, PTTSet ts);
 void FAR PASCAL ChangeDefaultSet(PTTSet ts, PKeyMap km);
 void FAR PASCAL GetDefaultSet(PTTSet ts);
 // void FAR PASCAL LoadDefaultSet(PCHAR SetupFName);

Modified: trunk/teraterm/ttpcmn/ttcmn.c
===================================================================
--- trunk/teraterm/ttpcmn/ttcmn.c	2012-04-30 12:00:57 UTC (rev 4914)
+++ trunk/teraterm/ttpcmn/ttcmn.c	2012-04-30 12:58:55 UTC (rev 4915)
@@ -17,6 +17,7 @@
 #include <locale.h>
 
 #include "compat_w95.h"
+#include "tt_res.h"
 
 /* first instance flag */
 static BOOL FirstInstance = TRUE;
@@ -80,6 +81,30 @@
 	}
 }
 
+// \x90ݒ\xE8\x83t\x83@\x83C\x83\x8B\x82\xF0\x83f\x83B\x83X\x83N\x82ɕۑ\xB6\x82\xB5\x81ATera Term\x96{\x91̂\xF0\x8DċN\x93\xAE\x82\xB7\x82\xE9\x81B
+// (2012.4.30 yutaka)
+void PASCAL FAR RestartTeraTerm(HWND hwnd, PTTSet ts)
+{
+	char path[1024];
+	STARTUPINFO si;
+	PROCESS_INFORMATION pi;
+
+	SendMessage(hwnd, WM_COMMAND, ID_SETUP_SAVE, 0);
+	SendMessage(hwnd, WM_COMMAND, ID_FILE_EXIT, 0);
+
+	if (GetModuleFileName(NULL, path, sizeof(path)) == 0) {
+		return;
+	}
+
+	memset(&si, 0, sizeof(si));
+	GetStartupInfo(&si);
+	memset(&pi, 0, sizeof(pi));
+
+	if (CreateProcess(NULL, path, NULL, NULL, FALSE, 0,
+	                  NULL, NULL, &si, &pi) == 0) {
+	}
+}
+
 void PASCAL FAR ChangeDefaultSet(PTTSet ts, PKeyMap km)
 {
 	if ((ts!=NULL) &&

Modified: trunk/teraterm/ttpcmn/ttpcmn.def
===================================================================
--- trunk/teraterm/ttpcmn/ttpcmn.def	2012-04-30 12:00:57 UTC (rev 4914)
+++ trunk/teraterm/ttpcmn/ttpcmn.def	2012-04-30 12:58:55 UTC (rev 4915)
@@ -46,3 +46,4 @@
   doSelectFolder @51
 
   mctimelocal @53
+  RestartTeraTerm @55

Modified: trunk/teraterm/ttpdlg/ttdlg.c
===================================================================
--- trunk/teraterm/ttpdlg/ttdlg.c	2012-04-30 12:00:57 UTC (rev 4914)
+++ trunk/teraterm/ttpdlg/ttdlg.c	2012-04-30 12:58:55 UTC (rev 4915)
@@ -3216,12 +3216,19 @@
 						// \x8C\xBE\x8C\xEA\x83t\x83@\x83C\x83\x8B\x82\xAA\x95ύX\x82\xB3\x82\xEA\x82Ă\xA2\x82\xBD\x8Fꍇ
 						w = (WORD)GetCurSel(Dialog, IDC_GENLANG_UI);
 						if (w != langui_sel) {
+							int ret;
 							_snprintf_s(ts->UILanguageFile_ini, sizeof(ts->UILanguageFile_ini), _TRUNCATE, 
 								"%s/%s", LANG_PATH, LangUIList[w - 1]);
 
 							get_lang_msg("MSG_TT_TAKE_EFFECT", uimsg, sizeof(uimsg), 
-								"This option takes effect the next time a session is started.", UILanguageFile);
-							MessageBox(Dialog, uimsg, "Tera Term: CONFIGURATION WARNING", MB_ICONEXCLAMATION);
+								"This option takes effect the next time a session is started.\n"
+								"Are you sure that you want to relaunch Tera Term?"
+								, UILanguageFile);
+							ret = MessageBox(Dialog, uimsg, "Tera Term: CONFIGURATION WARNING", MB_YESNO | MB_ICONEXCLAMATION | MB_DEFBUTTON2);
+							if (ret == IDYES) {
+								// re-launch
+								RestartTeraTerm(GetParent(Dialog), ts);
+							}
 						}
 					}
 



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