From 3daed4cbfb8e1e853b2b2522765edf20841b20a7 Mon Sep 17 00:00:00 2001 From: Marius Stanciu Date: Mon, 18 Mar 2019 03:30:47 +0200 Subject: [PATCH] - made the translations work when the app is frozen with CX_freeze - some formatting changes for the application strings --- FlatCAMApp.py | 54 ++-- FlatCAMTranslation.py | 26 +- README.md | 3 +- locale/en/LC_MESSAGES/strings.mo | Bin 244974 -> 245165 bytes locale/en/LC_MESSAGES/strings.po | 476 ++++++++++++++++--------------- locale/ro/LC_MESSAGES/strings.mo | Bin 260411 -> 261788 bytes locale/ro/LC_MESSAGES/strings.po | 410 +++++++++++++------------- locale_template/strings.pot | 423 ++++++++++++++------------- make_win.py | 3 +- 9 files changed, 734 insertions(+), 661 deletions(-) diff --git a/FlatCAMApp.py b/FlatCAMApp.py index fb9c7a2c..3f16c61c 100644 --- a/FlatCAMApp.py +++ b/FlatCAMApp.py @@ -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( - "FlatCAM
" - "Version %s %s (%s) - %s
" - "
" - "2D Computer-Aided Printed Circuit Board
" - "Manufacturing.
" - "
" - "(c) 2014-2019 Juan Pablo Caram
" - "
" - " Main Contributors:
" - "Denis Hayrullin
" - "Kamil Sopko
" - "Marius Stanciu
" - "Matthieu Berthomé
" - "and many others found " - "here.
" - "
" - "Development is done " - "here.
" - "DOWNLOAD area " - "here.
" - "" % (version, ('BETA' if beta else ''), version_date, platform.architecture()[0]) + _( + "FlatCAM
" + "Version {version} {beta} ({date}) - {arch}
" + "
" + "2D Computer-Aided Printed Circuit Board
" + "Manufacturing.
" + "
" + "(c) 2014-2019 Juan Pablo Caram
" + "
" + " Main Contributors:
" + "Denis Hayrullin
" + "Kamil Sopko
" + "Marius Stanciu
" + "Matthieu Berthomé
" + "and many others found " + "here.
" + "
" + "Development is done " + "here.
" + "DOWNLOAD area " + "here.
" + "" + ).format(version=version, + beta=('BETA' if beta else ''), + date=version_date, + arch=platform.architecture()[0]) ) title.setOpenExternalLinks(True) diff --git a/FlatCAMTranslation.py b/FlatCAMTranslation.py index 7d11c531..931a0616 100644 --- a/FlatCAMTranslation.py +++ b/FlatCAMTranslation.py @@ -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 diff --git a/README.md b/README.md index 93d0d72b..1ee6abe1 100644 --- a/README.md +++ b/README.md @@ -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 diff --git a/locale/en/LC_MESSAGES/strings.mo b/locale/en/LC_MESSAGES/strings.mo index 717a1835d48d859c051538456e2da9d005e224ea..09320103e5371bfcef9cfae5034c6f1d52071500 100644 GIT binary patch delta 35587 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

W_Ps)L_USF{w>!FtSw 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 GhxtF5j{l7S diff --git a/locale/en/LC_MESSAGES/strings.po b/locale/en/LC_MESSAGES/strings.po index e55dc66d..b413de71 100644 --- a/locale/en/LC_MESSAGES/strings.po +++ b/locale/en/LC_MESSAGES/strings.po @@ -5,9 +5,11 @@ msgid "" msgstr "" "Project-Id-Version: \n" -"POT-Creation-Date: 2019-03-17 23:12+0200\n" -"PO-Revision-Date: 2019-03-17 23:13+0200\n" +"POT-Creation-Date: 2019-03-18 03:22+0200\n" +"PO-Revision-Date: 2019-03-18 03:22+0200\n" +"Last-Translator: \n" "Language-Team: \n" +"Language: en\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -15,104 +17,103 @@ msgstr "" "X-Generator: Poedit 2.2.1\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Poedit-Basepath: ../../..\n" -"Last-Translator: \n" -"Language: en\n" "X-Poedit-SearchPath-0: .\n" +"X-Poedit-SearchPathExcluded-0: build\n" -#: FlatCAMApp.py:844 +#: FlatCAMApp.py:843 msgid "[ERROR] Could not find the Language files. The App strings are missing." msgstr "" "[ERROR] Could not find the Language files. The App strings are missing." -#: FlatCAMApp.py:1672 ObjectCollection.py:80 flatcamTools/ToolImage.py:213 +#: FlatCAMApp.py:1671 ObjectCollection.py:80 flatcamTools/ToolImage.py:213 msgid "Open cancelled." msgstr "Open cancelled." -#: FlatCAMApp.py:1686 +#: FlatCAMApp.py:1685 msgid "Open Config file failed." msgstr "Open Config file failed." -#: FlatCAMApp.py:1871 +#: FlatCAMApp.py:1870 msgid "" "[WARNING_NOTCL] Editing a MultiGeo Geometry is not possible for the moment." msgstr "" "[WARNING_NOTCL] Editing a MultiGeo Geometry is not possible for the moment." -#: FlatCAMApp.py:1892 +#: FlatCAMApp.py:1891 msgid "[WARNING_NOTCL]Select a Geometry or Excellon Object to edit." msgstr "[WARNING_NOTCL]Select a Geometry or Excellon Object to edit." -#: FlatCAMApp.py:1903 +#: FlatCAMApp.py:1902 msgid "[WARNING_NOTCL]Editor is activated ..." msgstr "[WARNING_NOTCL]Editor is activated ..." -#: FlatCAMApp.py:1942 +#: FlatCAMApp.py:1941 msgid "[WARNING] Object empty after edit." msgstr "[WARNING] Object empty after edit." -#: FlatCAMApp.py:1951 +#: FlatCAMApp.py:1950 msgid "[WARNING_NOTCL]Select a Geometry or Excellon Object to update." msgstr "[WARNING_NOTCL]Select a Geometry or Excellon Object to update." -#: FlatCAMApp.py:1964 +#: FlatCAMApp.py:1963 #, python-format msgid "[selected] %s is updated, returning to App..." msgstr "[selected] %s is updated, returning to App..." -#: FlatCAMApp.py:2287 +#: FlatCAMApp.py:2286 msgid "[ERROR] Could not load defaults file." msgstr "[ERROR] Could not load defaults file." -#: FlatCAMApp.py:2299 +#: FlatCAMApp.py:2298 msgid "[ERROR] Failed to parse defaults file." msgstr "[ERROR] Failed to parse defaults file." -#: FlatCAMApp.py:2320 FlatCAMApp.py:2323 +#: FlatCAMApp.py:2319 FlatCAMApp.py:2322 msgid "Import FlatCAM Preferences" msgstr "Import FlatCAM Preferences" -#: FlatCAMApp.py:2328 +#: FlatCAMApp.py:2327 msgid "[WARNING_NOTCL]FlatCAM preferences import cancelled." msgstr "[WARNING_NOTCL]FlatCAM preferences import cancelled." -#: FlatCAMApp.py:2336 FlatCAMApp.py:2810 +#: FlatCAMApp.py:2335 FlatCAMApp.py:2814 msgid "[ERROR_NOTCL] Could not load defaults file." msgstr "[ERROR_NOTCL] Could not load defaults file." -#: FlatCAMApp.py:2344 FlatCAMApp.py:2819 +#: FlatCAMApp.py:2343 FlatCAMApp.py:2823 msgid "[ERROR_NOTCL] Failed to parse defaults file." msgstr "[ERROR_NOTCL] Failed to parse defaults file." -#: FlatCAMApp.py:2347 +#: FlatCAMApp.py:2346 #, python-format msgid "[success]Imported Defaults from %s" msgstr "[success]Imported Defaults from %s" -#: FlatCAMApp.py:2357 FlatCAMApp.py:2361 +#: FlatCAMApp.py:2356 FlatCAMApp.py:2360 msgid "Export FlatCAM Preferences" msgstr "Export FlatCAM Preferences" -#: FlatCAMApp.py:2367 +#: FlatCAMApp.py:2366 msgid "[WARNING_NOTCL]FlatCAM preferences export cancelled." msgstr "[WARNING_NOTCL]FlatCAM preferences export cancelled." -#: FlatCAMApp.py:2383 +#: FlatCAMApp.py:2382 msgid "[ERROR_NOTCL]Could not load defaults file." msgstr "[ERROR_NOTCL]Could not load defaults file." -#: FlatCAMApp.py:2402 FlatCAMApp.py:2833 +#: FlatCAMApp.py:2401 FlatCAMApp.py:2837 msgid "[ERROR_NOTCL] Failed to write defaults to file." msgstr "[ERROR_NOTCL] Failed to write defaults to file." -#: FlatCAMApp.py:2454 +#: FlatCAMApp.py:2453 msgid "[ERROR_NOTCL]Failed to open recent files file for writing." msgstr "[ERROR_NOTCL]Failed to open recent files file for writing." -#: FlatCAMApp.py:2539 camlib.py:4229 +#: FlatCAMApp.py:2538 camlib.py:4229 msgid "[ERROR_NOTCL] An internal error has ocurred. See shell.\n" msgstr "[ERROR_NOTCL] An internal error has ocurred. See shell.\n" -#: FlatCAMApp.py:2540 +#: FlatCAMApp.py:2539 #, python-brace-format msgid "" "Object ({kind}) failed because: {error} \n" @@ -121,11 +122,11 @@ msgstr "" "Object ({kind}) failed because: {error} \n" "\n" -#: FlatCAMApp.py:2560 +#: FlatCAMApp.py:2559 msgid "Converting units to " msgstr "Converting units to " -#: FlatCAMApp.py:2618 FlatCAMApp.py:2621 FlatCAMApp.py:2624 FlatCAMApp.py:2627 +#: FlatCAMApp.py:2617 FlatCAMApp.py:2620 FlatCAMApp.py:2623 FlatCAMApp.py:2626 #, python-brace-format msgid "" "[selected]{kind} created/selected: {name}{name}" -#: FlatCAMApp.py:2865 +#: FlatCAMApp.py:2719 +#, python-brace-format +msgid "" +"FlatCAM
Version {version} {beta} ({date}) - " +"{arch}

2D Computer-Aided Printed Circuit Board
Manufacturing." +"

(c) 2014-2019 Juan Pablo Caram

Main Contributors:
Denis Hayrullin
Kamil Sopko
Marius Stanciu
Matthieu " +"Berthomé
and many others found here.

Development is done " +"here.
DOWNLOAD area
here.
" +msgstr "" +"FlatCAM
Version {version} {beta} ({date}) - " +"{arch}

2D Computer-Aided Printed Circuit Board
Manufacturing." +"

(c) 2014-2019 Juan Pablo Caram

Main Contributors:
Denis Hayrullin
Kamil Sopko
Marius Stanciu
Matthieu " +"Berthomé
and many others found here.

Development is done " +"here.
DOWNLOAD area
here.
" + +#: FlatCAMApp.py:2869 msgid "[success]Defaults saved." msgstr "[success]Defaults saved." -#: FlatCAMApp.py:2886 +#: FlatCAMApp.py:2890 msgid "[ERROR_NOTCL] Could not load factory defaults file." msgstr "[ERROR_NOTCL] Could not load factory defaults file." -#: FlatCAMApp.py:2895 +#: FlatCAMApp.py:2899 msgid "[ERROR_NOTCL] Failed to parse factory defaults file." msgstr "[ERROR_NOTCL] Failed to parse factory defaults file." -#: FlatCAMApp.py:2909 +#: FlatCAMApp.py:2913 msgid "[ERROR_NOTCL] Failed to write factory defaults to file." msgstr "[ERROR_NOTCL] Failed to write factory defaults to file." -#: FlatCAMApp.py:2913 +#: FlatCAMApp.py:2917 msgid "Factory defaults saved." msgstr "Factory defaults saved." -#: FlatCAMApp.py:2918 +#: FlatCAMApp.py:2922 msgid "" "There are files/objects modified in FlatCAM. \n" "Do you want to Save the project?" @@ -162,11 +186,11 @@ msgstr "" "There are files/objects modified in FlatCAM. \n" "Do you want to Save the project?" -#: FlatCAMApp.py:2921 FlatCAMApp.py:5190 +#: FlatCAMApp.py:2925 FlatCAMApp.py:5194 msgid "Save changes" msgstr "Save changes" -#: FlatCAMApp.py:2981 +#: FlatCAMApp.py:2985 msgid "" "[ERROR] Failed join. The Geometry objects are of different types.\n" "At least one is MultiGeo type and the other is SingleGeo type. A possibility " @@ -182,62 +206,62 @@ msgstr "" "be lost and the result may not be what was expected. \n" "Check the generated GCODE." -#: FlatCAMApp.py:3022 +#: FlatCAMApp.py:3026 msgid "[ERROR_NOTCL]Failed. Excellon joining works only on Excellon objects." msgstr "[ERROR_NOTCL]Failed. Excellon joining works only on Excellon objects." -#: FlatCAMApp.py:3044 +#: FlatCAMApp.py:3048 msgid "[ERROR_NOTCL]Failed. Gerber joining works only on Gerber objects." msgstr "[ERROR_NOTCL]Failed. Gerber joining works only on Gerber objects." -#: FlatCAMApp.py:3059 FlatCAMApp.py:3084 +#: FlatCAMApp.py:3063 FlatCAMApp.py:3088 msgid "[ERROR_NOTCL]Failed. Select a Geometry Object and try again." msgstr "[ERROR_NOTCL]Failed. Select a Geometry Object and try again." -#: FlatCAMApp.py:3063 FlatCAMApp.py:3088 +#: FlatCAMApp.py:3067 FlatCAMApp.py:3092 #, python-format msgid "[ERROR_NOTCL]Expected a FlatCAMGeometry, got %s" msgstr "[ERROR_NOTCL]Expected a FlatCAMGeometry, got %s" -#: FlatCAMApp.py:3076 +#: FlatCAMApp.py:3080 msgid "[success] A Geometry object was converted to MultiGeo type." msgstr "[success] A Geometry object was converted to MultiGeo type." -#: FlatCAMApp.py:3102 +#: FlatCAMApp.py:3106 msgid "[success] A Geometry object was converted to SingleGeo type." msgstr "[success] A Geometry object was converted to SingleGeo type." -#: FlatCAMApp.py:3286 +#: FlatCAMApp.py:3290 #, python-format msgid "[success]Converted units to %s" msgstr "[success]Converted units to %s" -#: FlatCAMApp.py:3297 +#: FlatCAMApp.py:3301 msgid "[WARNING_NOTCL]Units conversion cancelled." msgstr "[WARNING_NOTCL]Units conversion cancelled." -#: FlatCAMApp.py:3862 +#: FlatCAMApp.py:3866 msgid "Open file" msgstr "Open file" -#: FlatCAMApp.py:3913 FlatCAMApp.py:3918 +#: FlatCAMApp.py:3917 FlatCAMApp.py:3922 msgid "Export G-Code ..." msgstr "Export G-Code ..." -#: FlatCAMApp.py:3921 +#: FlatCAMApp.py:3925 msgid "[WARNING_NOTCL]Export Code cancelled." msgstr "[WARNING_NOTCL]Export Code cancelled." -#: FlatCAMApp.py:3931 +#: FlatCAMApp.py:3935 msgid "[WARNING] No such file or directory" msgstr "[WARNING] No such file or directory" -#: FlatCAMApp.py:3938 +#: FlatCAMApp.py:3942 #, python-format msgid "Saved to: %s" msgstr "Saved to: %s" -#: FlatCAMApp.py:4001 FlatCAMApp.py:4033 FlatCAMApp.py:4044 FlatCAMApp.py:4055 +#: FlatCAMApp.py:4005 FlatCAMApp.py:4037 FlatCAMApp.py:4048 FlatCAMApp.py:4059 #: flatcamTools/ToolNonCopperClear.py:487 flatcamTools/ToolSolderPaste.py:764 msgid "" "[WARNING_NOTCL] Please enter a tool diameter with non-zero value, in Float " @@ -246,12 +270,12 @@ msgstr "" "[WARNING_NOTCL] Please enter a tool diameter with non-zero value, in Float " "format." -#: FlatCAMApp.py:4006 FlatCAMApp.py:4038 FlatCAMApp.py:4049 FlatCAMApp.py:4060 +#: FlatCAMApp.py:4010 FlatCAMApp.py:4042 FlatCAMApp.py:4053 FlatCAMApp.py:4064 #: flatcamGUI/FlatCAMGUI.py:2484 msgid "[WARNING_NOTCL] Adding Tool cancelled ..." msgstr "[WARNING_NOTCL] Adding Tool cancelled ..." -#: FlatCAMApp.py:4009 +#: FlatCAMApp.py:4013 msgid "" "Adding Tool works only when Advanced is checked.\n" "Go to Preferences -> General - Show Advanced Options." @@ -259,106 +283,106 @@ msgstr "" "Adding Tool works only when Advanced is checked.\n" "Go to Preferences -> General - Show Advanced Options." -#: FlatCAMApp.py:4114 +#: FlatCAMApp.py:4118 msgid "Object(s) deleted ..." msgstr "Object(s) deleted ..." -#: FlatCAMApp.py:4118 +#: FlatCAMApp.py:4122 msgid "Failed. No object(s) selected..." msgstr "Failed. No object(s) selected..." -#: FlatCAMApp.py:4120 +#: FlatCAMApp.py:4124 msgid "Save the work in Editor and try again ..." msgstr "Save the work in Editor and try again ..." -#: FlatCAMApp.py:4133 +#: FlatCAMApp.py:4137 msgid "Click to set the origin ..." msgstr "Click to set the origin ..." -#: FlatCAMApp.py:4145 +#: FlatCAMApp.py:4149 msgid "Jump to ..." msgstr "Jump to ..." -#: FlatCAMApp.py:4146 +#: FlatCAMApp.py:4150 msgid "Enter the coordinates in format X,Y:" msgstr "Enter the coordinates in format X,Y:" -#: FlatCAMApp.py:4153 +#: FlatCAMApp.py:4157 msgid "Wrong coordinates. Enter coordinates in format: X,Y" msgstr "Wrong coordinates. Enter coordinates in format: X,Y" -#: FlatCAMApp.py:4168 +#: FlatCAMApp.py:4172 msgid "Done." msgstr "Done." -#: FlatCAMApp.py:4300 +#: FlatCAMApp.py:4304 msgid "[success] Origin set ..." msgstr "[success] Origin set ..." -#: FlatCAMApp.py:4318 +#: FlatCAMApp.py:4322 msgid "Preferences" msgstr "Preferences" -#: FlatCAMApp.py:4338 +#: FlatCAMApp.py:4342 msgid "[WARNING_NOTCL] No object selected to Flip on Y axis." msgstr "[WARNING_NOTCL] No object selected to Flip on Y axis." -#: FlatCAMApp.py:4363 +#: FlatCAMApp.py:4367 msgid "[success] Flip on Y axis done." msgstr "[success] Flip on Y axis done." -#: FlatCAMApp.py:4365 FlatCAMApp.py:4405 FlatCAMEditor.py:1340 +#: FlatCAMApp.py:4369 FlatCAMApp.py:4409 FlatCAMEditor.py:1340 #: flatcamTools/ToolTransform.py:750 #, python-format msgid "[ERROR_NOTCL] Due of %s, Flip action was not executed." msgstr "[ERROR_NOTCL] Due of %s, Flip action was not executed." -#: FlatCAMApp.py:4378 +#: FlatCAMApp.py:4382 msgid "[WARNING_NOTCL] No object selected to Flip on X axis." msgstr "[WARNING_NOTCL] No object selected to Flip on X axis." -#: FlatCAMApp.py:4403 +#: FlatCAMApp.py:4407 msgid "[success] Flip on X axis done." msgstr "[success] Flip on X axis done." -#: FlatCAMApp.py:4418 +#: FlatCAMApp.py:4422 msgid "[WARNING_NOTCL] No object selected to Rotate." msgstr "[WARNING_NOTCL] No object selected to Rotate." -#: FlatCAMApp.py:4421 FlatCAMApp.py:4466 FlatCAMApp.py:4497 +#: FlatCAMApp.py:4425 FlatCAMApp.py:4470 FlatCAMApp.py:4501 msgid "Transform" msgstr "Transform" -#: FlatCAMApp.py:4421 FlatCAMApp.py:4466 FlatCAMApp.py:4497 +#: FlatCAMApp.py:4425 FlatCAMApp.py:4470 FlatCAMApp.py:4501 msgid "Enter the Angle value:" msgstr "Enter the Angle value:" -#: FlatCAMApp.py:4451 +#: FlatCAMApp.py:4455 msgid "[success] Rotation done." msgstr "[success] Rotation done." -#: FlatCAMApp.py:4453 FlatCAMEditor.py:1283 flatcamTools/ToolTransform.py:678 +#: FlatCAMApp.py:4457 FlatCAMEditor.py:1283 flatcamTools/ToolTransform.py:678 #, python-format msgid "[ERROR_NOTCL] Due of %s, rotation movement was not executed." msgstr "[ERROR_NOTCL] Due of %s, rotation movement was not executed." -#: FlatCAMApp.py:4464 +#: FlatCAMApp.py:4468 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on X axis." msgstr "[WARNING_NOTCL] No object selected to Skew/Shear on X axis." -#: FlatCAMApp.py:4485 +#: FlatCAMApp.py:4489 msgid "[success] Skew on X axis done." msgstr "[success] Skew on X axis done." -#: FlatCAMApp.py:4495 +#: FlatCAMApp.py:4499 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on Y axis." msgstr "[WARNING_NOTCL] No object selected to Skew/Shear on Y axis." -#: FlatCAMApp.py:4516 +#: FlatCAMApp.py:4520 msgid "[success] Skew on Y axis done." msgstr "[success] Skew on Y axis done." -#: FlatCAMApp.py:4612 FlatCAMApp.py:4639 +#: FlatCAMApp.py:4616 FlatCAMApp.py:4643 msgid "" "[WARNING_NOTCL] Please enter a grid value with non-zero value, in Float " "format." @@ -366,48 +390,48 @@ msgstr "" "[WARNING_NOTCL] Please enter a grid value with non-zero value, in Float " "format." -#: FlatCAMApp.py:4618 +#: FlatCAMApp.py:4622 msgid "[success] New Grid added ..." msgstr "[success] New Grid added ..." -#: FlatCAMApp.py:4621 +#: FlatCAMApp.py:4625 msgid "[WARNING_NOTCL] Grid already exists ..." msgstr "[WARNING_NOTCL] Grid already exists ..." -#: FlatCAMApp.py:4624 +#: FlatCAMApp.py:4628 msgid "[WARNING_NOTCL] Adding New Grid cancelled ..." msgstr "[WARNING_NOTCL] Adding New Grid cancelled ..." -#: FlatCAMApp.py:4646 +#: FlatCAMApp.py:4650 msgid "[ERROR_NOTCL] Grid Value does not exist ..." msgstr "[ERROR_NOTCL] Grid Value does not exist ..." -#: FlatCAMApp.py:4649 +#: FlatCAMApp.py:4653 msgid "[success] Grid Value deleted ..." msgstr "[success] Grid Value deleted ..." -#: FlatCAMApp.py:4652 +#: FlatCAMApp.py:4656 msgid "[WARNING_NOTCL] Delete Grid value cancelled ..." msgstr "[WARNING_NOTCL] Delete Grid value cancelled ..." -#: FlatCAMApp.py:4691 +#: FlatCAMApp.py:4695 msgid "[WARNING_NOTCL]No object selected to copy it's name" msgstr "[WARNING_NOTCL]No object selected to copy it's name" -#: FlatCAMApp.py:4695 +#: FlatCAMApp.py:4699 msgid "Name copied on clipboard ..." msgstr "Name copied on clipboard ..." -#: FlatCAMApp.py:4990 FlatCAMApp.py:4993 FlatCAMApp.py:4996 FlatCAMApp.py:4999 -#: FlatCAMApp.py:5013 FlatCAMApp.py:5016 FlatCAMApp.py:5019 FlatCAMApp.py:5022 -#: FlatCAMApp.py:5061 FlatCAMApp.py:5064 FlatCAMApp.py:5067 FlatCAMApp.py:5070 +#: FlatCAMApp.py:4994 FlatCAMApp.py:4997 FlatCAMApp.py:5000 FlatCAMApp.py:5003 +#: FlatCAMApp.py:5017 FlatCAMApp.py:5020 FlatCAMApp.py:5023 FlatCAMApp.py:5026 +#: FlatCAMApp.py:5065 FlatCAMApp.py:5068 FlatCAMApp.py:5071 FlatCAMApp.py:5074 #: ObjectCollection.py:696 ObjectCollection.py:699 ObjectCollection.py:702 #: ObjectCollection.py:705 #, python-brace-format msgid "[selected]{name} selected" msgstr "[selected]{name} selected" -#: FlatCAMApp.py:5187 +#: FlatCAMApp.py:5191 msgid "" "There are files/objects opened in FlatCAM.\n" "Creating a New project will delete them.\n" @@ -417,17 +441,17 @@ msgstr "" "Creating a New project will delete them.\n" "Do you want to Save the project?" -#: FlatCAMApp.py:5205 +#: FlatCAMApp.py:5209 msgid "[success] New Project created..." msgstr "[success] New Project created..." -#: FlatCAMApp.py:5286 +#: FlatCAMApp.py:5290 msgid "" "[WARNING_NOTCL] Select an Gerber or Excellon file to view it's source file." msgstr "" "[WARNING_NOTCL] Select an Gerber or Excellon file to view it's source file." -#: FlatCAMApp.py:5293 +#: FlatCAMApp.py:5297 msgid "" "[WARNING_NOTCL] There is no selected object for which to see it's source " "file code." @@ -435,111 +459,111 @@ msgstr "" "[WARNING_NOTCL] There is no selected object for which to see it's source " "file code." -#: FlatCAMApp.py:5297 FlatCAMApp.py:6728 FlatCAMObj.py:5398 +#: FlatCAMApp.py:5301 FlatCAMApp.py:6732 FlatCAMObj.py:5398 msgid "Code Editor" msgstr "Code Editor" -#: FlatCAMApp.py:5310 +#: FlatCAMApp.py:5314 #, python-format msgid "[ERROR]App.on_view_source() -->%s" msgstr "[ERROR]App.on_view_source() -->%s" -#: FlatCAMApp.py:5348 FlatCAMApp.py:5351 flatcamGUI/FlatCAMGUI.py:541 +#: FlatCAMApp.py:5352 FlatCAMApp.py:5355 flatcamGUI/FlatCAMGUI.py:541 #: flatcamGUI/FlatCAMGUI.py:1590 msgid "Open Gerber" msgstr "Open Gerber" -#: FlatCAMApp.py:5356 +#: FlatCAMApp.py:5360 msgid "[WARNING_NOTCL] Open Gerber cancelled." msgstr "[WARNING_NOTCL] Open Gerber cancelled." -#: FlatCAMApp.py:5377 FlatCAMApp.py:5380 flatcamGUI/FlatCAMGUI.py:542 +#: FlatCAMApp.py:5381 FlatCAMApp.py:5384 flatcamGUI/FlatCAMGUI.py:542 #: flatcamGUI/FlatCAMGUI.py:1591 msgid "Open Excellon" msgstr "Open Excellon" -#: FlatCAMApp.py:5385 +#: FlatCAMApp.py:5389 msgid "[WARNING_NOTCL]Open Excellon cancelled." msgstr "[WARNING_NOTCL]Open Excellon cancelled." -#: FlatCAMApp.py:5407 FlatCAMApp.py:5410 +#: FlatCAMApp.py:5411 FlatCAMApp.py:5414 msgid "Open G-Code" msgstr "Open G-Code" -#: FlatCAMApp.py:5415 +#: FlatCAMApp.py:5419 msgid "[WARNING_NOTCL]Open G-Code cancelled." msgstr "[WARNING_NOTCL]Open G-Code cancelled." -#: FlatCAMApp.py:5433 FlatCAMApp.py:5436 +#: FlatCAMApp.py:5437 FlatCAMApp.py:5440 msgid "Open Project" msgstr "Open Project" -#: FlatCAMApp.py:5444 +#: FlatCAMApp.py:5448 msgid "[WARNING_NOTCL]Open Project cancelled." msgstr "[WARNING_NOTCL]Open Project cancelled." -#: FlatCAMApp.py:5463 FlatCAMApp.py:5466 +#: FlatCAMApp.py:5467 FlatCAMApp.py:5470 msgid "Open Configuration File" msgstr "Open Configuration File" -#: FlatCAMApp.py:5470 +#: FlatCAMApp.py:5474 msgid "[WARNING_NOTCL]Open Config cancelled." msgstr "[WARNING_NOTCL]Open Config cancelled." -#: FlatCAMApp.py:5485 FlatCAMApp.py:5682 FlatCAMApp.py:7588 FlatCAMApp.py:7608 -#: FlatCAMApp.py:7629 FlatCAMApp.py:7651 +#: FlatCAMApp.py:5489 FlatCAMApp.py:5686 FlatCAMApp.py:7592 FlatCAMApp.py:7612 +#: FlatCAMApp.py:7633 FlatCAMApp.py:7655 msgid "[WARNING_NOTCL] No object selected." msgstr "[WARNING_NOTCL] No object selected." -#: FlatCAMApp.py:5486 FlatCAMApp.py:5683 +#: FlatCAMApp.py:5490 FlatCAMApp.py:5687 msgid "Please Select a Geometry object to export" msgstr "Please Select a Geometry object to export" -#: FlatCAMApp.py:5497 +#: FlatCAMApp.py:5501 msgid "[ERROR_NOTCL] Only Geometry, Gerber and CNCJob objects can be used." msgstr "[ERROR_NOTCL] Only Geometry, Gerber and CNCJob objects can be used." -#: FlatCAMApp.py:5510 FlatCAMApp.py:5514 +#: FlatCAMApp.py:5514 FlatCAMApp.py:5518 msgid "Export SVG" msgstr "Export SVG" -#: FlatCAMApp.py:5519 +#: FlatCAMApp.py:5523 msgid "[WARNING_NOTCL]Export SVG cancelled." msgstr "[WARNING_NOTCL]Export SVG cancelled." -#: FlatCAMApp.py:5533 +#: FlatCAMApp.py:5537 msgid "[[WARNING_NOTCL]] Data must be a 3D array with last dimension 3 or 4" msgstr "[[WARNING_NOTCL]] Data must be a 3D array with last dimension 3 or 4" -#: FlatCAMApp.py:5539 FlatCAMApp.py:5543 +#: FlatCAMApp.py:5543 FlatCAMApp.py:5547 msgid "Export PNG Image" msgstr "Export PNG Image" -#: FlatCAMApp.py:5548 +#: FlatCAMApp.py:5552 msgid "Export PNG cancelled." msgstr "Export PNG cancelled." -#: FlatCAMApp.py:5565 +#: FlatCAMApp.py:5569 msgid "" "[WARNING_NOTCL] No object selected. Please select an Gerber object to export." msgstr "" "[WARNING_NOTCL] No object selected. Please select an Gerber object to export." -#: FlatCAMApp.py:5570 +#: FlatCAMApp.py:5574 msgid "" "[ERROR_NOTCL] Failed. Only Gerber objects can be saved as Gerber files..." msgstr "" "[ERROR_NOTCL] Failed. Only Gerber objects can be saved as Gerber files..." -#: FlatCAMApp.py:5582 +#: FlatCAMApp.py:5586 msgid "Save Gerber source file" msgstr "Save Gerber source file" -#: FlatCAMApp.py:5587 +#: FlatCAMApp.py:5591 msgid "[WARNING_NOTCL] Save Gerber source file cancelled." msgstr "[WARNING_NOTCL] Save Gerber source file cancelled." -#: FlatCAMApp.py:5604 +#: FlatCAMApp.py:5608 msgid "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." @@ -547,21 +571,21 @@ msgstr "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." -#: FlatCAMApp.py:5609 FlatCAMApp.py:5648 +#: FlatCAMApp.py:5613 FlatCAMApp.py:5652 msgid "" "[ERROR_NOTCL] Failed. Only Excellon objects can be saved as Excellon files..." msgstr "" "[ERROR_NOTCL] Failed. Only Excellon objects can be saved as Excellon files..." -#: FlatCAMApp.py:5617 FlatCAMApp.py:5621 +#: FlatCAMApp.py:5621 FlatCAMApp.py:5625 msgid "Save Excellon source file" msgstr "Save Excellon source file" -#: FlatCAMApp.py:5626 +#: FlatCAMApp.py:5630 msgid "[WARNING_NOTCL] Saving Excellon source file cancelled." msgstr "[WARNING_NOTCL] Saving Excellon source file cancelled." -#: FlatCAMApp.py:5643 +#: FlatCAMApp.py:5647 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." @@ -569,108 +593,108 @@ msgstr "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." -#: FlatCAMApp.py:5656 FlatCAMApp.py:5660 +#: FlatCAMApp.py:5660 FlatCAMApp.py:5664 msgid "Export Excellon" msgstr "Export Excellon" -#: FlatCAMApp.py:5665 +#: FlatCAMApp.py:5669 msgid "[WARNING_NOTCL]Export Excellon cancelled." msgstr "[WARNING_NOTCL]Export Excellon cancelled." -#: FlatCAMApp.py:5693 +#: FlatCAMApp.py:5697 msgid "[ERROR_NOTCL] Only Geometry objects can be used." msgstr "[ERROR_NOTCL] Only Geometry objects can be used." -#: FlatCAMApp.py:5706 FlatCAMApp.py:5710 +#: FlatCAMApp.py:5710 FlatCAMApp.py:5714 msgid "Export DXF" msgstr "Export DXF" -#: FlatCAMApp.py:5715 +#: FlatCAMApp.py:5719 msgid "[WARNING_NOTCL] Export DXF cancelled." msgstr "[WARNING_NOTCL] Export DXF cancelled." -#: FlatCAMApp.py:5733 FlatCAMApp.py:5736 +#: FlatCAMApp.py:5737 FlatCAMApp.py:5740 msgid "Import SVG" msgstr "Import SVG" -#: FlatCAMApp.py:5744 +#: FlatCAMApp.py:5748 msgid "[WARNING_NOTCL] Open SVG cancelled." msgstr "[WARNING_NOTCL] Open SVG cancelled." -#: FlatCAMApp.py:5763 FlatCAMApp.py:5766 +#: FlatCAMApp.py:5767 FlatCAMApp.py:5770 msgid "Import DXF" msgstr "Import DXF" -#: FlatCAMApp.py:5774 +#: FlatCAMApp.py:5778 msgid "[WARNING_NOTCL]Open DXF cancelled." msgstr "[WARNING_NOTCL]Open DXF cancelled." -#: FlatCAMApp.py:5792 FlatCAMApp.py:5795 +#: FlatCAMApp.py:5796 FlatCAMApp.py:5799 msgid "Open TCL script" msgstr "Open TCL script" -#: FlatCAMApp.py:5803 +#: FlatCAMApp.py:5807 msgid "[WARNING_NOTCL]Open TCL script cancelled." msgstr "[WARNING_NOTCL]Open TCL script cancelled." -#: FlatCAMApp.py:5851 FlatCAMApp.py:5855 +#: FlatCAMApp.py:5855 FlatCAMApp.py:5859 msgid "Save Project As ..." msgstr "Save Project As ..." -#: FlatCAMApp.py:5852 +#: FlatCAMApp.py:5856 #, python-brace-format msgid "{l_save}/Project_{date}" msgstr "{l_save}/Project_{date}" -#: FlatCAMApp.py:5860 +#: FlatCAMApp.py:5864 msgid "[WARNING_NOTCL] Save Project cancelled." msgstr "[WARNING_NOTCL] Save Project cancelled." -#: FlatCAMApp.py:5905 +#: FlatCAMApp.py:5909 msgid "Exporting SVG" msgstr "Exporting SVG" -#: FlatCAMApp.py:5938 FlatCAMApp.py:6043 FlatCAMApp.py:6157 +#: FlatCAMApp.py:5942 FlatCAMApp.py:6047 FlatCAMApp.py:6161 #, python-format msgid "[success] SVG file exported to %s" msgstr "[success] SVG file exported to %s" -#: FlatCAMApp.py:5969 FlatCAMApp.py:6089 +#: FlatCAMApp.py:5973 FlatCAMApp.py:6093 #, python-format msgid "[WARNING_NOTCL]No object Box. Using instead %s" msgstr "[WARNING_NOTCL]No object Box. Using instead %s" -#: FlatCAMApp.py:6046 FlatCAMApp.py:6160 +#: FlatCAMApp.py:6050 FlatCAMApp.py:6164 msgid "Generating Film ... Please wait." msgstr "Generating Film ... Please wait." -#: FlatCAMApp.py:6307 +#: FlatCAMApp.py:6311 #, python-format msgid "[success] Excellon file exported to %s" msgstr "[success] Excellon file exported to %s" -#: FlatCAMApp.py:6314 +#: FlatCAMApp.py:6318 msgid "Exporting Excellon" msgstr "Exporting Excellon" -#: FlatCAMApp.py:6319 FlatCAMApp.py:6326 +#: FlatCAMApp.py:6323 FlatCAMApp.py:6330 msgid "[ERROR_NOTCL] Could not export Excellon file." msgstr "[ERROR_NOTCL] Could not export Excellon file." -#: FlatCAMApp.py:6365 +#: FlatCAMApp.py:6369 #, python-format msgid "[success] DXF file exported to %s" msgstr "[success] DXF file exported to %s" -#: FlatCAMApp.py:6371 +#: FlatCAMApp.py:6375 msgid "Exporting DXF" msgstr "Exporting DXF" -#: FlatCAMApp.py:6376 FlatCAMApp.py:6383 +#: FlatCAMApp.py:6380 FlatCAMApp.py:6387 msgid "[[WARNING_NOTCL]] Could not export DXF file." msgstr "[[WARNING_NOTCL]] Could not export DXF file." -#: FlatCAMApp.py:6403 FlatCAMApp.py:6445 FlatCAMApp.py:6486 +#: FlatCAMApp.py:6407 FlatCAMApp.py:6449 FlatCAMApp.py:6490 msgid "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" @@ -678,93 +702,93 @@ msgstr "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" -#: FlatCAMApp.py:6413 +#: FlatCAMApp.py:6417 msgid "Importing SVG" msgstr "Importing SVG" -#: FlatCAMApp.py:6424 FlatCAMApp.py:6466 FlatCAMApp.py:6506 FlatCAMApp.py:6582 -#: FlatCAMApp.py:6649 FlatCAMApp.py:6714 +#: FlatCAMApp.py:6428 FlatCAMApp.py:6470 FlatCAMApp.py:6510 FlatCAMApp.py:6586 +#: FlatCAMApp.py:6653 FlatCAMApp.py:6718 #, python-format msgid "[success] Opened: %s" msgstr "[success] Opened: %s" -#: FlatCAMApp.py:6455 +#: FlatCAMApp.py:6459 msgid "Importing DXF" msgstr "Importing DXF" -#: FlatCAMApp.py:6494 +#: FlatCAMApp.py:6498 msgid "Importing Image" msgstr "Importing Image" -#: FlatCAMApp.py:6535 FlatCAMApp.py:6537 +#: FlatCAMApp.py:6539 FlatCAMApp.py:6541 #, python-format msgid "[ERROR_NOTCL] Failed to open file: %s" msgstr "[ERROR_NOTCL] Failed to open file: %s" -#: FlatCAMApp.py:6540 +#: FlatCAMApp.py:6544 #, python-brace-format msgid "[ERROR_NOTCL] Failed to parse file: {name}. {error}" msgstr "[ERROR_NOTCL] Failed to parse file: {name}. {error}" -#: FlatCAMApp.py:6546 FlatCAMEditor.py:5802 FlatCAMObj.py:4104 +#: FlatCAMApp.py:6550 FlatCAMEditor.py:5802 FlatCAMObj.py:4104 msgid "[ERROR] An internal error has ocurred. See shell.\n" msgstr "[ERROR] An internal error has ocurred. See shell.\n" -#: FlatCAMApp.py:6555 +#: FlatCAMApp.py:6559 msgid "" "[ERROR_NOTCL] Object is not Gerber file or empty. Aborting object creation." msgstr "" "[ERROR_NOTCL] Object is not Gerber file or empty. Aborting object creation." -#: FlatCAMApp.py:6563 +#: FlatCAMApp.py:6567 msgid "Opening Gerber" msgstr "Opening Gerber" -#: FlatCAMApp.py:6573 +#: FlatCAMApp.py:6577 msgid "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." msgstr "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." -#: FlatCAMApp.py:6608 +#: FlatCAMApp.py:6612 msgid "[ERROR_NOTCL] This is not Excellon file." msgstr "[ERROR_NOTCL] This is not Excellon file." -#: FlatCAMApp.py:6611 +#: FlatCAMApp.py:6615 #, python-format msgid "[ERROR_NOTCL] Cannot open file: %s" msgstr "[ERROR_NOTCL] Cannot open file: %s" -#: FlatCAMApp.py:6616 +#: FlatCAMApp.py:6620 msgid "[ERROR_NOTCL] An internal error has occurred. See shell.\n" msgstr "[ERROR_NOTCL] An internal error has occurred. See shell.\n" -#: FlatCAMApp.py:6632 +#: FlatCAMApp.py:6636 #, python-format msgid "[ERROR_NOTCL] No geometry found in file: %s" msgstr "[ERROR_NOTCL] No geometry found in file: %s" -#: FlatCAMApp.py:6635 +#: FlatCAMApp.py:6639 msgid "Opening Excellon." msgstr "Opening Excellon." -#: FlatCAMApp.py:6642 +#: FlatCAMApp.py:6646 msgid "[ERROR_NOTCL] Open Excellon file failed. Probable not an Excellon file." msgstr "" "[ERROR_NOTCL] Open Excellon file failed. Probable not an Excellon file." -#: FlatCAMApp.py:6681 +#: FlatCAMApp.py:6685 #, python-format msgid "[ERROR_NOTCL] Failed to open %s" msgstr "[ERROR_NOTCL] Failed to open %s" -#: FlatCAMApp.py:6691 +#: FlatCAMApp.py:6695 msgid "[ERROR_NOTCL] This is not GCODE" msgstr "[ERROR_NOTCL] This is not GCODE" -#: FlatCAMApp.py:6697 +#: FlatCAMApp.py:6701 msgid "Opening G-Code." msgstr "Opening G-Code." -#: FlatCAMApp.py:6705 +#: FlatCAMApp.py:6709 msgid "" "[ERROR_NOTCL] Failed to create CNCJob Object. Probable not a GCode file.\n" " Attempting to create a FlatCAM CNCJob Object from G-Code file failed during " @@ -774,31 +798,31 @@ msgstr "" " Attempting to create a FlatCAM CNCJob Object from G-Code file failed during " "processing" -#: FlatCAMApp.py:6745 +#: FlatCAMApp.py:6749 #, python-format msgid "[ERROR_NOTCL] Failed to open config file: %s" msgstr "[ERROR_NOTCL] Failed to open config file: %s" -#: FlatCAMApp.py:6770 FlatCAMApp.py:6787 +#: FlatCAMApp.py:6774 FlatCAMApp.py:6791 #, python-format msgid "[ERROR_NOTCL] Failed to open project file: %s" msgstr "[ERROR_NOTCL] Failed to open project file: %s" -#: FlatCAMApp.py:6777 +#: FlatCAMApp.py:6781 #, python-format msgid "[ERROR_NOTCL] Failed to parse project file: %s" msgstr "[ERROR_NOTCL] Failed to parse project file: %s" -#: FlatCAMApp.py:6813 +#: FlatCAMApp.py:6817 #, python-format msgid "[success] Project loaded from: %s" msgstr "[success] Project loaded from: %s" -#: FlatCAMApp.py:6943 +#: FlatCAMApp.py:6947 msgid "Available commands:\n" msgstr "Available commands:\n" -#: FlatCAMApp.py:6945 +#: FlatCAMApp.py:6949 msgid "" "\n" "\n" @@ -810,23 +834,23 @@ msgstr "" "Type help for usage.\n" " Example: help open_gerber" -#: FlatCAMApp.py:7093 +#: FlatCAMApp.py:7097 msgid "Shows list of commands." msgstr "Shows list of commands." -#: FlatCAMApp.py:7146 +#: FlatCAMApp.py:7150 msgid "[ERROR_NOTCL] Failed to load recent item list." msgstr "[ERROR_NOTCL] Failed to load recent item list." -#: FlatCAMApp.py:7153 +#: FlatCAMApp.py:7157 msgid "[ERROR_NOTCL] Failed to parse recent item list." msgstr "[ERROR_NOTCL] Failed to parse recent item list." -#: FlatCAMApp.py:7214 flatcamGUI/FlatCAMGUI.py:856 +#: FlatCAMApp.py:7218 flatcamGUI/FlatCAMGUI.py:856 msgid "Shortcut Key List" msgstr "Shortcut Key List" -#: FlatCAMApp.py:7221 +#: FlatCAMApp.py:7225 msgid "" "\n" "

Selected Tab - Choose an Item from " @@ -922,23 +946,23 @@ msgstr "" "\n" " " -#: FlatCAMApp.py:7325 +#: FlatCAMApp.py:7329 msgid "[WARNING_NOTCL] Failed checking for latest version. Could not connect." msgstr "[WARNING_NOTCL] Failed checking for latest version. Could not connect." -#: FlatCAMApp.py:7332 +#: FlatCAMApp.py:7336 msgid "[ERROR_NOTCL] Could not parse information about latest version." msgstr "[ERROR_NOTCL] Could not parse information about latest version." -#: FlatCAMApp.py:7342 +#: FlatCAMApp.py:7346 msgid "[success] FlatCAM is up to date!" msgstr "[success] FlatCAM is up to date!" -#: FlatCAMApp.py:7347 +#: FlatCAMApp.py:7351 msgid "Newer Version Available" msgstr "Newer Version Available" -#: FlatCAMApp.py:7348 +#: FlatCAMApp.py:7352 msgid "" "There is a newer version of FlatCAM available for download:\n" "\n" @@ -946,43 +970,43 @@ msgstr "" "There is a newer version of FlatCAM available for download:\n" "\n" -#: FlatCAMApp.py:7350 +#: FlatCAMApp.py:7354 msgid "info" msgstr "info" -#: FlatCAMApp.py:7369 +#: FlatCAMApp.py:7373 msgid "[success]All plots disabled." msgstr "[success]All plots disabled." -#: FlatCAMApp.py:7375 +#: FlatCAMApp.py:7379 msgid "[success]All non selected plots disabled." msgstr "[success]All non selected plots disabled." -#: FlatCAMApp.py:7381 +#: FlatCAMApp.py:7385 msgid "[success]All plots enabled." msgstr "[success]All plots enabled." -#: FlatCAMApp.py:7491 +#: FlatCAMApp.py:7495 msgid "Saving FlatCAM Project" msgstr "Saving FlatCAM Project" -#: FlatCAMApp.py:7512 FlatCAMApp.py:7543 +#: FlatCAMApp.py:7516 FlatCAMApp.py:7547 #, python-format msgid "[success] Project saved to: %s" msgstr "[success] Project saved to: %s" -#: FlatCAMApp.py:7530 +#: FlatCAMApp.py:7534 #, python-format msgid "[ERROR_NOTCL] Failed to verify project file: %s. Retry to save it." msgstr "[ERROR_NOTCL] Failed to verify project file: %s. Retry to save it." -#: FlatCAMApp.py:7537 +#: FlatCAMApp.py:7541 #, python-format msgid "[ERROR_NOTCL] Failed to parse saved project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Failed to parse saved project file: %s. Retry to save it." -#: FlatCAMApp.py:7545 +#: FlatCAMApp.py:7549 #, python-format msgid "[ERROR_NOTCL] Failed to save project file: %s. Retry to save it." msgstr "[ERROR_NOTCL] Failed to save project file: %s. Retry to save it." @@ -10206,39 +10230,39 @@ msgstr "CNCJob objects can't be offseted." msgid "[success]Offset on the %s axis done ..." msgstr "[success]Offset on the %s axis done ..." -msgid "" -"How much (fraction) of the tool width to overlap each tool pass.\n" -"Example:\n" -"A value here of 0.25 means 25\\% from the tool diameter found above.\n" -"\n" -"Adjust the value starting with lower values\n" -"and increasing it if areas that should be painted are still \n" -"not painted.\n" -"Lower values = faster processing, faster execution on PCB.\n" -"Higher values = slow processing and slow execution on CNC\n" -"due of too many paths." -msgstr "" -"How much (fraction) of the tool width to overlap each tool pass.\n" -"Example:\n" -"A value here of 0.25 means 25\\% from the tool diameter found above.\n" -"\n" -"Adjust the value starting with lower values\n" -"and increasing it if areas that should be painted are still \n" -"not painted.\n" -"Lower values = faster processing, faster execution on PCB.\n" -"Higher values = slow processing and slow execution on CNC\n" -"due of too many paths." +#~ msgid "" +#~ "How much (fraction) of the tool width to overlap each tool pass.\n" +#~ "Example:\n" +#~ "A value here of 0.25 means 25\\% from the tool diameter found above.\n" +#~ "\n" +#~ "Adjust the value starting with lower values\n" +#~ "and increasing it if areas that should be painted are still \n" +#~ "not painted.\n" +#~ "Lower values = faster processing, faster execution on PCB.\n" +#~ "Higher values = slow processing and slow execution on CNC\n" +#~ "due of too many paths." +#~ msgstr "" +#~ "How much (fraction) of the tool width to overlap each tool pass.\n" +#~ "Example:\n" +#~ "A value here of 0.25 means 25\\% from the tool diameter found above.\n" +#~ "\n" +#~ "Adjust the value starting with lower values\n" +#~ "and increasing it if areas that should be painted are still \n" +#~ "not painted.\n" +#~ "Lower values = faster processing, faster execution on PCB.\n" +#~ "Higher values = slow processing and slow execution on CNC\n" +#~ "due of too many paths." -#| msgid "z_toolchange = Z coord for Toolchange" -msgid "z_cut = Z coord for Toolchange" -msgstr "z_cut = Z coord for Toolchange" +#~| msgid "z_toolchange = Z coord for Toolchange" +#~ msgid "z_cut = Z coord for Toolchange" +#~ msgstr "z_cut = Z coord for Toolchange" -#| msgid "z_toolchange = Z coord for Toolchange" -msgid "z_move = Z coord for Toolchange" -msgstr "z_move = Z coord for Toolchange" +#~| msgid "z_toolchange = Z coord for Toolchange" +#~ msgid "z_move = Z coord for Toolchange" +#~ msgstr "z_move = Z coord for Toolchange" -msgid "%s/Project_%s" -msgstr "%s/Project_%s" +#~ msgid "%s/Project_%s" +#~ msgstr "%s/Project_%s" -msgid "tool_tab" -msgstr "tool_tab" +#~ msgid "tool_tab" +#~ msgstr "tool_tab" diff --git a/locale/ro/LC_MESSAGES/strings.mo b/locale/ro/LC_MESSAGES/strings.mo index 85708fc35d386a5d56deacbf6fcdba86572f3eb3..ffdd4c341eef47a9e1403472739b9ee6e7a1bc8c 100644 GIT binary patch delta 36216 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%0ASP|AlJsxlR9sLBs>et$Nd-^5?)l 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 L^N;a0?EL=#d+^|_ diff --git a/locale/ro/LC_MESSAGES/strings.po b/locale/ro/LC_MESSAGES/strings.po index 0e556fb7..b0353aed 100644 --- a/locale/ro/LC_MESSAGES/strings.po +++ b/locale/ro/LC_MESSAGES/strings.po @@ -5,8 +5,8 @@ msgid "" msgstr "" "Project-Id-Version: \n" -"POT-Creation-Date: 2019-03-17 23:06+0200\n" -"PO-Revision-Date: 2019-03-18 01:21+0200\n" +"POT-Creation-Date: 2019-03-18 03:23+0200\n" +"PO-Revision-Date: 2019-03-18 03:28+0200\n" "Last-Translator: \n" "Language-Team: \n" "Language: ro\n" @@ -19,112 +19,115 @@ msgstr "" "%100<=19) ? 1 : 2);\n" "X-Poedit-Basepath: ../../..\n" "X-Poedit-SearchPath-0: .\n" +"X-Poedit-SearchPathExcluded-0: build\n" +"X-Poedit-SearchPathExcluded-1: tests\n" +"X-Poedit-SearchPathExcluded-2: doc\n" -#: FlatCAMApp.py:844 +#: FlatCAMApp.py:843 msgid "[ERROR] Could not find the Language files. The App strings are missing." msgstr "" "[ERROR]Nu am gasit fişierele cu traduceri. Mesajele aplicatiei lipsesc." -#: FlatCAMApp.py:1672 ObjectCollection.py:80 flatcamTools/ToolImage.py:213 +#: FlatCAMApp.py:1671 ObjectCollection.py:80 flatcamTools/ToolImage.py:213 msgid "Open cancelled." msgstr "Deschidere anulata." -#: FlatCAMApp.py:1686 +#: FlatCAMApp.py:1685 msgid "Open Config file failed." msgstr "Deshciderea fişierului de configurare a esuat." -#: FlatCAMApp.py:1871 +#: FlatCAMApp.py:1870 msgid "" "[WARNING_NOTCL] Editing a MultiGeo Geometry is not possible for the moment." msgstr "" "[WARNING_NOTCL] Editarea unei Geometrii tip multigeo nu este posibila " "momentan." -#: FlatCAMApp.py:1892 +#: FlatCAMApp.py:1891 msgid "[WARNING_NOTCL]Select a Geometry or Excellon Object to edit." msgstr "" "[WARNING_NOTCL] Selectează un obiect tip Geometrie sau Excellon pentru " "editare." -#: FlatCAMApp.py:1903 +#: FlatCAMApp.py:1902 msgid "[WARNING_NOTCL]Editor is activated ..." msgstr "[WARNING_NOTCL] Editorul este activ. .." -#: FlatCAMApp.py:1942 +#: FlatCAMApp.py:1941 msgid "[WARNING] Object empty after edit." msgstr "[WARNING] Obiectul nu are date dupa editare." -#: FlatCAMApp.py:1951 +#: FlatCAMApp.py:1950 msgid "[WARNING_NOTCL]Select a Geometry or Excellon Object to update." msgstr "" "[WARNING_NOTCL] Selectează un obiect tip Geometrie sau Excellon pentru " "salvare." -#: FlatCAMApp.py:1964 +#: FlatCAMApp.py:1963 #, python-format msgid "[selected] %s is updated, returning to App..." msgstr "[selected] %s este actualizat, intoarcere la aplicatie." -#: FlatCAMApp.py:2287 +#: FlatCAMApp.py:2286 msgid "[ERROR] Could not load defaults file." msgstr "[ERROR] Nu am putut incarca fişierul cu valori default." -#: FlatCAMApp.py:2299 +#: FlatCAMApp.py:2298 msgid "[ERROR] Failed to parse defaults file." msgstr "[ERROR] Parsarea fişierului cu valori default a esuat." -#: FlatCAMApp.py:2320 FlatCAMApp.py:2323 +#: FlatCAMApp.py:2319 FlatCAMApp.py:2322 msgid "Import FlatCAM Preferences" msgstr "Importa Preferințele FlatCAM" -#: FlatCAMApp.py:2328 +#: FlatCAMApp.py:2327 msgid "[WARNING_NOTCL]FlatCAM preferences import cancelled." msgstr "[WARNING_NOTCL] Importul preferințelor FlatCAM a esuat." -#: FlatCAMApp.py:2336 FlatCAMApp.py:2810 +#: FlatCAMApp.py:2335 FlatCAMApp.py:2814 msgid "[ERROR_NOTCL] Could not load defaults file." msgstr "" "[ERROR_NOTCL] Nu a fost posibila incarcarea fişierului cu valori default." -#: FlatCAMApp.py:2344 FlatCAMApp.py:2819 +#: FlatCAMApp.py:2343 FlatCAMApp.py:2823 msgid "[ERROR_NOTCL] Failed to parse defaults file." msgstr "[ERROR_NOTCL] Parsarea fişierului cu valori default a esuat." -#: FlatCAMApp.py:2347 +#: FlatCAMApp.py:2346 #, python-format msgid "[success]Imported Defaults from %s" msgstr "[success] Valorile default au fost importate din %s" -#: FlatCAMApp.py:2357 FlatCAMApp.py:2361 +#: FlatCAMApp.py:2356 FlatCAMApp.py:2360 msgid "Export FlatCAM Preferences" msgstr "Exporta Preferințele FlatCAM" -#: FlatCAMApp.py:2367 +#: FlatCAMApp.py:2366 msgid "[WARNING_NOTCL]FlatCAM preferences export cancelled." msgstr "[WARNING_NOTCL] Exportul preferințelor FlatCAM este anulat." -#: FlatCAMApp.py:2383 +#: FlatCAMApp.py:2382 msgid "[ERROR_NOTCL]Could not load defaults file." msgstr "" "[ERROR_NOTCL] Nu a fost posibila incarcarea fişierului cu valori default." -#: FlatCAMApp.py:2402 FlatCAMApp.py:2833 +#: FlatCAMApp.py:2401 FlatCAMApp.py:2837 msgid "[ERROR_NOTCL] Failed to write defaults to file." msgstr "[ERROR_NOTCL] Salvarea valorilor default intr-un fişier a esuat." -#: FlatCAMApp.py:2454 +#: FlatCAMApp.py:2453 msgid "[ERROR_NOTCL]Failed to open recent files file for writing." msgstr "" "[ERROR_NOTCL] Deschiderea fişierului cu >fişiere recente< pentru a fi salvat " "a esuat." -#: FlatCAMApp.py:2539 camlib.py:4229 +#: FlatCAMApp.py:2538 camlib.py:4229 msgid "[ERROR_NOTCL] An internal error has ocurred. See shell.\n" msgstr "" "[ERROR_NOTCL] A aparut o eroare interna. Verifică in TCL Shell pt mai multe " "detalii.\n" -#: FlatCAMApp.py:2540 +#: FlatCAMApp.py:2539 #, python-brace-format msgid "" "Object ({kind}) failed because: {error} \n" @@ -133,11 +136,11 @@ msgstr "" "Obiectul ({kind}) a esuat din cauza: {error} \n" "\n" -#: FlatCAMApp.py:2560 +#: FlatCAMApp.py:2559 msgid "Converting units to " msgstr "Se convertesc unitatile la " -#: FlatCAMApp.py:2618 FlatCAMApp.py:2621 FlatCAMApp.py:2624 FlatCAMApp.py:2627 +#: FlatCAMApp.py:2617 FlatCAMApp.py:2620 FlatCAMApp.py:2623 FlatCAMApp.py:2626 #, python-brace-format msgid "" "[selected]{kind} created/selected: {name}{name}" -#: FlatCAMApp.py:2865 +#: FlatCAMApp.py:2719 +#, python-brace-format +msgid "" +"FlatCAM
Version {version} {beta} ({date}) - " +"{arch}

2D Computer-Aided Printed Circuit Board
Manufacturing." +"

(c) 2014-2019 Juan Pablo Caram

Main Contributors:
Denis Hayrullin
Kamil Sopko
Marius Stanciu
Matthieu " +"Berthomé
and many others found
here.

Development is done " +"here.
DOWNLOAD area
here.
" +msgstr "" +"FlatCAM
Versiunea {version} {beta} ({date}) - " +"{arch}

Productie PCB in 2D asistata de calculator.

(c) " +"2014-2019 Juan Pablo Caram

Contributori principali:
Denis Hayrullin
Kamil Sopko
Marius Stanciu
Matthieu " +"Berthomé
si multi altii care pot fi gasiti aici here.

Dezvoltarea este realizata
aici.
Sectiunea DOWNLOAD este aici.
" + +#: FlatCAMApp.py:2869 msgid "[success]Defaults saved." msgstr "[success] Valorile default au fost salvate." -#: FlatCAMApp.py:2886 +#: FlatCAMApp.py:2890 msgid "[ERROR_NOTCL] Could not load factory defaults file." msgstr "" "[ERROR_NOTCL] Fişierul cu valori default de fabrica nu a putut fi deschis." -#: FlatCAMApp.py:2895 +#: FlatCAMApp.py:2899 msgid "[ERROR_NOTCL] Failed to parse factory defaults file." msgstr "" "[ERROR_NOTCL] Parsarea fişierului cu valori default de fabrica a esuat." -#: FlatCAMApp.py:2909 +#: FlatCAMApp.py:2913 msgid "[ERROR_NOTCL] Failed to write factory defaults to file." msgstr "" "[ERROR_NOTCL]] Salvarea fişierului cu valori default de fabrica intr-un " "fişier a esuat." -#: FlatCAMApp.py:2913 +#: FlatCAMApp.py:2917 msgid "Factory defaults saved." msgstr "Valori default de fabrica au fost salvate." -#: FlatCAMApp.py:2918 +#: FlatCAMApp.py:2922 msgid "" "There are files/objects modified in FlatCAM. \n" "Do you want to Save the project?" @@ -177,11 +203,11 @@ msgstr "" "FlatCAM are fişiere/obiecte care au fost modificate. \n" "Dorești să Salvezi proiectul?" -#: FlatCAMApp.py:2921 FlatCAMApp.py:5190 +#: FlatCAMApp.py:2925 FlatCAMApp.py:5194 msgid "Save changes" msgstr "Salvează modificarile." -#: FlatCAMApp.py:2981 +#: FlatCAMApp.py:2985 msgid "" "[ERROR] Failed join. The Geometry objects are of different types.\n" "At least one is MultiGeo type and the other is SingleGeo type. A possibility " @@ -198,67 +224,67 @@ msgstr "" "informatii și rezultatul ar putea să nu fie cel dorit. \n" "Verifică codul G-Code generat." -#: FlatCAMApp.py:3022 +#: FlatCAMApp.py:3026 msgid "[ERROR_NOTCL]Failed. Excellon joining works only on Excellon objects." msgstr "" "[ERROR_NOTCL] Esuat. Fuzionarea Excellon functionează doar cu obiecte de tip " "Excellon." -#: FlatCAMApp.py:3044 +#: FlatCAMApp.py:3048 msgid "[ERROR_NOTCL]Failed. Gerber joining works only on Gerber objects." msgstr "" "[ERROR_NOTCL] Esuat. Fuzionarea Gerber functionează doar cu obiecte de tip " "Gerber ." -#: FlatCAMApp.py:3059 FlatCAMApp.py:3084 +#: FlatCAMApp.py:3063 FlatCAMApp.py:3088 msgid "[ERROR_NOTCL]Failed. Select a Geometry Object and try again." msgstr "" "[ERROR_NOTCL] Esuat. Selectează un obiect Geometrie și încearcă din nou." -#: FlatCAMApp.py:3063 FlatCAMApp.py:3088 +#: FlatCAMApp.py:3067 FlatCAMApp.py:3092 #, python-format msgid "[ERROR_NOTCL]Expected a FlatCAMGeometry, got %s" msgstr "[ERROR_NOTCL] Se astepta o Geometrie FlatCAM, s-a primit %s" -#: FlatCAMApp.py:3076 +#: FlatCAMApp.py:3080 msgid "[success] A Geometry object was converted to MultiGeo type." msgstr "[success] Un obiect Geometrie a fost convertit la tipul MultiGeo." -#: FlatCAMApp.py:3102 +#: FlatCAMApp.py:3106 msgid "[success] A Geometry object was converted to SingleGeo type." msgstr "[success] Un obiect Geometrie a fost convertit la tipul SingleGeo ." -#: FlatCAMApp.py:3286 +#: FlatCAMApp.py:3290 #, python-format msgid "[success]Converted units to %s" msgstr "[success] Conversie unitati la %s" -#: FlatCAMApp.py:3297 +#: FlatCAMApp.py:3301 msgid "[WARNING_NOTCL]Units conversion cancelled." msgstr "[WARNING_NOTCL] Conversia unitatilor este anulata." -#: FlatCAMApp.py:3862 +#: FlatCAMApp.py:3866 msgid "Open file" msgstr "Deschide fişierul ..." -#: FlatCAMApp.py:3913 FlatCAMApp.py:3918 +#: FlatCAMApp.py:3917 FlatCAMApp.py:3922 msgid "Export G-Code ..." msgstr "Exporta G-Code ..." -#: FlatCAMApp.py:3921 +#: FlatCAMApp.py:3925 msgid "[WARNING_NOTCL]Export Code cancelled." msgstr "[WARNING_NOTCL Exportul GCode este anulat." -#: FlatCAMApp.py:3931 +#: FlatCAMApp.py:3935 msgid "[WARNING] No such file or directory" msgstr "[WARNING] Nu exista un asa fişier sau director" -#: FlatCAMApp.py:3938 +#: FlatCAMApp.py:3942 #, python-format msgid "Saved to: %s" msgstr "Salvat in: %s" -#: FlatCAMApp.py:4001 FlatCAMApp.py:4033 FlatCAMApp.py:4044 FlatCAMApp.py:4055 +#: FlatCAMApp.py:4005 FlatCAMApp.py:4037 FlatCAMApp.py:4048 FlatCAMApp.py:4059 #: flatcamTools/ToolNonCopperClear.py:487 flatcamTools/ToolSolderPaste.py:764 msgid "" "[WARNING_NOTCL] Please enter a tool diameter with non-zero value, in Float " @@ -267,12 +293,12 @@ msgstr "" "[WARNING_NOTCL] Introdu un diametru al uneltei valid: valoare ne-nula in " "format Real." -#: FlatCAMApp.py:4006 FlatCAMApp.py:4038 FlatCAMApp.py:4049 FlatCAMApp.py:4060 +#: FlatCAMApp.py:4010 FlatCAMApp.py:4042 FlatCAMApp.py:4053 FlatCAMApp.py:4064 #: flatcamGUI/FlatCAMGUI.py:2484 msgid "[WARNING_NOTCL] Adding Tool cancelled ..." msgstr "[WARNING_NOTCL] Adaugarea unei unelte anulata ..." -#: FlatCAMApp.py:4009 +#: FlatCAMApp.py:4013 msgid "" "Adding Tool works only when Advanced is checked.\n" "Go to Preferences -> General - Show Advanced Options." @@ -280,157 +306,157 @@ msgstr "" "Adaugarea de unelte noi functionează doar in modul Avansat.\n" "Pentru aceasta mergi in Preferințe -> General - Activează Modul Avansat." -#: FlatCAMApp.py:4114 +#: FlatCAMApp.py:4118 msgid "Object(s) deleted ..." msgstr "Obiect(ele) sters(e)." -#: FlatCAMApp.py:4118 +#: FlatCAMApp.py:4122 msgid "Failed. No object(s) selected..." msgstr "Esuat. Nici-un obiect nu este selectat." -#: FlatCAMApp.py:4120 +#: FlatCAMApp.py:4124 msgid "Save the work in Editor and try again ..." msgstr "Salvează continutul din Editor și încearcă din nou." -#: FlatCAMApp.py:4133 +#: FlatCAMApp.py:4137 msgid "Click to set the origin ..." msgstr "Click pentru a seta originea..." -#: FlatCAMApp.py:4145 +#: FlatCAMApp.py:4149 msgid "Jump to ..." msgstr "Sari la ..." -#: FlatCAMApp.py:4146 +#: FlatCAMApp.py:4150 msgid "Enter the coordinates in format X,Y:" msgstr "Introduceți coordonatele in format X,Y:" -#: FlatCAMApp.py:4153 +#: FlatCAMApp.py:4157 msgid "Wrong coordinates. Enter coordinates in format: X,Y" msgstr "Coordonate gresite. Introduceți coordonatele in format X,Y." -#: FlatCAMApp.py:4168 +#: FlatCAMApp.py:4172 msgid "Done." msgstr "Executat." -#: FlatCAMApp.py:4300 +#: FlatCAMApp.py:4304 msgid "[success] Origin set ..." msgstr "[success] Originea a fost setata ..." -#: FlatCAMApp.py:4318 +#: FlatCAMApp.py:4322 msgid "Preferences" msgstr "Preferințe" -#: FlatCAMApp.py:4338 +#: FlatCAMApp.py:4342 msgid "[WARNING_NOTCL] No object selected to Flip on Y axis." msgstr "" "[WARNING_NOTCL] Nu sete nici-un obiect selectat pentru oglindire pe axa Y." -#: FlatCAMApp.py:4363 +#: FlatCAMApp.py:4367 msgid "[success] Flip on Y axis done." msgstr "[success] Oglindire pe axa Y executata." -#: FlatCAMApp.py:4365 FlatCAMApp.py:4405 FlatCAMEditor.py:1340 +#: FlatCAMApp.py:4369 FlatCAMApp.py:4409 FlatCAMEditor.py:1340 #: flatcamTools/ToolTransform.py:750 #, python-format msgid "[ERROR_NOTCL] Due of %s, Flip action was not executed." msgstr "[ERROR_NOTCL] Datorita %s, oglindirea a esuat." -#: FlatCAMApp.py:4378 +#: FlatCAMApp.py:4382 msgid "[WARNING_NOTCL] No object selected to Flip on X axis." msgstr "" "[WARNING_NOTCL] Nu sete nici-un obiect selectat pentru oglindire pe axa X." -#: FlatCAMApp.py:4403 +#: FlatCAMApp.py:4407 msgid "[success] Flip on X axis done." msgstr "[success] Oglindirea pe axa X executata." -#: FlatCAMApp.py:4418 +#: FlatCAMApp.py:4422 msgid "[WARNING_NOTCL] No object selected to Rotate." msgstr "[WARNING_NOTCL] Nici-un obiect selectat pentru Rotatie." -#: FlatCAMApp.py:4421 FlatCAMApp.py:4466 FlatCAMApp.py:4497 +#: FlatCAMApp.py:4425 FlatCAMApp.py:4470 FlatCAMApp.py:4501 msgid "Transform" msgstr "Transformare" -#: FlatCAMApp.py:4421 FlatCAMApp.py:4466 FlatCAMApp.py:4497 +#: FlatCAMApp.py:4425 FlatCAMApp.py:4470 FlatCAMApp.py:4501 msgid "Enter the Angle value:" msgstr "Introduceți valoaea Unghiului:" -#: FlatCAMApp.py:4451 +#: FlatCAMApp.py:4455 msgid "[success] Rotation done." msgstr "[success] Rotatie executata." -#: FlatCAMApp.py:4453 FlatCAMEditor.py:1283 flatcamTools/ToolTransform.py:678 +#: FlatCAMApp.py:4457 FlatCAMEditor.py:1283 flatcamTools/ToolTransform.py:678 #, python-format msgid "[ERROR_NOTCL] Due of %s, rotation movement was not executed." msgstr "[ERROR_NOTCL] Datorita %s, Rotatia a esuat." -#: FlatCAMApp.py:4464 +#: FlatCAMApp.py:4468 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on X axis." msgstr "[WARNING_NOTCL] Nici-un obiect selectat pentru Deformare pe axa X." -#: FlatCAMApp.py:4485 +#: FlatCAMApp.py:4489 msgid "[success] Skew on X axis done." msgstr "[success] Deformare pe axa X executata." -#: FlatCAMApp.py:4495 +#: FlatCAMApp.py:4499 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on Y axis." msgstr "[WARNING_NOTCL] Nici-un obiect selectat pentru Deformare pe axa Y." -#: FlatCAMApp.py:4516 +#: FlatCAMApp.py:4520 msgid "[success] Skew on Y axis done." msgstr "[success] Deformare pe axa Y executata." -#: FlatCAMApp.py:4612 FlatCAMApp.py:4639 +#: FlatCAMApp.py:4616 FlatCAMApp.py:4643 msgid "" "[WARNING_NOTCL] Please enter a grid value with non-zero value, in Float " "format." msgstr "" "[WARNING_NOTCL] Introduceți o valoare pentru Grila ne-nula și in format Real." -#: FlatCAMApp.py:4618 +#: FlatCAMApp.py:4622 msgid "[success] New Grid added ..." msgstr "[success] O noua valoare pt Grila a fost adaugata..." -#: FlatCAMApp.py:4621 +#: FlatCAMApp.py:4625 msgid "[WARNING_NOTCL] Grid already exists ..." msgstr "[WARNING_NOTCL] Grila exista deja." -#: FlatCAMApp.py:4624 +#: FlatCAMApp.py:4628 msgid "[WARNING_NOTCL] Adding New Grid cancelled ..." msgstr "[WARNING_NOTCL] Adaugarea unei valori de Grila a fost anulata ..." -#: FlatCAMApp.py:4646 +#: FlatCAMApp.py:4650 msgid "[ERROR_NOTCL] Grid Value does not exist ..." msgstr "[ERROR_NOTCL] Valoarea Grilei nu exista ..." -#: FlatCAMApp.py:4649 +#: FlatCAMApp.py:4653 msgid "[success] Grid Value deleted ..." msgstr "[success] Valoarea Grila a fost stearsa." -#: FlatCAMApp.py:4652 +#: FlatCAMApp.py:4656 msgid "[WARNING_NOTCL] Delete Grid value cancelled ..." msgstr "[WARNING_NOTCL] Stergera unei valori de Grila a fost anulata ..." -#: FlatCAMApp.py:4691 +#: FlatCAMApp.py:4695 msgid "[WARNING_NOTCL]No object selected to copy it's name" msgstr "" "[WARNING_NOTCL] Nici-un obiect nu este selectat pentru i se copia valoarea" -#: FlatCAMApp.py:4695 +#: FlatCAMApp.py:4699 msgid "Name copied on clipboard ..." msgstr "Numele a fost copiat pe Clipboard ..." -#: FlatCAMApp.py:4990 FlatCAMApp.py:4993 FlatCAMApp.py:4996 FlatCAMApp.py:4999 -#: FlatCAMApp.py:5013 FlatCAMApp.py:5016 FlatCAMApp.py:5019 FlatCAMApp.py:5022 -#: FlatCAMApp.py:5061 FlatCAMApp.py:5064 FlatCAMApp.py:5067 FlatCAMApp.py:5070 +#: FlatCAMApp.py:4994 FlatCAMApp.py:4997 FlatCAMApp.py:5000 FlatCAMApp.py:5003 +#: FlatCAMApp.py:5017 FlatCAMApp.py:5020 FlatCAMApp.py:5023 FlatCAMApp.py:5026 +#: FlatCAMApp.py:5065 FlatCAMApp.py:5068 FlatCAMApp.py:5071 FlatCAMApp.py:5074 #: ObjectCollection.py:696 ObjectCollection.py:699 ObjectCollection.py:702 #: ObjectCollection.py:705 #, python-brace-format msgid "[selected]{name} selected" msgstr "[selected]{name} selectat" -#: FlatCAMApp.py:5187 +#: FlatCAMApp.py:5191 msgid "" "There are files/objects opened in FlatCAM.\n" "Creating a New project will delete them.\n" @@ -440,133 +466,133 @@ msgstr "" "Crearea unui nou Proiect le va sterge..\n" "Doriti să Salvati proiectul curentt?" -#: FlatCAMApp.py:5205 +#: FlatCAMApp.py:5209 msgid "[success] New Project created..." msgstr "[success] Un nou Proiect a fost creat..." -#: FlatCAMApp.py:5286 +#: FlatCAMApp.py:5290 msgid "" "[WARNING_NOTCL] Select an Gerber or Excellon file to view it's source file." msgstr "" "[WARNING_NOTCL] Selectati un obiect Gerber sau Excellon pentru a-i vedea " "codul sursa." -#: FlatCAMApp.py:5293 +#: FlatCAMApp.py:5297 msgid "" "[WARNING_NOTCL] There is no selected object for which to see it's source " "file code." msgstr "[WARNING_NOTCL] Nici-un obiect selectat pentru a-i vedea codul sursa." -#: FlatCAMApp.py:5297 FlatCAMApp.py:6728 FlatCAMObj.py:5398 +#: FlatCAMApp.py:5301 FlatCAMApp.py:6732 FlatCAMObj.py:5398 msgid "Code Editor" msgstr "Editor Cod" -#: FlatCAMApp.py:5310 +#: FlatCAMApp.py:5314 #, python-format msgid "[ERROR]App.on_view_source() -->%s" msgstr "[ERROR]App.on_view_source() -->%s" -#: FlatCAMApp.py:5348 FlatCAMApp.py:5351 flatcamGUI/FlatCAMGUI.py:541 +#: FlatCAMApp.py:5352 FlatCAMApp.py:5355 flatcamGUI/FlatCAMGUI.py:541 #: flatcamGUI/FlatCAMGUI.py:1590 msgid "Open Gerber" msgstr "Incarca Gerber" -#: FlatCAMApp.py:5356 +#: FlatCAMApp.py:5360 msgid "[WARNING_NOTCL] Open Gerber cancelled." msgstr "[WARNING_NOTCL] Incarcarea unui fişier Gerber este anulata." -#: FlatCAMApp.py:5377 FlatCAMApp.py:5380 flatcamGUI/FlatCAMGUI.py:542 +#: FlatCAMApp.py:5381 FlatCAMApp.py:5384 flatcamGUI/FlatCAMGUI.py:542 #: flatcamGUI/FlatCAMGUI.py:1591 msgid "Open Excellon" msgstr "Incarca Excellon" -#: FlatCAMApp.py:5385 +#: FlatCAMApp.py:5389 msgid "[WARNING_NOTCL]Open Excellon cancelled." msgstr "[WARNING_NOTCL] Incarcarea unui fişier Excellon este anulata." -#: FlatCAMApp.py:5407 FlatCAMApp.py:5410 +#: FlatCAMApp.py:5411 FlatCAMApp.py:5414 msgid "Open G-Code" msgstr "Incarca G-Code" -#: FlatCAMApp.py:5415 +#: FlatCAMApp.py:5419 msgid "[WARNING_NOTCL]Open G-Code cancelled." msgstr "[WARNING_NOTCL]Incarcarea unui fişier G-Code este anulata." -#: FlatCAMApp.py:5433 FlatCAMApp.py:5436 +#: FlatCAMApp.py:5437 FlatCAMApp.py:5440 msgid "Open Project" msgstr "Incarca Project" -#: FlatCAMApp.py:5444 +#: FlatCAMApp.py:5448 msgid "[WARNING_NOTCL]Open Project cancelled." msgstr "[WARNING_NOTCL] Incarcarea unui Proiect a fost anulata." -#: FlatCAMApp.py:5463 FlatCAMApp.py:5466 +#: FlatCAMApp.py:5467 FlatCAMApp.py:5470 msgid "Open Configuration File" msgstr "Incarca un fişier de Configurare" -#: FlatCAMApp.py:5470 +#: FlatCAMApp.py:5474 msgid "[WARNING_NOTCL]Open Config cancelled." msgstr "[WARNING_NOTCL] Incarcarea unui fişier de Configurare este anulata." -#: FlatCAMApp.py:5485 FlatCAMApp.py:5682 FlatCAMApp.py:7588 FlatCAMApp.py:7608 -#: FlatCAMApp.py:7629 FlatCAMApp.py:7651 +#: FlatCAMApp.py:5489 FlatCAMApp.py:5686 FlatCAMApp.py:7592 FlatCAMApp.py:7612 +#: FlatCAMApp.py:7633 FlatCAMApp.py:7655 msgid "[WARNING_NOTCL] No object selected." msgstr "[WARNING_NOTCL] Nici-un obiect selectat." -#: FlatCAMApp.py:5486 FlatCAMApp.py:5683 +#: FlatCAMApp.py:5490 FlatCAMApp.py:5687 msgid "Please Select a Geometry object to export" msgstr "Selectează un obiect Geometrie pentru export" -#: FlatCAMApp.py:5497 +#: FlatCAMApp.py:5501 msgid "[ERROR_NOTCL] Only Geometry, Gerber and CNCJob objects can be used." msgstr "" "[ERROR_NOTCL] Doar obiectele Geometrie, Gerber și CNCJob pot fi folosite." -#: FlatCAMApp.py:5510 FlatCAMApp.py:5514 +#: FlatCAMApp.py:5514 FlatCAMApp.py:5518 msgid "Export SVG" msgstr "Exporta SVG" -#: FlatCAMApp.py:5519 +#: FlatCAMApp.py:5523 msgid "[WARNING_NOTCL]Export SVG cancelled." msgstr "[WARNING_NOTCL] Exportul SVG este anulat." -#: FlatCAMApp.py:5533 +#: FlatCAMApp.py:5537 msgid "[[WARNING_NOTCL]] Data must be a 3D array with last dimension 3 or 4" msgstr "" "[[WARNING_NOTCL]] Datele trebuie să fie organizate intr-o arie 3D cu ultima " "dimensiune cu valoarea 3 sau 4." -#: FlatCAMApp.py:5539 FlatCAMApp.py:5543 +#: FlatCAMApp.py:5543 FlatCAMApp.py:5547 msgid "Export PNG Image" msgstr "Exporta imagine PNG" -#: FlatCAMApp.py:5548 +#: FlatCAMApp.py:5552 msgid "Export PNG cancelled." msgstr "Exportul imagine PNG este anulat." -#: FlatCAMApp.py:5565 +#: FlatCAMApp.py:5569 msgid "" "[WARNING_NOTCL] No object selected. Please select an Gerber object to export." msgstr "" "[WARNING_NOTCL] Nici-un obiect selectat. Selectează un obiect Gerber pentru " "export." -#: FlatCAMApp.py:5570 +#: FlatCAMApp.py:5574 msgid "" "[ERROR_NOTCL] Failed. Only Gerber objects can be saved as Gerber files..." msgstr "" "[ERROR_NOTCL] Esuat. Doar obiectele tip Gerber pot fi salvate ca fişiere " "Gerber..." -#: FlatCAMApp.py:5582 +#: FlatCAMApp.py:5586 msgid "Save Gerber source file" msgstr "Salvează codul sursa Gerber ca fişier" -#: FlatCAMApp.py:5587 +#: FlatCAMApp.py:5591 msgid "[WARNING_NOTCL] Save Gerber source file cancelled." msgstr "[WARNING_NOTCL] Salvarea codului sursa Gerber este anulata." -#: FlatCAMApp.py:5604 +#: FlatCAMApp.py:5608 msgid "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." @@ -574,22 +600,22 @@ msgstr "" "[WARNING_NOTCL] Nici-un obiect selectat. Selectează un obiect Excellon " "pentru export." -#: FlatCAMApp.py:5609 FlatCAMApp.py:5648 +#: FlatCAMApp.py:5613 FlatCAMApp.py:5652 msgid "" "[ERROR_NOTCL] Failed. Only Excellon objects can be saved as Excellon files..." msgstr "" "[ERROR_NOTCL] Esuat. Doar obiectele tip Excellon pot fi salvate ca fişiere " "Excellon ..." -#: FlatCAMApp.py:5617 FlatCAMApp.py:5621 +#: FlatCAMApp.py:5621 FlatCAMApp.py:5625 msgid "Save Excellon source file" msgstr "Salvează codul sursa Excellon ca fişier" -#: FlatCAMApp.py:5626 +#: FlatCAMApp.py:5630 msgid "[WARNING_NOTCL] Saving Excellon source file cancelled." msgstr "[WARNING_NOTCL] Salvarea codului sursa Excellon este anulata." -#: FlatCAMApp.py:5643 +#: FlatCAMApp.py:5647 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." @@ -597,109 +623,109 @@ msgstr "" "[WARNING_NOTCL] Nici-un obiect selectat. Selectează un obiect Excellon " "pentru export." -#: FlatCAMApp.py:5656 FlatCAMApp.py:5660 +#: FlatCAMApp.py:5660 FlatCAMApp.py:5664 msgid "Export Excellon" msgstr "Exporta Excellon" -#: FlatCAMApp.py:5665 +#: FlatCAMApp.py:5669 msgid "[WARNING_NOTCL]Export Excellon cancelled." msgstr "[WARNING_NOTCL] Exportul Excellon anulat." -#: FlatCAMApp.py:5693 +#: FlatCAMApp.py:5697 msgid "[ERROR_NOTCL] Only Geometry objects can be used." msgstr "[ERROR_NOTCL] Doar obiecte tip Geometrie pot fi folosite." -#: FlatCAMApp.py:5706 FlatCAMApp.py:5710 +#: FlatCAMApp.py:5710 FlatCAMApp.py:5714 msgid "Export DXF" msgstr "Exporta DXF" -#: FlatCAMApp.py:5715 +#: FlatCAMApp.py:5719 msgid "[WARNING_NOTCL] Export DXF cancelled." msgstr "[WARNING_NOTCL] Exportul DXF anulat." -#: FlatCAMApp.py:5733 FlatCAMApp.py:5736 +#: FlatCAMApp.py:5737 FlatCAMApp.py:5740 msgid "Import SVG" msgstr "Importa SVG" -#: FlatCAMApp.py:5744 +#: FlatCAMApp.py:5748 msgid "[WARNING_NOTCL] Open SVG cancelled." msgstr "[WARNING_NOTCL] Importul SVG anulat." -#: FlatCAMApp.py:5763 FlatCAMApp.py:5766 +#: FlatCAMApp.py:5767 FlatCAMApp.py:5770 msgid "Import DXF" msgstr "Importa DXF" -#: FlatCAMApp.py:5774 +#: FlatCAMApp.py:5778 msgid "[WARNING_NOTCL]Open DXF cancelled." msgstr "[WARNING_NOTCL] Incarcarea fişier DXF anulata." -#: FlatCAMApp.py:5792 FlatCAMApp.py:5795 +#: FlatCAMApp.py:5796 FlatCAMApp.py:5799 msgid "Open TCL script" msgstr "Incarca TCL script" -#: FlatCAMApp.py:5803 +#: FlatCAMApp.py:5807 msgid "[WARNING_NOTCL]Open TCL script cancelled." msgstr "[WARNING_NOTCL]Incarcarea TCL script anulata." -#: FlatCAMApp.py:5851 FlatCAMApp.py:5855 +#: FlatCAMApp.py:5855 FlatCAMApp.py:5859 msgid "Save Project As ..." msgstr "Salvează Proiectul ca ..." -#: FlatCAMApp.py:5852 +#: FlatCAMApp.py:5856 #, python-brace-format msgid "{l_save}/Project_{date}" msgstr "{l_save}/Proiect_{date}" -#: FlatCAMApp.py:5860 +#: FlatCAMApp.py:5864 msgid "[WARNING_NOTCL] Save Project cancelled." msgstr "[WARNING_NOTCL] Salvarea Proiect anulata." -#: FlatCAMApp.py:5905 +#: FlatCAMApp.py:5909 msgid "Exporting SVG" msgstr "SVG in curs de export" -#: FlatCAMApp.py:5938 FlatCAMApp.py:6043 FlatCAMApp.py:6157 +#: FlatCAMApp.py:5942 FlatCAMApp.py:6047 FlatCAMApp.py:6161 #, python-format msgid "[success] SVG file exported to %s" msgstr "[success] Fişier SVG exportat in %s" -#: FlatCAMApp.py:5969 FlatCAMApp.py:6089 +#: FlatCAMApp.py:5973 FlatCAMApp.py:6093 #, python-format msgid "[WARNING_NOTCL]No object Box. Using instead %s" msgstr "" "[WARNING_NOTCL] Nu este nici-un container Box pentru obiect. Se foloseşte %s" -#: FlatCAMApp.py:6046 FlatCAMApp.py:6160 +#: FlatCAMApp.py:6050 FlatCAMApp.py:6164 msgid "Generating Film ... Please wait." msgstr "Filmul se generează ... Asteapta!" -#: FlatCAMApp.py:6307 +#: FlatCAMApp.py:6311 #, python-format msgid "[success] Excellon file exported to %s" msgstr "[success] Fişierul Excellon exportat in %s" -#: FlatCAMApp.py:6314 +#: FlatCAMApp.py:6318 msgid "Exporting Excellon" msgstr "Excellon in curs de export" -#: FlatCAMApp.py:6319 FlatCAMApp.py:6326 +#: FlatCAMApp.py:6323 FlatCAMApp.py:6330 msgid "[ERROR_NOTCL] Could not export Excellon file." msgstr "[ERROR_NOTCL] Fişierul Excellon nu a putut fi exportat." -#: FlatCAMApp.py:6365 +#: FlatCAMApp.py:6369 #, python-format msgid "[success] DXF file exported to %s" msgstr "[success] Fişierul DXF exportat in %s" -#: FlatCAMApp.py:6371 +#: FlatCAMApp.py:6375 msgid "Exporting DXF" msgstr "DXF in curs de export" -#: FlatCAMApp.py:6376 FlatCAMApp.py:6383 +#: FlatCAMApp.py:6380 FlatCAMApp.py:6387 msgid "[[WARNING_NOTCL]] Could not export DXF file." msgstr "[[WARNING_NOTCL]] Fişierul DXF nu a putut fi exportat." -#: FlatCAMApp.py:6403 FlatCAMApp.py:6445 FlatCAMApp.py:6486 +#: FlatCAMApp.py:6407 FlatCAMApp.py:6449 FlatCAMApp.py:6490 msgid "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" @@ -707,100 +733,100 @@ msgstr "" "[ERROR_NOTCL] Typul parametrului nu este compatibil. Doar Geometrie is " "Gerber sunt acceptate." -#: FlatCAMApp.py:6413 +#: FlatCAMApp.py:6417 msgid "Importing SVG" msgstr "SVG in curs de ia fi importat" -#: FlatCAMApp.py:6424 FlatCAMApp.py:6466 FlatCAMApp.py:6506 FlatCAMApp.py:6582 -#: FlatCAMApp.py:6649 FlatCAMApp.py:6714 +#: FlatCAMApp.py:6428 FlatCAMApp.py:6470 FlatCAMApp.py:6510 FlatCAMApp.py:6586 +#: FlatCAMApp.py:6653 FlatCAMApp.py:6718 #, python-format msgid "[success] Opened: %s" msgstr "[success] Incarcat: %s" -#: FlatCAMApp.py:6455 +#: FlatCAMApp.py:6459 msgid "Importing DXF" msgstr "DXF in curs de a fi importat" -#: FlatCAMApp.py:6494 +#: FlatCAMApp.py:6498 msgid "Importing Image" msgstr "Imaginea in curs de a fi importata" -#: FlatCAMApp.py:6535 FlatCAMApp.py:6537 +#: FlatCAMApp.py:6539 FlatCAMApp.py:6541 #, python-format msgid "[ERROR_NOTCL] Failed to open file: %s" msgstr "[ERROR_NOTCL] Esec in incarcarea fişierului %s" -#: FlatCAMApp.py:6540 +#: FlatCAMApp.py:6544 #, python-brace-format msgid "[ERROR_NOTCL] Failed to parse file: {name}. {error}" msgstr "[ERROR_NOTCL] Esec in parsarea fişierului: {name}. {error}" -#: FlatCAMApp.py:6546 FlatCAMEditor.py:5802 FlatCAMObj.py:4104 +#: FlatCAMApp.py:6550 FlatCAMEditor.py:5802 FlatCAMObj.py:4104 msgid "[ERROR] An internal error has ocurred. See shell.\n" msgstr "" "[ERROR] A aparut o eroare interna. Verifică in TCL Shell pt mai multe " "detalii.\n" -#: FlatCAMApp.py:6555 +#: FlatCAMApp.py:6559 msgid "" "[ERROR_NOTCL] Object is not Gerber file or empty. Aborting object creation." msgstr "" "[ERROR_NOTCL] Obiectul nu estetip Gerber sau este gol. Se anulează crearea " "obiectului." -#: FlatCAMApp.py:6563 +#: FlatCAMApp.py:6567 msgid "Opening Gerber" msgstr "Gerber in curs de incarcare" -#: FlatCAMApp.py:6573 +#: FlatCAMApp.py:6577 msgid "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." msgstr "" "[ERROR_NOTCL] Incarcarea Gerber a esuat. Probabil nu este de tip Gerber." -#: FlatCAMApp.py:6608 +#: FlatCAMApp.py:6612 msgid "[ERROR_NOTCL] This is not Excellon file." msgstr "[ERROR_NOTCL] Acesta nu este un fişier Excellon." -#: FlatCAMApp.py:6611 +#: FlatCAMApp.py:6615 #, python-format msgid "[ERROR_NOTCL] Cannot open file: %s" msgstr "[ERROR_NOTCL] Fişierul %s nu se poate incarca." -#: FlatCAMApp.py:6616 +#: FlatCAMApp.py:6620 msgid "[ERROR_NOTCL] An internal error has occurred. See shell.\n" msgstr "" "[ERROR_NOTCL] A aparut o eroare interna. Verifică in TCL Shell pt mai multe " "detalii.\n" -#: FlatCAMApp.py:6632 +#: FlatCAMApp.py:6636 #, python-format msgid "[ERROR_NOTCL] No geometry found in file: %s" msgstr "" "[ERROR_NOTCL] Nici-o informatie de tip geometrie nu s-a gasit in fişierul: %s" -#: FlatCAMApp.py:6635 +#: FlatCAMApp.py:6639 msgid "Opening Excellon." msgstr "Excellon in curs de incarcare" -#: FlatCAMApp.py:6642 +#: FlatCAMApp.py:6646 msgid "[ERROR_NOTCL] Open Excellon file failed. Probable not an Excellon file." msgstr "" "[ERROR_NOTCL] Incarcarea Excellon a esuat. Probabil nu este de tip Excellon." -#: FlatCAMApp.py:6681 +#: FlatCAMApp.py:6685 #, python-format msgid "[ERROR_NOTCL] Failed to open %s" msgstr "[ERROR_NOTCL] Incarcarea fişierului %s a esuat." -#: FlatCAMApp.py:6691 +#: FlatCAMApp.py:6695 msgid "[ERROR_NOTCL] This is not GCODE" msgstr "[ERROR_NOTCL] Acest obiect nu este de tip GCode" -#: FlatCAMApp.py:6697 +#: FlatCAMApp.py:6701 msgid "Opening G-Code." msgstr "G-Code in curs de incarcare" -#: FlatCAMApp.py:6705 +#: FlatCAMApp.py:6709 msgid "" "[ERROR_NOTCL] Failed to create CNCJob Object. Probable not a GCode file.\n" " Attempting to create a FlatCAM CNCJob Object from G-Code file failed during " @@ -811,31 +837,31 @@ msgstr "" "Incercarea de a crea un obiect CNCJob din G-Code a esuat in timpul " "procesarii." -#: FlatCAMApp.py:6745 +#: FlatCAMApp.py:6749 #, python-format msgid "[ERROR_NOTCL] Failed to open config file: %s" msgstr "[ERROR_NOTCL] Esec in incarcarea fişierului de configurare: %s" -#: FlatCAMApp.py:6770 FlatCAMApp.py:6787 +#: FlatCAMApp.py:6774 FlatCAMApp.py:6791 #, python-format msgid "[ERROR_NOTCL] Failed to open project file: %s" msgstr "[ERROR_NOTCL] Esec in incarcarea fişierului de configurare: %s" -#: FlatCAMApp.py:6777 +#: FlatCAMApp.py:6781 #, python-format msgid "[ERROR_NOTCL] Failed to parse project file: %s" msgstr "[ERROR_NOTCL] Esec in incarcarea fişierului de configurare: %s" -#: FlatCAMApp.py:6813 +#: FlatCAMApp.py:6817 #, python-format msgid "[success] Project loaded from: %s" msgstr "[success] Proeictul a fost incarcat din: %s" -#: FlatCAMApp.py:6943 +#: FlatCAMApp.py:6947 msgid "Available commands:\n" msgstr "Comenzi disponibile:\n" -#: FlatCAMApp.py:6945 +#: FlatCAMApp.py:6949 msgid "" "\n" "\n" @@ -847,23 +873,23 @@ msgstr "" "Introduceți help pentru utilizare.\n" "Exemplu: help open_gerber" -#: FlatCAMApp.py:7093 +#: FlatCAMApp.py:7097 msgid "Shows list of commands." msgstr "Arata o lista de comenzi." -#: FlatCAMApp.py:7146 +#: FlatCAMApp.py:7150 msgid "[ERROR_NOTCL] Failed to load recent item list." msgstr "[ERROR_NOTCL] Esec in incarcarea listei cu obiecte recente." -#: FlatCAMApp.py:7153 +#: FlatCAMApp.py:7157 msgid "[ERROR_NOTCL] Failed to parse recent item list." msgstr "[ERROR_NOTCL] Esec in parsarea listei cu obiecte recente." -#: FlatCAMApp.py:7214 flatcamGUI/FlatCAMGUI.py:856 +#: FlatCAMApp.py:7218 flatcamGUI/FlatCAMGUI.py:856 msgid "Shortcut Key List" msgstr "Lista cu taste Shortcut" -#: FlatCAMApp.py:7221 +#: FlatCAMApp.py:7225 msgid "" "\n" "

Selected Tab - Choose an Item from " @@ -960,27 +986,27 @@ msgstr "" "\n" " " -#: FlatCAMApp.py:7325 +#: FlatCAMApp.py:7329 msgid "[WARNING_NOTCL] Failed checking for latest version. Could not connect." msgstr "" "[WARNING_NOTCL] Verificarea pentru ultima versiune a esuat. Nu a fost " "posibila conectarea la server." -#: FlatCAMApp.py:7332 +#: FlatCAMApp.py:7336 msgid "[ERROR_NOTCL] Could not parse information about latest version." msgstr "" "[ERROR_NOTCL] Informatia cu privire la ultima versiune nu s-a putut " "interpreta." -#: FlatCAMApp.py:7342 +#: FlatCAMApp.py:7346 msgid "[success] FlatCAM is up to date!" msgstr "[success] FlatCAM este la ultima versiune!" -#: FlatCAMApp.py:7347 +#: FlatCAMApp.py:7351 msgid "Newer Version Available" msgstr "O noua versiune este disponibila" -#: FlatCAMApp.py:7348 +#: FlatCAMApp.py:7352 msgid "" "There is a newer version of FlatCAM available for download:\n" "\n" @@ -988,46 +1014,46 @@ msgstr "" "O noua versiune de FlatCAM este disponibila pentru download::\n" "\n" -#: FlatCAMApp.py:7350 +#: FlatCAMApp.py:7354 msgid "info" msgstr "Informatie" -#: FlatCAMApp.py:7369 +#: FlatCAMApp.py:7373 msgid "[success]All plots disabled." msgstr "[success] Toate afisarile sunt dezactivate." -#: FlatCAMApp.py:7375 +#: FlatCAMApp.py:7379 msgid "[success]All non selected plots disabled." msgstr "[success] Toate afisarile care nu sunt selectate sunt dezactivate." -#: FlatCAMApp.py:7381 +#: FlatCAMApp.py:7385 msgid "[success]All plots enabled." msgstr "[success] Toate afisarile sunt activate." -#: FlatCAMApp.py:7491 +#: FlatCAMApp.py:7495 msgid "Saving FlatCAM Project" msgstr "Proiectul FlatCAM este in curs de salvare" -#: FlatCAMApp.py:7512 FlatCAMApp.py:7543 +#: FlatCAMApp.py:7516 FlatCAMApp.py:7547 #, python-format msgid "[success] Project saved to: %s" msgstr "[success] Proiectul s-a salvat in: %s" -#: FlatCAMApp.py:7530 +#: FlatCAMApp.py:7534 #, python-format msgid "[ERROR_NOTCL] Failed to verify project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Verificarea proiectului salvat a esuat: %s. Incearcă să il " "salvezi din nou." -#: FlatCAMApp.py:7537 +#: FlatCAMApp.py:7541 #, python-format msgid "[ERROR_NOTCL] Failed to parse saved project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Parsarea proiectului salvat a esuat: %s. Incearcă să il " "salvezi din nou." -#: FlatCAMApp.py:7545 +#: FlatCAMApp.py:7549 #, python-format msgid "[ERROR_NOTCL] Failed to save project file: %s. Retry to save it." msgstr "" diff --git a/locale_template/strings.pot b/locale_template/strings.pot index e9fc6095..d6232c53 100644 --- a/locale_template/strings.pot +++ b/locale_template/strings.pot @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: \n" -"POT-Creation-Date: 2019-03-17 23:12+0200\n" +"POT-Creation-Date: 2019-03-18 03:21+0200\n" "PO-Revision-Date: 2019-03-17 23:10+0200\n" "Last-Translator: \n" "Language-Team: \n" @@ -18,149 +18,166 @@ msgstr "" "X-Generator: Poedit 2.2.1\n" "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n==0 || (n!=1 && n%100>=1 && n" "%100<=19) ? 1 : 2);\n" -"X-Poedit-Basepath: ../../..\n" +"X-Poedit-Basepath: ..\n" "X-Poedit-SearchPath-0: .\n" +"X-Poedit-SearchPathExcluded-0: build\n" +"X-Poedit-SearchPathExcluded-1: tests\n" +"X-Poedit-SearchPathExcluded-2: doc\n" -#: FlatCAMApp.py:844 +#: FlatCAMApp.py:843 msgid "[ERROR] Could not find the Language files. The App strings are missing." msgstr "" -#: FlatCAMApp.py:1672 ObjectCollection.py:80 flatcamTools/ToolImage.py:213 +#: FlatCAMApp.py:1671 ObjectCollection.py:80 flatcamTools/ToolImage.py:213 msgid "Open cancelled." msgstr "" -#: FlatCAMApp.py:1686 +#: FlatCAMApp.py:1685 msgid "Open Config file failed." msgstr "" -#: FlatCAMApp.py:1871 +#: FlatCAMApp.py:1870 msgid "" "[WARNING_NOTCL] Editing a MultiGeo Geometry is not possible for the moment." msgstr "" -#: FlatCAMApp.py:1892 +#: FlatCAMApp.py:1891 msgid "[WARNING_NOTCL]Select a Geometry or Excellon Object to edit." msgstr "" -#: FlatCAMApp.py:1903 +#: FlatCAMApp.py:1902 msgid "[WARNING_NOTCL]Editor is activated ..." msgstr "" -#: FlatCAMApp.py:1942 +#: FlatCAMApp.py:1941 msgid "[WARNING] Object empty after edit." msgstr "" -#: FlatCAMApp.py:1951 +#: FlatCAMApp.py:1950 msgid "[WARNING_NOTCL]Select a Geometry or Excellon Object to update." msgstr "" -#: FlatCAMApp.py:1964 +#: FlatCAMApp.py:1963 #, python-format msgid "[selected] %s is updated, returning to App..." msgstr "" -#: FlatCAMApp.py:2287 +#: FlatCAMApp.py:2286 msgid "[ERROR] Could not load defaults file." msgstr "" -#: FlatCAMApp.py:2299 +#: FlatCAMApp.py:2298 msgid "[ERROR] Failed to parse defaults file." msgstr "" -#: FlatCAMApp.py:2320 FlatCAMApp.py:2323 +#: FlatCAMApp.py:2319 FlatCAMApp.py:2322 msgid "Import FlatCAM Preferences" msgstr "" -#: FlatCAMApp.py:2328 +#: FlatCAMApp.py:2327 msgid "[WARNING_NOTCL]FlatCAM preferences import cancelled." msgstr "" -#: FlatCAMApp.py:2336 FlatCAMApp.py:2810 +#: FlatCAMApp.py:2335 FlatCAMApp.py:2814 msgid "[ERROR_NOTCL] Could not load defaults file." msgstr "" -#: FlatCAMApp.py:2344 FlatCAMApp.py:2819 +#: FlatCAMApp.py:2343 FlatCAMApp.py:2823 msgid "[ERROR_NOTCL] Failed to parse defaults file." msgstr "" -#: FlatCAMApp.py:2347 +#: FlatCAMApp.py:2346 #, python-format msgid "[success]Imported Defaults from %s" msgstr "" -#: FlatCAMApp.py:2357 FlatCAMApp.py:2361 +#: FlatCAMApp.py:2356 FlatCAMApp.py:2360 msgid "Export FlatCAM Preferences" msgstr "" -#: FlatCAMApp.py:2367 +#: FlatCAMApp.py:2366 msgid "[WARNING_NOTCL]FlatCAM preferences export cancelled." msgstr "" -#: FlatCAMApp.py:2383 +#: FlatCAMApp.py:2382 msgid "[ERROR_NOTCL]Could not load defaults file." msgstr "" -#: FlatCAMApp.py:2402 FlatCAMApp.py:2833 +#: FlatCAMApp.py:2401 FlatCAMApp.py:2837 msgid "[ERROR_NOTCL] Failed to write defaults to file." msgstr "" -#: FlatCAMApp.py:2454 +#: FlatCAMApp.py:2453 msgid "[ERROR_NOTCL]Failed to open recent files file for writing." msgstr "" -#: FlatCAMApp.py:2539 camlib.py:4229 +#: FlatCAMApp.py:2538 camlib.py:4229 msgid "[ERROR_NOTCL] An internal error has ocurred. See shell.\n" msgstr "" -#: FlatCAMApp.py:2540 +#: FlatCAMApp.py:2539 #, python-brace-format msgid "" "Object ({kind}) failed because: {error} \n" "\n" msgstr "" -#: FlatCAMApp.py:2560 +#: FlatCAMApp.py:2559 msgid "Converting units to " msgstr "" -#: FlatCAMApp.py:2618 FlatCAMApp.py:2621 FlatCAMApp.py:2624 FlatCAMApp.py:2627 +#: FlatCAMApp.py:2617 FlatCAMApp.py:2620 FlatCAMApp.py:2623 FlatCAMApp.py:2626 #, python-brace-format msgid "" "[selected]{kind} created/selected: {name}" msgstr "" -#: FlatCAMApp.py:2865 +#: FlatCAMApp.py:2719 +#, python-brace-format +msgid "" +"FlatCAM
Version {version} {beta} ({date}) - " +"{arch}

2D Computer-Aided Printed Circuit Board
Manufacturing." +"

(c) 2014-2019 Juan Pablo Caram

Main Contributors:
Denis Hayrullin
Kamil Sopko
Marius Stanciu
Matthieu " +"Berthomé
and many others found here.

Development is done " +"here.
DOWNLOAD area
here.
" +msgstr "" + +#: FlatCAMApp.py:2869 msgid "[success]Defaults saved." msgstr "" -#: FlatCAMApp.py:2886 +#: FlatCAMApp.py:2890 msgid "[ERROR_NOTCL] Could not load factory defaults file." msgstr "" -#: FlatCAMApp.py:2895 +#: FlatCAMApp.py:2899 msgid "[ERROR_NOTCL] Failed to parse factory defaults file." msgstr "" -#: FlatCAMApp.py:2909 +#: FlatCAMApp.py:2913 msgid "[ERROR_NOTCL] Failed to write factory defaults to file." msgstr "" -#: FlatCAMApp.py:2913 +#: FlatCAMApp.py:2917 msgid "Factory defaults saved." msgstr "" -#: FlatCAMApp.py:2918 +#: FlatCAMApp.py:2922 msgid "" "There are files/objects modified in FlatCAM. \n" "Do you want to Save the project?" msgstr "" -#: FlatCAMApp.py:2921 FlatCAMApp.py:5190 +#: FlatCAMApp.py:2925 FlatCAMApp.py:5194 msgid "Save changes" msgstr "" -#: FlatCAMApp.py:2981 +#: FlatCAMApp.py:2985 msgid "" "[ERROR] Failed join. The Geometry objects are of different types.\n" "At least one is MultiGeo type and the other is SingleGeo type. A possibility " @@ -170,597 +187,597 @@ msgid "" "Check the generated GCODE." msgstr "" -#: FlatCAMApp.py:3022 +#: FlatCAMApp.py:3026 msgid "[ERROR_NOTCL]Failed. Excellon joining works only on Excellon objects." msgstr "" -#: FlatCAMApp.py:3044 +#: FlatCAMApp.py:3048 msgid "[ERROR_NOTCL]Failed. Gerber joining works only on Gerber objects." msgstr "" -#: FlatCAMApp.py:3059 FlatCAMApp.py:3084 +#: FlatCAMApp.py:3063 FlatCAMApp.py:3088 msgid "[ERROR_NOTCL]Failed. Select a Geometry Object and try again." msgstr "" -#: FlatCAMApp.py:3063 FlatCAMApp.py:3088 +#: FlatCAMApp.py:3067 FlatCAMApp.py:3092 #, python-format msgid "[ERROR_NOTCL]Expected a FlatCAMGeometry, got %s" msgstr "" -#: FlatCAMApp.py:3076 +#: FlatCAMApp.py:3080 msgid "[success] A Geometry object was converted to MultiGeo type." msgstr "" -#: FlatCAMApp.py:3102 +#: FlatCAMApp.py:3106 msgid "[success] A Geometry object was converted to SingleGeo type." msgstr "" -#: FlatCAMApp.py:3286 +#: FlatCAMApp.py:3290 #, python-format msgid "[success]Converted units to %s" msgstr "" -#: FlatCAMApp.py:3297 +#: FlatCAMApp.py:3301 msgid "[WARNING_NOTCL]Units conversion cancelled." msgstr "" -#: FlatCAMApp.py:3862 +#: FlatCAMApp.py:3866 msgid "Open file" msgstr "" -#: FlatCAMApp.py:3913 FlatCAMApp.py:3918 +#: FlatCAMApp.py:3917 FlatCAMApp.py:3922 msgid "Export G-Code ..." msgstr "" -#: FlatCAMApp.py:3921 +#: FlatCAMApp.py:3925 msgid "[WARNING_NOTCL]Export Code cancelled." msgstr "" -#: FlatCAMApp.py:3931 +#: FlatCAMApp.py:3935 msgid "[WARNING] No such file or directory" msgstr "" -#: FlatCAMApp.py:3938 +#: FlatCAMApp.py:3942 #, python-format msgid "Saved to: %s" msgstr "" -#: FlatCAMApp.py:4001 FlatCAMApp.py:4033 FlatCAMApp.py:4044 FlatCAMApp.py:4055 +#: FlatCAMApp.py:4005 FlatCAMApp.py:4037 FlatCAMApp.py:4048 FlatCAMApp.py:4059 #: flatcamTools/ToolNonCopperClear.py:487 flatcamTools/ToolSolderPaste.py:764 msgid "" "[WARNING_NOTCL] Please enter a tool diameter with non-zero value, in Float " "format." msgstr "" -#: FlatCAMApp.py:4006 FlatCAMApp.py:4038 FlatCAMApp.py:4049 FlatCAMApp.py:4060 +#: FlatCAMApp.py:4010 FlatCAMApp.py:4042 FlatCAMApp.py:4053 FlatCAMApp.py:4064 #: flatcamGUI/FlatCAMGUI.py:2484 msgid "[WARNING_NOTCL] Adding Tool cancelled ..." msgstr "" -#: FlatCAMApp.py:4009 +#: FlatCAMApp.py:4013 msgid "" "Adding Tool works only when Advanced is checked.\n" "Go to Preferences -> General - Show Advanced Options." msgstr "" -#: FlatCAMApp.py:4114 +#: FlatCAMApp.py:4118 msgid "Object(s) deleted ..." msgstr "" -#: FlatCAMApp.py:4118 +#: FlatCAMApp.py:4122 msgid "Failed. No object(s) selected..." msgstr "" -#: FlatCAMApp.py:4120 +#: FlatCAMApp.py:4124 msgid "Save the work in Editor and try again ..." msgstr "" -#: FlatCAMApp.py:4133 +#: FlatCAMApp.py:4137 msgid "Click to set the origin ..." msgstr "" -#: FlatCAMApp.py:4145 +#: FlatCAMApp.py:4149 msgid "Jump to ..." msgstr "" -#: FlatCAMApp.py:4146 +#: FlatCAMApp.py:4150 msgid "Enter the coordinates in format X,Y:" msgstr "" -#: FlatCAMApp.py:4153 +#: FlatCAMApp.py:4157 msgid "Wrong coordinates. Enter coordinates in format: X,Y" msgstr "" -#: FlatCAMApp.py:4168 +#: FlatCAMApp.py:4172 msgid "Done." msgstr "" -#: FlatCAMApp.py:4300 +#: FlatCAMApp.py:4304 msgid "[success] Origin set ..." msgstr "" -#: FlatCAMApp.py:4318 +#: FlatCAMApp.py:4322 msgid "Preferences" msgstr "" -#: FlatCAMApp.py:4338 +#: FlatCAMApp.py:4342 msgid "[WARNING_NOTCL] No object selected to Flip on Y axis." msgstr "" -#: FlatCAMApp.py:4363 +#: FlatCAMApp.py:4367 msgid "[success] Flip on Y axis done." msgstr "" -#: FlatCAMApp.py:4365 FlatCAMApp.py:4405 FlatCAMEditor.py:1340 +#: FlatCAMApp.py:4369 FlatCAMApp.py:4409 FlatCAMEditor.py:1340 #: flatcamTools/ToolTransform.py:750 #, python-format msgid "[ERROR_NOTCL] Due of %s, Flip action was not executed." msgstr "" -#: FlatCAMApp.py:4378 +#: FlatCAMApp.py:4382 msgid "[WARNING_NOTCL] No object selected to Flip on X axis." msgstr "" -#: FlatCAMApp.py:4403 +#: FlatCAMApp.py:4407 msgid "[success] Flip on X axis done." msgstr "" -#: FlatCAMApp.py:4418 +#: FlatCAMApp.py:4422 msgid "[WARNING_NOTCL] No object selected to Rotate." msgstr "" -#: FlatCAMApp.py:4421 FlatCAMApp.py:4466 FlatCAMApp.py:4497 +#: FlatCAMApp.py:4425 FlatCAMApp.py:4470 FlatCAMApp.py:4501 msgid "Transform" msgstr "" -#: FlatCAMApp.py:4421 FlatCAMApp.py:4466 FlatCAMApp.py:4497 +#: FlatCAMApp.py:4425 FlatCAMApp.py:4470 FlatCAMApp.py:4501 msgid "Enter the Angle value:" msgstr "" -#: FlatCAMApp.py:4451 +#: FlatCAMApp.py:4455 msgid "[success] Rotation done." msgstr "" -#: FlatCAMApp.py:4453 FlatCAMEditor.py:1283 flatcamTools/ToolTransform.py:678 +#: FlatCAMApp.py:4457 FlatCAMEditor.py:1283 flatcamTools/ToolTransform.py:678 #, python-format msgid "[ERROR_NOTCL] Due of %s, rotation movement was not executed." msgstr "" -#: FlatCAMApp.py:4464 +#: FlatCAMApp.py:4468 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on X axis." msgstr "" -#: FlatCAMApp.py:4485 +#: FlatCAMApp.py:4489 msgid "[success] Skew on X axis done." msgstr "" -#: FlatCAMApp.py:4495 +#: FlatCAMApp.py:4499 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on Y axis." msgstr "" -#: FlatCAMApp.py:4516 +#: FlatCAMApp.py:4520 msgid "[success] Skew on Y axis done." msgstr "" -#: FlatCAMApp.py:4612 FlatCAMApp.py:4639 +#: FlatCAMApp.py:4616 FlatCAMApp.py:4643 msgid "" "[WARNING_NOTCL] Please enter a grid value with non-zero value, in Float " "format." msgstr "" -#: FlatCAMApp.py:4618 +#: FlatCAMApp.py:4622 msgid "[success] New Grid added ..." msgstr "" -#: FlatCAMApp.py:4621 +#: FlatCAMApp.py:4625 msgid "[WARNING_NOTCL] Grid already exists ..." msgstr "" -#: FlatCAMApp.py:4624 +#: FlatCAMApp.py:4628 msgid "[WARNING_NOTCL] Adding New Grid cancelled ..." msgstr "" -#: FlatCAMApp.py:4646 +#: FlatCAMApp.py:4650 msgid "[ERROR_NOTCL] Grid Value does not exist ..." msgstr "" -#: FlatCAMApp.py:4649 +#: FlatCAMApp.py:4653 msgid "[success] Grid Value deleted ..." msgstr "" -#: FlatCAMApp.py:4652 +#: FlatCAMApp.py:4656 msgid "[WARNING_NOTCL] Delete Grid value cancelled ..." msgstr "" -#: FlatCAMApp.py:4691 +#: FlatCAMApp.py:4695 msgid "[WARNING_NOTCL]No object selected to copy it's name" msgstr "" -#: FlatCAMApp.py:4695 +#: FlatCAMApp.py:4699 msgid "Name copied on clipboard ..." msgstr "" -#: FlatCAMApp.py:4990 FlatCAMApp.py:4993 FlatCAMApp.py:4996 FlatCAMApp.py:4999 -#: FlatCAMApp.py:5013 FlatCAMApp.py:5016 FlatCAMApp.py:5019 FlatCAMApp.py:5022 -#: FlatCAMApp.py:5061 FlatCAMApp.py:5064 FlatCAMApp.py:5067 FlatCAMApp.py:5070 +#: FlatCAMApp.py:4994 FlatCAMApp.py:4997 FlatCAMApp.py:5000 FlatCAMApp.py:5003 +#: FlatCAMApp.py:5017 FlatCAMApp.py:5020 FlatCAMApp.py:5023 FlatCAMApp.py:5026 +#: FlatCAMApp.py:5065 FlatCAMApp.py:5068 FlatCAMApp.py:5071 FlatCAMApp.py:5074 #: ObjectCollection.py:696 ObjectCollection.py:699 ObjectCollection.py:702 #: ObjectCollection.py:705 #, python-brace-format msgid "[selected]{name} selected" msgstr "" -#: FlatCAMApp.py:5187 +#: FlatCAMApp.py:5191 msgid "" "There are files/objects opened in FlatCAM.\n" "Creating a New project will delete them.\n" "Do you want to Save the project?" msgstr "" -#: FlatCAMApp.py:5205 +#: FlatCAMApp.py:5209 msgid "[success] New Project created..." msgstr "" -#: FlatCAMApp.py:5286 +#: FlatCAMApp.py:5290 msgid "" "[WARNING_NOTCL] Select an Gerber or Excellon file to view it's source file." msgstr "" -#: FlatCAMApp.py:5293 +#: FlatCAMApp.py:5297 msgid "" "[WARNING_NOTCL] There is no selected object for which to see it's source " "file code." msgstr "" -#: FlatCAMApp.py:5297 FlatCAMApp.py:6728 FlatCAMObj.py:5398 +#: FlatCAMApp.py:5301 FlatCAMApp.py:6732 FlatCAMObj.py:5398 msgid "Code Editor" msgstr "" -#: FlatCAMApp.py:5310 +#: FlatCAMApp.py:5314 #, python-format msgid "[ERROR]App.on_view_source() -->%s" msgstr "" -#: FlatCAMApp.py:5348 FlatCAMApp.py:5351 flatcamGUI/FlatCAMGUI.py:541 +#: FlatCAMApp.py:5352 FlatCAMApp.py:5355 flatcamGUI/FlatCAMGUI.py:541 #: flatcamGUI/FlatCAMGUI.py:1590 msgid "Open Gerber" msgstr "" -#: FlatCAMApp.py:5356 +#: FlatCAMApp.py:5360 msgid "[WARNING_NOTCL] Open Gerber cancelled." msgstr "" -#: FlatCAMApp.py:5377 FlatCAMApp.py:5380 flatcamGUI/FlatCAMGUI.py:542 +#: FlatCAMApp.py:5381 FlatCAMApp.py:5384 flatcamGUI/FlatCAMGUI.py:542 #: flatcamGUI/FlatCAMGUI.py:1591 msgid "Open Excellon" msgstr "" -#: FlatCAMApp.py:5385 +#: FlatCAMApp.py:5389 msgid "[WARNING_NOTCL]Open Excellon cancelled." msgstr "" -#: FlatCAMApp.py:5407 FlatCAMApp.py:5410 +#: FlatCAMApp.py:5411 FlatCAMApp.py:5414 msgid "Open G-Code" msgstr "" -#: FlatCAMApp.py:5415 +#: FlatCAMApp.py:5419 msgid "[WARNING_NOTCL]Open G-Code cancelled." msgstr "" -#: FlatCAMApp.py:5433 FlatCAMApp.py:5436 +#: FlatCAMApp.py:5437 FlatCAMApp.py:5440 msgid "Open Project" msgstr "" -#: FlatCAMApp.py:5444 +#: FlatCAMApp.py:5448 msgid "[WARNING_NOTCL]Open Project cancelled." msgstr "" -#: FlatCAMApp.py:5463 FlatCAMApp.py:5466 +#: FlatCAMApp.py:5467 FlatCAMApp.py:5470 msgid "Open Configuration File" msgstr "" -#: FlatCAMApp.py:5470 +#: FlatCAMApp.py:5474 msgid "[WARNING_NOTCL]Open Config cancelled." msgstr "" -#: FlatCAMApp.py:5485 FlatCAMApp.py:5682 FlatCAMApp.py:7588 FlatCAMApp.py:7608 -#: FlatCAMApp.py:7629 FlatCAMApp.py:7651 +#: FlatCAMApp.py:5489 FlatCAMApp.py:5686 FlatCAMApp.py:7592 FlatCAMApp.py:7612 +#: FlatCAMApp.py:7633 FlatCAMApp.py:7655 msgid "[WARNING_NOTCL] No object selected." msgstr "" -#: FlatCAMApp.py:5486 FlatCAMApp.py:5683 +#: FlatCAMApp.py:5490 FlatCAMApp.py:5687 msgid "Please Select a Geometry object to export" msgstr "" -#: FlatCAMApp.py:5497 +#: FlatCAMApp.py:5501 msgid "[ERROR_NOTCL] Only Geometry, Gerber and CNCJob objects can be used." msgstr "" -#: FlatCAMApp.py:5510 FlatCAMApp.py:5514 +#: FlatCAMApp.py:5514 FlatCAMApp.py:5518 msgid "Export SVG" msgstr "" -#: FlatCAMApp.py:5519 +#: FlatCAMApp.py:5523 msgid "[WARNING_NOTCL]Export SVG cancelled." msgstr "" -#: FlatCAMApp.py:5533 +#: FlatCAMApp.py:5537 msgid "[[WARNING_NOTCL]] Data must be a 3D array with last dimension 3 or 4" msgstr "" -#: FlatCAMApp.py:5539 FlatCAMApp.py:5543 +#: FlatCAMApp.py:5543 FlatCAMApp.py:5547 msgid "Export PNG Image" msgstr "" -#: FlatCAMApp.py:5548 +#: FlatCAMApp.py:5552 msgid "Export PNG cancelled." msgstr "" -#: FlatCAMApp.py:5565 +#: FlatCAMApp.py:5569 msgid "" "[WARNING_NOTCL] No object selected. Please select an Gerber object to export." msgstr "" -#: FlatCAMApp.py:5570 +#: FlatCAMApp.py:5574 msgid "" "[ERROR_NOTCL] Failed. Only Gerber objects can be saved as Gerber files..." msgstr "" -#: FlatCAMApp.py:5582 +#: FlatCAMApp.py:5586 msgid "Save Gerber source file" msgstr "" -#: FlatCAMApp.py:5587 +#: FlatCAMApp.py:5591 msgid "[WARNING_NOTCL] Save Gerber source file cancelled." msgstr "" -#: FlatCAMApp.py:5604 +#: FlatCAMApp.py:5608 msgid "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." msgstr "" -#: FlatCAMApp.py:5609 FlatCAMApp.py:5648 +#: FlatCAMApp.py:5613 FlatCAMApp.py:5652 msgid "" "[ERROR_NOTCL] Failed. Only Excellon objects can be saved as Excellon files..." msgstr "" -#: FlatCAMApp.py:5617 FlatCAMApp.py:5621 +#: FlatCAMApp.py:5621 FlatCAMApp.py:5625 msgid "Save Excellon source file" msgstr "" -#: FlatCAMApp.py:5626 +#: FlatCAMApp.py:5630 msgid "[WARNING_NOTCL] Saving Excellon source file cancelled." msgstr "" -#: FlatCAMApp.py:5643 +#: FlatCAMApp.py:5647 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." msgstr "" -#: FlatCAMApp.py:5656 FlatCAMApp.py:5660 +#: FlatCAMApp.py:5660 FlatCAMApp.py:5664 msgid "Export Excellon" msgstr "" -#: FlatCAMApp.py:5665 +#: FlatCAMApp.py:5669 msgid "[WARNING_NOTCL]Export Excellon cancelled." msgstr "" -#: FlatCAMApp.py:5693 +#: FlatCAMApp.py:5697 msgid "[ERROR_NOTCL] Only Geometry objects can be used." msgstr "" -#: FlatCAMApp.py:5706 FlatCAMApp.py:5710 +#: FlatCAMApp.py:5710 FlatCAMApp.py:5714 msgid "Export DXF" msgstr "" -#: FlatCAMApp.py:5715 +#: FlatCAMApp.py:5719 msgid "[WARNING_NOTCL] Export DXF cancelled." msgstr "" -#: FlatCAMApp.py:5733 FlatCAMApp.py:5736 +#: FlatCAMApp.py:5737 FlatCAMApp.py:5740 msgid "Import SVG" msgstr "" -#: FlatCAMApp.py:5744 +#: FlatCAMApp.py:5748 msgid "[WARNING_NOTCL] Open SVG cancelled." msgstr "" -#: FlatCAMApp.py:5763 FlatCAMApp.py:5766 +#: FlatCAMApp.py:5767 FlatCAMApp.py:5770 msgid "Import DXF" msgstr "" -#: FlatCAMApp.py:5774 +#: FlatCAMApp.py:5778 msgid "[WARNING_NOTCL]Open DXF cancelled." msgstr "" -#: FlatCAMApp.py:5792 FlatCAMApp.py:5795 +#: FlatCAMApp.py:5796 FlatCAMApp.py:5799 msgid "Open TCL script" msgstr "" -#: FlatCAMApp.py:5803 +#: FlatCAMApp.py:5807 msgid "[WARNING_NOTCL]Open TCL script cancelled." msgstr "" -#: FlatCAMApp.py:5851 FlatCAMApp.py:5855 +#: FlatCAMApp.py:5855 FlatCAMApp.py:5859 msgid "Save Project As ..." msgstr "" -#: FlatCAMApp.py:5852 +#: FlatCAMApp.py:5856 #, python-brace-format msgid "{l_save}/Project_{date}" msgstr "" -#: FlatCAMApp.py:5860 +#: FlatCAMApp.py:5864 msgid "[WARNING_NOTCL] Save Project cancelled." msgstr "" -#: FlatCAMApp.py:5905 +#: FlatCAMApp.py:5909 msgid "Exporting SVG" msgstr "" -#: FlatCAMApp.py:5938 FlatCAMApp.py:6043 FlatCAMApp.py:6157 +#: FlatCAMApp.py:5942 FlatCAMApp.py:6047 FlatCAMApp.py:6161 #, python-format msgid "[success] SVG file exported to %s" msgstr "" -#: FlatCAMApp.py:5969 FlatCAMApp.py:6089 +#: FlatCAMApp.py:5973 FlatCAMApp.py:6093 #, python-format msgid "[WARNING_NOTCL]No object Box. Using instead %s" msgstr "" -#: FlatCAMApp.py:6046 FlatCAMApp.py:6160 +#: FlatCAMApp.py:6050 FlatCAMApp.py:6164 msgid "Generating Film ... Please wait." msgstr "" -#: FlatCAMApp.py:6307 +#: FlatCAMApp.py:6311 #, python-format msgid "[success] Excellon file exported to %s" msgstr "" -#: FlatCAMApp.py:6314 +#: FlatCAMApp.py:6318 msgid "Exporting Excellon" msgstr "" -#: FlatCAMApp.py:6319 FlatCAMApp.py:6326 +#: FlatCAMApp.py:6323 FlatCAMApp.py:6330 msgid "[ERROR_NOTCL] Could not export Excellon file." msgstr "" -#: FlatCAMApp.py:6365 +#: FlatCAMApp.py:6369 #, python-format msgid "[success] DXF file exported to %s" msgstr "" -#: FlatCAMApp.py:6371 +#: FlatCAMApp.py:6375 msgid "Exporting DXF" msgstr "" -#: FlatCAMApp.py:6376 FlatCAMApp.py:6383 +#: FlatCAMApp.py:6380 FlatCAMApp.py:6387 msgid "[[WARNING_NOTCL]] Could not export DXF file." msgstr "" -#: FlatCAMApp.py:6403 FlatCAMApp.py:6445 FlatCAMApp.py:6486 +#: FlatCAMApp.py:6407 FlatCAMApp.py:6449 FlatCAMApp.py:6490 msgid "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" msgstr "" -#: FlatCAMApp.py:6413 +#: FlatCAMApp.py:6417 msgid "Importing SVG" msgstr "" -#: FlatCAMApp.py:6424 FlatCAMApp.py:6466 FlatCAMApp.py:6506 FlatCAMApp.py:6582 -#: FlatCAMApp.py:6649 FlatCAMApp.py:6714 +#: FlatCAMApp.py:6428 FlatCAMApp.py:6470 FlatCAMApp.py:6510 FlatCAMApp.py:6586 +#: FlatCAMApp.py:6653 FlatCAMApp.py:6718 #, python-format msgid "[success] Opened: %s" msgstr "" -#: FlatCAMApp.py:6455 +#: FlatCAMApp.py:6459 msgid "Importing DXF" msgstr "" -#: FlatCAMApp.py:6494 +#: FlatCAMApp.py:6498 msgid "Importing Image" msgstr "" -#: FlatCAMApp.py:6535 FlatCAMApp.py:6537 +#: FlatCAMApp.py:6539 FlatCAMApp.py:6541 #, python-format msgid "[ERROR_NOTCL] Failed to open file: %s" msgstr "" -#: FlatCAMApp.py:6540 +#: FlatCAMApp.py:6544 #, python-brace-format msgid "[ERROR_NOTCL] Failed to parse file: {name}. {error}" msgstr "" -#: FlatCAMApp.py:6546 FlatCAMEditor.py:5802 FlatCAMObj.py:4104 +#: FlatCAMApp.py:6550 FlatCAMEditor.py:5802 FlatCAMObj.py:4104 msgid "[ERROR] An internal error has ocurred. See shell.\n" msgstr "" -#: FlatCAMApp.py:6555 +#: FlatCAMApp.py:6559 msgid "" "[ERROR_NOTCL] Object is not Gerber file or empty. Aborting object creation." msgstr "" -#: FlatCAMApp.py:6563 +#: FlatCAMApp.py:6567 msgid "Opening Gerber" msgstr "" -#: FlatCAMApp.py:6573 +#: FlatCAMApp.py:6577 msgid "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." msgstr "" -#: FlatCAMApp.py:6608 +#: FlatCAMApp.py:6612 msgid "[ERROR_NOTCL] This is not Excellon file." msgstr "" -#: FlatCAMApp.py:6611 +#: FlatCAMApp.py:6615 #, python-format msgid "[ERROR_NOTCL] Cannot open file: %s" msgstr "" -#: FlatCAMApp.py:6616 +#: FlatCAMApp.py:6620 msgid "[ERROR_NOTCL] An internal error has occurred. See shell.\n" msgstr "" -#: FlatCAMApp.py:6632 +#: FlatCAMApp.py:6636 #, python-format msgid "[ERROR_NOTCL] No geometry found in file: %s" msgstr "" -#: FlatCAMApp.py:6635 +#: FlatCAMApp.py:6639 msgid "Opening Excellon." msgstr "" -#: FlatCAMApp.py:6642 +#: FlatCAMApp.py:6646 msgid "[ERROR_NOTCL] Open Excellon file failed. Probable not an Excellon file." msgstr "" -#: FlatCAMApp.py:6681 +#: FlatCAMApp.py:6685 #, python-format msgid "[ERROR_NOTCL] Failed to open %s" msgstr "" -#: FlatCAMApp.py:6691 +#: FlatCAMApp.py:6695 msgid "[ERROR_NOTCL] This is not GCODE" msgstr "" -#: FlatCAMApp.py:6697 +#: FlatCAMApp.py:6701 msgid "Opening G-Code." msgstr "" -#: FlatCAMApp.py:6705 +#: FlatCAMApp.py:6709 msgid "" "[ERROR_NOTCL] Failed to create CNCJob Object. Probable not a GCode file.\n" " Attempting to create a FlatCAM CNCJob Object from G-Code file failed during " "processing" msgstr "" -#: FlatCAMApp.py:6745 +#: FlatCAMApp.py:6749 #, python-format msgid "[ERROR_NOTCL] Failed to open config file: %s" msgstr "" -#: FlatCAMApp.py:6770 FlatCAMApp.py:6787 +#: FlatCAMApp.py:6774 FlatCAMApp.py:6791 #, python-format msgid "[ERROR_NOTCL] Failed to open project file: %s" msgstr "" -#: FlatCAMApp.py:6777 +#: FlatCAMApp.py:6781 #, python-format msgid "[ERROR_NOTCL] Failed to parse project file: %s" msgstr "" -#: FlatCAMApp.py:6813 +#: FlatCAMApp.py:6817 #, python-format msgid "[success] Project loaded from: %s" msgstr "" -#: FlatCAMApp.py:6943 +#: FlatCAMApp.py:6947 msgid "Available commands:\n" msgstr "" -#: FlatCAMApp.py:6945 +#: FlatCAMApp.py:6949 msgid "" "\n" "\n" @@ -768,23 +785,23 @@ msgid "" " Example: help open_gerber" msgstr "" -#: FlatCAMApp.py:7093 +#: FlatCAMApp.py:7097 msgid "Shows list of commands." msgstr "" -#: FlatCAMApp.py:7146 +#: FlatCAMApp.py:7150 msgid "[ERROR_NOTCL] Failed to load recent item list." msgstr "" -#: FlatCAMApp.py:7153 +#: FlatCAMApp.py:7157 msgid "[ERROR_NOTCL] Failed to parse recent item list." msgstr "" -#: FlatCAMApp.py:7214 flatcamGUI/FlatCAMGUI.py:856 +#: FlatCAMApp.py:7218 flatcamGUI/FlatCAMGUI.py:856 msgid "Shortcut Key List" msgstr "" -#: FlatCAMApp.py:7221 +#: FlatCAMApp.py:7225 msgid "" "\n" "

Selected Tab - Choose an Item from " @@ -834,64 +851,64 @@ msgid "" " " msgstr "" -#: FlatCAMApp.py:7325 +#: FlatCAMApp.py:7329 msgid "[WARNING_NOTCL] Failed checking for latest version. Could not connect." msgstr "" -#: FlatCAMApp.py:7332 +#: FlatCAMApp.py:7336 msgid "[ERROR_NOTCL] Could not parse information about latest version." msgstr "" -#: FlatCAMApp.py:7342 +#: FlatCAMApp.py:7346 msgid "[success] FlatCAM is up to date!" msgstr "" -#: FlatCAMApp.py:7347 +#: FlatCAMApp.py:7351 msgid "Newer Version Available" msgstr "" -#: FlatCAMApp.py:7348 +#: FlatCAMApp.py:7352 msgid "" "There is a newer version of FlatCAM available for download:\n" "\n" msgstr "" -#: FlatCAMApp.py:7350 +#: FlatCAMApp.py:7354 msgid "info" msgstr "" -#: FlatCAMApp.py:7369 +#: FlatCAMApp.py:7373 msgid "[success]All plots disabled." msgstr "" -#: FlatCAMApp.py:7375 +#: FlatCAMApp.py:7379 msgid "[success]All non selected plots disabled." msgstr "" -#: FlatCAMApp.py:7381 +#: FlatCAMApp.py:7385 msgid "[success]All plots enabled." msgstr "" -#: FlatCAMApp.py:7491 +#: FlatCAMApp.py:7495 msgid "Saving FlatCAM Project" msgstr "" -#: FlatCAMApp.py:7512 FlatCAMApp.py:7543 +#: FlatCAMApp.py:7516 FlatCAMApp.py:7547 #, python-format msgid "[success] Project saved to: %s" msgstr "" -#: FlatCAMApp.py:7530 +#: FlatCAMApp.py:7534 #, python-format msgid "[ERROR_NOTCL] Failed to verify project file: %s. Retry to save it." msgstr "" -#: FlatCAMApp.py:7537 +#: FlatCAMApp.py:7541 #, python-format msgid "[ERROR_NOTCL] Failed to parse saved project file: %s. Retry to save it." msgstr "" -#: FlatCAMApp.py:7545 +#: FlatCAMApp.py:7549 #, python-format msgid "[ERROR_NOTCL] Failed to save project file: %s. Retry to save it." msgstr "" @@ -968,17 +985,6 @@ msgstr "" #: FlatCAMEditor.py:429 flatcamTools/ToolPaint.py:162 #, python-format -#| msgid "" -#| "How much (fraction) of the tool width to overlap each tool pass.\n" -#| "Example:\n" -#| "A value here of 0.25 means 25%% from the tool diameter found above.\n" -#| "\n" -#| "Adjust the value starting with lower values\n" -#| "and increasing it if areas that should be painted are still \n" -#| "not painted.\n" -#| "Lower values = faster processing, faster execution on PCB.\n" -#| "Higher values = slow processing and slow execution on CNC\n" -#| "due of too many paths." msgid "" "How much (fraction) of the tool width to overlap each tool pass.\n" "Example:\n" @@ -5379,17 +5385,6 @@ msgstr "" #: flatcamGUI/FlatCAMGUI.py:4792 flatcamTools/ToolNonCopperClear.py:166 #, python-format -#| msgid "" -#| "How much (fraction) of the tool width to overlap each tool pass.\n" -#| "Example:\n" -#| "A value here of 0.25 means 25\\% from the tool diameter found above.\n" -#| "\n" -#| "Adjust the value starting with lower values\n" -#| "and increasing it if areas that should be cleared are still \n" -#| "not cleared.\n" -#| "Lower values = faster processing, faster execution on PCB.\n" -#| "Higher values = slow processing and slow execution on CNC\n" -#| "due of too many paths." msgid "" "How much (fraction) of the tool width to overlap each tool pass.\n" "Example:\n" diff --git a/make_win.py b/make_win.py index 619e7a7b..e029d2f6 100644 --- a/make_win.py +++ b/make_win.py @@ -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"))