- made the translations work when the app is frozen with CX_freeze
- some formatting changes for the application strings
This commit is contained in:
parent
dd2f06c598
commit
3daed4cbfb
|
@ -191,12 +191,11 @@ class App(QtCore.QObject):
|
|||
App.log.debug("Win32!")
|
||||
else:
|
||||
App.log.debug("Win64!")
|
||||
self.data_path = shell.SHGetFolderPath(0, shellcon.CSIDL_APPDATA, None, 0) + \
|
||||
'\FlatCAM'
|
||||
|
||||
self.data_path = shell.SHGetFolderPath(0, shellcon.CSIDL_APPDATA, None, 0) + '\FlatCAM'
|
||||
self.os = 'windows'
|
||||
else: # Linux/Unix/MacOS
|
||||
self.data_path = os.path.expanduser('~') + \
|
||||
'/.FlatCAM'
|
||||
self.data_path = os.path.expanduser('~') + '/.FlatCAM'
|
||||
self.os = 'unix'
|
||||
|
||||
###############################
|
||||
|
@ -2716,27 +2715,32 @@ class App(QtCore.QObject):
|
|||
layout2.addWidget(logo, stretch=0)
|
||||
|
||||
title = QtWidgets.QLabel(
|
||||
"<font size=8><B>FlatCAM</B></font><BR>"
|
||||
"Version %s %s (%s) - %s <BR>"
|
||||
"<BR>"
|
||||
"2D Computer-Aided Printed Circuit Board<BR>"
|
||||
"Manufacturing.<BR>"
|
||||
"<BR>"
|
||||
"(c) 2014-2019 <B>Juan Pablo Caram</B><BR>"
|
||||
"<BR>"
|
||||
"<B> Main Contributors:</B><BR>"
|
||||
"Denis Hayrullin<BR>"
|
||||
"Kamil Sopko<BR>"
|
||||
"Marius Stanciu<BR>"
|
||||
"Matthieu Berthomé<BR>"
|
||||
"and many others found "
|
||||
"<a href = \"https://bitbucket.org/jpcgt/flatcam/pull-requests/?state=MERGED\">here.</a><BR>"
|
||||
"<BR>"
|
||||
"Development is done "
|
||||
"<a href = \"https://bitbucket.org/jpcgt/flatcam/src/Beta/\">here.</a><BR>"
|
||||
"DOWNLOAD area "
|
||||
"<a href = \"https://bitbucket.org/jpcgt/flatcam/downloads/\">here.</a><BR>"
|
||||
"" % (version, ('BETA' if beta else ''), version_date, platform.architecture()[0])
|
||||
_(
|
||||
"<font size=8><B>FlatCAM</B></font><BR>"
|
||||
"Version {version} {beta} ({date}) - {arch} <BR>"
|
||||
"<BR>"
|
||||
"2D Computer-Aided Printed Circuit Board<BR>"
|
||||
"Manufacturing.<BR>"
|
||||
"<BR>"
|
||||
"(c) 2014-2019 <B>Juan Pablo Caram</B><BR>"
|
||||
"<BR>"
|
||||
"<B> Main Contributors:</B><BR>"
|
||||
"Denis Hayrullin<BR>"
|
||||
"Kamil Sopko<BR>"
|
||||
"Marius Stanciu<BR>"
|
||||
"Matthieu Berthomé<BR>"
|
||||
"and many others found "
|
||||
"<a href = \"https://bitbucket.org/jpcgt/flatcam/pull-requests/?state=MERGED\">here.</a><BR>"
|
||||
"<BR>"
|
||||
"Development is done "
|
||||
"<a href = \"https://bitbucket.org/jpcgt/flatcam/src/Beta/\">here.</a><BR>"
|
||||
"DOWNLOAD area "
|
||||
"<a href = \"https://bitbucket.org/jpcgt/flatcam/downloads/\">here.</a><BR>"
|
||||
""
|
||||
).format(version=version,
|
||||
beta=('BETA' if beta else ''),
|
||||
date=version_date,
|
||||
arch=platform.architecture()[0])
|
||||
)
|
||||
title.setOpenExternalLinks(True)
|
||||
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
|
||||
import os
|
||||
import sys
|
||||
from pathlib import Path
|
||||
|
||||
from PyQt5 import QtWidgets, QtGui
|
||||
from PyQt5.QtCore import QSettings
|
||||
|
@ -33,9 +34,18 @@ languages_path_search = ''
|
|||
|
||||
|
||||
def load_languages():
|
||||
available_translations = []
|
||||
languages_path_search = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'locale')
|
||||
|
||||
available_translations = next(os.walk(languages_path_search))[1]
|
||||
try:
|
||||
available_translations = next(os.walk(languages_path_search))[1]
|
||||
except StopIteration:
|
||||
if not available_translations:
|
||||
languages_path_search = os.path.join(Path(__file__).parents[1], 'locale')
|
||||
try:
|
||||
available_translations = next(os.walk(languages_path_search))[1]
|
||||
except StopIteration:
|
||||
pass
|
||||
|
||||
for lang in available_translations:
|
||||
try:
|
||||
|
@ -50,6 +60,10 @@ def languages_dir():
|
|||
return os.path.join(os.path.dirname(os.path.abspath(__file__)), 'locale')
|
||||
|
||||
|
||||
def languages_dir_cx_freeze():
|
||||
return os.path.join(Path(__file__).parents[1], 'locale')
|
||||
|
||||
|
||||
def on_language_apply_click(app, restart=False):
|
||||
"""
|
||||
Using instructions from here:
|
||||
|
@ -88,6 +102,7 @@ def on_language_apply_click(app, restart=False):
|
|||
|
||||
restart_program(app=app)
|
||||
|
||||
|
||||
def apply_language(domain, lang=None):
|
||||
lang_code = ''
|
||||
|
||||
|
@ -112,7 +127,14 @@ def apply_language(domain, lang=None):
|
|||
current_lang = gettext.translation(str(domain), localedir=languages_dir(), languages=[lang_code])
|
||||
current_lang.install()
|
||||
except Exception as e:
|
||||
log.debug("FlatCAMTranslation.apply_language() --> %s" % str(e))
|
||||
log.debug("FlatCAMTranslation.apply_language() --> %s. Perhaps is Cx_freeze-ed?" % str(e))
|
||||
try:
|
||||
current_lang = gettext.translation(str(domain),
|
||||
localedir=languages_dir_cx_freeze(),
|
||||
languages=[lang_code])
|
||||
current_lang.install()
|
||||
except Exception as e:
|
||||
log.debug("FlatCAMTranslation.apply_language() --> %s" % str(e))
|
||||
|
||||
return name
|
||||
|
||||
|
|
|
@ -16,7 +16,8 @@ CAD program, and create G-Code for Isolation routing.
|
|||
- changed some of the app strings formatting to work better with Poedit translation software
|
||||
- fixed bug in Drillcncjob TclCommand
|
||||
- finished translation in Romanian
|
||||
|
||||
- made the translations work when the app is frozen with CX_freeze
|
||||
- some formatting changes for the application strings
|
||||
|
||||
16.03.2019
|
||||
|
||||
|
|
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
@ -52,8 +52,9 @@ if platform.architecture()[0] == '64bit':
|
|||
include_files.append((os.path.join(site_dir, "google/protobuf"), "google/protobuf"))
|
||||
include_files.append((os.path.join(site_dir, "ortools"), "ortools"))
|
||||
|
||||
include_files.append(("share", "lib/share"))
|
||||
include_files.append(("locale", "lib/locale"))
|
||||
include_files.append(("postprocessors", "lib/postprocessors"))
|
||||
include_files.append(("share", "lib/share"))
|
||||
|
||||
include_files.append(("README.md", "README.md"))
|
||||
include_files.append(("LICENSE", "LICENSE"))
|
||||
|
|
Loading…
Reference in New Issue