]> git.saurik.com Git - wxWidgets.git/commitdiff
implemented wxMBConv::IsUTF8() helper for more classes so that all uses of UTF-8...
authorVáclav Slavík <vslavik@fastmail.fm>
Sat, 2 Jun 2007 12:42:57 +0000 (12:42 +0000)
committerVáclav Slavík <vslavik@fastmail.fm>
Sat, 2 Jun 2007 12:42:57 +0000 (12:42 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46265 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

include/wx/strconv.h
src/common/strconv.cpp

index 0fbe71bfd5fa2660fd8a56ebd300ee1242d15745..d953b892af8b8c32d514efd40e612100143e5cdc 100644 (file)
@@ -223,6 +223,10 @@ public:
         return m_conv->GetMBNulLen();
     }
 
+#if wxUSE_UNICODE_UTF8
+    virtual bool IsUTF8() const { return m_conv->IsUTF8(); }
+#endif
+
     virtual wxMBConv *Clone() const { return new wxConvBrokenFileNames(*this); }
 
 private:
@@ -399,6 +403,10 @@ public:
     virtual size_t WC2MB(char *outputBuf, const wchar_t *psz, size_t outputSize) const;
     virtual size_t GetMBNulLen() const;
 
+#if wxUSE_UNICODE_UTF8
+    virtual bool IsUTF8() const;
+#endif
+
     virtual wxMBConv *Clone() const { return new wxCSConv(*this); }
 
     void Clear();
index cd673cd72dfb2e95197687c080d1943e604b34b2..408b9f290634ba5fb3122dbd6a52f66bc37c1cd3 100644 (file)
@@ -1597,6 +1597,10 @@ public:
     // classify this encoding as explained in wxMBConv::GetMBNulLen() comment
     virtual size_t GetMBNulLen() const;
 
+#if wxUSE_UNICODE_UTF8
+    virtual bool IsUTF8() const;
+#endif
+
     virtual wxMBConv *Clone() const
     {
         wxMBConv_iconv *p = new wxMBConv_iconv(m_name);
@@ -1975,6 +1979,14 @@ size_t wxMBConv_iconv::GetMBNulLen() const
     return m_minMBCharWidth;
 }
 
+#if wxUSE_UNICODE_UTF8
+bool wxMBConv_iconv::IsUTF8() const
+{
+    return wxStricmp(m_name, "UTF-8") == 0 ||
+           wxStricmp(m_name, "UTF8") == 0;
+}
+#endif
+
 #endif // HAVE_ICONV
 
 
@@ -3613,9 +3625,25 @@ size_t wxCSConv::GetMBNulLen() const
         return m_convReal->GetMBNulLen();
     }
 
+    // otherwise, we are ISO-8859-1
     return 1;
 }
 
+#if wxUSE_UNICODE_UTF8
+bool wxCSConv::IsUTF8() const
+{
+    CreateConvIfNeeded();
+
+    if ( m_convReal )
+    {
+        return m_convReal->IsUTF8();
+    }
+
+    // otherwise, we are ISO-8859-1
+    return false;
+}
+#endif
+
 
 #if wxUSE_UNICODE