Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improved the multi-language support, this includes: #157

Merged
merged 4 commits into from
Mar 4, 2017
Merged

Improved the multi-language support, this includes: #157

merged 4 commits into from
Mar 4, 2017

Conversation

FireEmerald
Copy link
Contributor

  • Added the possibility to specify which language is used. The specified language is saved in the configuration.
  • If a new/empty or older configuration is present without a specified language, the language is automatically determined based on the system language. If the system language is supported by SoundSwitch this language is used. If not, English is used.
  • The language is loaded once at startup. If it's changed later inside the settings form a restart of the application is required.
  • Added German as third supported language.

Code relevant changes:

  • New directory for all localization files /Localization.
  • Moved all control localizations from the *.Designer.cs files to it's own methods outside of the *.Designer.cs files.
  • Naming for all localizations is lowerCamelCase.
  • While updating the localizations i also changed some English texts. As a result these strings are untranslated now in French.
  • Tweaked some labels to support a different length - that's important if a string is in another language longer then in English.

Important:

  • If ANY text inside the forms (designer) is changer or the other way around any English texts inside the *.resx files - they needed to be synchronized!

Other by-the-way changes:

  • Minor code-style changes in various files which doesn't affect the functionality.
  • Synchronized all file headers and updated copyright notices.

ToDo's after this PR is merged:

  • Create wiki article how language changes should be done.
  • Translate missing french strings (@Belphemur).

Fixes #156.

- Added the possibility to specify which language is used. The specified language is saved in the configuration.
- If a new/empty or older configuration is present without a specified language, the language is automatically determinated based on the system language. If the system language is supported by SoundSwitch this language is used. If not, English is used.
- The language is loaded once at startup. If it's changed later inside the settings form a restart of the application is required.
- Added German as third supported language.

Code relevant changes:
- New directory for all localization files /Localization.
- Moved all control localizations from the *.Designer.cs files to it's own methods outside of the *.Designer.cs files.
- Naming for all localizations is lowerCamelCase.
- While updating the localizations i also changed some English texts. As a result these strings are untranslated now in French.
- Tweaked some labels to support a different length - that's important if a string is in another language longer then in English.

Important:
- If ANY text inside the forms (designer) is changer or the other way around any English texts inside the *.resx files - they needed to be synchronized!

Other by-the-way changes:
- Minor code-style changes in various files which doesn't affect the functionality.
- Synchronized all file headers and updated copyright notices.

ToDo:
- Update Readme.md and include Zeta Resource Editor project file for further translations as well as a new - for example - wiki article how language changes should be done.
- Translate missing french strings.
- Added Customized Sound Notification note.
- Added Multi-Language Support section.
- Added a preview image.
- Minor changes.

Included Zeta Resource Editor project file for further translations.
Included ReSharper project settings - if someone else uses it.

ToDo:
- Create wiki article how language changes should be done.
- Translate missing french strings.
@Belphemur
Copy link
Owner

I'll check it thoroughly this weekend.

…equires a restart.

- Added the possibility to restart the application right after changing the language.
- Added a small script which removes various informations (like absolute file paths) from the Zeta Resource Editor project file.

Run the script after opening/closing the *.zreproj project file.
@FireEmerald
Copy link
Contributor Author

You may already noticed that i planed to write a short article how new languages are implemented, because no one know's after this commit that we used Zeta.

So i included a link inside the new README.md file which point's to a non-existing wiki page. I already created it inside my fork to show you what i was thinking about: https://github.com/FireEmerald/SoundSwitch/wiki/Add-or-modify-another-language

@Belphemur Belphemur merged commit 0bc54a4 into Belphemur:dev Mar 4, 2017
@Belphemur
Copy link
Owner

I enabled the wiki on the repository.

I'm merging it, If my memory is right the Wiki is editable by everybody.

@Belphemur
Copy link
Owner

@all-contributors please add @FireEmerald for code, translation, Documentation

@allcontributors
Copy link
Contributor

@Belphemur

I've put up a pull request to add @FireEmerald! 🎉

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Localization improvements
2 participants