Recent Posts

Pages: [1] 2 3 4 5 6 ... 10
1
Fixed in  r13189
Thank you!
2
Thanks for reporting.
Please post bugs in the source forge ticket system, so it wont get lost...
3
Quote
Broken link on my end
What does this mean?

i copy the relevant part here
Code
Paste full build log here. (It is found in the 'Build log' tab). Please make always a 'rebuild' (Menu: Build->Rebuild) or a 'clean' and 'build' before you copy the full build log. 

Quote
Here's a build log

Set variable: PATH=C:\Program Files (x86)\CodeBlocks\MinGW\bin;C:\Program Files (x86)\CodeBlocks\MinGW;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\MinGW\bin;C:\Program Files\dotnet;C:\Program Files\Git\cmd;C:\Users\User\AppData\Local\Microsoft\WindowsApps;C:\Users\User\AppData\Roaming\npm;C:\Program Files (x86)\FAHClient;A:\Apps\SocketeQ\windowsandroid_root\system\bin;A:\Apps\SocketeQ\windowsandroid_root\system\lib;C:\Users\User\AppData\Local\atom\bin;C:\Users\User\.dotnet\tools'
this is not the build log but your path...

also if you post the log, please use code tags (the # symbol in the forum editor)
4
Whichever is the value of the global i18N settings prefix is always _( because of a mistake in wxscodinglang.cpp.

Line : const bool DoTranslation = WithTranslation && (cfg->ReadBool("/useI18N"), true);

Should be : const bool DoTranslation = WithTranslation && cfg->ReadBool("/useI18N", true);

Now everything goes well.
5
GetTranslatedString() works with any narrow string, it does not work with wide strings, but in case of error it simply returns the input value and not empty string.

On windows, two reasons come into my mind, but both apply to narrow strings, so not only the _() macro would be affected. Either the compiler uses a wrong encoding to read the source file and interprets the strings as garbage or the execution charset of the application cannot represent the characters. wxWidgets always assumes narrow strings use the execution charset and converts them to its internal unicode representation, if that fails, it produces an empty string.
6
Quote
Is there a way to disable internationalization for all dialog, panels and frame ?
As said before, disable global I18n support in wxSmith settings or disable local I18n support in the affected wxSmith window.

Quote
Why strings with international characters are not displayed when the prefix is _( ?
I do not know, probably wxWidgets' GetTranslatedString() does not accept non-ASCII strings.
7
Thanks for the explanation. C::B 20.03 behaviour was different.

Is there a way to disable internationalization for all dialog, panels and frame ?

Why strings with international characters are not displayed when the prefix is _( ?
8
How to change the color of the brackets in Coderblocks?


9
Strings with international characters ARE alphabetic (wxIsalpha() returns true for them).
If you comment out that code no string from wxSmith will be translatable.

If this bothers you then disable global I18n support in wxSmith settings or disable local I18n support in the affected wxSmith window.

10
In nightly build 13186
In wxSmith/wxscodinglang.cpp
In wxString WxString(wxsCodingLang Lang, const wxString& Source, bool WithTranslation)

strings with international characters are not considered alphabetic. So, string prefix is always _( whichever is the prefix chosen in wxSmith settings for non i18N strings.

To fix comment out :

                if (DoTranslation)
                {
                    // Check if translation is really needed. For now, just check if it contains alphabetic chars
                    if (std::any_of(Source.begin(), Source.end(), [] (wxUniChar c) {return wxIsalpha(c);}))
                    {
                        Prefix = "_(";
                        Postfix = ")";
                    }
                }
Pages: [1] 2 3 4 5 6 ... 10