Commit Graph

284 Commits

Author SHA1 Message Date
Vadim Zeitlin
f4f3c8f3bb Support wxLOCALE_THOUSANDS_SEP in wxMSW wxLocale::GetInfo().
Simply use ::GetLocaleInfo(LOCALE_STHOUSAND) for it.

Closes #12643.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66001 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-11-03 16:29:06 +00:00
Vadim Zeitlin
f48a115976 No real changes, just use const_cast<> instead of C casts.
Replace many comments indicating that the C cast used was really a
const_cast<> with the proper cast itself. There is no reason to not use it any
longer, all the supported compilers understand it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65861 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-22 14:17:30 +00:00
Vadim Zeitlin
f675b4f521 Fix harmless unused parameter warnings in wxDEBUG_LEVEL==0 build.
These warnings were harmless as they concerned the parameters used inside
wxASSERTs only but there were hundreds if not thousands of them in
wx/strvararg.h alone so all the rest of build output was completely lost in
them.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65046 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-22 13:42:49 +00:00
Vadim Zeitlin
5276b0a53c Use wxDELETE() and wxDELETEA() when possible.
Use wxDELETE[A]() functions which automatically NULL out their arguments after
deleting them instead of doing it manually.

Closes #9685.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64656 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-06-20 18:18:23 +00:00
Václav Slavík
ce411ca8f5 Fix incorrect assumptions about locales codes.
wx incorrectly assumes that Unix locale codes have the form of xx_YY,
where both xx and yy are two characters long. This is wrong, xx is
ISO 639 code, which can often have 3 characters ("ast", "gez" etc.);
future ISO 639-6 will have up to 4 chars. Similarly, ISO 3166 has
alpha-3 variant of country codes too (even though they aren't used in
this context today).

For parsing needs, we can just look for '_' in the code. The only place
where a check for xx_YY code was performed was GetSystemLanguage().
Instead of bothering with correct check (or a heuristic), let's simply
assume locale is xx_YY code and only do alternative handling if that
assumption fails. According to the comments, this alternative handling
was for cases such as LANG=german environment on SuSE, but it's safe to
say that no modern systems do that anymore, so it's OK that this patch
is marginally less efficient on such legacy systems.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64218 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-05-05 13:50:15 +00:00
Václav Slavík
0d28a1f927 Always use active wxTranslations instance via wxLocale.
Don't use m_translations directly, if the user made changes to
wxTranslations instance, it would be too confusing if calls through
wxLocale compat API did nothing.

Also don't change active wxTranslations object from wxLocale if already
done by user, only call wxTranslations::Set() from wxLocale constructor
if it wasn't already set by the user. Still do if wxTranslations
instance currently in use was set by previous wxLocale on the locale
stack.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64165 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-29 08:31:42 +00:00
Václav Slavík
ea14492351 Split intl.h into intl.h, language.h and translation.h.
To make the code more manageable, intl.h now contains wxLocale and
translation.h all translations-related stuff (wxTranslations, _() etc.).
Code generated by genlang.py was moved into its own files (language.h,
languageinfo.cpp).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64118 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-24 07:06:32 +00:00
Václav Slavík
18e065b48d Split wxLocale into wxLocale and wxTranslations.
wxTranslations is for handling gettext translations. wxLocale manages
locale and provides compatiblity API for translations. Separating these
two loosely related tasks makes it possible to use translations into
languages not known by Windows or using localized GUI without all the
locales compilations.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64117 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-24 07:06:18 +00:00
Václav Slavík
eddac3cb0f Fixed (correct) warning about uninitialized inputConv.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64113 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-22 14:57:18 +00:00
Václav Slavík
ebeac822d9 msgIdCharset is only needed in ANSI build.
In Unicode build, there's no need to create wxCSConv object for every
loaded catalog when it won't be used for anything.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64090 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-21 16:46:05 +00:00
Václav Slavík
3acf8a8d9b Remove wxLOCALE_CONV_ENCODING flag.
This doesn't affect Unicode builds, only the legacy ANSI one.

PO files are now always converted to the appropriate charset according
to current locale. This was the default behavior for long time; not
doing the conversion was always a fragile hack that didn't work well.
Removing this flag simplifies wxLocale code.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63993 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-16 11:29:22 +00:00
Václav Slavík
8d94819c43 Remove wxUSE_WCHAR_T checks.
wxWidgets requires wchar_t for some time now; wx/chartype.h has a check
to fail complation without it. Simplify code by removing now-dead code
for the !wxUSE_WCHAR_T case.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63991 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-16 10:43:18 +00:00
Václav Slavík
3eadb6d5e6 Reverted wxFileSystem support in wxLocale.
The implementation was broken in numerous ways. URLs were corrupted in
search paths thanks to use of wxFileName for normalization. Lookup of
catalogs was broken, because ":" in URLs were interpreted as path
separators. Asserts occured because filenames were (incorrectly!)
interpreted as URLs.

Will replace with proper implementation.

See #8793, #11491.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63764 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-03-28 15:41:41 +00:00
Vadim Zeitlin
c514752837 Fix some harmless unused parameter warnings.
These warnings only happen in specific builds (when HAVE_LANGINFO_H and
wxUSE_DISPLAY are undefined/off).

See #11817.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63720 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-03-20 12:45:47 +00:00
Vadim Zeitlin
03647350fc No changes, just removed hard tabs and trailing white space.
This commit is huge but there are no non-white-space changes in it.

Some files containing third-party sources (src/msw/wince/time.cpp,
src/x11/pango*.cpp) were left unchanged.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61724 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-08-21 10:41:26 +00:00
Vadim Zeitlin
9a83f86094 Globally replace _T() with wxT().
Standardize on using a single macro across all wxWidgets sources and solve the name clash with Sun CC standard headers (see #10660).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61508 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-07-23 20:30:22 +00:00
Vadim Zeitlin
af58844636 Add information about the log message generation location to wxLog.
This means that wxLog::DoLogRecord() can now retrieve the file name, line
number and the function where the message was logged.

An unfortunate consequence of this change is that now

	if ( condition )
		wxLogError("Whatever");

results in a warning from g++ 4.x with -Wparentehses, so extra parentheses had
to be added in many places.

Finally, also allow storing arbitrary attributes in wxLogRecordInfo. This had
to be added to implement our own overloaded wxLogStatus() and wxLogSysError()
and will probably be useful for the others as well.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61363 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-07-09 20:26:34 +00:00
Vadim Zeitlin
8fbd067d3c correct writing direction for Farsi
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61340 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-07-06 21:19:58 +00:00
Vadim Zeitlin
86c30bc557 added Asturian language entry (see #10808)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60684 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-05-19 10:51:11 +00:00
Francesco Montorsi
375330ac40 do not call setlocale() twice in wxLocale::IsAvailable() and in IMPLEMENT_STRTOX_L_START
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60111 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-04-12 15:51:43 +00:00
Stefan Csomor
9fbcc67955 make long format equal to full on mac (including dayname)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59978 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-04-02 04:43:24 +00:00
Stefan Csomor
470298433c adding more symbols to translation, using better matching formats
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59943 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-30 18:13:42 +00:00
Stefan Csomor
3e43b64782 adding a for am/pm and windows special character t
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59920 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-29 20:10:14 +00:00
Stefan Csomor
756b5a9818 fixing conversion
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59919 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-29 19:46:02 +00:00
Stefan Csomor
e9e53eb1ef adding implementation for OSX
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59918 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-29 18:13:32 +00:00
Vadim Zeitlin
cd8a8b45b9 use short date format in wxLOCALE_DATE_TIME_FMT handler for MSW for compatibility with strftime("%c")
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59916 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-29 17:26:25 +00:00
Vadim Zeitlin
89a7e1ff98 Added wxLOCALE_DATE/TIME_FMT support to wxLocale::GetInfo().
- Implement for POSIX and Win32, TODO for OS X
- Use this instead of ad hoc code in wxDateTime::ParseFormat()
- Remove HAVE_STRPTIME, we don't need nor use strptime() any more


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59914 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-29 17:15:43 +00:00
Vadim Zeitlin
f33427816c minor cleanup of Unix GetInfo(): assert if invalid parameters are passed; don't use explict wxString ctors
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59912 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-29 15:13:40 +00:00
Vadim Zeitlin
4b6a582bef replace more __WXDEBUG__ occurrences with wxDEBUG_LEVEL
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59725 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-22 12:53:48 +00:00
Vadim Zeitlin
c0c133e13b add wx-prefixed and semicolon-requiring versions of DECLARE_NO_{COPY,ASSIGN}_CLASS macros
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58757 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-02-08 11:45:59 +00:00
Vadim Zeitlin
664e13143e renamed wx/ptr_shrd.h to wx/sharedptr.h; split wx/ptr_scpd.h in wx/scopedptr.h and wx/scopedarray.h; extracted common parts into new wx/checkeddelete.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58634 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-02-03 12:01:46 +00:00
Vadim Zeitlin
d3b9f782ef don't use annoying and unneeded in C++ casts of NULL to "T *" in all other files neither
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58227 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-19 13:55:27 +00:00
Vadim Zeitlin
23fb33aa4e don't use wxString::FromASCII() with possibly non-ASCII strings (fixes asserts when testing Japanese locale in the internat sample)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58128 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-16 13:24:25 +00:00
Francesco Montorsi
f00204d341 use wxStrnlen() and add NULL-checks in wxMsgCatalogFile::FillHash for safer handling of corrupted MO files (closes #3151)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58106 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-14 19:26:14 +00:00
Vadim Zeitlin
e5cf63c9a8 don't assert if the locale couldn't be set in AddCatalog(), we should still be able to use translations in this case
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58100 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-14 16:34:17 +00:00
Vadim Zeitlin
4cb21a7b74 fix handling of locale names without county info (closes #10321)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58012 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-11 01:04:43 +00:00
Francesco Montorsi
ca642c8a7b no change; just fix indentation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57997 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-10 23:56:36 +00:00
Vadim Zeitlin
03d7d36ba9 correct Serbian locale name: should be sr_RS, not sr_SR (fixes #10295)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57501 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-22 19:50:17 +00:00
Vadim Zeitlin
a343fe63e8 move the check for msgids matching the current language in front of everything else in AddCatalog(): why bother loading catalogs uselessly?
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56766 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-11-14 19:10:10 +00:00
Vadim Zeitlin
6f0114437c assert in AddCatalog() if Init() hadn't been called and also check that we have a valid language spec in wxMsgCatalogFile::Load() to ensure we don't form invalid paths there; call Init() before AddCatalog() in the sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56765 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-11-14 19:06:59 +00:00
Vadim Zeitlin
f6ba36e464 consistently use ExtractLang() everywhere instead of Left/Mid wxString methods; added ExtractCountry()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56764 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-11-14 18:58:12 +00:00
Vadim Zeitlin
5c33522fca replace wx_{const,static,reinterpret}_cast with their standard C++ equivalents
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56644 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-11-02 02:39:52 +00:00
Vadim Zeitlin
4e10de45a6 rename ca@valencian description to "Valencian (Southern Catalan)" at translators request
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56511 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-10-25 15:48:52 +00:00
Vadim Zeitlin
778ce4329a set buffer length after reading the file contents into it successfully (part of #9980)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55727 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-09-19 08:18:30 +00:00
Stefan Csomor
c933e267be fixing file paths after renaming
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54126 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-06-11 19:22:25 +00:00
Vadim Zeitlin
7bf2b0881a added language info for Northern Sami (patch 1964036)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@53628 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-05-17 22:49:30 +00:00
Julian Smart
2eb37f730d Fixed bug for chars with ASCII value > 127, explicitly casting to an unsigned char (Sebastian Gottschalk)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52491 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-03-14 14:16:39 +00:00
Stefan Csomor
73b51ea436 cleaning up common OSX code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52376 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-03-07 16:54:12 +00:00
Václav Slavík
e5722ef11d there's no such thing as LANG_VALENCIAN
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52265 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-03-02 23:19:03 +00:00
Vadim Zeitlin
fb090fa18c fix harmless unused variable warning under CE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@51964 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-02-21 16:14:10 +00:00