• R/O
  • HTTP
  • SSH
  • HTTPS

Commit

Tags
Keine Tags

Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

FFFTPのソースコードです。


Commit MetaInfo

Revision5054213b0bcac27cf73d6dd5fa7bf1d58c03d819 (tree)
Zeit2012-12-22 16:58:58
Autors_kawamoto <s_kawamoto@user...>
Commiters_kawamoto

Log Message

Add options for displaying file permissions in numbers.

Ändern Zusammenfassung

Diff

Binary files a/FFFTP_Eng_Release/FFFTP.exe and b/FFFTP_Eng_Release/FFFTP.exe differ
Binary files a/Release/FFFTP.exe and b/Release/FFFTP.exe differ
--- a/Resource/FFFTP.rc
+++ b/Resource/FFFTP.rc
@@ -1283,7 +1283,7 @@ BEGIN
12831283 PUSHBUTTON "ƒLƒƒƒ“ƒZƒ‹",IDCANCEL,96,72,50,14
12841284 END
12851285
1286-opt_disp_dlg DIALOG 0, 0, 211, 155
1286+opt_disp1_dlg DIALOG 0, 0, 211, 155
12871287 STYLE DS_SETFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
12881288 FONT 9, "MS Shell Dlg"
12891289 BEGIN
@@ -1449,6 +1449,13 @@ BEGIN
14491449 CONTROL "UTF-8 BOM",TRMODE4_UTF8BOM_CNV,"Button",BS_AUTORADIOBUTTON,12,69,81,10
14501450 END
14511451
1452+opt_disp2_dlg DIALOG 0, 0, 211, 155
1453+STYLE DS_SETFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
1454+FONT 9, "MS Shell Dlg"
1455+BEGIN
1456+ CONTROL "ƒtƒ@ƒCƒ‹‚Ì‘®«‚𐔎š‚Å•\Ž¦‚·‚é(&P)",DISP2_PERMIT_NUM,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,7,196,10
1457+END
1458+
14521459
14531460 /////////////////////////////////////////////////////////////////////////////
14541461 //
@@ -2017,7 +2024,7 @@ BEGIN
20172024 BOTTOMMARGIN, 86
20182025 END
20192026
2020- opt_disp_dlg, DIALOG
2027+ opt_disp1_dlg, DIALOG
20212028 BEGIN
20222029 LEFTMARGIN, 7
20232030 RIGHTMARGIN, 204
@@ -2120,6 +2127,14 @@ BEGIN
21202127 TOPMARGIN, 7
21212128 BOTTOMMARGIN, 148
21222129 END
2130+
2131+ opt_disp2_dlg, DIALOG
2132+ BEGIN
2133+ LEFTMARGIN, 7
2134+ RIGHTMARGIN, 204
2135+ TOPMARGIN, 7
2136+ BOTTOMMARGIN, 148
2137+ END
21232138 END
21242139 #endif // APSTUDIO_INVOKED
21252140
--- a/Resource/resource.h
+++ b/Resource/resource.h
@@ -101,7 +101,7 @@
101101 #define rasreconnect_dlg 178
102102 #define dial_dlg 179
103103 #define dial_password_dlg 180
104-#define opt_disp_dlg 181
104+#define opt_disp1_dlg 181
105105 #define bmark_edit_dlg 182
106106 #define opt_tool_dlg1 183
107107 #define IDD_OLEDRAG 184
@@ -116,6 +116,7 @@
116116 #define updown_as_with_ext_dlg 193
117117 #define ini_from_reg_dlg 194
118118 #define opt_trmode4_dlg 195
119+#define opt_disp2_dlg 196
119120 #define TRANS_TIME_BAR 1002
120121 #define TRANS_TEXT 1003
121122 #define TRANS_REMOTE 1003
@@ -224,6 +225,7 @@
224225 #define SOUND_TRNNG 1015
225226 #define TOOL_EDITOR1_BR 1015
226227 #define CONNECT_CLOSE_NOTIFY 1015
228+#define DISP2_PERMIT_NUM 1015
227229 #define PERM_O_EXEC 1016
228230 #define TOOL_EDITOR2_BR 1016
229231 #define CONNECT_QUICK_ANONY 1016
@@ -639,7 +641,7 @@
639641 //
640642 #ifdef APSTUDIO_INVOKED
641643 #ifndef APSTUDIO_READONLY_SYMBOLS
642-#define _APS_NEXT_RESOURCE_VALUE 196
644+#define _APS_NEXT_RESOURCE_VALUE 197
643645 #define _APS_NEXT_COMMAND_VALUE 40177
644646 #define _APS_NEXT_CONTROL_VALUE 1220
645647 #define _APS_NEXT_SYMED_VALUE 101
--- a/Resource_eng/FFFTP-eng.rc
+++ b/Resource_eng/FFFTP-eng.rc
@@ -1309,7 +1309,7 @@ BEGIN
13091309 PUSHBUTTON "Cancel",IDCANCEL,96,63,50,14
13101310 END
13111311
1312-opt_disp_dlg DIALOG 0, 0, 211, 155
1312+opt_disp1_dlg DIALOG 0, 0, 211, 155
13131313 STYLE DS_SETFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
13141314 FONT 9, "MS Shell Dlg"
13151315 BEGIN
@@ -1479,6 +1479,13 @@ BEGIN
14791479 CONTROL "UTF-8 BOM",TRMODE4_UTF8BOM_CNV,"Button",BS_AUTORADIOBUTTON,12,69,81,10
14801480 END
14811481
1482+opt_disp2_dlg DIALOG 0, 0, 211, 155
1483+STYLE DS_SETFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
1484+FONT 9, "MS Shell Dlg"
1485+BEGIN
1486+ CONTROL "Display file &permissions in numbers",DISP2_PERMIT_NUM,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,7,196,10
1487+END
1488+
14821489
14831490 /////////////////////////////////////////////////////////////////////////////
14841491 //
@@ -2047,7 +2054,7 @@ BEGIN
20472054 BOTTOMMARGIN, 78
20482055 END
20492056
2050- opt_disp_dlg, DIALOG
2057+ opt_disp1_dlg, DIALOG
20512058 BEGIN
20522059 LEFTMARGIN, 7
20532060 RIGHTMARGIN, 204
@@ -2147,6 +2154,14 @@ BEGIN
21472154 TOPMARGIN, 7
21482155 BOTTOMMARGIN, 148
21492156 END
2157+
2158+ opt_disp2_dlg, DIALOG
2159+ BEGIN
2160+ LEFTMARGIN, 7
2161+ RIGHTMARGIN, 204
2162+ TOPMARGIN, 7
2163+ BOTTOMMARGIN, 148
2164+ END
21502165 END
21512166 #endif // APSTUDIO_INVOKED
21522167
--- a/Resource_eng/resource.h
+++ b/Resource_eng/resource.h
@@ -101,7 +101,7 @@
101101 #define rasreconnect_dlg 178
102102 #define dial_dlg 179
103103 #define dial_password_dlg 180
104-#define opt_disp_dlg 181
104+#define opt_disp1_dlg 181
105105 #define bmark_edit_dlg 182
106106 #define opt_tool_dlg1 183
107107 #define IDD_OLEDRAG 184
@@ -116,6 +116,7 @@
116116 #define updown_as_with_ext_dlg 193
117117 #define ini_from_reg_dlg 194
118118 #define opt_trmode4_dlg 195
119+#define opt_disp2_dlg 196
119120 #define TRANS_TIME_BAR 1002
120121 #define TRANS_TEXT 1003
121122 #define TRANS_REMOTE 1003
@@ -224,6 +225,7 @@
224225 #define SOUND_TRNNG 1015
225226 #define TOOL_EDITOR1_BR 1015
226227 #define CONNECT_CLOSE_NOTIFY 1015
228+#define DISP2_PERMIT_NUM 1015
227229 #define PERM_O_EXEC 1016
228230 #define TOOL_EDITOR2_BR 1016
229231 #define CONNECT_QUICK_ANONY 1016
@@ -639,7 +641,7 @@
639641 //
640642 #ifdef APSTUDIO_INVOKED
641643 #ifndef APSTUDIO_READONLY_SYMBOLS
642-#define _APS_NEXT_RESOURCE_VALUE 196
644+#define _APS_NEXT_RESOURCE_VALUE 197
643645 #define _APS_NEXT_COMMAND_VALUE 40177
644646 #define _APS_NEXT_CONTROL_VALUE 1220
645647 #define _APS_NEXT_SYMED_VALUE 101
--- a/common.h
+++ b/common.h
@@ -1830,7 +1830,9 @@ int TimeString2FileTime(char *Time, FILETIME *Buf);
18301830 void FileTime2TimeString(FILETIME *Time, char *Buf, int Mode, int InfoExist, int ShowSeconds);
18311831 void SpecificLocalFileTime2FileTime(FILETIME *Time, int TimeZone);
18321832 int AttrString2Value(char *Str);
1833-void AttrValue2String(int Attr, char *Buf);
1833+// ファイルの属性を数字で表示
1834+//void AttrValue2String(int Attr, char *Buf);
1835+void AttrValue2String(int Attr, char *Buf, int ShowNumber);
18341836 void FormatIniString(char *Str);
18351837 int SelectFile(HWND hWnd, char *Fname, char *Title, char *Filters, char *Ext, int Flags, int Save);
18361838 int SelectDir(HWND hWnd, char *Buf, int MaxLen);
--- a/filelist.c
+++ b/filelist.c
@@ -146,6 +146,8 @@ extern int MoveMode;
146146 extern int DispFileIcon;
147147 // タイムスタンプのバグ修正
148148 extern int DispTimeSeconds;
149+// ファイルの属性を数字で表示
150+extern int DispPermissionsNumber;
149151
150152 /*===== ローカルなワーク =====*/
151153
@@ -1820,7 +1822,9 @@ static void AddListView(HWND hWnd, int Pos, char *Name, int Type, LONGLONG Size,
18201822 #else
18211823 if(InfoExist & FINFO_ATTR)
18221824 #endif
1823- AttrValue2String(Attr, Tmp);
1825+ // ファイルの属性を数字で表示
1826+// AttrValue2String(Attr, Tmp);
1827+ AttrValue2String(Attr, Tmp, DispPermissionsNumber);
18241828 LvItem.mask = LVIF_TEXT;
18251829 LvItem.iItem = Pos;
18261830 LvItem.iSubItem = 4;
--- a/main.c
+++ b/main.c
@@ -248,6 +248,8 @@ BYTE SSLRootCAFileHash[20];
248248 int DispFileIcon = NO;
249249 // タイムスタンプのバグ修正
250250 int DispTimeSeconds = NO;
251+// ファイルの属性を数字で表示
252+int DispPermissionsNumber = NO;
251253 // ディレクトリ自動作成
252254 int MakeAllDir = YES;
253255 // UTF-8対応
--- a/mesg-eng.h
+++ b/mesg-eng.h
@@ -190,7 +190,7 @@
190190 #define MSGJPN189 _Tu8("Transfer3", "Transfer3")
191191 #define MSGJPN190 _Tu8("Mirroring", "Mirroring")
192192 #define MSGJPN191 _Tu8("Operation", "Operation")
193-#define MSGJPN192 _Tu8("View", "View")
193+#define MSGJPN192 _Tu8("View1", "View1")
194194 #define MSGJPN193 _Tu8("Connecting", "Connecting")
195195 #define MSGJPN194 _Tu8("Firewall", "Firewall")
196196 #define MSGJPN195 _Tu8("Tool", "Tool")
@@ -338,6 +338,7 @@
338338 #define MSGJPN337 _Tu8("Resume all later", "Resume all later")
339339 #define MSGJPN338 _Tu8("Skip all", "Skip all")
340340 #define MSGJPN339 _Tu8("Transfer4", "Transfer4")
341+#define MSGJPN340 _Tu8("View2", "View2")
341342 #if defined(HAVE_TANDEM)
342343 #define MSGJPN2000 _Tu8("NonStop Server", "NonStop Server")
343344 #define MSGJPN2001 _Tu8("OSS<->GUARDIAN Switch(&O)", "OSS<->GUARDIAN Switch(&O)")
--- a/mesg-jpn.h
+++ b/mesg-jpn.h
@@ -190,7 +190,7 @@
190190 #define MSGJPN189 _Tu8("転送3", "\xE8\xBB\xA2\xE9\x80\x81\x33")
191191 #define MSGJPN190 _Tu8("ミラーリング", "\xE3\x83\x9F\xE3\x83\xA9\xE3\x83\xBC\xE3\x83\xAA\xE3\x83\xB3\xE3\x82\xB0")
192192 #define MSGJPN191 _Tu8("操作", "\xE6\x93\x8D\xE4\xBD\x9C")
193-#define MSGJPN192 _Tu8("表示", "\xE8\xA1\xA8\xE7\xA4\xBA")
193+#define MSGJPN192 _Tu8("表示1", "\xE8\xA1\xA8\xE7\xA4\xBA\x31")
194194 #define MSGJPN193 _Tu8("接続/切断", "\xE6\x8E\xA5\xE7\xB6\x9A/\xE5\x88\x87\xE6\x96\xAD")
195195 #define MSGJPN194 _Tu8("FireWall", "FireWall")
196196 #define MSGJPN195 _Tu8("ツール", "\xE3\x83\x84\xE3\x83\xBC\xE3\x83\xAB")
@@ -338,6 +338,7 @@
338338 #define MSGJPN337 _Tu8("全て後でリジューム", "\xE5\x85\xA8\xE3\x81\xA6\xE5\xBE\x8C\xE3\x81\xA7\xE3\x83\xAA\xE3\x82\xB8\xE3\x83\xA5\xE3\x83\xBC\xE3\x83\xA0")
339339 #define MSGJPN338 _Tu8("全てスキップ", "\xE5\x85\xA8\xE3\x81\xA6\xE3\x82\xB9\xE3\x82\xAD\xE3\x83\x83\xE3\x83\x97")
340340 #define MSGJPN339 _Tu8("転送4", "\xE8\xBB\xA2\xE9\x80\x81\x34")
341+#define MSGJPN340 _Tu8("表示2", "\xE8\xA1\xA8\xE7\xA4\xBA\x32")
341342 #if defined(HAVE_TANDEM)
342343 #define MSGJPN2000 _Tu8("NonStop Server", "NonStop Server")
343344 #define MSGJPN2001 _Tu8("OSS<->GUARDIAN 切り替え(&O)", "OSS<->GUARDIAN \xE5\x88\x87\xE3\x82\x8A\xE6\x9B\xBF\xE3\x81\x88(&O)")
--- a/misc.c
+++ b/misc.c
@@ -1240,28 +1240,59 @@ int AttrString2Value(char *Str)
12401240
12411241 Ret = 0;
12421242 memset(Tmp, 0, 10);
1243- strncpy(Tmp, Str, 9);
1244-
1245- if(Tmp[0] != '-')
1246- Ret |= 0x400;
1247- if(Tmp[1] != '-')
1248- Ret |= 0x200;
1249- if(Tmp[2] != '-')
1250- Ret |= 0x100;
1251-
1252- if(Tmp[3] != '-')
1253- Ret |= 0x40;
1254- if(Tmp[4] != '-')
1255- Ret |= 0x20;
1256- if(Tmp[5] != '-')
1257- Ret |= 0x10;
1258-
1259- if(Tmp[6] != '-')
1260- Ret |= 0x4;
1261- if(Tmp[7] != '-')
1262- Ret |= 0x2;
1263- if(Tmp[8] != '-')
1264- Ret |= 0x1;
1243+ // ファイルの属性を数字で表示
1244+// strncpy(Tmp, Str, 9);
1245+//
1246+// if(Tmp[0] != '-')
1247+// Ret |= 0x400;
1248+// if(Tmp[1] != '-')
1249+// Ret |= 0x200;
1250+// if(Tmp[2] != '-')
1251+// Ret |= 0x100;
1252+//
1253+// if(Tmp[3] != '-')
1254+// Ret |= 0x40;
1255+// if(Tmp[4] != '-')
1256+// Ret |= 0x20;
1257+// if(Tmp[5] != '-')
1258+// Ret |= 0x10;
1259+//
1260+// if(Tmp[6] != '-')
1261+// Ret |= 0x4;
1262+// if(Tmp[7] != '-')
1263+// Ret |= 0x2;
1264+// if(Tmp[8] != '-')
1265+// Ret |= 0x1;
1266+ if(strlen(Str) >= 9)
1267+ {
1268+ strncpy(Tmp, Str, 9);
1269+
1270+ if(Tmp[0] != '-')
1271+ Ret |= 0x400;
1272+ if(Tmp[1] != '-')
1273+ Ret |= 0x200;
1274+ if(Tmp[2] != '-')
1275+ Ret |= 0x100;
1276+
1277+ if(Tmp[3] != '-')
1278+ Ret |= 0x40;
1279+ if(Tmp[4] != '-')
1280+ Ret |= 0x20;
1281+ if(Tmp[5] != '-')
1282+ Ret |= 0x10;
1283+
1284+ if(Tmp[6] != '-')
1285+ Ret |= 0x4;
1286+ if(Tmp[7] != '-')
1287+ Ret |= 0x2;
1288+ if(Tmp[8] != '-')
1289+ Ret |= 0x1;
1290+ }
1291+ else if(strlen(Str) >= 3)
1292+ {
1293+ strncpy(Tmp, Str, 3);
1294+ Ret = strtol(Tmp, NULL, 16);
1295+ }
12651296
12661297 return(Ret);
12671298 }
@@ -1277,30 +1308,62 @@ int AttrString2Value(char *Str)
12771308 * int 値
12781309 *----------------------------------------------------------------------------*/
12791310
1280-void AttrValue2String(int Attr, char *Buf)
1311+// ファイルの属性を数字で表示
1312+//void AttrValue2String(int Attr, char *Buf)
1313+void AttrValue2String(int Attr, char *Buf, int ShowNumber)
12811314 {
1282- strcpy(Buf, "---------");
1283-
1284- if(Attr & 0x400)
1285- Buf[0] = 'r';
1286- if(Attr & 0x200)
1287- Buf[1] = 'w';
1288- if(Attr & 0x100)
1289- Buf[2] = 'x';
1290-
1291- if(Attr & 0x40)
1292- Buf[3] = 'r';
1293- if(Attr & 0x20)
1294- Buf[4] = 'w';
1295- if(Attr & 0x10)
1296- Buf[5] = 'x';
1297-
1298- if(Attr & 0x4)
1299- Buf[6] = 'r';
1300- if(Attr & 0x2)
1301- Buf[7] = 'w';
1302- if(Attr & 0x1)
1303- Buf[8] = 'x';
1315+ // ファイルの属性を数字で表示
1316+// strcpy(Buf, "---------");
1317+//
1318+// if(Attr & 0x400)
1319+// Buf[0] = 'r';
1320+// if(Attr & 0x200)
1321+// Buf[1] = 'w';
1322+// if(Attr & 0x100)
1323+// Buf[2] = 'x';
1324+//
1325+// if(Attr & 0x40)
1326+// Buf[3] = 'r';
1327+// if(Attr & 0x20)
1328+// Buf[4] = 'w';
1329+// if(Attr & 0x10)
1330+// Buf[5] = 'x';
1331+//
1332+// if(Attr & 0x4)
1333+// Buf[6] = 'r';
1334+// if(Attr & 0x2)
1335+// Buf[7] = 'w';
1336+// if(Attr & 0x1)
1337+// Buf[8] = 'x';
1338+ if(ShowNumber == YES)
1339+ {
1340+ sprintf(Buf, "%03x", Attr);
1341+ }
1342+ else
1343+ {
1344+ strcpy(Buf, "---------");
1345+
1346+ if(Attr & 0x400)
1347+ Buf[0] = 'r';
1348+ if(Attr & 0x200)
1349+ Buf[1] = 'w';
1350+ if(Attr & 0x100)
1351+ Buf[2] = 'x';
1352+
1353+ if(Attr & 0x40)
1354+ Buf[3] = 'r';
1355+ if(Attr & 0x20)
1356+ Buf[4] = 'w';
1357+ if(Attr & 0x10)
1358+ Buf[5] = 'x';
1359+
1360+ if(Attr & 0x4)
1361+ Buf[6] = 'r';
1362+ if(Attr & 0x2)
1363+ Buf[7] = 'w';
1364+ if(Attr & 0x1)
1365+ Buf[8] = 'x';
1366+ }
13041367
13051368 return;
13061369 }
--- a/option.c
+++ b/option.c
@@ -66,12 +66,14 @@ static INT_PTR CALLBACK DefAttrDlgProc(HWND hDlg, UINT message, WPARAM wParam, L
6666 static void AddFnameAttrToListView(HWND hDlg, char *Fname, char *Attr);
6767 static void GetFnameAttrFromListView(HWND hDlg, char *Buf);
6868 // 64ビット対応
69+// ファイルの属性を数字で表示
6970 //static BOOL CALLBACK MirrorSettingProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
7071 //static BOOL CALLBACK NotifySettingProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
7172 //static BOOL CALLBACK DispSettingProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
7273 static INT_PTR CALLBACK MirrorSettingProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
7374 static INT_PTR CALLBACK NotifySettingProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
74-static INT_PTR CALLBACK DispSettingProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
75+static INT_PTR CALLBACK Disp1SettingProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
76+static INT_PTR CALLBACK Disp2SettingProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
7577 static int SelectListFont(HWND hWnd, LOGFONT *lFont);
7678 // 64ビット対応
7779 //static BOOL CALLBACK ConnectSettingProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
@@ -172,6 +174,8 @@ extern int FolderAttrNum;
172174 extern int DispFileIcon;
173175 // タイムスタンプのバグ修正
174176 extern int DispTimeSeconds;
177+// ファイルの属性を数字で表示
178+extern int DispPermissionsNumber;
175179 // ディレクトリ自動作成
176180 extern int MakeAllDir;
177181
@@ -189,7 +193,7 @@ void SetOption(int Start)
189193 {
190194 // UTF-8対応
191195 // PROPSHEETPAGE psp[12];
192- PROPSHEETPAGE psp[13];
196+ PROPSHEETPAGE psp[14];
193197 PROPSHEETHEADER psh;
194198
195199 // 変数が未初期化のバグ修正
@@ -350,9 +354,9 @@ void SetOption(int Start)
350354 psp[7].dwSize = sizeof(PROPSHEETPAGE);
351355 psp[7].dwFlags = PSP_USETITLE | PSP_HASHELP;
352356 psp[7].hInstance = GetFtpInst();
353- psp[7].pszTemplate = MAKEINTRESOURCE(opt_disp_dlg);
357+ psp[7].pszTemplate = MAKEINTRESOURCE(opt_disp1_dlg);
354358 psp[7].pszIcon = NULL;
355- psp[7].pfnDlgProc = DispSettingProc;
359+ psp[7].pfnDlgProc = Disp1SettingProc;
356360 psp[7].pszTitle = MSGJPN192;
357361 psp[7].lParam = 0;
358362 psp[7].pfnCallback = NULL;
@@ -360,53 +364,63 @@ void SetOption(int Start)
360364 psp[8].dwSize = sizeof(PROPSHEETPAGE);
361365 psp[8].dwFlags = PSP_USETITLE | PSP_HASHELP;
362366 psp[8].hInstance = GetFtpInst();
363- psp[8].pszTemplate = MAKEINTRESOURCE(opt_connect_dlg);
367+ psp[8].pszTemplate = MAKEINTRESOURCE(opt_disp2_dlg);
364368 psp[8].pszIcon = NULL;
365- psp[8].pfnDlgProc = ConnectSettingProc;
366- psp[8].pszTitle = MSGJPN193;
369+ psp[8].pfnDlgProc = Disp2SettingProc;
370+ psp[8].pszTitle = MSGJPN340;
367371 psp[8].lParam = 0;
368372 psp[8].pfnCallback = NULL;
369373
370374 psp[9].dwSize = sizeof(PROPSHEETPAGE);
371375 psp[9].dwFlags = PSP_USETITLE | PSP_HASHELP;
372376 psp[9].hInstance = GetFtpInst();
373- psp[9].pszTemplate = MAKEINTRESOURCE(opt_fire_dlg);
377+ psp[9].pszTemplate = MAKEINTRESOURCE(opt_connect_dlg);
374378 psp[9].pszIcon = NULL;
375- psp[9].pfnDlgProc = FireSettingProc;
376- psp[9].pszTitle = MSGJPN194;
379+ psp[9].pfnDlgProc = ConnectSettingProc;
380+ psp[9].pszTitle = MSGJPN193;
377381 psp[9].lParam = 0;
378382 psp[9].pfnCallback = NULL;
379383
380384 psp[10].dwSize = sizeof(PROPSHEETPAGE);
381385 psp[10].dwFlags = PSP_USETITLE | PSP_HASHELP;
382386 psp[10].hInstance = GetFtpInst();
383- psp[10].pszTemplate = MAKEINTRESOURCE(opt_tool_dlg);
387+ psp[10].pszTemplate = MAKEINTRESOURCE(opt_fire_dlg);
384388 psp[10].pszIcon = NULL;
385- psp[10].pfnDlgProc = ToolSettingProc;
386- psp[10].pszTitle = MSGJPN195;
389+ psp[10].pfnDlgProc = FireSettingProc;
390+ psp[10].pszTitle = MSGJPN194;
387391 psp[10].lParam = 0;
388392 psp[10].pfnCallback = NULL;
389393
390394 psp[11].dwSize = sizeof(PROPSHEETPAGE);
391395 psp[11].dwFlags = PSP_USETITLE | PSP_HASHELP;
392396 psp[11].hInstance = GetFtpInst();
393- psp[11].pszTemplate = MAKEINTRESOURCE(opt_sound_dlg);
397+ psp[11].pszTemplate = MAKEINTRESOURCE(opt_tool_dlg);
394398 psp[11].pszIcon = NULL;
395- psp[11].pfnDlgProc = SoundSettingProc;
396- psp[11].pszTitle = MSGJPN196;
399+ psp[11].pfnDlgProc = ToolSettingProc;
400+ psp[11].pszTitle = MSGJPN195;
397401 psp[11].lParam = 0;
398402 psp[11].pfnCallback = NULL;
399403
400404 psp[12].dwSize = sizeof(PROPSHEETPAGE);
401405 psp[12].dwFlags = PSP_USETITLE | PSP_HASHELP;
402406 psp[12].hInstance = GetFtpInst();
403- psp[12].pszTemplate = MAKEINTRESOURCE(opt_misc_dlg);
407+ psp[12].pszTemplate = MAKEINTRESOURCE(opt_sound_dlg);
404408 psp[12].pszIcon = NULL;
405- psp[12].pfnDlgProc = MiscSettingProc;
406- psp[12].pszTitle = MSGJPN197;
409+ psp[12].pfnDlgProc = SoundSettingProc;
410+ psp[12].pszTitle = MSGJPN196;
407411 psp[12].lParam = 0;
408412 psp[12].pfnCallback = NULL;
409413
414+ psp[13].dwSize = sizeof(PROPSHEETPAGE);
415+ psp[13].dwFlags = PSP_USETITLE | PSP_HASHELP;
416+ psp[13].hInstance = GetFtpInst();
417+ psp[13].pszTemplate = MAKEINTRESOURCE(opt_misc_dlg);
418+ psp[13].pszIcon = NULL;
419+ psp[13].pfnDlgProc = MiscSettingProc;
420+ psp[13].pszTitle = MSGJPN197;
421+ psp[13].lParam = 0;
422+ psp[13].pfnCallback = NULL;
423+
410424 psh.dwSize = sizeof(PROPSHEETHEADER);
411425 psh.dwFlags = PSH_HASHELP | PSH_NOAPPLYNOW | PSH_PROPSHEETPAGE;
412426 psh.hwndParent = GetMainHwnd();
@@ -1111,8 +1125,9 @@ static INT_PTR CALLBACK NotifySettingProc(HWND hDlg, UINT message, WPARAM wParam
11111125 *----------------------------------------------------------------------------*/
11121126
11131127 // 64ビット対応
1128+// ファイルの属性を数字で表示
11141129 //static BOOL CALLBACK DispSettingProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
1115-static INT_PTR CALLBACK DispSettingProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
1130+static INT_PTR CALLBACK Disp1SettingProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
11161131 {
11171132 NMHDR *pnmhdr;
11181133 static LOGFONT TmpFont;
@@ -1172,6 +1187,40 @@ static INT_PTR CALLBACK DispSettingProc(HWND hDlg, UINT message, WPARAM wParam,
11721187 }
11731188
11741189
1190+// ファイルの属性を数字で表示
1191+static INT_PTR CALLBACK Disp2SettingProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
1192+{
1193+ NMHDR *pnmhdr;
1194+ static LOGFONT TmpFont;
1195+
1196+ switch (message)
1197+ {
1198+ case WM_INITDIALOG :
1199+ SendDlgItemMessage(hDlg, DISP2_PERMIT_NUM, BM_SETCHECK, DispPermissionsNumber, 0);
1200+ return(TRUE);
1201+
1202+ case WM_NOTIFY:
1203+ pnmhdr = (NMHDR FAR *)lParam;
1204+ switch(pnmhdr->code)
1205+ {
1206+ case PSN_APPLY :
1207+ DispPermissionsNumber = SendDlgItemMessage(hDlg, DISP2_PERMIT_NUM, BM_GETCHECK, 0, 0);
1208+ break;
1209+
1210+ case PSN_RESET :
1211+ break;
1212+
1213+ case PSN_HELP :
1214+ // TODO:
1215+// hHelpWin = HtmlHelp(NULL, AskHelpFilePath(), HH_HELP_CONTEXT, IDH_HELP_TOPIC_0000047);
1216+ break;
1217+ }
1218+ break;
1219+ }
1220+ return(FALSE);
1221+}
1222+
1223+
11751224 /*----- フォントを選ぶ --------------------------------------------------------
11761225 *
11771226 * Parameter
--- a/registry.c
+++ b/registry.c
@@ -197,6 +197,8 @@ extern BYTE SSLRootCAFileHash[20];
197197 extern int DispFileIcon;
198198 // タイムスタンプのバグ修正
199199 extern int DispTimeSeconds;
200+// ファイルの属性を数字で表示
201+extern int DispPermissionsNumber;
200202 // ディレクトリ自動作成
201203 extern int MakeAllDir;
202204 // UTF-8対応
@@ -629,6 +631,8 @@ void SaveRegistry(void)
629631 WriteIntValueToReg(hKey4, "ListIcon", DispFileIcon);
630632 // タイムスタンプのバグ修正
631633 WriteIntValueToReg(hKey4, "ListSecond", DispTimeSeconds);
634+ // ファイルの属性を数字で表示
635+ WriteIntValueToReg(hKey4, "ListPermitNum", DispPermissionsNumber);
632636 // ディレクトリ自動作成
633637 WriteIntValueToReg(hKey4, "MakeDir", MakeAllDir);
634638 // UTF-8対応
@@ -1037,6 +1041,8 @@ int LoadRegistry(void)
10371041 ReadIntValueFromReg(hKey4, "ListIcon", &DispFileIcon);
10381042 // タイムスタンプのバグ修正
10391043 ReadIntValueFromReg(hKey4, "ListSecond", &DispTimeSeconds);
1044+ // ファイルの属性を数字で表示
1045+ ReadIntValueFromReg(hKey4, "ListPermitNum", &DispPermissionsNumber);
10401046 // ディレクトリ自動作成
10411047 ReadIntValueFromReg(hKey4, "MakeDir", &MakeAllDir);
10421048 // UTF-8対応