Update of /cvsroot/mahogany/M/src/gui
In directory usw-pr-cvs1:/tmp/cvs-serv11325/src/gui

Modified Files:
        wxFolderTree.cpp wxFolderView.cpp wxMFrame.cpp wxMenuDefs.cpp 
        wxlparser.cpp 
Log Message:
initial checkin of UTF-7 support

Index: wxFolderTree.cpp
===================================================================
RCS file: /cvsroot/mahogany/M/src/gui/wxFolderTree.cpp,v
retrieving revision 1.190
retrieving revision 1.191
diff -b -u -2 -r1.190 -r1.191
--- wxFolderTree.cpp    14 Apr 2002 12:16:54 -0000      1.190
+++ wxFolderTree.cpp    16 Apr 2002 02:45:52 -0000      1.191
@@ -60,5 +60,5 @@
 extern "C"
 {
-   #include <utf8.h>  // for utf8_text_utf7()
+   #include "utf8.h"  // for utf8_text_utf7()
 }
 

Index: wxFolderView.cpp
===================================================================
RCS file: /cvsroot/mahogany/M/src/gui/wxFolderView.cpp,v
retrieving revision 1.578
retrieving revision 1.579
diff -b -u -2 -r1.578 -r1.579
--- wxFolderView.cpp    14 Apr 2002 13:42:09 -0000      1.578
+++ wxFolderView.cpp    16 Apr 2002 02:45:52 -0000      1.579
@@ -2853,15 +2853,5 @@
       if ( encoding == wxFONTENCODING_UTF8 )
       {
-         wxString textOrig = text;
-         text = wxString(textOrig.wc_str(wxConvUTF8), wxConvLocal);
-         if ( text.Length() == 0 )
-         {
-            // conversion failed - use original text (and display
-            // incorrectly, unfortunately)
-            text = textOrig;
-            wxLogDebug("conversion from UTF-8 to environment's default encoding 
failed");
-         }
-
-         encoding = wxLocale::GetSystemEncoding();
+         encoding = ConvertUnicodeToSystem(&text);
       }
 
@@ -2949,8 +2939,8 @@
    wxFontEncoding enc = hi->GetEncoding();
 
-   if ( enc == wxFONTENCODING_UTF8 )
+   if ( enc == wxFONTENCODING_UTF7 || enc == wxFONTENCODING_UTF8 )
    {
       // As we converted text to environment's default encoding above, encoding
-      // is no longer wxFONTENCODING_UTF8, but wxLocale::GetSystemEncoding().
+      // is no longer wxFONTENCODING_UTF7|8, but wxLocale::GetSystemEncoding().
       enc = wxLocale::GetSystemEncoding();
    }

Index: wxMFrame.cpp
===================================================================
RCS file: /cvsroot/mahogany/M/src/gui/wxMFrame.cpp,v
retrieving revision 1.153
retrieving revision 1.154
diff -b -u -2 -r1.153 -r1.154
--- wxMFrame.cpp        14 Apr 2002 12:16:55 -0000      1.153
+++ wxMFrame.cpp        16 Apr 2002 02:45:53 -0000      1.154
@@ -993,7 +993,6 @@
 
                wxFONTENCODING_KOI8,            // == KOI8-R
-#if wxCHECK_VERSION(2, 3, 0)
+               wxFONTENCODING_UTF7,            // == UTF-7
                wxFONTENCODING_UTF8,            // == UTF-8
-#endif // 2.3.0
             };
 

Index: wxMenuDefs.cpp
===================================================================
RCS file: /cvsroot/mahogany/M/src/gui/wxMenuDefs.cpp,v
retrieving revision 1.184
retrieving revision 1.185
diff -b -u -2 -r1.184 -r1.185
--- wxMenuDefs.cpp      29 Mar 2002 08:58:52 -0000      1.184
+++ wxMenuDefs.cpp      16 Apr 2002 02:45:53 -0000      1.185
@@ -456,5 +456,5 @@
 
    // the available accelerators for this menu:
-   // FJMNPQUVXZ
+   // JKMQVWXZ
    { WXMENU_LANG_DEFAULT, gettext_noop("De&fault"), gettext_noop("Use the default 
encoding"), wxITEM_RADIO },
    { WXMENU_SEPARATOR, "", "", wxITEM_RADIO },
@@ -463,5 +463,5 @@
    { WXMENU_LANG_ISO8859_3, gettext_noop("Es&peranto (ISO-8859-3)"), 
gettext_noop(""), wxITEM_RADIO },
    { WXMENU_LANG_ISO8859_4, gettext_noop("Baltic &old (ISO-8859-4)"), 
gettext_noop(""), wxITEM_RADIO },
-   { WXMENU_LANG_ISO8859_5, gettext_noop("&Cyrillic (ISO-8859-5)"), gettext_noop(""), 
wxITEM_RADIO },
+   { WXMENU_LANG_ISO8859_5, gettext_noop("C&yrillic (ISO-8859-5)"), gettext_noop(""), 
+wxITEM_RADIO },
    { WXMENU_LANG_ISO8859_6, gettext_noop("&Arabic (ISO-8859-6)"), gettext_noop(""), 
wxITEM_RADIO },
    { WXMENU_LANG_ISO8859_7, gettext_noop("&Greek (ISO-8859-7)"), gettext_noop(""), 
wxITEM_RADIO },
@@ -486,8 +486,7 @@
    { WXMENU_LANG_KOI8, gettext_noop("Russian (KOI&8-R)"), gettext_noop(""), 
wxITEM_RADIO },
    { WXMENU_SEPARATOR, "", "", wxITEM_RADIO },
-#if wxCHECK_VERSION(2, 3, 0)
+   { WXMENU_LANG_UTF7, gettext_noop("Uni&code (UTF-7)"), gettext_noop(""), 
+wxITEM_RADIO },
    { WXMENU_LANG_UTF8, gettext_noop("&Unicode (UTF-8)"), gettext_noop(""), 
wxITEM_RADIO },
    { WXMENU_SEPARATOR, "", "", wxITEM_RADIO },
-#endif // 2.3.0
    { WXMENU_LANG_SET_DEFAULT, gettext_noop("&Set default encoding..."), ""            
             , wxITEM_NORMAL },
 
@@ -805,9 +804,11 @@
          break;
 
-#if wxCHECK_VERSION(2, 3, 0)
+      case wxFONTENCODING_UTF7:
+         id = WXMENU_LANG_UTF7;
+         break;
+
       case wxFONTENCODING_UTF8:
          id = WXMENU_LANG_UTF8;
          break;
-#endif // 2.3.0
 
       default:
@@ -849,7 +850,6 @@
       WXMENU_LANG_CP1257,
       WXMENU_LANG_KOI8,
-#if wxCHECK_VERSION(2, 3, 0)
+      WXMENU_LANG_UTF7,
       WXMENU_LANG_UTF8,
-#endif // 2.3.0
    };
 
@@ -909,9 +909,11 @@
          break;
 
-#if wxCHECK_VERSION(2, 3, 0)
+      case WXMENU_LANG_UTF7:
+         encoding = wxFONTENCODING_UTF7;
+         break;
+
       case WXMENU_LANG_UTF8:
          encoding = wxFONTENCODING_UTF8;
          break;
-#endif // 2.3.0
    }
 

Index: wxlparser.cpp
===================================================================
RCS file: /cvsroot/mahogany/M/src/gui/wxlparser.cpp,v
retrieving revision 1.47
retrieving revision 1.48
diff -b -u -2 -r1.47 -r1.48
--- wxlparser.cpp       6 Dec 2001 23:00:28 -0000       1.47
+++ wxlparser.cpp       16 Apr 2002 02:45:53 -0000      1.48
@@ -30,4 +30,6 @@
 #include <wx/encconv.h>
 
+#include "MessageView.h" // ConvertUnicodeToSystem()
+
 #define   BASE_SIZE 12
 
@@ -183,23 +185,11 @@
       return;
 
-   wxString str;
+   wxString str = strOrig;
 
-#if wxCHECK_VERSION(2, 3, 0)
    if ( encoding == wxFONTENCODING_UTF8 )
    {
       // Convert from UTF-8 to environment's default encoding
-      str = wxString(strOrig.wc_str(wxConvUTF8), wxConvLocal);
-      if ( str.Length() == 0 )
-      {
-         // conversion failed - use original text (and display
-         // incorrectly, unfortunately)
-         str = strOrig;
-         wxLogDebug("conversion from UTF-8 to environment's default encoding failed");
+      encoding = ConvertUnicodeToSystem(&str);
       }
-      encoding = wxLocale::GetSystemEncoding();
-   }
-   else
-#endif // 2.3.0
-      str = strOrig;
 
    bool useConverter = FALSE;


_______________________________________________
Mahogany-cvsupdates mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/mahogany-cvsupdates

Reply via email to