]> git.saurik.com Git - wxWidgets.git/commitdiff
added wxLocale::Init() and ctor without arguments for convenience
authorVadim Zeitlin <vadim@wxwidgets.org>
Mon, 3 Aug 1998 22:54:15 +0000 (22:54 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Mon, 3 Aug 1998 22:54:15 +0000 (22:54 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@424 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

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

index 6cbd5e2f21b4d6eb5d3261d4e6d65342be01d68a..d60fd47f90b11367bcc6055efe770892d2b71c50 100644 (file)
@@ -57,11 +57,19 @@ class WXDLLEXPORT wxLocale
 {
 public:
   // ctor & dtor
+    // call Init() if you use this ctor
+  wxLocale();
     // the ctor has a side effect of changing current locale
   wxLocale(const char *szName,              // name (for messages)
            const char *szShort = NULL,      // dir prefix (for msg files)
            const char *szLocale = NULL,     // locale (for setlocale)
-           bool bLoadDefault = TRUE);       // preload wxstd.mo?
+           bool bLoadDefault = TRUE)        // preload wxstd.mo?
+    { Init(szName, szShort, szLocale, bLoadDefault); }
+    // the same as a function (returns TRUE on success)
+  bool Init(const char *szName,
+            const char *szShort = NULL,
+            const char *szLocale = NULL,
+            bool bLoadDefault = TRUE);
     // restores old locale
  ~wxLocale();
 
index 9750b9d809ed4400c3fcd5de43f76553cb677954..6f70f2fa3bc951d0c5e12f133a8a1bad0ad9dd23 100644 (file)
@@ -363,13 +363,21 @@ const char *wxMsgCatalog::GetString(const char *szOrig) const
 // wxLocale
 // ----------------------------------------------------------------------------
 
-// NB: ctor has (desired) side effect of changing current locale
-wxLocale::wxLocale(const char *szName, 
-                   const char *szShort, 
-                   const char *szLocale,
-                   bool        bLoadDefault)
-        : m_strLocale(szName), m_strShort(szShort)
+wxLocale::wxLocale()
 {
+  m_pszOldLocale = NULL;
+  m_pMsgCat = NULL;
+}
+
+// NB: this function has (desired) side effect of changing current locale
+bool wxLocale::Init(const char *szName, 
+                    const char *szShort, 
+                    const char *szLocale,
+                    bool        bLoadDefault)
+{
+  m_strLocale = szName;
+  m_strShort = szShort;
+
   // change current locale (default: same as long name)
   if ( szLocale == NULL )
     szLocale = szName;
@@ -390,8 +398,11 @@ wxLocale::wxLocale(const char *szName,
   
   // load the default catalog with wxWindows standard messages
   m_pMsgCat = NULL;
+  bool bOk = TRUE;
   if ( bLoadDefault )
-    AddCatalog("wxstd");
+    bOk = AddCatalog("wxstd");
+
+  return bOk;
 }
 
 // clean up