OSDN Git Service

Fix bugs of text encoding routines.
[ffftp/ffftp.git] / toolmenu.c
index b216a40..5949215 100644 (file)
@@ -791,6 +791,10 @@ void EnableUserOpe(void)
                EnableWindow(hWndDirLocal, TRUE);\r
                EnableWindow(hWndDirRemote, TRUE);\r
 \r
+               // \91I\91ð\95s\89Â\82È\8a¿\8e\9a\83R\81[\83h\82Ì\83{\83^\83\93\82ª\95\\8e¦\82³\82ê\82é\83o\83O\82ð\8fC\90³\r
+               HideHostKanjiButton();\r
+               HideLocalKanjiButton();\r
+\r
                HideUI = NO;\r
 \r
                MakeButtonsFocus();\r
@@ -1114,11 +1118,28 @@ void HideHostKanjiButton(void)
                        SendMessage(hWndTbarMain, TB_ENABLEBUTTON, MENU_KNJ_JIS, MAKELONG(TRUE, 0));\r
                        SendMessage(hWndTbarMain, TB_ENABLEBUTTON, MENU_KNJ_UTF8N, MAKELONG(TRUE, 0));\r
                        SendMessage(hWndTbarMain, TB_ENABLEBUTTON, MENU_KNJ_NONE, MAKELONG(TRUE, 0));\r
-                       if(TmpHostKanjiCode != KANJI_NOCNV)\r
-                               SendMessage(hWndTbarMain, TB_ENABLEBUTTON, MENU_KANACNV, MAKELONG(TRUE, 0));\r
-                       else\r
-                               SendMessage(hWndTbarMain, TB_ENABLEBUTTON, MENU_KANACNV, MAKELONG(FALSE, 0));\r
-                       break;\r
+//                     if(TmpHostKanjiCode != KANJI_NOCNV)\r
+//                             SendMessage(hWndTbarMain, TB_ENABLEBUTTON, MENU_KANACNV, MAKELONG(TRUE, 0));\r
+//                     else\r
+//                             SendMessage(hWndTbarMain, TB_ENABLEBUTTON, MENU_KANACNV, MAKELONG(FALSE, 0));\r
+//                     break;\r
+                       // \8c»\8dÝ\83J\83i\95Ï\8a·\82ÍShift_JIS\81AJIS\81AEUC\8aÔ\82Å\82Ì\82Ý\8b@\94\\82·\82é\r
+                       SendMessage(hWndTbarMain, TB_ENABLEBUTTON, MENU_KANACNV, MAKELONG(FALSE, 0));\r
+                       switch(TmpHostKanjiCode)\r
+                       {\r
+                       case KANJI_SJIS:\r
+                       case KANJI_JIS:\r
+                       case KANJI_EUC:\r
+                               switch(TmpLocalKanjiCode)\r
+                               {\r
+                               case KANJI_SJIS:\r
+                               case KANJI_JIS:\r
+                               case KANJI_EUC:\r
+                                       SendMessage(hWndTbarMain, TB_ENABLEBUTTON, MENU_KANACNV, MAKELONG(TRUE, 0));\r
+                                       break;\r
+                               }\r
+                               break;\r
+                       }\r
        }\r
        return;\r
 }\r
@@ -1146,11 +1167,11 @@ void SetLocalKanjiCode(int Type)
                        break;\r
 \r
                case MENU_L_KNJ_EUC :\r
-//                     TmpLocalKanjiCode = KANJI_EUC;\r
+                       TmpLocalKanjiCode = KANJI_EUC;\r
                        break;\r
 \r
                case MENU_L_KNJ_JIS :\r
-//                     TmpLocalKanjiCode = KANJI_JIS;\r
+                       TmpLocalKanjiCode = KANJI_JIS;\r
                        break;\r
 \r
                case MENU_L_KNJ_UTF8N :\r
@@ -1172,11 +1193,11 @@ void DispLocalKanjiCode(void)
                        break;\r
 \r
                case KANJI_EUC :\r
-//                     SendMessage(hWndTbarMain, TB_CHECKBUTTON, MENU_L_KNJ_EUC, MAKELONG(TRUE, 0));\r
+                       SendMessage(hWndTbarMain, TB_CHECKBUTTON, MENU_L_KNJ_EUC, MAKELONG(TRUE, 0));\r
                        break;\r
 \r
                case KANJI_JIS :\r
-//                     SendMessage(hWndTbarMain, TB_CHECKBUTTON, MENU_L_KNJ_JIS, MAKELONG(TRUE, 0));\r
+                       SendMessage(hWndTbarMain, TB_CHECKBUTTON, MENU_L_KNJ_JIS, MAKELONG(TRUE, 0));\r
                        break;\r
 \r
                case KANJI_UTF8N :\r
@@ -1205,12 +1226,26 @@ void HideLocalKanjiButton(void)
 \r
                default :\r
                        SendMessage(hWndTbarMain, TB_ENABLEBUTTON, MENU_L_KNJ_SJIS, MAKELONG(TRUE, 0));\r
-//                     SendMessage(hWndTbarMain, TB_ENABLEBUTTON, MENU_L_KNJ_EUC, MAKELONG(TRUE, 0));\r
-//                     SendMessage(hWndTbarMain, TB_ENABLEBUTTON, MENU_L_KNJ_JIS, MAKELONG(TRUE, 0));\r
+                       SendMessage(hWndTbarMain, TB_ENABLEBUTTON, MENU_L_KNJ_EUC, MAKELONG(TRUE, 0));\r
+                       SendMessage(hWndTbarMain, TB_ENABLEBUTTON, MENU_L_KNJ_JIS, MAKELONG(TRUE, 0));\r
                        SendMessage(hWndTbarMain, TB_ENABLEBUTTON, MENU_L_KNJ_UTF8N, MAKELONG(TRUE, 0));\r
-                       // TODO: \8c»\8dÝEUC\82ÆJIS\82Í\94ñ\91Î\89\9e\r
-                       SendMessage(hWndTbarMain, TB_ENABLEBUTTON, MENU_L_KNJ_EUC, MAKELONG(FALSE, 0));\r
-                       SendMessage(hWndTbarMain, TB_ENABLEBUTTON, MENU_L_KNJ_JIS, MAKELONG(FALSE, 0));\r
+                       // \8c»\8dÝ\83J\83i\95Ï\8a·\82ÍShift_JIS\81AJIS\81AEUC\8aÔ\82Å\82Ì\82Ý\8b@\94\\82·\82é\r
+                       SendMessage(hWndTbarMain, TB_ENABLEBUTTON, MENU_KANACNV, MAKELONG(FALSE, 0));\r
+                       switch(TmpHostKanjiCode)\r
+                       {\r
+                       case KANJI_SJIS:\r
+                       case KANJI_JIS:\r
+                       case KANJI_EUC:\r
+                               switch(TmpLocalKanjiCode)\r
+                               {\r
+                               case KANJI_SJIS:\r
+                               case KANJI_JIS:\r
+                               case KANJI_EUC:\r
+                                       SendMessage(hWndTbarMain, TB_ENABLEBUTTON, MENU_KANACNV, MAKELONG(TRUE, 0));\r
+                                       break;\r
+                               }\r
+                               break;\r
+                       }\r
                        break;\r
        }\r
        return;\r