• R/O
  • SSH
  • HTTPS

ttssh2: コミット


コミットメタ情報

リビジョン5171 (tree)
日時2013-03-24 19:55:37
作者(del#24082)

ログメッセージ

ログ・ローテートの設定を Additional settings ダイアログから行えるようにした。

変更サマリ

差分

--- trunk/teraterm/teraterm/filesys.cpp (revision 5170)
+++ trunk/teraterm/teraterm/filesys.cpp (revision 5171)
@@ -532,7 +532,10 @@
532532 }
533533 LogVar->ByteCount = 0;
534534
535- LogVar->RotateMode = ROTATE_NONE;
535+ // Log rotate configuration
536+ LogVar->RotateMode = ts.LogRotate;
537+ LogVar->RotateSize = ts.LogRotateSize;
538+ LogVar->RotateStep = ts.LogRotateStep;
536539
537540 if (! OpenFTDlg(LogVar)) {
538541 FileTransEnd(OpLog);
--- trunk/teraterm/teraterm/addsetting.cpp (revision 5170)
+++ trunk/teraterm/teraterm/addsetting.cpp (revision 5171)
@@ -12,6 +12,7 @@
1212 #include "tttypes.h"
1313 #include "ttwinman.h"
1414 #include "ttcommon.h"
15+#include "ttftypes.h"
1516
1617 mouse_cursor_t MouseCursor[] = {
1718 {"ARROW", IDC_ARROW},
@@ -1208,10 +1209,25 @@
12081209
12091210 // CLogPropPageDlg メッセージ ハンドラ
12101211
1212+#define LOG_ROTATE_SIZETYPE_NUM 3
1213+static char *LogRotateSizeType[] = {
1214+ "Byte", "KB", "MB"
1215+};
1216+
1217+static char *GetLogRotateSizeType(int val)
1218+{
1219+ if (val >= LOG_ROTATE_SIZETYPE_NUM)
1220+ val = 0;
1221+
1222+ return LogRotateSizeType[val];
1223+}
1224+
12111225 BOOL CLogPropPageDlg::OnInitDialog()
12121226 {
12131227 char uimsg[MAX_UIMSG];
12141228 CButton *btn;
1229+ CComboBox *combo;
1230+ int i;
12151231
12161232 CPropertyPage::OnInitDialog();
12171233
@@ -1227,6 +1243,14 @@
12271243 SendDlgItemMessage(IDC_DEFAULTPATH_EDITOR, WM_SETFONT, (WPARAM)DlgLogFont, MAKELPARAM(TRUE,0));
12281244 SendDlgItemMessage(IDC_DEFAULTPATH_PUSH, WM_SETFONT, (WPARAM)DlgLogFont, MAKELPARAM(TRUE,0));
12291245 SendDlgItemMessage(IDC_AUTOSTART, WM_SETFONT, (WPARAM)DlgLogFont, MAKELPARAM(TRUE,0));
1246+
1247+ // Log rotate
1248+ SendDlgItemMessage(IDC_LOG_ROTATE, WM_SETFONT, (WPARAM)DlgLogFont, MAKELPARAM(TRUE,0));
1249+ SendDlgItemMessage(IDC_ROTATE_SIZE_TEXT, WM_SETFONT, (WPARAM)DlgLogFont, MAKELPARAM(TRUE,0));
1250+ SendDlgItemMessage(IDC_ROTATE_SIZE, WM_SETFONT, (WPARAM)DlgLogFont, MAKELPARAM(TRUE,0));
1251+ SendDlgItemMessage(IDC_ROTATE_SIZE_TYPE, WM_SETFONT, (WPARAM)DlgLogFont, MAKELPARAM(TRUE,0));
1252+ SendDlgItemMessage(IDC_ROTATE_STEP_TEXT, WM_SETFONT, (WPARAM)DlgLogFont, MAKELPARAM(TRUE,0));
1253+ SendDlgItemMessage(IDC_ROTATE_STEP, WM_SETFONT, (WPARAM)DlgLogFont, MAKELPARAM(TRUE,0));
12301254 }
12311255 else {
12321256 DlgLogFont = NULL;
@@ -1244,7 +1268,17 @@
12441268 GetDlgItemText(IDC_AUTOSTART, uimsg, sizeof(uimsg));
12451269 get_lang_msg("DLG_TAB_LOG_AUTOSTART", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
12461270 SetDlgItemText(IDC_AUTOSTART, ts.UIMsg);
1271+ // TODO: Log rotate
1272+#if 0
1273+ get_lang_msg("DLG_TAB_LOG_ROTATE", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
1274+ SetDlgItemText(IDC_LOG_ROTATE, ts.UIMsg);
1275+ get_lang_msg("DLG_TAB_LOG_ROTATE_SIZE_TEXT", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
1276+ SetDlgItemText(IDC_ROTATE_SIZE_TEXT, ts.UIMsg);
1277+ get_lang_msg("IDC_ROTATE_STEP_TEXT", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
1278+ SetDlgItemText(IDC_ROTATE_STEP_TEXT, ts.UIMsg);
1279+#endif
12471280
1281+
12481282 // Viewlog Editor path (2005.1.29 yutaka)
12491283 SetDlgItemText(IDC_VIEWLOG_EDITOR, ts.ViewlogEditor);
12501284
@@ -1258,6 +1292,33 @@
12581292 btn = (CButton *)GetDlgItem(IDC_AUTOSTART);
12591293 btn->SetCheck(ts.LogAutoStart);
12601294
1295+ // Log rotate
1296+ btn = (CButton *)GetDlgItem(IDC_LOG_ROTATE);
1297+ btn->SetCheck(ts.LogRotate != ROTATE_NONE);
1298+
1299+ combo = (CComboBox *)GetDlgItem(IDC_ROTATE_SIZE_TYPE);
1300+ for (i = 0 ; i < LOG_ROTATE_SIZETYPE_NUM ; i++) {
1301+ combo->AddString(LogRotateSizeType[i]);
1302+ }
1303+
1304+ SetDlgItemInt(IDC_ROTATE_SIZE, ts.LogRotateSize, FALSE);
1305+ combo->SelectString(-1, GetLogRotateSizeType(ts.LogRotateSizeType));
1306+ SetDlgItemInt(IDC_ROTATE_STEP, ts.LogRotateStep, FALSE);
1307+ if (ts.LogRotate == ROTATE_NONE) {
1308+ GetDlgItem(IDC_ROTATE_SIZE_TEXT)->EnableWindow(FALSE);
1309+ GetDlgItem(IDC_ROTATE_SIZE)->EnableWindow(FALSE);
1310+ GetDlgItem(IDC_ROTATE_SIZE_TYPE)->EnableWindow(FALSE);
1311+ GetDlgItem(IDC_ROTATE_STEP_TEXT)->EnableWindow(FALSE);
1312+ GetDlgItem(IDC_ROTATE_STEP)->EnableWindow(FALSE);
1313+ } else {
1314+ GetDlgItem(IDC_ROTATE_SIZE_TEXT)->EnableWindow(TRUE);
1315+ GetDlgItem(IDC_ROTATE_SIZE)->EnableWindow(TRUE);
1316+ GetDlgItem(IDC_ROTATE_SIZE_TYPE)->EnableWindow(TRUE);
1317+ GetDlgItem(IDC_ROTATE_STEP_TEXT)->EnableWindow(TRUE);
1318+ GetDlgItem(IDC_ROTATE_STEP)->EnableWindow(TRUE);
1319+ }
1320+
1321+
12611322 // ダイアログにフォーカスを当てる
12621323 ::SetFocus(::GetDlgItem(GetSafeHwnd(), IDC_VIEWLOG_EDITOR));
12631324
@@ -1300,6 +1361,27 @@
13001361 SetDlgItemText(IDC_DEFAULTPATH_EDITOR, ts.LogDefaultPath);
13011362
13021363 return TRUE;
1364+
1365+ case IDC_LOG_ROTATE | (BN_CLICKED << 16):
1366+ {
1367+ CButton *btn;
1368+ btn = (CButton *)GetDlgItem(IDC_LOG_ROTATE);
1369+ if (btn->GetCheck()) {
1370+ GetDlgItem(IDC_ROTATE_SIZE_TEXT)->EnableWindow(TRUE);
1371+ GetDlgItem(IDC_ROTATE_SIZE)->EnableWindow(TRUE);
1372+ GetDlgItem(IDC_ROTATE_SIZE_TYPE)->EnableWindow(TRUE);
1373+ GetDlgItem(IDC_ROTATE_STEP_TEXT)->EnableWindow(TRUE);
1374+ GetDlgItem(IDC_ROTATE_STEP)->EnableWindow(TRUE);
1375+ } else {
1376+ GetDlgItem(IDC_ROTATE_SIZE_TEXT)->EnableWindow(FALSE);
1377+ GetDlgItem(IDC_ROTATE_SIZE)->EnableWindow(FALSE);
1378+ GetDlgItem(IDC_ROTATE_SIZE_TYPE)->EnableWindow(FALSE);
1379+ GetDlgItem(IDC_ROTATE_STEP_TEXT)->EnableWindow(FALSE);
1380+ GetDlgItem(IDC_ROTATE_STEP)->EnableWindow(FALSE);
1381+ }
1382+
1383+ }
1384+ return TRUE;
13031385 }
13041386
13051387 return CPropertyPage::OnCommand(wParam, lParam);
@@ -1312,6 +1394,8 @@
13121394 struct tm *tm_local;
13131395 char uimsg[MAX_UIMSG];
13141396 CButton *btn;
1397+ CString str;
1398+ int i;
13151399
13161400 // Viewlog Editor path (2005.1.29 yutaka)
13171401 GetDlgItemText(IDC_VIEWLOG_EDITOR, ts.ViewlogEditor, sizeof(ts.ViewlogEditor));
@@ -1351,6 +1435,32 @@
13511435 /* Auto start logging (2007.5.31 maya) */
13521436 btn = (CButton *)GetDlgItem(IDC_AUTOSTART);
13531437 ts.LogAutoStart = btn->GetCheck();
1438+
1439+ /* Log Rotate */
1440+ btn = (CButton *)GetDlgItem(IDC_LOG_ROTATE);
1441+ if (btn->GetCheck()) { /* on */
1442+ ts.LogRotate = ROTATE_SIZE;
1443+
1444+ ((CComboBox*)GetDlgItem(IDC_ROTATE_SIZE_TYPE))->GetWindowText(str);
1445+ for (i = 0 ; i < LOG_ROTATE_SIZETYPE_NUM ; i++) {
1446+ if (strcmp(str, LogRotateSizeType[i]) == 0)
1447+ break;
1448+ }
1449+ if (i >= LOG_ROTATE_SIZETYPE_NUM)
1450+ i = 0;
1451+ ts.LogRotateSizeType = i;
1452+
1453+ ts.LogRotateSize = GetDlgItemInt(IDC_ROTATE_SIZE);
1454+ for (i = 0 ; i < ts.LogRotateSizeType ; i++)
1455+ ts.LogRotateSize *= 1024;
1456+
1457+ ts.LogRotateStep = GetDlgItemInt(IDC_ROTATE_STEP);
1458+
1459+ } else { /* off */
1460+ ts.LogRotate = ROTATE_NONE;
1461+ /* 残りのメンバーは意図的に設定を残す。*/
1462+ }
1463+
13541464 }
13551465
13561466
--- trunk/teraterm/ttpset/ttset.c (revision 5170)
+++ trunk/teraterm/ttpset/ttset.c (revision 5171)
@@ -775,6 +775,13 @@
775775 /* Auto start logging (2007.5.31 maya) */
776776 ts->LogAutoStart = GetOnOff(Section, "LogAutoStart", FName, FALSE);
777777
778+ /* Log Rotate (2013.3.24 yutaka) */
779+ ts->LogRotate = GetPrivateProfileInt(Section, "LogRotate", 0, FName);
780+ ts->LogRotateSize = GetPrivateProfileInt(Section, "LogRotateSize", 0, FName);
781+ ts->LogRotateSizeType = GetPrivateProfileInt(Section, "LogRotateSizeType", 0, FName);
782+ ts->LogRotateStep = GetPrivateProfileInt(Section, "LogRotateStep", 0, FName);
783+
784+
778785 /* XMODEM option */
779786 GetPrivateProfileString(Section, "XmodemOpt", "",
780787 Temp, sizeof(Temp), FName);
@@ -2106,6 +2113,12 @@
21062113 /* Auto start logging (2007.5.31 maya) */
21072114 WriteOnOff(Section, "LogAutoStart", FName, ts->LogAutoStart);
21082115
2116+ /* Log Rotate (2013.3.24 yutaka) */
2117+ WriteInt(Section, "LogRotate", FName, ts->LogRotate);
2118+ WriteInt(Section, "LogRotateSize", FName, ts->LogRotateSize);
2119+ WriteInt(Section, "LogRotateSizeType", FName, ts->LogRotateSizeType);
2120+ WriteInt(Section, "LogRotateStep", FName, ts->LogRotateStep);
2121+
21092122 /* XMODEM option */
21102123 switch (ts->XmodemOpt) {
21112124 case XoptCRC:
--- trunk/teraterm/common/tt_res.h (revision 5170)
+++ trunk/teraterm/common/tt_res.h (revision 5171)
@@ -132,9 +132,11 @@
132132 #define IDC_PASTEDELAY_EDIT 2510
133133 #define IDC_SCP_PATH 2510
134134 #define IDC_BGIMG_EDIT 2510
135+#define IDC_ROTATE_SIZE 2510
135136 #define IDC_CHECK1 2512
136137 #define IDC_CONFIRM_CHANGE_PASTE 2512
137138 #define IDC_CURSOR_CTRL_SEQ 2512
139+#define IDC_LOG_ROTATE 2512
138140 #define IDC_MOUSEWHEEL_SCROLL_LINE 2513
139141 #define IDC_WINDOW_CTRL 2513
140142 #define IDC_TRANSPROGRESS 2514
@@ -160,7 +162,12 @@
160162 #define IDC_BUTTON1 2528
161163 #define IDC_BGIMG_BUTTON 2528
162164 #define IDC_CLIPBOARD_ACCESS_LABEL 2529
165+#define IDC_ROTATE_SIZE_TYPE 2529
163166 #define IDC_CLIPBOARD_ACCESS 2530
167+#define IDC_ROTATE_STEP 2530
168+#define IDC_ROTATE_STEP_TEXT 2531
169+#define IDC_ROTATE_SIZE_TEXT 2532
170+#define IDC_ROTATE_GROUP 2533
164171 #define ID_ACC_SENDBREAK 50001
165172 #define ID_ACC_COPY 50002
166173 #define ID_ACC_NEWCONNECTION 50003
@@ -254,7 +261,7 @@
254261 #define _APS_NO_MFC 1
255262 #define _APS_NEXT_RESOURCE_VALUE 123
256263 #define _APS_NEXT_COMMAND_VALUE 52031
257-#define _APS_NEXT_CONTROL_VALUE 2529
264+#define _APS_NEXT_CONTROL_VALUE 2534
258265 #define _APS_NEXT_SYMED_VALUE 101
259266 #endif
260267 #endif
--- trunk/teraterm/common/tttypes.h (revision 5170)
+++ trunk/teraterm/common/tttypes.h (revision 5171)
@@ -557,6 +557,10 @@
557557 WORD FontQuality;
558558 char ScpSendDir[MAXPATHLEN];
559559 char BGImageFilePath[MAX_PATH];
560+ enum rotate_mode LogRotate;
561+ DWORD LogRotateSize;
562+ WORD LogRotateSizeType;
563+ WORD LogRotateStep;
560564 };
561565
562566 typedef struct tttset TTTSet, *PTTSet;
@@ -1012,6 +1016,12 @@
10121016 * Increment the number of this macro value
10131017 * when you change TMap or member of TMap.
10141018 *
1019+ * - At version 4.78, ttset_memfilemap was replaced with ttset_memfilemap_20.
1020+ * added tttset.LogRotate
1021+ * added tttset.LogRotateSize
1022+ * added tttset.LogRotateSizeType
1023+ * added tttset.LogRotateStep
1024+ *
10151025 * - At version 4.74, ttset_memfilemap was replaced with ttset_memfilemap_19.
10161026 * added tttset.FontQuality
10171027 * added tttset.ScpSenDir
@@ -1127,4 +1137,4 @@
11271137 * added tttset.VTCompatTab.
11281138 */
11291139
1130-#define TT_FILEMAPNAME "ttset_memfilemap_19"
1140+#define TT_FILEMAPNAME "ttset_memfilemap_20"
旧リポジトリブラウザで表示